ryo_sakura
2025年5月29日 12時36分
以下についてご教示いただきたいです。
①主題のエラーがgstreamer piplineの構成の問題なのか、ネットワーク設定の問題なのか調べる方法
②上記エラーの解消方法
以下状況です。
・app.conf:add_portでTCP・UDPポートは記載している状態
・gstreamer piplineの構成(変数は適切に設定されている)
GST_DEBUG=3 gst-launch-1.0 rtspsrc location=$rtsp_URL user-id=$user_id user-pw=$user_pw is-live=TRUE \ ! rtph264depay \ ! video/x-h264, stream-format=avc, alignment=au \ ! h264parse \ ! kvssink aws-region=$kvs_region stream-name=$kvs_stream_name storage-size=50 iot-certificate=$iot_certificate log-config=$kvs_log_config_path
・gstreamer piplineログ
0:00:00.921106750 21 0xaaaaeda48f60 WARN nvcodec gstcudaloader.c:114:gst_cuda_load_library: Could not open library libcuda.so.1, libcuda.so.1: cannot open shared object file: No such file or directory 0:00:00.921195750 21 0xaaaaeda48f60 WARN nvcodec plugin.c:66:plugin_init: Failed to load cuda library 0:00:01.177279375 21 0xaaaaeda48f60 WARN default gstsf.c:97:gst_sf_create_audio_template_caps: format 0x120000: 'AVR (Audio Visual Research)' is not mapped 0:00:01.177343625 21 0xaaaaeda48f60 WARN default gstsf.c:97:gst_sf_create_audio_template_caps: format 0x180000: 'CAF (Apple Core Audio File)' is not mapped 0:00:01.177370500 21 0xaaaaeda48f60 WARN default gstsf.c:97:gst_sf_create_audio_template_caps: format 0x100000: 'HTK (HMM Tool Kit)' is not mapped 0:00:01.177398125 21 0xaaaaeda48f60 WARN default gstsf.c:97:gst_sf_create_audio_template_caps: format 0xc0000: 'MAT4 (GNU Octave 2.0 / Matlab 4.2)' is not mapped 0:00:01.177421500 21 0xaaaaeda48f60 WARN default gstsf.c:97:gst_sf_create_audio_template_caps: format 0xd0000: 'MAT5 (GNU Octave 2.1 / Matlab 5.0)' is not mapped 0:00:01.177444250 21 0xaaaaeda48f60 WARN default gstsf.c:97:gst_sf_create_audio_template_caps: format 0x210000: 'MPC (Akai MPC 2k)' is not mapped 0:00:01.177476125 21 0xaaaaeda48f60 WARN default gstsf.c:97:gst_sf_create_audio_template_caps: format 0xe0000: 'PVF (Portable Voice Format)' is not mapped 0:00:01.177503000 21 0xaaaaeda48f60 WARN default gstsf.c:97:gst_sf_create_audio_template_caps: format 0x160000: 'SD2 (Sound Designer II)' is not mapped 0:00:01.177535125 21 0xaaaaeda48f60 WARN default gstsf.c:97:gst_sf_create_audio_template_caps: format 0x190000: 'WVE (Psion Series 3)' is not mapped Setting pipeline to PAUSED ... Stream is ready Pipeline is live and does not need PREROLL ... Progress: (open) Opening Stream Pipeline is PREROLLED ... Prerolled, waiting for progress to finish... Progress: (connect) Connecting to rtsp://{カメラのIPアドレス}/{ストリーム} Progress: (open) Retrieving server options Progress: (open) Retrieving media info Progress: (request) SETUP stream 0 Progress: (request) SETUP stream 1 Progress: (open) Opened Stream Setting pipeline to PLAYING ... 0:00:02.890953000 18 0xaaaae6683b30 WARN bin gstbin.c:2811:gst_bin_do_latency_func:<pipeline0> did not really configure latency of 0:00:00.000000000 New clock: GstSystemClock Progress: (request) Sending PLAY request 0:00:02.891789000 18 0xffff9801cb60 FIXME default gstutils.c:4025:gst_pad_create_stream_id_internal:<fakesrc0:src> Creating random stream-id, consider implementing a deterministic way of creating a stream-id 0:00:02.892163125 18 0xffff9801d000 FIXME default gstutils.c:4025:gst_pad_create_stream_id_internal:<fakesrc1:src> Creating random stream-id, consider implementing a deterministic way of creating a stream-id Progress: (request) Sending PLAY request Progress: (request) Sent PLAY request Redistribute latency... 0:00:03.038307125 18 0xaaaae6683b30 WARN bin gstbin.c:2811:gst_bin_do_latency_func:<pipeline0> did not really configure latency of 0:00:00.000000000 Redistribute latency... 0:00:03.077843875 18 0xaaaae6683b30 WARN bin gstbin.c:2811:gst_bin_do_latency_func:<pipeline0> did not really configure latency of 0:00:00.000000000 0:00:05.035738875 18 0xffff9801d060 WARN basesrc gstbasesrc.c:3127:gst_base_src_loop:<udpsrc3> error: Internal data stream error. 0:00:05.035810875 18 0xffff9801d060 WARN basesrc gstbasesrc.c:3127:gst_base_src_loop:<udpsrc3> error: streaming stopped, reason not-linked (-1) 0:00:30.546885493 18 0xffff9801d0c0 WARN rtspsrc gstrtspsrc.c:3540:on_timeout_common:<rtspsrc0> source 327b23c6, stream 327b23c6 in session 1 timed out Waiting for first packet to arrive (see sourceforge.net bug 1019381) Thu May 29 02:22:26 UTC 2025 kill streaming proccess. streaming is probably freezing. sent 0.0558594 KB/s
以上よろしくお願いいたします。
==========
製品型番:AGX4520
Debian/ABOSバージョン:at-debian-image:latest
カーネルバージョン:5.10.226-0-at
3G/LTE モジュール情報 (Debianのみ):
その他:
==========
コメント
ryo_sakura
ご返答いただきありがとうございます。
> 試しに、sink を fakesink にするとどうなりますでしょうか。
→出力結果(fakesink実行周辺)以下になります。
Setting pipeline to PAUSED ... Pipeline is live and does not need PREROLL ... Progress: (open) Opening Stream Pipeline is PREROLLED ... Prerolled, waiting for progress to finish... Progress: (connect) Connecting to rtsp://{カメラIPアドレス}:{ポート}/{ストリーム} Progress: (open) Retrieving server options Progress: (open) Retrieving media info Progress: (request) SETUP stream 0 Progress: (request) SETUP stream 1 Progress: (open) Opened Stream Setting pipeline to PLAYING ... New clock: GstSystemClock Progress: (request) Sending PLAY request 0:00:02.011460625 18 0xffff94037760 FIXME default gstutils.c:4025:gst_pad_create_stream_id_internal:<fakesrc0:src> Creating random stream-id, consider implementing a deterministic way of creating a stream-id Progress: (request) Sending PLAY request 0:00:02.011821250 18 0xffff94037c00 FIXME default gstutils.c:4025:gst_pad_create_stream_id_internal:<fakesrc1:src> Creating random stream-id, consider implementing a deterministic way of creating a stream-id Progress: (request) Sent PLAY request Redistribute latency... Redistribute latency... 0:00:04.155823625 18 0xffff94037c60 WARN basesrc gstbasesrc.c:3127:gst_base_src_loop:<udpsrc3> error: Internal data stream error. 0:00:04.155901875 18 0xffff94037c60 WARN basesrc gstbasesrc.c:3127:gst_base_src_loop:<udpsrc3> error: streaming stopped, reason not-linked (-1) 0:00:04.200106250 18 0xffff6801ae40 FIXME basesink gstbasesink.c:3384:gst_base_sink_default_event:<fakesink0> stream-start event without group-id. Consider implementing group-id handling in the upstream elements 0:00:33.874781069 18 0xffff94037cc0 WARN rtspsrc gstrtspsrc.c:3540:on_timeout_common:<rtspsrc0> source 327b23c6, stream 327b23c6 in session 1 timed out Waiting for first packet to arrive (see sourceforge.net bug 1019381)
ご確認お願いいたします。
at_makoto.sato
ryo_sakura
> Waiting for first packet to arrive (see sourceforge.net bug 1019381)
> このログからは、パケットの到着を待っているように読み取れます。
> そこで、1点確認させてください。
> $rtsp_URL の URL は、一般的なrtspに対応したメディアプレイヤー(VLCなど)を使えば正常にストリーミング再生されるのでしょうか。
→こちらのログについては、アプリケーションにてnethogsを使用してプロセスの存在確認をする際に出力されてしまうものなので、無視していただいて問題ございません。関係のないログを表示してしまい申し訳ございません。
at_makoto.sato
佐藤です。
こちらで Linux PC 上で簡易的なRTSPサーバを動かし、
armadilloから以下のコマンドで fakesink に流してみましたが、エラー無く動きました。
gst-launch-1.0 rtspsrc location=rtsp://URL is-live=TRUE ! rtph264depay ! video/x-h264, stream-format=avc, alignment=au ! h264parse ! fakesink
(passwoardはかけていないので user-idとuser-pwは省いています。)
なので、おそらくパイプラインに誤りはないと思います。
サーバ側を確認する必要があるかもしれません。
ryo_sakura
at_makoto.sato
ryo_sakura
at_makoto.sato
ryo_sakura
以下に現在行っていることと、原因かもしれない箇所について記載いたします。
可能であれば下記から対処法をご教授いただきたく思います。
お忙しいところ大変恐縮ですが、よろしくお願いいたします。
◦現在行っていること
https://armadillo.atmark-techno.com/forum/armadillo/23622
映像データをクラウドへ送信するというコンテナイメージファイルをカメラ台数分複製している状態
例)
1. /etc/local.d内に起動時に実行されるシェルスクリプト(ここではgw.startとします)を用意
2. gw.startで、gw.initを読み込み、cameras=cm1,cm2,cm3,.. を参照してその数だけコンテナを生成
(gw.iniは/var/app/rollback/volmes/に配置)
◦原因かもしれない箇所
・ネットワークに接続されているコンテナの情報が0になっている
→コンテナの複製処理(現在行っていること)が原因でコンテナにIPアドレスがふられず、エラーが発生しているのではないか
armadillo:~# podman network ls NETWORK ID NAME DRIVER xxxx8xxxx podman bridge armadillo:~# podman network inspect xxxx8xxxx [ { "name": "podman", "id": "XXXXXXXXXXXXXX", "driver": "bridge", "network_interface": "podman0", "created": "2025-06-19T14:47:21+09:00", "subnets": [ { "subnet": "10.88.0.0/16", "gateway": "10.88.0.1" } ], "ipv6_enabled": false, "internal": false, "dns_enabled": true, "ipam_options": { "driver": "host-local" }, "containers": {} } ]
ファイル | ファイルの説明 |
---|---|
スクリーンショット 2025-06-19 154658.png |
at_makoto.sato
ryo_sakura
at_makoto.sato
ryo_sakura
> こちらで Linux PC 上で簡易的なRTSPサーバを動かし、
> armadilloから以下のコマンドで fakesink に流してみましたが、エラー無く動きました。
>
> gst-launch-1.0 rtspsrc location=rtsp://URL is-live=TRUE ! rtph264depay ! video/x-h264, stream-format=avc, alignment=au ! h264parse ! fakesink >
> (passwoardはかけていないので user-idとuser-pwは省いています。)
→こちらについてはarmadillo本体の方でgstreamerのコマンドを実行しているということでしょうか
こちらについて、コンテナ上で実行したらどうなりますでしょうか
at_makoto.sato
佐藤です。
> > こちらで Linux PC 上で簡易的なRTSPサーバを動かし、
> > armadilloから以下のコマンドで fakesink に流してみましたが、エラー無く動きました。
> >
> > gst-launch-1.0 rtspsrc location=rtsp://URL is-live=TRUE ! rtph264depay ! video/x-h264, stream-format=avc, alignment=au ! h264parse ! fakesink > >
> > (passwoardはかけていないので user-idとuser-pwは省いています。)
>
> →こちらについてはarmadillo本体の方でgstreamerのコマンドを実行しているということでしょうか
> こちらについて、コンテナ上で実行したらどうなりますでしょうか
はい、armadillo内のコンテナ上で実行しています。
ryo_sakura
at_makoto.sato
at_makoto.sato
ryo_sakura
佐藤様
返答遅くなり申し訳ございません。
主題のエラーに関しては、カメラ側の設定がh265で配信する形になっていることが原因でしたので、そちらを修正したら解消されました。
その後kvsへの送信したフレームがドロップしてしまうエラーが出たのですが、そちらに関してもarmadillo側のネットワーク設定の問題ではなくkvssdk(kvssink)のソースコードの問題でした。
https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cp…
ご迷惑をおかけしてしまい申し訳ございませんでした。
また、質問のご対応いただきありがとうございました。
at_makoto.sato
2025年5月29日 16時00分
佐藤です。
試しに、sink を fakesink にするとどうなりますでしょうか。