搜索 社区服务 统计排行 帮助
  • 2335阅读
  • 8回复

[求助] mkvmerge时音频出错,说no valid AAC header found

楼层直达
级别: 骑士
注册时间:
2002-12-21
在线时间:
2小时
发帖:
1210
试图用mkvtoolnix来mux一个视频轨和一个音频轨,视频是从TS的MPEG2压的x264,mp4封装;音频是从TS里面直接抽出来的aac,5.1声道,用的是megui的d2v creator抽取的。

然后在运行mkvmerge的时候出了一个warning:
Warning: 'E:\第59回NHK紅白歌合戦前半.1080i.HDTV.MPEG2.AAC.5.1ch PID 110 DELAY -365ms.aac' track 0: Skipping 9389087 bytes (no valid AAC header found). This might cause audio/video desynchronisation.

后果就是出来的文件从某个时间点开始声音就不同步了~

但是用mpc-hc放视频并挂上这音频,从头到尾都是好的

请教造成这个问题的原因是什么?是megui的d2v creator出的错,还是源TS文件包含的音轨本来就有错?有什么解决办法吗?先多谢了~~m(_ _)m

【 在 williammww 的大作中提到: 】
: 那麻枝不是以前就说过不想做erogal了么,说给女儿留下一个好名声云云。
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 1楼 发表于: 2009-01-06
你可以用ffmpeg直接抽音轨
ffmpeg -i xxx.ts -vn -acodec copy xxx.aac
级别: 工作组
注册时间:
2003-08-26
在线时间:
13小时
发帖:
6600
只看该作者 2楼 发表于: 2009-01-06
我和你遇到相同的问题了

因为mkvmerge加adts流做delay调整的时候,会直接裁掉adts流,所以可能会有问题。

这个问题要追溯上去的话
首先是你从ts流里dgindex拆出来,会有 DELAY -xxxms 标记,这个是流同步标记。以前在我的怂恿下,某人给mmg加上了自动识别DELAY并自动加载到音频delay项里的功能。所以你点音频看下面延迟上应该是-365了

然后由于是adts流,好像mkvmerge处理起来有些不稳,直接裁掉了前面了多少个字节,所以会造成一定的问题




后来因为正好我需要,所以把aac从5.1 downmix到2.0 wav去了,然后用sox给trim和vol了一下,neroaacenc到mp4,合进去一切正常了。你可以去popgo的bt页抓我发的红白 -ww-

催片请点此处: http://bbs.popgo.org/bbs/read.php?tid=502402&displayMode=1#19103164
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 3楼 发表于: 2009-01-06
楼上能解释一下吗,什么叫裁掉了前面多少个字节
如果音频的总长度不变,为什么会出现不同步,还有mmg里不是可以手工设置delay吗
级别: 骑士
注册时间:
2002-12-21
在线时间:
2小时
发帖:
1210
只看该作者 4楼 发表于: 2009-01-06
多谢楼上两位~~

这样看来就是mkvmerge的问题了,那我还是不折腾了,等MeteorRain同学放出的2声道版本吧 :)

【 在 williammww 的大作中提到: 】
: 那麻枝不是以前就说过不想做erogal了么,说给女儿留下一个好名声云云。
级别: 新手上路
注册时间:
2007-11-19
在线时间:
0小时
发帖:
145
只看该作者 5楼 发表于: 2009-01-07
是不是说adts-aac头部不能裁短?那么视频delay +365ms如何?有没有后遗症?
级别: 工作组
注册时间:
2003-08-26
在线时间:
13小时
发帖:
6600
只看该作者 6楼 发表于: 2009-01-07
引用
最初由 roozhou 发布
楼上能解释一下吗,什么叫裁掉了前面多少个字节
如果音频的总长度不变,为什么会出现不同步,还有mmg里不是可以手工设置delay吗

delay是自动识别的。不信可以拖个 xxx DELAY -abc.ac3或者.aac进去,看看delay是不是自动设成了-abc了

delay是负的,自然要裁掉头了,当然就可能出问题了

催片请点此处: http://bbs.popgo.org/bbs/read.php?tid=502402&displayMode=1#19103164
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 7楼 发表于: 2009-01-08
audio delay是负的为什么要裁掉头,而不是让视频延迟
一般这种delay是decoding delay吧
级别: 新手上路
注册时间:
2007-11-19
在线时间:
0小时
发帖:
145
只看该作者 8楼 发表于: 2009-01-08
引用
最初由 roozhou 发布
audio delay是负的为什么要裁掉头,而不是让视频延迟
一般这种delay是decoding delay吧


好像mmg对声音延迟是动真格的,-的会剪裁+的添空白。所以前面我问到,声音delay-的时候是,是不是改变方式把视频作delay+会比较好呢?
快速回复

限150 字节
上一个 下一个