Reputation: 21
I want to do live video streaming and encoding. I am using Leopardboard DM365
. I can capture and encode live video into H264 and then stream using gstreamer plugins but how do I capture the rtp packets on windows? I can capture on vlc using sdp file, but I do not want to just view using VLC. I need to capture the buffer and then pass it ahead to my application. How can I do this?
I am using the following gstreamer plugin on server side:
gst-launch -v -e v4l2src always-copy=FALSE input-src=composite chain-ipipe=true ! video/x-raw-yuv,format=(fourcc)NV12, width=640, height=480 ! queue ! dmaiaccel ! dmaienc_h264 encodingpreset=2 ratecontrol=2 intraframeinterval=23 idrinterval=46 targetbitrate=3000000 ! rtph264pay ! udpsink port=3000 host=192.168.1.102 sync=false enable-last-buffer=false
Thank you, Maz
Upvotes: 2
Views: 5757
Reputation: 6729
In your application if you know the exact parameters that you are going to receive why do you need the sdp file?
The sdp file is needed to get the streaming parameters. The rtsp protocol allows exchange of sdp because receiver does not know what the sender will send.
If your application knows what the sender will send you just need to capture the data and start decoding it. You many want to configure rtph264pay with config-interval=1 to send the SPS PPS every 1 second so that your application can decode the content that is coming in. Feel free to change the duration of config-interval to match your intraframeinteral.
Upvotes: 1