Log in

View Full Version : Media Player .NET (MPDN) - D3D HQ GPU Video Renderer [v2.49.0/v1.31.0 27 Dec 2018]


Pages : 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 [85] 86 87 88 89 90 91 92 93 94 95 96

Zachs
22nd September 2016, 07:42
So how would you tell MPDN to use a particular GPU when you have more than one without a combobox?

sauma144
22nd September 2016, 07:52
I don't know, I am wondering how other players do.
Maybe they let the drivers do the things, I don't know if there is a way to set a primary GPU in SLI/CrossFire setups.
I really want to use MPDN with my dedicated GPU on this laptop, so if there are things to test, I am in.

Zachs
22nd September 2016, 08:06
Other players automatically choose one. Most simply use the primary adapter.

sauma144
22nd September 2016, 08:21
So why not adding an option in MPDN to let the driver deciding?
Maybe it will fix blackscreen with Intel/AMD hybrid setups.

Zachs
22nd September 2016, 08:44
Driver doesn't decide. Player does.

sauma144
22nd September 2016, 08:57
So why not an option to use the primary adapter like other players do by default? ;)

nevcairiel
22nd September 2016, 09:45
So how would you tell MPDN to use a particular GPU when you have more than one without a combobox?

Use whichever is in control of the screen your window is on?
Thats how all other players work, really. You can't really use any other.

Zachs
22nd September 2016, 09:51
Well personally I like the ability to choose. That's why I did it that way. If you have the window span across multiple screens, you'll have to pick just one of the adapters anyway.

