HomeKit Bridge /accessory development
#1
Hi All

Would anyone want to work together to develop a homekit bridge for xbmc/kodi?

A homekit bridge allows you to create a "virtual homekit accessory".

With this we could then enable siri support to control xbmc via the api


Here is a completly functioning homekit bridge:

https://github.com/BitTankInc/BitBridge/.../BitBridge

and an example homekit app.

https://github.com/KhaosT/HomeKit-Demo


is there anyone interested on working on this with me?
Reply
#2
Wondering if your goal here to only look into this only from the point-of-view of making XBMC/Kodi into a Voice Command Device (VCD) via HomeKit's speech recognition function or more?

What I mean is that I understand there is also a other part of HomeKit which is about (non-vocal) two-way home automation control, what is now commonly referred to as Smart Home.

And are you looking into extending XBMC's core with one or more new APIs or are just just writing a separate application running in parallel or a new remote control app for iPhone/iPad?


Regardless I think that it could be a good idea if implemented right, even just as a proof-of-concept, and I wish you the best of luck and like to suggest that you reuse what resources are already available for XBMC/Kodi and read the previous discussion relating to speech recognition, voice controls, and vocal commands to control XBMC/Kodi, as well as accessibility features for blind users.

http://forum.kodi.tv/showthread.php?tid=9280
http://forum.kodi.tv/showthread.php?tid=199486
http://forum.kodi.tv/showthread.php?tid=123621
http://forum.kodi.tv/showthread.php?tid=73006
http://forum.kodi.tv/showthread.php?tid=117199
http://forum.kodi.tv/showthread.php?tid=134659

First thing you might want to think about though is if you really want to make something that is directly dependent on Apple HomeKit and Siri, or if you instead could add some kind of abstraction framework and API in the middle as "Voice Command API" so that you could use several plugins for additional third-party APIs like Apple HomeKit / Siri, Google Speech API, and you that way could also have support for offline open source voice recognition libraries too like CMU Sphinx.

Extending XBMC's core with a new framework and API for speech recognition and voice commands would open up additional opportunities for several third-party voice command API addons for voice control of XBMC. That could be a very cool accessibility feature for both disabled and non-disabled people in order to voice control XBMC, which could as such act to motivate more developers to join this cause.

As a concept think of the PVR function on XBMC/Kodi which supports several third-party DVR apps via PVR addons that uses a common API. As another example there is Zypr https://www.zypr.net which aggregates many of those third-party APIs for voice commands that you might be able to use as a reference.

There are already several software and products our there with great use ideas for speech recognition and voice control for multimedia, however personally I'm here specifically imagining using the concept shown by Ubi ( http://theubi.com ) "ALWAYS-ON" voice-activated computer to control XBMC/Kodi as it seem more user-friendly that most other devices.

Checkout quick introduction video for the Ubi here on Kickstarter:
https://www.kickstarter.com/projects/607...d-and-al-0

VoxCommando is another third-party that works with XBMC

Anyway, first I was thinking that it would be great for both blind and non visually impaired persons alike even just to have some basic commands during playback like; play, pause, stop, next, previous, and text search.

But you can just imagine this as a cheap and simple way to get natural voice control commands similar to that of Tony Stark's JARVIS (J.A.R.V.I.S.) artificially intelligent butler computer in the Iron Man movies

http://ironman.wikia.com/wiki/J.A.R.V.I.S.
http://marvel-movies.wikia.com/wiki/J.A.R.V.I.S.


Sorry if I want too off-topic here with the voice command API idea as not just an additional accessibility feature for XBMC/Kodi.
Reply
#3
Another proof-of-concept is Amazon Fire TV which have a very good "Voice Search" feature which shows how voice command adds accessibility to the search function in a media player

Such more advanced speech recognition in "Voice Search" could maybe work online via Google Speech API, Siri, or a offline speech recognition library to enter text into search

Image


As another cool proof-of-concept and for ideas checkout is the "Jasper" project which is user-friendly "ALWAYS-ON" accessibility platform and open source Python-based implementation that uses CMU Sphinx ( http://cmusphinx.sourceforge.net ) , and even though the current Jasper client is not designed for XBMC it is nice as a proof-of-concept, and since both Jasper and CMU Sphinx is quickly becoming a popular community driven frameworks for other to develop always-on, voice-controlled applications project, you too could create a "Jasper Client" for XBMC using that upstream Jasper client code

http://jasperproject.github.io/
https://github.com/jasperproject/jasper-client

There is also an non-Python voice control open source software for controlling XBMC on Linux that is called called "xbmcvc" (short for XBMC Voice Commands) which also uses CMU Sphinx for voice recognition, same as the Jasper project

http://forum.xbmc.org/showthread.php?tid=123621
https://github.com/kempniu/xbmcvc

xbmcvc send the commands via XBMC's JSON-RPC API so perhaps could get some ideas from it as it already supports XBMC navigation and playback commands

xbmcvc supported navigation commands; UPWARDS, DOWNWARDS, LEFT, RIGHT, SELECT, BACK, HOME, CONTEXT, WEATHER, PICTURES, TV, VIDEOS, MUSIC, PROGRAMS, SETTINGS, FAVORITES

xbmcvc supported player commands; PLAY, PAUSE, STOP, MENU, PREVIOUS, NEXT, SHUFFLE, UNSHUFFLE, REPEAT ALL, REPEAT ONE, REPEAT OFF

Note however that there are actually no Python-based addons/plugins that add voice command to XBMC, only separate voice command applications that can send commands to XBMC, none of which are cross-platform, and no one that is close to being as simple to install as an addon, and no one that is even particularly simple to use with XBMC.

Otherwise I think being able to install (if so separate) simple Python-based addon/plugin for XBMC/Kodi that can use a such voice command API in XBMC/Kodi is a valid subject to discuss here as an idea generally improve accessibility.
Reply

Logout Mark Read Team Forum Stats Members Help
HomeKit Bridge /accessory development0