Scythe42's fixes for 1.4.0 (4 Viewers)

Status
Not open for further replies.

FreakyJ

Retired Team Member
  • Premium Supporter
  • July 25, 2010
    4,024
    1,420
    Home Country
    Germany Germany
    Please check the logs now and then if an actually warning is logged. I am interested in how long it takes...
    if there is no new installer tomorrow I will build my own tomorrow evening and I will keep an eye on the logs ;)
     

    HomeY

    Test Group
  • Team MediaPortal
  • February 23, 2008
    6,475
    4,645
    49
    ::1
    Home Country
    Netherlands Netherlands
    We have a winner. I default to 60Hz because that is the standard RR for Windows! Old code defaults to 50Hz. I made this change on purpose because to be frank: you want the UI displayed at 60Hz and only for content use a different RR.

    To solve this MP needs to actually query the refresh rate when starting instead of using a magic number. Unless you have the same value when MP is starting you will notice this. I reverted all magic numbers to Windows defaults where ever possible to provide maximum compatibility with installations.
    Can agree with all the above, if refreshrate change would work with LiveTV & RTSP...

    Attached you'll find the logs when resuming the system without the MCE Remote checked.
    That was a nice improvement. Took about 3-5 seconds before RSS feed started scrolling.

    I'll do some tests with Desktop refresh rate set @ 60Hz and see if it still stutters.
     
    Last edited:

    HomeY

    Test Group
  • Team MediaPortal
  • February 23, 2008
    6,475
    4,645
    49
    ::1
    Home Country
    Netherlands Netherlands
    I'll do some tests with Desktop refresh rate set @ 60Hz and see if it still stutters.
    OK... indeed we have a winner ;)
    Set desktop to 60Hz, started MP -> GUI smooth, RSS feed smooth!
    Although i've got a feeling for 50Hz settings (which needs way less DRR switches for me) it's regression compared to 1.3 Final. :oops:

    Then i thought about LiveTV & RTSP, but just recalled that was fixed also!
    So now we have a working DRR for LiveTV + RTSP, tnx to @doskabouter :D

    ** EDIT **
    And after 18 tries, finally the TV Series error (directly after entering the section):
    Code:
    [2013-04-25 22:33:30,967] [Error  ] [MPMain  ] [ERROR] - OnMessage exception:System.NullReferenceException: Object reference not set to an instance of an object.
      at WindowPlugins.GUITVSeries.TVSeriesPlugin.OnPageDestroy(Int32 new_windowId)
      at MediaPortal.GUI.Library.GUIWindow.OnMessage(GUIMessage message)
    Logs attached.
     
    Last edited:

    HomeY

    Test Group
  • Team MediaPortal
  • February 23, 2008
    6,475
    4,645
    49
    ::1
    Home Country
    Netherlands Netherlands
    Well... i'm starting to get lost again Scythe.
    upgraded my install, set threading to 'no' (XML), set default refreshrate to 60Hz, so would expect a clean start without errors.

    1. after startup:
    Code:
    [2013-04-25 23:15:22,213] [Error  ] [38	   ] [ERROR] - GUIWindow: Error in AllocResources for MediaPortal.GUI.Library.GUIMenuControl - System.InvalidOperationException: Collection was modified; enumeration operation may not execute.
       at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
       at MediaPortal.GUI.Library.GUIMenuControl.AllocResources()
       at MediaPortal.GUI.Library.GUIWindow.AllocResources()
    Logs attached

    2. RSS feed stuttering again & GUI not smooth either, so doesn't seem related to 60Hz refresh rate?
     

    Scythe42

    Retired Team Member
  • Premium Supporter
  • June 20, 2009
    2,065
    2,703
    51
    Berlin
    Home Country
    Germany Germany
    Well... i'm starting to get lost again Scythe.
    upgraded my install, set threading to 'no' (XML), set default refreshrate to 60Hz, so would expect a clean start without errors.
    The error your are seeing is not the one @Sebastiii reported when he uses threading. This is some different stuff. Usually happens when you stuff very quickly after startup of MP, like entering a Window from Basic Home right away. Never found the root cause. Have seen such stuff on startup since at least 1.2.0.
     

    AtTimesPerplexed

    MP Donator
  • Premium Supporter
  • May 8, 2011
    127
    48
    Home Country
    New Zealand New Zealand
    Changing to any other screen (homescreen, pictures etc) results in a mostly blank screen with just the preview window showing.
    Further switching between fullscreen/windowed doesn't fix the glitch.
    Using other skins results in MP hanging completely, or throwing an error box "Can't create D3D device".
    FontEngine wants to render when during the switch the textures are disposed. Naturally this cannot work. Looks like the code for the mini player running is not in like with the rest and keeps trying to render. Should be easy to correct this.

    Fixed. That was quick.:)
     

    Scythe42

    Retired Team Member
  • Premium Supporter
  • June 20, 2009
    2,065
    2,703
    51
    Berlin
    Home Country
    Germany Germany
    2. RSS feed stuttering again & GUI not smooth either, so doesn't seem related to 60Hz refresh rate?
    Maybe there are some other magic numbers I overlooked. Will check.

    Edit: Provided an update in GIT and tied the value to the refresh rate on device creation. Let me know if it work better for you and I can do some cleanup as well (removing it from the UI settings, where it does not belong at all).
     
    Last edited:

    HomeY

    Test Group
  • Team MediaPortal
  • February 23, 2008
    6,475
    4,645
    49
    ::1
    Home Country
    Netherlands Netherlands
    Edit: Provided an update in GIT and tied the value to the refresh rate on device creation. Let me know if it work better for you and I can do some cleanup as well (removing it from the UI settings, where it does not belong at all).
    Tested:
    Desktop set @ 50Hz, threadedstartup=yes, and first startup was good. GUI/RSS feed was smooth.
    After restarting HTPC and launching MP the second time, i got 2 PowerScheduler errors:
    Code:
    [2013-04-26 09:39:48,305] [Log	] [MPMain  ] [ERROR] - Exception: System.NullReferenceException: Object reference not set to an instance of an object.
      at MediaPortal.Plugins.Process.PowerScheduler.WndProc(Message& msg)
      at MediaPortal.Plugins.Process.PowerSchedulerClientPlugin.WndProc(Message& msg)
      at MediaPortal.GUI.Library.PluginManager.WndProc(Message& msg)
      at MediaPortalApp.WndProc(Message& msg)  Message: Object reference not set to an instance of an object.  Site  : Boolean WndProc(System.Windows.Forms.Message ByRef)  Source : PowerSchedulerClientPlugin  Stack Trace:	at MediaPortal.Plugins.Process.PowerScheduler.WndProc(Message& msg)
      at MediaPortal.Plugins.Process.PowerSchedulerClientPlugin.WndProc(Message& msg)
      at MediaPortal.GUI.Library.PluginManager.WndProc(Message& msg)
      at MediaPortalApp.WndProc(Message& msg)

    Another test with same settings as above -> IMDB error:
    Code:
    [2013-04-26 09:49:02,837] [Error  ] [19	  ] [ERROR] - Error initializing window:IMDb.IMDb Collection was modified; enumeration operation may not execute. mscorlib	at System.ThrowHelper.ThrowInvalidOperationException(ExceptionResource resource)
      at System.Collections.Generic.Dictionary`2.Enumerator.MoveNext()
      at MediaPortal.Profile.Settings.SaveCache()
      at IMDb.PluginSettings.SaveSettings()
      at IMDb.PluginSettings.LoadSettings()
      at IMDb.IMDb.Init()
      at MediaPortal.GUI.Library.PluginManager.LoadWindowPlugin(String strFile)

    When the GUI/RSS feed isn't smooth:
    32FPS.png
     
    Last edited:

    Scythe42

    Retired Team Member
  • Premium Supporter
  • June 20, 2009
    2,065
    2,703
    51
    Berlin
    Home Country
    Germany Germany
    After restarting HTPC and launching MP the second time, i got 2 PowerScheduler errors:
    Bug in power scheduler. It dies at this line "bool singleSeat = _settings.GetSetting("SingleSeat").Get<bool>();"

    Very bad line of code in WndProc(). Like configuration is changing on every system message. Windows message can come up anytime, even when the plugin is not ready... *sigh*

    Good that PS++ will become default soon.

    https://github.com/MediaPortal/MediaPortal-1/commit/262e410a3af4f7d66585bcfb0d8f04cf0bd6c4e3

    Another test with same settings as above -> IMDB error:
    IMDB+ calls SaveCache() during initialization because it modified options of main MP and wants them to be saved immediately. This is an absolute no go! This method should never be called by any 3rd party stuff, unless it is something that explicitly modifies MediaPortal.xml settings (like the GUISettings plugin for example).

    Mediaportal itself saves the cache when exiting, so every modification a plugin did with xmlwriter will be nicely saved.

    But since we probably have this in other plugins as well. I will lock the MPSettings objects when the Cache is saved, that should help with plugins doing very bad things.

    https://github.com/MediaPortal/MediaPortal-1/commit/2a40d12a8570f4126e76d08a5d56055057695116

    When the GUI/RSS feed isn't smooth:
    And what should I see there? Guess I am getting blind... :cool:
     
    Last edited:
    Status
    Not open for further replies.

    Users who are viewing this thread

    Top Bottom