我正在尝试使用Windows中的Gstreamer 1.0通过RTP协议(RFC4175)将原始视频流传输到以太网。
我不想压缩我的数据,所以我使用rtpvrawpay元素 我有以下gstreamer行
gst-launch-1.0 -v filesrc location=%FILENAME% ! videoparse width=%WIDTH% height=%HEIGHT% framerate=50/1 format=GST_VIDEO_FORMAT_GRAY16_BE ! videoconvert ! video/x-raw,media=(string)video,encoding-name=(string)RAW,sampling=(string)YCbCr-4:2:2,witdh=640,height=512 ! rtpvrawpay pt=96 ! udpsink async=true host=%HOST% port=%PORT%
我有另一个系统对此rtp视频进行解码。但是,该系统仅限于为每个UDP数据包处理1行视频。此外,系统会消除任何长度不同于1342字节的数据包。 (1行:640(宽度)x2字节+ 20字节的RTP标头+ 42字节的UDP标头)
因此,我必须告诉gstreamer管道在数据包中发送1行。我的第一次尝试是设置rtpvrawdepay元素的“ mtu”属性。当我将mtu设置为1300时,我的UDP数据包的长度为1400字节(?)
然后将其设置为1302,UDP数据包是1403字节。必须有一种方法告诉gstreamer不要将任何数据包用作RTP中的连续数据包。
答案 0 :(得分:0)
d0的一些操作:首先,将视频上传到FTP。然后,在JavaScript / html中:
<embed src="myftpsie/mycoolvideo.mp4"></embed>
确保其采用html可以理解的格式