Bugzilla – Bug 15113
Debian package needs another dependency to work on minimal 64-bit systems
Last modified: 2011-11-17 12:46:30 UTC
Squeezebox Server needs a dependency on "libc6-i386" to work correctly on a minimal-install Debian 64-bit OS. To duplicate: Do a minimal 64-bit Debian install. (ie, run through the installer, but DO NOT install 'standard system', just don't add any packages at all to the base system, much like an embedded device.) Install the Stable or Testing releases of Squeezebox Server. Try to play a CUE/FLAC file through any player; it will not work. The failure is not very visible; no error messages show, but the music won't play. Actual problem: the as-shipped flac (and sox, and a couple of others) are 32-bit binaries, and will not run without libc6-i386, which is not installed by default on a minimal install. Add that package, and all is well. Adding that to your dependency list should clear up the issue. Alternately, you could add direct support for amd64 architecture, but that seems like complete overkill for a tiny problem.
We'll have to consider how to make a change to our control file that works on both a 16-bit and 32-bit system. In the mean time, hopefully affected users will find this bug and be able to fix the problem.
There probably aren't that many minimal 64-bit installs out there, so if it's hard to fix, you could probably either ignore it or put a note in the README. With no visible error message, it'll be hard to find via keyword search in bugzilla. The visible symptom in the GUI is that hitting play on a CUE/FLAC track makes it immediately jump to the next track, where it stalls. But it doesn't stall on discrete FLACs; those work fine. The total universe of minimal 64-bit installs using CUE/FLAC images is probably in the tens, if even if that many. I think I'd suggest closing the bug as WONTFIX if it's going to be that awkward. A note in the README would be nice, though.
I'm going to leave it open for now; 64-bit will only become more popular in time
This just bit me. I've spent a long time wondering why streaming just keeps falling over and failing. So here's some Google juice: [11-11-17 19:36:22.7669] Slim::Player::TranscodingHelper::tokenizeConvertCommand2 (553) Using command for conversion: "/usr/share/squeezeboxserver/Bin/i386-linux/sox" -q -t ogg "-" -t raw -r 44100 -c 2 -2 -s - [11-11-17 19:36:22.7672] Slim::Player::Song::open (558) Tokenized command: "/usr/share/squeezeboxserver/Bin/i386-linux/sox" -q -t ogg "-" -t raw -r 44100 -c 2 -2 -s - [11-11-17 19:36:22.7766] Slim::Player::SongStreamController::new (31) live=1 [11-11-17 19:36:22.7793] Slim::Player::StreamingController::_Stream (1271) 00:04:20:12:32:6c: stream [11-11-17 19:36:22.7850] Slim::Player::StreamingController::_Stream (1306) Song queue is now 0 [11-11-17 19:36:22.7857] Slim::Player::StreamingController::_setPlayingState (2365) new playing state BUFFERING [11-11-17 19:36:22.7862] Slim::Player::StreamingController::_setStreamingState (2378) new streaming state STREAMING [11-11-17 19:36:22.7867] Slim::Player::StreamingController::_eventAction (303) 00:04:20:12:32:6c: NextTrackReady - new state BUFFERING-STREAMING [11-11-17 19:36:22.7919] Slim::Player::StreamingController::_eventAction (271) 00:04:20:12:32:6c: StatusHeartbeat in BUFFERING-STREAMING -> Slim::Player::StreamingController::_N oOp [11-11-17 19:36:22.7926] Slim::Player::StreamingController::_eventAction (271) 00:04:20:12:32:6c: StatusHeartbeat in BUFFERING-STREAMING -> Slim::Player::StreamingController::_N oOp [11-11-17 19:36:22.7943] Slim::Player::StreamingController::_eventAction (271) 00:04:20:12:32:6c: StatusHeartbeat in BUFFERING-STREAMING -> Slim::Player::StreamingController::_N oOp [11-11-17 19:36:22.7979] Slim::Player::Pipeline::sysread (282) Pipeline doesn't have pending bytes - trying to get some from source [11-11-17 19:36:22.7983] Slim::Player::Pipeline::sysread (304) Attempting to write to pipeline writer [11-11-17 19:36:22.7988] Slim::Player::Source::_readNextChunk (347) readlen undef: (Broken pipe) 32 [11-11-17 19:36:22.7991] Slim::Player::Source::_readNextChunk (374) end of file or error on socket, song pos: 0 [11-11-17 19:36:22.7994] Slim::Player::Source::_readNextChunk (379) 00:04:20:12:32:6c mark end of stream [11-11-17 19:36:22.7997] Slim::Player::Source::_readNextChunk (387) Didn't stream any bytes for this song; mark it as failed [11-11-17 19:36:22.7999] Slim::Player::StreamingController::playerStreamingFailed (2236) 00:04:20:12:32:6c [11-11-17 19:36:22.8003] Slim::Player::StreamingController::_playersMessage (789) Problem: Can't open file for:: http://ogg2.as34763.net/vc160.ogg [11-11-17 19:36:22.8019] Slim::Player::StreamingController::_eventAction (271) 00:04:20:12:32:6c: StreamingFailed in BUFFERING-STREAMING -> Slim::Player::StreamingController::_S topNextIfMore [11-11-17 19:36:22.8022] Slim::Player::StreamingController::_eventAction (284) params: errorDisconnect => undef [11-11-17 19:36:22.8030] Slim::Player::StreamingController::_Stop (603) Song queue is now 0 [11-11-17 19:36:22.8035] Slim::Player::SongStreamController::DESTROY (44) DESTROY(Slim::Player::SongStreamController=HASH(0x655c638)) live=0 [11-11-17 19:36:22.8038] Slim::Player::StreamingController::_setPlayingState (2365) new playing state STOPPED [11-11-17 19:36:22.8041] Slim::Player::StreamingController::_setStreamingState (2378) new streaming state IDLE [11-11-17 19:36:22.8045] Slim::Player::StreamingController::_willRetry (1395) no retry data [11-11-17 19:36:22.8049] Slim::Player::StreamingController::nextsong (876) The next song is number 0, was 0 Of course there are now two work-arounds in place: - use streaming not native decoding because the firmware on the Squeezebox is awful and crashes (reboots) and gives white noise if you ask it to stream Ogg Vorbis natively - when you give up on native ogg vorbis streaming and get your amd64 box to transcode the ogg to flac, you have to install libc6-i386 (once you've found this bug) otherwise you just get frustrating silent failure. See also bug 11216