NMM视频技术(旧)

 找回密码
 成为会员
搜索
查看: 6175|回复: 11

重编码120FPS AVI的问题~(有兴趣的来一起讨论)

[复制链接]
发表于 2005-7-8 13:58 | 显示全部楼层 |阅读模式
我本来是那个“bert”由于把密码忘了只好换个名字上来~ dgwxx该是考完试了吧
相比下地狱正等着我~
不说废话了~正题:
近来我上网(ED,BT)下回来的片子越来越多是120FPS的(AVI格式)
120FPS的片子都是用较高的编码率由DVD转过来(起码有2000kbps)站大量的硬盘空间~现在想把其压一压~遇到了一些的问题
用常规是方法很难达到满意的效果最主要是掉帧的问题
现在先问一下有没有可以自动分析120FPS AVI的工具(就是可以自动找出哪段是23.976fps和哪段是29.97fps的工具)

[ Last edited by bertA on 2005-7-11 at 13:20 ]
发表于 2005-7-8 16:12 | 显示全部楼层
120fps主要是为了兼顾AVI不能VFR的特性与片子效果的一种权衡的手段,并不是DVD专有的,现在很多很多TVRIP也是120fps。

另外,你想压成什么呢?压成RMVB?还是去掉NULL帧做成VFR的形式?
压成vfr RMVB的话倒是能省出不少空间,但是效果会变差一些,失去了作为收藏用的DVDRIP的价值,不推荐。
去掉NULL帧做成vfr MKV也只能省出来5M左右的空间……达不到节省容量的目的。
MP4也支持vfr,但是压成AVC的话还是需要重编码,效果会变差。

如果想压成vfr RMVB的话,可以参考NMM网站上的文章,dio超强的说~
如果想做成vfr MKV的话,可以先把120fps的AVI封装成MKV,之后用dio写的Auto120FpsMkvToVfrMkv这个工具,把这个120fps的MKV转换成vfr的MKV。

不知道我有没有猜对你的意思。
 楼主| 发表于 2005-7-9 12:32 | 显示全部楼层
正是这个意思~去掉NULL帧用再去压~压是用XVID编码~不是用AVI封装~用支持vfr的封装
我试过了用Auto120FpsMkvToVfrMkv转过了~虽然转出来是是VFR的MKV但用AVS或者用VMD打开编辑就不能了(FPS变成固定的30.304~本来VFR的MKV是23.976和29.97的集合)~请问dgwxx有没有方法编辑那个转出来的VFR的MKV?而不会像AVS和VMD只能用固定的FPS?
你上面说过的做VFR的那几种格式用什么工具?
用mkvtoolnix可以做VFR的MKV的不?
只要不造成掉帧和影像不同步就可以了~(用XVID重编码~片源是WMV3的)

[ Last edited by bertA on 2005-7-9 at 15:34 ]
发表于 2005-7-10 11:05 | 显示全部楼层
如果要这样,首先要保证系统能够正确解码WMV3的内容(因为可能要用到directshowsource)。
制作过程中大体上要经过下面几个过程:
120fps avi--->封装120fps mkv--->处理生成vfr mkv,同时获得timecode--->将vfr mkv解开,获得cfr avi--->重编码--->将cfr avi、音频、timecode重新封装为vfr mkv。
这个是大致思路,我现在不在家,如果不明白请提出来,我明天回家之后再针对你的问题写详细步骤。

因为rmvb/mp4等容器都支持vfr,所以直接把vfr的MKV喂给编码器,他们出来的直接就是vfr的rmvb/mp4,相当方便。
 楼主| 发表于 2005-7-10 20:22 | 显示全部楼层
Originally posted by dgwxx at 2005-7-10 11:05:
如果要这样,首先要保证系统能够正确解码WMV3的内容(因为可能要用到directshowsource)。
制作过程中大体上要经过下面几个过程:
120fps avi--->封装120fps mkv--->处理生成vfr mkv,同时获得timecode-- ...


1、那个“CFR AVI”应该是“VFR AVI”吧?我查过没能查到CFR AVI是啥东西~
2、那个“timecode”我查过是“时间码”的意思~但我不太明白这个东西是什么~用什么工具可以得到它~?
3、解VFR MKV应该可以用MKVextractGUI_1531.exe的?
我试过用MKVextractGUI_1531.exe解VFR MKV出来的是一个AVI封装的文件~但是这个文件不能播放~也不能用VirtualDubMod这类的编辑工具打开。
4、我想用XVID做重编码~但不知道如何做~?
5、那个“120fps avi--->封装120fps mkv--->处理生成vfr mkv”的过程用“Auto 120 FPS MKV/AVI To VFR MKV”可以变成“120fps avi--->vfr mkv”
6、能不能拿那个VFR MKV直接来重编码(那个VFR MKV没含有音频和其他的~只有视频)

再下去我也是一头雾水~!?~

