NMM视频技术(旧)

 找回密码
 成为会员
搜索
查看: 8180|回复: 19

[求助]能否不改变DVD分辨率压片?

[复制链接]
发表于 2009-6-17 19:35 | 显示全部楼层 |阅读模式
通常,DVD的播放宽高比要么4:3,要么16:9比较普遍,所以,惯用做法是Resize到640*480,或者640*360。这个做法除了是习惯外,还为了缩小分辨率,减少码率。另外,宽高都是16的倍数,保证了最大程度的利用各种图像处理掩模矩阵。

如果,我有足够的码率分配,譬如3000K。我能否直接保留720*480,720*576的分辨率呢?你看,PAL的4:3 DVD,720*576->640*480,画面的缩小实在是太多了。另外如果是720*480的16:9 NTSC,720*480->640*360这个画面的缩小也太多了。真不忍心。

我手头上有一些4:3的NTSC DVD压制的片。压片人保留了720*480的像素分辨率。在播放的时候,有些能够识别为4:3比例。有些就识别不到,按照3:2(720:480=3:2)来拉伸画面,不对,得手动调整为4:3。

归结起来,我的两个问题就是:
1、码率足够的情况下,我直接保留原分辨率压片是否有问题?
2、在AVI中如何嵌入屏幕的宽高信息,尤其是NTSC的DVD,我按照720*480压制后,如何让播放器在播放时自动根据要求调整为16:9或者4:3?

希望知道的朋友能够回答我的疑问,万分感谢!
发表于 2009-6-17 21:15 | 显示全部楼层
不可以直接这么压,会变形。至于为什么会变形,请参考这篇文章:
https://www.dream4ever.org/showthread.php?t=441
和这篇文章:
http://bbs.kpdm.net/archiver/?tid-33793.html

但是,现在不少封装容器支持了Aspect Ratio选项,这就是您提问的第二点,可以有播放端实时调整至正确的比例。目前比较流行的有mkv和mp4封装,都支持这个功能。AVI不可以Aspect Ratio。

题外话:
您提到的几种resize方法都是比较小的。如果在容量方面没要求的话,可以参考一下这篇只扩大不缩小的resize方法:
http://www.nmm-hd.org/bbs/thread-417-1-1.html
 楼主| 发表于 2009-6-18 10:52 | 显示全部楼层
想不到压个片,要注意的技术问题还真是多啊。我感觉我是错过了DVDRip的鼎盛时期了,很多好的知识都不知道。幸亏来到这里,还能找到你这个热心的管理员。

关于裁切黑边的问题,我看了很多文章,都没有具体提及,老是说要裁切黑边。但是我播放的时候本来就没有黑边啊,那裁来干什么。正是由于这个心态的驱使,我还真没有注意到要左右裁8个像素的问题。有一篇文章他只说“关于4:3的,就用Crop(8,0,704,480)”,那是我还真不理解,我的片子本来左右就没有黑边,裁掉8个像素不是没事找事么?

1、看来管理员你介绍我看的文章,感觉DVD问题还真的复杂多变啊。不过,其实16个像素的差异造成的比例不正确,一般情况下看来都是比较少的。另外,我发现我左右本来就没有黑边,那这8个像素还是照样裁切么?这是我一直以来,到看了你的文章后,依然象问的问题。

2、既然MKV可以封装比例,那我以后都用MKV封装了,谢谢版主,呵呵~切边成704*480,然后MKV封装4:3比例,这次对了吧?

3、只扩大不缩小在你的文章没有过多的提及,是一句Lanczos Resize(856,480)么?还是用我无意中在你其他文章看到的一个什么WAF的IIP脚本?

谢谢管理员你的回复!
发表于 2009-6-18 11:30 | 显示全部楼层
我个人觉得有黑边的话还是一定要裁掉的,对黑边进行编码是没有意义的,当然确认没有黑边的话,还是没必要强制裁剪,除非是为了减小”Aspect Error“. 缩小原始画面我觉得很有必要,如果你的pc配置较高,那么编码完成后的影片回放起来是没什么问题,但是如果别人下载了你的影片,但是机器比较老,配置不高,回放起来会很吃了。所以为了您的作品能更广泛的传播,该做的还得做。下面引用一句别人的话”* 多切或少切一个以上像素都被视为技术缺陷,即使多切/少切了一个像素会更好。
- 影片的制作,AR误差必须在原始AR的4%之内。
AR误差计算:(原始AR-制作AR)/原始AR * 100%“
 楼主| 发表于 2009-6-18 11:43 | 显示全部楼层
