Touchscreen LCD display Plugin (2 Viewers)

pilehave

Community Skin Designer
  • Premium Supporter
  • April 2, 2008
    2,566
    521
    Hornslet
    Home Country
    Denmark Denmark
    I'm currently investigating the possibility to hack MP to render to two windows, it looks like it's doable, but it cannot be done by plugin, but as a modified .exe as you are doing already.

    So why would anyone do this you may ask, but the simple answer is this:
    Windows cannot clone two screens that are not the same resolution (well it can, but then one desktop won't fit inside the screen).

    I'm probably gonna do it as the normal render + one swapchain. If that is too complicated I'll do two rendertargets (viewports) instead. CPU load should be the same as normal MP that way (DirectX).

    I'll post here when I have something to show ;)
     

    sa_ddam213

    Retired Team Member
  • Premium Supporter
  • March 3, 2009
    312
    281
    Canterbury
    Home Country
    New Zealand New Zealand
    Would be sweet to get two render targes , i tries that fow few weeks but got lot of errors and sum real crazy resolution problems.
    But I have very little knowledge of Direct X , Im only learning simple WinForms like this one,

    Your idea would be awesome if you can do it, That way we would have full skin support and we can have proper access to List Controls, Animations, and best of all Overlays :) (that would make life a lot earlier)

    Good Luck


    anyway till he's done heres next version of my attempt :

    Added: Labels to tell you where you are
    Added: Navigation Panel (Button to activate just in case you have case buttons like me)
    Added: Mediacontrol Panel (Button to activate just in case you have case buttons like me)
    Added: Music Coverart for selected item
    Added: Music Selected item label
    Added: Music add to playlist Button

    Todo: Lots and Lots
     

    sa_ddam213

    Retired Team Member
  • Premium Supporter
  • March 3, 2009
    312
    281
    Canterbury
    Home Country
    New Zealand New Zealand
    I'm currently investigating the possibility to hack MP to render to two windows, it looks like it's doable, but it cannot be done by plugin, but as a modified .exe as you are doing already.

    So why would anyone do this you may ask, but the simple answer is this:
    Windows cannot clone two screens that are not the same resolution (well it can, but then one desktop won't fit inside the screen).

    I'm probably gonna do it as the normal render + one swapchain. If that is too complicated I'll do two rendertargets (viewports) instead. CPU load should be the same as normal MP that way (DirectX).

    I'll post here when I have something to show ;)

    Are you looking at just cloning the main display to the touchscreen at a different resolution , Or are you looking at having a completely different skinnable window on the touchscreen(thats my goal)

    I if you want to clone main display at a different resolution can be done real easy with a winform and Memory stream image in a threading timer,
     

    mtjoernelund

    Portal Pro
    April 28, 2008
    102
    3
    Home Country
    Denmark Denmark
    anyway till he's done heres next version of my attempt :

    Added: Labels to tell you where you are
    Added: Navigation Panel (Button to activate just in case you have case buttons like me)
    Added: Mediacontrol Panel (Button to activate just in case you have case buttons like me)
    Added: Music Coverart for selected item
    Added: Music Selected item label
    Added: Music add to playlist Button

    Todo: Lots and Lots

    Fantastic Sa_ddam213, looking forward to trying it out when I get home from work today. But keep up the good work, the way you are moving with this it will be a fantastic feature!
     

    pilehave

    Community Skin Designer
  • Premium Supporter
  • April 2, 2008
    2,566
    521
    Hornslet
    Home Country
    Denmark Denmark
    I'm currently investigating the possibility to hack MP to render to two windows, it looks like it's doable, but it cannot be done by plugin, but as a modified .exe as you are doing already.

    So why would anyone do this you may ask, but the simple answer is this:
    Windows cannot clone two screens that are not the same resolution (well it can, but then one desktop won't fit inside the screen).

    I'm probably gonna do it as the normal render + one swapchain. If that is too complicated I'll do two rendertargets (viewports) instead. CPU load should be the same as normal MP that way (DirectX).

    I'll post here when I have something to show ;)

    Are you looking at just cloning the main display to the touchscreen at a different resolution , Or are you looking at having a completely different skinnable window on the touchscreen(thats my goal)

    I if you want to clone main display at a different resolution can be done real easy with a winform and Memory stream image in a threading timer,

    Yeah...I tried that but framerate maxes out at around 12-14fps (even when putting in a sleep on around 25 ms) and the load on the CPU is just way too high when the backbuffer is saved as a memorystream. I also tried the double render from a plugin, but this "steals" rendering time from the main app = flickering render on both screens. Of course I gave the plugin its own thread :(

    My plan is to clone the screen at a different resolution. The alternative is from what I can tell to develop a LOT of extra functionality to use listviews, buttons, skinning etc.
     

    mtjoernelund

    Portal Pro
    April 28, 2008
    102
    3
    Home Country
    Denmark Denmark
    sa_ddam213
    I just put your plugin in use on my htpc, and it works great.

    A couple of comments though:
    - When using the touchscreen controls I lose focus on the main screen meaning that I cannot use the majority of buttons on my remote. (Minor issue though as I primarily use the remote). Clicking with mouse somewhere on the main screen brings back the remote control.
    - Splash screen is now entirely missing. Guess its part of the work in progress.
    - When using basic home there are no labels showing where u are. Guess its a general issue as it worked the same in the original touchscreen plugin.
    - I think I might have seen a little jerky full screen tv after resuming with your version of the Medieportal.exe installed. I am not certain about this though.
    - Only navigation is working. Mediacontrols on the touchscreen is not working here. (Neither are keyboard and systeminfo, but you have not indicated that they should be done).

    Suggestions:
    - When in list view it would be great if it was possible to show more than one item at the time, i.e. show a list to make the navigation easier.

    All in all fantastic work, looking forward to further developments.
     

    sa_ddam213

    Retired Team Member
  • Premium Supporter
  • March 3, 2009
    312
    281
    Canterbury
    Home Country
    New Zealand New Zealand
    @sa_ddam213
    I just put your plugin in use on my htpc, and it works great.

    A couple of comments though:
    - When using the touchscreen controls I lose focus on the main screen meaning that I cannot use the majority of buttons on my remote. (Minor issue though as I primarily use the remote). Clicking with mouse somewhere on the main screen brings back the remote control.
    - Splash screen is now entirely missing. Guess its part of the work in progress.
    - When using basic home there are no labels showing where u are. Guess its a general issue as it worked the same in the original touchscreen plugin.
    - I think I might have seen a little jerky full screen tv after resuming with your version of the Medieportal.exe installed. I am not certain about this though.
    - Only navigation is working. Mediacontrols on the touchscreen is not working here. (Neither are keyboard and systeminfo, but you have not indicated that they should be done).

    Suggestions:
    - When in list view it would be great if it was possible to show more than one item at the time, i.e. show a list to make the navigation easier.

    All in all fantastic work, looking forward to further developments.


    Is your Mediaportal set to always on top and touchscreen set to click on release (Focus issues are giving me a headache),Will have sorted by the end.(this also probably cause jerky tv you had , its all about focus :) )

    Media controls will only work if there is media playing

    List view of songs is a must have in my opinion(work in progress)

    Keyboard and system info comming soon

    as for the basic home labels it will depend on the skin you are using, sum basic home menus dont use button labels but separate labels on a visible so my touchsceen wont be able to pick them up . I had the same issue on mine so i labelled the buttons and set the text offset off the screen

    I am having issues with the splashscreen at the moment next version will be back to same text splashscreen til i figure it out

    Thanks for testing and bug reporting

    Sa_ddam213
     

    mtjoernelund

    Portal Pro
    April 28, 2008
    102
    3
    Home Country
    Denmark Denmark
    Is your Mediaportal set to always on top and touchscreen set to click on release (Focus issues are giving me a headache),Will have sorted by the end.(this also probably cause jerky tv you had , its all about focus :) )

    Touchscreen set to click on release but Mediaportal was not set to always on top. However with that setting the touchscreen just did not register anything. The trick seemed to be - at least on my eGalaxy - to set mediaportal always on top and the touchscreen to "desktop mode" (Whatever that means). This fixed the problem here.

    Media controls will only work if there is media playing

    Arh, my mistake. However this presents another problem to me (though that may also be my mistake). When going through music when I want to play an entire album I normally highlight the album and press play. If I go into the album folder and just press ok on the first track it will only play this track. I tried to press the button on the touchscreen labeled "add to playlist" which just made Mediaportal exit.

    List view of songs is a must have in my opinion(work in progress)

    Keyboard and system info comming soon

    Well these will just make things even sweeter, but I must say that already it works pretty great. Once again, thanks for the great work!

    as for the basic home labels it will depend on the skin you are using, sum basic home menus dont use button labels but separate labels on a visible so my touchsceen wont be able to pick them up . I had the same issue on mine so i labelled the buttons and set the text offset off the screen

    Arh, I try to mess a little around with the basichome.xml, I guess it is here the changes need to be made.

    Thanks for testing and bug reporting

    Sa_ddam213

    My pleasure. It is you who are doing all the difficult work.
     

    Slurm

    MP Donator
  • Premium Supporter
  • December 16, 2006
    301
    33
    58
    Graz
    Home Country
    Austria Austria
    AW: Touchscreen LCD display Plugin

    Great to see that sa_ddam213 is working on a new plugin. In the meantime I've modded the old one and added some new functionality:

    It now has 4 lines to display.

    I've updated the default skin to look more like streamedMP (my favourite skin).

    It survives standby.

    You can change the amount of sleep time for the process to define how much cpu time it takes (Default is set to 100 ms but you can use higher values to reduce cpu time - the plugin also gets slower then of course).

    It is compiled against latest svn.

    Be sure to delete (or backup) TouchScreenDisplay.xml in user folder before using configuration.
     

    Attachments

    • TouchScreenPlugin.zip
      30.6 KB

    cleaner23

    Portal Member
    August 22, 2007
    13
    0
    Home Country
    Switzerland Switzerland
    AW: Touchscreen LCD display Plugin

    Thanks Slurm, i like the plugin modification but get constant 50% cpu load if enabled. the umodded one consums only 10-15%.
     

    Users who are viewing this thread

    Top Bottom