我第一次尝试使用nginx-视频点播模块或任何视频流。我只想播放静态mp4视频,我放置在服务器上,但通过hls,而不是直接mp4访问。没有实际的现场直播
Q1。我是否正确地理解了一个mp4视频,我把它放在我的服务器上,会自动地被分解成片段,用于HLS吗?
我的nginx安装在这里: /opt/kaltura/nginx,mp4文件放在/opt/kaltura/nginx/test/vid.mp4
在../nginx/conf/server.conf中,我有以下内容:
location /hls/ {
alias test/;
vod hls;
vod_bootstrap_segment_durations 2000;
vod_bootstrap_segment_durations 2000;
vod_bootstrap_segment_durations 2000;
vod_bootstrap_segment_durations 4000;
include /opt/kaltura/nginx/conf/cors.conf;
}
location / {
root html;
}现在,我能够访问m3u8文件: curl http://104.167xxxxx/hls/vid.mp4/index.m3u8
但是,当我试图通过VLC打开这个文件时,我在errors.log中看到了以下错误:
*2020/10/31 15:00:08 [error] 12749#0: *60 mp4_parser_validate_stsc_atom: zero entries, client: 49.207 ..., server: ubuntu, request: "GET /hls/vid.mp4/seg-1-v1.ts HTTP/1.1", host: "104.167. ..."
2020/10/31 15:00:08 [error] 12752#0: *61 mp4_parser_validate_stsc_atom: zero entries, client: 49.207 ..., server: ubuntu, request: "GET /hls/vid.mp4/seg-2-v1.ts HTTP/1.1", host: "104.167. ..."
2020/10/31 15:00:09 [error] 12749#0: *62 mp4_parser_validate_stsc_atom: zero entries, client: 49.207 ..., server: ubuntu, request: "GET /hls/vid.mp4/seg-3-v1.ts HTTP/1.1", host: "104.167. ..."
2020/10/31 15:00:10 [error] 12751#0: *63 mp4_parser_validate_stsc_atom: zero entries, client: 49.207 ..., server: ubuntu, request: "GET /hls/vid.mp4/seg-4-v1.ts HTTP/1.1", host: "104.167. ..."*Q2: https必须要这样做吗?Q3:我没有看到在服务器上创建的任何/hls/vid.mp4文件夹。是否需要手动分别运行ffmpeg来创建hls段?
我做错什么了?
发布于 2022-02-01 16:39:23
我不是卡尔图拉专家,但希望这将有助于缩小你的一些问题:
A1:是的,Kaltura将打包一个固体mp4来传输流数据包。
A2:不,这应该在普通的http上工作,已经在http上运行了很多测试,不需要https。
A3:不,您不需要手动运行ffmpeg。我相信ffmpeg是一个先决条件,所以它应该安装,但你不需要分块的mp4自己,卡图拉插件将这样做。
我没有看到你发布的特别的错误信息,所以恐怕我无法控制它。
https://stackoverflow.com/questions/64621530
复制相似问题