Jump to content

Emby Theater for Linux


xnappo

Recommended Posts

  • 2 weeks later...
TrainAss

I've installed this on my Zotac Zbox running Linux Mint 18.1 Serena. It's an AMD based box and can help test using AMD hardware (obviously).

 

When launching the client via terminal, I have this output

Initializing cec-client...

{ cecExePath: undefined,
  cecEmitter:
   EventEmitter {
     domain: null,
     _events: {},
     _eventsCount: 0,
     _maxListeners: undefined } }
ERROR: cec-client not installed, running without cec functionality.

Connected to socket /tmp/emby.sock
UDP Client listening on 0.0.0.0:52515
starting udp receive timer with timeout ms: 1000
timer expired 0 servers received
[]

 

 

Is that currently to be expected giving the state that this client is in?

 

I also noticed that when playing video, even if ET is resized and windowed, the video playback is full screen. Another thing I noticed is that the ET client prevents any other window from drawing overtop of it. If I move another window overtop of ET, ET snaps back in to focus.

 

I'm excited for this to work better and better, so that I can drop Windows 10. I have an IR receiver I can also use to test with and a Windows MCE remote, or a Logitech Harmony remote (which can become any remote).

Edited by TrainAss
Link to comment
Share on other sites

xnappo

When launching the client via terminal, I have this output

[...]

Yeah, the code for CEC is there and it *might* just work if you do:

sudo apt-get install cec-utils

Please let me know if you can test CEC.  @ said he had to make a small change to cec.js to get it to work with the Pi version.

 

 

I also noticed that when playing video, even if ET is resized and windowed, the video playback is full screen. 

Yeah, we could have it detect that Emby is not full screen and play in it's own window, but right now it isn't going to play inside the Emby window itself.  I tried that but it seemed to badly screw up the HW acceleration.  So, practically this will be a full-screen app - which honestly I think it okay since it is a couch interface?  We can revisit this after more is working in general if there is a lot of demand for it.

 

 

 

Another thing I noticed is that the ET client prevents any other window from drawing overtop of it. If I move another window overtop of ET, ET snaps back in to focus.

