Updated iMON (Soundgraph) LCD Driver (2 Viewers)

Status
Not open for further replies.

naich

MP Donator
  • Premium Supporter
  • August 6, 2007
    529
    25
    Home Country
    Germany Germany
    Hi!

    All works fine for me (LCD) but if MP goes to standby the display is not switched of .
    If i close MP the display is switched of.

    Any solution??
     

    pvkleeff

    Portal Member
    July 18, 2007
    32
    5
    50
    Roosendaal
    Home Country
    Netherlands Netherlands
    Cybrmage,

    I found a new path error in the latest driver. For some strange reason the driver expects the SG_RC.dll file to be in the root of the C: drive. If it isn't there you can't get into the External Display plugin in Mediaportal Configuration.

    Greetings,

    Patrick
     

    cybrmage

    Portal Pro
    May 30, 2007
    498
    86
    Home Country
    Canada Canada
    if MP goes to standby the display is not switched of .
    If i close MP the display is switched of.

    If you actually read the thread, you would know that this is a known problem... and is not necessarily caused by the display driver...

    I am unable to duplicate the problem on my system (0.2.3RC3 SVN 11_03_2007), even with the PowerScheduler plugin enabled... everything works properly.

    For some strange reason the driver expects the SG_RC.dll file to be in the root of the C: drive. If it isn't there you can't get into the External Display plugin in Mediaportal Configuration.

    Actually... It does NOT expect the SG_RC.dll to be in the root of the c: drive... But it does expect that the SG_RC.dll to be installed with the Antec/SoundGraph software.... The Antec/SoundGraph software ALWAYS installs the SG_RC.dll file, as it depends on it to operate.

    Have you deliberately deleted the SG_RC.dll file? Maybe to disable the remote?




    Here is a new version...

    Fixed: SG_RC.dll handling (to compensate for defective Antec/SoundGraph software installations)
    Added: option to explicitly listen for system PowerState messages rather that relying on the ExternalDisplay core to handle driver shutdown. (an attempt to fix hibernation issues some are experiencing)


    Regards,
    CybrMage
     

    chemelli

    Retired Team Member
  • Premium Supporter
  • September 28, 2006
    6,159
    2,264
    50
    Milano, Italy
    Home Country
    Italy Italy
    cybrmage,

    unfortunatly I have the first crash with the new driver. Can you review it please ?
    The strange thing is that I was in livetv and so EQ should not be involved...

    Simone
     

    cybrmage

    Portal Pro
    May 30, 2007
    498
    86
    Home Country
    Canada Canada
    crash with the new driver.
    ...
    EQ should not be involved...

    hmm.... Looks like you found a race condition....

    The VFD_EQ_Update thread keeps checking the currently active media player (throught the g_player structure)...
    The thread, checked the g_player structure, found an active player, and by the time it checked for EQ data, there was no longer an active player....

    The VFD update thread is more sparse than the LCD update thread (as the LCD supports more features)... The VFD thread also lacks many of the checks for the type of currently playing media, instead relying on checks in the GetEQ() function to determine if it is possible to get EQ data from the active player...

    What that means is the VFD thread will possibly provide EQ display for media that the LCD will not... And it is much easier to make the developmental changes in one area of the code (the VFD Update thread) than in many areas (the LCD update thread)...

    Thanks for catching it!!


    Any Updated driver is attached:

    Changed: built against v0.2.3RC3 SVN version 16511 (11/11/2007). (Tested and working with versions on or after 11/03/2007)
    Fixed: In configuration, some options were activated inappropriately, causing a crash under certain circumstances.
    Fixed: VFD thread would create a race condition and crash in certain circumstances.
     

    chemelli

    Retired Team Member
  • Premium Supporter
  • September 28, 2006
    6,159
    2,264
    50
    Milano, Italy
    Home Country
    Italy Italy
    cybrmage,

    I have a crash in live TV that devs thinks is related to iMON display. Here the logs with the old driver.
    Can you review if is the same issue fixed with 11-11-2007b ?

    Thaks in advance

    Simone
     

    cybrmage

    Portal Pro
    May 30, 2007
    498
    86
    Home Country
    Canada Canada
    a crash in live TV that devs thinks is related to iMON display

    This is not the same issue... (the previous issue being the one that is addressed in the last update)

    The exception is being thrown in System.Windows.Forms.NotifyIcon.UpdateIcon()... Which is being called from MediaPortal.D3Dapp.OnResize().... Which means that the exception is being thrown when the display window is being resized (most likely... being minimized)....

    Since the iMON driver does not have any direct involvement with any of the system forms (other than reading property values from the GUIPropertyManager, but only while driving an LCD display)... and does not manipulate the Notifaction Icons at all... I would think that it is highly unlikely that the iMON driver is responsible...

    The fact that the System.Windows.Forms.NotifyIcon namespace has an UpdateIcon() method, and that the ProcessPlugins.ExternalDisplay.Drivers.iMONLCDg namspace has a similar UpdateIcons() method is purely coincidental... and the UpdateIcons() method is NOT used when driving a VFD display...

    You could also try disabling the iMONLCDg driver and try to recreate the problem...



    And... on a totally unrelated subject.....


    Here is an update to the driver:

    Fixed: Additional configuration inconsistancies could cause MediaPortal to crash under certain circumstances.
    Added: In configuration, option to allow the EQ display to alternate between Equalizer and Track Information. (as requested by mmf1981) (and NO!... turning the display off by remote is not possible)
    Added: additional logic to try and prevent inconsistancies from being created when configuring advanced options.
    Changed: Advanced Setup form updated to (hopefully) be more descriptive for some options.

    Regards,
    CybrMage
     

    mmf

    MP Donator
  • Premium Supporter
  • August 29, 2007
    100
    7
    :D cybrmage, great work as always. Everything's working fine except:

    The option "Monitor PowerState Events" is not working for me, still the same issue with hibernate mode.

    Feature Request:
    Would it be possible to catch "Play" (keypresses) as an event, and to show the display
    for an custom amount of seconds?

    Both my dvd-player and my amp have this feature, would be great :D
     

    chemelli

    Retired Team Member
  • Premium Supporter
  • September 28, 2006
    6,159
    2,264
    50
    Milano, Italy
    Home Country
    Italy Italy
    cybrmage,

    thanks for your info. I tried to reproduce the issue both with and without iMONLCDg but I'm not able ;-(

    I instead updated the driver and received a new exception, everytime using live tv.
    Is possible to completly disable EQ while in live TV ? It seems to slow down timeshifting with TV3 sometimes...but it can be another the reason...

    As always, log attached.

    Thanks

    Simone
     

    cybrmage

    Portal Pro
    May 30, 2007
    498
    86
    Home Country
    Canada Canada
    The option "Monitor PowerState Events" is not working for me, still the same issue with hibernate mode.

    Please post logs.... can't make any progress without them...

    Feature Request:
    Would it be possible to catch "Play" (keypresses) as an event, and to show the display
    for an custom amount of seconds?

    Ummm... Isn't that what the "Delay Equalizer start" option does??? Maybe you can explain exactly what you want in more detail....


    I tried to reproduce the issue both with and without iMONLCDg but I'm not able ;-(
    That's usually the case.... things always break when it's most inconvenient... and usually while logging is turned off 8-}

    I instead updated the driver and received a new exception, everytime using live tv.

    Looks like I introduced a new bug with the "Track Information" option....

    Is possible to completly disable EQ while in live TV ?
    I could... but I'd rather not.... At least not while it's still throwing errors...

    If I make the changes... The bugs that are being discovered will lie dormant... and come back to haunt us later....

    It seems to slow down timeshifting with TV3 sometimes...

    It shouldn't affect the execution of other modules... But Once we get to a point where it's not throwing errors with every version, then I can work on optimizing it...



    Here is an attempt at a bugfix for you:

    fixed: null reference exception in VFD update thread

    Regards,
    CybrMage
     
    Status
    Not open for further replies.

    Users who are viewing this thread

    Top Bottom