MediaBrowser / emby-theater-electron

An Electron app for Emby
https://emby.media
GNU General Public License v2.0
126 stars 51 forks source link

Playback doesn't work on Debian 12+ #139

Closed matazar closed 4 months ago

matazar commented 1 year ago

Since upgrading from Debian 11.7 to Debian 12.0, I have been unable to play any files (audio/video) using the Emby Theater app. The issue persists after upgrading to Debian 12.1. While I can still use the browser to playback my files, it unfortunately doesn't work as well with my remote.

I've tested this with a fresh install of Debian 12.0 and Debian 12.1 and run into the same problems with both Mate and KDE using amd64 and the install instructions from https://emby.media/emby-theater-linux.html#deb.

The application will open and I can log into my Emby server. However, if I try to playback any files it just hangs on the loading screen indefinitely. If I run the emby-theater command from console, the output for this is:

/usr/bin/emby-theater: 10: ldconfig: not found
readlink: missing operand
Try 'readlink --help' for more information.
/usr/bin/emby-theater: 10: [: -gt: unexpected operator
libGL error: MESA-LOADER: failed to open swrast: /usr/lib/dri/swrast_dri.so: cannot open shared object file: No such file or directory (search paths /usr/lib/x86_64-linux-gnu/dri:\$${ORIGIN}/dri:/usr/lib/dri, suffix _dri)
libGL error: failed to load driver: swrast
Initializing cec-client...

{
  cecExePath: 'cec-client',
  cecEmitter: EventEmitter {
    _events: [Object: null prototype] {},
    _eventsCount: 0,
    _maxListeners: undefined
  },
  cecHdmiPort: 'null'
}
cec-client exited with code 1
UDP Client listening on 0.0.0.0:48454
starting udp receive timer with timeout ms: 1000
timer expired 0 servers received
[]
fs access result for path: Error: ENOENT: no such file or directory, access '\\192.168.1.10\media\Archer (2009)\S01E03 - Diversity Hire.mkv'

If I build and run Emby Theater from this github, I face the same issue with slightly different output:

> emby-theater@3.0.20 start
> electron main.js

libva error: vaGetDriverNameByIndex() failed with unknown libva error, driver_name = (null)
Initializing cec-client...

{
  cecExePath: 'cec-client',
  cecEmitter: EventEmitter {
    _events: [Object: null prototype] {},
    _eventsCount: 0,
    _maxListeners: undefined,
    [Symbol(kCapture)]: false
  },
  cecHdmiPort: 'null'
}
ERROR: cec-client not installed, running without cec functionality.

cec-client exited with code -2
UDP Client listening on 0.0.0.0:52628
starting udp receive timer with timeout ms: 1000
timer expired 0 servers received
[]
fs access result for path: Error: ENOENT: no such file or directory, access '\\192.168.1.10\media\Archer%20(2009)\S01E03%20-%20Diversity%20Hire.mkv'

Here's output from a Debian 11.7 instance that was set up in the same way:

/usr/bin/emby-theater: 10: ldconfig: not found
readlink: missing operand
Try 'readlink --help' for more information.
/usr/bin/emby-theater: 10: [: -gt: unexpected operator
Initializing cec-client...

{
  cecExePath: 'cec-client',
  cecEmitter: EventEmitter {
    _events: [Object: null prototype] {},
    _eventsCount: 0,
    _maxListeners: undefined
  },
  cecHdmiPort: 'null'
}
UDP Client listening on 0.0.0.0:57039
starting udp receive timer with timeout ms: 1000
cec-client exited with code 1
timer expired 0 servers received
[]
fs access result for path: Error: ENOENT: no such file or directory, access '\\192.168.1.10\media\Archer (2009)\S01E03 - Diversity Hire.mkv'

Please let me know if there is any other information you require.

EoinHealy0 commented 7 months ago

I get the same fs error with the flatpak version in the last couple of weeks so this doesn't seem to be limited to Debian. Changing to software encoding didn't help either

MESA-LOADER: failed to open radeonsi: /usr/lib/x86_64-linux-gnu/GL/default/lib/dri/radeonsi_dri.so: undefined symbol: amdgpu_va_get_start_addr (search paths /usr/lib/x86_64-linux-gnu/GL/default/lib/dri, suffix _dri)
failed to load driver: radeonsi
MESA-LOADER: failed to open swrast: /usr/lib/x86_64-linux-gnu/GL/default/lib/dri/swrast_dri.so: undefined symbol: amdgpu_va_get_start_addr (search paths /usr/lib/x86_64-linux-gnu/GL/default/lib/dri, suffix _dri)
failed to load driver: swrast
Initializing cec-client...

{
  cecExePath: 'cec-client',
  cecEmitter: EventEmitter {
    _events: [Object: null prototype] {},
    _eventsCount: 0,
    _maxListeners: undefined
  },
  cecHdmiPort: 'null'
}
UDP Client listening on 0.0.0.0:49874
starting udp receive timer with timeout ms: 1000
cec-client exited with code 1
timer expired 0 servers received
[]
fs access result for path: Error: ENOENT: no such file or directory, access '/mnt/TV/
LukePulverenti commented 4 months ago

Hi, can you please try our new Emby Theater 3.0.21 package?

https://emby.media/download

Please let us know how this compares. Thanks !

matazar commented 4 months ago

@LukePulverenti the 3.0.21 package has fixed the issues for me. Playback works again on my systems (Debian 12.5).

Thanks for getting that fixed!

LukePulverenti commented 6 days ago

Also FYI: https://emby.media/community/index.php?/topic/132511-new-emby-for-linux-engineering-demo-call-for-testers/