谢谢楼上的朋友。我也就是自己玩玩压片,离发布还远着了。感觉人家1CD都可以出如此好的质量,我自己压片不敢低于2000K码率,真是惭愧。之前压的自己几部片子,还真把黑边给压了。晕死,DVD删掉了。过去的就不吹毛求疵了,呵呵~
发表于 2009-6-18 18:06 | 显示全部楼层
AVC可以在流里头封装SAR,不用在容器里头封装,因为很多分离器是直接无视容器里头的DAR的,而多数解码器会认流的SAR
 楼主| 发表于 2009-6-18 20:45 | 显示全部楼层
不太明白楼上的意思。我今天用MKVmergeGUI将一部AVI搞成MKV,轨道特殊选项注明16:9,播放时候果然16:9了,真好。喜欢上MKV了。
发表于 2009-6-20 21:39 | 显示全部楼层
楼主是NMM第一个顶帖子,也是第一个自己顶自己的(我没记错的话)。

1.因为不切边就resize会导致失真,所以AVS中进行resize的话必须切,无论是否有黑边。
MKV中设定AR必须切,因为MKV实际上只是将resize工作交给了播放端去做。
压缩的时候在视频流中设定比例有一些不用切的做法,但设定的时候需要注意不要设定错。

2.您说的没错。

3.您并没有认真读我的文章,我花笔墨去介绍的全都是不缩小的做法。
4:3的640*480是特例,因为resize的时候不推荐更改纵向分辨率(也就是480),因此只好缩小横向分辨率。如果您实在不想缩小的话,可以像您在第2点里面提到的一样,通过MKV设定比例来解决这个问题。
除了640*480之外,其他都是扩大的做法。比如,864*480,这个是切的最少(只切9px)、AE最小(0)的做法,是比较理想的。
至于856,我不记得推荐过这种做法。856不是16mod,会在某种程度上降低编码器压缩的效率。

题外话:
从去年还是前年开始,AVS中的LanczosResize加上切边功能之后,也变相地让奇数切边成为可能。比如:
Lanczosresize(864,480,5,0,-4,0)
就是左切5右切4之后,resize成864*480。
 楼主| 发表于 2009-6-21 00:28 | 显示全部楼层
楼主是NMM第一个顶帖子,也是第一个自己顶自己的(我没记错的话)。

1.因为不切边就resize会导致失真,所以AVS中进行resize的话必须切,无论是否有黑边。
MKV中设定AR必须切,因为MKV实际上只是将resize工作交给 ...
dgwxx 发表于 2009-6-20 21:39


我不是第一个顶自己的。我看到feline自己顶自己的《抗交错滤镜使用》了,所以我也自己顶一下。请你也移步去看看。顶帖子是在某些论坛很常用,NMM这里如果违反规则,那请你删除就是了。实在不好意思。

你年纪比我应该大2-3岁,我看你2005年的时候,还在参加高考还是什么的。那个时候你就有这么深的造诣,写出XVID参数详解,实在佩服。我错过了这个DVDRip的鼎盛时期,有幸来到你这里,你还能这么热心的回答大家的问题,我真的很敬佩你。有些问题可能我确实没有经过太多深入的研究就来发问,请你莫怪。这里的帖子有很多好东西,我都看了一遍,当然,很多东西还没有领悟,有迫切想知道答案,所以才会冒昧的开帖子来问你。

我初三开始学习VB和汇编语言,那时候家里条件不好,所以能买的,能借的书都翻烂了,才学会了。那时候没有网络,所以对于最新的知识接触不到,也没有什么条件上论坛与人交流。到现在回想起来,走的真是一条曲折的弯路。我个人对于技术还是很狂热的,关于压片,实在不想再走当年自学程序那条曲折的道路,所以,有些东西没有经过自己深入的研究,没有尝试过所有的方法,就来问你了。因为,你这方面我感觉能够给我一个准确的答案。

我是华南理工自动化专业的本科生,对压片纯粹出于爱好所及。但是希望能够深入些。国内的论坛我想只有你,disec几个朋友是既有技术,又有热心了。

感谢你的指教。我会先再实践一段时间,再总结些问题上来。准备要去单位上班了,以后没空玩这个,最后时间再研究一下。对于技术,我始终充满了热情。
发表于 2009-6-21 11:14 | 显示全部楼层
NMM版规里面不禁止顶贴。一般来说会员善意的顶贴也不构成违反版规,不会受到处罚。但回复的时候我一般会删除无意义的顶贴。
论坛这边毕竟是我在用业余精力来维护,做不到来问即答的。大家希望自己的问题被解答的心情我很理解。您若还有不明白的地方,欢迎再来提问。
发表于 2009-7-28 18:37 | 显示全部楼层
本帖最后由 石丸翼 于 2009-7-28 18:58 编辑

