AW: [ID3 Dev] Purpose of Unsynchronization flag on ID3v24 tag header ?

Paul Taylor paul_t100 at fastmail.fm
Fri Apr 6 07:40:14 PDT 2007


Mathias Kunter wrote:
> If the TAG header unsync bit is set this means that ALL frames within this tag have
> been unsynced, and that ALL frames MUST contain the unsync bit set in the
> FRAME header flags therefore (as defined by the specs). In my current ID3 implementation
> I de-unsync a frame if either the TAG flag is set or if the FRAME flag is set for
> the particular frame.
>
> Note that if a frame has been unsynced this doesn't mean that this frame actually got
> modified. (Well, the specs say that the flag SHOULD only be set if the frame became
> actually modified because of a false sync, but you can't rely on that).
>   
This is what I was trying to get at. Is a frame unsynchronized IF it 
doesnt contain FF FE patterns or ONLY IF it has actually been 
unsynchronized meaning that FF 00
will become FF 00 00 even if there were no FF FE Patterns in the 
existing data. You seem to be saying you follow the first case, but 
point out the spec says the second case.
> So if the frame header flag is set it is guaranteed that this frame (or all frames, if the
> tag header flag is set) contain no false sync signal in it. It does NOT mean that the
> frame content actually became modified, as mentioned before. From the decoder
> point of view, this doesn't matter anyway. Just de-unsync the frame by replacing all
> $FF $00 byte sequences with $FF bytes.
>   
 From the decoder point of view it DOES MATTER because if you had a 
frame with a $FF $00 combination and you didnt unsynchronize the frame 
because there was no $FF $FE combinations
and then a decoder tried to de-unsync the frame it would remove the 00, 
and your data will be modified
> Cheers.
> Mathias
>   

Paul

---------------------------------------------------------------------
To unsubscribe, e-mail: id3v2-unsubscribe at id3.org
For additional commands, e-mail: id3v2-help at id3.org



More information about the ID3v2 mailing list