I'm trying to generate a UDP stream encoded with webm/vp8 and I'm having some issues. My source pipeline is:
videotestsrc is-live=true ! videoconvert ! vp8enc ! webmmux streamable=true ! chopmydata max-size=9000 ! udpsink qos=true sync=true host=127.0.0.1 port=5432 bind-address=127.0.0.1 Eventually this will be multicast udp but I'm using loopback for testing. The chopmydata is there to ensure the data packets are below the MTU (all machines and network equip can handle big packets). I'm testing the stream in VLC and connect to udp://@:5432 If I start VLC then start gst-launch-1.0 everything works fine. However, if I start gst-launch first, then VLC (or stop gst-launch then start it again without restarting VLC) I see no video. VLC reports that packets are being received but no video is decoded. If I use gst-discoverer-1.0 on udp://127.0.0.1:5432 and start that before the stream it detects webm/vp8. If I start the stream first I get an error "Could not determine type of stream." My guess is that I haven't configured the codec or the container to include additional headers or something similar. Is this even possible with webm/vp8? I've successfully set this up with x264enc ! mpegtsmux which are typically used for this sort of thing but one of my clients will be a web browser (via a udp to websocket proxy and MediaSource extensions) so mpegts is not an option. _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Administrator
|
It seems the VLC is not receiving header data if it joins in the middle
Check SPS and PPS setting in the H264 stream. They need to be sent periodically, typically once for each keyframe I'm not really sure if webm needs to have any header data like PAT/PMT in mpegts that needs to be sent periodically. You can check the standard -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
How about setting min-index-interval on webmmux to something sensible like
1000000000 (1 sec)? Also, you should consider keeping the GOP of the video short, e.g. mode=cbr error-resilient=true keyframe-max-dist=10 auto-alt-ref=true -- Sent from: http://gstreamer-devel.966125.n4.nabble.com/ _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Still no luck: $ gst-launch-1.0 videotestsrc ! videoconvert ! vp8enc end-usage=cbr error-resilient=partitions keyframe-max-dist=10 auto-alt-ref=true ! webmmux min-index-interval=10000000 ! chopmydata max-size=9000 ! udpsink host=127.0.0.1 port=5432 & sleep 3 && gst-discoverer-1.0 udp://127.0.0.1:5432 [1] 78569 Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Redistribute latency... Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: GstSystemClock Analyzing udp://127.0.0.1:5432 Done discovering udp://127.0.0.1:5432 An error was encountered while discovering the file Could not determine type of stream. $ gst-launch-1.0 videotestsrc ! videoconvert ! vp8enc end-usage=cbr error-resilient=partitions keyframe-max-dist=10 auto-alt-ref=true ! webmmux min-index-interval=10000000 ! chopmydata max-size=9000 ! udpsink host=127.0.0.1 port=5432 & sleep 0 && gst-discoverer-1.0 udp://127.0.0.1:5432 [1] 78566 Analyzing udp://127.0.0.1:5432 Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Redistribute latency... Pipeline is PREROLLED ... Setting pipeline to PLAYING ... New clock: GstSystemClock Done discovering udp://127.0.0.1:5432 Topology: container: WebM video: VP8 Properties: Duration: 0:00:00.266333333 Seekable: no Tags: video codec: VP8 video container format: Matroska On Thu, Mar 8, 2018 at 11:54 AM, Arjen Veenhuizen <[hidden email]> wrote: How about setting min-index-interval on webmmux to something sensible like _______________________________________________ gstreamer-devel mailing list [hidden email] https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel |
Free forum by Nabble | Edit this page |