sauma144
22nd September 2016, 10:51
So you are not interested to add this "feature" to see if it fixes blackscreen issue with intel/amd hybrid laptops. :(

Zachs
22nd September 2016, 13:23
It won't be magically fixed by making MPDN auto select from the combobox - MPDN would then simply pick one out of the list, which you could do on your own right now.

sauma144
22nd September 2016, 13:47
Did you see the imgur album?
http://m.imgur.com/a/LJDnm
MPDN doesn't recognize/list the AMD card.
Now I understand it will need more time than just make an auto-selection in the combobox.

Zachs
22nd September 2016, 14:00
Did you see the imgur album?
http://m.imgur.com/a/LJDnm
MPDN doesn't recognize/list the AMD card.
Now I understand it will need more time than just make an auto-selection in the combobox.

If there's only a single adapter listed, then obviously the problem is with AMD not reporting its GPU properly. If MPDN can only see the Intel GPU, then what makes you think it can magically use the AMD one?

sauma144
22nd September 2016, 14:20
If MPDN can only see the Intel GPU, then what makes you think it can magically use the AMD one?
So why does it work with madvr, kodi, mpv and so on? It's really weird! No?
I think the way MPDN identifies the GPUs doesn't work or is too restrictive with hybrid laptops.

Zachs
22nd September 2016, 14:28
MadVR works fine with AMD hybrid?

sauma144
22nd September 2016, 14:30
Yes absolutely!

Zachs
22nd September 2016, 14:40
Not sure whats going on then. But without an AMD hybrid it'll be hard to do anything...

sauma144
22nd September 2016, 14:46
Can I do something to help you?
As already said, I really want to use MPDN with the dedicated GPU on this laptop!

Zachs
22nd September 2016, 14:49
Unfortunately I'm very busy at the moment with a lot of personal things happening at the same time.
If you can do coding, one thing you could try is the enumeration routine for D3D9 to see if it returns the AMD adapter.

sauma144
22nd September 2016, 15:07
If you can do coding, one thing you could try is the enumeration routine for D3D9 to see if it returns the AMD adapter.

Sorry, but no. :(

However I have to disable this option with mpv to make the AMD card working without crash.
I don't know if it can help you.


Allows DirectComposition when using the ANGLE backend (default: yes). DirectComposition implies flip-model presentation, which can improve rendering efficiency on Windows 8+ by avoiding a copy of the video frame. mpv uses it by default where possible, but it can cause poor behaviour with some drivers, such as a black screen or graphical corruption when leaving full-screen mode. Use "no" to disable it.


Furthermore MPDN crashes when entering exclusive fullscreen with the AMD card, so with blackscreen.

Zachs
22nd September 2016, 15:17
I thought the problem was the AMD card isn't even listed? How do you enter full screen with the AMD card then?

sauma144
22nd September 2016, 15:32
How do you enter full screen with the AMD card then?

I double click inside the window or CTRL+ALT but it crashes only when I tick exclusive fullscreen inside the MPDN settings.

I have blackscreen but it runs, I have the sound and also the OSD with Decoder Queue, Render Queue, ...

mecedo
28th September 2016, 14:57
Hi. I want to report bug in MPDN because I think "Feature/Bug Tracker" page is abandoned.

After pausing movie for longer then 20 seconds playing is stuttered. The only way to fix is close and reopen MPDN

Nevilne
28th September 2016, 15:49
Searched this thread/player website for this and couldn't find anything - are custom skins planned/available?

Shiandow
28th September 2016, 19:16
Hi. I want to report bug in MPDN because I think "Feature/Bug Tracker" page is abandoned.

After pausing movie for longer then 20 seconds playing is stuttered. The only way to fix is close and reopen MPDN

The feature tracker still works, but Zachs is rather busy so response time can be a bit slow. He'll get round to it eventually.

Anyway, some more details might help, is the video stuttering, or just the audio? Does the OSD (Ctrl+J) show anything? Are you using any non-default settings?

Searched this thread/player website for this and couldn't find anything - are custom skins planned/available?

Unfortunately the answer is no, to both your questions.

Zachs
26th October 2016, 12:18
Sorry guys I know this is long overdue but I've just released a new version of the extensions with Shiandow's latest changes.
Enjoy!

Shiandow
26th October 2016, 16:06
Some of the things available with the new extensions:


A new experimental chroma scaling method (not as new as it once was, but feedback is still appreciated).
Linear light processing for SSSR is now optional. Disabling it slightly exaggerates highlights, but seems to be sharper.

As always, the more feedback I get the more I can improve the algorithms, or come up with new ones.

aufkrawall
26th October 2016, 16:47
New bileteral is much more stable regarding "broken" sources like really low-quality cartoons. Sometimes it still "decides wrong" though, but it's a hell of an improvement. And it's also very sharp.
With an animation of a news broadcast (the one which I also posted in regard of banding) it looks a bit aliased, which the old bileteral doesn't do.

Having gamma light for SSSR is really good. But it doesn't look very different to me compared to SuperRes in madVR. Maybe even if it's a bit better, it's still much more important which prescaler is used (which imho only can be NNEDI3).

Some other observations:
-SSIM downscaling after SSSR doesn't work, it always uses MPDN's internal scaler.
-My old comprehensive profile-script sometimes produces just pages of error messages. :(
http://pastebin.com/UJBwP0A9

Shiandow
26th October 2016, 19:38
New bileteral is much more stable regarding "broken" sources like really low-quality cartoons. Sometimes it still "decides wrong" though, but it's a hell of an improvement. And it's also very sharp.
With an animation of a news broadcast (the one which I also posted in regard of banding) it looks a bit aliased, which the old bileteral doesn't do.

Thanks for the feedback, glad you're seeing some improvement. And yeah, there are some cases where things go wrong still, especially with low quality sources. To some extent this is inherent to reconstructive methods, so there will always be a trade off between sharpness and artefacts.

I used the sample you're talking about for tests, and I agree that the previous method gave a better result, but that only seemed to work well for that particular image.


Having gamma light for SSSR is really good. But it doesn't look very different to me compared to SuperRes in madVR. Maybe even if it's a bit better, it's still much more important which prescaler is used (which imho only can be NNEDI3).

Sharpness might not differ too much, but in my opinion SSSR is more 'balanced'; it suppresses ringing and even (to some extent) aliasing. It also converges a lot faster (especially using the 'hybrid' method), so you need fewer passes to get a good result.


Some other observations:
-SSIM downscaling after SSSR doesn't work, it always uses MPDN's internal scaler.
-My old comprehensive profile-script sometimes produces just pages of error messages. :(
http://pastebin.com/UJBwP0A9

I can't reproduce either of those, but I'm probably not using the exact same versions of MPDN and the extensions. The first one simply shouldn't happen, but it could be the OSD that's wrong, are the rendering times affected if you add / remove SSIM?

Not sure what's happening to your script (seems to be working fine, as far as I can tell) but one or two of those pages of error messages would probably clear things up.

sauma144
26th October 2016, 19:42
Sorry guys I know this is long overdue but I've just released a new version of the extensions with Shiandow's latest changes.
Enjoy!

Thank you for the update!

Could you or someone else update the presets or create new ones with the new algorithms and pretty results?

I still have blackscreen (with sound) issue when using the AMD GPU on a Intel/AMD hybrid laptop. Did you find what is causing this? Maybe should I add an issue in the bug tracker.

aufkrawall
26th October 2016, 20:44
I used the sample you're talking about for tests, and I agree that the previous method gave a better result, but that only seemed to work well for that particular image.

Well, if the aliasing could be reduced further.. :)
That sample was a good demonstration where the old bileteral outperformed every other algorithm. And it's true "real world" content, the frames originate untouched from the news site (and this pathetic quality is the best they offer).
Btw: This clip still screams for a more aggressive deband filter. :p


Sharpness might not differ too much, but in my opinion SSSR is more 'balanced'; it suppresses ringing and even (to some extent) aliasing. It also converges a lot faster (especially using the 'hybrid' method), so you need fewer passes to get a good result.

I will create some comparisons and then judge again. :)


I can't reproduce either of those, but I'm probably not using the exact same versions of MPDN and the extensions. The first one simply shouldn't happen, but it could be the OSD that's wrong, are the rendering times affected if you add / remove SSIM?

I think I made a mistake, just adding SSIM to each end of my script chain profiles seems to work.


Not sure what's happening to your script (seems to be working fine, as far as I can tell) but one or two of those pages of error messages would probably clear things up.
My fault, I forgot to copy the Adaptive Sharpen shaders to the correct path (it's been some time since I last used MPDN).
The script still seems to be working well with newest extensions.

Shiandow
26th October 2016, 21:48
My fault, I forgot to copy the Adaptive Sharpen shaders to the correct path (it's been some time since I last used MPDN).
The script still seems to be working well with newest extensions.

I did at some point allow Image Processor to use shaders in external folders as well. Putting the Adaptive Sharpen in some dedicated folder might make things easier in future.

Out of interest what does the OSD read if your script uses it's most complicated process? I'm planning to improve the OSD somewhat, because I'm pretty sure it's currently unreadable in any even vaguely complicated processing chain.

Shiandow
26th October 2016, 21:50
Btw: This clip still screams for a more aggressive deband filter. :p

If it had a voice it'd be screaming all right, not sure if it'd still be intelligible.

aufkrawall
26th October 2016, 21:57
It doesn't look too messy to me :) :
http://abload.de/img/mpdncrs58.png (http://abload.de/image.php?img=mpdncrs58.png)

What's messy is when I edit my script chains for various scaling factors and fps, but I guess that's simply the price to pay for having all the freedom one needs.
Somehow clicking through less dialogues would be nice, but I have no idea if less clicking would work without undesired side effects.

Edit: Any idea why SSIM isn't used?
http://abload.de/thumb/ssimw5s44.png (http://abload.de/image.php?img=ssimw5s44.png)
Adding Resizer before doesn't help.

Shiandow
27th October 2016, 00:07
It doesn't look too messy to me :) :
What's messy is when I edit my script chains for various scaling factors and fps, but I guess that's simply the price to pay for having all the freedom one needs.
Somehow clicking through less dialogues would be nice, but I have no idea if less clicking would work without undesired side effects.


Inside the script chain you can right click and use the "Configure..." item to go through the script chains, but I agree that it isn't ideal. Maybe adding this somewhere in the main context menu would help? *

Edit: Any idea why SSIM isn't used?
http://abload.de/thumb/ssimw5s44.png (http://abload.de/image.php?img=ssimw5s44.png)
Adding Resizer before doesn't help.

Looks like SSSR already resized the image to the target size, there's simply nothing left to do for SSIM. Maybe you meant to put SSIM after the NNEDI3 prescaler?

*EDIT: Ah I see what's happening, the "Conditionals" don't 'publish' their subfilters, that's unfortunate. I also noticed you pretty much always use a script chain inside the conditional, might make more sense to just make that the default and turn Conditionals into a kind of Script Chain.

BetA13
27th October 2016, 07:33
It doesn't look too messy to me :) :
http://abload.de/img/mpdncrs58.png

What's messy is when I edit my script chains for various scaling factors and fps, but I guess that's simply the price to pay for having all the freedom one needs.
Somehow clicking through less dialogues would be nice, but I have no idea if less clicking would work without undesired side effects.



may i ask, how do you get the Render Chain window to display? that is really helpfull, i need this :)

greetz

Anima123
27th October 2016, 07:39
may i ask, how do you get the Render Chain window to display? that is really helpfull, i need this :)

greetz

Ctrl + K, which is a well known shortcut from the start.

Shiandow
27th October 2016, 17:36
What's messy is when I edit my script chains for various scaling factors and fps, but I guess that's simply the price to pay for having all the freedom one needs.
Somehow clicking through less dialogues would be nice, but I have no idea if less clicking would work without undesired side effects.


The following feature might save a few clicks:

http://imgur.com/hxM0Gnt.jpg

It's even backwards compatible, although I'll likely deprecate the old method at some point (but not before I get around to improving the conditional filter's GUI).

I'll probably include this with the next extension update.

Garteal
27th October 2016, 19:55
I personally just use a Script Group with Deband, SuperChromaRes and SSSR and call it a day, but it looks like I should spend some time exploring the wonderful system you've created!

Shiandow
27th October 2016, 20:05
I personally just use a Script Group with Deband, SuperChromaRes and SSSR and call it a day, but it looks like I should spend some time exploring the wonderful system you've created!

To be fair, that's pretty much what I use for most videos as well (although I put in SSIM downscaling as well). You might want to try the new Bilateral on it's own some time.

aufkrawall
27th October 2016, 20:19
I think new biliteral could be very interesting for videos which have higher resolution, e.g. at least 720p. I suppose the higher the resolution, the less likely are crucial errors. Or the errors would be much smaller and hard to notice.

BetA13
28th October 2016, 07:01
Ctrl + K, which is a well known shortcut from the start.

Thanks a lot.

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

I also have an rather strange need/ question.

is there a way to manually set the RGB Output levels?
i really would dig an option like madvr has:
https://abload.de/img/4eos79.png

i have a, well, lets call it a strange TV and setting levels from 4 (5) - 255 is perfect for me. no details lost and colors are great..

with 0 - 255 i have lost details.
with 16 - 255, the darks get crushed.

im really happy with mpdn, but this is one option im missing..
Would this be possible? Or maybe, is there a other way i can handle this? (plugin, shader,etc)..

greetz :)

Shiandow
28th October 2016, 12:07
I also have an rather strange need/ question.

is there a way to manually set the RGB Output levels?
i really would dig an option like madvr has:
https://abload.de/img/4eos79.png

i have a, well, lets call it a strange TV and setting levels from 4 (5) - 255 is perfect for me. no details lost and colors are great..

with 0 - 255 i have lost details.
with 16 - 255, the darks get crushed.

im really happy with mpdn, but this is one option im missing..
Would this be possible? Or maybe, is there a other way i can handle this? (plugin, shader,etc)..

greetz :)

Something like that can easily be done using a custom shader. The following code should do the trick:


sampler s0 : register(s0);

#define BlackLevel 4
#define WhiteLevel 255

// -- Main Code --
float4 main(float2 tex : TEXCOORD0) : COLOR{
float4 c0 = tex2D(s0, tex);

c0.rgb = (c0.rgb*255.0 + BlackLevel) / (WhiteLevel + BlackLevel);

return c0;
}


Creating a new shader from MPDN itself is somewhat tedious, but you can just put the code in a file called "FixOutputLevels.hlsl" or something and load it in an Image Processing script. If you then want to change the code you can edit it from within MPDN.

BetA13
28th October 2016, 23:26
niceee.. thanks a lot Shiandow !1!!
works just like expected :)
im really a noob in this kind of thing, so dont mind me, haha...I do think i want to get into this a bit. i love fiddling with those shaders and reshade also..