[ Last edited by bertA on 2005-7-10 at 20:28 ]
发表于 2005-7-11 08:44 | 显示全部楼层
1.cfr是固定帧率的意思,vfr是可辨帧率的意思。avi这种容器只支持cfr既固定帧率,如果avi真的支持vfr的话,我们今天也没必要搞到120fps这么麻烦了
2.timecode就是告诉mkv,哪里该用什么帧率播放,用来实现vfr。timecode有三种格式,v1/v2/v3,如果感兴趣可以去查一下MKV的官方文档。有个工具可以分离timecode,那个程序在家,等我回家了再贴上来。
3.我没用MKVextract解过vfr mkv,上面提到的那个工具可以在分离出来timecode的时候同时分离视频。
4.只要获得视频avi,重编码的过程跟重编码普通avi没什么两样。如果片源是用WMV VCM编码的话,就可以直接用avisource来导入AVS(可能性不大),如果用的WME来编码的话就用directshowsource来导入。
5.哦,原来dio升级了他的工具
6.如果我没记错的话,VDM是不能打开MKV的。AVS可以使用directshowsource来导入MKV。直接重编码vfr mkv我没试过,但是如果你想重编码120fps mkv,那还是算了吧,帧数太多了。

希望你能改个标题 这个标题太不好了
 楼主| 发表于 2005-7-11 14:05 | 显示全部楼层
我是用AVS的directshowsource导入VFR MKV~再用VirtualDubMod这类的工具打开AVS文件~可是发现VirtualDubMod确把把FPS认成了30.304(本来VFM MKV的FPS是23.976和29.97的集合)~这样重编码的后果就是影片时间就会缩短~!!!!
我通常是directshowsource来开打开的~不用管它是啥编码的
问下你那个工具是不是可以同时把VFR MKV分离成timecode和生成cfr avi?
那么最后阶段的合成又用什么的工具~???
发表于 2005-7-12 09:28 | 显示全部楼层
你问得我都不明白了,只能长篇大论了。我只能说这是我目前知道的能达到你目标的最简单的方法了,其如果你觉得我的方法不好的话,可以去问问别人,或许能找到更好的方法。当然,如果你研究出来更好的方法,请贴出来给大家分享,谢谢~
现在vfr及120fps的内嵌、互相转换是最难弄的问题。没有谁能找到一个又简便又准确的方法,如果嫌麻烦,我建议你放弃制作,收高质量的版本又有什么不好呢?
[size=-1](请楼主在提问的时候不要加那么多问好和感叹号,我觉得用这种说话方式的人在朝我大喊大叫,虽然我知道楼主不是这个意思,但是还是会没办法静下心来回答问题,个人的一点小毛病,请原谅^^||)

1.首先,请生成vfr mkv。
2.运行我上传的工具,点vfr mkv按钮,之后点demux按钮,在你源mkv的目录下就会生成.avi和.timecodes.txt。我之所以绕这么大费周折制作vfr mkv又分离mkv,要的就是这个timecode。timecode是全部制作的核心。
3.用avs来压这个.avi,能用avisource就用,不行就用directshowsource。(视.avi的编码不同而不同)
4.压好了之后,使用mkvtoolnix中的mkvmerge工具来重新制作vfr mkv。
打开mkvmerge gui,之后按照下图操作:

vfrmkv.rar

182.65 KB, 下载次数: 13580

 楼主| 发表于 2005-7-12 10:57 | 显示全部楼层
dgwxx你给我那个文件不能用大意是“你现在用的COMDLG32.OCX版本跟要打开这个文件所需要的控键不相符~”。
虽然包中附带了COMDLG32.OCX~但版本看来很陈旧~在解压一看原来这个vfr_gui.exe是个VB编成的文件~也有个叫MP.exe的东西~看来这个才是主要~可惜是命令行~不过我已经知道那个MP.exe是有什么用的了~看下图~请dgwxx看看我这种格式对不对~不知道跟vfr_gui.exe有什么区别不过我通过MP.exe可以得到一个固定FPS的AVI(FPS为:23.976)和一个timecodes有关TXT~~附上一段timecodes的数据~dgwxx请看看会不会跟vfr_gui.exe生成有没不同?
timecodes:
Assume 23.976
0,59,29.9700
60,471,23.9758
472,486,30.0000
487,487,14.9254
488,490,30.0000

我这次体谅管理员只用了一个问号~

[ Last edited by bertA on 2005-7-12 at 11:06 ]
mp~.PNG
发表于 2005-7-12 14:10 | 显示全部楼层
vfr_gui.exe就是那个mp.exe的gui~既然你都会用mp.exe了,那个vfr_gui.exe就54它好了。
PS.你分离出来的应该没错。
发表于 2005-8-11 22:43 | 显示全部楼层
开学了~我也是bertA~dgwxx,论坛的登陆是不是有问题?老是密码不对的?那个问题提问也要填?
我在这修正一个timecodes的错误
当用MP.EXE生成timecodes的形式是这样:
Assume 23.976
0,59,29.9700
60,471,23.9758
472,486,30.0000
487,487,14.9254
488,490,30.0000

但当用mkvmerge重新把cfr avi和timecodes合成时会出现错误问题主要是timecodes文件的第一行需要一个标志~那么timecodes应改为如下的形式:
# timecode format v1
Assume 23.976
0,59,29.9700
60,471,23.9758
472,486,30.0000
487,487,14.9254
488,490,30.0000

这样就可以正常合成vfr mkv~请dgwxx验证
发表于 2005-8-12 08:16 | 显示全部楼层
如果你在注册的时候没有设置登陆提问,就不用填,保持空白即可。论坛程序应该没有问题,我从是第一个注册的用户(废话,管理员),到现在为止已经很长时间了,我自己都没出过问题。
没错,mp.exe生成的timecodes确实缺少format line,需要自己手动加上。
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

小黑屋|手机版|NMM视频技术

GMT+8, 2025-5-6 01:49 , Processed in 0.204941 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表