void AbstractAudioSource::onPipelineBusmessage (const QGst::MessagePtr& message) { switch (message->type()) { case QGst::MessageError: { QGst::ErrorMessagePtr errMsg = message.staticCast<QGst::ErrorMessage>(); qDebug() << "[AbstractContentSource::onPipelineBusmessage()] Error message:" << errMsg->debugMessage(); } break; case QGst::MessageStateChanged: { QGst::StateChangedMessagePtr stateMsg = message.staticCast<QGst::StateChangedMessage>(); QString oldState = getStateText (stateMsg->oldState()); QString newState = getStateText (stateMsg->newState()); qDebug() << "[AbstractContentSource::onPipelineBusmessage()] State changed from" << oldState << "to" << newState; } break; case QGst::MessageAsyncDone: qDebug() << "[AbstractContentSource::onPipelineBusmessage()] Asynchronous completion invoked."; break; case QGst::MessageAsyncStart: qDebug() << "[AbstractContentSource::onPipelineBusmessage()] Asynchronous start invoked."; break; case QGst::MessageStreamStatus: { QGst::StreamStatusMessagePtr streamStatusMessage = message.staticCast<QGst::StreamStatusMessage>(); qWarning() << "[AbstractContentSource::onPipelineBusmessage()] " << streamStatusMessage->streamStatusObject().toString(); } break; case QGst::MessageElement: { QGst::ElementMessagePtr elementMessage = message.staticCast<QGst::ElementMessage>(); //qDebug() << "[AbstractContentSource::onPipelineBusmessage()] Element message: " << elementMessage->internalStructure()->toString(); } break; case QGst::MessageClockProvide: case QGst::MessageClockLost: { } break; default: qWarning() << "[AbstractContentSource::onPipelineBusmessage()] Unexpected message:" << message->typeName(); break; } }
void GStreamerPipeline::onError( const QGst::ErrorMessagePtr &msg ) { qDebug() << "Error: " << msg->error().what() << ",\t DebugMsg: " << msg->debugMessage(); }