我有一个应用程序使用appsrc管道将原始RGBA帧转换为HLS流。文件保存在本地,当通过VLC在本地播放时,它播放没有问题。
这是工作管道:
appsrc
- 视频/x-raw
- 格式= RGBA
- 宽度= 720
- 身高= 1550
- 帧速率= 25/1
- 流类型= 0
- 是活= TRUE
- 格式= GST_FORMAT_TIME
videoconvert
openh264enc
- 概要=高
- 比特率= 1000
h264parse
- config-interval = 1
mpegtsmux
hlssink
- max-files = 5
- 时间= 25
- playlist-length = 3
- 位置=…/% 04. t
- playlist-location =…/video.m3u8
但是当我运行本地web服务器(尝试多个)时,将其指向带有文件的目录,在网络上的另一个设备上的VLC或浏览器都无法播放。web服务器没有任何错误,它验证它首先接收到针对m3u8的GET请求,然后是单个.ts文件,但是没有发生回放。其他文件如jpeg可以正常服务,所以我几乎可以肯定服务器和防火墙都不是问题。
同样,HLS文件通过VLC在本地播放而没有问题,只是不通过本地服务器。有什么问题吗?
我有一个do-timestamp=true属性,我必须设置为false,然后一切正常