MPC-HC + LAV Filters + xy-VSFilter + madVR

Go down

MPC-HC + LAV Filters + xy-VSFilter + madVR   Empty MPC-HC + LAV Filters + xy-VSFilter + madVR

올리기  Admin 2012-07-21, 2:37 pm


Guide: MPC-HC + LAV Filters + xy-VSFilter + madVR

Windows 7 64-bit

- Part 1: Download the following items:

LAV Filters

- Part 2: Installation

1. Uninstall what you currently have. This might be your CCCP, K-Lite, and so on.

2. Install the MPC-HC you downloaded in Part 1.

3. Install the LAV Filters you downloaded in Part 1. While installing this, take note of whether you are installing it for Windows 64-bit or 32-bit. Leave the default settings otherwise. For 64-bit:

4. Create a new folder named “madVR” and move it to the root of your MPC-HC directory. The default location is “C:\Program Files (x86)\Media Player Classic ? Home Cinema”.

5. Extract the contents of the you downloaded in Part 1 into the madVR folder you created in step 4.

6. Execute the “install.bat” file located in the madVR directory.

7. Extract the VSFilter.7z file you downloaded in Part 1, and you’ll get a “VSFilter.dll” file. For 64-bit, open to “C:\Windows\SysWOW64″ and move the “VSFilter.dll” into the root of this directory.

8. Now, open your command prompt as admin and paste this: C:\Windows\system32\regsvr32.exe “C:\Windows\SysWOW64\VSFilter.dll” and hit enter. For some people, it doesn’t work when you paste it. In that case, try typing it out. yojig, who commented below, noted that you can also remove the quotation marks and it might work. It’ll look something like this:

After you get your “success” message, that’s it for the installation process! Congratulations! You’re almost done!

- Part 3: Configuration

1. Open up “Media Player Classic” and hit “O” to open up the options. Alternatively, you can do View>Options…

2. Go to “Formats” located under “Player” and hit “Modify”, which is inside an “Association” box. After a prompt from “User Account Control”, an identical window will pop up. In this new window, hit the “Video” button, which is within the “Association” box and is where the “Modify” button used to be. After hitting “Video”, click “apply” and “okay” to return to the main options window.

3. Next, click “Playback”, uncheck “Auto-load subtitles”, and hit “apply”

4. Now, go to “Output” under “Playback” and make sure you have “madVR” filled in. Then, hit “apply”

5. Next, go to Internal Filters and uncheck everything and hit apply. Yes, everything

6. Drop down to “External Filters” and click “Add Filter” in the top right. Now, you want to add “Lav Splitter”, “Lav Video Decoder”, “Lav Audio Decoder”, and “Direct Vob Sub”. For each of the filters you add, fill in the “Prefer” bubble on the right and click “apply”

7. Double click “LAV Video Decoder” and a new window will open. Check everything under “Output Formats” in the “Video Settings” tab. Make sure you don’t have “VC-1″ checked under “Codecs for HW Decoding checked”. Now, “VC-1″ wasn’t even an option for me to check, but I was explicitly told not to check “VC-1″. Hit “apply” and okay” when you finish

8. Now that you have that done, it’s time to move on to configuring the madVR settings. Open up a video and pause it. Now in the menu bar go to Play>Filters>madVR Renderer. You’ll get a small pop-up. Click “Edit Settings”. Alternatively, you can right click the madVR icon in your status bar and click “Edit madVR Settings…”.
9. Go to “decoding” under “processing” and uncheck all three options. Hit “apply”. Feel free to leave everything checked in “deinterlacing”.

10. Everyone has their own opinions on the best setup for scaling algorithms, but here’s mine: Set “chroma upscaling” to “Bicubic” with “sharpness: 75″. Then, set both “luma upscaling” and “luma downscaling” to “Spline” at “4 taps”. Visually

11. Drop down under “rendering” and visit the “general settings”. Check everything except “use managed upload textures (XP only)”, “enable automatic fullscreen exclusive mode”, and “adjust queue sizes to GPU RAM size”. Then, max out the sliders and hit “apply”. Note that the CPU queue sizes maxed out are only good for people with more high end computers. So if your computer isn’t as good, try playing around with the placement of the sliders. Visually

12. Next, head into “exclusive mode settings” and check “present several frames in advance” and change the number of frames to “10″, then hit “apply”. Again, these settings are for more high end computers. Tone down the number of frames if your computer isn’t as good. Visually, you’ll want it looking like this:

13. Make sure you have nothing checked in the “trade quality for performance” tab. Other than that, you’re good to go!



Media Player Classic Home Cinema x86 Installer /
Haali Media Splitter /
LAV Filters Installer /
xy-VSFilter /
madVR /

