Automatic Refreshrate Changer (2 Viewers)

gibman

Retired Team Member
  • Premium Supporter
  • October 4, 2006
    2,998
    1,372
    Aarhus
    Home Country
    Denmark Denmark
    Here is my setup from my livingroom htpc.

    It has projector and a LCD screen hooked up to it.
    That's why I use external cmd files along with powerstrip.
    one powerstrip command per. screen.
    if u only have one screen u can avoid the cmd file and have the pstrip cmd line directly in the xml file.

    anyways here it is.

    <entry name="autochangerefreshrate">yes</entry>
    <entry name="cinema_ext">C:\\24hz.cmd</entry>
    <entry name="pal_ext">C:\\25hz.cmd</entry>
    <entry name="ntsc_ext">c:\\30hz.cmd</entry>
    <entry name="tv_ext">c:\\25hz.cmd</entry>

    <entry name="cinema_fps">23.976;24</entry>
    <entry name="pal_fps">25</entry>
    <entry name="ntsc_fps">29.97;30</entry>
    <entry name="tv_fps">25</entry>
    <entry name="cinema_hz">24</entry>
    <entry name="pal_hz">25</entry>
    <entry name="ntsc_hz">30</entry>
    <entry name="tv_hz">25</entry>
    <entry name="default_hz">pal_hz</entry>
    <entry name="use_default_hz">no</entry>
    <entry name="devicereset">no</entry>


    24hz.cmd
    "C:\Program files\PowerStrip\PStrip.exe" /target:1 /T:1920,638,44,148,1080,4,5,36,74250,528
    "C:\Program files\PowerStrip\PStrip.exe" /target:2 /T:1920,638,44,148,1080,4,5,36,74250,528

    25hz.cmd
    "C:\Program files\PowerStrip\PStrip.exe" /target:1 /T:1920,528,44,148,1080,5,10,30,74250,542
    "C:\Program files\PowerStrip\PStrip.exe" /target:2 /T:1920,528,44,148,1080,5,10,30,74250,542

    30hz.cmd
    "C:\Program files\PowerStrip\PStrip.exe" /target:1 /T:1920,88,44,148,1080,5,10,30,74250,536
    "C:\Programmer\PowerStrip\PStrip.exe" /target:2 /T:1920,88,44,148,1080,5,10,30,74250,536

    if your rig has problems with dealing with the GPU resets when using ATI profiles etc. then I really recommend the pstrip way.

    Ill try my to setup livingroom htpc with ati profiles too, so see how stable it all is.

    /gibman
     

    stoked

    MP Donator
  • Premium Supporter
  • December 14, 2007
    297
    8
    Home Country
    Canada Canada
    Nvidia Commandline format

    FYI for Nvidia users:

    Format:
    rundll32.exe NvCpl.dll,dtcfg setmode <display#> <hres> <vres> <bpp> <freq>


    Example to set Display #1 to 1920x1080@60Hz
    rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60
     

    edterbak

    Portal Pro
    March 4, 2008
    2,114
    1,176
    Home Country
    Netherlands Netherlands
    I gave it a try Gibman. It seems to work OK. :D But I cant be sure..... The reason for that is that I am plagued by some other issue. It seems that reclock or some other programm which I tried and deleted already is still doing its thing.. Weird thing it is. If I dissable and uninstall reclock + any other plugin, its still changing refreshrate for some reason. But, Im gonna try a fresh OS + MP setup soon.
    Nevertheless I think I dont have problems because of your program Gibman. :)
    Standard refreshrate is 50 Hz. When I play a movie with 23.9/24fps it switches. When I play a 29.9fps dvd, it switches as well. And it switches back after Stop.

    >> in the text in the first post, you should also mention to put core.dll in the root directory of MP. Its obvious that its supposed to go there, but its not mentioned. :)
     

    robyf

    Retired Team Member
  • Premium Supporter
  • June 20, 2005
    1,076
    278
    53
    Bolzano
    Home Country
    Italy Italy
    It seems to work without any problems using your configuration with powerstrip (except I turn back to default when stopping media play) so great work gibman.
     

    stoked

    MP Donator
  • Premium Supporter
  • December 14, 2007
    297
    8
    Home Country
    Canada Canada
    Seems to be working well my settings for Nvidia:


    <entry name="autochangerefreshrate">yes</entry>
    <entry name="cinema_ext">c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 24</entry>
    <entry name="pal_ext">c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60</entry>
    <entry name="ntsc_ext">c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60</entry>
    <entry name="tv_ext">c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60</entry>
    <entry name="cinema_fps">23.976;24</entry>
    <entry name="pal_fps">25</entry>
    <entry name="ntsc_fps">29.97;30</entry>
    <entry name="tv_fps">60</entry>
    <entry name="cinema_hz">24</entry>
    <entry name="pal_hz">25</entry>
    <entry name="ntsc_hz">30</entry>
    <entry name="tv_hz">25</entry>
    <entry name="default_hz">tv_hz</entry>
    <entry name="use_default_hz">no</entry>
    <entry name="devicereset">no</entry>

    I don't have a 50Hz setting setup yet, so I just have 60hz and 24hz.
     

    gibman

    Retired Team Member
  • Premium Supporter
  • October 4, 2006
    2,998
    1,372
    Aarhus
    Home Country
    Denmark Denmark
    It's very important that the xyz_hz keys are 100% matching those used from the nvidia/ati profiles.
    Otherwise the refresh rate change mechanism can't be trusted.

    ex.

    u have 2 nvidia profiles that does (24hz and 60hz);

    c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 24
    c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60

    used like this;
    cinema_ext is 24hz
    pal_ext is 60hz
    ntsc_ext is 60hz
    tv_ext is 60hz

    So u need to change these keys to match the stuff from above.
    <entry name="cinema_hz">24</entry>
    <entry name="pal_hz">60</entry>
    <entry name="ntsc_hz">60</entry>
    <entry name="tv_hz">60</entry>

    is this clear enuff ?

    how does stuff work in vista.
    using the pstrip way is a lot more "easy" on the code.
    So I guess this would work also.
    But calling device resetting ATI nvidia profiles in vista... now how does that work.
    I do not have vista here (thank god), so it is not tested really.

    /gibman


    Seems to be working well my settings for Nvidia:


    <entry name="autochangerefreshrate">yes</entry>
    <entry name="cinema_ext">c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 24</entry>
    <entry name="pal_ext">c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60</entry>
    <entry name="ntsc_ext">c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60</entry>
    <entry name="tv_ext">c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60</entry>
    <entry name="cinema_fps">23.976;24</entry>
    <entry name="pal_fps">25</entry>
    <entry name="ntsc_fps">29.97;30</entry>
    <entry name="tv_fps">60</entry>
    <entry name="cinema_hz">24</entry>
    <entry name="pal_hz">25</entry>
    <entry name="ntsc_hz">30</entry>
    <entry name="tv_hz">25</entry>
    <entry name="default_hz">tv_hz</entry>
    <entry name="use_default_hz">no</entry>
    <entry name="devicereset">no</entry>

    I don't have a 50Hz setting setup yet, so I just have 60hz and 24hz.
     

    stoked

    MP Donator
  • Premium Supporter
  • December 14, 2007
    297
    8
    Home Country
    Canada Canada
    It's very important that the xyz_hz keys are 100% matching those used from the nvidia/ati profiles.
    Otherwise the refresh rate change mechanism can't be trusted.

    ex.

    u have 2 nvidia profiles that does (24hz and 60hz);

    c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 24
    c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60

    used like this;
    cinema_ext is 24hz
    pal_ext is 60hz
    ntsc_ext is 60hz
    tv_ext is 60hz

    So u need to change these keys to match the stuff from above.
    <entry name="cinema_hz">24</entry>
    <entry name="pal_hz">60</entry>
    <entry name="ntsc_hz">60</entry>
    <entry name="tv_hz">60</entry>

    is this clear enuff ?

    how does stuff work in vista.
    using the pstrip way is a lot more "easy" on the code.
    So I guess this would work also.
    But calling device resetting ATI nvidia profiles in vista... now how does that work.
    I do not have vista here (thank god), so it is not tested really.

    /gibman

    Ah, I thought those <entry name=tv_hz>60</entry> lines were to match what MP finds the framerate of a media file to a nice label.
     

    gibman

    Retired Team Member
  • Premium Supporter
  • October 4, 2006
    2,998
    1,372
    Aarhus
    Home Country
    Denmark Denmark
    No, those keys are defined as;

    <entry name="cinema_fps">23.976;24</entry>
    <entry name="pal_fps">25</entry>
    <entry name="ntsc_fps">29.97;30</entry>
    <entry name="tv_fps">25</entry>

    ..and should never really be altered.
    instead of hardcoding these values I thought it would be nicer to have them editable.

    /gibman

    It's very important that the xyz_hz keys are 100% matching those used from the nvidia/ati profiles.
    Otherwise the refresh rate change mechanism can't be trusted.

    ex.

    u have 2 nvidia profiles that does (24hz and 60hz);

    c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 24
    c:\\windows\\system32\\rundll32.exe NvCpl.dll,dtcfg setmode 1 1920 1080 32 60

    used like this;
    cinema_ext is 24hz
    pal_ext is 60hz
    ntsc_ext is 60hz
    tv_ext is 60hz

    So u need to change these keys to match the stuff from above.
    <entry name="cinema_hz">24</entry>
    <entry name="pal_hz">60</entry>
    <entry name="ntsc_hz">60</entry>
    <entry name="tv_hz">60</entry>

    is this clear enuff ?

    how does stuff work in vista.
    using the pstrip way is a lot more "easy" on the code.
    So I guess this would work also.
    But calling device resetting ATI nvidia profiles in vista... now how does that work.
    I do not have vista here (thank god), so it is not tested really.

    /gibman

    Ah, I thought those <entry name=tv_hz>60</entry> lines were to match what MP finds the framerate of a media file to a nice label.
     

    stoked

    MP Donator
  • Premium Supporter
  • December 14, 2007
    297
    8
    Home Country
    Canada Canada
    No, those keys are defined as;

    <entry name="cinema_fps">23.976;24</entry>
    <entry name="pal_fps">25</entry>
    <entry name="ntsc_fps">29.97;30</entry>
    <entry name="tv_fps">25</entry>

    ..and should never really be altered.
    instead of hardcoding these values I thought it would be nicer to have them editable.

    /gibman

    Ahhh, I didn't even realize there's was cinema_fps and cinema_hz! Must be too tired =D BTW, regarding Vista, from what I gathered that Nvidia command doesn't work on Vista. I don't run Vista so it's not a problem for me.
     

    Users who are viewing this thread

    Top Bottom