Yes - known issue (this is the first in my 'issues list in the first post).  I think I know how to fix this, but I have been spending time 1. resurrecting my Okuru theme for ET and 2. I got an Oculus Touch setup two days ago :D

 

Please test with your MCE remote?  Does it do anything at all?

 

If not - we may be forced to just use a side program to map the remote to keyboard inputs for now.

 

Thanks a lot for testing/trying it - knowing someone else besides me wants it is a motivator.

 

xnappo

Edited by xnappo
Link to comment
Share on other sites

TrainAss

Ok, I installed cec-utils and it was successful.

 

When I launch ET now, here is the terminal output

 

 

I grabbed my IR receiver and MCE remote. it's a Rosewill remote, but works the same. Within ET, the volume, mute and d-pad works, but OK, Play/Pause/FF/RW/Skip buttons don't. I'm configuring LIRC right now and will get back to you on that.

 

Edit: I tossed the terminal output in to Pastebin because it was rather long and I didn't want to take up all the space here.

Edited by TrainAss
  • Like 1
Link to comment
Share on other sites

TrainAss

Ok, so LIRC doesn't work properly, at least with my kit. Once I removed it, the remote started working again. Plugging the IR receiver in All the buttons on the remote register as the correct key. I pasted the output here as it's pretty long. Play/Pause/FF/RW all work in xPlayer. I'm ripping a DVD and will mount the ISO and try the D-pad and OK in something like VLC.

 

If you have an IR receiver and want to test it, first make sure that ir-keytable is installed

 

sudo apt-get install ir-keytable -y

 

Then you need to determine which device event# your IR receiver is

 

sudo ir-keytable

 

You'll get an output something like 

 

Found /sys/class/rc/rc0/ (/dev/input/event10) with:

Driver mceusb, table rc-rc6-mce
Supported protocols: unknown other lirc rc-5 jvc sony nec sanyo mce-kbd rc-6 sharp xmp
Enabled protocols: unknown other lirc rc-5 jvc sony nec sanyo mce-kbd rc-6 sharp xmp
Name: Media Center Ed. eHome Infrared
bus: 3, vendor/product: 147a:e042, version: 0x1201
Repeat delay = 500 ms, repeat period = 125 ms

 

To then test all your buttons enter

 

sudo ir-keytable -t -d /dev/input/event#

* Where event# is, use the one you found in the step above.

 

From here, press each key on your remote to test. If it detects the keypress correctly you'll get something similar to this

 

1483378852.761126: event type EV_MSC(0x04): scancode = 0x800f0417

1483378852.761126: event type EV_KEY(0x01) key_down: KEY_RECORD(0x00a7)
1483378852.761126: event type EV_SYN(0x00).
1483378853.010221: event type EV_KEY(0x01) key_up: KEY_RECORD(0x00a7)
1483378853.010221: event type EV_SYN(0x00).

 

I've noticed that MPV player does not handle the FF/RW/Skip/stop buttons whereas the D-Pad Up/Down will do a large jump forward/back and the left/right will do a small jump forward/back. Play and pause buttons operate the same way as well.

 

I wonder if we need to modify the input.conf so it knows what to do with the different key presses.

Edited by TrainAss
  • Like 1
Link to comment
Share on other sites

TrainAss

Ok, found some more discoveries. The OK key does not translate in to a valid command in Emby, yet using Enter does. L/R on the D pad also FF/RW by a short jump as well.

 

I'll see if I can figure out how to get those mapped properly.

  • Like 1
Link to comment
Share on other sites

xnappo

Ok, found some more discoveries. The OK key does not translate in to a valid command in Emby, yet using Enter does. L/R on the D pad also FF/RW by a short jump as well.

 

I'll see if I can figure out how to get those mapped properly.

Excellent - so with a Harmony it could be easily mapped, and maybe with some config file changes it could be modified to work as expected.

 

Do you have an HDMI-CEC capable video chipset?

Link to comment
Share on other sites

TrainAss

I don't know if it is. It's an ATi Radeon HD 8330. When I was running this as my Win10 HTPC with ET, I never tried CEC as I always had an IR blaster connected. I found CEC was slower than straight IR, but my only experiences with it were with my Nexus Player.

 

I think if we can get controls working with a standard MCE remote, then a Harmony remote will be no problems.

Link to comment
Share on other sites

haraldov

I do not know if you have read my posting in the tread "Emby Theater on Raspberry" about running your ET for Linux on Raspberry?

Look here at post 80: https://emby.media/community/index.php?/topic/42760-emby-theater-on-raspberry-pi/?p=401603

Is the issues related to running on raspberry pi?

 

I has been nice if you can fix the OSD is displaying on top of the video window and the other issues. See post 89: https://emby.media/community/index.php?/topic/42760-emby-theater-on-raspberry-pi/?p=402016

 

Developer null_pointer replies this:  

I have seen that also.
Interesting that it looks like your OSD is actually displaying on top of the video window, I can not get that to work for me.

Maybe developer "null_pointer" and you can help each other?

 

Thanks 

Link to comment
Share on other sites

xnappo

I do not know if you have read my posting in the tread "Emby Theater on Raspberry" about running your ET for Linux on Raspberry?

Look here at post 80: https://emby.media/community/index.php?/topic/42760-emby-theater-on-raspberry-pi/?p=401603

Is the issues related to running on raspberry pi?

Maybe developer "null_pointer" and you can help each other?

 

Yes, and not to worry, we are in constant contact with each other.

 

The Pi video system is substantially different from a PC, so this issue is unique to the Pi.  Right now @ is concentrating on OMXPlayer - the issue with MPV is we can't figure out how to overlay an OSD on the Pi.

 

On a PC - we can put the OSD on top of the video by forcing the video on top.  On the Pi this doesn't work - and the only way we have been able to get an OSD is by making the video transparent.  OMXPlayer has a switch to do this, but as far as we can tell MPV does not.

 

xnappo

Link to comment
Share on other sites

redaktorn

I am very happy for the work on bringing Emby Theater to Linux :-)

It will be a great alternative to running Kodi.

 

I am not so professional with Linux but I have installed the testversion and got it up and running.

Although I cannot get my remote to work. I have tried suggestions above and a few more but no result.

I think the final version must support LIRC to make it easy enough for us "dummies".

 

