我使用 ffmpeg
使用此命令行将 mkv
文件转换为 mp4
:
ffmpeg -i input.mkv -c copy file-1.mp4
生成的 mp4
可以在 Linux Mint 的 Xplayer
上正常播放(视频和音频)。但是上传 file-1 后,播放时没有声音。所以我上传了另一个 mp4
file-2,我不需要转换,它可以毫无问题地播放视频和音频。所以无论 file-1
发生了什么,似乎都与我对 ffmpeg
的使用有关。
我使用的播放器叫做 afterglow
。但是 HTML5 播放器
以相同的方式处理这两个文件:file-1 和 file-2
有谁知道为什么在线播放ffmpeg
后的文件没有声音?是否有不同的转换命令可确保转换后的 mkv 文件
将由在线播放器播放声音?
最佳答案
我看到几个问题:
输入有 DTS 音频。虽然它在 MP4 中受支持,但我猜它不适用于 HTML5。您必须转换为 AAC。在
-c copy
后添加-c:a aac
您的
ffmpeg
很旧。 FFmpeg AAC 编码器改进了您的版本所缺少的。通过 downloading a recent version 避免任何其他潜在问题.添加
-movflags +faststart
。这将在编码后移动文件中的一些信息,以便可以更快地开始播放;否则它必须在播放前下载整个视频。
示例命令:
ffmpeg -i input.mkv -c copy -c:a aac -movflags +faststart output.mp4
关于html - FFMPEG mkv 到 mp4 的转换在 HTML5 播放器中缺少音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46456692/