I have following pipeline:<br>gst-launch-0.10 filesrc 
location=my_movie.mp4 ! qtdemux name=t ! queue  ! my_mpeg4_dec ! 
my_video_sink  t. ! queue ! faad ! alsasink.<br>I am using the same 
pipeline to play mpeg4 and h264 videos (different decoder for h264). 
H264 works just fine but mpeg4 has sync problems. The video is as twice 
as fast as it should be. If I provide sync=false into my_mpeg4_dec line 
it all works fine but I do not want to do it this way. I just read in 
the documentation that:<br>
<br>&quot;Sometimes it is a parser element the one that knows the time, for instance if a pipeline contains a<br>filesrc element connected to a MPEG decoder element, the former is the one that knows the time of<br>each sample, because the knowledge of when to play each sample is embedded in the MPEG format.<br>

In this case this element will be regarded as the source element for this discussion.&quot;<br><br>I
 am not sure how does ALSA gets the time stamp when it cannot see mpeg4 
directly? Is mpeg4 supposed to update global clock upstream so ALSA can 
see it or what?<br>
Cheers,<br>Ogi