1. Uninstall all codec packs, previous installations of the aforementioned, and the like.
2. Reboot.
3. Install MPC-HC with default options. Do not keep any previous settings.
4. Install Haali Media Splitter with all checkboxes unchecked.
5. Install LAV Filters without the x64 components. Uncheck the "Matroska/WebM" file format.
6. Extract the xy-VSFilter archive into a new "xy-VSFilter" directory in your "C:\Program Files (x86)" directory.
7. Right-click on "Command Prompt" in "Start" -> "All Programs" -> "Accessories" and select "Run as administrator".
8. Type 'regsvr32 "C:\Program Files (x86)\xy-VSFilter\VSFilter.dll"' without the single-quotes and hit Enter.
9. Extract "" into a new "madVR" directory in your "C:\Program Files (x86)" directory.
10. Right-click on the "madVR" directory, click on "Properties", go to the "Security" tab, click on "Edit", click on "Add...",
type your Windows user name, click on "OK", click on the left "Modify" checkbox, click on "OK", and then click on "OK".
11. Double-click on "install.bat" in the "madVR" directory you just populated.
12. Start MPC-HC, go to "View" -> "Options..." -> "Playback", and uncheck "Auto-load subtitles".
13. Go to "External Filters" -> "Add Filter...", select "DirectVobSub", click on "OK", and select "Prefer".
14. Go to "View" -> "Options..." -> "Playback" -> "Output" and select "madVR" under "DirectShow Video".
15. Go to "Internal Filters" and uncheck all checkboxes. Click on "OK".
16. Play a video file, go to "Play" -> "Filters", click on "madVR Renderer", and click on "Edit Settings".
17. Go to "processing" -> "decoding" and uncheck all checkboxes.
18. Go to "scaling algorithms" and select "Spline" (try both "3 taps" and "4 taps") in all three submenus.
19. Go to "rendering" -> "general settings" and check "disable desktop composition".
20. Color management using yCMS is always recommended, but it is only required if you use a wide gamut display.
This is done by selecting "calibrate this display by using yCMS" under "devices" -> [Display] -> "calibration" and
filling out at least the "primaries / gamut measurements" table on the "yCMS" tab.
If you do not have any suitable hardware, but you do have a proper ICC profile, you can acquire at least the XYZ values
for red, green, blue, and white point by using an application such as ICC Profile Inspector
- - and double-clicking on rXYZ, gXYZ, bXYZ, and wtpt, respectively.
Change the format from Yxy to XYZ and fill out as appropriate. Click on "save".
21. Apply all changes, restart MPC-HC, and start watching some 10-bit H.264.


foobar2000 /

