streaming an h264 in mp4 video over udp

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

streaming an h264 in mp4 video over udp

michaelg
Hi,
i am trying to stream an h264 mp4 over udp on a linux ubuntu 14.04 machine, at first stage the sender and receiver on the same machine through a localhost.

fitst i managed to play the mp4 using the following pipeline:
gst-launch-1.0 filesrc location=/home/michael/Downloads/bbb_h264.mp4 ! qtdemux name=demux demux. ! queue ! faad ! audioconvert ! audioresample ! autoaudiosink demux. ! queue ! avdec_h264 ! videoconvert ! autovideosink

then i tried to break this pipeline to the sender and receiver pipelines based on all the posts i saw.
i removed the audio to simplify the task at this stage so the sender and receiver looks as following:

sender:
gst-launch-1.0 filesrc location=/home/michael/Downloads/bbb_h264.mp4 ! qtdemux ! rtph264pay ! udpsink

reciever:
gst-launch-1.0 -v udpsrc ! application/x-rtp ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink

the udp using the default port (i tested it with the test src and the communication works)
i get no errors but the video doesnt play.

could you advice what am i doing wrong?
thanks
Reply | Threaded
Open this post in threaded view
|

Re: streaming an h264 in mp4 video over udp

michaelg
ok so had a breakthrough,
managed to stream with the following pipelines:

receiver:
 gst-launch-1.0 -v udpsrc caps = 'application/x-rtp, media=(string)video, clock-rate=(int)90000, encoding-name=(string)H264, sprop-parameter-sets=(string)"J0LgHqkYFAX/LgDUGAQa2wrXvfAQ\,KN4JyA\=\=", payload=(int)96, ssrc=(uint)743350251, timestamp-offset=(uint)1181281263, seqnum-offset=(uint)808' ! application/x-rtp ! rtph264depay ! avdec_h264 ! videoconvert ! autovideosink

sender:
gst-launch-1.0 -v filesrc location = /home/michael/Downloads/bbb_h264.mp4 ! qtdemux ! rtph264pay ! udpsink

now i moved the receiver pipeline as part of android-launch-remote app examole by sebastian droge and trying to stream to it from a linux machine.
the caps are from the sender output when starting the pipeline and the stream starts to play for a glimpse and then the app crashes.

any idea what am i doing wrong?
thanks