Home of the Squeezebox™ & Transporter® network music players.
Page 1 of 4 123 ... LastLast
Results 1 to 10 of 33
  1. #1
    Junior Member
    Join Date
    Jan 2012
    Posts
    8

    Squeezeplay plays up to 192k

    After a long struggle I have been able to build a version of Squeezeplay that plays files up to 192k sampling rates. You can download my tarball from http://webspace.qmul.ac.uk/gfella/sq...ueezeplay.html and untar into a directory /opt/squeezeplay

    It works on ubuntu and voyage, so I expect it to work on most flavours of Debian.

    To build from source instead: add the sampling rates 176400 and 192000 to the list of sampling rates in the file decode_pcm.c in the folder squeezeplay/src/squeezeplay/src/audio/decode from the source tarball.
    Building from sources requires fixing a couple of bugs (read about them on John Well's page here http://www.jfwhome.com/2009/11/22/co...-ubuntu-amd64/ Thanks John!)

    You also need to make sure that the server can play up to 192K files.

    For this, you have to patch the LogitechMediaserver software by applying Lauret's 192khz.patch (available at https://github.com/terual/slimpy_ to the file Squeezebox2.pm (the latter is in the folder /usr/share/perl5/Slim/Player/ on my ubuntu install). Thanks Lauret!

    Finally to make sure a 24 bit file is not truncated to 16 bit follow Kipeta's (Thanks Kipeta!) recipe

    "in Linux you can choose the audio device and other parameters through setting file:
    ~/.squeezeplay/userpath/settings/DesktopJive.lua

    I have following content in it:
    settings = {mac="xx:xx:xx:xx:xx:xx",uuid="xxxxxxxxxxxxxxxxxxx x"",alsaSampleSize=24,alsaPlaybackDevice="plugh w:0 ,0",alsaPlaybackBufferTime=50000,alsaPlaybackPerio dCount=3} "

    I am grateful to the community for the useful info.

  2. #2
    Senior Member
    Join Date
    May 2008
    Location
    The Netherlands
    Posts
    123
    I do not think you need my patch, it is only to supply the right stream information when using PCM with a player that supports that extra information. As you are probably streaming FLAC, the samplerate and format information is embedded in the stream.

    BTW, I am also using Squeezeplay here up to 192kHz, and I also didn't apply the first changes you made to decode_pcm.c

  3. #3
    Junior Member
    Join Date
    Jan 2012
    Posts
    8
    Quote Originally Posted by lauret View Post
    I do not think you need my patch, it is only to supply the right stream information when using PCM with a player that supports that extra information. As you are probably streaming FLAC, the samplerate and format information is embedded in the stream.

    BTW, I am also using Squeezeplay here up to 192kHz, and I also didn't apply the first changes you made to decode_pcm.c
    Are you streaming FLAC or PCM? I am decoding FLAC files on the server and streaming PCM.

    If you streamed FLAC 192K, it would be downsampled to 96K without your patch (checked by typing cat /proc/asound/card?/stream0 on my client PC where card? is my sound card's id). PCM would just hang. With your patch it is not downsampled any more and PCM plays on the server. Yet, I could get no sound on the client using the squeezeplay binary package I downloaded from the night builds (I tried after applying your patch to the server).

    Now, instead, I am now able to play 192K PCM and FLAC streams without downsampling.

  4. #4
    Senior Member
    Join Date
    May 2008
    Location
    The Netherlands
    Posts
    123
    OK, sorry for the noise then. I probably never tried without my patch...

  5. #5
    Giulio Thanks for making your version of Squeezplay available. I am downloading it now. Will give it a go in a bit

  6. #6
    Senior Member
    Join Date
    Nov 2010
    Location
    Hertfordshire, UK
    Posts
    3,280
    My ignorance of linux details keeps getting on my nerves, but I fail to learn and keep on trying....

    I downloaded your tarball (and have tried Logitech's as well) and extract to /opt/squeezeplay. Fine so far (once I managed to tinker with the privileges to allow me to do the extract from the gui extract program).

    Now how do I run the blasted thing? If I am in /opt/squeezeplay/bin, then ./squeezeplay.sh results in

    ./squeezeplay.sh: 18: ./jive: not found

    I assume this is about library paths etc, but have no idea how to fix it.

    I am on a newly installed ubuntu 11.10. (This itself has driven me nuts, since the 'unity' desktop appears to provide no way of running new applications without using the terminal window.)
    LMS 8.1 on PC, Xubuntu 20.04, FLACs 16->24 bit, 44.1->192kbps. 2 Touches & EDO.
    LMS plugin UPnP/DLNA Bridge to MF M1 CLiC (A308CR amp & ESLs) & Marantz CR603 UPnP renderers.
    Also Minimserver & Upplay to same & to upmpdcli/mpd PC renderers.
    Squeezelite to Meridian USB Explorer DAC to PC speakers/headphones.
    Wireless Xubuntu 20.04 laptop firefox/upplay or Android mobile with Squeeze-Ctrl/BubbleUPnP controls LMS/Minimserver.

  7. #7
    Senior Member
    Join Date
    Nov 2010
    Location
    Hertfordshire, UK
    Posts
    3,280
    After a reboot, squeezeplay now starts up (providing I specific the whole directory path to it). I didn't change anything else, so I fail to understand what's going on.

    The next problem is how to get anything out of it.

    Could someone explain the jive.lua content? Is there a guide somewhere? I have 2 audio cards, and a headset. Card 0 should work - it's an old creative card. However, I get nothing. The jive.lua I have is:

    settings = {mac="00:16:17:6e:10:66",uuid="6612add31542f581b3c 34c089c2e4eb9",alsaSampleSize=24,alsaPlaybackDevic e="plughw:0,0",alsaPlaybackBufferTime=50000,alsaPl aybackPeriodCount=3}

    aplay -l gives:

    **** List of PLAYBACK Hardware Devices ****
    card 0: XFi [Creative X-Fi], device 0: ctxfi [Front/WaveIn]
    Subdevices: 8/8
    Subdevice #0: subdevice #0
    Subdevice #1: subdevice #1
    Subdevice #2: subdevice #2
    Subdevice #3: subdevice #3
    Subdevice #4: subdevice #4
    Subdevice #5: subdevice #5
    Subdevice #6: subdevice #6
    Subdevice #7: subdevice #7

    I also don't know why squeezeplay needs a mac and uuid.

    What am I doing wrong?
    LMS 8.1 on PC, Xubuntu 20.04, FLACs 16->24 bit, 44.1->192kbps. 2 Touches & EDO.
    LMS plugin UPnP/DLNA Bridge to MF M1 CLiC (A308CR amp & ESLs) & Marantz CR603 UPnP renderers.
    Also Minimserver & Upplay to same & to upmpdcli/mpd PC renderers.
    Squeezelite to Meridian USB Explorer DAC to PC speakers/headphones.
    Wireless Xubuntu 20.04 laptop firefox/upplay or Android mobile with Squeeze-Ctrl/BubbleUPnP controls LMS/Minimserver.

  8. #8
    Senior Member
    Join Date
    Nov 2010
    Location
    Hertfordshire, UK
    Posts
    3,280
    Having found this (http://forums.slimdevices.com/showth...t=91834&page=6) Lauret's method worked for me and I can now get output. It was more by trial & error (mainly the latter).

    What the quality is like remains to be seen, but I at least I have some sound that I can sync with my Touch in another room. My settings now are:

    settings = {mac="xx:xx:xx:xx:xx:xx",uuid="xxxxxxxxxxxxxxxxxxx xxxxxxx",alsaSampleSize=24,alsaPlaybackDevice="plu ghw:2,0",alsaEffectsDevice="plughw:0,0",alsaPlayba ckBufferTime=50000,alsaPlaybackPeriodCount=3}

    I tried streaming PCM to my Touch, but it seems that it overloads the Touch (CPU at more than 50% just reading the input), so I'm back to Native for FLAC.

    And I think I now understand why a MAC is needed (so as to identify Squeezeplay to LMS).
    LMS 8.1 on PC, Xubuntu 20.04, FLACs 16->24 bit, 44.1->192kbps. 2 Touches & EDO.
    LMS plugin UPnP/DLNA Bridge to MF M1 CLiC (A308CR amp & ESLs) & Marantz CR603 UPnP renderers.
    Also Minimserver & Upplay to same & to upmpdcli/mpd PC renderers.
    Squeezelite to Meridian USB Explorer DAC to PC speakers/headphones.
    Wireless Xubuntu 20.04 laptop firefox/upplay or Android mobile with Squeeze-Ctrl/BubbleUPnP controls LMS/Minimserver.

  9. #9
    Member
    Join Date
    Feb 2011
    Location
    Tulsa, Oklahoma
    Posts
    55
    Quote Originally Posted by giulio View Post
    I have following content in it:
    settings = {mac="xx:xx:xx:xx:xx:xx",uuid="xxxxxxxxxxxxxxxxxxx x"",alsaSampleSize=24,alsaPlaybackDevice="plugh w:0 ,0",alsaPlaybackBufferTime=50000,alsaPlaybackPerio dCount=3} "

    I am grateful to the community for the useful info.
    Thank you very much for this gem of information, I do want to add that the mentioned line results in a high CPU load.
    Top shows a load of 30%, fan is blowing.

    When I modify the line to this, I have a normal CPU load of 1%:
    settings = {mac="xx:xx:xx:xx:xx:xx",uuid="yyy",alsaSampleSize =24,alsaPlaybackDevice="plughw:1,0",} and fan is off.

  10. #10
    Senior Member
    Join Date
    Nov 2010
    Location
    Hertfordshire, UK
    Posts
    3,280
    Quote Originally Posted by giulio View Post
    You can download my tarball from http://webspace.qmul.ac.uk/gfella/sq...ueezeplay.html and untar into a directory /opt/squeezeplay

    It works on ubuntu and voyage, so I expect it to work on most flavours of Debian.
    I wanted to run Squeezeplay on my ancient Sony laptop (running Debian Wheezy) on occasions. I wasn't particularly concerned to be able to run at best quality, but just have it run at all! I had got guilio's tarball working on my dual-boot desktop with ubuntu, but thought I'd try a new version of Squeezeplay on Debian. This turned out to be a waste of time, as follows.

    I tried the Windows version on Wine, but couldn't get any sound, and had crashes.

    I then tried the latest build tarball from Logitech. That had display corruption problems which made it unusable.

    I tried to compile the latest source from Logitech. I could not get beyond the FLAC__ENCODE.... problems lauret mentioned in http://forums.slimdevices.com/showth...ezeplay&page=2. The suggested fix there (compiling the flac encoder) didn't work for me and I had to give up.

    So I thought I give this tarball a try again, this time on my Debian laptop. It works a treat. No display problems. The sound took a bit longer to fix (due mainly to my inability to read what I have done properly). As referred to elsewhere one has to avoid pulseaudio by modifiying /opt/squeezeplay/bin/squeezeplay.sh. Comment out the ./jive at the end and add the ALSA_CONFIG.. line as shown:

    Code:
    ALSA_CONFIG_PATH=/usr/share/alsa/alsa-nopulse.conf ./jive
    #./jive
    Create /usr/share/alsa/alsa-nopulse.conf from /usr/share/alsa/alsa.conf with one change.

    My Debian system has a slightly different alsa.conf to the Ubuntu systems referred to elsewhere. I ended up changing this to refer to a new, empty, directory called "/alsa-nopulse.conf.d/", since I'm not really sure what the code here is doing. The original alsa.conf.d directory on my system contains pulse configuration files.

    My new alsa-nopulse.conf contains, at the start:

    Code:
    #
    #  ALSA library configuration file
    #
    
    # pre-load the configuration files
    
    @hooks [
    	{
    		func load
    		files [
    			{
    				@func concat
    				strings [
    					{ @func datadir }
    					"/alsa-nopulse.conf.d/"
    					#"/alsa.conf.d/"
    				]
    			}
    			"/etc/asound.conf"
    			"~/.asoundrc"
    		]
    		errors false
    	}
    ]
    where /usr/share/alsa/alsa-nopulse.conf.d is an empty directory. This is probably unnecessary, but it works.

    So thanks very much to giulio for efforts in creating a tarball that works on multiple linux systems.
    LMS 8.1 on PC, Xubuntu 20.04, FLACs 16->24 bit, 44.1->192kbps. 2 Touches & EDO.
    LMS plugin UPnP/DLNA Bridge to MF M1 CLiC (A308CR amp & ESLs) & Marantz CR603 UPnP renderers.
    Also Minimserver & Upplay to same & to upmpdcli/mpd PC renderers.
    Squeezelite to Meridian USB Explorer DAC to PC speakers/headphones.
    Wireless Xubuntu 20.04 laptop firefox/upplay or Android mobile with Squeeze-Ctrl/BubbleUPnP controls LMS/Minimserver.

Posting Permissions

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