mkv 转码需求

2020-02-12 16:10:43 +08:00
 crella
mkv 转码需求

链接是 http://47.98.134.225:96/w/ ,是我买的学生机,临时放一下文件下载而已。

比如链接里面的 qiaohu-2014.09.mkv ,用 mkvmerge 提取到的音频轨 2014.09.aac ,它在不同的播放软件里面显示不同的时长。

ffprobe、酷我、mpv 都显示是 13min 的时长;

goldwave、酷狗都显示是 24min 的时长,且拖动进度条到 13min 以后还能继续播放。

ffprobe 提示这个 aac 文件:
[aac @ 0000000000544080] Estimating duration from bitrate, this may be inaccurate

用 ffmpeg 提取的 aac 和用 mkvmerge 提取的 aac 大小都是一样。

现在的问题是,我把视频用 x264 压缩了一下,想把压缩后的视频轨和原来的音频轨再合并。用过 mkvtoolnix 合并成新的 mkv,也用过 ffmpeg 直接合并,生成的视频和音频都不是同步的。可以观察 00:10:00 和 00:16:00 的时刻。

求教应该怎么搞才能使合并后的视频文件是画面和声音同步的?
829 次点击
所在节点    问与答
3 条回复
pubby
2020-02-13 14:22:02 +08:00
前阵子在转一批 wav 文件到 aac 的时候也遇到过时长不对的情况

后来无意间把转换时的输出文件后缀 .aac 改成 .m4a 就好了

ffmpeg -loglevel error -nostdin -i audio.wav -c:a aac -b:a 32k -strict experimental -y audio.m4a

原理未知,仅供参考
crella
2020-02-13 16:08:57 +08:00
@pubby 这个改名的方法在我那里行不通唉~本来以为没人回复就把 apache 关掉省得被挂马。
crella
2020-02-15 11:40:19 +08:00
@pubby 我发现用源文件 mkv 的视频和音频轨重新合并都不会出现问题,但是用 x264 转码后的视频轨和原音频轨合并时,ffmpeg 频繁报错:没有设置 pts 或者 timestamp 什么的,可能是我的 x264 参数没设置好吧,以后只用 ffmpeg 编码 x264 好了。

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/644063

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX