[gst-devel] Streaming H.264 / Vorbis

cammille at polytech.unice.fr cammille at polytech.unice.fr
Thu Mar 26 10:48:29 CET 2009


I just want to remind that i'm trying to do that on Windows and not on
Linux...

Thank you in advance.

> I read the document, but the use of the caps is still dark for me.
>
> Can somebody help me concretely by explaining me how to resolve my problem
> ?
>
> I also tried to do the same thing with the Speex plugin :
> - alawenc --> speexenc
> - rtppcmapay --> rtpspeexpay
>
> But after these messages :
> Setting pipeline to PAUSED ...
> Pipeline is live and does not need PREROLL ...
> Setting pipeline to PLAYING ...
> New clock: GstAudioSrcClock
>
> I suddenly have an exception.
>
>
>
>> On Tue, 2009-03-24 at 12:17 +0100, cammille at polytech.unice.fr wrote:
>>> Can you explain me how to send the vorbis codebook config in the caps
>>> please ?
>>
>> You just put them in the caps. Maybe you should read this document that
>> tells you how to negotiate between RTP sender and receiver:
>>
>> http://cgit.freedesktop.org/gstreamer/gst-plugins-good/tree/gst/rtp/README
>>
>> Wim
>>
>>
>>>
>>> I searched on the Internet but I didn't find how.
>>>
>>>
>>> Thank you for your help.
>>>
>>>
>>> > On Tue, 2009-03-24 at 10:08 +0100, cammille at polytech.unice.fr wrote:
>>> >> Hi,
>>> >>
>>> >> I would like to stream the video taken from my webcam and the sound
>>> >> taken
>>> >> from my micro.
>>> >>
>>> >> I tried that :
>>> >>
>>> >> To send on Windows :
>>> >> --------------------
>>> >>
>>> >> gst-launch -v gstrtpbin name=rtpbin \
>>> >>     dshowvideosrc ! decodebin name=dec \
>>> >>     dec. ! queue ! x264enc byte-stream=true bitrate=300 ! rtph264pay
>>> !
>>> >> rtpbin.send_rtp_sink_0 \
>>> >>     rtpbin.send_rtp_src_0 ! udpsink port=5000 host=192.168.X.X
>>> >> ts-offset=0
>>> >> name=vrtpsink \
>>> >>     rtpbin.send_rtcp_src_0 ! udpsink port=5001 host=192.168.X.X
>>> >> sync=false
>>> >> async=false name=vrtcpsink \
>>> >>     udpsrc port=5005 name=vrtpsrc ! rtpbin.recv_rtcp_sink_0 \
>>> >>     dshowaudiosrc ! queue ! audioresample ! audioconvert ! alawenc !
>>> >> rtppcmapay ! rtpbin.send_rtp_sink_1 \
>>> >>     rtpbin.send_rtp_src_1 ! udpsink port=5002 host=192.168.X.X
>>> >> ts-offset=0
>>> >> name=artpsink \
>>> >>     rtpbin.send_rtcp_src_1 ! udpsink port=5003 host=192.168.X.X
>>> >> sync=false
>>> >> async=false name=artcpsink \
>>> >>     udpsrc port=5007 name=artpsrc ! rtpbin.recv_rtcp_sink_1
>>> >>
>>> >>
>>> >>
>>> >> To receive on Linux :
>>> >> ---------------------
>>> >>
>>> >> gst-launch -v gstrtpbin name=rtpbin latency=200 \
>>> >>      udpsrc
>>> >> caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264"
>>> >> port=5000 ! rtpbin.recv_rtp_sink_0 \
>>> >>        rtpbin. ! rtph264depay ! ffdec_h264 ! xvimagesink \
>>> >>      udpsrc port=5001 ! rtpbin.recv_rtcp_sink_0 \
>>> >>          rtpbin.send_rtcp_src_0 ! udpsink port=5005 host=192.168.X.X
>>> >> sync=false async=false \
>>> >>      udpsrc
>>> >> caps="application/x-rtp,media=(string)audio,clock-rate=(int)8000,encoding-name=(string)PCMA"
>>> >> port=5002 ! rtpbin.recv_rtp_sink_1 \
>>> >>        rtpbin. ! rtppcmadepay ! alawdec ! audioconvert !
>>> audioresample !
>>> >> alsasink \
>>> >>      udpsrc port=5003 ! rtpbin.recv_rtcp_sink_1 \
>>> >>          rtpbin.send_rtcp_src_1 ! udpsink port=5007 host=192.168.X.X
>>> >> sync=false async=false
>>> >>
>>> >>
>>> >> This works well.
>>> >>
>>> >> So I tried to encode with Vorbis and not Alaw.
>>> >>
>>> >> I tried that :
>>> >> To send on Windows :
>>> >> --------------------
>>> >>
>>> >> gst-launch -v gstrtpbin name=rtpbin \
>>> >>     dshowvideosrc ! decodebin name=dec \
>>> >>     dec. ! queue ! x264enc byte-stream=true bitrate=300 ! rtph264pay
>>> !
>>> >> rtpbin.send_rtp_sink_0 \
>>> >>     rtpbin.send_rtp_src_0 ! udpsink port=5000 host=192.168.X.X
>>> >> ts-offset=0
>>> >> name=vrtpsink \
>>> >>     rtpbin.send_rtcp_src_0 ! udpsink port=5001 host=192.168.X.X
>>> >> sync=false
>>> >> async=false name=vrtcpsink \
>>> >>     udpsrc port=5005 name=vrtpsrc ! rtpbin.recv_rtcp_sink_0 \
>>> >>     dshowaudiosrc ! queue ! audioresample ! audioconvert ! vorbisenc
>>> !
>>> >> rtpvorbispay ! rtpbin.send_rtp_sink_1 \
>>> >>     rtpbin.send_rtp_src_1 ! udpsink port=5002 host=192.168.X.X
>>> >> ts-offset=0
>>> >> name=artpsink \
>>> >>     rtpbin.send_rtcp_src_1 ! udpsink port=5003 host=192.168.X.X
>>> >> sync=false
>>> >> async=false name=artcpsink \
>>> >>     udpsrc port=5007 name=artpsrc ! rtpbin.recv_rtcp_sink_1
>>> >>
>>> >>
>>> >> To receive on Linux :
>>> >> ---------------------
>>> >>
>>> >> gst-launch -v gstrtpbin name=rtpbin latency=200 \
>>> >>      udpsrc
>>> >> caps="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H264"
>>> >> port=5000 ! rtpbin.recv_rtp_sink_0 \
>>> >>        rtpbin. ! rtph264depay ! ffdec_h264 ! xvimagesink \
>>> >>      udpsrc port=5001 ! rtpbin.recv_rtcp_sink_0 \
>>> >>          rtpbin.send_rtcp_src_0 ! udpsink port=5005 host=192.168.X.X
>>> >> sync=false async=false \
>>> >>      udpsrc
>>> >> caps="application/x-rtp,media=(string)audio,clock-rate=(int)8000,encoding-name=(string)VORBIS"
>>> >> port=5002 ! rtpbin.recv_rtp_sink_1 \
>>> >>        rtpbin. ! rtpvorbisdepay ! vorbisdec ! audioconvert !
>>> >> audioresample
>>> >> ! alsasink \
>>> >>      udpsrc port=5003 ! rtpbin.recv_rtcp_sink_1 \
>>> >>          rtpbin.send_rtcp_src_1 ! udpsink port=5007 host=192.168.X.X
>>> >> sync=false async=false
>>> >>
>>> >>
>>> >> And I have this error :
>>> >> WARNING: from element
>>> >> /GstPipeline:pipeline0/GstRtpVorbisDepay:rtpvorbisdepay0: Could not
>>> >> decode
>>> >> stream.
>>> >> Additional debug info:
>>> >> gstrtpvorbisdepay.c(605): gst_rtp_vorbis_depay_process ():
>>> >> /GstPipeline:pipeline0/GstRtpVorbisDepay:rtpvorbisdepay0:
>>> >> Could not switch codebooks
>>> >>
>>> > You forgot to send the vorbis codebook config in the caps.
>>> >
>>> > Wim
>>> >>
>>> >>
>>> >> What can I do to resolve this problem ?
>>> >>
>>> >> Thank you.
>>> >>
>>> >>
>>> >> ------------------------------------------------------------------------------
>>> >> Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM)
>>> are
>>> >> powering Web 2.0 with engaging, cross-platform capabilities. Quickly
>>> and
>>> >> easily build your RIAs with Flex Builder, the Eclipse(TM)based
>>> >> development
>>> >> software that enables intelligent coding and step-through debugging.
>>> >> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
>>> >> _______________________________________________
>>> >> gstreamer-devel mailing list
>>> >> gstreamer-devel at lists.sourceforge.net
>>> >> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>>> >
>>> >
>>> > ------------------------------------------------------------------------------
>>> > Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM)
>>> are
>>> > powering Web 2.0 with engaging, cross-platform capabilities. Quickly
>>> and
>>> > easily build your RIAs with Flex Builder, the Eclipse(TM)based
>>> development
>>> > software that enables intelligent coding and step-through debugging.
>>> > Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
>>> > _______________________________________________
>>> > gstreamer-devel mailing list
>>> > gstreamer-devel at lists.sourceforge.net
>>> > https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>>> >
>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
>>> powering Web 2.0 with engaging, cross-platform capabilities. Quickly
>>> and
>>> easily build your RIAs with Flex Builder, the Eclipse(TM)based
>>> development
>>> software that enables intelligent coding and step-through debugging.
>>> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
>>> _______________________________________________
>>> gstreamer-devel mailing list
>>> gstreamer-devel at lists.sourceforge.net
>>> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>>
>>
>> ------------------------------------------------------------------------------
>> Apps built with the Adobe(R) Flex(R) framework and Flex Builder(TM) are
>> powering Web 2.0 with engaging, cross-platform capabilities. Quickly and
>> easily build your RIAs with Flex Builder, the Eclipse(TM)based
>> development
>> software that enables intelligent coding and step-through debugging.
>> Download the free 60 day trial. http://p.sf.net/sfu/www-adobe-com
>> _______________________________________________
>> gstreamer-devel mailing list
>> gstreamer-devel at lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/gstreamer-devel
>>
>
>






More information about the gstreamer-devel mailing list