分页: 1 / 1

aac切割程序aacedit 仅支持两种视频帧率?

发表于 : 2016-09-06 9:25
mikey
经过测试,aac切割程序aacedit2仅支持29.97和59.94 两种视频帧率
不知这里有没有会编译c程序的同学来改写一个支持ntsc_film帧率的版本?
aacedit作者应该有公开他的源代码

Re: aac切割程序aacedit 仅支持两种视频帧率?

发表于 : 2016-09-06 23:30
mikey
我好像已经研究出来如何编译了,
谁需要的话可以吱一声

Re: aac切割程序aacedit 仅支持两种视频帧率?

发表于 : 2016-09-07 9:28
mikey
谁解释下这如何添加对23.976帧率的支持?

代码: 全选

//ビデオフレームからAACフレームを計算
long videotoaacframe(long vframe)
{
	double ret, m;
	long a;

	if (options.aacframeset || vframe == 0)
		return vframe;

	//(48000 / 1024) / (30000 / 1001) == 1.5640625
	//(48000 / 1024) / (60000 / 1001) == 0.78203125
	if (options.videoframerate == 59940) {
		m = 0.78203125;
		a = 282;
	} else {
		m = 1.5640625;
		a = 564;
	}
	ret = (double)vframe * m;
	a = (options.delay % 125) * a;
	a = (a + (a / 2000)) % 1000;
	ret -= (double)a / 1000;
	return (long)ret;
}

Re: aac切割程序aacedit 仅支持两种视频帧率?

发表于 : 2016-09-07 11:12
cunhan
m是每帧的取样数;
a看不懂是什么参数,需要delay的时候,要用到a来计算delay的取样数。
另外,这代码还假设输入的aac是48K取样的,如果不是48K的输入,这里面预置的数值又要重新计算了。