mark0077
29th December 2008, 00:21
I am trying to find the perfect dvd decoder + de-interlacer combination and have found some very interesting results.
============================================
My Setup Details
============================================
Vista 32bit SP1 -> Now running some tests under Windows 7 Beta
mpc-hc (1.2.958.0)
ffdshow (revision 2605)
evr-cp output renderer
Nvidia 7600GT (185.20 Drivers, NVidia-Control-Panel Dynamic Range: Full(0-255))
AMD Athlon 64 @ 2.7ghz
Decoders Tested: mpc-hc-libmpeg2, ffdshow-libmpeg2, ffdshow-libavcodec, cyberlink Video/SP Decoder (PDVD8), latest version as of Jan 1st)
All tests ran with evr-custom presentation unless specifically stated otherwise.
============================================
DVDs used to test and specifics on the individual tests used.
============================================
DVD 1: Star Wars Episode 3
Test 1 - Country Copyright Warning: Does the red text displaying the region name appear clear and not blocky. http://www.mediafire.com/?9g9ddlfzxhv
Test 2 - Actual Movie: Does it play at the correct frame rate of 25fps progressive with no de-interlacing performed.
DVD 2: Queen Greatest Hits Volume 1
Test 3 - Queen Menu Freezing: Can I run the mouse over various selections in the audio selection menu and not have it freeze up.
Test 4 - Queen Menu Highlight Appearance: Does the red rectangle that appears around the selection look like a rectangle or does it look messed up.
Test 5 - Queen Menu Highlight Position: Does the red rectangle appear over the underlying grey one perfectly or is it offset in any direction.
Test 6 - Actual Movie: Is it de-interlaced and does the de-interlacing look good.
DVD 3: Red-Dwarf Season 8 Disk 2:
Test 7 - Red-Dwarf Menu: Does it display at all, and is it usable if it displays.
Test 8 - Actual Movie: Is it de-interlaced and does the de-interlacing look good.
DVD 4: The World Is Not Enough:
Test 9 - Actual Movie: Does it play at the correct frame rate of 25fps progressive with no de-interlacing performed.
============================================
Output Colorspace Quality
============================================
Tests Used:
Test 1
Explanation:
The red writing in the copyright text in this test shows off inadequacies in colorspace conversion to your screens 32bit rgb output. Expected results are clear text with no jaggy edges or horizontal artifacts.
Notes:
All decoders used in test output yv12 by default, except for the cyberlink decoder which outputs yuy2.
Output colorspaces were set in ffdshow.
NVIDIA control panel dynamic range set to full (0-255).
Things I am looking at to decide which is best
1) Smoothness of the bottom of diagonal part of Red N in "Ireland"
2) Smoothness of the inside of last letter A or the last letter D in "Ireland"
Results (Format: ffdshow-output-colorspace = TEST RESULT)
EVR-CP (Dropping too many frames randomly for my liking)
libavcodec
yuy2 = BAD
yv12 = PERFECT
nv12 = BAD
libmpeg2
yuy2 = BAD
yv12 = PERFECT
nv12 = BAD
MPC-HC
yuy2 = BAD
yv12 = PERFECT
nv12 = BAD
EVR (Sometimes gets some aspect ratios wrong)
libavcodec
yuy2 = BAD
yv12 = PERFECT
nv12 = PERFECT
libmpeg2
yuy2 = BAD
yv12 = PERFECT
nv12 = PERFECT
MPC-HC
yuy2 = BAD
yv12 = PERFECT
nv12 = PERFECT
Haali Renderer (Sometimes complete freezes, and can't click menu items therefore can't navigate through DVDS or click on Play)
libavcodec
yuy2 = MACROVISION FAIL / SOMETIMES FREEZE
yv12 = Not Supported
nv12 = Not Supported
libmpeg2
yuy2 = MACROVISION FAIL / SOMETIMES FREEZE
yv12 = PERFECT
nv12 = PERFECT
MPC-HC
yuy2 = MACROVISION FAIL / SOMETIMES FREEZE
yv12 = PERFECT
nv12 = PERFECT
rgb32hq (ffdshow converts to rgh32) = VERY GOOD (some jaggies on the N are visible that arn't there with yv12 + yv12 chroma upsampler and less visible with yv12)
Avisynth ConvertToRGB32(matrix="rec601") = VERY GOOD (some jaggies on the N are visible that arn't there with yv12 + yv12 chroma upsampler and less visible with yv12)
Using vmr9 renderless or windowed was absolutely ridiculously blurry compared to evr so I'm not even going to go and test all of the combinations.
Comparison Images:
Zoomed Comparison
http://img131.imageshack.us/img131/916/comparisonzoomxr4.th.png (http://img131.imageshack.us/my.php?image=comparisonzoomxr4.png)
Individual Images:
ffdshow RGB32
http://img186.imageshack.us/img186/864/rgb32jk3.th.png (http://img186.imageshack.us/my.php?image=rgb32jk3.png)
ffdshow RGB32HQ
http://img255.imageshack.us/img255/2199/rgb32hqko8.th.png (http://img255.imageshack.us/my.php?image=rgb32hqko8.png)
Avisynth ConvertToRGB32(matrix="rec601")
http://img374.imageshack.us/img374/9992/avisynthqh3.th.png (http://img374.imageshack.us/my.php?image=avisynthqh3.png)
YV12
http://img187.imageshack.us/img187/3111/yv12yk8.th.png (http://img187.imageshack.us/my.php?image=yv12yk8.png)
YV12 + MPC YV12 Chroma Upsampling Shader
http://img122.imageshack.us/img122/4930/yv12chromart7.th.png (http://img122.imageshack.us/my.php?image=yv12chromart7.png)
Conclusion: I think everyone needs to recheck this on their machines, maybe someone with an ATI card can check yv12 quality, as I am surprised that rgb32hq wasn't the clear winner after reading all of the posts on this forum.
Note if using the cyberlink decoder with mpc-hc, along with evr-cp, I got ugly results, as evr-cp with yuy2 gives bad results.
Can anyone give an explanation as to what might be happening with evr vs evr-cp. What might be at fault for the different yuy2 results? Nvidia, ffdshow, decoders, microsoft?)
============================================
Interlaced / Progressive Frame Detection Quality
============================================
Tests Used:
Tests 1,2,6,8,9
Explantion:
This test will see which of the decoders does the best job of detecting progressive vs interlaced frames. ffdshows frame type seems to change from decoder to decoder so I have given the output below with the results.
Results (Format: Test X: PASS/FAIL ffdshow-frame-type-output)
mpc-hc Renderer
Test 2: FAIL I
Test 6: PASS I
Test 8: PASS I
Test 9: FAIL I
ffshow libmpeg2 Renderer
Test 2: FAIL P/B
Test 6: PASS P/B
Test 8: PASS P/B
Test 9: FAIL P/B
ffdshow libavcodec Renderer
Test 2: PASS P/B
Test 6: SEMI-PASS P/B (Note: Gets de-interlaced but field order seems to be set incorrectly, must be swapped in ffdshow to prevent ugly juddering effect)
Test 8: PASS P/B (Was I in previous build tested)
Test 9: FAIL P/B
cyberlink (dxva on) - * Results may not be valid as I can't get it to pass interlace flag onto ffdshow to see if yadif kicks in or not, anyone know a way?
Test 2: PASS I
Test 6: FAIL I *
Test 8: FAIL I *
Test 9: PASS I
Conclusion: Can anyone explain whats going on here? None of them get close to passing all tests. Is there a way I can manually go in and see how these frames are flagged?
I need to figure out how to stop cyberlink doing its own de-interlacing, and simply pass on the flag to ffdshow. This way I can test more reliably, and see how its detecting frames.
Update: It is only coming to my attention now, that most PAL dvds are badly flagged, with alot being flagged as interlaced. Here are some links that I was reading on this issue.
Discussion of badly flagged PAL dvds.
http://www.hifi-writer.com/he/progscan/progprob.htm#update2
An old page with software / hardware dvd player interlaced / progressive detection tests.
http://www.hometheaterhifi.com/cgi-bin/shootout.cgi?function=search&articles=all
You can see in the link above, that one hardware dvd player in the test on this page seemed to have a very good score in detecting interlaced vs progressive, detecting it without the use of the flag at all. Wouldn't it be great to have this level of detection in our software decoders. This might require a bit of work in the mpeg2 decoders / ffdshow but its something that would be really useful and I think is needed for any of these decoders to become a viable solution to high quality DVD Playback. Anyone know of any way I can improve the interlace / progressive frame detection with current software?
============================================
Effects of bad interlaced / progressive frame detection
============================================
I won't go and explain the effects of not de-interlacing some frames that should be de-interlaced, but the opposite is causing me more grief, progressive frames being de-interlaced.
When the wrong type of frame is detected, it seems all sorts of ugly effects happen to dvd menus, and as far as ffdshow is concerned, any filter in ffdshow that has a "Frame Type" setting or "Interlaced?" setting, like the RGB conversion filter, can be effected if it doesn't get the right frame type.
For Example: RGB conversion - Method - Interlace or progressive: Auto. With this setting on auto libmpeg2 and rgb32hq gives horrible looking results in Test 1 when the frame type is not forced to progressive, as auto seems to be reading the incoming frame as interlaced resulting in horrible horizontal lines.
I am sure the resize filter in ffdshow is effected also when its "Interlaced" option is set to auto, but I havn't tested this as I don't use resize in my setup.
Conclusion: This bad detection is having a large impact on my playback quality, especially when progressive frames are wrongly de-interlaced. It also effects ffdshow filters and functions such as the rgb conversion as noted above with libmpeg2 and rgb32hq conversion going wrong because of bad detection).
============================================
De-Interlacing Quality (Software vs Hardware)
============================================
Tests Used:
Tests 6, 8
Results (Format: ffdshow-output-colorspace = RESULTING QUALITY)
Software De-Interlacing (Using yadif (double framerate) de-interlacer in ffdshow as its by far the best to my eyes and many others)
yv12 = PERFECT
yuy2 = PERFECT
yvyu = PERFECT (some stuttering on my machine)
uyvy = PERFECT
nv12 = PERFECT
rgb32 = PERFECT
Hardware De-Interlacing (Results obtained by setting ffdshows "Set interlace flag in output media type" and disabling de-interlacing. If using mpc-hc decoder, its "Set interlace flag in output media type" must be enabled also for the flag to be passed all the way through to hardware de-interlacer)
yv12 = NA (CANT SELECT YV12 when set interlace flag in output option set)
yuy2 = PERFECT
yvyu = BAD
uyvy = PERFECT
nv12 = PERFECT
rgb32 = BAD
Conclusion: Hardware De-Interlacing is excellent and the only combination of good colour and good hardware de-interlacing I could find so far was using evr and yuy2 as colourspace output in ffdshow. For software, no problems at all in using yadif software de-interlacer (double framerate) and any good colorspace output.
============================================
DVD-Menu Rendering Quality
============================================
Tests Used:
Tests 3, 4, 5, 7
Results (Format: Test X: PASS/FAIL (notes)
mpc-hc Renderer
Test 3: PASS (Only PASS'es when ffdshow is not used. Even if ffdshow filters disabled, I can't stop the combination causing a FAIL here. Some compatibility issue somewhere here)
Test 4: PASS
Test 5: PASS
Test 7: PASS (Only PASS'es when ffdshow is not used. Even if ffdshow filters disabled, I can't stop the combination causing a FAIL here. Some compatibility issue somewhere here)
ffshow libmpeg2 Renderer
Test 3: PASS
Test 4: SEMI-PASS (Doesn't look like a perfect rectangle as it should be, slight doubling effect seen, probably due to bad positioning.).
Test 5: SEMI-PASS (Looks 1 or 2 pixels off perfect positioning)
Test 7: PASS
ffdshow libavcodec Renderer
Test 3: PASS
Test 4: SEMI-PASS (Doesn't look like a perfect rectangle as it should be, slight doubling effect seen, probably due to bad positioning.).
Test 5: SEMI-PASS (Looks 3 or 4 pixels off perfect positioning)
Test 7: PASS
cyberlink dxva
Test 3: PASS
Test 4: PASS
Test 5: PASS
Test 7: PASS
Conclusions:
mpc-hc decoder is the winner, but slight freezes when used in conjunction with ffdshow.
Isn't libmpeg2 used in mpc-hc... so how can there be differences in the results...
============================================
EVR vs EVR CP vs Haali Renderers
============================================
Still figurnig out which is best, evr-cp giving me problems with some tests which i didn't think would happen.... more here later...
============================================
Resizer Quality
============================================
todo.. as I am finding some weird problems with some of the popular resizers
============================================
Overall Conclusions:
============================================
I think there is a compatibility issue between mpc-hc decoder and ffdshow (slight menu freezes).
I think yv12 output with nvidias latest drivers is the best output method, even better than rgb32hq in ffdshow in my opinion.
Bad detection of interlaced / progressive frames by the decoders has a massive impact on playback quality aswell as some of the simple dvd menus quality, and can cause problems with ffdshows filters down the line, as these filters often depend on good descriptions of the incoming frames.
yadif de-interlacer is excellent in all output colorspaces, it just needs to know when to de-interlace and when not to, and I think this comes down to the decoders again.
Small note to ffdshow developers, switching to / from the libmpeg2 decoder while a video is running causes my player to crash, with a "this program is not responding" dialog from windows. This doesn't happen when selecting other decoders in ffdshow and clicking ok.
============================================
Any suggestions for changes to my setup or comments on my findings would be appreciated.
Regards,
============================================
My Setup Details
============================================
Vista 32bit SP1 -> Now running some tests under Windows 7 Beta
mpc-hc (1.2.958.0)
ffdshow (revision 2605)
evr-cp output renderer
Nvidia 7600GT (185.20 Drivers, NVidia-Control-Panel Dynamic Range: Full(0-255))
AMD Athlon 64 @ 2.7ghz
Decoders Tested: mpc-hc-libmpeg2, ffdshow-libmpeg2, ffdshow-libavcodec, cyberlink Video/SP Decoder (PDVD8), latest version as of Jan 1st)
All tests ran with evr-custom presentation unless specifically stated otherwise.
============================================
DVDs used to test and specifics on the individual tests used.
============================================
DVD 1: Star Wars Episode 3
Test 1 - Country Copyright Warning: Does the red text displaying the region name appear clear and not blocky. http://www.mediafire.com/?9g9ddlfzxhv
Test 2 - Actual Movie: Does it play at the correct frame rate of 25fps progressive with no de-interlacing performed.
DVD 2: Queen Greatest Hits Volume 1
Test 3 - Queen Menu Freezing: Can I run the mouse over various selections in the audio selection menu and not have it freeze up.
Test 4 - Queen Menu Highlight Appearance: Does the red rectangle that appears around the selection look like a rectangle or does it look messed up.
Test 5 - Queen Menu Highlight Position: Does the red rectangle appear over the underlying grey one perfectly or is it offset in any direction.
Test 6 - Actual Movie: Is it de-interlaced and does the de-interlacing look good.
DVD 3: Red-Dwarf Season 8 Disk 2:
Test 7 - Red-Dwarf Menu: Does it display at all, and is it usable if it displays.
Test 8 - Actual Movie: Is it de-interlaced and does the de-interlacing look good.
DVD 4: The World Is Not Enough:
Test 9 - Actual Movie: Does it play at the correct frame rate of 25fps progressive with no de-interlacing performed.
============================================
Output Colorspace Quality
============================================
Tests Used:
Test 1
Explanation:
The red writing in the copyright text in this test shows off inadequacies in colorspace conversion to your screens 32bit rgb output. Expected results are clear text with no jaggy edges or horizontal artifacts.
Notes:
All decoders used in test output yv12 by default, except for the cyberlink decoder which outputs yuy2.
Output colorspaces were set in ffdshow.
NVIDIA control panel dynamic range set to full (0-255).
Things I am looking at to decide which is best
1) Smoothness of the bottom of diagonal part of Red N in "Ireland"
2) Smoothness of the inside of last letter A or the last letter D in "Ireland"
Results (Format: ffdshow-output-colorspace = TEST RESULT)
EVR-CP (Dropping too many frames randomly for my liking)
libavcodec
yuy2 = BAD
yv12 = PERFECT
nv12 = BAD
libmpeg2
yuy2 = BAD
yv12 = PERFECT
nv12 = BAD
MPC-HC
yuy2 = BAD
yv12 = PERFECT
nv12 = BAD
EVR (Sometimes gets some aspect ratios wrong)
libavcodec
yuy2 = BAD
yv12 = PERFECT
nv12 = PERFECT
libmpeg2
yuy2 = BAD
yv12 = PERFECT
nv12 = PERFECT
MPC-HC
yuy2 = BAD
yv12 = PERFECT
nv12 = PERFECT
Haali Renderer (Sometimes complete freezes, and can't click menu items therefore can't navigate through DVDS or click on Play)
libavcodec
yuy2 = MACROVISION FAIL / SOMETIMES FREEZE
yv12 = Not Supported
nv12 = Not Supported
libmpeg2
yuy2 = MACROVISION FAIL / SOMETIMES FREEZE
yv12 = PERFECT
nv12 = PERFECT
MPC-HC
yuy2 = MACROVISION FAIL / SOMETIMES FREEZE
yv12 = PERFECT
nv12 = PERFECT
rgb32hq (ffdshow converts to rgh32) = VERY GOOD (some jaggies on the N are visible that arn't there with yv12 + yv12 chroma upsampler and less visible with yv12)
Avisynth ConvertToRGB32(matrix="rec601") = VERY GOOD (some jaggies on the N are visible that arn't there with yv12 + yv12 chroma upsampler and less visible with yv12)
Using vmr9 renderless or windowed was absolutely ridiculously blurry compared to evr so I'm not even going to go and test all of the combinations.
Comparison Images:
Zoomed Comparison
http://img131.imageshack.us/img131/916/comparisonzoomxr4.th.png (http://img131.imageshack.us/my.php?image=comparisonzoomxr4.png)
Individual Images:
ffdshow RGB32
http://img186.imageshack.us/img186/864/rgb32jk3.th.png (http://img186.imageshack.us/my.php?image=rgb32jk3.png)
ffdshow RGB32HQ
http://img255.imageshack.us/img255/2199/rgb32hqko8.th.png (http://img255.imageshack.us/my.php?image=rgb32hqko8.png)
Avisynth ConvertToRGB32(matrix="rec601")
http://img374.imageshack.us/img374/9992/avisynthqh3.th.png (http://img374.imageshack.us/my.php?image=avisynthqh3.png)
YV12
http://img187.imageshack.us/img187/3111/yv12yk8.th.png (http://img187.imageshack.us/my.php?image=yv12yk8.png)
YV12 + MPC YV12 Chroma Upsampling Shader
http://img122.imageshack.us/img122/4930/yv12chromart7.th.png (http://img122.imageshack.us/my.php?image=yv12chromart7.png)
Conclusion: I think everyone needs to recheck this on their machines, maybe someone with an ATI card can check yv12 quality, as I am surprised that rgb32hq wasn't the clear winner after reading all of the posts on this forum.
Note if using the cyberlink decoder with mpc-hc, along with evr-cp, I got ugly results, as evr-cp with yuy2 gives bad results.
Can anyone give an explanation as to what might be happening with evr vs evr-cp. What might be at fault for the different yuy2 results? Nvidia, ffdshow, decoders, microsoft?)
============================================
Interlaced / Progressive Frame Detection Quality
============================================
Tests Used:
Tests 1,2,6,8,9
Explantion:
This test will see which of the decoders does the best job of detecting progressive vs interlaced frames. ffdshows frame type seems to change from decoder to decoder so I have given the output below with the results.
Results (Format: Test X: PASS/FAIL ffdshow-frame-type-output)
mpc-hc Renderer
Test 2: FAIL I
Test 6: PASS I
Test 8: PASS I
Test 9: FAIL I
ffshow libmpeg2 Renderer
Test 2: FAIL P/B
Test 6: PASS P/B
Test 8: PASS P/B
Test 9: FAIL P/B
ffdshow libavcodec Renderer
Test 2: PASS P/B
Test 6: SEMI-PASS P/B (Note: Gets de-interlaced but field order seems to be set incorrectly, must be swapped in ffdshow to prevent ugly juddering effect)
Test 8: PASS P/B (Was I in previous build tested)
Test 9: FAIL P/B
cyberlink (dxva on) - * Results may not be valid as I can't get it to pass interlace flag onto ffdshow to see if yadif kicks in or not, anyone know a way?
Test 2: PASS I
Test 6: FAIL I *
Test 8: FAIL I *
Test 9: PASS I
Conclusion: Can anyone explain whats going on here? None of them get close to passing all tests. Is there a way I can manually go in and see how these frames are flagged?
I need to figure out how to stop cyberlink doing its own de-interlacing, and simply pass on the flag to ffdshow. This way I can test more reliably, and see how its detecting frames.
Update: It is only coming to my attention now, that most PAL dvds are badly flagged, with alot being flagged as interlaced. Here are some links that I was reading on this issue.
Discussion of badly flagged PAL dvds.
http://www.hifi-writer.com/he/progscan/progprob.htm#update2
An old page with software / hardware dvd player interlaced / progressive detection tests.
http://www.hometheaterhifi.com/cgi-bin/shootout.cgi?function=search&articles=all
You can see in the link above, that one hardware dvd player in the test on this page seemed to have a very good score in detecting interlaced vs progressive, detecting it without the use of the flag at all. Wouldn't it be great to have this level of detection in our software decoders. This might require a bit of work in the mpeg2 decoders / ffdshow but its something that would be really useful and I think is needed for any of these decoders to become a viable solution to high quality DVD Playback. Anyone know of any way I can improve the interlace / progressive frame detection with current software?
============================================
Effects of bad interlaced / progressive frame detection
============================================
I won't go and explain the effects of not de-interlacing some frames that should be de-interlaced, but the opposite is causing me more grief, progressive frames being de-interlaced.
When the wrong type of frame is detected, it seems all sorts of ugly effects happen to dvd menus, and as far as ffdshow is concerned, any filter in ffdshow that has a "Frame Type" setting or "Interlaced?" setting, like the RGB conversion filter, can be effected if it doesn't get the right frame type.
For Example: RGB conversion - Method - Interlace or progressive: Auto. With this setting on auto libmpeg2 and rgb32hq gives horrible looking results in Test 1 when the frame type is not forced to progressive, as auto seems to be reading the incoming frame as interlaced resulting in horrible horizontal lines.
I am sure the resize filter in ffdshow is effected also when its "Interlaced" option is set to auto, but I havn't tested this as I don't use resize in my setup.
Conclusion: This bad detection is having a large impact on my playback quality, especially when progressive frames are wrongly de-interlaced. It also effects ffdshow filters and functions such as the rgb conversion as noted above with libmpeg2 and rgb32hq conversion going wrong because of bad detection).
============================================
De-Interlacing Quality (Software vs Hardware)
============================================
Tests Used:
Tests 6, 8
Results (Format: ffdshow-output-colorspace = RESULTING QUALITY)
Software De-Interlacing (Using yadif (double framerate) de-interlacer in ffdshow as its by far the best to my eyes and many others)
yv12 = PERFECT
yuy2 = PERFECT
yvyu = PERFECT (some stuttering on my machine)
uyvy = PERFECT
nv12 = PERFECT
rgb32 = PERFECT
Hardware De-Interlacing (Results obtained by setting ffdshows "Set interlace flag in output media type" and disabling de-interlacing. If using mpc-hc decoder, its "Set interlace flag in output media type" must be enabled also for the flag to be passed all the way through to hardware de-interlacer)
yv12 = NA (CANT SELECT YV12 when set interlace flag in output option set)
yuy2 = PERFECT
yvyu = BAD
uyvy = PERFECT
nv12 = PERFECT
rgb32 = BAD
Conclusion: Hardware De-Interlacing is excellent and the only combination of good colour and good hardware de-interlacing I could find so far was using evr and yuy2 as colourspace output in ffdshow. For software, no problems at all in using yadif software de-interlacer (double framerate) and any good colorspace output.
============================================
DVD-Menu Rendering Quality
============================================
Tests Used:
Tests 3, 4, 5, 7
Results (Format: Test X: PASS/FAIL (notes)
mpc-hc Renderer
Test 3: PASS (Only PASS'es when ffdshow is not used. Even if ffdshow filters disabled, I can't stop the combination causing a FAIL here. Some compatibility issue somewhere here)
Test 4: PASS
Test 5: PASS
Test 7: PASS (Only PASS'es when ffdshow is not used. Even if ffdshow filters disabled, I can't stop the combination causing a FAIL here. Some compatibility issue somewhere here)
ffshow libmpeg2 Renderer
Test 3: PASS
Test 4: SEMI-PASS (Doesn't look like a perfect rectangle as it should be, slight doubling effect seen, probably due to bad positioning.).
Test 5: SEMI-PASS (Looks 1 or 2 pixels off perfect positioning)
Test 7: PASS
ffdshow libavcodec Renderer
Test 3: PASS
Test 4: SEMI-PASS (Doesn't look like a perfect rectangle as it should be, slight doubling effect seen, probably due to bad positioning.).
Test 5: SEMI-PASS (Looks 3 or 4 pixels off perfect positioning)
Test 7: PASS
cyberlink dxva
Test 3: PASS
Test 4: PASS
Test 5: PASS
Test 7: PASS
Conclusions:
mpc-hc decoder is the winner, but slight freezes when used in conjunction with ffdshow.
Isn't libmpeg2 used in mpc-hc... so how can there be differences in the results...
============================================
EVR vs EVR CP vs Haali Renderers
============================================
Still figurnig out which is best, evr-cp giving me problems with some tests which i didn't think would happen.... more here later...
============================================
Resizer Quality
============================================
todo.. as I am finding some weird problems with some of the popular resizers
============================================
Overall Conclusions:
============================================
I think there is a compatibility issue between mpc-hc decoder and ffdshow (slight menu freezes).
I think yv12 output with nvidias latest drivers is the best output method, even better than rgb32hq in ffdshow in my opinion.
Bad detection of interlaced / progressive frames by the decoders has a massive impact on playback quality aswell as some of the simple dvd menus quality, and can cause problems with ffdshows filters down the line, as these filters often depend on good descriptions of the incoming frames.
yadif de-interlacer is excellent in all output colorspaces, it just needs to know when to de-interlace and when not to, and I think this comes down to the decoders again.
Small note to ffdshow developers, switching to / from the libmpeg2 decoder while a video is running causes my player to crash, with a "this program is not responding" dialog from windows. This doesn't happen when selecting other decoders in ffdshow and clicking ok.
============================================
Any suggestions for changes to my setup or comments on my findings would be appreciated.
Regards,