1. Install.
2. Add components as you see fit. The ones you need are almost always available on the official site
(Monkey's Audio for .ape, TAK decoder for .tak, etc). has the TTA decoder component.
3. Search Hydrogenaudio / for additional components.


MadVR에 대해서

우리가 동영상을 보는 원리를 생각해 봅시다. 동영상은 소리와 화면 그리고 기타 정보들이 꾹꾹 압축되어 있는 덩어리라고 볼 수 있죠. 냉동식품이라고 보면 적당한 예겠죠.

이걸 스플리터가 소리, 화면으로 분리하고 혹시 자막이나 챕터가 끼어있다면 그것도 분류해 냅니다. 그리고 데이터를 디코더로 보냅니다.

디코더는 두 종류를 쓰게 되죠. 오디오, 비디오 디코더. 각각 분리된 재료를 받아서 해동합니다. 압축을 풀고 렌더러로 넘깁니다.

렌더러도 오디오 비디오가 따로 있습니다. 각각 해동된 재료를 요리해서 사람이 먹을 수 있게 만듭니다. 즉 우리가 보는 동영상의 화면과 소리를 재생합니다.

스플리터 - 디코더 - 렌더러

Madshi Renderer(MadVR)는 독일의 Mathias Rauen이란 사람이 만든 비디오 렌더러입니다. 32비트 동영상 플레이어만 지원합니다.

다운 주소

주요 장점은 다음과 같습니다.

- high quality chroma upsampling
- high quality scaling (bicubic, mitchell, lanczos, spline etc)
- high quality YCbCr -> RGB conversion
- gamut & gamma correction for display calibration
- full 16bit processing queue
- final 16bit processing result is dithered down to RGB output bitdepth
- bypasses graphics card's video (damage) algorithms
- all work is done via GPU shaders
- no shortcuts, highest quality has priority over anything else

이중 MadVR의 모토라고 할 수 있는 건, no shortcuts, highest quality has priority over anything else(꽁수 없이, 그 무엇보다도 최고의 품질을 우선한다)

무슨 말이냐면 요즘은 성능이 좋아서 동영상 보는데 문제가 없지만. 예전 486~펜티엄 시대때만 해도 동영상을 돌리는 것은 굉장한 컴퓨팅 파워를 소모하는 작업이었고 shortcut, 즉 꽁수를 사용해서 화면 품질을 거슬리지 않을 정도로 약간 낮추고 대신 속도를 얻는 방법이 많이 고안되었습니다. 그 시대의 유산이 지금도 발전/보강되어 내려오고 있고, 포터블용 저성능 기기에서는 매우 유용합니다. 그런데 굳이 성능이 철철 남는 컴퓨터에서도 이런 방법을 쓸 필요는 없는데도 위 방법들은 공통으로 적용되고 있습니다. 그래서 MadVR은 bypasses graphics card's video (damage) algorithms 즉, NVIDIA나 ATI같은 비디오 카드 회사에서 제공하는 화질과 성능 두 마리 토끼를 잡으려는 모든 노력들을 싹 정지시키고 처리합니다.

처리를 어떻게 하냐면...

- full 16bit processing queue
- final 16bit processing result is dithered down to RGB output bitdepth
- all work is done via GPU shaders

MadVR은 디코더에서 YUV 4:2:02으로 뽑아준 입력만을 '제대로' 처리할 수 있는데요. 받아서 16비트로 Chroma Upsampling한 다음 YUV->RGB 변환해서 원본 동영상 규격에 따라 8~10비트로 디더링해서 출력합니다. 10비트 동영상 출력이 가능한 렌더러는 제가 알기로 이것 뿐입니다. 그리고 모든 작업은 그래픽카드의 쉐이더를 사용합니다.

그리고 참고할만한 두가지 고급 설정이 있는데 캘리를 했거나 디스플레이가 설정을 지원하는 분은 해보시기 바랍니다.
calibration<모니터/TV의 정보를 읽어들이고 캘리된 상태를 지정해서 그에 맞춰서 출력하는 기능도 있고>
display modes<프레임 손실을 막기 위해 디스플레이 리프레쉬율을 동영상에 맞출수도 있습니다>

즉, MadVR은 컴퓨터 성능에 여유가 있는 사람이 쓰는 화질 제일주의 렌더러입니다. 뭐 그렇다고 아주 고사양이 필요한 것은 아닙니다. 연산장치로 GPU(DirectX 9.0 이상)를 사용하니까 너무 후진 그래픽카드를 쓰면 곤란합니다만. 5~10만원대 GPU로도 충분합니다. 메인보드 내장급은..요즘꺼는 안써봐서 모르겠네요.

그래픽카드의 화질 보정기능을 싹 정지시킨 대신 MadVR은 자체적으로 보정 필터를 제공합니다.

chroma upscaling은 채도를 업스케일링 할 때5 적용할 보간 필터를 고르는 화면입니다. luma upscaling은 원본보다 디스플레이 해상도가 높을 때6 화면을 잡아늘리게 되는데 이 때 적용됩니다. luma downscaling은 반대로 원본보다 디스플레이의 해상도가 낮을 때7 적용됩니다.

각 필터마다 장/단점이 있습니다. 녹색은 장점을 뜻합니다. sharpness는 화면이 선명해지게 되고 hide source artifacts는 잡티를 제거해 줍니다. 붉은색은 단점을 뜻합니다. aliasing은 깍두기 현상, ringing은 외곽선이 생기는 현상입니다. 막대기가 클수록 장/단점 효과가 커짐을 의미하고, 장점이 커질수록 단점도 커집니다.

제작자는 chroma upscaling에 SoftCubic 100을 추천하고 나머지는 알아서 사용하라고 말하고 있습니다. 밑 사진에 < >를 누르면 각 필터별 차이점이 나오는데 도움이 될런지 모르겠군요. 부드러움이냐 날카로움이냐의 취향이니 이것저것 바꿔보면서 맘에 드는걸 고르면 되겠습니다.

그런데 중요한건 역시 실제 내가 볼때 향상이 있느냐? 하는 거겠죠. 결론만 말하면 있긴 있습니다.

<렌더러 순서대로 VMR9, ffdshow, Haali, MadVR 자세히 보면 미세한 패턴 차이가 있고 MadVR이 가장 화면이 고르게 되어 있습니다>

위에 강조하듯이 이 렌더러는 업샘플링으로 변환 손실 최소화 및 10비트 지원이 특기라고 할 수 있는데, 해상도가 낮은 옛날 영상을 큰 화면으로 확대해서 볼 때 가장 좋은 효과를 볼 수 있습니다. 반대로 요즘 대세인 블루레이급 1080해상도 영상에서는 원판이 워낙 좋기 때문에 DXVA로 돌려도 차이를 못느끼겠더군요. 어찌보면 당연한 것입니다만. 아 물론 10비트 동영상의 경우는 선택의 여지가 없이 MadVR입니다.

역으로 MadVR이 제대로 돌아가는지 확인하려면 그래픽카드 비디오 설정 화면에서 이것저것 바꿔도 변화가 없어야 한다는 소리입니다.
디코더의 출력 포맷을 일반 동영상은 4:2:0인 NV12나 YV12, 10비트 동영상의 경우는 P010으로 맞춰줘야 합니다.
엔비디아 그래픽카드에서 지원되는 CUDA나 인텔 샌디브릿지 CPU에서 지원하는 QuickSync와 같이쓰면 좋습니다.
24프레임 동영상은 모니터를 24의 배수, 즉 24/48/72로 맞춰주면 프레임 손실을 최소화 할 수 있다는 소리죠
4:2:0의 특성상 luma는 100% 보존하지만 chroma는 화면 크기보다 작으므로(이 손실을 통해 용량을 절약하기 때문에) 언제나 업스케일링입니다.
예를 들면 720 동영상을 1080 화면에서 보는 경우
예를 들면 1080영상을 1360x768 티비 화면에서 보는 경우
참고로 팟플레이어 EVR 렌더러 기본 보간법은 bilinear이고, EVR CP에서는 bicubic을 쓸 수 있습니다.


LAV 필터 설명

LAV 필터 libavformat과 libavcodec 라이브러리를 기반으로 DirectShow를 필터의 집합입니다.
ffmpeg 프로젝트에서,이 과정은 DirectShow를 플레이어에서 거의 모든 포맷을 재생할 수 있습니다.
LAVFSplitter은 demux 미디어 파일을 모든 종류의 libavformat을 (ffmpeg에서 demuxing 라이브러리)을 사용 멀티 포맷 미디어 스플리터입니다.

LAV는 주요 기능
필터 :컨테이너 :MKV / WebM, AVI MP4/MOV, MPEG-TS/PS (기본 에보 지원을 포함), FLV, OGG, 그리고 ffmpeg.
비디오 코덱 :H264, VC-1, MPEG-2, MPEG4-ASP (DivX를 / Xvid), VP8, MJPEG.
오디오 코덱 :AAC, AC3, DTS (-HD), TrueHD, MP3/MP2, 보비스, LPCM 등.
자막 :VOB, DVB 잠수정, PGS, SRT, 특수 요원 / 엉덩이, 텍스트
BluRay 지원 :BluRay 재생 목록 (. MPLS)뿐만 아니라 주요 동영상 재생 목록을 감지하려고합니다 index.bdmv 파일을 열기위한 지원. BluRay 지원은 아직까지 초기 단계에 있으며, 여전히 많은 개선 및 새로운 기능 계획이 있습니다.

(코덱) nVidia CUDA 가속이 되는 LAV CUVID Decoder 설치/사용기

DirectShow Media Splitter / Decoders인 LAV Filters - 만능 스플리터를 목표로 하고 있는 것으로 보임. - 를 개발하고 계신 nevcairiel이란 분께서 또다른 Decoder를 내놓았습니다.

바로 LAV CUVID Decoder (nVidia CUDA Video Decoding API ("CUVID"))입니다.

제작자가 소개하고 있는 이 코덱을 살펴보면

H264, VC-1, MPEG2, MPEG4-ASP(DivX, XviD) 영상물을 디코딩할 수 있고 그외 이것저것 훌륭한 지원을 하고 있다고 합니다.

그런데 가장 중요한 것은 이 코덱이 nVidia 비디오 카드에서 CUDA가속을 지원한다고 하는 사실입니다. 우리가 일반적으로 영상물을 가속할 때 DirectX의 DXVA를 이용하지만 nVidia 카드 사용자는 덤으로 CUDA가속을 할 수 있다는 점은 모두 아시리라 믿습니다.

지금까지 CUDA가속을 활용하는 대표적인 코덱으로는 CoreAVC가 있죠.

CoreAVC는 H264/AVC에 대하여만 CUDA가속을 지원하고 있습니다만 이 LAV CUVID Decoder는 위에서 열거한 H264/AVC, WVC1, MPEG2, MPEG4(DivX, XviD) 모두에 대하여 CUDA 가속을 가능하게 하고 있습니다.

특히 VC-1(WVC1) 영상물은 재생 자체도 까다롭고 가속은 더욱 어려웠는데 이를 원활하게 지원하고 있다하니 반가운 일이라 하겠습니다.

[주의] : AMD 그래픽 카드에서는 LAV CUVID Decoder 로 CUDA 가속을 할 수 없습니다.

[주의] : 아래의 테스트는 nVidia의 PureVideo HD VP4 엔진을 사용하는 GT430 칩셋으로 하였습니다. VP3 이하에서는 어떻게 동작할 런지 알 수 없습니다.


우선 다운을 받습니다. 현재로서는 32bit용만 배포되고 있습니다.

LAV CUVID Decoder 다운받기 (32bit)

압축을 풀면 LAVCUVID-0.6 이라는 폴더가 생성이 됩니다. 이 폴더를 적당한 장소로 옮깁니다.

해당 폴더 내에서 install.bat 파일을 마우스 우클릭하여 관리자 권한으로 실행합니다.

나중에 삭제할 때에는 같은 방법으로 uninstall.bat 을 실행하고 폴더를 삭제해 버리면 끝입니다.

이렇게 하여 코덱을 시스템에 등록시켰습니다.

Potplayer에서 어떻게 동작하는지 살펴보겠습니다.

환경설정 -> 코덱/필터 -> 필터/코덱관리 -> 시스템 코덱 추가 를 클릭합니다.

리스트에서 LAV CUVID Decoder 를 선택하고 확인을 누릅니다.

코덱목록에 LAV CUVID Decoder 가 등록되었습니다. 이 코덱을 선택한 뒤 필터정보를 눌러 봅니다.

환경설정을 위와 같이 해줍니다. (이미 되어있을 것입니다.)

[주의] : Windows XP 사용자 중에 이상현상이 발생하는 분은 Use DXVA Interop Mode 부분의 체크를 해제해 주어야 합니다.

비디오 코덱을 위와 같이 설정해 줍니다. 물론 취향에 따라 여러가지 선택이 가능하지만 지금은 테스트 단계이므로 일단 위와 같이 해봅니다.

참고로 저는 오직 VC-1 디코더로서 LAV CUVID Decoder 를 사용하고 있습니다.

환경설정의 영상 부분을 선택하고 비디오 출력장치를 자동선택(권장), EVR, Madshi Video Renderer 중에서 선택합니다.

Madshi Video Renderer(는 원래 하드웨어 가속을 지원하지 않습니다만 LAV CUVID Decoder가 CUDA 프로세서를 이용해 가속을 해줄런지도 궁금해집니다.

따라서 저는 일단 입소문 좋은 - 화질이 가장 좋다고 알려진 - Madshi Video Renderer를 선택하였습니다.

다음은 샘플입니다. MPEG4-ASP(XviD)로 인코딩 된 영상물인데 MPEG4-ASP는 nVidia 그래픽 카드에서 아직 가속이 안되고 있죠. 하드웨어적으로 VP4 지원 칩셋은 가속이 가능하기는 하나 현재 지원 코덱의 부재로 안되고 있는 것입니다.

AMD 카드에서는 HD6xxx (HD67xx 제외) 시리즈에서 DivX Decoder 베타 코덱을 통해 현재 가속을 지원하고 있습니다.

[참고] : 관련글을 보시려면 여기 <AMD HD6000 시리즈에서 DivX 영상 하드웨어 가속>로 이동하세요.

LAV CUVID Decoder가 잘 적용되고 있습니다. 컬러 스페이스는 NV12 로 출력이 되고 있어요.

이때 GPU-Z를 살펴보면 GPU 클럭이 올라가 있고 Video Engine Load 가 11%를 점하는 것을 볼 수 있습니다.

즉 CUDA 프로세서가 작동하여 가속을 시키고 있다 추정됩니다.

Madshi Video Renderer로도 CUDA 가속이 가능하다는 이야기가 되겠지요. 다른 Renderer 역시 말할 필요는 없겠습니다.

그러나 고작 MPEG4-ASP를 가속시키는데 GPU Full Clock이 필요한지는 의문이라 하겠습니다.

작업관리자에서는 Potplayer 가 CPU를 5% 가량 점하고 있다고 알려주고 있습니다. 가속은 되는데 점유율이 약간 높아 보이네요.

이 외에도 MPEG2 interlaced, H264/AVC, WVC1 영상물을 재생해 보았는데 모두 CUDA 가속을 잘 해주고 있음을 확인하였습니다. 하지만 화면이 미세하게 버벅거리는 영상물도 몇몇 있었습니다.


게시물 갯수 : 182
Join date : 2011-12-11

위로 Go down


Permissions in this forum:
답글을 올릴 수 없습니다