Welcome to Doom9's Forum, THE in-place to be for everyone interested in DVD conversion. Before you start posting please read the forum rules. By posting to this forum you agree to abide by the rules. |
22nd July 2014, 06:36 | #1422 | Link |
Registered Developer
Join Date: Mar 2010
Location: Hamburg/Germany
Posts: 10,347
|
Well, or so it claims. Sadly its really hard to prove it conclusively what really arrives at the screen.
__________________
LAV Filters - open source ffmpeg based media splitter and decoders Last edited by nevcairiel; 22nd July 2014 at 06:38. |
22nd July 2014, 07:27 | #1423 | Link | |
Registered User
Join Date: Mar 2013
Posts: 31
|
Quote:
http://forum.doom9.org/showthread.ph...47#post1651747 |
|
22nd July 2014, 23:52 | #1424 | Link |
Registered User
Join Date: Oct 2010
Location: The Netherlands
Posts: 1,083
|
mhourousha, it's odd that nobody followed up on your message on why the 16-bit float back buffers have different colors; http://msdn.microsoft.com/en-us/libr...=vs.85%29.aspx . It's annoying that such behavior can't be changed either. This kind of post-output filter should really be set in some type of device or swapchain state, and not like this. The 2.2 gamma value forced by the runtime isn't even configurable in this case. IDXGIOutput::SetGammaControl() is mentioned as a solution, but it's just not the same thing as simply disabling the extra filtering. SetGammaControl() operates on the hardware tables, not in software (and uses a segment model, instead of just plain gamma values). These are not very accurate at all and on top of that, the Nvidia driver doesn't enable the gamma tables in full screen mode.
Direct3D 9 behaves exactly the same if you set 16-bit float back buffers. Even though it's officially not supported, as Direct3D 9 gets implemented by semi-emulation since Vista (pretty much only the vertex formats are fundamentally different for the GPU hardware), setting 16-bit float back buffers will get accepted by the runtime if the device has a Direct3D 10.0 feature level or higher. Other than that, nice to see that overview you made, especially since this is the first time I've seen the Intel driver using a deep color mode.
__________________
development folder, containing MPC-HC experimental tester builds, pixel shaders and more: http://www.mediafire.com/?xwsoo403c53hv |
23rd July 2014, 03:21 | #1425 | Link | |
Registered User
Join Date: Mar 2013
Posts: 31
|
Quote:
More annoying thing happens in R10G10B10_XR_BIAS_A2_UNORM format,because XR_BIAS is just a scan-out format,not a rendertarget format,so you have to render scenes to a R10G10B10_UNORM RT then cast it as XR_BIAS format,thus color scale and bias must be done in shader.it made me confuse that it show different color in different video-port(VGA,DVI etc)…… |
|
23rd July 2014, 07:50 | #1426 | Link | |
Registered User
Join Date: Nov 2011
Posts: 48
|
Quote:
Can you explain me how to delegate denoise and sharpness to madVR to achieve a higher quality video compared to avisynth scripts? |
|
24th July 2014, 06:42 | #1428 | Link |
Registered User
Join Date: Nov 2011
Posts: 48
|
I'm confused
madVR supports post processing by shaders internally? I know that MPCHC support pixelshader, before and after resize. I know that you con use them with MADVR as render (and EVR of course) But my question about what JanWillem32 says remain. You must consider that sharpen is (much) better with scripts than shaders, also if you sharpen video before render, because avisynth is much powerfull. About denoise i don't know how is done by shaders... Last edited by feelingblue; 24th July 2014 at 09:58. |
25th July 2014, 22:59 | #1429 | Link |
Registered User
Join Date: Oct 2010
Location: The Netherlands
Posts: 1,083
|
"madVR supports pixel shaders." isn't the best description for the feature to be able to set pre- and post-resize stage user-custom pixel shaders. DirectX renderers like madVR have plenty of pixel shaders of themselves to be able to do resizing and such.
There are two threads on this board where you can find pixel shader collections; CeeJay.dk's: http://forum.doom9.org/showthread.php?p=1673781 mine: http://forum.doom9.org/showthread.php?p=1453334 There have been several sharpening shaders, and you're right that most user-custom pixel shaders are rather badly written. The standard 'denoise' is a great example of one that's badly written. (Not all of the shaders I've written were that great either. Some could certainly use some work or should just be deleted.) Anyway, madVR has some internal filtering options internally, and indeed user-custom pixel shaders for handling various other effects. Both are plenty powerful to handle conceptually simple effects such as debanding, denoising and sharpening. Handling them on the GPU means that you're using a semi-specialized processor to handle the computations. Avisynth often isn't the most efficient engine to start with, nor can most CPUs match the throughput of even a mid-range GPU in regards to general graphical computations right now. Letting the video renderer actually render some effects isn't such a bad thing. Apart from heavily modified implementations, Avisynth's intermediate and/or output rendering format(s) also don't hold decent quantization for images. The video renderer doesn't suffer from this problem, unless its programmer failed to implement somthing decent/had to support 8-bit Y'CbCr and R'G'B' rendering methods for low-end hardware performance reasons or supporting GPUs from the previous millenium. For effects that are conceptually more complicated, such as rotating images by 90 or 270 degrees, Avisynth will indeed fare better than the implementation of user-custom pixel shaders. Having control over a video renderer's vertices and staging to handle such effects will void that argument, though. If someone is still confused about post-processing, mixing stages, rendering stages, and such I can make it a lot simpler: they're all just filters. Both the CPU and the GPU can handle absolutely all of them. CPU example: the old video renderer (last seen as a valid renderer in the Windows Me era) that was basically using the CPU to run GDI-based deinterlacing, scaling and color conversions didn't draw any computational power from the GPU. GPU example: DXVA2 native decoding, mixing, rendering, and output to the display device doesn't use the CPU for anything else but moving the raw video stream to memory.
__________________
development folder, containing MPC-HC experimental tester builds, pixel shaders and more: http://www.mediafire.com/?xwsoo403c53hv |
26th July 2014, 01:24 | #1430 | Link | ||
Registered User
Join Date: Nov 2011
Posts: 48
|
Quote:
In fact i have tried every shader (also changing internal values to obtain more quality) but when i have tried the avisynth scripts i have seen great improvments. Quote:
I still do not understand why you said this: "The mentioned playback chain of "MPCHC - softw.dec. - avisynt (denose + sharpness) - Madvr" isn't too bad. I just wonder why you don't delegate the denoise and sharpen steps to Madvr." I think i have tried every combination of renders and postprocessings on a very large VPR screen (1080p film on 1080p screen) The best denoise that i have found are avisynth denoise and ffdshow denoise done immediately after the decoder. The best sharpness that i have found are finesharp, LimitedFastenSharper, LFSmod.... also done before render. My question is very very simple: If my chain "isn't too bad", what is a better chain? |
||
26th July 2014, 23:18 | #1431 | Link | |
Registered User
Join Date: Oct 2010
Location: The Netherlands
Posts: 1,083
|
Quote:
Anyway, I was mostly pointing out that you have a setup with two captains on one ship. No good can come out of using two video renderers at once. What kind of denoise do you need? If it's source debanding, hard, random synthetic noise removal, VHS noise cleanup, old film noise removal or whatever other types, all require different methods. Artificial sharpening is like artificial sweetening of a cookie. Neither dirt cheap nor expensive cookies benefit from that. I'm not a fan of it. Some sharpening factors to selectively counter-balance denoise/deband effects (because they blur everything by default) and mild, modulated sharpening factors in resizers are okay because they are not stand-alone effects. Most avisynth sharpeners also operate on Y'CbCr, which is not one of the most ideal color spaces to filter anything on a visual basis. I've written/edited several sharpening filters in the past. Some were worse than others, so I guess I can review them once again. But anyway, why do you think you would ever need to use a stand-alone sharpen effect when playing back videos?
__________________
development folder, containing MPC-HC experimental tester builds, pixel shaders and more: http://www.mediafire.com/?xwsoo403c53hv |
|
27th July 2014, 01:05 | #1432 | Link | |
Registered User
Join Date: Nov 2011
Posts: 48
|
Quote:
I setup my VPR with Spear and Munsil II and blue filters with a clean install of MPCHC and MADVR. To pass all the test patterns i simply use MPCHC - Decoder by CPU - Madvr (default settings except debanding at strong values) I obtain a very very good image, similar to my Oppo103, a reference BD player. I have only two problems: A) Some film are dirty and have noise (Die Hard 5 for example) B) The image is not enough sharper (Due to VPR DLP and very large screen) To resolve problem A: A very very good denoise (near perfect) is the denoise3D in HQ mode in ffdshow raw filter. In the die hard 5, for example, i can clean the film without lose details. but In other films i can use other denoise of ffdshow or avisynth. With my chain, i always clean film perfectly (i talk always about my BD Backup) To resolve problem B: The best sharpness that give me an image with fine details without changing the cinematographic feeling and without give me artefacts is finesharp in avisynth. To do another example: with the mini video near the sea in spears and munsil, I get an image that looks like a photo done by a reflex and i can read the small small letters into the signs.... all with zero artefacts! All the sharpness done by shaders or external video processor (the last i have tried is the small new DVDO iscan mini)... are inferiors, a little or not.. but inferiors. I have done side by side comparison by switching frames hundred of times, observing small particulars... there is nothing to do, i am sorry: in my setup best chain is MPCHC - CPU decoder - ffdshow raw filter and MADVR. But i am not the only one that is arrived to this conclusion Other users with good PC uses this chain (many people who frequent forums in my language and my country for example) All my friends that are HTPC fans have tried many settings and have come to my own conclusions. There is a good guide:http://www.ezoden.com/684/tutorial-htpc The autor of this guide, who is in search of best PQ without compromise is come to my own conclusion... and also all people who partecipate to that forum. and so on...... Is for this reasons that i don't understand why you say that my chain "is not bad". I ask you one more time: what is a better chain? (with a pratical example?) If you answer to this question... i thank you and i try it immediately! Last edited by feelingblue; 27th July 2014 at 09:11. |
|
27th July 2014, 01:09 | #1433 | Link | |
Registered User
Join Date: Nov 2011
Posts: 48
|
Quote:
I use Madvr. ffdshow raw filter is only the key to use avisynth scripts and use denoises immediately after the decoder. |
|
27th July 2014, 23:27 | #1434 | Link |
Registered User
Join Date: Jul 2013
Location: Macedonia, Greece
Posts: 43
|
Anyone noticed kinda jerky playback when you play .avi files? I have D3DFullScreen enabled but every 4-5 secs MPC goes out of sync for a sec. When I use .mp4 everything is smooth.
__________________
CPU: i5 4690 ~ M/B: Z97 G45 ~ GPU: GTX 960 ~ RAM: 8GB 1,6Ghz ~ SSD: Samsung 850 Pro + EVO Sound: ALC 1150 ~ Speakers: Z5500 ~ OS: Win 10 x64 ~ MPCHC x64 |
28th July 2014, 07:51 | #1435 | Link |
German doom9/Gleitz SuMo
Join Date: Oct 2001
Location: Germany, rural Altmark
Posts: 6,782
|
You should not generalize about AVI files. On one hand, AVI is a container format which may contain thousands of combinations of video and audio formats, in contrast to MP4 which is limited to a clear subset. On the other hand, the AVI container can have different variations; and if the keyframe index is missing or incomplete, sync issues are no surprise.
Try to refresh the AVI with VirtualDubMod or with AviMux-GUI and test if these AVI files are choppy too. If yes, they simply may contain content which is not meant to be packed into an AVI container because the AVI container is too old to support the video stream's features, like AVC (H.264) video. |
28th July 2014, 18:15 | #1437 | Link |
Registered User
Join Date: Jul 2013
Location: Macedonia, Greece
Posts: 43
|
Well, useful info, thank you! But forget about this. I just got one more SSD, neeeded to reinstall Windows and the problem gone. Maybe there was a problem 'cause before I switch to this new GPU I used the Intel's non-discrete one for a week and caused a mess in my system.
In short I went from AMD7950 to Intel 4400 and then Nvidia 770 without reinstalling the OS. Bad idea as it seems.
__________________
CPU: i5 4690 ~ M/B: Z97 G45 ~ GPU: GTX 960 ~ RAM: 8GB 1,6Ghz ~ SSD: Samsung 850 Pro + EVO Sound: ALC 1150 ~ Speakers: Z5500 ~ OS: Win 10 x64 ~ MPCHC x64 Last edited by Raylan Givens; 28th July 2014 at 18:20. |
29th July 2014, 05:29 | #1438 | Link | |
Angel of Night
Join Date: Nov 2004
Location: Tangled in the silks
Posts: 9,559
|
Quote:
|
|
Tags |
dxva, media player classic, mpc, mpc-hc |
|
|