搜索 社区服务 统计排行 帮助
  • 29896阅读
  • 63回复

【原创】10bit视频编码——特性及全面播放方法介绍(2012.1.18更新)

楼层直达
级别: 圣骑士
注册时间:
2003-04-13
在线时间:
21小时
发帖:
1669
只看该作者 30楼 发表于: 2011-09-15
引用
引用第18楼roozhou于2011-08-28 15:03发表的  :

这个要做也应该播放时做(很多电视机都有这个功能),压片的时候做纯粹浪费码率。另外电影24fps并没有不流畅,人家的快门速度是1/24秒,和动画或者电视摄像机不一样,通过motion blur来提升流畅度。

你可以用我direct264里带的vsfilter.dll,这个问题已经修正了,会根据分辨率自动选择BT709还是BT601。




代發到 MPC-HC 的 trac 去了。 http://sourceforge.net/apps/trac/mpc-hc/ticket/1728#comment:2
有些問題需要你的解答。
- 為什麼 csri_open_file() 被去掉了?
- 為什麼 csri.h 被加入新東西了?
- 為什麼去掉了 vdub/avs 介面呢?
- 還有其他無關的修改

然後 IRC 上也被提醒了。
引用
if it was you who posted this patch, please get the real dev (roozhou) to post it if you want it in :P
without random changes



有事請pm我!   我的廢棄日記 ← 請多多光臨! <(_ _)>

----------------------

-E-D-2-K-----歡-迎-加-為-好-友-!-------
[KOR][TLF][eDtoon][CHN]rt87
[eDtoon][popgo][dmhy][TLF][CHN][KOR][ARC]roytam1
------------------------------
我的Winamp正在播放的歌曲:
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 31楼 发表于: 2011-09-15
我的patch里包含的东西太多了,发上去只是出于遵守GPL为了让其他人可以编译这个模块。如果要发到tracker上最好把每一个单独的功能修改提取出来分别发。
级别: 新手上路
注册时间:
2011-09-20
在线时间:
1小时
发帖:
4
只看该作者 32楼 发表于: 2011-09-20
引用
引用第18楼roozhou于2011-08-28 15:03发表的  :

这个要做也应该播放时做(很多电视机都有这个功能),压片的时候做纯粹浪费码率。另外电影24fps并没有不流畅,人家的快门速度是1/24秒,和动画或者电视摄像机不一样,通过motion blur来提升流畅度。

你可以用我direct264里带的vsfilter.dll,这个问题已经修正了,会根据分辨率自动选择BT709还是BT601。



你给我找一个能实时运行这段代码的民用级处理器,否则别再瞧不起压制前处理。

  1. SuperRegular = MSuper(hpad=16, vpad=16, rfilter=4)
  2. CustomPelClip = nnedi3_rpow2(4, nsize=3, nns=4, cshift="Spline144Resize")
  3. Super = MSuper(hpad=16, vpad=16, rfilter=4, pel=4, pelclip=CustomPelClip)
  4. backward = MAnalyse(Super, isb=true , blksize=16, blksizev=16, search=3, searchparam=16, pelsearch=16, overlap=4, overlapv=4, truemotion=true, plevel=2, lambda=2000, lsad=1600, dct=5)
  5. forward = MAnalyse(Super, isb=false, blksize=16, blksizev=16, search=3, searchparam=16, pelsearch=16, overlap=4, overlapv=4, truemotion=true, plevel=2, lambda=2000, lsad=1600, dct=5)
  6. backward_2 = MRecalculate(Super, backward, blksize=16, blksizev=8, search=3, searchparam=16, overlap=4, overlapv=2, truemotion=true, lambda=1000, dct=5)
  7. forward_2 = MRecalculate(Super, forward, blksize=16, blksizev=8, search=3, searchparam=16, overlap=4, overlapv=2, truemotion=true, lambda=1000, dct=5)
  8. backward_3 = MRecalculate(Super, backward_2, blksize=8, blksizev=8, search=3, searchparam=16, overlap=2, overlapv=2, truemotion=true, lambda=500, dct=5)
  9. forward_3 = MRecalculate(Super, forward_2, blksize=8, blksizev=8, search=3, searchparam=16, overlap=2, overlapv=2, truemotion=true, lambda=500, dct=5)
  10. backward_4 = MRecalculate(Super, backward_3, blksize=8, blksizev=4, search=3, searchparam=16, overlap=2, overlapv=0, truemotion=true, lambda=250, dct=5)
  11. forward_4 = MRecalculate(Super, forward_3, blksize=8, blksizev=4, search=3, searchparam=16, overlap=2, overlapv=0, truemotion=true, lambda=250, dct=5)
  12. backward_5 = MRecalculate(Super, backward_4, blksize=4, blksizev=4, search=3, searchparam=16, overlap=0, overlapv=0, truemotion=true, lambda=125, dct=5)
  13. forward_5 = MRecalculate(Super, forward_4, blksize=4, blksizev=4, search=3, searchparam=16, overlap=0, overlapv=0, truemotion=true, lambda=125, dct=5)
  14. svp_flow_lib = "C:\Program Files (x86)\AviSynth 2.5\plugins\libflowgpu.dll"
  15. Finest = MFinest(SuperRegular)
  16. MSmoothFps(SuperRegular, backward_5, forward_5, finest=Finest, num=480, den=1, algo=13, ml=100, sadml=255, sadgamma=2, block=false, blend=true)
  17. BlendFPS(120)


