Announcement

Collapse
No announcement yet.

ANNOUNCE: Squeezelite-ESP32 (dedicated thread)

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

    Originally posted by Stumphy View Post
    I apologize if this is a rudimentary question, this is definitely the hard-core corner of the LMS frontier.

    I have set up an Mn Cast Raspiaudio box. As warned in this thread repeatedly, the ESP32 gets overwhelmed with high bitrate FLAC - I'm getting stuttering on 24/96k files. So far, no problem, I understand.

    But I've been assuming it was possible to force transcoding on my very-capable LMS server somehow. I figured I could set some kind of per-player threshold or limit for the ESP32 that the LMS server would honor, and the LMS server would resample everything on the fly before sending it to the EMS32. If this is possible, I can't figure out how to do it.

    I'm not bitrate obsessed - I have no illusions that I can hear the differences between high bitrate and redbook audio. I'm content with some dither error or whatever when streaming to ESP32. But I do purchase high bitrate files when the cost differential isn't crazy, so I have a fair amount of them, and will continue to buy them..

    Suggestions?
    It is really overwhelmed if you use the 32 bits version under not very good WiFi conditions and potentially use SPDIF. Now, you can limit the esp32 bitrate and force LMS to do transcoding by using the "-Z 48000" option of the squeezelite/esp32 command line that will force squeezeesp32 to indicate a capacity of just 48k to LMS
    LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

    Comment


      Originally posted by Stumphy View Post
      But I've been assuming it was possible to force transcoding on my very-capable LMS server somehow. I figured I could set some kind of per-player threshold or limit for the ESP32 that the LMS server would honor, and the LMS server would resample everything on the fly before sending it to the EMS32. If this is possible, I can't figure out how to do it.
      What Philippe mentions limits the sample rate of the audio sent to the player to 48000 samples per second. You can also limit the bitrate of the audio sent to the player via the LMS web interface. On the Player tab, select the player for which you want to limit the bitrate, and then Audio. Under the Audio settings there is a setting called Bitrate Limiting. If you change this setting from No Limit to for example 320kbps, LMS will transcode FLAC files to 320kbps MP3 files. See screenshot below.

      Click image for larger version

