Bugzilla – Bug 6028
Static/Noise delivered, then alac crashes when attempting to play 24 bit Apple Lossless songs
Last modified: 2010-04-08 17:25:06 UTC
I just have purchased a Squeezebox 3 and configured everything relatively painless, even though the SlimServer interface does have some slightly illogical and contradicting settings. I am managing my songs with iTunes (latest version). I have two versions of all songs: AAC and Apple Lossless 24bit. I intend to only use the Apple Lossless files with Squeezebox. Bitrate is set to "No limit" and relevant File Type settings are "Apple Lossless, FLAC, alac/flac". Everything works fine except attempting to play any Apple Lossless file. Squeezebox will just play static/staggered noise and then the alac crash window appears. My Apple Lossless files were *NOT* generated by Max, but by Roxio CD Spin Doctor and iTunes. I have checked the forum for similar incidents but have not found any solutions. Frankly, I did expect a more sophisticated Plug & Play installation given the hype and matureness of the Squeezebox product. Certainly, I was not aware after reading through the SlimDevices marketing material prior purchase that Squeezebox does not fully support the Apple Lossless format, except through the use of a buggy third-party open source decoder. While I'm used to administrate Linux servers, develop Perl apps, debug stuff, et al, I did not expect all this "hackery" with Squeezebox since it's a commercial brand having its price. I just would like this stuff to work as promised, and not need to download the latest alac build to check if it will work or not (no idea currently, or be forced to convert everything to FLAC. What is the market share of iTunes/iPod again in the digital music market, hello SlimDevices?!? Why does not SlimDevices/Logitech take over the maintainance of alac and fix the code? Not pleased at all with this... Here's the relevant output of d_source: 2007-11-03 20:22:37.7584 00:04:20:12:0c:30: Switching to mode play from stop 2007-11-03 20:22:37.7832 openSong on: file:///Volumes/HD2/iTunes%20Music/sess7_2/sess7_2/Untitled%20Track%2051%201.m4a 2007-11-03 20:22:37.7847 openSong: duration: [153.997] size: [29910095] endian [] offset: [0] for file:///Volumes/HD2/iTunes%20Music/sess7_2/sess7_2/Untitled%20Track%2051%201.m4a 2007-11-03 20:22:37.7867 undermax = 1, type = mov, squeezebox2 = 00:04:20:12:0c:30 2007-11-03 20:22:37.7874 getConvertCommand: track is alac - updating type! 2007-11-03 20:22:37.7877 checking formats for: alc-wma-squeezebox2-00:04:20:12:0c:30 2007-11-03 20:22:37.7879 checking formats for: alc-wma-*-00:04:20:12:0c:30 2007-11-03 20:22:37.7880 checking formats for: alc-wma-squeezebox2-* 2007-11-03 20:22:37.7882 checking formats for: alc-wma-*-* 2007-11-03 20:22:37.7883 checking formats for: alc-ogg-squeezebox2-00:04:20:12:0c:30 2007-11-03 20:22:37.7885 checking formats for: alc-ogg-*-00:04:20:12:0c:30 2007-11-03 20:22:37.7886 checking formats for: alc-ogg-squeezebox2-* 2007-11-03 20:22:37.7888 checking formats for: alc-ogg-*-* 2007-11-03 20:22:37.7890 checking formats for: alc-flc-squeezebox2-00:04:20:12:0c:30 2007-11-03 20:22:37.7891 checking formats for: alc-flc-*-00:04:20:12:0c:30 2007-11-03 20:22:37.7893 checking formats for: alc-flc-squeezebox2-* 2007-11-03 20:22:37.7894 checking formats for: alc-flc-*-* 2007-11-03 20:22:37.7896 Checking to see if alc-flc-*-* is enabled 2007-11-03 20:22:37.7899 There are 1 disabled formats... 2007-11-03 20:22:37.7901 Testing mov-aif-*-* vs alc-flc-*-* 2007-11-03 20:22:37.7903 Testing alc-wav-*-* vs alc-flc-*-* 2007-11-03 20:22:37.7904 enabled 2007-11-03 20:22:37.7906 Found command: [alac] $FILE$ | [flac] -cs --totally-silent --compression-level-0 --endian big --sign signed --channels 2 --bps 16 --sample-rate 44100 - 2007-11-03 20:22:37.7910 Matched Format: flc Type: alc Command: [alac] $FILE$ | [flac] -cs --totally-silent --compression-level-0 --endian big --sign signed --channels 2 --bps 16 --sample-rate 44100 - 2007-11-03 20:22:37.7913 openSong: this is an alc file: file:///Volumes/HD2/iTunes%20Music/sess7_2/sess7_2/Untitled%20Track%2051%201.m4a 2007-11-03 20:22:37.7915 file type: alc format: flc inrate: 1552 maxRate: 0 2007-11-03 20:22:37.7916 command: [alac] $FILE$ | [flac] -cs --totally-silent --compression-level-0 --endian big --sign signed --channels 2 --bps 16 --sample-rate 44100 - 2007-11-03 20:22:37.7929 Using command for conversion: "/Library/PreferencePanes/SlimServer.prefPane/Contents/server/Bin/darwin/alac" "/Volumes/HD2/iTunes Music/sess7_2/sess7_2/Untitled Track 51 1.m4a" | "/Library/PreferencePanes/SlimServer.prefPane/Contents/server/Bin/darwin/flac" -cs --totally-silent --compression-level-0 --endian big --sign signed --channels 2 --bps 16 --sample-rate 44100 - & | 2007-11-03 20:22:37.8584 openSong: Streaming with format: flc 2007-11-03 20:22:37.9018 00:04:20:12:0c:30 New play mode: play 2007-11-03 20:22:37.9403 00:04:20:12:0c:30: Current playmode: play 2007-11-03 20:22:38.2635 Got a track starting event 2007-11-03 20:22:38.2638 Song 7 has now started playing 2007-11-03 20:22:38.2645 trackStartEvent: Song queue is now 7 2007-11-03 20:22:38.2864 Got a track starting event 2007-11-03 20:22:38.2867 Song 7 has now started playing 2007-11-03 20:22:38.2873 trackStartEvent: Song queue is now 7 2007-11-03 20:22:38.5999 Read to end of file or pipe 2007-11-03 20:22:38.6006 end of file or error on socket, opening next song, (song pos: 579636(tell says: . ), totalbytes: 0) 2007-11-03 20:22:38.6010 opening next song... 2007-11-03 20:22:38.6020 the next song is number 8, was 7 2007-11-03 20:22:38.6040 undermax = 1, type = mov, squeezebox2 = 00:04:20:12:0c:30 2007-11-03 20:22:38.6047 getConvertCommand: track is alac - updating type! 2007-11-03 20:22:38.6051 checking formats for: alc-wma-squeezebox2-00:04:20:12:0c:30 2007-11-03 20:22:38.6053 checking formats for: alc-wma-*-00:04:20:12:0c:30 2007-11-03 20:22:38.6055 checking formats for: alc-wma-squeezebox2-* 2007-11-03 20:22:38.6056 checking formats for: alc-wma-*-* 2007-11-03 20:22:38.6058 checking formats for: alc-ogg-squeezebox2-00:04:20:12:0c:30 2007-11-03 20:22:38.6059 checking formats for: alc-ogg-*-00:04:20:12:0c:30 2007-11-03 20:22:38.6062 checking formats for: alc-ogg-squeezebox2-* 2007-11-03 20:22:38.6064 checking formats for: alc-ogg-*-* 2007-11-03 20:22:38.6066 checking formats for: alc-flc-squeezebox2-00:04:20:12:0c:30 2007-11-03 20:22:38.6068 checking formats for: alc-flc-*-00:04:20:12:0c:30 2007-11-03 20:22:38.6069 checking formats for: alc-flc-squeezebox2-* 2007-11-03 20:22:38.6071 checking formats for: alc-flc-*-* 2007-11-03 20:22:38.6077 Checking to see if alc-flc-*-* is enabled 2007-11-03 20:22:38.6080 There are 1 disabled formats... 2007-11-03 20:22:38.6082 Testing mov-aif-*-* vs alc-flc-*-* 2007-11-03 20:22:38.6084 Testing alc-wav-*-* vs alc-flc-*-* 2007-11-03 20:22:38.6085 enabled 2007-11-03 20:22:38.6087 Found command: [alac] $FILE$ | [flac] -cs --totally-silent --compression-level-0 --endian big --sign signed --channels 2 --bps 16 --sample-rate 44100 - 2007-11-03 20:22:38.6091 Matched Format: flc Type: alc Command: [alac] $FILE$ | [flac] -cs --totally-silent --compression-level-0 --endian big --sign signed --channels 2 --bps 16 --sample-rate 44100 - 2007-11-03 20:22:38.6095 playing out before starting next song. (old format: flc, new: flc) 2007-11-03 20:22:38.6098 00:04:20:12:0c:30: Switching to mode playout-play from play 2007-11-03 20:22:38.6109 00:04:20:12:0c:30 New play mode: playout-play 2007-11-03 20:22:38.6129 00:04:20:12:0c:30: Current playmode: playout-play 2007-11-03 20:22:38.6134 No pending chunks - we're dropping the streaming connection 2007-11-03 20:22:38.6148 00:04:20:12:0c:30: Can't opennext, returning no chunk. 2007-11-03 20:22:39.4143 00:04:20:12:0c:30: Decoder underrun while this mode: playout-play 2007-11-03 20:22:39.4147 the next song is number 8, was 7 2007-11-03 20:22:39.4173 **skipahead: opening next song 2007-11-03 20:22:39.4208 opening next song... 2007-11-03 20:22:39.4213 the next song is number 8, was 7 2007-11-03 20:22:39.4222 undermax = 1, type = mov, squeezebox2 = 00:04:20:12:0c:30 2007-11-03 20:22:39.4229 getConvertCommand: track is alac - updating type! 2007-11-03 20:22:39.4232 checking formats for: alc-wma-squeezebox2-00:04:20:12:0c:30 2007-11-03 20:22:39.4234 checking formats for: alc-wma-*-00:04:20:12:0c:30 2007-11-03 20:22:39.4235 checking formats for: alc-wma-squeezebox2-* 2007-11-03 20:22:39.4237 checking formats for: alc-wma-*-* 2007-11-03 20:22:39.4238 checking formats for: alc-ogg-squeezebox2-00:04:20:12:0c:30 2007-11-03 20:22:39.4240 checking formats for: alc-ogg-*-00:04:20:12:0c:30 2007-11-03 20:22:39.4242 checking formats for: alc-ogg-squeezebox2-* 2007-11-03 20:22:39.4243 checking formats for: alc-ogg-*-* 2007-11-03 20:22:39.4245 checking formats for: alc-flc-squeezebox2-00:04:20:12:0c:30 2007-11-03 20:22:39.4246 checking formats for: alc-flc-*-00:04:20:12:0c:30 2007-11-03 20:22:39.4248 checking formats for: alc-flc-squeezebox2-* 2007-11-03 20:22:39.4249 checking formats for: alc-flc-*-* 2007-11-03 20:22:39.4251 Checking to see if alc-flc-*-* is enabled 2007-11-03 20:22:39.4252 There are 1 disabled formats... 2007-11-03 20:22:39.4254 Testing mov-aif-*-* vs alc-flc-*-* 2007-11-03 20:22:39.4256 Testing alc-wav-*-* vs alc-flc-*-* Here's the relevant output of alac.crash.log (this app does not even report its version number): Host Name: G5-pw Date/Time: 2007-11-03 18:18:37.145 +0100 OS Version: 10.4.10 (Build 8R218) Report Version: 4 Command: alac Path: /Library/PreferencePanes/SlimServer.prefPane/Contents/server/Bin/darwin/alac Parent: launchd [1] Version: ??? (???) PID: 22434 Thread: 0 Exception: EXC_BAD_ACCESS (0x0001) Codes: KERN_INVALID_ADDRESS (0x0001) at 0x0002d000 Thread 0 Crashed: 0 <<00000000>> 0xffff86bc __bzero + 188 (cpu_capabilities.h:187) 1 alac 0x0000318c 0x1000 + 8588 2 alac 0x00003d14 0x1000 + 11540 3 alac 0x000055d8 0x1000 + 17880 4 alac 0x00001e58 0x1000 + 3672 5 alac 0x00001d00 0x1000 + 3328 Thread 0 crashed with PPC Thread State 64: srr0: 0x00000000ffff86bc srr1: 0x100000000200d030 vrsave: 0x0000000000000000 cr: 0x44000418 xer: 0x0000000000000000 lr: 0x000000000000318c ctr: 0x0000000000000336 r0: 0x0000000000000000 r1: 0x00000000bffff890 r2: 0x0000000000000013 r3: 0x0000000000009068 r4: 0x0000000000000008 r5: 0x0000000000000018 r6: 0x0000000000000078 r7: 0x0000000000000000 r8: 0x00000000000007b5 r9: 0x000000000002d000 r10: 0x000000000001d020 r11: 0x0000000000007070 r12: 0x0000000090129660 r13: 0x0000000000000000 r14: 0x0000000000000000 r15: 0x0000000000000000 r16: 0x0000000000000000 r17: 0x0000000000000009 r18: 0x0000000000000002 r19: 0x0000000000000004 r20: 0x0000000000000009 r21: 0x0000000000000000 r22: 0x0000000000003fff r23: 0x0000000000009000 r24: 0x000000000000000e r25: 0x0000000000000028 r26: 0x0000000000000011 r27: 0x0000000000001000 r28: 0x000000000000f6c1 r29: 0x000000000000f6a8 r30: 0x0000000000300160 r31: 0x00000000000031f8 Binary Images Description: 0x1000 - 0x6fff alac /Library/PreferencePanes/SlimServer.prefPane/Contents/server/Bin/darwin/alac 0x8fe00000 - 0x8fe52fff dyld 46.12 /usr/lib/dyld 0x90000000 - 0x901bcfff libSystem.B.dylib /usr/lib/libSystem.B.dylib 0x90214000 - 0x90219fff libmathCommon.A.dylib /usr/lib/system/libmathCommon.A.dylib
QA to try to reproduce
Try to repro on 6.5.4 and 7.0
Update: Apple Lossless files in 16 bit format do work, but not in 24 bit format. I discovered that the author of alac states that 24 bit is not supported but that it should be relatively easy to add this support by motivated contributors. Which is actually a strong hint towards SlimDevices to add a helping hand "to meet the needs of discerning music lovers". ;)
Easily reproduced on both SC 6.5.4 and 7 since it is a limitation of the ALAC decoder we use as Philippe has already pointed out. SlimServer was switched to using the ALAC decoder from MOV123 to address gap problems reported in Bug 2095. One could switch back to using MOV123 as a workaround for this bug but would most likely encounter the problems described in Bug 2095. Dean, your thoughts?
Ah, 24-bit ALAC. I didn't see that. I've sent a message to the author of ALAC to see if he's interested in adding 24-bit support.
I'll check with the ALAC author again.
Never heard back. From the author of ALAC, he doesn't seem interested. Punting until we can get some help on this. Where did those 24-bit Apple Lossless files come from? I don't see how to create them...
The 24bit files were created with Sound Studio, which I recorded in 24bit from analog sources via an Edirol A/D converter.
*** Bug 8402 has been marked as a duplicate of this bug. ***
I also have this problem. Running on a windows machine with the apple libraries installed there is an easy work round in convert.conf to use mov123 rather than alac. Perhaps this config of convert.conf should be standard in the windows install? This used to work in older versions of Slimserver that depended on the apple decoding libs. I have 24 bit ALE files from both home recording of vinyl - but also from Flacs and Windows downloads from the Linn site at 'Studio Master' resolution. Itunes correctly converts to ALE at 24 bit.
*** Bug 10512 has been marked as a duplicate of this bug. ***
Is there some reason you don't want to use FLAC? All your problems will go away if you convert your files to FLAC.
Regarding FLAC: The reason this is not the solution is the fact that iTunes doesn't support FLAC. So if you are like me having his whole collection in iTunes, then ALAC is the way to go.
Is an online store selling 24/48 or 24/96 ALAC files?
> Is an online store selling 24/48 or 24/96 ALAC files? I don't believe that any 24 bit files are currently being sold in the alac format per se but rather users are obtaining 24 bit files in other formats and then transcoding to alac for use with iTunes like Greg mentions in comment #10. Perhaps logic can be added to SC not play 24 bit alac files until this issue can be addressed?
24bit ALE files are not available - but if I recall correctly iTunes automatically converts WMP files - which are available from Linn. The 24bit ALE worked for many years in Slimserver while the apple libraries were used. Fixing on windows just requires a conf change back to using the apple libraries (mov123 rather than alac) - although of course this will only work on windows. So I'm still running this successfully - I just need to edit the config file after each upgrade. And yes - I don't use FLAC because I keep my library in iTunes (which doesn't support flac) and use the same files on my iPod after using iTunes to transcode to aac. So I'd have to change the way I maintain my library in a pretty drastic way to use FLAC.
I think we'll need to come up with a solution for supporting 24bit ALAC files for completeness, since you can create and play them back in iTunes and other Apple products...
Sorry, I missed this bug report. I second the need to handle these files properly. I have many vinyl rips in 24bit ALAC.
*** Bug 10700 has been marked as a duplicate of this bug. ***
i've tried to reach out to the ALAC authors to see if we can support them in getting 24-bit decoding working in their decoder, but with no success: http://craz.net/programs/itunes/alac.html Seth, can you try again?
this is an administrative shuffle on priority fields to help make better judgment on the top end of the priority list. P4->P5, P3->P4, and P2->P3.
*** Bug 15230 has been marked as a duplicate of this bug. ***
Fixed by fixes for bug 15656 and bug 14700.
== Auto-comment from SVN commit #30099 to the repo by ayoung == == https://svn.slimdevices.com/?view=revision&revision=30099 == bug 6028: Static/Noise delivered, then alac crashes when attempting to play 24 bit Apple Lossless songs
This bug has been marked fixed in a released version of Squeezebox Server or the accompanying firmware or mysqueezebox.com release. If you are still seeing this issue, please let us know!