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

VBR的MP3如何纠正音频位移?Improper vbr audio encoding

楼层直达
级别: 新手上路
注册时间:
2004-12-22
在线时间:
0小时
发帖:
156
不少avi倒入Virtual Dub的时候就会显示Improper vbr audio encoding

这种视频我直接用megui压x264的时候会产生很大的音频位移

我现在碰到的问题就是:

我有两个这种avi文件,我分别截取这两个avi中的好几段,然后合并

两个avi的音频位移都不同,所以单纯的调整音频位移无效

如果把这两段avi的音频用整段uncompress wav解出来又没有办法在avs里面按照视频那样来分段截取合并

如果在Virtual Dub把音频分段截取,不管是uncompress wav还是direct stream copy
出来的东西也不是正确的

难道要把整段uncompress wav跟原视频重新封装再拿来压才行?

有什么更加方便的办法么?
级别: 工作组
注册时间:
2003-08-26
在线时间:
13小时
发帖:
6600
只看该作者 1楼 发表于: 2008-11-26
vdm提示是否修正,选否

催片请点此处: http://bbs.popgo.org/bbs/read.php?tid=502402&displayMode=1#19103164
级别: 新手上路
注册时间:
2004-12-22
在线时间:
0小时
发帖:
156
只看该作者 2楼 发表于: 2008-11-26
引用
最初由 MeteorRain 发布
vdm提示是否修正,选否


泪流满面啊,我每次都选否的

现在只有整条音轨全部uncomress wav然后再封装,只有这个办法是能用的

a=AVISource("K:\mgs4_cn\1.avi", audio=true).Trim(27740, 94185)
b=AVISource("K:\mgs4_cn\2.avi", audio=true).Trim(73390, 106015)
c=a+b
audio=c
Return AudioDub(c, audio)

比如这样子直接喂给megui
出来的东西音频就完全跟视频对不上号

megui里面的mp3解码应该用的lame吧?我已经升级到最新了啊
有什么其它好的mp3解码器能正确对付这种vbr的?
级别: 新手上路
注册时间:
2004-12-22
在线时间:
0小时
发帖:
156
只看该作者 3楼 发表于: 2008-11-26
貌似只要是vbr编码的mp3
vdm都显示improper vbr audio encoding ?

为什么MeGUI不能正确解码vbr呢?
我也不想通过vdm处理后再放到MeGUI来压啊
我只是想用MeGUI直接压

泪流满面啊。播放就好好的,压出来就视频音频错位
是不是换一个MeGUI调用的mp3编码器就好了?
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 4楼 发表于: 2008-11-26
怎么还有人认为MeGUI会解码?MeGUI半点数据处理能力都没有的。
MeGUI不会解码mp3的,解码靠的是avs里的source filter,不是用lame。

而且这个和解码器完全没有关系。
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 5楼 发表于: 2008-11-26
想知道MeGUI会不会错位不是通过放视频,而是通过放AVS文件来确定,MeGUI只认识avs,不认识其他格式。
级别: 新手上路
注册时间:
2004-12-22
在线时间:
0小时
发帖:
156
只看该作者 6楼 发表于: 2008-11-26
引用
最初由 roozhou 发布
怎么还有人认为MeGUI会解码?MeGUI半点数据处理能力都没有的。
MeGUI不会解码mp3的,解码靠的是avs里的source filter,不是用lame。

而且这个和解码器完全没有关系。


看看我楼上的发言
可能我理解错了

那我问几个初级问题

1,播放时正常,为什么压出来就不正常?难道压缩的时候调用的mp3解码器跟播放的时候不一样么?

2,我的avs代码贴出来了。我并不是想用vdm来截取合并。而是直接用avs来截取合并。这样直接喂到MeGUI里面就可以压了。所以您说的vmd提示是否调整的时候选否那个回答貌似没有什么意义啊

3,我其实要求很简单。就是只想用MeGUI直接调用源文件一次性压出来,不需要先处理音频,也不会产生音频位移那种。有办法么?

------------------
我的播放器一播avs文件就出这个错误
级别: 新手上路
注册时间:
2007-11-19
在线时间:
0小时
发帖:
145
只看该作者 7楼 发表于: 2008-11-26
哈哈,压缩前应该养成习惯预览播放avs,不要等到出错才来哭,这习惯不好。

装个yv12解码器,或者不装就在virtualdub里看avs

avisource的话应该是用acm编码器,看看是哪个版本。
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 8楼 发表于: 2008-11-26
vd里看avs也不太好,最好就是直接用mplayerc来放,注意不是MPC
级别: 新手上路
注册时间:
2007-11-19
在线时间:
0小时
发帖:
145
只看该作者 9楼 发表于: 2008-11-26
mplayerc不就是俗称MPC,还是说mplayer?
级别: 新手上路
注册时间:
2004-12-22
在线时间:
0小时
发帖:
156
只看该作者 10楼 发表于: 2008-11-26
引用
最初由 su_xinling 发布
哈哈,压缩前应该养成习惯预览播放avs,不要等到出错才来哭,这习惯不好。

装个yv12解码器,或者不装就在virtualdub里看avs

avisource的话应该是用acm编码器,看看是哪个版本。


我能看的话我早就预览了

这个所谓的yv12解码器是虾米?
难道不是色彩空间么?

说了半天,好像还是没有什么好办法解决vbr的mp3音频错位的问题啊?
级别: 新手上路
注册时间:
2007-11-19
在线时间:
0小时
发帖:
145
只看该作者 11楼 发表于: 2008-11-26
试试directshowsource
级别: 新手上路
注册时间:
2004-12-22
在线时间:
0小时
发帖:
156
只看该作者 12楼 发表于: 2008-11-26
引用
最初由 su_xinling 发布
试试directshowsource


解决了,果然换成directshowsource就行了

太感谢了!!!!

问一下为什么用directshowsource就正常,avisource就错位呢?

能说一下原理么?
级别: 新手上路
注册时间:
2007-11-19
在线时间:
0小时
发帖:
145
只看该作者 13楼 发表于: 2008-11-26
我是不清楚为啥,用avisource的话,avs的说明里有的范例如下,你可以试试看。

AviSource("movie.avi")
EnsureVBRMP3Sync()
Trim(250,2500)
级别: 新手上路
注册时间:
2004-12-22
在线时间:
0小时
发帖:
156
只看该作者 14楼 发表于: 2008-11-26
引用
最初由 su_xinling 发布
我是不清楚为啥,用avisource的话,avs的说明里有的范例如下,你可以试试看。

AviSource("movie.avi")
EnsureVBRMP3Sync()
Trim(250,2500)


晕倒,还有个保证vbr mp3同步的命令啊

不过如果directshowsource好用的话,为什么要存在avisource呢

这样一来avisource不是多余的么?

我想了解一下这两者有什么区别
快速回复

限150 字节
上一个 下一个