Bug 9997 - Add updated sox with FLAC support to pre-built tools
: Add updated sox with FLAC support to pre-built tools
Status: CLOSED FIXED
Product: Logitech Media Server
Classification: Unclassified
Component: Tools
: unspecified
: All All
: P1 major (vote)
: 7.x
Assigned To: Spies Steven
:
Depends on: 10474
Blocks: 4311 10272
  Show dependency treegraph
 
Reported: 2008-11-14 00:51 UTC by Alan Young
Modified: 2009-09-08 09:15 UTC (History)
4 users (show)

See Also:
Category: ---


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Alan Young 2008-11-14 00:51:36 UTC
Get up-to-date sox version and build for all platforms, including the optional FLAC support. Include in platform-specific Bin directories.
Comment 1 Blackketter Dean 2008-11-14 08:13:28 UTC
Alan, do you need this for 7.3?
Comment 2 Alan Young 2008-11-14 08:23:43 UTC
No, it is just an enhancement. Noting is less capable or more broken in 7.3 than it was before without it.
Comment 3 Andy Grundman 2008-11-21 10:32:48 UTC
This is important to do proper 96/88.2 downsampling back to FLAC instead of using MP3.
Comment 4 Matt Wise 2008-11-25 12:32:07 UTC
I'm partly done with this ... I have checked in a script that build flac, libogg and then sox. I havn't figured out how to build sox in a static binary yet though. 

Why are we doing this ... by the way? We already require the sox package be installed for our RPM and our DEB packages. We could easily have the SC installer for OSX and Windows deal with getting and/or telling the user to get SOX -- or even put it in the settings menu as a "you should get SOX to do x y and z" type thing. 

Just curious if there's a really compelling reason to start packaging our own version of SOX... 
Comment 5 Patrick Dixon 2008-11-25 12:46:50 UTC
FYI, ubuntu hardy (8.04) repos install sox v14.0.0 which seems to support flac already.

