INTERACT FORUM

Please login or register.

Login with username, password and session length
Advanced search  
Pages: [1]   Go Down

Author Topic: Display mode switching  (Read 8510 times)

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Display mode switching
« on: April 17, 2013, 08:23:59 pm »

I really like that Media Center's display mode changer has the option to pause for a specified time when switching refresh rates - in my case it takes about a second for my display to switch, and this avoids any missed audio at the start of a video - I'm running audio through HDMI, so the refresh rate change also cuts off the audio.

However, it seems that Media Center is not aware of when madVR is applying IVTC to content.

My display supports 23Hz, 50Hz, and 59Hz inputs, and is configured to switch accordingly.
Film content (23/24fps) switches to 23Hz, NTSC content (29/30/59/60fps) switches to 59Hz, and PAL content (25/50fps) switches to 50Hz.

However when IVTC is activated, madVR's refresh rate switcher will automatically change the display to 23Hz if it detects film-type content.
In fact, I have madVR set to force film mode by default, as the majority of content I watch is film, and almost never video. On the rare occasion that I do watch video-type content, I leave the file tagged with [deint=video] so that madVR doesn't attempt IVTC. (or I use the Ctrl+Alt+Shift+T shortcut if something I thought was film-type actually turns out to be video)


But madVR's switcher doesn't have a delay option, and it conflicts with Media Center's switcher if both are enabled - you get the delay and it switches to the correct refresh rate, but if it's IVTCed, the display is often left at 23Hz when playback is stopped, rather than being restored to 59Hz. Fixed in madVR 0.86.3


Would it be possible to update the Media Center switcher so that IVTC content uses the refresh rate settings for Film? (the 23.976fps section for NTSC content, and 24fps section for PAL content would make the most sense)
Logged

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14463
  • I won! I won!
Re: IVTC not switching refresh rate.
« Reply #1 on: April 18, 2013, 05:03:42 am »

Yeah - MC does not know about the content once playback starts.  You however can tag the files in the Playback Info field and these values override the general settings.

eg on one set of my files I have the following settings "(1:5)(15:DisplaySettings)(15:1920x1080x32x24)(9:CropEdges)(1:1)(12:CenterOffset)(3:0,0)(11:AspectRatio)(1:0)(11:ZoomPercent)(3:100)" .  These values were created selecting values by right clicking on the playing video --> Windows.  Once I was happy with the settings I just copied the values to other like files.
Logged
JRiver CEO Elect

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: IVTC not switching refresh rate.
« Reply #2 on: April 18, 2013, 01:32:52 pm »

Thanks, I didn't know you could specify a refresh rate that way. But the simpler solution for now is to just disable Media Center's switcher, and let madVR handle it.
Previously I had just left both enabled (madVR's settings are global, and I don't use MC exclusively) but recently it's started switching to 23Hz after playback has stopped, which is what got me to look into it in the first place.

With the tight integration of madVR and Video Clock, I'm surprised that there is not similar support for IVTC.
Logged

jmone

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 14463
  • I won! I won!
Re: IVTC not switching refresh rate.
« Reply #3 on: April 18, 2013, 03:36:03 pm »

It's more about the evolution of display rate switching.  The first was the Display Info Field, then the Global Settings then madVR came along then finally video clock.  The first two do it prior to playback kick off which is great.  I don't think there has been enough demand for MC to implement any further refinement on the refresh rate for some time.
Logged
JRiver CEO Elect

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: IVTC not switching refresh rate.
« Reply #4 on: April 25, 2013, 04:11:47 am »

Just bumping this again to see if there's any way we can have madVR talk with Media Center about the status of IVTC.
I would rather let Media Center handle the switching, and not have to manually set refresh rates for files.


And on a related note, I have just been doing some more testing on how refresh rate switching is handled.

If I set refresh rate manually in the Nvidia control panel, I get the following results, as reported by the madVR OSD:
  • 60Hz - 59.999..Hz
  • 59Hz - 59.939..Hz
  • 50Hz - 49.999..Hz
  • 24Hz - 24.000..Hz
  • 23Hz - 23.970..Hz
Everything works as expected, though the clock for 23Hz is not that good. I can't adjust it though, because my display only accepts strict EIA/CEA timings.
 
If I let Media Center switch the refresh rate, however, I get these results:
  • 60Hz - 59.939..Hz
  • 59Hz - 59.939..Hz
  • 50Hz - 49.999..Hz
  • 24Hz - 23.970..Hz
  • 23Hz - 23.970..Hz
The "Composition Rate" is set correctly in the madVR OSD, but the refresh rate is not. Fixed in madVR 0.86.3

