Kodi DSPlayer – DirectShow Player for Windows

  Thread Rating:
  • 30 Vote(s) - 4.4 Average
  • 1
  • 2
  • 3
  • 4
  • 5
Post Reply
oldpoem Offline
Posting Freak
Posts: 843
Joined: Jul 2010
Reputation: 13
Post: #46
(2015-04-03 20:23)Warner306 Wrote:  
(2015-04-03 20:03)hentai23 Wrote:  thats epic sauce aracnoz, so a little update on the GUI lag ....its still there and ive tried using less demanding upscale renderers such as jinc 3 , and unchecking wait till render queue is full as well as setting frame prerender to 1 for both exclusive and windowed mode ....no beef , still am getting Gui lag , this is exspecially noticeable when i exit into home screen while video is still playing in background , i hope this big issue can be fixed , as said this is a madvr issue , i hope madshi can help with this one , since its something to do how madvr works with gui elements , ive noticed this behavior with poptlayers onscreen gui as well


doesnt matter what skin you use , be it xperience1080 or cirrus , aeon mq etc


as well as all of the low quality settings are unchecked and im not using refreshrate changers such as reclock either that would mess with the refreshrate of the gui , so i have no freakin clue, again this happens with potplayers onscreen gui as well, the easiest way is to change the volume up and down to see the delay in GUI element rendering

It's been said before by madshi; you can't completely eliminate the gui lag because of the way madVR pre-renders frames. Unless this feature is removed, madVR will continue to work this way. I am sure this is done to improve the quality of the image. Almost all compromises in madVR are made in the name of picture quality.

The problem you describe would be considered a feature request for future versions of madVR. But you would have to make this request in the official madVR forum at Doom9. I don't think things will ever be different with current madVR releases.

Try this.