[ 此帖被fullhd8在2011-09-21 04:00重新编辑 ]
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 33楼 发表于: 2011-09-20
回 32楼(fullhd8) 的帖子
你压个120fps的片子,解码也是问题啊。
而且这么多滤镜如果做成一个滤镜,效率可以高多少倍。

电视机上的DSP能有多强的能力?就算效率比通用CPU高一点,频率上的差距太大了。如果说电视机可以实时处理,民用CPU却做不到,只能说明CPU上用的算法效率实在太差了。

P.S. 我不是看不起压制前处理,我只是看不惯软件算法垃圾缺抱怨CPU不够快的人。
级别: 新手上路
注册时间:
2011-09-20
在线时间:
1小时
发帖:
4
只看该作者 34楼 发表于: 2011-09-21
引用
引用第33楼roozhou于2011-09-20 19:37发表的 回 32楼(fullhd8) 的帖子 :
你压个120fps的片子,解码也是问题啊。
而且这么多滤镜如果做成一个滤镜,效率可以高多少倍。

电视机上的DSP能有多强的能力?就算效率比通用CPU高一点,频率上的差距太大了。如果说电视机可以实时处理,民用CPU却做不到,只能说明CPU上用的算法效率实在太差了。

P.S. 我不是看不起压制前处理,我只是看不惯软件算法垃圾缺抱怨CPU不够快的人。

MVTools 2配合SVP研制的OpenCL加速本身效率就很高啊,秒掉LG还有其他杂鱼,据闻MEMC做得比较好的只有老Sam及老Pan。

不过要是你以为上面很多滤镜的话就错了,上面只比实时播放设定挂多了两个滤镜喔,虽然算是EP设定其实效率还不差呢。
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 35楼 发表于: 2011-09-21
MVTools的主要问题是,滤镜之间不能直接访问数据,只能通过avs提供的帧缓冲来交换数据。如果做成一个滤镜的话就可以消除这个弊端,效率肯定能高很多。OpenCL的确是不错,不过如果能完全在显卡上做,不要频繁的与主存交换数据就好了。

P.S.我个人不喜欢MC插出来的帧,还是喜欢类似电影的motion blur效果。
级别: 新手上路
注册时间:
2011-09-20
在线时间:
1小时
发帖:
4
只看该作者 36楼 发表于: 2011-09-23
引用
引用第35楼roozhou于2011-09-21 20:43发表的  :
MVTools的主要问题是,滤镜之间不能直接访问数据,只能通过avs提供的帧缓冲来交换数据。如果做成一个滤镜的话就可以消除这个弊端,效率肯定能高很多。OpenCL的确是不错,不过如果能完全在显卡上做,不要频繁的与主存交换数据就好了。

P.S.我个人不喜欢MC插出来的帧,还是喜欢类似电影的motion blur效果。


MVTools也可以产生motion blur,不过片源最好是60fps或以上。
  1. super = MSuper()
  2. backward_vectors = MAnalyse(super, isb = true)
  3. forward_vectors = MAnalyse(super, isb = false)
  4. MFlowBlur(super, backward_vectors, forward_vectors, blur=100)

级别: 骑士
注册时间:
2008-10-06
在线时间:
115小时
发帖:
319
只看该作者 37楼 发表于: 2011-09-23
mvtools是提供一整套工具給需要的人自己在avs裡方便地組合使用,真想要效率的話肯定還是把要做的事情扔到一起組合成單獨的工具來減少數據間訪問的開銷。

Follow me: @06_taro

MediaFire links to:
Taro's tools (avs plugins & other useful tools' builds)
Taro's x264 builds (Latest build: x264 core:129 r2245+704_tMod (&tMod+10bit/MixAQ/OreAQ), Win & MacOS, built on 10 Jan 2012, gcc: 4.7.2)

nmm牆內鏡像(部分工具)
级别: 新手上路
注册时间:
2007-05-07
在线时间:
1小时
发帖:
447
只看该作者 38楼 发表于: 2011-10-11
PANASONIC的MEMC……刚买回来的时候感觉不错,反正默认参数的avsp算出来的画面实在太猎奇,而电视的处理确实还是比那个强多了