However, if I set Media Center to switch to "Desktop Settings" it does restore to 24/60Hz correctly. (depending on whatever the desktop is set to beforehand)
This problem also exists in madVR's switcher, but madVR's switcher is not able to restore me to 60Hz on the desktop when playback is stopped - it restores me to "59Hz". Fixed in madVR 0.86.3


This is only a problem on Windows 8 - and for the longest time I have simply assumed it was a driver bug that didn't allow applications to switch to 24/60Hz.
But as I have found out, Media Center is capable of switching to 24/60Hz correctly, but only when it's set to switch to "Desktop Settings", and the desktop is at 24/60Hz.
But if "Desktop Settings" manages to switch to those refresh rates correctly, surely that means this problem is fixable.
Logged

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: IVTC not switching refresh rate.
« Reply #5 on: April 28, 2013, 03:49:48 am »

Bump.
Logged

kstuart

  • Citizen of the Universe
  • *****
  • Posts: 1955
  • Upgraded to MC22 Master using preorder discount
Re: IVTC not switching refresh rate.
« Reply #6 on: April 28, 2013, 01:38:43 pm »

Quote
60Hz - 59.939..Hz
59Hz - 59.939..Hz

I've been doing a google search on related issues, and came across a number of threads mentioning that Windows does this internally.

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: IVTC not switching refresh rate.
« Reply #7 on: April 28, 2013, 01:53:43 pm »

I've been doing a google search on related issues, and came across a number of threads mentioning that Windows does this internally.
I found a knowledge base article that suggested Windows 7 did this if the display does not explicitly define 60Hz rather than just 59.94 in the EDID, but I did not have that issue there - it's only happening on Windows 8.

Both the Nvidia control panel, and Windows' options themselves switch to 24/60Hz correctly though - so it's not that the OS doesn't think my display can't handle them.
And Media Center is able to switch to 24Hz or 60Hz if set to Desktop settings and the desktop was at 24/60 prior to launching MC, rather than 1920x1080x32x24/60 where it will always switch to 23/59Hz.

So somehow Media Center is able to switch to 24/60Hz correctly if it's using Desktop settings, but not if 24/60Hz is set explicitly.
I guess something changed with how refresh rate switching is handled in Windows 8, but I couldn't tell you what, and it doesn't seem to be exclusive to Nvidia cards so it's not a driver bug.
Logged

Matt

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 42372
  • Shoes gone again!
Re: IVTC not switching refresh rate.
« Reply #8 on: April 29, 2013, 12:09:32 pm »

Would it be possible to update the Media Center switcher so that IVTC content uses the refresh rate settings for Film? (the 23.976fps section for NTSC content, and 24fps section for PAL content would make the most sense)

How does madVR decide if it's going to apply IVTC to a file?

Would it work if MC knew this (in a library field), then configured madVR depending on it and accounted for it in the Display Settings.  IMadVRSettings would need to expose IVTC stuff for this to work.
Logged
Matt Ashland, JRiver Media Center

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10931
Re: IVTC not switching refresh rate.
« Reply #9 on: April 29, 2013, 12:18:56 pm »

madVR doesn't really know, the user has to tell it (its on madshi's list to do auto-detection)

You can either do that by pressing a hotkey combination manually during playback, or putting a certain tag in the filename.

Being able to put this into a library field and then MC automatically enabling this in madVR sounds like a good solution to me. Not sure if its possible to trigger this automatically today in the API, so madshi would need to weigh in here.
Logged
~ nevcairiel
~ Author of LAV Filters

madshi

  • Galactic Citizen
  • ****
  • Posts: 376
Re: IVTC not switching refresh rate.
« Reply #10 on: April 29, 2013, 12:46:10 pm »

Yeah, as nevcairiel already said, film vs video auto-detection is on my to-do list. The problem with this is that the final solution might decide this per pixel or per block. Which means that some parts of the frame might be IVTC'ed while other parts might be deinterlaced with a video mode deinterlacing algorithm. Furthermore this might change in the middle of playback. Also, when IVTC is turned on, madVR automatically detects the cadence. In theory it's possible that e.g. some Anime uses a mixture of different cadences including even 2:2. In such a case 24fps would not do because 60i 2:2 would result in 30fps after IVTC.

In short: I'm not really sure how to handle this right now with MC. I guess I could give MC control over what madVR does (IVTC or not), but this will change in future versions. Also I could notify MC about the cadence madVR detected, but that will also change in future versions. It's all not final yet. So I wonder if this is a good time to add interfaces for this stuff, when it's still changing?

In the long run I suppose it would be the best solution to let madVR auto-detect everything and to have madVR notify MC about what it detected. Then MC could adjust the refresh rate accordingly. But to be honest, I wonder if the media player is the right one to change refresh rates. Wouldn't madVR be better suited for that job?
Logged

Hendrik

  • Administrator
  • Citizen of the Universe
  • *****
  • Posts: 10931