Thanks..

Shiandow
31st October 2016, 00:55
Hi everyone,

Since recently I'm now also involved in the development of MPDN itself. I'm still getting familiar with the code, so any fundamental changes will be a ways off.

I did, however, manage to make some small improvements to MPDN's rendering. To quote the changelog:

Improved fluid motion by timing frames more accurately
Improved dithering methods (especially ordered dithering)
Fixed: Pixels were misaligned when there was an unequal number of blank lines on either side of the image.


These changes require some testing (especially the timing related changes), so they've been added into a new Test Build (https://mpdn.zachsaw.com/Test%20Builds/3603/). If things go well these changes will eventually be included in the next release. Please let us know if the quality improves noticeably / barely / not at all, or more importantly if this new version causes any problems.

Cheers,
Shiandow

Anima123
31st October 2016, 02:19
Playback is more smooth with the new test version, with or without fluid motion, which I'm guessing is partly due to the more accurate time frames changes.

MPDN used to play 59.97 fps files with some jagger, now it's all good with the latest test build. Shiandow, I'd say it's the right direction. BTW, recently MPDN became my main video-payer, so any improvements are appreciated.

Edit: As for the dithering, since I'm not sensitive to it, there's not much to mention. Where to look at exactly?

Shiandow
31st October 2016, 02:36
Edit: As for the dithering, since I'm not sensitive to it, there's not much to mention. Where to look at exactly?

