View Issue Details

IDProjectCategoryView StatusLast Update
0002845MMW v4Properties/Auto-Toolspublic2007-02-27 17:17
Reporterrusty Assigned To 
PriorityimmediateSeverityminorReproducibilityalways
Status closedResolutionfixed 
Fixed in Version2.5.5 
Summary0002845: Flac files with Multiple Additional Metadata Blocks are not written correct
DescriptionReported by Teknojnky. Note that bug exists in 2.5.5.997 but not in 3.0.0.1017. Peke can you investigate why this is so? i.e. to my knowledge your 2800 fix applied in the same manner to both 2.5.x and 3.x which would imply that something else is responsible for the different behaviour, so I'm wondering whether we should fix this or not in 2.5.x.

 
Hi,
 
Hate to bring the bad news, but I think I found either a new issue or part of the same issue.
 
If MM 2.5.5.997 changes any flac tags for flac file which do NOT have MD5 CRC's (ie they were SPLIT from a single cue + image.flac), then the command line flac encoder gets the following errors. I used CUE Splitter v 0.6b13 @ http://cue-splitter.enfis.it
 
 
I've include an example file.
 
First run (1.1.4) flac.exe -t -V 1.flac
 
>flac -t -V 1.flac
 
flac 1.1.4, Copyright (C) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson
flac comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
welcome to redistribute it under certain conditions. Type `flac' for details.
 
1.flac: WARNING, cannot check MD5 signature since it was unset in the STREAMINFO
 
1.flac: ok
 
-----------------------------------------------------------------------------------
 
 
If you take a copy of this file (its read only) and modify the rating, then run the flac.exe again you will get the below errors.
 
>flac -t -V 3.flac
 
flac 1.1.4, Copyright (C) 2000,2001,2002,2003,2004,2005,2006,2007 Josh Coalson
flac comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
welcome to redistribute it under certain conditions. Type `flac' for details.
 
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
3.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
3.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
 

3.flac: ERROR while decoding data
        state = FLAC__STREAM_DECODER_READ_FRAME
 
 
I DID test this also on the MM 3 alpha, and changing the rating does NOT result on the stream errors.
 
Hope this helps and is resolvable for 2.5.x
 
 
----- Original Message -----
From: Russell Samuels
To: 'teknojnky'
Sent: Wednesday, February 07, 2007 3:06 PM
Subject: RE: 2.5.5.996 and flac files/tags problem


Tekno,
 
Looking into this for 3.0 as well (bug 2801).
 
Thanks for the detailed report.
 
-Rusty



--------------------------------------------------------------------------------
From: teknojnky [mailto:teknojnky@hotmail.com]
Sent: Wednesday, February 07, 2007 1:07 AM
To: support@mediamonkey.com
Cc: me
Subject: 2.5.5.996 and flac files/tags problem


 
 
 
Something is broken with flacs and MM tags.
 
the attached archive contains 3 identical flac files, one with no metadata, the other with metadata saved by mediamonkey, and the 3rd is #2 re-encoded to flac (from flac) by MM which WILL re-encode with noerrors by the batch file BUT if the file is SYCED by MM (control-S) then it will fail again...
 
The included batchfile and support files allows for batch converting of older version flac files to 1.1.3 (or whatever the current version is set to be).
 
with batch file, the first file will test and re-encode no errors (make a copy before you do it).
 
the 2nd file will error out on the test and fail to re-encode.
 
the exact errors are:
 
Checking Vendor: "J:\Music\2) same file as 1, with tags saved by MM that can not be converted.flac"
________________________________________________________________________
reference libFLAC 1.1.2 20050205
 
Testing: "J:\Music\2) same file as 1, with tags saved by MM that can not be converted.flac"
________________________________________________________________________
 
flac 1.1.3, Copyright (C) 2000,2001,2002,2003,2004,2005,2006 Josh Coalson
flac comes with ABSOLUTELY NO WARRANTY. This is free software, and you are
welcome to redistribute it under certain conditions. Type `flac' for details.
 
2) same file as 1, with tags saved by MM that can not be converted.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
2) same file as 1, with tags saved by MM that can not be converted.flac: *** Got error code 1:FLAC__STREAM_DECODER_ERROR_STATUS_BAD_HEADER
2) same file as 1, with tags saved by MM that can not be converted.flac: *** Got error code 0:FLAC__STREAM_DECODER_ERROR_STATUS_LOST_SYNC
 

2) same file as 1, with tags saved by MM that can not be converted.flac: ERROR while decoding data
                                                                         state = FLAC__STREAM_DECODER_READ_FRAME
 
File failed testing.

 
The batch file was created by one of the hydrogen audio moderators. If you want more info/details on the batch file itself, check http://www.hydrogenaudio.org/forums/index.php?showtopic=50993
 
This batch file requires FLAC.exe to be installed in the path or in the folder with the batch file.
 
Now, the flac dev(s) know about a problem reading the id3 tags in flac, http://www.hydrogenaudio.org/forums/index.php?s=&showtopic=50993&view=findpost&p=462878 so I am guessing that MM is writing something that the flac decoder does not like.
 
Step by step re-production
 
- make a backup copy of #1
- drop #1 on to the batch file flac-113.bat
- #1 tests and encodes with no errors to flac 1.1.3
 
- drop #2 (with tags saved by MM) on to the batch file
- #2 fails test and batch file aborts re-encode
 
- make 2 backup copies of #3 (this is #2 re-encoded with MM before syncing control-s)
- drop #3 on to batch file, file re-encodes no errors
 
- on the 2nd backup, this time use control S with MM
- drop 2nd backup of #3 onto the batch file, tested with errors, no re-encode
 
I can reproduce this at will every time.
 
There is also a similar problem with MP3 files and sync'ed files vs files that get updated normally. Something is different between, for example changing the ratings, and and syncing.
 
I will send those in a separate email, its the same problem as I reported earlier during 2.5.5 RC.
 
Additional InformationFile is posted to ftp
TagsNo tags attached.
Fixed in build

Activities

peke

2007-02-20 00:34

developer   ~0008618

Last edited: 2007-02-20 00:50

In case of multiple Additional Metadata Blocks that MM ignores or not support on Updating Tag Ignored/Unsupported Metadata block size is not Calculated Correctly which resulted in incorrect calculation of Padding Space in Tags.

Reason why this do not work in 2.5.5 Branch is that 3.0 by adding support for Album Art Tracks writing metadata to FLAC itself and in case of difference in written metadata size and calculated metadata size plugin correct that before setting padding metadata even calculated metadata is wrong. That resulted in bug not showing in 3.0.

Calculations in both MM 2.5.5 and MM 3.0 are corrected.

peke

2007-02-20 00:50

developer   ~0008619

Please test bug with DLL that I have sent you and resolve this issue if you also find this fixed. SVN Is updated on Both 2.5.5 Branch and MM 3.0 Current

rusty

2007-02-26 16:33

administrator   ~0008640

Peke's fix seems to resolve the issue. I would suggest that we post a build 2.5.5.998 that fixes this.

rusty

2007-02-27 17:17

administrator   ~0008643

Tested flac tagging in 998--no regressions (relying on Teknojunky's testing of this particular issue).