Bug 17163 - 24/96 AIFF Files do not play only hiss
: 24/96 AIFF Files do not play only hiss
Status: NEW
Product: SB Touch
Classification: Unclassified
Component: Audio
: unspecified
: All MacOS X 10.6
: -- major with 3 votes (vote)
: ---
Assigned To: Unassigned bug - please assign me!
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2011-04-19 11:20 UTC by Mark Glover
Modified: 2014-07-13 07:39 UTC (History)
6 users (show)

See Also:
Category: ---


Attachments
This is the settings that have hiss for AIFF 24/96 files. (59.38 KB, application/pdf)
2011-04-19 11:20 UTC, Mark Glover
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Mark Glover 2011-04-19 11:20:06 UTC
Created attachment 7236 [details]
This is the settings that have hiss for AIFF 24/96 files.  

Squeezebox Server - Software Version - Version: 7.5.4 - r32171 on ReadyNAS
Ultra 2 Plus

Player Model: Squeezebox Touch
Firmware: 7.5.4-r9408

With Server Settings to play AIFF files natively and not convert to FLAC, 24/96
files do not play... only hiss.
When manually converting the files to FLAC and setting the Server to convert to
PCM, they play perfectly.
Not sure if this is a problem on Touch or Server.
Comment 1 Mark Glover 2011-06-30 11:45:16 UTC
Version is 7.5.4  Same problem on ReadyNAS x86, OS X 10.6.8, and Windows 7 version
Comment 2 Mark Glover 2011-06-30 11:45:45 UTC
Version is 7.5.4  Same problem on ReadyNAS x86, OS X 10.6.8, and Windows 7 version
Comment 3 Jim McAtee 2012-01-10 21:54:03 UTC
I can confirm this with the latest 7.7.2. Played natively, 24/96 AIFF files produce white noise on the Touch.
Comment 4 Jim McAtee 2012-01-13 21:56:09 UTC
Also see bug 17862. I've found that standard redbook 16/44.1 AIFF files play fine natively on both the Touch and Transporter.
Comment 5 Adrian Smith 2012-05-06 06:56:42 UTC
I think the problem is that Audio::Scan is off by 8 bytes in the start of the audio header for aiff.

From http://www-mmsp.ece.mcgill.ca/Documents/AudioFormats/AIFF/Docs/AIFF-1.3.pdf:

#define SoundDataID 'SSND' /* ckID for Sound Data Chunk */
typedef struct {
ID ckID;
long ckSize;
unsigned long offset;
unsigned long blockSize;
unsigned char soundData[];
} SoundDataChunk;

So need something like this to avoid treating the offset and blockSize as audiodata:

--- src/wav.c   (revision 904)
+++ src/wav.c   (working copy)
@@ -387,7 +387,19 @@
     // Seek past SSND, everything else we parse
     // XXX: Are there other large chunks we should ignore?
     if ( !strcmp( chunk_id, "SSND" ) ) {
-      my_hv_store( info, "audio_offset", newSVuv(offset) );
+
+      unsigned ssnd_offset, ssnd_blocksize;
+         
+      if ( !_check_buf(infile, buf, 8, WAV_BLOCK_SIZE) ) {
+       return;
+      }
+         
+      ssnd_offset = buffer_get_int(buf);
+      ssnd_blocksize = buffer_get_int(buf);
+         
+      DEBUG_TRACE("SSND offset: %u block size: %u\n", ssnd_offset, ssnd_blocksize);
+         
+      my_hv_store( info, "audio_offset", newSVuv(offset + 8 + ssnd_offset) );
       my_hv_store( info, "audio_size", newSVuv(chunk_size) );
 
       // Seek past data if there are more chunks after it
Comment 6 Adrian Smith 2012-05-12 02:14:49 UTC
Workaround for server until Audio::Scan gets fixed:

--- Slim/Formats/AIFF.pm        (revision 33869)
+++ Slim/Formats/AIFF.pm        (working copy)
@@ -56,7 +56,9 @@
        return unless $info->{song_length_ms};
 
        # Add file info
-       $tags->{OFFSET}       = $info->{audio_offset};
+       # BUG 17163 - workaround until Audio::Scan gets fixed: add 8 bytes to audio_offset
+       $tags->{OFFSET}       = $info->{audio_offset} + 8;
+
        $tags->{SIZE}         = $info->{audio_size};
        $tags->{SECS}         = $info->{song_length_ms} / 1000;
        $tags->{RATE}         = $info->{samplerate};
Comment 7 Jim McAtee 2012-09-12 12:10:02 UTC
Why hasn't this been checked in?
Comment 8 Mikael Nyberg 2014-06-30 08:23:50 UTC
Yeah why not check in this and swat this bug too ?
Comment 9 Adrian Smith 2014-07-02 20:17:05 UTC
I believe this is fixed in Audio::Scan 0.94 and 0.95 - which should be part of 7.9 for several platforms.
Comment 10 Mikael Nyberg 2014-07-03 08:43:48 UTC
Testing on my setup . Yes I played a 24/96 Aiff file natively with the latest 7.9
(you need to change some file types settings to make LMS do it ,but thats expected )

So in my pow this is fixed ,anyone else care to try to get more confidence that this is really fixed .
Windows or MAc user  ? (I use Linux ) .
Comment 11 Ludovic 2014-07-06 07:17:19 UTC
Hello, i installed lms7.9 on a Synology 713+ with SSODS4.14 but not sure what is the audio library version it seems that the 0.94 or 0.95 is not on all versions : how to check ?
Thanks
Comment 12 Adrian Smith 2014-07-06 10:20:27 UTC
The new version of Audio::Scan has not been build for several of the more obscure devices - you should be able to see the version installed on the server information page.  You need 0.94 or 0.95 for this to work.
Comment 13 Ludovic 2014-07-11 20:43:25 UTC
Hello, even with LMS7.9 and audio:scan 0.95 on a synology 713+, AIFF does not still work (only hiss). Need to transcode to flac to play.
Comment 14 Mikael Nyberg 2014-07-12 11:07:43 UTC
(In reply to comment #13)
> Hello, even with LMS7.9 and audio:scan 0.95 on a synology 713+, AIFF does
> not still work (only hiss). Need to transcode to flac to play.

Did you do a full rescan after you installed 7.9 ?
Comment 15 Ludovic 2014-07-12 16:49:10 UTC
Hello, In fact i used to have LMS7.8 and upgraded through ssods to lms7.9 without cpan. But it does not work. So I upgraded to full LMS7.9 and did not rescan and I have the issue. My problem is that the scan with LMS7.9 without cpan works but the scan with full LMS7.9 bug (see the bug track I opened : https://bugs-archive.lyrion.org/show_bug.cgi?id=18105). So LMs7.9 is installed but not able to rescan....
Thanks for your support
Comment 16 Mikael Nyberg 2014-07-13 05:14:31 UTC
(In reply to comment #15)
> Hello, In fact i used to have LMS7.8 and upgraded through ssods to lms7.9
> without cpan. But it does not work. So I upgraded to full LMS7.9 and did not
> rescan and I have the issue. My problem is that the scan with LMS7.9 without
> cpan works but the scan with full LMS7.9 bug (see the bug track I opened :
> https://bugs-archive.lyrion.org/show_bug.cgi?id=18105). So LMs7.9 is installed
> but not able to rescan....
> Thanks for your support

Yes , that's probably your problem a working 7.9 install in Linux does work just fine . Sugest you solve your 7.9 scan problem first
Comment 17 Ludovic 2014-07-13 07:39:22 UTC
You are right, I need to solve it first !