后来发现这东西还是没法忍,开到高以后字幕/场景切换/被前景遮住的panning什么的都没法看,改成中以后,问题没有那么明显,但是在一些复杂画面上还是会出问题,而且突然切换场景以后从流畅到不流畅的对比很令人不适

后来我发现这电视最大的问题就是24hz输入会直接2倍频到48hz显示,实写还好说,动画实在是抖得非常的厉害。开启MEMC可以解决这个问题,但是首先开到高那artifact我是没法忍的。开到中的话,暂且不论有时候还是会出问题和效果不是那么的自然,我发现它避免出现artifact的算法很简单,只要监测到某个区域内的运动不是比较规则的就不对那个区域进行处理,所以有时候该抖的还是抖,。

没见过24hz输入三倍/四倍频成72hz/96hz显示的效果,很多文章都说这样处理能根治24hz的抖动感,但是从原理上来讲我没想通

级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 39楼 发表于: 2011-10-12
什么是抖动感,难道是卡?
级别: 风云使者
注册时间:
2009-03-17
在线时间:
552小时
发帖:
1255
只看该作者 40楼 发表于: 2011-10-12
24P模式的优势应该是片尾垂直滚动staff字幕最能体现,48Hz[以及其倍数,没见过24Hz的]消除的是60Hz回放的“跳动感”,24P是让电视回放获得电影院的效果。
引用

60Hz   1  1  2  2  2  3  3  4  4  4

Film      1       2         3         4

24p    1   1   2   2   3   3   4    4

大概比划一下,说白了24P是颤抖,60Hz是跳动

片源本身过渡不自然播放就是卡,要不卡[平滑]就要插入预测帧[比如骚尼的Motionflow],简单有效的方法,离电视远一点看。


[ 此帖被ljwing在2011-10-12 11:16重新编辑 ]
级别: 新手上路
注册时间:
2011-09-20
在线时间:
1小时
发帖:
4
只看该作者 41楼 发表于: 2011-10-12
引用
引用第38楼a4840639于2011-10-11 22:29发表的  :
PANASONIC的MEMC……刚买回来的时候感觉不错,反正默认参数的avsp算出来的画面实在太猎奇,而电视的处理确实还是比那个强多了

后来发现这东西还是没法忍,开到高以后字幕/场景切换/被前景遮住的panning什么的都没法看,改成中以后,问题没有那么明显,但是在一些复杂画面上还是会出问题,而且突然切换场景以后从流畅到不流畅的对比很令人不适

后来我发现这电视最大的问题就是24hz输入会直接2倍频到48hz显示,实写还好说,动画实在是抖得非常的厉害。开启MEMC可以解决这个问题,但是首先开到高那artifact我是没法忍的。开到中的话,暂且不论有时候还是会出问题和效果不是那么的自然,我发现它避免出现artifact的算法很简单,只要监测到某个区域内的运动不是比较规则的就不对那个区域进行处理,所以有时候该抖的还是抖,。

没见过24hz输入三倍/四倍频成72hz/96hz显示的效果,很多文章都说这样处理能根治24hz的抖动感,但是从原理上来讲我没想通




AVSP不就是一个脚本编写工具,有啥“默认参数”?

引用
引用第39楼roozhou于2011-10-12 00:38发表的  :
什么是抖动感,难道是卡?


抖动感的正解是使用胶片机拍摄时进片速度太快,或是刻意使用手持摄影机所制造出来的晃动,但很多人误以为是卡。基本上这种晃动可使用全局运动补偿轻易消除。
级别: 新手上路
注册时间:
2007-05-07
在线时间:
1小时
发帖:
447
只看该作者 42楼 发表于: 2011-10-14
好吧搞错了说的是是SVP……

我这电视上24p大动态的画面用相机拍也是两个重影,但是我没有能调快门时间的相机,不知道快门调低了拍出来是什么效果
用FaceTime摄像头拍的 http://115.com/file/bhfccw72
其实画面一直在左右颤抖,但是在30FPS摄像头上就像两重影
不知道用PS EYE 60FPS模式拍出来是什么效果
级别: 精灵王
注册时间:
2008-04-08
在线时间:
44小时
发帖:
2855
只看该作者 43楼 发表于: 2011-10-14
相机拍出来重影是因为LCD悲剧的响应时间
级别: 新手上路
注册时间:
2007-05-07
在线时间:
1小时
发帖:
447
只看该作者 44楼 发表于: 2011-10-15
引用
引用第43楼roozhou于2011-10-14 23:43发表的  :
相机拍出来重影是因为LCD悲剧的响应时间

这是PDP不是LCD,如果是原生60FPS的话动的再快也没有重影
快速回复

限150 字节
上一个 下一个