gpt4 book ai didi

gstreamer - 使用 gstreamer 从 dvblast 流式传输到 HLS

转载 作者:行者123 更新时间:2023-12-02 22:24:50 27 4
gpt4 key购买 nike

我有 dvblast 成功地将源自 DVB-T 的 MPEG2 流多播到网络上,并且我正在尝试获取此多播 MPEG2 流并使用 gstreamer v1.0 将其转换为 Raspberry Pi 2 上的 HLS,如下所示:

gst-launch-1.0 udpsrc port=5004 multicast-group=239.255.1.30 caps="application/x-rtp,media=(string)video,clock-rate=(int)90000" ! rtpbin ! rtpmp2tdepay ! tsdemux ! mpegvideoparse ! omxmpeg2videodec ! queue ! videoconvert ! omxh264enc ! mpegtsmux ! hlssink max-files=5 location=/var/www/stream/segment%05d.ts playlist-location=/var/www/stream/output.m3u8 playlist-root=http://192.168.225.2/stream/

HLS 文件已成功创建,并通过 httpd 成功提供给 mediastreamvalidator,该验证器对结果感到满意:

Processed 7 out of 7 segments:  OK

Segment bitrate: Average: 430.90 kbits/sec, Max: 741.38 kbits/sec

MPEG2 许可证已到位并且可以运行。

Safari 和 iPhone 都无法观看此流,在这两种情况下都会显示播放按钮,但不会支付视频或音频费用。最终 Safari 会声称“缺少插件”。我正在努力找出哪里出了问题,并且正在努力寻找有关此特定场景的任何文档或示例。谁能指出管道中哪里出了问题?

最佳答案

发现当前的 gstreamer gst-omx 代码不处理包含 AU 分隔符,并且需要以下补丁才能使 omxh264enc 生成 Safari 和/或 iOS 将播放的流:

https://bugzilla.gnome.org/show_bug.cgi?id=736211

使用 2015 年 6 月 9 日版本的 mediastreamvalidator 会出现以下问题,但该流现在可以在 Safari 和 iOS 上播放:

WARNING: Video segment does not contain an IDR frame
--> Track ID 1

ERROR: (-12642) Playlist vs segment duration mismatch
--> Segment duration 4.7600, Playlist duration: 2.4000

关于gstreamer - 使用 gstreamer 从 dvblast 流式传输到 HLS,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31627327/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com