1

RTP を介してビデオ ストリームを送受信するための gst-launch ベースの動作例を見つけました。私はそれらを C に書き直しました。送信者は正常に動作しますが、受信者は動作しません。A と B の 2 台のコンピューターがあります。B->A をストリーミングする場合は問題なく動作しますが、A->B の場合、B はストリームを表示しません。ストリームは B に来ています (wireshark で確認)。コードを見て、まだ見つかっていないバグがないか確認してもらえますか?

gst-launch アプリは次のとおりです。

VIDEO_CAPS="application/x-rtp,media=(string)video,clock-rate=(int)90000,encoding-name=(string)H263-1998"
gst-launch-0.10 -v gstrtpbin name=rtpbin latency=100 \
    udpsrc caps=$VIDEO_CAPS port=5000 \
    ! rtpbin.recv_rtp_sink_0 rtpbin. \
    ! rtph263pdepay \
    ! ffdec_h263 \
    ! ffmpegcolorspace \
    ! autovideosink
    udpsrc port=5001 \
    ! rtpbin.recv_rtcp_sink_0 rtpbin.send_rtcp_src_0 \
    ! udpsink host=$1 port=5005 sync=false async=false

かなり長いので、対応する C コードは [1] にあります。

[1] http://pastebin.com/54eHvZWH

4

1 に答える 1