Home of the Squeezebox™ & Transporter® network music players.
Page 2 of 16 FirstFirst 123412 ... LastLast
Results 11 to 20 of 152
  1. #11
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    3,819
    Quote Originally Posted by marcoc1712 View Post
    WAV vs PCM in LMS is a bit confusing. Sometime it name it PCM and sometime WAV, but what is streamed is wav (or aiff), this is what I realized and moved me to modify squeezelite. If it where raw pcm I had no chance.
    Did you change a protocol handler to do that ? Because, by default, when the $formatbyte in the strm message is 'p', LMS sends raw PCM with no header of any kind - just a blob of bytes. The SlimProto header of strm contains information about sample size, rate, endianness so that the player knows. One bug, as we discussed before, is that on transcoded live streams, LMS sets rate and size @ 44.1/16 regardless and that does not work very well
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

  2. #12
    Senior Member
    Join Date
    Dec 2009
    Location
    Albinea (RE) Italy
    Posts
    606
    Quote Originally Posted by philippe_44 View Post
    Did you change a protocol handler to do that ? Because, by default, when the $formatbyte in the strm message is 'p', LMS sends raw PCM with no header of any kind - just a blob of bytes. The SlimProto header of strm contains information about sample size, rate, endianness so that the player knows. One bug, as we discussed before, is that on transcoded live streams, LMS sets rate and size @ 44.1/16 regardless and that does not work very well
    Nope, LMS is untouched.

    You are right, but only when talking about 'native' (?) raw PCM.

    When transcoding, in case of pcm output (and wav is handled exactly as pcm) LMS try to look at the track/original file for sample rate to be sent to players via strm message, using 44100 as default value if not found (i.e. in case or remote streams), no matter if a resample took place.

    Here is the bug:

    a. the transcoding command is a 'black box', LMS just know the incoming (track, stream or file) and the outcoming (stream), no others. Somehow correct.

    b. When the outcoming stream is (raw) PCM it has no header, then we could not inspect it. As a fault back we get sample rate from incoming (or use default 44100/16 L). Debatable, I'll preffer at least upsampling where disabled when output is (raw) pcm.

    c. WAV is PCM, so we could not inspect the wav header to get sample rate. That's WRONG and here is the confusion, WAV is PCM, but is not RAW PCM.

    Not brave enought to engage a fight to change this in LMS, where it should be, but fortunally LMS streams the result of the transcoding command as is, with header if wav, still using 'p' as format in the strm message, then the workaround is to always 'transcode' to WAV or AIFF i(i.e. with C-3PO) and let player inspect the header.

    But, accordingly to slimproto, when the format is 'p' there should be no header in the stream (WRONG ASSUMPTION, see point c) then all the players but Squeezelite-R2 (and from now on ralphy versions used with -W option) trust strm message about sample rate and forget the header, resulting they could not play server side upsampled wav (or aiff) streams.

    Hope is clearer.
    __________________________________________________ ______________________
    Author of C-3PO plugin, Squeezelite-R2, Falcon Web interface - See www.marcoc1712.it

  3. #13
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    3,819
    I think it is, let me try - you create systematically transcoding rules where, contrary to the build-in ones, you do not ask the transcoder to output raw PCM (eg the -p option -I think- of flac), you ask it to output wav or aif (which are PCM with a header) and LMS bravely output the transcoded result as a blob so you end up in a stream with a wav/aif header that you decode at the other end, but you need a compatible player. This is a clever trick but my bridges (upnp, chromecast, AirPlay) use a very heavily modified version of squeezelite that expects PCM as raw, hence I guess the confusion with PasTim
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

  4. #14
    Senior Member
    Join Date
    Nov 2010
    Location
    Hertfordshire, UK
    Posts
    2,709
    Quote Originally Posted by marcoc1712 View Post
    Don't worry, you are welcome, but let me abuse a little more of yor patient:

    We have General settings and Player Specific Settings in different pages.

    For each player you could decide to use the general settings (normal situation, as I was asking You to do) OR enable the capability to change same settings that you have in 'general' but for the specific player. This is done by unchecking the "use general settings" box. This is normally not necessary, and it was not in my advice in the last post.


    When you state: " I have a problem in that when I change several of the player-specific settings, and apply, next time I look at the settings they have reverted to what they were before." wich specific setting are you referring?

    Seems like a big bug, but I can't replicate it, could you please name one specific setting that's broken that way?


    ---

    If you have squeezelite and LMS on the same machine, best is to use "Local player plugin" and nothing more.

    Regards, Marco.
    I really don't understand. I have different players with different needs, so I do not see how I can use the General Settings. Currently I can't even get squeeze2upnp to work at all with C-3PO so need to try to set player-specific settings. But they don't work either.

    I did mention two parameters that did not work before, but I'll do so again. With squeezelite-R2 (still started with -u because I can't use C-3PO other than to check a few things for you and I don't want to have to chop and change that setting every time), I proceed as follows. I go to the player, make sure 'use global' is not ticked. I press 'show/hide' (I often have to do this twice to see the settings). I select the Resample box and change the setting to, say ' Always' from 'Only when samplerate is not supported'. I save. The player settings disappear so I have to press show/hide again (twice). The settings I change has not taken effect. The same is true of Quality. I always get 'High' whatever I change it to. The 'Use Global' is still not ticked (and in fact the general settings are different from this).
    LMS 7.9.1 on VortexBox Midi box, Xubuntu 17.10, FLACs 16->24 bit, 44.1->192kbps. Touch & EDO. 2nd Touch standard.
    LMS plugin UPnP/DLNA Bridge to MF M1 CLiC (to A308CR amp & ESLs) & Marantz CR603 UPnP renderers.
    Alternatively Minimserver & Upplay to same & to upmpdcli/mpd PC renderers.
    Squeezelite to Meridian USB Explorer DAC to PC speakers/headphones.
    Wireless Xubuntu 17.10 laptop firefox/upplay or Android 'phone with Squeeze-Commander/BubbleUPnP controls LMS/Minimserver.

  5. #15
    Senior Member
    Join Date
    Dec 2009
    Location
    Albinea (RE) Italy
    Posts
    606
    Quote Originally Posted by philippe_44 View Post
    I think it is, let me try - you create systematically transcoding rules where, contrary to the build-in ones, you do not ask the transcoder to output raw PCM (eg the -p option -I think- of flac), you ask it to output wav or aif (which are PCM with a header) and LMS bravely output the transcoded result as a blob so you end up in a stream with a wav/aif header that you decode at the other end, but you need a compatible player. This is a clever trick but my bridges (upnp, chromecast, AirPlay) use a very heavily modified version of squeezelite that expects PCM as raw, hence I guess the confusion with PasTim
    Yep, I supposed was like that. But this is not me, is LMS.

    Without C-3PO you should define same rules in custom-convert.conf obtaining same result, then still needing a modfied version of squeezelite.

    Is not clear to me what are you referring with "the -p option -I think- of flac", if you are referring to flac.exe transcoding command, I use something equivalent to:

    flc pcm squeezelite *
    # FT:{START=--skip=%t}U:{END=--until=%v}
    [flac] -dcs $START$ $END$ -- $FILE$ |[sox] -q -t wav - -t wav -r 192000 -c 2 -3 -s -L - gain -3 rate -v


    where SOX upsampling parameters hare there if you ask to upsample, othervise the pipe end just before, with FLAC decoding to WAV (I use flac in this case becouse seek capaility is required, if not, I'll use just SOX).

    Is still not clear to meif, how and where you upsample.

    To bad your bridges needs raw pcm, this way they could not receive server side upsampled and decoded streams. Those little devices have too low horse power for heavy upsampling but far enought to just receive and play back hi res streams. Squeezelite-R2 is aimed to power this kind of devices and let use them in high quality systems instead of noisy, power hungry big computers.

    Maybe we could work on this, please ask if you'd like to.
    __________________________________________________ ______________________
    Author of C-3PO plugin, Squeezelite-R2, Falcon Web interface - See www.marcoc1712.it

  6. #16
    Senior Member ralphy's Avatar
    Join Date
    Jan 2006
    Location
    Canada
    Posts
    1,916
    Quote Originally Posted by marcoc1712 View Post
    By the way, are You still using "squeezelite" both for model name and model type? I use "squeezelite-R2" in model name just to inform the server (C-3PO) that the player is enabled to receive upsampled pcm streams, just to avoid errors, but sure I could change, just let me know what to test to identify your versions (I think 1.8.3 is not enought, you never know if other branches use the same version code, that's why I introduced R2 identifier as Daphile use "daphile").
    If the current builds work as you intended then checking for 1.8.3 in the squeezelite firmware version should be enough.

    The 1.8.3 version change was specifically for the -W option.
    Last edited by ralphy; 2016-03-09 at 07:04.
    Ralphy

    1-Touch, 5-Classics, 3-Booms, 1-UE Radio
    Squeezebox client builds donations always appreciated.

  7. #17
    Senior Member
    Join Date
    Dec 2009
    Location
    Albinea (RE) Italy
    Posts
    606
    Quote Originally Posted by PasTim View Post
    Currently I can't even get squeeze2upnp to work at all with C-3PO so need to try to set player-specific settings. But they don't work either.

    Please read the conversation with philippe_44. The way it use squeezelite inside its bridges require raw pcm streams, that in LMS means no decoding + upsampling server side. No use for C-3PO (or others) in this case
    Quote Originally Posted by PasTim View Post
    I really don't understand. I have different players with different needs, so I do not see how I can use the General Settings.
    In the scenario I figured out from your indications you don't need specific player settings other than supported sample rates and choice to resample or decode.

    If this is the case, the values in general settings are valid for all the players and you don't need to change them, checking the "use general settings" box is an helper function that means exactly this.

    Is like to normally have one single address for all the family but name and age for each member. If and when one of them moves to another location, you could specify a new address for him, but all the others still share the same old one. Just aasier than ask you to fill the address for each member.

    p.s.

    Considering what philippe_44 explained about his players needs, too bad I think there is actually no way to feed them with a server side upsampled and decoded stream, C-3PO or not.

    Quote Originally Posted by PasTim View Post
    I did mention two parameters that did not work before, but I'll do so again. With squeezelite-R2 (still started with -u because I can't use C-3PO other than to check a few things for you and I don't want to have to chop and change that setting every time), I proceed as follows. I go to the player, make sure 'use global' is not ticked. I press 'show/hide' (I often have to do this twice to see the settings). I select the Resample box and change the setting to, say ' Always' from 'Only when samplerate is not supported'. I save. The player settings disappear so I have to press show/hide again (twice). The settings I change has not taken effect. The same is true of Quality. I always get 'High' whatever I change it to. The 'Use Global' is still not ticked (and in fact the general settings are different from this).
    Sorry, I did not realize you mentioned those specifically, so "Resample when" and" Quality" are the broken settings. Symptoms are you could change them once, but not anymore, or better, they always come back to the old value after applying. Is that correct?

    Is not like this in my installation, but I'll have a better look at this. Thanks for your help.

    I'm aware you sometime have to click twice the button to show/hide parameters, I could not find a reliable solution yet, I'll keep searching.
    __________________________________________________ ______________________
    Author of C-3PO plugin, Squeezelite-R2, Falcon Web interface - See www.marcoc1712.it

  8. #18
    Senior Member
    Join Date
    Nov 2010
    Location
    Hertfordshire, UK
    Posts
    2,709
    Quote Originally Posted by PasTim View Post
    I really don't understand. I have different players with different needs, so I do not see how I can use the General Settings. Currently I can't even get squeeze2upnp to work at all with C-3PO so need to try to set player-specific settings. But they don't work either.

    I did mention two parameters that did not work before, but I'll do so again. With squeezelite-R2 (still started with -u because I can't use C-3PO other than to check a few things for you and I don't want to have to chop and change that setting every time), I proceed as follows. I go to the player, make sure 'use global' is not ticked. I press 'show/hide' (I often have to do this twice to see the settings). I select the Resample box and change the setting to, say ' Always' from 'Only when samplerate is not supported'. I save. The player settings disappear so I have to press show/hide again (twice). The settings I change has not taken effect. The same is true of Quality. I always get 'High' whatever I change it to. The 'Use Global' is still not ticked (and in fact the general settings are different from this).
    I've tried again, same result. If I set the Global settings to avoid any transcoding/resampling then I can (finally) get squeeze2upnp to work, but I can't get squeezelite-R2 to work with that Global Setting and the player-specific settings simply don't seems to ever stay as I set them. As soon as I Apply, they go back to what they were. There must be some sort of issue there.

    You might want to notice that squeeze2upnp reports itself as being squeezelite (this was to support ickStream if I remember correctly) so C-3PO might be getting confused by having both compliant (R2) and non-compliant players.
    LMS 7.9.1 on VortexBox Midi box, Xubuntu 17.10, FLACs 16->24 bit, 44.1->192kbps. Touch & EDO. 2nd Touch standard.
    LMS plugin UPnP/DLNA Bridge to MF M1 CLiC (to A308CR amp & ESLs) & Marantz CR603 UPnP renderers.
    Alternatively Minimserver & Upplay to same & to upmpdcli/mpd PC renderers.
    Squeezelite to Meridian USB Explorer DAC to PC speakers/headphones.
    Wireless Xubuntu 17.10 laptop firefox/upplay or Android 'phone with Squeeze-Commander/BubbleUPnP controls LMS/Minimserver.

  9. #19
    Senior Member
    Join Date
    Nov 2010
    Location
    Hertfordshire, UK
    Posts
    2,709
    Quote Originally Posted by marcoc1712 View Post
    In the scenario I figured out from your indications you don't need specific player settings other than supported sample rates and choice to resample or decode.

    If this is the case, the values in general settings are valid for all the players and you don't need to change them, checking the "use general settings" box is an helper function that means exactly this.

    Is like to normally have one single address for all the family but name and age for each member. If and when one of them moves to another location, you could specify a new address for him, but all the others still share the same old one. Just aasier than ask you to fill the address for each member.
    I don't know if there's a language problem or I am being really stupid, but I really do not understand. Sorry. If I could get C-3PO settings that work on each device (which seems unlikely now) I will need player-specific settings, so surely I can't tick the 'use general settings'? If I set 'resample' in the general setting and nothing in player-specific then surely it means resample for all players, which won't work for me.

    Sorry, I did not realize you mentioned those specifically, so "Resample when" and" Quality" are the broken settings. Symptoms are you could change them once, but not anymore, or better, they always come back to the old value after applying. Is that correct?

    Is not like this in my installation, but I'll have a better look at this. Thanks for your help.
    It may well apply to all the settings - I haven't tested them all. Where are they stored? I could try editing in place.
    LMS 7.9.1 on VortexBox Midi box, Xubuntu 17.10, FLACs 16->24 bit, 44.1->192kbps. Touch & EDO. 2nd Touch standard.
    LMS plugin UPnP/DLNA Bridge to MF M1 CLiC (to A308CR amp & ESLs) & Marantz CR603 UPnP renderers.
    Alternatively Minimserver & Upplay to same & to upmpdcli/mpd PC renderers.
    Squeezelite to Meridian USB Explorer DAC to PC speakers/headphones.
    Wireless Xubuntu 17.10 laptop firefox/upplay or Android 'phone with Squeeze-Commander/BubbleUPnP controls LMS/Minimserver.

  10. #20
    Senior Member
    Join Date
    May 2008
    Location
    Canada
    Posts
    3,819
    Just a note: squeeze2upnp assumes that when receiving 'pcm' data, they are in the default LMS mode, i.e. no header. If a transcoding rule forces a wav or aiff header to be added, then it will fail.


    EnvoyÚ de mon iPad en utilisant Tapatalk
    LMS 7.7, 7.8 and 7.9 - 5xRadio, 3xBoom, 4xDuet, 1xTouch, 1 SB2. Sonos PLAY:3, PLAY:5, Marantz NR1603, JBL OnBeat, XBoxOne, XBMC, Foobar2000, ShairPortW, JRiver 21, 2xChromecast Audio, Chromecast v1 and v2, , Pi B3, B2, Pi B+, 2xPi A+, Odroid-C1, Odroid-C2, Cubie2, Yamaha WX-010, AppleTV 4, Airport Express, GGMM E5

Posting Permissions

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