Question

I'm using the following pipeline (SIMPLIFIED) in Gstreamer OSS Build 0.10.7 on Win 7 x64:

udpsrc ! application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264,        payload=(int)96 !
gstrtpjitterbuffer latency=200 ! rtph264depay ! tee name=h264Tee 

h264Tee. ! queue ! h264parse ! mux. 

matroskamux name=mux ! filesink location=rec.mkv sync=false // same for avimux/mp4/qt

h264Tee. ! queue ! ffdec_h264 ! tee name=videoTee 

//.videoTee ! queue ! dx9videosink
//.videoTee ! queue ! appsink

//udpsrc ! queue ! directsoundsink

audiotestsrc ! mux. //only for testing, should be connected to udpsrc

The pipeline is launched via Gstreamer-Sharp. Here's the console output of the pipeline:

WARN default xoverlay.c:354:gst_x_overlay_set_xwindow_id:<videoSink> Using deprecated gst_x_overlay_set_xwindow_id()
ERROR d3dvideosink d3dvideosink.c:2204:gst_d3dvideosink_release_swap_chain: Direct3D device has not been initialized
WARN bin gstbin.c:2378:gst_bin_do_latency_func:<pipeline0> failed to query latency
WARN matroskamux matroska-mux.c:970:gst_matroska_mux_video_pad_setcaps:<mux> pad video_0 refused caps 05370C40

Both video and audio are playing just fine as long as I leave out the muxer. When include the muxer in the pipeline, the video freezes immedeately and no sound can be heard. What's wrong why does the muxer refuse the caps?

Was it helpful?

Solution

Ok solved it my self: The video caps above don't contain sprop-parameter-sets which aren't needed for playback. For encoding however they are needed since various properties of the stream are encoded within these:

udpsrc ! 
application/x-rtp, media=(string)video, clock-rate=(int)90000, 
encoding-name=(string)H264, 
sprop-parameter-sets= (string)\"Z0LADdkBQfsBEAAAAwAQAAADAyjxQqSA\\,aMuMTIA\\=\", 
payload=(int)96, 
ssrc (uint)2332354585, 
clock-base=(uint)1158355497, 
seqnum-base=(uint)10049 !
gstrtpjitterbuffer latency=200 ! rtph264depay ! tee name=h264Tee 

...
Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top