Closed NonaSuomy closed 1 year ago
I recommend you check either in the LMS forums, or that you ask the question to the owner of the docket image you are running. I am not using such image, so I can't help.
What do you use? The owner of the docker image is Logitech I believe https://github.com/Logitech/slimserver-platforms/tree/public/8.3/Docker
Is there anyway to tell squeezelite-esp32 where the LMS server is manually?
you mean like -s 192.168.0.1
?
@daduke thanks for commenting. Where would you enter this into squeezelite-esp32 webui?
Found this on a random site with your nudge in the right direction. Not sure where the official documentation is for it:
COMMAND LINE INPUT | DESCRIPTION
-s <server>[:<port>] Connect to specified server, otherwise uses autodiscovery to find server
-o <output device> Specify output device, default „default“, – = output to stdout
-l List output devices
-a <b>:<p>:<f>:<m> Specify ALSA params to open output device, b = buffer time in ms or size in bytes, p = period count or size in bytes, f sample format (16\|24\|24_3\|32), m = use mmap (0\|1)
-a <f> Specify sample format (16\|24\|32) of output file when using -o – to output samples to stdout (interleaved little endian only)
-b <stream>:<output> Specify internal Stream and Output buffer sizes in Kbytes
-c <codec1>,<codec2> Restrict codecs to those specified, otherwise load all available codecs; known codecs: flac,pcm,mp3,ogg,aac,wma,alac,dsd (mad,mpg for specific mp3 codec)
-C <timeout> Close output device when idle after timeout seconds, default is to keep it open while player is ‚on‘
-d <log>=<level> Set logging level, logs: all\|slimproto\|stream\|decode\|output\|ir, level: info\|debug\|sdebug
-G <Rpi GPIO#>:<H/L> Specify the BCM GPIO# to use for Amp Power Relay and if the output should be Active High or Low
-e <codec1>,<codec2> Explicitly exclude native support of one or more codecs; known codecs: flac,pcm,mp3,ogg,aac,wma,alac,dsd (mad,mpg for specific mp3 codec)
-f <logfile> Write debug to logfile
-i [<filename>] Enable lirc remote control support (lirc config file ~/.lircrc used if filename not specified)
-m <mac addr> Set mac address, format: ab:cd:ef:12:34:56
-M <modelname> Set the squeezelite player model name sent to the server (default: SqueezeLite)
-n <name> Set the player name
-N <filename> Store player name in filename to allow server defined name changes to be shared between servers (not supported with -n)
-W Read wave and aiff format from header, ignore server parameters
-p <priority> Set real time priority of output thread (1-99)
-P <filename> Store the process id (PID) in filename
-r <rates>[:<delay>] Sample rates supported, allows output to be off when squeezelite is started; rates = <maxrate>\|<minrate>-<maxrate>\|<rate1>,<rate2>,<rate3>; delay = optional delay switching rates in ms
-S <Power Script> Absolute path to script to launch on power commands from LMS
-R -u [params] Resample, params = <recipe>:<flags>:<attenuation>:<precision>:<passband_end>:<stopband_start>:<phase_response>,recipe = (v\|h\|m\|l\|q)(L\|I\|M)(s) [E\|X], E = exception – resample only if native rate not supported, X = async – resample to max rate for device, otherwise to max sync rateflags = num in hex,attenuation = attenuation in dB to apply (default is -1db if not explicitly set),precision = number of bits precision (NB. HQ = 20. VHQ = 28),passband_end = number in percent (0dB pt. bandwidth to preserve. nyquist = 100%),stopband_start = number in percent (Aliasing/imaging control. > passband_end),phase_response = 0-100 (0 = minimum / 50 = linear / 100 = maximum)
-D[delay] Output device supports DSD over PCM (DoP), delay = optional delay switching between PCM and DoP in ms
-v Visualiser support
-L List volume controls for output device
-U <control> Unmute ALSA control and set to full volume (not supported with -V)
-V <control> Use ALSA control for volume adjustment, otherwise use software volume adjustment
-Q Sync local ALSA volume changes with Squeezebox Server Volume when using -V option
-X <gpio_button> Use a GPIO Button to switch between Play and Pause – works well with rotary encoders (Volume control) with integrated button for Play/Pause
-B Use to set PowerOn/Off Player on status of connected Bluetooth-Speakers (only for Pulse Audiooutput)Attention: Does not work with „-C“ parameter.
-I <port> Squeezebox Server CLI Port (optional). Default 9090
-z Daemonize
-z <rate> Report rate to server in helo as the maximum sample rate we can support
-t License terms
-? Display this help text
Under NVS Editor I put the IP:Port of the LMS server autoexec1:
squeezelite -b 500:2000 -d all=info -C 30 -W -n "squeezelite-face01" -o I2S -s 10.42.42.64:9000
It still didn't connect so I tried to edit these settings on the LMS server LMS-Server -> Server Settings -> Security -> Allowed IP Addresses: 10.42.42.64,10.13.37.*
yes autoexec1 is correct. If it still won't connect, something's iffy in your network.
Thank you for confirming that. Is the port correct? I noticed there are other ports listed what are they for?
LMS docker-compose.yml
version: "3.9"
services:
logitech-media-server:
container_name: lms
hostname: lms-docker
image: lmscommunity/logitechmediaserver:latest
#restart: unless-stopped
ports:
- "9000:9000"
- "9090:9090"
- "3483:3483"
- "3483:3483/udp"
volumes:
# Folder where LMS stores its data (cache, logs, prefs)
- /var/lib/libvirt/images/usb001/lms/config:/config
# Folder where LMS should look for music
- /var/lib/libvirt/images/usb001/audio/music:/music
# use time of host
- /etc/localtime:/etc/localtime:ro
#- /etc/timezone:/etc/timezone:ro
mac_address: de:ad:be:ef:fa:ce
networks:
- dhcp
environment:
- PUID=1000
- PGID=1003
networks:
dhcp:
name: dbrv100
external: true
sudo docker-compose up
LMS default is 9000, as for the others: https://superuser.com/questions/1442385/which-ports-must-be-open-on-the-server-to-use-logitech-media-server-lms-for-sq
So should I be pointing the player device at "3483 TCP: Physical Squeezebox" instead of "9000 TCP: Web GUI" or maybe just leave the port blank as it seems to notation that it's optional?
squeezelite -b 500:2000 -d all=info -C 30 -W -n "squeezelite-face01" -o I2S -s 10.42.42.64:3483
So after pointing it at 3483 it picked it up right away. Now I just have to understand why no sound is playing with the volume at max... n/m looks like it was just some of the radio stations are broken. Switched to another then it spouted to life. Also tested not adding a port and it still worked.
Thanks for your help @daduke
Thanks, adding -s ip
helped with discovery in home assistant. It seems it's not needed for later usage. I noticed, it keeps dissapearing from the input box after reboot
Does anyone know how to point Logitech Media Server (docker) 10.42.42. at a different IP range (wifi) 10.13.37. where the squeezelite-esp32 exists?
Or Squeezelite-esp32 to where the LMS is?
Thank you.