philippe_44 wrote:
> If look at LMS code, it's violently hard-coded
>
> >
Code:
--------------------
> >
> if ($client->streamBytes() == 0 && $client->streamformat() eq 'mp3') {
>
> my $silence = 0;
> # use the maximum silence prelude for the whole sync group...
> foreach my $buddy ($client->syncGroupActiveMembers()) {
>
> my $asilence =
$prefs->client($buddy)->get('mp3SilencePrelude');
>
> if ($asilence && ($asilence > $silence)) {
> $silence = $asilence;
> }
> }
>
> 0 && $log->debug("We need to send $silence seconds of
silence...");
>
> while ($silence > 0) {
> $chunk .=
${Slim::Web::HTTP::getStaticContent("html/lbrsilence.mp3")};
> $silence -= (1152 / 44100);
> }
>
> my $len = length($chunk);
>
> main::DEBUGLOG && $log->debug("Sending $len bytes of silence.");
>
> $client->streamBytes($len);
>
> return \$chunk if ($len);
> }
>
--------------------
> >
> Maybe best we can do is disable that unless rate is 44.1. I'll check
> if the information is available at that point
I've submitted a PR with that
Code:
--------------------
if ($client->streamBytes() == 0 && $client->streamformat() eq 'mp3' &&
$client->streamingSong()->samplerate() == 44100) {
--------------------
It's lazyman version as it will only work for files (samplerate in $song
object is only set when streaming local files), you could try to use
$client->streamingSong->currentTrack->samplerate as well if you prefer
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
------------------------------------------------------------------------
philippe_44's Profile: http://forums.slimdevices.com/member.php?userid=17261
View this thread: http://forums.slimdevices.com/showthread.php?t=114921
_______________________________________________
unix mailing list
[email protected]
http://lists.slimdevices.com/mailman/listinfo/unix