-
-
Notifications
You must be signed in to change notification settings - Fork 6.3k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
lirc: redesign, fix #13761
lirc: redesign, fix #13761
Conversation
xbmc/platform/linux/input/LIRC.cpp
Outdated
#ifdef HAVE_INOTIFY | ||
#include <sys/inotify.h> | ||
#endif | ||
#include "lirc_client.h" |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
Can we register lirc in linux optionals now? |
LIRC is working on LibreELEC x86_64 (by which I mean that IR input is being received and processed by Kodi), but it looks like the LIRC system is being reloaded/initialised several times a second: http://ix.io/17xt On LibreELEC RPi2, LIRC is not working - no inputs are received by Kodi: http://ix.io/17xs |
@MilhouseVH this version has lirc only registered for X11. Testing until OptionslReg for Linux is merged (other PR). So no surprise that it's not working for PI. |
@lrusak the other PR need to go in first. |
@FernetMenta this needs a rebase |
xbmc/input/InputManager.h
Outdated
@@ -45,6 +45,7 @@ class CProfilesManager; | |||
class CTouchTranslator; | |||
class IKeymapEnvironment; | |||
class IWindowKeymap; | |||
class CLirc; |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
d116f23
to
5535269
Compare
jenkins build this please |
xbmc/platform/linux/input/LIRC.h
Outdated
#include "threads/Thread.h" | ||
#include "threads/Event.h" | ||
#include "input/InputManager.h" |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
xbmc/platform/linux/input/LIRC.cpp
Outdated
#ifdef HAVE_INOTIFY | ||
#include <sys/inotify.h> | ||
#endif | ||
#include "Application.h" |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
xbmc/platform/linux/input/LIRC.cpp
Outdated
if (!m_bInitialized || !m_used ) | ||
return; | ||
int fd = -1; | ||
struct lirc_config *config; |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
xbmc/platform/linux/input/LIRC.cpp
Outdated
{ | ||
fd = lirc_init("kodi", 0); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
xbmc/input/InputManager.h
Outdated
@@ -353,6 +361,7 @@ class CInputManager : public ISettingCallback, | |||
|
|||
std::vector<KODI::KEYBOARD::IKeyboardDriverHandler*> m_keyboardHandlers; | |||
std::vector<KODI::MOUSE::IMouseDriverHandler*> m_mouseHandlers; | |||
std::vector<std::unique_ptr<IInput>> m_inputs; |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
|
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Good to go after squashing my squashme's into your commit.
9a9ee81
to
98a660c
Compare
now lirc is completely independent from InputManager |
@popcornmix @MilhouseVH could you test this on pi please? |
@FernetMenta thanks for doing the gbm lirc registration 👍 |
xbmc/platform/linux/OptionalsReg.h
Outdated
{ | ||
class CLircContainer; | ||
CLircContainer* LircRegister(); | ||
void LircUnregister(); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
@FernetMenta Do you see a reason for not doing it like the other windowing systems? I personally don't get why windowing has to deal with lirc at all, for me it's more of a platform thing. |
nope but Wayland has a lot more members. should I add it to the end?
a headless system does not need a remote control like lirc. |
Don't think there's any similar members at the moment, so yes that would be alright.
Of course, but that does not make lirc the responsibility of the win system :-) Win systems in Kodi already deal with way too much stuff. |
RPi is working now, thanks, but messages are split over two lines: http://ix.io/17Jq For example:
Is this intentional? Not sure what the errors at the end are about, probably something to do with #13754 - will report it there. X86_64 still has the LIRC restart issue: http://ix.io/17Ju |
I restarted kodi (
Rebooting will allow Kodi to start successfully. This seems to be reproducible. |
jenkins build this please |
@@ -98,10 +98,6 @@ void CAppParamParser::DisplayHelp() | |||
printf("\t\t\tenables network settings.\n"); | |||
printf(" -p or --portable\t%s will look for configurations in install folder instead of ~/.%s\n", CSysInfo::GetAppName().c_str(), lcAppName.c_str()); | |||
printf(" --legacy-res\t\tEnables screen resolutions such as PAL, NTSC, etc.\n"); | |||
#ifdef HAS_LIRC | |||
printf(" -l or --lircdev\tLircDevice to use default is " LIRC_DEVICE " .\n"); |
This comment was marked as spam.
This comment was marked as spam.
Sorry, something went wrong.
jenkins build this please |
build error (test suite) not related |
No love for aml? |
@gelotus why not PR this minimal piece of code needed? Like: https://pastebin.com/dMikf9z1 |
Remove lirc parser after #13761
[aml]Register lirc in AML after #13761
app-misc/inputlircd is no longer necessary, see xbmc/xbmc#13761 app-pda/libplist does not require the "python" use flag Signed-off-by: Craig Andrews <candrews@gentoo.org> Package-Manager: Portage-2.3.51, Repoman-2.3.11
Register will land in OptionalsReg
This drops sending command from Kodi to Lirc. I don't think this makes much sense.