rtspsrc ! rtph264depay ! mp4mux not working

Nathanael D. Noblet nathanael at gnat.ca
Tue Sep 25 11:35:35 PDT 2012


No idea, however I've found that sometimes it is necessary to put a 
parser before the muxer.

so perhaps an h264parse or mpeg4videoparse ?


On 09/25/2012 12:30 PM, Chris wrote:
> I am having zero luck recording h264 from an Axis camera to to a file using
> mp4mux. I want to use mp4mux so I can use faststart and because ffmux_mp4
> produces poor video. I'm using gstreamer 0.10.25, gst-plugins-bad 0.10.13
> (mp4mux), and gstreamer-ffmpeg 0.10.08.
>
> Has anyone gotten this to work?
>
> Using ffmux_mp4 works, but produces video with really bad artifacts during
> motion:
> gst-launch -e -vm rtspsrc
> location="rtsp://axis-camera/axis-media/media.amp?videocodec=h264&streamprofile=test_1"
> ! rtph264depay byte-stream=false ! capsfilter
> caps="video/x-h264,width=704,height=480,framerate=(fraction)25/1" !
> ffmux_mp4 name=muxer ! filesink location=/tmp/test1.mp4
>
>
> The same pipeline with the mp4mux muxer fails:
> gst-launch -e -vm rtspsrc
> location="rtsp://axis-camera/axis-media/media.amp?videocodec=h264&streamprofile=test_1"
> ! rtph264depay byte-stream=false ! capsfilter
> caps="video/x-h264,width=704,height=480,framerate=(fraction)25/1" ! mp4mux
> name=muxer ! filesink location=/tmp/test1.mp4
>
> This results in a "Failed to determine time to mux" error:
>
> . . .
>   Got message #113 from element "pipeline0" (async-done): no message details
> 0:00:00.213694898  9030 0x7fe73c005310 WARN                GST_PADS
> gstpad.c:3107:gst_pad_iterate_internal_links_default:<rtpsession0:recv_rtp_src>
> Making unsafe iterator
> Got message #115 from element "filesink0" (state-changed): GstMessageState,
> old-state=(GstState)GST_STATE_PAUSED, new-state=(GstState)GST_STATE_PLAYING,
> pending-state=(GstState)GST_STATE_VOID_PENDING;
> Got message #116 from element "pipeline0" (state-changed): GstMessageState,
> old-state=(GstState)GST_STATE_PAUSED, new-state=(GstState)GST_STATE_PLAYING,
> pending-state=(GstState)GST_STATE_VOID_PENDING;
> 0:00:00.221826588  9030 0x7fe75800cf90 WARN                   qtmux
> gstqtmux.c:1107:gst_qt_mux_add_buffer:<muxer> error: Failed to determine
> time to mux.
> Got message #117 from element "muxer" (error): GstMessageError,
> gerror=(GstGError)NULL, debug=(string)"gstqtmux.c\(1107\):\
> gst_qt_mux_add_buffer\ \(\):\
> /GstPipeline:pipeline0/GstMP4Mux:muxer:\012Failed\ to\ determine\ time\ to\
> mux.";
> ERROR: from element /GstPipeline:pipeline0/GstMP4Mux:muxer: Could not
> multiplex stream.
> Additional debug info:
> gstqtmux.c(1107): gst_qt_mux_add_buffer ():
> /GstPipeline:pipeline0/GstMP4Mux:muxer:
> Failed to determine time to mux.
> . . .
> Execution ended after 22521367 ns.
> . . .
> Freeing pipeline ...
>
>
> Thanks in advance
>
>
>
> --
> View this message in context: http://gstreamer-devel.966125.n4.nabble.com/rtspsrc-rtph264depay-mp4mux-not-working-tp4656380.html
> Sent from the GStreamer-devel mailing list archive at Nabble.com.
> _______________________________________________
> gstreamer-devel mailing list
> gstreamer-devel at lists.freedesktop.org
> http://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
>


-- 
Nathanael d. Noblet
t 403.875.4613


More information about the gstreamer-devel mailing list