GNOME Bugzilla – Bug 650842
[matroskamux] matroskamux can't handle different h264 streams
Last modified: 2011-05-23 09:47:51 UTC
Hi, I tried with many cameras but can't do a simple saving pipeline... In the previous gstreamer versions everything was fine but in the latest release these pipelines doesn't working: gst-launch -e rtspsrc location="..." ! rtph264depay ! matroskamux ! filesink location="test.mkv" gst-launch -e rtspsrc location="..." ! rtph264depay ! legacyh264parse ! matroskamux ! filesink location="test.mkv" Finnaly I found a pipeline that records: gst-launch -e rtspsrc location="rtsp://admin:12345@10.30.0.106:554/h.264/ch1/main" ! rtph264depay ! legacyh264parse access-unit=true output-format=0 ! matroskamux ! filesink location="test.mkv" So why the others don't work? After all i tried to do tests with videotestsrc but for example totem can't playback the result of this pipeline: gst-launch -e videotestsrc ! video/x-raw-yuv,width=640,height=480,framerate=10/1 ! x264enc ! legacyh264parse access-unit=true output-format=0 ! matroskamux ! filesink location="test.mkv" This pipeline works only if i don't touch the access-unit and output-format properties: gst-launch -e videotestsrc ! video/x-raw-yuv,width=640,height=480,framerate=10/1 ! x264enc ! legacyh264parse ! matroskamux ! filesink location="test.mkv" Btw when I seek in the recorded file from the network camera there are a lot of these messages: 0:00:02.342610487 17529 0x7f9528019940 WARN ffmpeg gstffmpegdec.c:2259:gst_ffmpegdec_frame:<ffdec_h2640> ffdec_h264: decoding error (len: -1, have_data: 0) 0:00:02.371483975 17529 0x10f4600 WARN bin gstbin.c:2380:gst_bin_do_latency_func:<play> did not really configure latency of 0:00:00.000000000 Are they normal? Regards, Tibor
matroskamux requires stream-format=avc and alignment=au for h264. If you use the new h264parse before matroskamux this should just work too, even without setting any properties or anything.
I would love to see these changes in the release notes...
And would be great if the pipeline can't build up with the wrong caps :)