Re: IVTC not switching refresh rate.
« Reply #11 on: April 29, 2013, 12:50:22 pm »

The player (or at least a player like MC which keeps a library of the video files with metadata) can do the refresh rate change before the DirectShow graph is built, which gives me a slightly smoother experience (it can apply a small delay after change before playback starts, for example, or use the time the display needs to change to build the graph and prepare playback)

I realize some parts of this could also be implemented in madVR, but the video renderer controlling the whole playback like this always seemed like a slightly bad idea to me.

Not that i personally care much about IVTC, in PAL-land using 50Hz is fine for both Video or Film content, and if i happen to run into a NTSC telecined file, i manually post-process it, so this stuff doesn't end up in my library.
Logged
~ nevcairiel
~ Author of LAV Filters

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: IVTC not switching refresh rate.
« Reply #12 on: April 29, 2013, 12:58:59 pm »

When madVR handles the switching it is (mostly) automatic for me.

I have it set to force Film Mode by default, so most (all?) interlaced content gets output at 24p by default.
Similarly, I have the "treat 25p as 24p" option enabled, so that gets output as 24p too.

If I encounter video-based content, I hit Ctrl+Alt+Shift+T a couple of times, and it switches over to video-mode, which will then change the refresh rate to 50/60Hz depending on the source.
If I have encountered video-based content that is part of a television series, I will tag the files with [deint=video] - but that is rare.


So for most files, I don't have to do anything, for a select few, I hit a keyboard shortcut (that can be remapped to something simpler) and for an even smaller number of files, I tag them as being video.

If Media Center were to handle things with tagging, it seems that it would be the other way around, and I would have to tag most of my files, rather than a very small number of files.
Logged

madshi

  • Galactic Citizen
  • ****
  • Posts: 376
Re: IVTC not switching refresh rate.
« Reply #13 on: April 29, 2013, 01:01:30 pm »

Well, fact is that when entering FSE mode, madVR *has* to tell Direct3D which refresh rate to use. Games work the same way, they decide which refresh rate to use. Of course if you disable madVR's display mode switcher, it will simply ask the OS for the current mode and tell Direct3D to reuse that. But by design Microsoft thought that the one going FSE should decide the refresh rate.

From my point of view, all things video are the responsibility of the video renderer. Just some examples why I think that way:

(1) What happens with 3D? In Windows 7 there are 3 different APIs that must be used to put ATI, NVidia and Intel GPUs into HDMI 1.4 3D mode. Should it really be the media player doing all this stuff? If so, every media player will have to implement support for all 3 APIs in order to support 3D playback on all those GPUs.

(2) What happens if madVR some day supports playback of a video over an array of monitors (e.g. 2x2 monitors, one quarter of the video shown by every monitor)? Is it really the job of the media player to set this all up, switch every monitor to the right mode etc?

(3) What about multi monitor setups? madVR has a complex device setup built in which allows to use different settings, different refresh rates, for any connected monitor. Should MC duplicate all the same settings?

(4) What if madVR some day supports things like black/dark frame insertion with 120Hz displays? Would the media player know to switch to 120Hz then if BFI is turned on in madVR?

(5) What if madVR some day supports motion interpolation? Would the media player know to switch to e.g. 48Hz or 72Hz then instead of 24Hz when motion interpolation is turned on in madVR?

Etc etc...
Logged

6233638

  • Regular Member
  • Citizen of the Universe
  • *****
  • Posts: 5353
Re: IVTC not switching refresh rate.
« Reply #14 on: June 07, 2013, 01:17:18 pm »

Well it looks like Madshi has now fixed all the outstanding issues with madVR's display mode switcher in 0.86.3
It now switches to 24/60Hz correctly on Windows 8 rather than outputting 23/59Hz, and the refresh rate is also restored properly when playback is stopped.

Because I am now sending audio to an external DAC rather than passing it through HDMI, I no longer need Media Center's delay option, so I am happy to use madVR's switcher exclusively.
I also agree with Madshi that it would be best if madVR handled all switching, because it already has support for complex setups such as having independent settings for each display connected to the system, and changing to 24p when IVTC is activated.

But I understand that some people will still need the delay option that Media Center's switcher offers, and other people are not able to use madVR at all.
It would be nice if Media Center's built-in switcher could be updated to support proper refresh rate switching on Windows 8. (perhaps you could ask Madshi to find out what needs changed?)


I see that someone else was reporting issues with Media Center's switcher recently too: http://yabb.jriver.com/interact/index.php?topic=81157.msg552993#msg552993
In this case, it's a lot worse than I had experienced. On my system it just meant that I had to put up with bad 23Hz timings (24Hz is almost perfect) but it seems that Blaine78's display doesn't support 23Hz at all, so it stays at 60Hz!
Logged
Pages: [1]   Go Up