GNOME Bugzilla – Bug 654612
ffdec_mpeg4 and xviddec from git doesn't play MPEG-4 video in 1280x1024
Last modified: 2011-07-14 19:45:43 UTC
ffdec_mpeg4 and xviddec from git doesn't play MPEG-4 video in 1280x1024. At the same time they play video in 640x480 from the same source. The stream I get from IP-camera and save to file with the following pipeline: gst-launch-0.10 -v --gst-plugin-path=/home/user/bin/gstreamer/lib udpsrc uri=udp://127.0.0.1:4951 caps="video/mpeg, mpegversion=4" ! gdppay ! filesink location=rec_1280.gdp Then I tried to play video with the following pipeline: gst-launch-0.10 -v --gst-plugin-path=/home/user/bin/gstreamer/lib filesrc location=~/rec_1280.gdp ! gdpdepay ! ffdec_mpeg4 ! xvimagesink gst-launch-0.10 -v --gst-plugin-path=/home/user/bin/gstreamer/lib filesrc location=rec_1280.gdp ! gdpdepay ! mpeg4videoparse ! ffdec_mpeg4 ! xvimagesink gst-launch-0.10 -v --gst-plugin-path=/home/user/bin/gstreamer/lib filesrc location=rec_1280.gdp ! gdpdepay ! mpeg4videoparse ! xviddec ! xvimagesink In attachement I include both files with resolution 1280x1024 and 640x480 so you can compare.
Stream samples: http://good.net/dl/au/028c/recorded_streams.tar.gz
UDP is an unreliable transport, so I'm not surprised that you get corruption, particularly with larger sizes. If you want to use UDP, you need to add a reliable layer on top of it, like RTP. Or, use TCP.