CoreCodec的CoreAVC
高清H.264视频解码器是基于已经被用于
AVCHD、
蓝光光盘和
HD-DVD中的
MPEG-4 Part 10标准构建的。H.264是下一代的
视频编码标准,而CoreAVC™是公认世界上最快的H.264软解码器。
官方介绍
The CoreCodec CoreAVC High Definition
H.264 video codec is based on the
MPEG-4 Part 10 standard and is the video codec used in AVCHD,
Blu-Ray and in HD-DVD. H.264 is the next-generation standard for video, and CoreAVC™ is being recognized as being the world's fastest H.264 software video decoder.
The efficiency of CoreAVC in 'software' is often compared to be faster than other solutions that try to rely on 'hardware' to increase playback performance of
H.264 video.
CoreAVC的“软”解码比其他尝试依赖“硬”解码来提供更好的H.264视频回放性能的解决方案效率更高。
最低需求
800 MHz Intel Pentium class or faster processor At least 256MB of RAM Windows 98, 2000 or XP
800MHz的 Intel 奔腾级及以上处理器,Windows 98/2000/XP
操作系统且至少256内存。
优化设置详解
1.Input formats
这个选项决定了CoreAVC能解码哪些类型的H264视频文件(依据的是视频文件的
FourCC)。如果你的H264视频不能用CoreAVC正确解码或你想用其他的解码器来解码,就把相应的类型勾掉。
(什么是FourCC?就是Four characters code的缩写即四字节标示,播放器根据FourCC来判断视频类型,并调用相应的解码器进行解码,比如
xvid的
fourcc就是xvid,h264的fourcc有h264、
x264、avc1等等)
建议:全部勾选。
2.Output formats
这个选项决定了CoreAVC优先输出哪种
色彩空间。CoreAVC按指定的顺序依次尝试色彩空间直到被视频渲染器所接受。
建议:将YV12设为第一项,YUY2设为第二项。(右边
箭头可以调整顺序)
Levels H264允许按两种不同的Luminance range进行编码。默认使用的是TV levels,该levels将黑色设定为16,而将白色设定为235,并允许blacker-than-black和whiter-than-white levels。另一种选择是full-range luminance,也叫做PC levels,将黑色设定为0,白色设定为255。H264视频默认使用TV levels,但也可以在视频流里指定full-range标记,表明它是PC levels的。只当你碰到了不正确编码的
视频流或视频渲染器发生错误时,你才有必要变更选项。
3.Input levels
TV(16-235)——总是假定视频流采用的是TV levels
PC(0-255)——总是假定视频流采用的是PC levels
Autodetect——使用视频流里的full-range标记来决定采用何种Luminance range。
建议:选择autodetect。如果播放的时候色彩不正常就手工指定,至于具体选哪个,看视频源了,不知道的话就都试试,反正就两个选项而已
4.Input Colorspace (专业术语我也不太了解)
BT.601 - use BT.601 colorspace coefficients when converting to RGB.
BT.709 - use BT.709 colorspace coefficients when converting to RGB.
Auto detect - use the colormatrix flag in the stream to determine the colorspace coefficients.
建议:选择Auto detect
5.Output levels
当CoreAVC转换
色彩空间的时候,将会受到这个选项的影响
TV(16-235)——假定视频渲染器期望的是TV levels
PC(0-255)——假定视频渲染器期望的是PC levels
Autodetect——当使用vmr作为视频渲染器的时候,就使用pc levels,否则使用TV levels
建议:看你用什么作为显示设备,如果是显示器,就选pc;如果是平板电视或
投影仪,就选TV。
6.Deblocking
这个选项决定了CoreAVC如何处理H264规范中的deblocking。Deblocking会消耗很多的cpu资源,如果你的机器不够快的话,你可以关掉某些
帧的Deblocking,但这样可能会降低
视频质量。
Standard ——按照H264规范进行精确的deblocking
Skip B-frame ——当解码
B帧的时候,忽略deblocking
Skip all ——完全忽略deblocking
只有在编码的时候开启Deblocking,解码的时候才能进行Deblocking。也就是说,如果视频源本身在编码的时候没有Deblocking,即便你在解码器中设置开启Deblocking,解码器也会视而不见。如果你的机器能够流畅播放视频,建议你选Standard Deblocking,把是否进行Deblocking交由CoreAVC自己判断。如果你的机器不能流畅播放视频,就依次选第二个或第三个试试,说不定就能流畅了,但相应的,播放质量可能会有所下降。资源占用率从上往下依次降低,画质也是依次降低。
建议:CPU性能已经够好,就选standard吧,除非你是古董机……
7.Deinterlacing
这个选项决定了CoreAVC如何处理隔行视频
None(Weave)——只是把两个连续的场拼成一帧,这对于运动图像(制作源为胶片电影的除外)就会产生了拉丝和梳齿问题。如果你的视频是逐行的,就选这个吧。
single field——对一帧图像中的两场做叠加、求均值等运算,以消除梳齿。这种方法对于静止
图像帧比较有效,运动图像blend后会有残影。
Bob——用单个场的上下行求均值来填充成为帧,适用于运动图像。一般情况下,如果你的视频是隔行的,比如
1080i,就选这项。
Hardware——交由
显卡进行
反交错处理,近一两代ati或nvidia的显卡都有比较好的反交错算法,如果你的显卡支持,就选这一项吧。
建议:新显卡选用Hardware
8. Deinterlacing(Aggressive)
这个选项决定了CoreAVC采用何种方法来检测隔行视频
不勾选——只使用picture timing SEI和POC numbers来检测隔行视频。不过并不是每个编码器都会按这种方法正确的标示隔行视频。
勾选——除了上述两种方法外,如果CoreAVC检测到视频流里应用了某些隔行
编码工具(比如
MBAFF,PAFF)的话,也会将这段视频作为隔行
视频处理。
建议:勾选
9. Acceleration
新版coreavc支持A卡
硬解。 CUDA用于N卡,
DXVA用于A卡 不使用选择None。
Crop 1088 to 1080
H264的视频尺寸总是16的倍数,因此就会在视频的底部补上8个像素,将1080凑成1088。h264规范提供了一系列的裁剪参数,将多余的8个像素标记为不显示。但有些H264编码器在编码1080视频的时候不能正确指定这个参数。
不勾选——不裁剪视频
勾选——当输入的视频是1088像素的时候,就将底部的8个像素裁剪掉
建议:勾选
Preferred Decoder
勾选后可以使CoreAVC有更高的优先级来处理
H.264编码的视频
建议:勾选
Force VMR AR correction
不勾选——不改变VMR设置
勾选——使用VMR
滤镜来保持视频宽高比,一般情况下,宽高比的校正是由播放器来负责的。这个选项通常是不勾选的。
建议:常用的播放器如mpc或kmp都有保持视频宽高比的选项,所以这项通常是不勾选的。
Use Tray Icon
这个勾选后系统使用CoreAVC时会在
系统盘显示一个他的图标。
建议:不勾选
Prefer CUDA acceleration
这个是CoreAVC的新功能(貌似是从1.9版本开始添加的)。 使CoreAVC在解码视频时启用
NVIDIA显卡的
CUDA加速功能。如果你的显卡支持CUDA加速,那个勾就会变为可选。我的是A卡不支持这玩意,所以显示灰色,无法设置。
建议:强烈建议开启CUDA加速——只要你的显卡支持。
注:Prefer CUDA acceleration这个选项在最新的CoreAVC 2.5.5已经取消了,貌似和acceleration功能重合,所以取消了。
更新日志
Version 3.0.0.0 (20110906)
- ADD: 9 bit support
- ADD: 10 bit support
- ADD: DXVA fallback to software
- ADD: Intel Media SDK Support (DXVA2)
- ADD: Intel GMA Support (DXVA2)
- ADD: 10 bit output format (P010)
- ADD: 16 bit output format (P016)
- ADD: Directshow dithering when filter output is downsampled
- ADD: Improved DXVA handling for interlaced streams
- ADD: Colorspace conversion from 10 bit formats to 8 bit formats
- ADD: DXVA 2 Long slice support
- ADD: Initial 4:4:4 integration (No decode support yet)
- ADD: New assembly engine
- ADD: New assembly IDCT
- ADD: New assembly motion compensation
- ADD: New assembly inter-prediction
- ADD: New assembly weighted prediction
- ADD: New assembly 9-bit
- ADD: New assembly 10-bit
- ADD: Improved assembly 8 bit performance
- CHG: Use container AR when there is no stream AR
- FIX: Improved Frame order handling
- FIX: Hardware deinterlacing field order
- CHG: DXVA increase max buffers
- CHG: Sanitize sample stop times for buggy splitters, for hardware deinterlacing compatibility
- FIX: Better recovery point handling, reduces artifacts for poorly cut streams
- SDK: Updated xcode support for iOS and OS X
- SDK: Improved APIs
- SDK: Fix: Missing APIs
- SDK: Initial support for MVC (
CoreMVC) integration
Version 2.5.5.0 (20110421)
- FIX: Clean reference lists when seeking to a SEI recovery point
- FIX: matrix ordering for buggy ATI DXVA implementation
- FIX: non-transposed matrices for NVIDIA DXVA mode
- FIX: validate GPU type, driver version and stream parameters before using DXVA
Version 2.5.1.0 (20110328)
- FIX: IMediaSeeking interface missing from output pin
Version 2.5.0.0 (20110326)
- ADD: DXVA1 support (with red tray icon)
- ADD: DXVA2 support
- ADD: new x64 blit asm code (unified with x86)
- FIX: SPS memory leaks
- FIX: Properly support SPS resolution changes (soft/cuda decoding)
- FIX: Bug in YUV->YUV blit code
- CHG: Unify x86 and x64 CUDA asm code
- CHG: Unify x86 and x64 AVC asm code, enabling SSE2/
SSE3/
SSSE3/SSE4 for x64
- CHG: Increase max supported resolution (approx 8100x8100)
- CHG: Refactor directshow frontend code
- CHG: Modify CUDA locking method
- CHG: Rearrange/enlarge settings dialog
- OEM: YASM padding bug for OSX target
Version 2.0.0.0 (20091218)
- 添加: Initial support for Windows 7 开始支持 Windows 7
- 添加: Support for Windows Media Center (in .MKV) 支持 Windows Media Center (.MKV格式)
- 添加: Custom
fourcc to match the Haali splitter 使用自定义 fourcc 来匹配 Haali splitter
- 添加: Support for Non-Compliant Motion Vectors (MV) 支持非线性动作向量
- 添加: mmx optimizations mmx 优化
- 添加: mmx2 optimizations mmx2 优化
- 添加: sse optimizations sse 优化
- 添加: sse2 optimizations sse2 优化
- 添加: sse3 optimizations sse3 优化
- 添加: ssse3 optimizations (almost 70) ssse3 优化
- 添加: sse4 optimizations sse4 优化
- 添加: faster handling of pure-DC chroma blocks 更好的纯DC色彩块控制
- 添加: new x86 cpu caps
- 添加: Multi-dupe weightp (+Future x264 changes)
- 添加: 64bit support 64bit支持
- 修正: Fix potential failure in CABAC MVD decoding. 修正在 CABAC MVD 解码中潜在的错误
- 修正: Proper alignment intrinsics for MSVC and GCC.
- 修正: AVC SEI+userdata fix
- 修正: Focus bug in Windows Media Center that disabled CUDA 当禁用
CUDA时 Windows Media Center 中的焦点错误
- 修正: Better frame re-ordering on difficult streams 更好的默认流帧重排序
- 改进: Supports 16 CPU Cores (was 4 cores max) 支持最大16
CPU核心- 改进: Support for QuadHD resolutions(4096×4096) 支持 QuadHD 的分辨率
- 改进: New dc_add
- 改进: Faster CAVLC 更快的 CAVLC
- 改进: Faster CABAC 更快的 CABAC
- 改进: Faster Deblocking (Massive deblocking overhaul) 更快的去块速度
- 改进: SSSE3: Faster Motion Compensation (20% faster on Core 2 Conroe and more for Penryn) 更快的动作补偿
- 改进: New CoreNumber for 2.0
- 改进: Initial support for CoreAccount. Linking purchase+account
- 改进: Integrated the Haali splitter into the installer 安装包集成 Haali splitter
- 改进: New installer supports both 32/64 bit Operating Systems 新的安装包同时支持 32位和64位系统
- 改进: Filter compiled against ICC (2% speed increase for modern Intel Processors)
- 改进: Updated IDCT to support ARM NEON Cortex A8 Support
- 改进: Updated Blitter YUV/RGB for ARM NEON Cortex A8 Support
- 设备: Initial ARM NEON Cortex A8 Support (iPhone, Touch, Linux, Windows Mobile)
- 设备: SDK NVIDIA CUDA 2.3 support 支持 NVIDIA CUDA SDK 2.3版
- 设备: Removed the windows direct3d requirement for CUDA (it can now be native) 去除
CUDA的
direct3d需求
- 设备: Updated GStreamer
plug-in 更新 GStreamer
插件Version 1.9.5.0 (20090316)
- 添加: NVIDIA CUDA 加速解码支持交错数据流 (MBAFF 与 PAFF)
- 修正: Canon HF100的数据流索引错误
- 修正: CUDA运算使用更快的CPU<->GPU 内存同步传送
Version 1.9.0.0 (20090210)
- 添加: NVIDIA CUDA 加速视频解码(感谢 NVIDIA 技术支持)
- 添加: 安装包添加检测 NVIDIA CUDA 功能
- 添加: 托盘图标可以显示 NVIDIA CUDA 工作状态 (绿色=使用中, 蓝色=未使用)
- 添加: 托盘图标鼠标经过时显示是32还是64位
- 添加: 进一步改进32和64bit下的安装体验
- 添加: 更新 Haali Media Splitter
- 修正: 与 MCE 相关的焦点问题
- 修正: 当设置为不显示托盘图标时不获取焦点
- 修正: 其他细节修正