不切边直接720x480压。megui的avs设置DAR为1.8227:1 (实际播放分辨率为875x480)
这样子AE也近似等于0,而且编码效率高,节省码率,只不过要播放器来做resize,优秀的渲染器和合适的设置是必要的

MKV封装的时候也可设置播放分辨率为875 480
不过现在貌似MKV容器的DAR优先级没有压片时候设置的SAR高了?
发表于 2009-7-28 21:16 | 显示全部楼层
只有极少数播放器会看mkv里的DAR,所以应该是在压制时设置SAR而mkv里不设DAR

DVD直接播放时,大部分解码器会直接输出16:9图像,实际上切边成704后再变16:9才是正确的。不过貌似没什么人抱怨在电脑上直接看DVD时比例不对,毕竟2%的变形很难察觉。所以直接用解码器输出的DAR换算成SAR问题也不大。

顺便广告一下,鄙人做的工具可以自动从解码器获取SAR
http://popgo.net/bbs/showthread.php?s=&threadid=494982
发表于 2009-12-28 16:27 | 显示全部楼层
本帖最后由 辉耀 于 2009-12-28 19:35 编辑

呃,我还是有些不明白......小白的跟帖问一下

1.  把黑边切掉之后(如果有)直接计算器算一下(720-横向黑边总px数)*40/33然后resize 16mod应该就不会变形太多,这样做也可以....吧?

2.  如果纵向有黑边应当如何处理呢?例如GONZO的片子上面似乎有2px边来着

3.  x264是否有必要保持16mod?因为标准1080P本身就不是16mod,感觉应该x264对这方面不太严格.....吧?如果可以的话最好能帮忙解释一下16mod究竟是怎么回事.....我仅仅知道与兼容性有关,具体什么关系就......
发表于 2009-12-28 19:19 | 显示全部楼层
16mod的來源是Quantization Matrix是8x8, 每個 C 訊號佔2x2的像素, 也就成了16x16.

播放時才Resize, 可以減少Resize次數, 有效提升畫面清晰度。

AVI也可以有PAR~~~
HQMP最新版會讀取MPEG-4內的Aspect Ratio, 然後進行實時Lanczos-3 Resize, 不過現在的AMD CPU只夠快實時Resize成1920x1200@60fps, 再大一點的顯示器可能要Core i7才足夠
发表于 2010-1-17 13:02 | 显示全部楼层
我不知道为什么还有那么多人说什么非mod16降低编码效率,你还生活在90年代吗?奉劝各位老人们也不要再用mod16去误导新人了。

自己去算算,1920x1080是不是mod16,你见有谁敢不兼容吗?
864x480肯定比856x480多耗码率,加黑边肯定比编码器自动padding更耗码率。所以切边的时候只要横向凑mod2,纵向凑mod4就可以了,有效画面切掉的越少越好,尽量不要留黑边。
发表于 2010-1-17 13:27 | 显示全部楼层
呃,请问一下如果是横向2mod的话……为什么不选择854x480而选856呢?
发表于 2010-1-17 13:30 | 显示全部楼层
回复 16# 辉耀
因为856是8mod
发表于 2010-1-17 13:37 | 显示全部楼层
本帖最后由 辉耀 于 2010-1-17 13:42 编辑

太抱歉了!刚才没看清roozhou大说的是“切边横向2mod”,而不是“resize横向2mod”……浪费您时间对不起了……

但是……这样的话与左5右4的864做法不是又矛盾了么,711不是2mod……晕了……
发表于 2010-1-17 13:48 | 显示全部楼层
回复 18# 辉耀
在4:4:4采样的眼色空间下,可以任意crop和resize,不受奇偶限制。因此之前的711做法都应用于AviUtl 4:4:4 的YC48颜色空间。
现在AviSynth的在resize滤镜中切边,据我推测应该不是真正地切了边,而是将你指定的切边范围意外的画面全部无视,只resize并输出范围以内的画面,所以可以做到奇数甚至小数输入。
您可以看看这两篇文章:
关于LanczosResize奇数切边的问题(作者diseac)
Avisynth中resizer的切边参数的浮点数值类型小验证(作者litiude)
发表于 2010-1-17 14:50 | 显示全部楼层
resize过程中当然是可以使用任意精度的坐标点的
resize中的crop实际上是指定了原画面中的点和resize后画面中的点的对应关系(这个关系一般都是线性的),并不需要对原画面做任何的实际操作

比如原画面720x480,我切掉左右各1.5像素,然后resize到856x480,原来的坐标是(x0,y0),新的坐标是(x1,y1),对应关系是

x1 = (855/716)x0 - 2565/1432
y1 = y0
您需要登录后才可以回帖 登录 | 成为会员

本版积分规则

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

GMT+8, 2024-4-25 16:52 , Processed in 0.132382 second(s), 14 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

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