<html><head><style type="text/css"><!-- DIV {margin:0px;} --></style></head><body><div style="font-family:arial,helvetica,sans-serif;font-size:10pt"><div>> What confused me was that the spec of 2.4 states that<br>> the frame header includes the size after unsynchronization.<br><br>Yes, that's correct. The frame size is always meant as "frame size within the source data stream" - otherwise you couldn't skip a frame without decoding it.<br><br>> So if a tag has unsynchronization<br>> turned off, but the tag turned on, the frame size includes the size<br>> after unsynchronization.<br><br>I guess you meant "but the FRAME turned on". Well, if a frame has been unsynchronisated, then the frame size *always* is the size after the unsynchronisation.<br><br>Regarding the unsynchronisation flags:<br><br>Set the FRAME unsynchronisation flag ONLY if the frame data has been altered by the unsynchronisation. The frame data often isn't changed by the
 unsynchronisation. Don't set the flag in this case, your tags will be more compatible with other ID3 implementations.<br><br>Set the TAG unsynchronisation flag ONLY if ALL of your frames have a set unsynchronisation flag. This should happen rarely, at least when using the default ISO-8859-1 text encoding (Unicode BOM's can require unsynchronisation more often, but that's a different story).<br><br>I hope this helps.<br><br>Mathias Kunter<br><br></div><div style="font-family: arial,helvetica,sans-serif; font-size: 10pt;"><br><div style="font-family: arial,helvetica,sans-serif; font-size: 10pt;"><font face="Tahoma" size="2"><hr size="1"><b><span style="font-weight: bold;">Von:</span></b> Matthias Mayrock <mail@mroc.de><br><b><span style="font-weight: bold;">An:</span></b> id3v2@id3.org<br><b><span style="font-weight: bold;">Gesendet:</span></b> Montag, den 9. August 2010, 19:14:06 Uhr<br><b><span style="font-weight: bold;">Betreff:</span></b> Re:
 [ID3 Dev] Unsynchronization for Dummies<br></font><br>  Hi Peter,<br><br>thank you for your reply. I will follow your advice and try to<br>not write synchronized tags at all.<br><br>Nevertheless I'll want to support the feature and I think I got<br>it now. What confused me was that the spec of 2.4 states that<br>the frame header includes the size after unsynchronization.<br><br>If I understand this correctly it is only the case if the whole tag<br>has unsynchronization turned off but a frame turned it on. This<br>would at least make sense to me. So if a tag has unsynchronization<br>turned off, but the tag turned on, the frame size includes the size<br>after unsynchronization.<br><br>thank you very much and best wishes,<br><br>matthias mayrock<br><br><br><br>Am 8/8/2010 5:34 PM, schrieb Peter Bennett:<br>> Hi Matthias<br>><br>> I recommend against writing Unsynchronized  frames. Players do not <br>> need them these days, and one
 version of Windows media player would <br>> not play an mp3 file file if the tag had unsynchronized frames. My <br>> method is to be able to read unsynchronized frames but not to write them.<br>><br>> Peter Bennett<br>><br>> On 8/6/2010 1:56 PM, Matthias Mayrock wrote:<br>>>  Hi There,<br>>><br>>> Sorry I ask this dumb question but the unchronization,<br>>> to get it right, when writing v2.0-2.4, works like this:<br>>><br>>> 1) Write frame data<br>>> 2) Insert unsynchronization zeros into frame data<br>>> 3) Take new frame data length and put into frame header<br>>><br>>> So the frame header contains the size of frame content<br>>> after inserted zeros, right?<br>>><br>>> Thanks for any answer and best wishes,<br>>><br>>> matthias mayrock<br>>><br>>><br>>><br>>>
 ---------------------------------------------------------------------<br>>> To unsubscribe, e-mail: <a ymailto="mailto:id3v2-unsubscribe@id3.org" href="mailto:id3v2-unsubscribe@id3.org">id3v2-unsubscribe@id3.org</a><br>>> For additional commands, e-mail: <a ymailto="mailto:id3v2-help@id3.org" href="mailto:id3v2-help@id3.org">id3v2-help@id3.org</a><br>>><br>>><br>><br>><br>> ---------------------------------------------------------------------<br>> To unsubscribe, e-mail: <a ymailto="mailto:id3v2-unsubscribe@id3.org" href="mailto:id3v2-unsubscribe@id3.org">id3v2-unsubscribe@id3.org</a><br>> For additional commands, e-mail: <a ymailto="mailto:id3v2-help@id3.org" href="mailto:id3v2-help@id3.org">id3v2-help@id3.org</a><br>><br><br><br>---------------------------------------------------------------------<br>To unsubscribe, e-mail: <a ymailto="mailto:id3v2-unsubscribe@id3.org"
 href="mailto:id3v2-unsubscribe@id3.org">id3v2-unsubscribe@id3.org</a><br>For additional commands, e-mail: <a ymailto="mailto:id3v2-help@id3.org" href="mailto:id3v2-help@id3.org">id3v2-help@id3.org</a><br><br></div></div>
</div><br></body></html>