Scythe42's fixes for 1.4.0 (2 Viewers)

Status
Not open for further replies.

Owlsroost

Retired Team Member
  • Premium Supporter
  • October 28, 2008
    5,540
    5,038
    Cambridge
    Home Country
    United Kingdom United Kingdom
    if you has interested, many log from DvbSub3 in 1st Log

    Known issue - it logs every subtitle - I assume it is a hangover from the original dev time (a long time ago). But this is off-topic here....
     

    legnod

    MP Donator
  • Premium Supporter
  • September 24, 2011
    1,115
    323
    Stuttgart
    Home Country
    Germany Germany
    I found a soultion for the missing records... i had to open up the configuration dialog for the recorded TV database (TV-Server Config -> Recordings -> Database). There were no recodings listed to import so i just closed the window. After that the recordings are visible inside MP. @radical @markus_g could you please test if this is works for you too?
     

    swado

    New Member
    January 25, 2013
    3
    1
    37
    Engadine, New South Wales, Australia
    Home Country
    Australia Australia
    Have just installed and testing, still having issues with mediaportal opening half screen, seems to now sometime work correctly though.

    Attached is screenshot and log's, in log I opened mediaportal first (all good), put PC to sleep, woke up PC and it came up half screen as per screenshot but then adjusted to full screen correctly. Put PC to sleep again, woke up and this time came up incorrect as per screenshot and didn't adjust MP to correct resolution

    Please describe to me again:
    - How many displays? 1 x 55" TV
    - What resolution does each display use? 1920x1080
    - More than one GPU used? No
    - How are displays connected? Display ---> Pioneer AV 521 --> HTPC (HDMI)
    - How are they positioned? N/A
    - Which one is the primary one (screen shot of windows setup where you see 1, 2, 3 etc. helps) only 1
    - On which do you start MP? 55"
    - Where is the taskkbar positioned of Windows?
    - Screenshot of the whole windows desktop when it is wrong. Not just MP, that does not elp me.
     

    Attachments

    • display.jpg
      display.jpg
      300.5 KB

    Scythe42

    Retired Team Member
  • Premium Supporter
  • June 20, 2009
    2,065
    2,703
    51
    Berlin
    Home Country
    Germany Germany
    Screenshot I Can't provide right now cause i have now 1.3 Final installed. I'll upload it as soon as possible.
    Thank you so much. Got it. D3D is using your 1900x1200 screen to setup the backbuffer. The reason is that screen number 2 is your primary screen. Looks like in your configuration DVI takes precedence over HDMI.


    In fact even you are using only one GPU, because of the different outputs uses, Windows internally works with two display adapters. It might not expose that fact in the user UI though. And makes perfect sense to me. It has to be that way and I assumes it is described in the device driver SDK as well.

    That is an outstanding bug from stock MP 1.3.0 that even uses the wrong backbuffer that is masked by the "half-full-screen" issue where MP did not honor the size of the display is shown on. Think of a reverse half-full screen issue that is now visible.

    I will create a Mediaportal.exe binary for you later, that in debugging logs all information about displays and adapters from an internal point of vie. No other changes. When I have this information I can adjust the code.

    This does not mean that multiple GPU setup will not show issues...
     

    elliottmc

    Retired Team Member
  • Premium Supporter
  • August 7, 2005
    14,927
    6,061
    Cardiff, UK
    Home Country
    United Kingdom United Kingdom
    I found a soultion for the missing records... i had to open up the configuration dialog for the recorded TV database (TV-Server Config -> Recordings -> Database). There were no recodings listed to import so i just closed the window. After that the recordings are visible inside MP. @radical @markus_g could you please test if this is works for you too?

    I am sure it will. Nothing to do with this thread.
     

    Scythe42

    Retired Team Member
  • Premium Supporter
  • June 20, 2009
    2,065
    2,703
    51
    Berlin
    Home Country
    Germany Germany
    Atmolight plugin seems to be the Big Bad Wolf (for me !) @disaster123 you use Ambilight system ?
    Great finding. I think you nailed it. Can reproduce this with 1.3.0 as well. Same exceptions.

    MP tries to start the process plugin but fails. The process plugin is still loaded though.

    Later when MP shuts down the plugins it fails again, because it still loaded. This throws an exception and does not continue with stopping other plugins, meaning they are just disposed from memory by C#.

    Let's take a look at the code:
    Code:
    	  foreach (IPlugin plugin in _nonGuiPlugins)
    	  {
    		Log.Debug("PluginManager: Stopping plugin '{0}'", plugin.ToString());
    		plugin.Stop();
    	  }
    As you can see, we do not catch an exception in the loop. Therefore if stopping one plugins fails, MP will not continue and just dispose them. That leaves the mini display on, as its stopping code was never executed.

    Simple fix. The plugin.Stop() just needs to be wrapped in a try/catch block, so the stopping can continue. Meaning: we handle exceptions here. Will add this to the code as I touch PluginManger.cs for threaded loading of window plugins anyway.

    So when a user uses a "broken" plugin, other plugins can still shutdown nicely.

    A really nice fix of course would be to unload a process plugin that passed loading but failed starting. But that would require a lot of changes as there is no real support for that in PluginManager.cs.
     
    Last edited:

    Scythe42

    Retired Team Member
  • Premium Supporter
  • June 20, 2009
    2,065
    2,703
    51
    Berlin
    Home Country
    Germany Germany
    Attached is screenshot and log's, in log I opened mediaportal first (all good), put PC to sleep, woke up PC and it came up half screen as per screenshot but then adjusted to full screen correctly. Put PC to sleep again, woke up and this time came up incorrect as per screenshot and didn't adjust MP to correct resolution
    Could you try again and enable "minimize to tray on focus loss" in the startup/resume settings. I want to know if this makes a difference in behaviour to limit things a bit down. Still need to find out why it has problems on several suspend/resume cycles (maybe a regression in my fixes).
     
    Last edited:

    Morpheuzs

    Portal Member
    March 6, 2009
    11
    1
    For me it ist working fine.

    - GUI elements are know correctly positioned in full screen. I had this issue after looking records from tv and switching back to GUI.

    - Flickering EPG screen after switching between channel is also fixed for me know.
    -MP timeshift buffer crashed between 15 min and an hour. With this build, this issue is also gone, but don't know why this happened in the past. Configuration is the same, because I did just an upgrade of me previous installation.

    I will test this build more this weekend and I will let you know when experiencing issues.

    But for know it is looking good.
     

    radical

    Portal Pro
    December 16, 2010
    1,466
    191
    Home Country
    Germany Germany
    This does not mean that multiple GPU setup will not show issues...

    Do you think this related only for AMD Gfx Card? Or is Nvidia and Intel also affected?

    I wonder if another way of connecting the displays (e. g. using displayport) would make a different result.
     

    azzuro

    Test Group
  • Team MediaPortal
  • May 10, 2007
    9,984
    5,663
    France - IDF
    Home Country
    France France
    Simple fix. The plugin.Stop() just needs to be wrapped in a try/catch block, so the stopping can continue. Meaning: we handle exceptions here. Will add this to the code as I touch PluginManger.cs for threaded loading of window plugins anyway.
    released soon ? :p
     
    Status
    Not open for further replies.

    Users who are viewing this thread

    Top Bottom