查看: 19802|回复: 10
上一主题 下一主题 跳转到指定楼层

[转贴]DVDRIP反交错和IVTC的简要介绍

24

主题

54

存在感

23

活跃日
 4 

SOS团一星级★

发帖: 918
SOS币: 4328
注册: 2009-11-10
访问: 2018-02-01

楼主
发表于 2010/12/14 | 编辑

猜你喜欢: MEGUI, dvd, ivtc


此文比较简单易懂,另外反交错也可以用MEGUI处理。
一部原版DVD是否为隔行扫描可以用DGindex判定,很多较早期的DVD是隔行扫描的NTSC版本,在制作此类原版DVD的DVDRip的时候,必须做出适当的处理,不然可能会见到严重的黑线或者其他不正常的效果。

对原文稍作了修改。
=============

一引言
dvd不是给电脑看的,也不是直接在影院播出的,而是用DVD机在电视看的,因此dvd的格式会随着当地电视制式有所差别。常见的电视制式为NTSC(北美等地,30fps)和PAL(25fps),dvd自然也就有这两个制式,这可以从dvd包装上看到。但是现在的电影标准为24fps,和上面两个制式都不相同。如果把电影胶片上的帧不加处理直接放在电视上播出,速度自然不会正确,于是制作DVD需要对片源进行处理。两种制式的处理方法也不尽相同,下面就分别具体描述。
二 NTSC的对策
NTSC制式下处理方法称为Telecine,处理精神就是“加帧”,在24fps加入冗余帧变成30fps。说明具体的做法之前,有必要了解场(field)的概念(不是物理学中的场)。普通电视机画面是通过扫描显示器得到,对隔行扫描的电视机来说,要显示一帧画面,电视机分奇偶行,扫两遍。每一遍扫出来的画面就称为一个场,场分奇偶。对于30fps(frames ps,不是fields ps),实际的场频是60场每秒。
进入正题,telecine要做的,首先是把24fps的片子拆成奇偶场,48场/s,假设有四帧ABCDE,将被拆成Ao,Ae,Bo,Be,Co,Ce,Do,De八场,其中下标o表示奇(odd),e表示偶(even)。然后,telecine以一定顺序重排这十个场,目标有两个:1.让场频变为60场/s,这样原来24fps的影片就变成60场/s即30fps的NTSC视频流。在这个例子中,要拆出10场出来。2.不允许出现帧倒退——但是虽然帧是由场组成的,但是帧不倒退的条件只要求奇场、偶场内顺序不能改变,但是奇偶场间可以出现场倒退。3.奇场还是奇场,偶场还是偶场,下标不能变化。可以验证,下面一个组合顺序就符合上面三个条件:
Ao,Ae,Bo,Be,Bo,Ce,Co,De,Do,De
于是把这个顺序的场播出,就是30fps的NTSC制式电视节目。(注:这就是3:2 Pulldown)当然DVD视频是mpeg2格式的,记录的单元是帧,只要把重新排列的奇偶场两两组合,即可得到新的帧。
分析一下,可以看到B,D两帧的信息出现在1.5帧(3场)中,一部分信息是冗余的。直接rip下来的文件如果不加处理播放,会出现所谓拉丝现象。在30fps的vob中,第2帧为(Bo,Be),第3帧为(Bo,Ce),第4帧(Co,De),第5帧(Do,De),如此播放,第2帧-第3帧,第3帧-第4帧均会拉丝。首先这对看者的视觉是个刺激,对制作rip者信心是个打击,其次这种画面的意外高频成分会占用码流,从而影响整体质量,而且因为冗余帧而提升fps,傻子都知道这是在浪费空间。但是在电视上看,就看不到拉丝现象,这也是隔行扫描的结果(为什么,自己分析吧,不是很显然)
IVTC是inverse telecine的简称,从名称上看,就知道是telecine的逆操作。由于telecine只是引入冗余数据,因此它是可逆的。IVTC主流观点最常提dvd2avi和TMPGEMC。
在dvd片子上面记录了一些还原场为帧的信息,称为flag,dvd2avi根据这些flags进行IVTC。但是这种方法比较依赖这些flags,如果本身有问题,或者根本没有flags(D版?),那么用dvd2avi做IVTC简直是...灾难。
主流观点还推荐了TMPGENC做NTSC DVD的IVTC。具体使用方法不提,只是说一下它的工作原理(俺猜的)。回头看刚才得到的十场,俺们需要从中挑出一些场重新组合,还原得到ABCD四个帧。做法很简单,例如保留第1,2,4,5,6,7,9,10场(分别是什么?对照一下),然后两两组合,就得到了ABCD四场,注意同帧奇偶组合和偶奇组合是一样的。换一种说法,保留第1,4,6,9场,然后把它们和后面相邻的一场合并成一帧,如此循环。事实上TMPGENC就是做的这件事情,按照一定的pattern选取某些场,和后面的相邻场组合成帧。当然TMPGENC还可以做所谓自动IVTC,原理相同,但是不需要你提供选择场的pattern,它扫描每个场,试着和后面相邻的场组合,并判断是否有拉丝现象,自动挑选能组成帧的场,听上去挺省事(速度也慢的可以!后面还会提到,不一定解决问题)。
理想主义者(比如学数学的人)说,好,NTSC片子的IVTC问题解决了。理论上解决的问题实际上可能完全不同。事实上,只有不多的大牌DVD片商的正版牒可以比较理想的做IVTC,剩下的只有部分场能比较规则的作IVTC,无法很好的还原。而且在制作DVD的时候还可能人为地加入一些对胶片的处理,就更无法还原为原来的24fps胶片了。
三 PAL的对策
前面废了半天话,其实手头能弄到的好多都是PAL的DVD。PAL的fps和胶片fps的最大公约数为1,不能像NTSC一样做小循环的增帧;可以用跟NTSC类似的方法,即在12帧后加入一个场(即为12.5帧,这也叫做2:2 Pulldown)

