[Flac-dev] Help upgrading to 1.1.3 (MD5 sum issues, album art corrupts files)

Stephen F. Booth me at sbooth.org
Tue Jan 16 19:55:06 PST 2007

Hello all,

I recently upgraded the libFLAC used in my application Max (http:// 
sbooth.org/Max/) to 1.1.3 and added preliminary support for album  
art.  During the upgrade I evidently made some coding mistakes with  
interesting results.  I've combed everything over and can't quite see  
the problems.  I've become somewhat frustrated because my code didn't  
really change significantly from my usage of the 1.1.2 APIs yet  
things don't work like they did previously.

My first issue is this: files generated by my application are  
reported as having "ERROR, MD5 signature mismatch" when tested with  
flac -t.  I am at a loss as to why!  When I set  
FLAC__stream_encoder_set_verify to true no errors are reported during  
the encode.  Has anyone seen anything like this?  The source for my  
encoder may be viewed at http://macaudiox.svn.sourceforge.net/viewvc/ 
macaudiox/trunk/Encoders/FLACEncoder.m?view=markup if anyone is curious.

The second issue is likely more serious.  When I attempt to add album  
art to one of the FLAC files I've created (using the level 2 metadata  
interface), the files are becoming corrupt (in a sense).  Testing  
with flac-t indicates "ERROR, --until value is before --skip  
point".   Interestingly, the file seems to work with metaflac:

METADATA block #0
   type: 0 (STREAMINFO)
   is last: false
   length: 34
   minimum blocksize: 4608 samples
   maximum blocksize: 4608 samples
   minimum framesize: 893 bytes
   maximum framesize: 14662 bytes
   sample_rate: 44100 Hz
   channels: 2
   bits-per-sample: 16
   total samples: 9626736
   MD5 signature: a9b57ffa2020017504e551c6ded0e092
METADATA block #1
   type: 4 (VORBIS_COMMENT)
   is last: false
   length: 336
   vendor string: reference libFLAC 1.1.3 20061120
   comments: 7
     comment[0]: ALBUM=Hope Floats
     comment[1]: ARTIST=Lyle Lovett
     comment[2]: TITLE=Smile
     comment[3]: TRACKNUMBER=11
     comment[4]: TRACKTOTAL=13
     comment[5]: ENCODER=Max 0.7.1b
     comment[6]: ENCODING=FLAC settings: exhaustiveModelSearch:0  
midSideStereo:1 looseMidSideStereo:0 QLPCoeffPrecision:0,  
minResidualPartitionOrder:0, maxResidualPartitionOrder:4, maxLPCOrder:8
METADATA block #2
   type: 6 (PICTURE)
   is last: false
   length: 32
   type: 3 (Cover (front))
   MIME type: image/png
   width: 800
   height: 600
   depth: 24
   colors: 0 (unindexed)
   data length: 685873
     00000000: 89 50 4E 47 0D 0A 1A 0A 00 00 00 0D 49 48 44  
52 .PNG........IHDR
     ! <snip> !
     000A7730: 82 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 .
METADATA block #3
   type: 1 (PADDING)
   is last: true
   length: 7860

Obviously I am doing something wrong, but again I'm not sure what.   
The tagging/album art source code is at http:// 
EncoderTasks/FLACEncoderTask.m?view=markup for the curious.

Does anyone have any ideas?

-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2409 bytes
Desc: not available
Url : http://lists.xiph.org/pipermail/flac-dev/attachments/20070116/b6580cd8/smime.bin

More information about the Flac-dev mailing list