I added the flac flac transcode line in convert.conf, and it seems to work for me, although the SB3 song info display reports the sampling rate at 48KHz and says it's being transcoded to 320KB/s.
Comment 6 Alan Young 2008-11-25 21:44:16 UTC
I wonder why we require the sox package for rpm and deb, since we deliver our own built version in Bin (I'm assuming that we include our own built version in the package). The Fedora-9-supplied version (14.0.1) is not built with flac support. Windows support is also required.
Comment 7 Matt Wise 2008-12-02 13:47:08 UTC
Here are the config options for SOX right now:

Debugging build................... no
External module support........... no
ALSA driver....................... no
libao driver...................... no
OSS driver........................ yes
SUN audio driver.................. no
CoreAudio driver.................. no
symlinks enabled.................. yes
play and rec symlinks............. yes
libgsm............................ in-tree
liblpc10.......................... in-tree
libsndfile formats................ no
Ogg Vorbis format................. yes
FLAC format....................... yes
ffmpeg formats.................... no
magic library..................... no
MAD MP3 reader.................... no
id3tag library.................... no
LAME MP3 writer................... no
AMR-WB format..................... no
AMR-NB format..................... no
WavPack format.................... no
LADSPA effects.................... no
PNG support....................... no
Secret Rabbit Code resampling..... no
pkg-config location............... $(libdir)/pkgconfig


Other than getting it to compile statically, am I missing anything? 
Comment 8 Alan Young 2008-12-03 18:01:42 UTC
Please add MAD and WavPack too.
Comment 9 Matt Wise 2008-12-04 09:48:13 UTC
Preliminary build done ... here are the output files:

[root@centos-build sox]# !find
find sox-build-24005/
sox-build-24005/
sox-build-24005/lib
sox-build-24005/lib/sox
sox-build-24005/lib/libsox.so.1.0.0
sox-build-24005/lib/libsox.la
sox-build-24005/lib/libsox.so.1
sox-build-24005/lib/pkgconfig
sox-build-24005/lib/pkgconfig/sox.pc
sox-build-24005/lib/libsox.a
sox-build-24005/lib/libsox.so
sox-build-24005/share
sox-build-24005/share/man
sox-build-24005/share/man/man7
sox-build-24005/share/man/man7/soxformat.7
sox-build-24005/share/man/man7/soxeffect.7
sox-build-24005/share/man/man3
sox-build-24005/share/man/man3/libsox.3
sox-build-24005/share/man/man1
sox-build-24005/share/man/man1/play.1
sox-build-24005/share/man/man1/sox.1
sox-build-24005/share/man/man1/rec.1
sox-build-24005/share/man/man1/soxi.1
sox-build-24005/include
sox-build-24005/include/sox.h
sox-build-24005/include/soxstdint.h
sox-build-24005/bin
sox-build-24005/bin/sox
sox-build-24005/bin/soxi
sox-build-24005/bin/rec
sox-build-24005/bin/play


Looks like it builds both the static and dynamic libraries by default... at least, it seems that way. Here are the config options for SOX:


Debugging build................... no
External module support........... no
ALSA driver....................... no
libao driver...................... no
OSS driver........................ yes
SUN audio driver.................. no
CoreAudio driver.................. no
symlinks enabled.................. yes
play and rec symlinks............. yes
libgsm............................ in-tree
liblpc10.......................... in-tree
libsndfile formats................ no
Ogg Vorbis format................. yes
FLAC format....................... yes
ffmpeg formats.................... no
magic library..................... no
MAD MP3 reader.................... yes
id3tag library.................... no
LAME MP3 writer................... no
AMR-WB format..................... no
AMR-NB format..................... no
WavPack format.................... yes
LADSPA effects.................... no
PNG support....................... no
Secret Rabbit Code resampling..... no
pkg-config location............... $(libdir)/pkgconfig

Initial code checked in under change 24195. I'll add this package to Parabuild to run on Mac, 32bit Linux and 64bit Linux. 
Comment 10 Matt Wise 2008-12-04 09:54:43 UTC
For some reason when I ran this through parabuild it didnt get built statically at all. Not sure why, looking into it... 
Comment 11 Matt Wise 2008-12-12 10:25:35 UTC
I've taken a first stab at this ... but I'm just not getting very far. The code compiles in Linux, but does not in OSX. It is building right now, but its not creating a static binary -- and I honestly cannot figure out how to do it. Alan, I'm assigning this back to you to try to work out some of these details. I'm stuck... 

The code is here:

http://svn.slimdevices.com/vendor/src/sox/
Comment 12 Alan Young 2008-12-15 02:51:04 UTC
Matt, I don't have a Mac so cannot look at the OSX problem. 

What is the status of the Windows build?
Comment 13 Matt Wise 2008-12-15 06:54:44 UTC
I have not had any time to look at the Windows build. Andy suggested we may just use the publicly available binary for Windows so that we can avoid building it ourselves. 
Comment 14 Patrick Dixon 2008-12-15 07:02:34 UTC
The sox in the debian build repos didn't seem to have changed either - as of:

Version: 7.3.1 - 24288 @ Fri Dec 12 03:16:19 PST 2008

OS: Debian - EN - utf8

Platform: x86_64-linux

Perl Version: 5.8.8 - x86_64-linux-gnu-thread-multi

MySQL Version: 5.0.51a-3ubuntu5.4
Comment 15 Andy Grundman 2008-12-17 14:32:57 UTC
Linux build script appears to be working.

Mac build script may need some more work, but it could just be my system.  Weirdness around where it's looking for libogg...

Let me know how they do on the build servers.
Comment 16 Andy Grundman 2008-12-19 11:43:30 UTC
Change 24382.

Alan: all yours.
Comment 17 Andy Grundman 2008-12-19 11:48:48 UTC
Note that the win32 binary does not include mp3 decoding support, so we should not use that for anything.  I am not sure we have any need for this anyway.
Comment 18 Alan Young 2008-12-23 09:47:40 UTC
Change 24410 updates config.conf

Please test on all platforms including: mov->mp3, ogg->flac, ogg->mp3, flac->flac. Include downsampling of 96k/88k2 FLAC and FLAC with CUE files. You could also test downsampling of Ogg files if you can get/make some high sample-rate ones. Check that scanning (seeking) works for all these FLAC and Ogg source modes.
Comment 19 James Richardson 2009-01-12 09:50:25 UTC
*** Bug 10652 has been marked as a duplicate of this bug. ***
Comment 20 James Richardson 2009-01-22 09:58:22 UTC
Fixed - Closed Message (SC)

This bug has been fixed in the 7.3.3 release version of SqueezeCenter!

Please download the new version from http://www.slimdevices.com/su_downloads.html if you haven't already.  

If you are still experiencing this problem, feel free to reopen the bug with your new comments and we'll have another look.
Comment 21 James Richardson 2009-01-22 13:53:43 UTC
Correction: SqueezeCenter version is 7.3.2
Comment 22 Chris Owens 2009-07-31 10:31:52 UTC
Reduce number of active targets for SC