前提
AWSのWebRTCサービスをつかってリモートカメラの映像をリアルタイムで確認できるアプリを作っています。
映像を確認するアプリは問題ないのですが、パイプラインやバックエンドについての知識が乏しいため映像を配信するカメラの方でどのように設定すれば良いのかがわかりません。
raspberry piにubuntuを積んだものでプログラムの制御をしています。
実現したいこと
raspberry piに接続したカメラからrtspプロトコルで送られてくる映像をAWS WebRTCを通してリアルタイムでみられるようにしたいです。
現在の状況
公式ドキュメント、コードサンプルに従い必要なパッケージのインストールとアプリの立ち上げの確認が終わりました。
$ ./kvsWebrtcClientMasterGstSample myChannel
でチャンネルへの接続をかくにんできました。
しかしながら画面は黒いままで、次のエラーがでました。
今回特定のip アドレスでアクセスできるカメラの映像をながしたいのですがその方法が全くわかりません。
発生している問題・エラーメッセージ
ERROR iceAgentAddRemoteCandidate(): operation returned status code: x5a000005
試したこと
github issueで似たような問題を見つけたのでSDKのkvsWebrtcClientMasterGリンク内容stSample.c 内のパイプラインを以下のように変更しましたが何も変化がありませんでした。
c
1switch (pSampleConfiguration->mediaType) { 2 case SAMPLE_STREAMING_VIDEO_ONLY: 3 if (pSampleConfiguration->useTestSrc) { 4 pipeline = gst_parse_launch( 5 "videotestsrc is-live=TRUE ! queue ! videoconvert ! video/x-raw,width=1280,height=720,framerate=30/1 ! " 6 "x264enc bframes=0 speed-preset=veryfast bitrate=512 byte-stream=TRUE tune=zerolatency ! " 7 "video/x-h264,stream-format=byte-stream,alignment=au,profile=baseline ! appsink sync=TRUE emit-signals=TRUE name=appsink-video", 8 &error); 9 } else { 10 pipeline = gst_parse_launch( 11 "autovideosrc ! queue ! videoconvert ! video/x-raw,width=1280,height=720,framerate=[30/1,10000000/333333] ! " 12 "x264enc bframes=0 speed-preset=veryfast bitrate=512 byte-stream=TRUE tune=zerolatency ! " 13 "video/x-h264,stream-format=byte-stream,alignment=au,profile=baseline ! appsink sync=TRUE emit-signals=TRUE name=appsink-video", 14 &error); 15 } 16 break; 17 18 case SAMPLE_STREAMING_AUDIO_VIDEO: 19 if (pSampleConfiguration->useTestSrc) { 20 pipeline = gst_parse_launch("videotestsrc is-live=TRUE ! queue ! videoconvert ! video/x-raw,width=1280,height=720,framerate=30/1 ! " 21 "x264enc bframes=0 speed-preset=veryfast bitrate=512 byte-stream=TRUE tune=zerolatency ! " 22 "video/x-h264,stream-format=byte-stream,alignment=au,profile=baseline ! appsink sync=TRUE " 23 "emit-signals=TRUE name=appsink-video audiotestsrc is-live=TRUE ! " 24 "queue leaky=2 max-size-buffers=400 ! audioconvert ! audioresample ! opusenc ! " 25 "audio/x-opus,rate=48000,channels=2 ! appsink sync=TRUE emit-signals=TRUE name=appsink-audio", 26 &error); 27 } else { 28 // 変更部分 29 pipeline = 30 gst_parse_launch("rtspsrc location=rtsp://192.168.1.XXX:554 short-header=TRUE ! rtph264depay ! " 31 "video/" 32 "x-h264,stream-format=byte-stream,alignment=au,profile=baseline ! " 33 "appsink sync=TRUE emit-signals=TRUE name=appsink-video", 34 &error); 35 } 36 break; 37 }
SDKのコードは上記の部分以外変更していません。
パイプラインの設定方法ではないかと思っているのですが、アドバイスのほどよろしくおねがいします。

あなたの回答
tips
プレビュー