Help needed - going to implement plugin(?) for external LCD
#1
I'm not sure if I post in right forum, so correct me, please, if I'm wrong.

I'd like to implement some kind of plugin or script mainly for iMON display, but possible with support for other external displays .
The idea to show on external display following information:
* Current state of playback (play, pause, stop)
* Current media name
* Playing time (current / total), playback progressbar
* Playlist position
* Codecs
* XBMC state (video, music, weather...)
* Commands (play, stop, vol+, mute...)

Could it be just some plugin/script or it should be modification of source code?
In case of source code modification - what's better: new module or current LCD module modification?
Please advise me, where to start?


PS And yes, I know about http://forum.xbmc.org/showthread.php?tid=84166, but I'd like to make deeper integration.
Reply
#2
The goal of XBMC is currently to move modules from the core and migrate to addons. The information which you wish to obtain for the LCD is available though JSON-RPC, you would poll the current state every so often and update the LCD. I'm sure there's better options though Python, or even addons.
Use mythicalLibrarian to make a library out of your MythTV files. Leave the recording to MythTV and use XBMC as your library.
Installation and Instructions:http://wiki.xbmc.org/index.php?title=MythicalLibrarian
Technical Support:http://forum.xbmc.org/showthread.php?tid=65644
[url=http://forum.xda-developers.com/showthread.php?tid=1081892][/url]
Reply
#3
I was first thinking about implementing an addon as well (although I have not much experience in python yet) but then I remembered that it would be a Windows only addon and I thought that all addons would have to be platform independent. Or is it allowed to write platform dependent addons?
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply
#4
Afaik you can write an addon for whatever platform you like. The xml contains the platforms where the addon is usable. In general it would be nice to have platform independent addons but this might not be archiveable all the time (see milkdrop and projectm viz).
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#5
WiSo Wrote:Afaik you can write an addon for whatever platform you like. The xml contains the platforms where the addon is usable. In general it would be nice to have platform independent addons but this might not be archiveable all the time (see milkdrop and projectm viz).

Very interesting. I thought that I had read somewhere that the goal was to have something like that in the future but that it wouldn't be possible yet but maybe my mind played a trick on me.

Seems like I'll finally have something to do in python and a reason to use it.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply
#6
Thanks for answers!

Looks like I can't get with JSON-RPC following info:
* Codecs used in current media
* XBMC current state
* Commands received by XBMC (Volume control, playback control, switching modes...)
Am I right?

Can I get this info in addon (script or module?)?
Reply
#7
I'm not so keen on the jsonrpc, but httpapi had exec built in commands that really extended the power of the httpapi. You might need to use that, exec built in script and have that obtain the information you want.
Use mythicalLibrarian to make a library out of your MythTV files. Leave the recording to MythTV and use XBMC as your library.
Installation and Instructions:http://wiki.xbmc.org/index.php?title=MythicalLibrarian
Technical Support:http://forum.xbmc.org/showthread.php?tid=65644
[url=http://forum.xda-developers.com/showthread.php?tid=1081892][/url]
Reply
#8
Karlson2k Wrote:Looks like I can't get with JSON-RPC following info:
That's not correct.
You can use the System.GetInfoLabels() method to get
Karlson2k Wrote:* Codecs used in current media
with the following InfoLabels:
- MusicPlayer.BitRate
- MusicPlayer.Channels
- MusicPlayer.BitsPerSample
- MusicPlayer.SampleRate
- MusicPlayer.Codec
- VideoPlayer.VideoCodec
- VideoPlayer.VideoResolution
- VideoPlayer.VideoAspect
- VideoPlayer.AudioCodec
- VideoPlayer.AudioChannels

I use them to enable/disable the codec icons on the LCD and it works fine. You just need a reasonable mapping between the codecs returned by XBMC and the icons on the display.

Karlson2k Wrote:* XBMC current state
What do you mean by "current state"? With the InfoLabels System.CurrentWindow and System.CurrentControl you can get the name of the current window (not all windows have a name) and the label of the currently active control.

Karlson2k Wrote:* Commands received be XBMC (Volume control, playback control, switching modes...)
I haven't found a way yet to get these either.
Always read the online manual (wiki), FAQ (wiki) and search the forum before posting.
Do not e-mail Team Kodi members directly asking for support. Read/follow the forum rules (wiki).
Please read the pages on troubleshooting (wiki) and bug reporting (wiki) before reporting issues.
Reply
#9
Montellese Wrote:You can use the System.GetInfoLabels() method to get

with the following InfoLabels:
- MusicPlayer.BitRate
Thanks for detailed info!

Montellese Wrote:What do you mean by "current state"? With the InfoLabels System.CurrentWindow and System.CurrentControl you can get the name of the current window (not all windows have a name) and the label of the currently active control.
Yes, that's what I need! I'd like to get almost blind (without main display) navigation on XBMC.

outleradam Wrote:I'm not so keen on the jsonrpc, but httpapi had exec built in commands that really extended the power of the httpapi. You might need to use that, exec built in script and have that obtain the information you want.
Since httapi is depreciated now, I prefer to use JSON-RPC.
Seems that with JSON-RPC I can get everything I need except incoming commands.

Could someone suggest the easiest way to catch incoming commands?
Reply
#10
Montellese Wrote:Very interesting. I thought that I had read somewhere that the goal was to have something like that in the future but that it wouldn't be possible yet but maybe my mind played a trick on me.

Seems like I'll finally have something to do in python and a reason to use it.

With platform I meant Linux/Mac/Windows specific. Currently the addon api is limitted but afaik spiff has some ideas for binary addons.
Always read the XBMC online-manual, FAQ and search the forum before posting.
Do not e-mail XBMC-Team members directly asking for support. Read/follow the forum rules.
For troubleshooting and bug reporting please make sure you read this first.
Reply
#11
WiSo Wrote:With platform I meant Linux/Mac/Windows specific. Currently the addon api is limitted but afaik spiff has some ideas for binary addons.
I'd prefer to use platform independent solution, but Windows will be OK for now. Smile
So what's idea?
Are there any way to catch keypresses in addon?
Reply
#12
Any progress with this, and support for non-Imon screens?
Reply

Logout Mark Read Team Forum Stats Members Help
Help needed - going to implement plugin(?) for external LCD0