
我想使用 Docker 容器将 mkv 视频转换为 HLS“视频”。这是我的命令:
docker run --rm \
-v /mnt:/config \
linuxserver/ffmpeg \
-i "/config/test.mkv" \
-c:v copy \
-c:a copy \
-sn \
-f hls \
-hls_list_size 0 \
/config/hls/output.m3u8
当我运行此命令时,一切都正确创建,使用 VLC 我只能使用 m3u8 文件 Video.js 说“无法加载媒体,原因是服务器或网络发生故障,或者格式不受支持”。我还将音频编解码器和视频编解码器设置为 AAC 和 264 进行测试,但效果并没有任何改善。我使用 Video.js,当我在其他搜索中无法使用 docker 时,我必须在网络上使用 m3u8,因为 vlc 不能使用这种格式。
ffmpeg -i input.mkv -c:v h264 -master_pl_name master.m3u8 -hls_time 10 -hls_list_size 0 -f hls -map 0 -c:a aac -b:a 128k -strict -2 -vf "subtitles=input.mkv" -map a -map v -map s -var_stream_map "a:0,v:0,s:0 a:1,v:1 s:1" test/stream_%v.m3u8
你不需要关心我改变的目录