Anyhow I can test the Emby Theater with my keyboard and it looks great.

 

Since this version (I presume) is intended mainly for HTPC (Home Theaters) I have a few considerations.

First I miss the "Home Page" that you get in the web-browser with an overview of everything. 

I would like to see that also in Emby Theater.

As it is now "Home" takes you to whatever folder you have first in your setup (in my case collections).

 

Secondly I am not so sure that Emby Theater when used with a remote shall be so much orientated in navigating horizontally?

I would prefer navigating more up and down (as it is in the web-browser version)

 

I can notice that there are a few things which still needs mouse operation.

Like finding and changing to window mode/fullscreen.

When choosing profile/setting icon I cannot see in next screen what is marked/highlighted.

I have to count the numbers I move to know what selection I make (or use a mouse to point at it).

 

Thanks for a great job. I look forward to coming updates.

 

P.S: I run the test version on Ubuntu 16.04.

Link to comment
Share on other sites

xnappo

I am very happy for the work on bringing Emby Theater to Linux :-)

It will be a great alternative to running Kodi.

Thanks for the interest!

 

 

 

I think the final version must support LIRC to make it easy enough for us "dummies".

Well there is software for Linux to allow mapping from any remote to and keyboard action, so someone without an MCE remote will have to write up how.  MCE remotes will be directly supported though.  What remote do you have?

 

 

Most of your other comments are really Emby Theater related and not Linux per-se.  Actually a lot of them could be addressed with different 'skins' and we are hopeful we will get a skinning community going to give people more UI options.

 

I will warn that I am quite busy with other stuff right now, so going may be slow on this project.

 

xnappo 

Edited by xnappo
Link to comment
Share on other sites

redaktorn

Thanks for the interest!

 

 

 

Well there is software for Linux to allow mapping from any remote to and keyboard action, so someone without an MCE remote will have to write up how.  MCE remotes will be directly supported though.  What remote do you have?

 

 

Most of your other comments are really Emby Theater related and not Linux per-se.  Actually a lot of them could be addressed with different 'skins' and we are hopeful we will get a skinning community going to give people more UI options.

 

I will warn that I am quite busy with other stuff right now, so going may be slow on this project.

 

xnappo 

 

Thank you for kind reply.

I use a MCE remote in a Harmony remote control (so hopefully that will work later -couldn't get it to work now).

I keep my eyes open for developments (as well the skins)

Link to comment
Share on other sites

I had issues with mce remote in pi and in the above posts someone mentioned ir-keytable i installed that and in few minutes i was up and running i spent couple of hours with lirc and no luck. I can provide you with the commands all i know i installed run a command it saved all commands to a text file changed the text of ok and exit button and loaded that file and finally created a autostart script. There are lot of help materials on it.

  • Like 1
Link to comment
Share on other sites

redaktorn

I had issues with mce remote in pi and in the above posts someone mentioned ir-keytable i installed that and in few minutes i was up and running i spent couple of hours with lirc and no luck. I can provide you with the commands all i know i installed run a command it saved all commands to a text file changed the text of ok and exit button and loaded that file and finally created a autostart script. There are lot of help materials on it.

 

Hi denz,

I have installed the ir-keytable.

I have started it and tried to make the tests as suggested above by TrainAss.

No luck so far I am sorry to say.

 

If you have any additional info I am happy to receive it.

Link to comment
Share on other sites

 

Have you uninstalled lirc

 

When you type ir-keytable do you get any output I get driver mceusb table rc-rc6-mce you should get the same

 

Then try ir-keytable -t and press buttons on your remote and it should display which button you pressed if it does your remote is compatible and it will work.

  • Like 2
Link to comment
Share on other sites

redaktorn

Hi denz,

 

I have for testing purpose uninstalled LIRC.

And then it works - BUT I get the problem that some remote buttons do not work.

One of the not working buttons is the OK button, so the remote becomes pretty useless.

 

When I type ir-keytable i get the following output:

Found /sys/class/rc/rc0/ (/dev/input/event3) with:
 Driver nuvoton-cir, table rc-rc6-mce
 Supported protocols: unknown other lirc rc-5 jvc sony nec sanyo mce-kbd rc-6 sharp xmp
 Enabled protocols: unknown other lirc rc-5 jvc sony nec sanyo mce-kbd rc-6 sharp xmp
 Name: Nuvoton w836x7hg Infrared Remote
 bus: 25, vendor/product: 1050:00c3, version: 0x0033
 Repeat delay = 500 ms, repeat period = 125 ms

 

When testing ir-keytable -t, I do get response on all kind of buttons - also OK button.

But it does not map correct so I have no OK button in Emby Theater.

 

Same problem in Kodi but if I install LIRC again I get all buttons to work in Kodi (none in ET)

 

Link to comment
Share on other sites

The remote will work then few more steps

 

This command will produce the file that you need to edit

 

ir-keytable -r  > ~/mcekeytable

 

 

now open it and change OK to ENTER and EXIT to ESC then reload it with following commands

 

ir-keytable -c
ir-keytable -w ~/mcekeytable  searching on google some put other options but this worked for me

 

then test it

 

ir_keytable -t

 

now load theater and see do the buttons work they should then few more things

 

I copied the text file to /etc/rc_keymaps folder

 

and put this line  nuvoton-cir rc-rc6-mce mcekeytable in /etc/rc_maps.cfg  

 

try this if it doesn stick on reboot then you need to create autostart script 

 

I have also had a small issue is that not everything worked unless I reboot.

 

you will also need to change KEY_NUMERIC_5 to KEY_5 and do this for the rest of the numbers I just took 5 for example.

Edited by denz
  • Like 1
Link to comment
Share on other sites

redaktorn

Hi,

 

Now I have tried Emby Theater with a working remote and must say that I like it a lot :)