Yeah, it's kind of hard to see, especially when everything is working correctly. The previous dithering method occasionally created some ugly patterns, which were especially visible in dark gradients. It also added more noise than the current method.

Zachs
31st October 2016, 09:27
Hi everyone,

Since recently I'm now also involved in the development of MPDN itself. I'm still getting familiar with the code, so any fundamental changes will be a ways off.

I did, however, manage to make some small improvements to MPDN's rendering. To quote the changelog:

Improved fluid motion by timing frames more accurately
Improved dithering methods (especially ordered dithering)
Fixed: Pixels were misaligned when there was an unequal number of blank lines on either side of the image.


These changes require some testing (especially the timing related changes), so they've been added into a new Test Build (https://mpdn.zachsaw.com/Test%20Builds/3603/). If things go well these changes will eventually be included in the next release. Please let us know if the quality improves noticeably / barely / not at all, or more importantly if this new version causes any problems.

Cheers,
Shiandow

Thanks Shiandow! You're a valuable dev to any project, as always!

aufkrawall
31st October 2016, 13:10
Could you guys please provide me with a hint how to use SSIM downscaling after using image doubling/quadrupling?
imho it would really be most intuitive if just adding SSIM after an image doubler in the script chain would do the trick.

Shiandow
31st October 2016, 13:29
Could you guys please provide me with a hint how to use SSIM downscaling after using image doubling/quadrupling?
imho it would really be most intuitive if just adding SSIM after an image doubler in the script chain would do the trick.

Well, that should do the trick. Is there some case where it's not working?

Yeah, it's kind of hard to see, especially when everything is working correctly. The previous dithering method occasionally created some ugly patterns, which were especially visible in dark gradients. It also added more noise than the current method.

To expand on that, here is a pretty pathological example: old dithering (http://i.imgur.com/SkJLAB3.png), new dithering (http://i.imgur.com/v01LLnO.png). In most cases the ordered dithering wasn't that bad, but even in the best of cases the new method should be better.

Thanks Shiandow! You're a valuable dev to any project, as always!

You're welcome :).

aufkrawall
31st October 2016, 13:43
Well, that should do the trick. Is there some case where it's not working?

Hm, what does the arrow before Triangle indicate then?
http://abload.de/img/ssr0du94.png (http://abload.de/image.php?img=ssr0du94.png)
If it was just about offset correction, shouldn't it point to the left and right?