|
作者:evol 原文:
http://bbs.btbbt.com/thread-937810-1-1.html
和所有的压制过程一样,从HDTV向rmvb直转同样包括解码和编码两个部分,而做好解码是实现直转的关键.
第一步:通过DGIndex生成d2v工程文件并分离音轨
1)打开HDTVtoMPEG2->Add 加载ts或tp,记录VideoPID和AudioPID图片需登录后查看 2)打开DGIndex->SetPIDs 选择相应的程序对PID值所对应的视频流和音频流进行解码.根据上面得到的PID值进行设定,PID值保存在DGIndex.ini文件中图片需登录后查看 3)File->Open,选定要打开的ts或tp
图片需登录后查看 4)Video->iDCT Algorithm->IEEE-1180 Reference 反离散余弦变换算法,包括7种(设置将保存在INI, D2V和CLI中): 32-bit MMX (1) 32-bit SSE MMX (2) 32-bit SSE2 MMX (3) 64-bit Floating Point (4) IEEE-1180 Reference (5) Skal SSE MMX (6) Simple MMX (7) 品质:IEEE-1180 Reference > 64-bit Floating Point >其它图片需登录后查看 5)File->Preview,或按F5键预览,文件信息(包括尺寸,制式,场序,音轨等)
图片需登录后查看 图片需登录后查看 6)Video->Field Operation->Honor Pulldown Flags
场处理: Honor Pulldown Flags-服从pulldown flags.对于3:2 pulled-down clip将得到标准重复模式(3个非交错帧和2个交错帧);而对于PAL或MPEG1,将不会得到复制场.输出帧率与源文件帧率相同.适用于FILM远低于95%或NTSC的情况. Ignore Pulldown Flags- 忽略pulldown flags.不会得到复制场,可能导致影音不同步,适用于高级用户获取MPEG流的精确画面. Force Film-忽略pulldown flags.采用插入/去除帧的方法恢复23.976 fps,同时保持音视频同步(相当于做IVTC,Inverse Telecining).适用于非PAL或MPEG1但FILM在95%或以上情况.实际上Force Film只有在100% Film时才会处理得较完美,若在95%-100%仍会有相当数量的交错帧,出现画面急动.解决方法:选择Honor Pulldown Flags(早期的版本为None),Avisynth的IVTC设置为Telecide(order=1,Guide=1).Decimate(Cycle=5)图片需登录后查看 做IVTC还是Deinterlace(将在后面GKnot中设置): (1)经过telecine处理的源(5帧中有3个非交错帧和2个交错帧),做IVTC (2)如果每一帧都是interlaced的,其帧率为29.97fps(实际为30fps),只能做deinterlaced;若用IVTC,将会drop掉非复制帧,出现急动画面,这也是部分HDTVRIP制作存在的问题,在此说明一下. 以上两种情况的判断方法: 选择Honor Pulldown Flags(或None,29.97fps),用GKnot加载d2v,通过移动帧(连续5帧)预览运动画面,我截几张图,5帧都为interlaced的:图片需登录后查看 图片需登录后查看 图片需登录后查看 图片需登录后查看 图片需登录后查看 7)Video-> YUV->RGB ->PC scale PC scale-映射输出全范围RGB颜色空间模式: YUV [16, 235(Y)/240(UV)] -> RGB [0, 255] TV scale-映射输出部分范围RGB颜色空间模式: YUV [16, 235(Y)/240(UV)] -> RGB [16, 235] 图片需登录后查看 8)Audio->Output Method->Demux All Tracks Disable - 禁音 Demux Tracks - demux选定的音轨 Demux All Tracks - demux所有音轨 Decode AC3 Track to WAV - 将AC3编码为WAV输出图片需登录后查看 9)Audio->Dolby Digital Decode
图片需登录后查看 10)File->Save Project 生成d2v工程文件并分离音轨图片需登录后查看 第二步:通过GKnot生成AVS文件
1)启动GKnot->打开d2v工程文件,在分辨率窗口裁黑边 输入分辨率为原始尺寸,一般1080i或1080p的源都为1920X1088;按1:1的象素高宽比;裁黑边根据预览窗口,选择1/2大和缩放后,水平方向(左右)和垂直方向(上下)裁减掉的象素数之和应为4的倍数(实际是为了保证裁减后的影片在水平和垂直方向的象素数都为4的倍数,便于处理)图片需登录后查看 图片需登录后查看 2)修改分辨率,比在压制软件中再做resize方便一些
图片需登录后查看 3)保存并编码->Field操作->保存生成AVS文件 是做Deinterlace还是IVTC,前面已祥细说过图片需登录后查看 4)编辑AVS文件,合并视频,音频 对于音频,讲几种常见情况: AC3文件:直接用DirectShow方式读取 MPA文件:直接用DirectShow方式读取 AAC文件:安装月光4.0后用DirectShow方式读取 DTS文件:由于DirectShow方式不支持DTS,若将DTS转制为WAV,体积硕大同时音质降低,如何通过AviSynth直接读取DTS困扰了我相当长一段时间,后来发现先将DTS做mkv封装,再用DirectShow方式读取mkv是可行的,即成功调用了第三方软件AC3Filter(看来DTS必须放在容器中,像AVI)图片需登录后查看 列两个AVS脚本: (1)Deinterlace(本例为混合模式;若为非混合模式,第二句改为FieldDeinterlace(blend=false)),AC3音轨
QUOTE: LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll" ) LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\decomb.dll" ) LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\UnDot.dll" ) LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\VSFilter.dll" ) # SOURCE mpeg2source("F:\tp\Sample.d2v" ) # DEINTERLACING (1) FieldDeinterlace() # CROPPING crop(4,2,1912,1076) # RESIZING LanczosResize(1024,576) # DENOISING: choose one combination (or none) Undot() # AUDIO SOURCE Audio = DirectShowSource("F:\tp\Sample.ac3" ) # COMBINE VIDEO + AUDIO AudioDub(last,Audio) # SUBTITLES TextSub("F:\tp\Sample.ssa" ) (2)IVTC,DTS音轨
QUOTE: LoadPlugin("C:\PROGRA~1\GORDIA~1\DGMPGDec\DGDecode.dll") LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\decomb.dll") LoadPlugin("C:\PROGRA~1\GORDIA~1\AviSynthPlugins\UnDot.dll") LoadPlugin("C:\Program Files\AviSynth 2.5\plugins\VSFilter.dll") # SOURCE mpeg2source("F:\tp\Sample.d2v") # IVTC Telecide(order=1,guide=1).Decimate() # CROPPING crop(4,2,1912,1076) # RESIZING LanczosResize(1024,576) # DENOISING: choose one combination (or none) Undot() # AUDIO SOURCE Audio = DirectShowSource("F:\tp\Sample.mkv") # COMBINE VIDEO + AUDIO AudioDub(last,Audio) # SUBTITLES TextSub("F:\tp\Sample.ssa") 5)用Easy RealMedia Producer等软件压这个AVS即可.
| |