也可以直接改fps,但是这样音频和视频会产生4%的差异,下面的引用做一个解释

NTSC与PAL制式的转换
  关于视频和音轨在PAL与NTSC制式之间转换的一些理解。

首先关于视频

  对电影来说,DVD-NTSC在存储视频时使用了“2:3Pull-Up”的方法,使24帧的视频转换成30帧的视频,但是24帧的视频和转换后30帧的视频的播放时间都是1秒。而PAL制的视频没有经过任何处理直接被装载到DVD中去,这样由于PAL系统的帧速是25帧,所以原本电影视频是每秒钟播放24帧,到了PAL制的DVD中每秒就播放了25帧,在总帧数是一定的前提下,PAL制的视频实际上在播放时间上会变短4%!

  这就说明了同样一部100分钟的电影,在NTSC上播放还是100分钟,而放在PAL上播放就变成96分钟了,也就是PAL制的DVD会比NTSC制的同一部片子快1/24。换算时间的时候,NTSC时间 X 24/25 = PAL时间

其次关于音频

  由于PAL制的视频比原始影片短,所以为了使声音与视频同步,声音也必须变短。那声音怎样变短呢?自然是加快声音的播放速度了,效果可以类比磁带快放,这样做的结果就是声音的声调会变高。PAL的音频就是这样一个“快放”的过程,只不过这个声音速度的变化只有4%,音调失真不会特别严重。   
    那么如果把时间较短的PAL制音频集成在时间较长的NTSC视频里,为了实现音画同步,该声音就必须慢放4%,由于这一过程需要重新采样,就会造成音质有一定的下降,这就解释了PAL的音轨不宜与NTSC视频集成的原因。

  经过进一步的研究,在改变声音播放速度的同时,可以对声音的音调进行一定的补偿,而使其听起来不失真,目前已经有免费软件能够做到这一点,但是这个过程也是有损的,至于会对音质造成多大危害,就见仁见智了。



的确不少PAL的DVD客观上是有拉丝的。那很可能是因为买的是D版,而且很可能是美国原版DVD的D版俺推测,这些片子是从NTSC制式下的DVD通过最粗野的方式转成PAL制的,那就是强制丢帧,六帧丢一帧(或者十场丢两场),简单又实惠,很多D版商才不会先辛辛苦苦做IVTC成24fps,然后再把片子拉成25fps。(当然不排除一些体贴的D版,也许还真做了)。这个推测之所以是推测不敢sure,是因为丢帧的方法处理之后,原则上应该还可以发现一些原来是同帧的相邻场,但是实际上俺用TMPGENC观察,似乎每个场和前后场组合得到的都是拉丝的帧。俺的另一个推测是,做D版的同志们不丢帧,而是同样用拉伸的方法,把30fps变成25fps,这样处理后相邻场就不再能组成同帧,这解释了帧帧拉丝的现象,可是做起来挺麻烦,似乎不该是翻版首选。这是主要疑点,俺也希望能有大虾或者做D版的同志告知这是怎么回事。
对待这种PAL,用TMPGENC做IVTC一点用没有,有效的方法只有一个,deinterlace(去拉丝),当然这么做也是没办法,做完了会使边缘模糊不清,出现所谓的ghost。忍了吧,D版闹妖没什么不正常的,而且总比一条一条的强。


[ 此贴被神尾の観鈴在2010-12-14 22:42重新编辑 ]

162

主题

256

存在感

134

活跃日
 4 

SOS团一星级★

1楼
发表于 2010/12/14 | 编辑
有些部分的资料有我以前没能透彻弄懂的东西!

比如这段:(终于可以比较有底气地告诉别人什么I什么是P了...)
“第二,NTSC(美日)的HDTV的标准是1920x1080i和1280x720p。i:是指隔行interlace,p:是指逐行 progressive。帧率都是30fps,所不同的是1080i的分奇偶场(field)每场540线(共60场),两场合成一帧1080线; 720p的则一次扫完720线,同样要扫60次每秒。”

另外,对着这段我还是有一些疑问:

“第三,PAL制(中欧)的电视是25fps和50场“

按照资料的说法,就是一帧需要两场。那么假如视频一共有3000帧,那么场数会有多少?是3000X2=6000,还是3000+1=3001?

如图示,这样一个视频假设有3帧,那么场数应该是3+1=4场还是3X2=6场?
图片需登录后查看



[ 此贴被凝芳文在2010-12-15 00:13重新编辑 ]

162

主题

256

存在感

134

活跃日
 4 

SOS团一星级★

2楼
发表于 2010/12/17 | 编辑
原本只是想弄清一些概念性的东西,倒是发现现在问题更多了....大概可能真的是越是白痴的时候问题越少

关于我们|无图版|SOSG WIKI

Copyright © 2006-2024 SosG.Net
Total 0.031002(s) query 9, Gzip enabled,  沪ICP备07006640号-3