<html><head></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; ">Thank's for the details!&nbsp;<div><br></div><div>So I go for a non standard but iTunes compatibility solution. I know this is not really sweet but in this case the iTunes compatibility is more important. And once again I can blame iTunes but I'm not sure if it can take it anymore... I had to blame it too much lately ;-)&nbsp;</div><div><br></div><div>Thomas&nbsp;</div><div><br><div><div>On 03.03.2010, at 12:37, Lukáš Lalinský wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite"><div>On Wed, Mar 3, 2010 at 11:59 AM, Thomas Post &lt;<a href="mailto:post@equinux.com">post@equinux.com</a>&gt; wrote:<br><blockquote type="cite">Hi,<br></blockquote><blockquote type="cite">I have some ID3v4 tags with a number as a genre. Now when the taglib parses<br></blockquote><blockquote type="cite">the tag it reads the number and the getter returns the according genre from<br></blockquote><blockquote type="cite">the ID3v1 genres list. But now when I write some tags (without changing the<br></blockquote><blockquote type="cite">genre tag), tag lib writes the genre number to the genre tag. But just the<br></blockquote><blockquote type="cite">number without brackets. The standard describes it with brackets!<br></blockquote><br>It doesn't. You are reading the ID3v2.3 specification. In ID3v2.4 it's<br>just numbers.<br><br><blockquote type="cite">Effect: other softwares like iTunes just show the number and not the according<br></blockquote><blockquote type="cite">genre.<br></blockquote><br>That's a bug in iTunes. It can be worked around, but it would be<br>unfair to blame TagLib.<br><br><blockquote type="cite">Now I tried to fix that but I'm not shore if this is the right way. When<br></blockquote><blockquote type="cite">reading the genre in&nbsp;FrameFactory::updateGenre(&nbsp;convert the genre numbers to<br></blockquote><blockquote type="cite">the according genre name and when rendering the Genre frame convert them<br></blockquote><blockquote type="cite">back to a correct genre number with brackets.<br></blockquote><br>Using parentheses around the numbers would be incorrect according to<br>the ID3v2.4 specification. Not syntactically incorrect, but they would<br>be parsed as textual genres.<br><br><blockquote type="cite">Or the other way is that I save the genre number with the brackets in<br></blockquote><blockquote type="cite">the&nbsp;updateGenre&nbsp;method and only convert it to the according text in the<br></blockquote><blockquote type="cite">genre getter.<br></blockquote><blockquote type="cite">An other option would be just convert the number in the beginning to the<br></blockquote><blockquote type="cite">according text and save the text. But with that I would loose localized<br></blockquote><blockquote type="cite">genres in some applications.<br></blockquote><blockquote type="cite">Any suggestions?<br></blockquote><br>Saving textual genres is the best option, if you don't want to break<br>applications that properly support ID3v2.4.<br><br>-- <br>Lukas Lalinsky<br><a href="mailto:lalinsky@gmail.com">lalinsky@gmail.com</a><br>_______________________________________________<br>taglib-devel mailing list<br>taglib-devel@kde.org<br>https://mail.kde.org/mailman/listinfo/taglib-devel<br></div></blockquote></div><div><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-align: auto; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; color: rgb(0, 0, 0); font-family: Helvetica; font-size: medium; font-style: normal; font-variant: normal; font-weight: normal; letter-spacing: normal; line-height: normal; orphans: 2; text-indent: 0px; text-transform: none; white-space: normal; widows: 2; word-spacing: 0px; -webkit-border-horizontal-spacing: 0px; -webkit-border-vertical-spacing: 0px; -webkit-text-decorations-in-effect: none; -webkit-text-size-adjust: auto; -webkit-text-stroke-width: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><span class="Apple-style-span" style="font-size: 12px; "><br><div>-----------------------------------------------------------------------------------------------------------</div><div><br></div><div>equinux Aktiengesellschaft</div><div>Informationstechnologien</div><div>Kirschstraße 35</div><div>80999 München - Germany</div><div>Tel. +49-89-520465-339</div><div>Fax +49-89-520465-299</div><div><a href="mailto:post@equinux.de">mailto:post@equinux.de</a></div><div><a href="http://www.equinux.com/de">http://www.equinux.com/de</a></div><div>-----------------------------------------------------------------------------------------------------------</div><div>Vorstand: Till Schadde &nbsp;-&nbsp; Aufsichtsrat: Stefan Neuenhahn</div><div>USt-IdNr.: DE206360115&nbsp; -&nbsp; Sitz München&nbsp; -&nbsp; HRB München 129700</div><div>-----------------------------------------------------------------------------------------------------------</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; font: normal normal normal 12px/normal Helvetica; min-height: 14px; "><br></div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">equinux USA, Inc.</div><div>100 Produce Ave. Suite L,&nbsp;South San Francisco, CA 94080&nbsp;</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; ">Toll free: 1-888-equinux (1-888-3784689)</div><div style="margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px; "><a href="http://www.equinux.com/">http://www.equinux.com</a></div><div>-----------------------------------------------------------------------------------------------------------</div><div><br class="khtml-block-placeholder"></div></span>Stay updated what's going on at equinux<br><a href="http://blog.equinux.com/">equinux Blog</a>&nbsp;|&nbsp;<a href="http://www.twitter.com/equinux">equinux @ Twitter</a>&nbsp;|&nbsp;<a href="http://www.facebook.com/pages/equinux/43701393352">equinux @ Facebook</a></div></div></span></div></span></div></span></div></span></div></span></span>
</div>
<br></div></body></html>