Set present frame in advance to 1 in MadVR (Exclusive mode & Non-Exclusive , the one you're gonna use, Mine use Exclusive)
Disable MadVR refresh rate change.
Enable Kodi Auto-adjust refresh rate. Mine set to start/stop & 4.6s. Yours can be varied.

With Kodi, you don't wamt tp use madVR refresh rate change. Because after 1 playback stop sometimes madVR would stuck in that mode. That's meant GUI would probably render on madVR 24p mode which is not good. It could be help if you experienced GUI lag when playback stop. GUI when playback is ongoing is different matter.

So use Kodi built-in refresh rate change instead and it works the same.
(This post was last modified: 2015-04-04 06:53 by oldpoem.)
find quote
Warner306 Offline
Posting Freak
Posts: 2,566
Joined: Feb 2014
Reputation: 88
Location: Canada
Post: #47
(2015-04-04 02:58)aracnoz Wrote:  Yesterday I worked on a little surprise, now the gui that manage madVR's settings may not be enough because we want to be able to customize the settings per resolution and then here's the surprise

[Image: 2ppev7q.png]

default settings saved per resolution, so I think that now it's very complete

the rule at playstart it's

try to load defaults per file's settings
if there is not success, try to load defaults per resolution's settings
if there is not success, load defaults global settings

maybe there is to add the resolution UHD

Now I would like your opinion, these are the rules for determining the various resolutions

would we change something?

Code:
if (height> 0 && height <= 600)
  res = 540;
if (height> 600 && height <= 1000)
  res = 720;
if (height> 1000)
  res = 1080;

I also think using height would do the trick:

if (srcHeight >= 481) and (srcHeight <= 576) "576p"

if (srcHeight >= 577) and (srcHeight <= 720) "720p"

if (srcHeight >= 721) and (srcHeight <= 1080) "1080p"

if (srcHeight >= 1081) and (srcHeight <= 2160) "UHD"

else if (srcHeight <= 575) "SD"

Edit: to remove width variable.
(This post was last modified: 2015-04-04 07:13 by Warner306.)
find quote
Warner306 Offline
Posting Freak
Posts: 2,566
Joined: Feb 2014
Reputation: 88
Location: Canada
Post: #48
(2015-04-04 02:38)hentai23 Wrote:  i was hoping for a ffdshow less option , since i dont use ffdshow for anything else since lav filters does it all...except the audio leveling like what potplayers audiocodec/transform does

You could use a DirectSound device with the Windows mixer. But, like oldpoem said, ffdshow audio would do a better job. I don't think it eats up a lot of resources sitting on your computer. It wouldn't make sense to add such a mixer to DSPlayer when there are already filters that do a fine job.
find quote
oldpoem Offline
Posting Freak
Posts: 843
Joined: Jul 2010
Reputation: 13
Post: #49
(2015-04-04 06:43)Warner306 Wrote:  I also think using height would do the trick:

if (srcHeight >= 481) and (srcHeight <= 576) "576p"

if (srcHeight >= 577) and (srcHeight <= 720) "720p"

if (srcHeight >= 721) and (srcHeight <= 1080) "1080p"

if (srcHeight >= 1081) and (srcHeight <= 2160) "UHD"

else if (srcHeight <= 575) "SD"

Edit: to remove width variable.

576 is height for PAL SD. So I wouldn't separate it.
find quote
aracnoz Offline
Senior Member
Posts: 282
Joined: May 2012
Reputation: 60
Post: #50
guys this morning I realized that kodi has it's own procedure for tags 720p, 1080p, etc etc

so I followed the rules of kodi, now this it's the rule

Code:
if (iWidth == 0 || iHeight == 0)
    res =  0;
  else if (iWidth <= 720 && iHeight <= 480)
    res = 480;
  // 720x576 (PAL) (768 when rescaled for square pixels)
  else if (iWidth <= 768 && iHeight <= 576)
    res = 576;
  // 960x540 (sometimes 544 which is multiple of 16)
  else if (iWidth <= 960 && iHeight <= 544)
    res = 540;
  // 1280x720
  else if (iWidth <= 1280 && iHeight <= 720)
    res = 720;
  // 1920x1080
  else if (iWidth <= 1920 && iHeight <= 1080)
    res = 1080;
  // 4K
  else if (iWidth * iHeight >= 6000000)
    res = 2160;
  else
    res = 0;

  if (res == 480 || res == 540 || res == 576)
    madvr_res = MADVR_RES_SD;

  if (res == 720)
    madvr_res = MADVR_RES_720;

  if (res == 1080)
    madvr_res = MADVR_RES_1080;

  if (res == 2160)
    madvr_res = MADVR_RES_2160;

  return madvr_res;
find quote
madshi Offline
Junior Member
Posts: 42
Joined: Aug 2011
Reputation: 13
Post: #51
Sorry, but all those width/height tests so far are no good. E.g. anamorphic PAL after stretching ends up as 1024x576. That is still PAL SD.

The better solution (used by XySubFilter, mpv and XySubFilter) is to take both width and height into account. Here's what madVR does:

Code:
if (width > 1050 || height > 576)
  res = HD;
else
  res = SD;

madVR only needs to differ between SD and HD, to switch to the correct decoding matrix etc. Of course you can add detection for 720p and 1080p and 2160p etc. But always keep in mind that custom encodes often remove the black bars. So e.g. 2.35:1 720p ends up as 1280x540. And 4:3 720p becomes 960x720. Both are still considered HD content, because the original source was 720p. Compare that to anamorphic PAL which is 1024x576. So anamorphic PAL is wider than cropped 4:3 720p, and it has more height than cropped 2.35:1 720p. So you can see that looking at either the height or width alone is no good. You always need to check both. And please do make sure that you don't confuse cropped 720p content with anamorphic PAL.

If I may suggest, consider anamorphic PAL as SD content, and consider 720p sources (even when cropped) as 720p.
(This post was last modified: 2015-04-04 09:14 by madshi.)
find quote
aracnoz Offline
Senior Member
Posts: 282
Joined: May 2012
Reputation: 60
Post: #52
yesterday my brain was running like crazy... this morning, instead does not work as he should

now the build it's done Smile, i don't know if everything's it's alright because there are too many variables

we have to test it

@madshi

in fact 1024x576 in kodi it's tagged as 720p... anyway i must follow the kodi gui tags procedure because if we set an 1024x576 as a SD and then the gui show the tag 720p it will make only confusion
(This post was last modified: 2015-04-04 10:56 by aracnoz.)
find quote
hlina Offline
Junior Member
Posts: 45
Joined: Aug 2012
Reputation: 0
Post: #53
Thanks to all you guys for your great work!

I have switched to dsplayer a couple of years ago in order to make use of frame interpolation (SVP). I was particularly interested to see madVRs smooth motion, so I now tried using madvr, but kodi tends to crash very easily with this option (it just freezes and must be stopped, no entry in the log file). It is enough to press left/right mouse button a few times when playing a video or some keys on the keyboard like , e.g., "B". I am, however, not sure, if I have messed up my setting at some point.

Maybe sombody has already run into this issue and knows a solution?
find quote
aracnoz Offline
Senior Member
Posts: 282
Joined: May 2012
Reputation: 60
Post: #54
@hlina

you can try to lower "how many video frames shall be presented in advance"

in madVR tryicon
find quote
steelman1991 Offline
Donor
Posts: 2,748
Joined: Jan 2009
Reputation: 17
Post: #55
(2015-04-04 11:44)hlina Wrote:  Thanks to all you guys for your great work!

I have switched to dsplayer a couple of years ago in order to make use of frame interpolation (SVP). I was particularly interested to see madVRs smooth motion, so I now tried using madvr, but kodi tends to crash very easily with this option (it just freezes and must be stopped, no entry in the log file). It is enough to press left/right mouse button a few times when playing a video or some keys on the keyboard like , e.g., "B". I am, however, not sure, if I have messed up my setting at some point.

Maybe sombody has already run into this issue and knows a solution?

Just be aware that they do not do the same thing.
find quote
ashlar Offline
Donor
Posts: 2,720
Joined: Mar 2006
Reputation: 44
Post: #56
(2015-04-04 09:31)aracnoz Wrote:  in fact 1024x576 in kodi it's tagged as 720p... anyway i must follow the kodi gui tags procedure because if we set an 1024x576 as a SD and then the gui show the tag 720p it will make only confusion
Then it appears that Kodi does it wrong. If an HD (BT.709 should be its code IIRC) color matrix is applied to a PAL signal, color reproduction is wrong (not hugely so but then again... all the pain to get madVR in Kodi should be worth something).

Also, a PAL anamorphic stream simply is not 720p. Not by any accepted definition.

But all this pales in comparison to my surprise, today, at discovering all the incredible work that has gone on in DSPlayer. I lost sight of it and today I find out you got madVR integration... WOW!!! Thanks so much!
Thanks to madshi, which is making my life happier since getting 1:1 pixel mapping on my old Panasonic 50" plasma monitor. Hats off to you. Big Grin

For troubleshooting and bug reporting please make sure you read this first.
find quote
oldpoem Offline
Posting Freak
Posts: 843
Joined: Jul 2010
Reputation: 13
Post: #57
I'd say for now follow Kodi rules. And raise issue in official Kodi forums.
find quote
vicmanpergar Offline
Fan
Posts: 681
Joined: Aug 2011
Reputation: 7
Post: #58
(2015-04-04 12:01)ashlar Wrote:  
(2015-04-04 09:31)aracnoz Wrote:  in fact 1024x576 in kodi it's tagged as 720p... anyway i must follow the kodi gui tags procedure because if we set an 1024x576 as a SD and then the gui show the tag 720p it will make only confusion
Then it appears that Kodi does it wrong. If an HD (BT.709 should be its code IIRC) color matrix is applied to a PAL signal, color reproduction is wrong (not hugely so but then again... all the pain to get madVR in Kodi should be worth something).

Also, a PAL anamorphic stream simply is not 720p. Not by any accepted definition.

But all this pales in comparison to my surprise, today, at discovering all the incredible work that has gone on in DSPlayer. I lost sight of it and today I find out you got madVR integration... WOW!!! Thanks so much!
Thanks to madshi, which is making my life happier since getting 1:1 pixel mapping on my old Panasonic 50" plasma monitor. Hats off to you. Big Grin

That's interesting... As far as i know, correct me please if i'm wrong, u only need to turn off 16:9 overscan in the set up menu of the Panasonic (Viera V20 here), to get 1:1 pixel mapping. I've always assumed i was getting it.

HTPC
Silverstone Grandia GD05 - Intel i5 3570k -Asus H61M-G Micro-ATX - Unidad Blu-ray
MSI GTX970 4GB GDDR5 - 8 GB RAM DDR3 - AVR Yamaha RX-V473 5.1 - Panasonic Plasma 50'' Viera P50-V20


(This post was last modified: 2015-04-04 13:58 by vicmanpergar.)
find quote
Cinder Offline
Member
Posts: 75
Joined: Dec 2014
Reputation: 0
Post: #59
Has anyone setup a working DSPlayer + madVR + SVP?
I'm trying to do this, but I can't quite get it to work, I've been following Warner306's guide for setting up madVR in DSPlayer, and then got the DSPlayer FFDShow starter pack configs (SVP need FFDShow to run right?), but when using these configs no videos start in Kodi, nothing happens.

The difference I see in mediasconfig compared to the SVP Teams' own configs for Kodi, is that in their config the source is said to be "lavfsplitter", this launches videos, Warner306's config says source is "lavsource", and doesn't manage to launch videos. Using lavfsplitter as source videos manage to start and seem to be using madVR, however I have constant frame drops, probably averaging 1 frame dropped per second. Also splitter is "lavf_splitter" vs "lavsplitter".

Anyone got any ideas of why lavsource doesn't run, and/or what I can do to stop the frame drops? I have ReClock installed and set up - do I need to change something in its settings to avoid the drops?

Also I would like to know if there is a way to do a side-by-side comparison of madVR on and madVR off? I'm having a hard time distinguishing between changes to the image, and in some cases I find there is no difference between madVR and EVR renderers, is it possible that the differences are that small, or are they usually very clear?

Thanks for your awesome work on this player, I have SVP running perfectly since before, and now I'm trying to get some madVR goodness into it as well. I'm curious to see if my A8-7600K with GTX 960 can handle both.
(This post was last modified: 2015-04-04 17:55 by Cinder.)
find quote
aracnoz Offline
Senior Member
Posts: 282
Joined: May 2012
Reputation: 60
Post: #60
i fixed some introduced bug in default save settings

- changes per file were not saved if you only changed the scaling parameters
- were not loaded the default setting for sd

@cinder

for me on videos < 1080p the differences are really clear, with my settings, between EVR and madVR
it is impossible to say otherwise, maybe it's more difficult to notice differences for anyone with a native 1080p video on a fullhd tv

but i want to add something on this because for me it's useless compare two static frame to determine if there is improvement in picture quality, as has been done several times in the past, I think that the images should be seen in motion, this for many aspect. This is my thought, maybe I'm just saying stupid things, let me only say that i'm really happy of madvr performance even over a 1080p
(This post was last modified: 2015-04-04 18:13 by aracnoz.)
find quote
Post Reply