gstreamer: видео от m3u8 до mkv / kinesis не работает - PullRequest
0 голосов
/ 05 апреля 2020

Я хочу использовать поток m3u8 для видео kinesis (формат MKV). Я скомпилировал плагин kvssink, но gstreamer не работает с неизвестной ошибкой.

Может быть, мне нужно как-то преобразовать поток перед отправкой в ​​kvssink? Может ли кто-нибудь прокомментировать этот пункт?

Команда:

gst-launch-1.0 souphttpsrc  location=http://devimages.apple.com/iphone/samples/bipbop/gear4/prog_index.m3u8 ! hlsdemux ! video/x-h264, format=avc,alignment=au ! h264parse ! kvssink stream-name="my-stream" storage-size=128 access-key="<key>" secret-key="<secret>"

Ошибка

Stream is ready
Pipeline is live and does not need PREROLL ...
Got context from element 'souphttpsrc0': gst.soup.session=context, session=(SoupSession)NULL, force=(boolean)false;
Setting pipeline to PLAYING ...
New clock: GstSystemClock
ERROR: from element /GstPipeline:pipeline0/GstHLSDemux:hlsdemux0: Internal data stream error.
Additional debug info:
gstadaptivedemux.c(2531): _src_chain (): /GstPipeline:pipeline0/GstHLSDemux:hlsdemux0:
streaming stopped, reason not-negotiated (-4)
[INFO ] [05-04-2020 10:44:30:735.727 GMT] stopKinesisVideoStreamSync(): Synchronously stopping Kinesis Video Stream 000055d1f527ef50.

ОБНОВЛЕНИЕ

после небольших изменений теперь он работает с fakesink, но все равно выдает ошибку для kvssink

gst-launch-1.0 souphttpsrc location=http://devimages.apple.com/iphone/samples/bipbop/gear4/prog_index.m3u8 ! hlsdemux !  tsdemux ! queue ! video/x-h264 ! h264parse !  kvssink stream-name="my-stream" storage-size=128 access-key="<key>" secret-key="<secret>"

Ошибка

[ERROR] [05-04-2020 18:33:57:145.773 GMT] Failed to get the size of the buffer for hex decoding the codec private data with: 3
ERROR: from element /GstPipeline:pipeline0/GstKvsSink:kvssink0: GStreamer encountered a general stream error.
Additional debug info:
/home/ubuntu/amazon-kinesis-video-streams-producer-sdk-cpp/kinesis-video-gstreamer-plugin/src/gstkvssink.cpp(947): gst_kvs_sink_handle_sink_event (): /GstPipeline:pipeline0/GstKvsSink:kvssink0:

Ответы [ 3 ]

1 голос
/ 05 апреля 2020

Ошибка в элементе демона HLS. Вы можете попытаться настроить конвейер GStreamer на работу с fakesink, и как только он заработает, вы можете попытаться связать плагин KVS GST.

Вопросы, связанные с плагином KVS GST, могут быть опубликованы в выпусках GitHub по адресу: https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp/issues

0 голосов
/ 06 апреля 2020

проблема решена, кажется, проблема в текущей версии kvssink, со старыми коммитами она работает

см. https://github.com/awslabs/amazon-kinesis-video-streams-producer-sdk-cpp/issues/396

0 голосов
/ 05 апреля 2020

video/x-h264, format=avc,alignment=au Я не думаю, что вы можете просто диктовать заглавные буквы таким образом. Это просто помешает автоматическому согласованию ограничений.

Также, похоже, в этом конвейере нет декодера H.264.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...