Home of the Squeezebox™ & Transporter® network music players.
Page 2 of 4 FirstFirst 1234 LastLast
Results 11 to 20 of 36
  1. #11
    Quote Originally Posted by mherger View Post
    Are you saying it does no longer play on the Radio, but did before? But
    it still worked on the Touch?
    With the old LMS it plays on the SBRadio albeit with the decoding pipe above. With current LMS it does not play on the SBRadio. In both LMS versions it plays without issue on the SBTouch and also on the SBController.

  2. #12
    Here is an attempt at logs for the SBRadio with the old and new server. Niot quite sure what I should be logging. I have used the Transcoder log set.
    Attached Files Attached Files

  3. #13
    Senior Member
    Join Date
    May 2010
    Location
    London, UK
    Posts
    525
    Quote Originally Posted by mherger View Post
    Here's another change which might have had an impact:

    https://github.com/Logitech/slimserv...adf62562064a18
    Almost certainly that is it. Prior to that point, LMS did not check the sample rate of the ogg/flac stream against the player capabilities, so the Radio would have been given the 96000 kHz stream.

    Now, although the Radio tells us that it can only handle up to 48000 kHz, in reality I have heard a 96000 kHz stream emerge from it apparently just fine. Its ALSA subsystem does seem to down sample that rate to the 48000 kHz that the hardware can handle. I vaguely recall that it didn't fare so well with an 88200 kHz stream, though. I'd need to check again.

    The Controller, on the other hand, reports a maximum sample rate of 96000 kHz, and presumably the Touch likewise (I don't have one), and we note that the Controller continues to work.

    I don't know whether LMS' sox can handle an ogg/flac stream. Assuming that it can't, might the following conversion rule work in a custom-convert.conf ? I'd test it, but I don't have access to an ogg/flac 24/96 stream. I don't have much experience with these rules, so I may have got it well wrong.
    Code:
    ogf flc * *
            # IFRD:{RESAMPLE=-r %d}
    	[flac] --ogg -dcs -- $FILE$ | [sox] -q -t flac - -t flac -C 0 $RESAMPLE$ -

  4. #14
    Quote Originally Posted by mherger View Post
    Here's another change which might have had an impact:

    https://github.com/Logitech/slimserv...adf62562064a18

    (unfortunately there's a ton of whitespace changes in there...)
    Quote Originally Posted by mrw View Post
    Almost certainly that is it. Prior to that point, LMS did not check the sample rate of the ogg/flac stream against the player capabilities, so the Radio would have been given the 96000 kHz stream.
    Yes, correct. Before this change LMS displays estimated bitrate for this stream as 0, after it displays 2764kbps CBR. There are statements to log relevant information but how do I activate logging for Slim/Utils/Scanner/Remote.pm?

    SBRadio and SBReceiver share the same fate btw. Both play the 24/96 stream nicely with the old LMS but none does with the current LMS. Thanks for the custom-convert.conf suggestion, I'll try this next.

  5. #15
    I don't get why some of my replies to my own thread are moderated while others (like this one) aren't?

  6. #16
    Quote Originally Posted by mrw View Post
    I don't know whether LMS' sox can handle an ogg/flac stream. Assuming that it can't, might the following conversion rule work in a custom-convert.conf ? I'd test it, but I don't have access to an ogg/flac 24/96 stream. I don't have much experience with these rules, so I may have got it well wrong.
    Code:
    ogf flc * *
            # IFRD:{RESAMPLE=-r %d}
    	[flac] --ogg -dcs -- $FILE$ | [sox] -q -t flac - -t flac -C 0 $RESAMPLE$ -
    I have tested this and while it gets picked up according to the log file attached it does not work. Unfortunately, I have zero experience with conversion rules but maybe someone who does can point out what is wrong?
    Attached Files Attached Files

  7. #17
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    18,842
    The log shows the flac / sox being executed and some data being processed but something breaks down and no data is sent from the transcoding to the player.

    Why is the input to sox marked as flac - surely the decode output ogg/flac decoding is PCM ?

    Code:
    [20-02-04 11:50:42.8330] Slim::Player::TranscodingHelper::tokenizeConvertCommand2 (616) Using command for conversion: "/usr/share/squeezeboxserver/Bin/armhf-linux/flac" --ogg -dcs -- - | "/usr/share/squeezeboxserver/Bin/armhf-linux/sox" -q -t flac - -t flac -C 0 -r 48000 -
    [20-02-04 11:50:42.8337] Slim::Player::Song::open (558) Tokenized command: "/usr/share/squeezeboxserver/Bin/armhf-linux/flac" --ogg -dcs -- - | "/usr/share/squeezeboxserver/Bin/armhf-linux/sox" -q -t flac - -t flac -C 0 -r 48000 -
    [20-02-04 11:50:42.8544] Slim::Player::SongStreamController::new (30) live=1
    [20-02-04 11:50:42.8572] Slim::Player::StreamingController::_Stream (1282) 00:04:20:28:4c:a1: stream
    [20-02-04 11:50:42.8639] Slim::Player::StreamingController::_Stream (1319) Song queue is now 0
    [20-02-04 11:50:42.8651] Slim::Player::StreamingController::_setPlayingState (2377) new playing state BUFFERING
    [20-02-04 11:50:42.8661] Slim::Player::StreamingController::_setStreamingState (2386) new streaming state STREAMING
    [20-02-04 11:50:42.8671] Slim::Player::StreamingController::_eventAction (302) 00:04:20:28:4c:a1: NextTrackReady - new state BUFFERING-STREAMING
    [20-02-04 11:50:42.9124] Slim::Player::Pipeline::sysread (281) Pipeline doesn't have pending bytes - trying to get some from source
    .
    .
    [20-02-04 11:50:43.0096] Slim::Player::Player::_buffering (1144) Buffering... 0 / 261120
    [20-02-04 11:50:43.0125] Slim::Player::StreamingController::_eventAction (272) 00:04:20:28:4c:a1: StatusHeartbeat in BUFFERING-STREAMING -> Slim::Player::StreamingController::_NoOp
    [20-02-04 11:50:43.0344] Slim::Player::StreamingController::_eventAction (272) 00:04:20:28:4c:a1: StatusHeartbeat in BUFFERING-STREAMING -> Slim::Player::StreamingController::_NoOp
    [20-02-04 11:50:43.3123] Slim::Player::Player::_buffering (1144) Buffering... 0 / 261120
    [20-02-04 11:50:43.3153] Slim::Player::Pipeline::sysread (281) Pipeline doesn't have pending bytes - trying to get some from source
    [20-02-04 11:50:43.3165] Slim::Player::Pipeline::sysread (303) Attempting to write to pipeline writer
    [20-02-04 11:50:43.3174] Slim::Player::Pipeline::sysread (309) Wrote 32768 bytes to pipeline writer
    [20-02-04 11:50:43.3189] Slim::Player::Pipeline::sysread (281) Pipeline doesn't have pending bytes - trying to get some from source
    [20-02-04 11:50:43.3201] Slim::Player::Pipeline::sysread (303) Attempting to write to pipeline writer
    [20-02-04 11:50:43.3215] Slim::Player::Pipeline::sysread (309) Wrote 32768 bytes to pipeline writer
    [20-02-04 11:50:43.3227] Slim::Player::Pipeline::sysread (281) Pipeline doesn't have pending bytes - trying to get some from source
    [20-02-04 11:50:43.3238] Slim::Player::Pipeline::sysread (303) Attempting to write to pipeline writer
    [20-02-04 11:50:43.3250] Slim::Player::Source::_readNextChunk (345) readlen undef: (Broken pipe) 32
    [20-02-04 11:50:43.3261] Slim::Player::Source::_readNextChunk (372) end of file or error on socket, song pos: 0
    [20-02-04 11:50:43.3271] Slim::Player::Source::_readNextChunk (377) 00:04:20:28:4c:a1 mark end of stream
    [20-02-04 11:50:43.3281] Slim::Player::Source::_readNextChunk (385) Didn't stream any bytes for this song; mark it as failed
    [20-02-04 11:50:43.3291] Slim::Player::StreamingController::playerStreamingFailed (2248) 00:04:20:28:4c:a1

  8. #18
    Senior Member
    Join Date
    May 2010
    Location
    London, UK
    Posts
    525
    Quote Originally Posted by bpa View Post
    Why is the input to sox marked as flac - surely the decode output ogg/flac decoding is PCM ?
    That was my schoolboy error ! I intended to write wav as follows:

    Code:
    ogf flc * *
            # IFRD:{RESAMPLE=-r %d}
            [flac] --ogg -dcs -- $FILE$ | [sox] -q -t wav - -t flac -C 0 $RESAMPLE$ -
    But, for reasons unknown to me, it does not seem to produce any sound output, it just seemed to pack up streaming.

    But this does look promising:
    Code:
    ogf flc * *
            # IFRD:{RESAMPLE=-r %d}
            [flac] --ogg -dcs --force-aiff-format -- $FILE$ | [sox] -q -t aiff - -t flac -C 0 $RESAMPLE$ -
    That does seem to work. I don't know why forcing aiff as an intermediate flac output format makes a difference, but it does. So it might be worth the OP trying it out, as an interim step, to see if it works in a real set up. I have no ogg/flac 96000 sample rate sources to test this on.

    Assuming that it does work, perhaps a better understanding of flac/sox options could produce a "better" decoder pipeline specification.

  9. #19
    Senior Member
    Join Date
    Oct 2005
    Location
    Ireland
    Posts
    18,842
    Quote Originally Posted by mrw View Post
    That was my schoolboy error ! I intended to write wav as follows:

    Code:
    ogf flc * *
            # IFRD:{RESAMPLE=-r %d}
            [flac] --ogg -dcs -- $FILE$ | [sox] -q -t wav - -t flac -C 0 $RESAMPLE$ -
    But, for reasons unknown to me, it does not seem to produce any sound output, it just seemed to pack up streaming.

    But this does look promising:
    Code:
    ogf flc * *
            # IFRD:{RESAMPLE=-r %d}
            [flac] --ogg -dcs --force-aiff-format -- $FILE$ | [sox] -q -t aiff - -t flac -C 0 $RESAMPLE$ -
    That does seem to work. I don't know why forcing aiff as an intermediate flac output format makes a difference, but it does. So it might be worth the OP trying it out, as an interim step, to see if it works in a real set up. I have no ogg/flac 96000 sample rate sources to test this on.

    Assuming that it does work, perhaps a better understanding of flac/sox options could produce a "better" decoder pipeline specification.
    The output of a flac DECODE is PCM - no WAV header - so no way to tell sox what bit rate ,sample size etc.
    The output of a flac ENCODE is flac - second example is encode. AIFF is a WAV type file(I.e. it has a header) but with different byte order to PCM

    edit:

    need to double check the flac DECODE output is PCM. There are force options to force raw (i.e. PCM) so I doubt myself now.
    Last edited by bpa; 2020-02-04 at 12:19.

  10. #20
    I have tried again and after some reading and experimentation I found I have to use

    [flac] --ogg -dcs -- $FILE$ | [sox] -q --ignore-length -t wav - -t flac -C 0 $RESAMPLE$ -

    This is because flac sets chunksize in the wav header to 0 (meaning unknown) causing sox to stop exactly there (i.e. immediately) unless --ignore-length is used. Now I can play the stream on all my Squeezeboxen again.

    Thanks a lot @mrw and @bpa for your help!

    Should this remain a custom conversion rule or can it become standard?

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •