Only default device appears in output device list if squeezelite is set to auto run but fails to run
Nadie ha tomado este issue todavía.
Evaluación
- Dificultad
- 2/5
- Tiempo estimado
- 1-3 horas
- Aptitud para principiantes
- 52/100
Línea de trabajo
Start in LocalPlayer/Settings.pm at handler2 around line 89, then read the Squeezelite devices routine and the nearby binary-path handling. Verify the behavior when autorun is enabled but Squeezelite fails to start; done means the output device list still includes available devices rather than only the default entry, with the relevant platform and Docker paths considered.
Escrito por el modelo de indexación a partir del texto del issue.
Descripción
Issue was discussed in this thread.
https://forums.lyrion.org/forum/user-forums/logitech-media-server/1785058-local-player-and-rpi-os-bookworm-desktop
From my posty on the thread. My understanding of the problem and a suggested fix.
The list of available output devices is generated by the devices routine in Settings.pm.
This routine can have one optional parameter - the path of the squeezelite binary to run.
If the squeezelite binary path is not supplied (as when called by handler2 in Settings.pm) and "autorun" pref is set, then the devices routine will use the path of the squeezelite that is running.
However if squeezelite has failed to run (e.g. output device inacessible/invalid), then devices routine has no path to binary and so returns a list just with "default" entry.
My suggested fix is to add the path to the devices call in Settings.pm handler2.
Line 89 LocalPlayer/Settings.pm
from
my $devices = Plugins::LocalPlayer::Squeezelite->devices;
to
my $devices = Plugins::LocalPlayer::Squeezelite->devices(Slim::Utils::Misc::findbin($bin));
Within the plugin, the determination of which version of squeezelite to run is a bit convoluted (e.g. OS / arch / Docker / pcp) , so I'm not 100% confident this will work for all instances.
However since Slim::Utils::Misc::findbin($bin) is used just a few lines above my changes to determine squeezelite command line options - I think it should be ok.
If it looks to be a fix there are efficiencies and tests that can be added to make it more robust.
- Lenguaje dominante
- Perl
- Estrellas
- 4
- Forks
- 5
- Métricas de merge de PR
- Sin PR fusionados en 30 d
Guía de contribución
No hay ninguna guía de contribución indexada para este repositorio
Primeros pasos
- Lee el issue completo y luego la guía de contribución del proyecto.
- Comenta en el issue que vas a ocuparte — evita que dos personas hagan lo mismo.
- Haz un fork del repositorio y trabaja en una rama.
- Abre un pull request que haga referencia al número del issue.
Más de LMS-Community/plugin-LocalPlayer
-
Installed in Docker Abierto
Dificultad 5/5 Más de una semana Aptitud para principiantes 20/100
LMS-Community/plugin-LocalPlayer#2 · 1 comentario ·
-
Dificultad 4/5 3-5 días Aptitud para principiantes 20/100
LMS-Community/plugin-LocalPlayer#1 · 5 comentarios ·
Todos los issues de LMS-Community/plugin-LocalPlayer
Issues similares
-
documentation Needs Triage
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
trizen/youtube-viewer#456 ·
-
Dificultad 2/5 1-3 horas Aptitud para principiantes 70/100
-
connectivity Abierto
Dificultad 1/5 Menos de una hora Aptitud para principiantes 80/100
-
Common US ingredient names are not recognized, so about 12.4k US products miss an allergen warning Abierto
Dificultad 2/5 1-3 horas Aptitud para principiantes 75/100
openfoodfacts/openfoodfacts-server#14657 · 4 comentarios ·