Name:	LMS_Player_bitrate_limiting.png
Views:	112
Size:	20.5 KB
ID:	1628577

      | LMS 8.3.1 on Linux Mint | Squeezebox Boom | RPi0W + pCP 8.2.0 + HiFiBerry DAC Zero | SqueezeAMP | ESP Muse Luxe |

      Comment


        What Philippe mentions limits the sample rate of the audio sent to the player to 48000 samples per second. You can also limit the bitrate of the audio sent to the player via the LMS web interface. On the Player tab, select the player for which you want to limit the bitrate, and then Audio. Under the Audio settings there is a setting called Bitrate Limiting. If you change this setting from No Limit to for example 320kbps, LMS will transcode FLAC files to 320kbps MP3 files. See screenshot below.
        Yeah, I haven't streamed MP3 if I had a choice since the SliMP3. Thank you though!

        It is really overwhelmed if you use the 32 bits version under not very good WiFi conditions and potentially use SPDIF. Now, you can limit the esp32 bitrate and force LMS to do transcoding by using the "-Z 48000" option of the squeezelite/esp32 command line that will force squeezeesp32 to indicate a capacity of just 48k to LMS
        Ah, ok! I was wondering if that was the right option. This is working much better now. Thank you as well!

        I have one more issue, I'll put it in the next message.
        Last edited by Stumphy; 2023-01-30, 21:24.

        Comment


          I'm getting a fairly consistent dropout at the end of tracks. The silence lasts maybe 0.5 seconds, and comes about 8 seconds before the end of a track. If I rewind it will often recur at about the same place, but not every time. The first time playing every track, it happens pretty reliably - at least 90% of the time.

          This is an Mn Cast, running SPDIF, now limited to 48k on FLAC tracks, and I have the display working as well. Is this a known issue? Is there something I can do about it?

          This was happening before I added the 48k limit by the way, and happens on all FLAC tracks regardless of original bitrate.

          Again, I understand this is a minor miracle that it is working at all on such a cheap chip. Just hoping I can get the keel to clear the harbor.

          Last edited by Stumphy; 2023-01-30, 21:35.

          Comment


            Originally posted by Stumphy View Post
            I'm getting a fairly consistent dropout at the end of tracks. The silence lasts maybe 0.5 seconds, and comes about 8 seconds before the end of a track. If I rewind it will often recur at about the same place, but not every time. The first time playing every track, it happens pretty reliably - at least 90% of the time.

            This is an Mn Cast, running SPDIF, now limited to 48k on FLAC tracks, and I have the display working as well. Is this a known issue? Is there something I can do about it?

            This was happening before I added the 48k limit by the way, and happens on all FLAC tracks regardless of original bitrate.

            Again, I understand this is a minor miracle that it is working at all on such a cheap chip. Just hoping I can get the keel to clear the harbor.
            I have a similar problem. For me the dropout occurs 10 s before the end of the track, but not for all tracks. I think the dropout coincides with a burst of data from LMS to buffer the upcoming track. My "feeling" is that whether or not a dropout occurs is related to the bitrates of the playing track and the next track. When the combined data rates exceed some limit, then the dropout occurs. But I have to admit I have not put in the effort to prove it.

            The suggestion by CJS to turn on LMS bitrate limiting does prevent the dropout, but it adversely affects gapless play, which is a bigger problem to my ears.

            I have decided just to live with the occasional brief dropout.

            Comment


              SqueezeIO
              Originally posted by Gobuleberbu View Post

              SqueezeIO?!? That sounds interesting
              Can we follow that project?
              Soon
              Last edited by sle118; 2023-01-31, 01:49.
              LMS 7.9 - 1xRadio, 1xBoom, 5xDuet,3xTouch, 1 SB2. Sony PlayStation, Emby, Chromecast v1 and v2 and...
              6xSqueezeAmp, several other ESP32-Wrover boards with jumper wires flying around, some with ethernet!

              Comment


                Originally posted by AngloCuencano View Post

                I have a similar problem. For me the dropout occurs 10 s before the end of the track, but not for all tracks. I think the dropout coincides with a burst of data from LMS to buffer the upcoming track. My "feeling" is that whether or not a dropout occurs is related to the bitrates of the playing track and the next track. When the combined data rates exceed some limit, then the dropout occurs. But I have to admit I have not put in the effort to prove it.

                The suggestion by CJS to turn on LMS bitrate limiting does prevent the dropout, but it adversely affects gapless play, which is a bigger problem to my ears.

                I have decided just to live with the occasional brief dropout.
                are you streaming local content, or?
                LMS 7.9 - 1xRadio, 1xBoom, 5xDuet,3xTouch, 1 SB2. Sony PlayStation, Emby, Chromecast v1 and v2 and...
                6xSqueezeAmp, several other ESP32-Wrover boards with jumper wires flying around, some with ethernet!

                Comment


                  Originally posted by sle118 View Post
                  are you streaming local content, or?
                  Yes, mostly flac files, and mainly 44.1 KHz. I changed to proxied streaming, and that made the glitching less noticeable. I have no problems with streaming content.

                  Comment


                    Originally posted by AngloCuencano View Post

                    Yes, mostly flac files, and mainly 44.1 KHz. I changed to proxied streaming, and that made the glitching less noticeable. I have no problems with streaming content.
                    Do you use the 32 bits version and/or spdif output?
                    LMS 8.2 on Odroid-C4 - SqueezeAMP!, 5xRadio, 5xBoom, 2xDuet, 1xTouch, 1xSB3. Sonos PLAY:3, PLAY:5, Marantz NR1603, Foobar2000, ShairPortW, 2xChromecast Audio, Chromecast v1 and v2, Squeezelite on Pi, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5, RivaArena 1 & 3

                    Comment


                      Originally posted by philippe_44 View Post
                      Do you use the 32 bits version and/or spdif output?
                      No, I use 16 bits and I2S.

                      Since this problem got into my head again, I played around a bit with the buffer settings. If I put -b 700:1800, then the dropout seems to be eliminated. But I have not listened very extensively since I made this change.

                      Comment

                      Working...
                      X