int DemuxMedia::clear()
{
sendMutex.lock();
videoQueue->clear();
sendMutex.unlock(); return0;
}
void DemuxMedia::startDemuxing()
{
MediaPacket *mediaPkt; int is_video_frame; int rv;
while (1)
{
vcrMutex.lock(); switch (vcrFlag)
{ case VCR_PLAY:
vcrFlag = 0;
vcrMutex.unlock(); if (pausedTime)
{
elapsedTime = av_gettime() - pausedTime;
pausedTime = 0;
}
isStopped = false; continue; break;
case VCR_PAUSE:
vcrMutex.unlock(); if (!pausedTime)
{ /* save amount of video played so far */
pausedTime = av_gettime() - elapsedTime;
}
usleep(1000 * 100);
isStopped = false; continue; break;
Die Informationen auf dieser Webseite wurden
nach bestem Wissen sorgfältig zusammengestellt. Es wird jedoch weder Vollständigkeit, noch Richtigkeit,
noch Qualität der bereit gestellten Informationen zugesichert.
Bemerkung:
Die farbliche Syntaxdarstellung und die Messung sind noch experimentell.