<HTML dir=ltr><HEAD>
<META http-equiv=Content-Type content="text/html; charset=unicode">
<META content="MSHTML 6.00.6000.16788" name=GENERATOR></HEAD>
<BODY>
<DIV><FONT face=Arial color=#000000 size=2>I'm a relative novice with gstreamer, and had just developed some plugins for our emebedded system to use the the hardware video decoding, scaling and colorspace conversion.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>We have written a custom app for playback, and for the most part it works great. With some videos, though, the time to display a frame is too slow for the given framerate, and when playing, the audio will stop eventually, but the video will continue. I am assuming this happens because the two threads are out of sync. Pipeline looks like something this:</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>filesrc location=vidfile ! qtdemux name=d ! { queue ! decodebin ! autovideosink } { d. ! queue ! decodebin ! audioconvert ! autoaudiosink }</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2> If I add the videorate element to the pipeline, and slow down the framerate, those videos will play better (but of course more choppy):</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV>
<DIV><FONT face=Arial size=2>filesrc location=vidfile ! qtdemux name=d ! { queue ! decodebin ! videorate ! video/x-raw-yuv, framerate=15/1 ! autovideosink } { d. ! queue ! decodebin ! audioconvert ! autoaudiosink }</FONT></DIV></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>What I would like to do is have the app detect when the when the audio drops, and dynamically lower the caps filter to a slower rate until audio restarts. </FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I am guessing there is a signal or message or callback I can set, but I am unable to work out what. Is this even possible?</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Thanks,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Tony</FONT></DIV></BODY></HTML>