With some more development and a skinning community it will be a success.

 

Thank you denz for helping me out.

I have solved most issues using your information and some other info like here:

http://pdxpastimes.blogspot.se/2014/11/howto-get-mce-usb-remote-working-in.html

 

It took a huge amount of testing (for me who is a dummy) and as I understand it using ir-keytable (instead of lirc) will never be 100% compatible with Kodi. There is also a language problem when using ir-keytable since several keystrokes in Kodi actually differs when using non English keyboard.

 

My table "rc-rc6-mce" is located in /etc/rc_keymaps/

My "rc_maps.cfg" points to that file so it works and stays after editing and reboot. 

 

An important issue that comes up when configuring ir-keytable is that Kodi and Emby Theater does not use same buttons. Example Kodi wants "X" for stop but that is not what Emby Theater use.

(I never found out what button equals to stop in ET but it is not "X")

In total this gives problems with play, stop, forward, reverse and some other functions.

(They don't work in Emby Theater when mapping is done to fit Kodi)

Maybe somebody more clever than me can find out how to map the ir-keytable to fit both Kodi and Emby Theater?

But it is over my knowledge for sure (Sorry).

My personal opinion is still that Emby Theater needs to support the LIRC to avoid problems and to make a compatible setup in Linux that can be used as well for Emby as for Kodi.

 

For getting all buttons working in Kodi with ir-keytable it takes several more buttons to edit than discussed above..

Some of them I had to try out by "trial and error" on my keybord to get right.

(Example EPG is not "G" in Swedish keyboard - it is "C")

When done with all buttons there are still things that cannot be solved.

Kodi use "pause" "play" and "playpause" with not only the "P". It uses also the "SPACE".

I could not find out of how to combine that in my table to get it right on the remote (but it is not important).

The important thing is that it seems to differ between Kodi and Emby + it differs depending what language you use.

 

As it is for the moment I am ready testing and have no more plans to test the current version.

If anybody is interested in my configuration of the ir-keytable i attach the file here.

(I am not asking for help with it - maybe it can help somebody else who wants to try Emby Theater for Linux)

 

 

myrc6_mce.txt

  • Like 1
Link to comment
Share on other sites

xnappo

Nice work.  

 

What would the priority be for y'all in:

 

1. Fixing the always-on-top issue

2. Making playback launch smoother (don't show the desktop while launching)

3. Get Okuru working again (https://emby.media/community/index.php?/topic/32015-okuru-theme-wip/)

4. Other (though keep in mind we are talking about the Okuru skin and Linux port - anything that is general to ET is not me)

  • Like 1
Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...