CINXE.COM
ID3v2Easy
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd"> <html lang="en" dir="ltr"> <head> <meta http-equiv="Content-Type" content="text/html;charset=utf-8"> <meta name="robots" content="noindex,nofollow"> <title>ID3v2Easy</title> <script type="text/javascript"> function getKey(e) { // Support multiple browsers stupidity var key; if (e == null) { // IE key = event.keyCode; } else { // Standards compliant if (e.altKey || e.ctrlKey) { return null; } key = e.which; } return key; } function go(slide) { window.location="/ID3v2Easy?action=SlideShow&n=" + slide; } function onkeydown(e) { switch(getKey(e)) { // presenter maybe rather wants to use up/down for scrolling content! // case 38: go('1'); break; // up arrow // case 40: go('1'); break; // down arrow case 39: go('1'); break; case 37: go('1'); break; default: return true; // pass event to browser } // Return false to consume the event return false; } document.onkeydown = onkeydown </script> <link rel="stylesheet" type="text/css" charset="utf-8" media="all" href="/moin_static199/moniker/css/SlideShow.css"> </head> <body> <h1>1</h1> <div id="content"> <span class="anchor" id="line-1"></span><p class="line867"> <h2 id="What_is_ID3v2.3F">What is ID3v2?</h2> <span class="anchor" id="line-2"></span><p class="line867"><br> <span class="anchor" id="line-3"></span><div><table style="&quot; &quot; ; width: &quot;100%&quot"><tbody><tr> <td><p class="line862">ID3v2 is a tagging system that lets you put enriching and relevant information about your audio files within them. In more down to earth terms, ID3v2 is a chunk of data prepended to the binary audio data. Each ID3v2 tag holds one or more smaller chunks of information, called frames. These frames can contain any kind of information and data you could think of such as title, album, performer, website, lyrics, equalizer presets, pictures etc. The block scheme to the right is an example of how the layout of a typical ID3v2 tagged audio file may look like. <br> <br> One of the design goals were that the ID3v2 should be very flexible and expandable. It is very easy to add new functions to the ID3v2 tag, because, just like in HTML, all parsers will ignore any information they don't recognize. Since each frame can be 16MB and the entire tag can be 256MB you'll probably never again be in the same situation as when you tried to write a useful comment in the old ID3 being limited to 30 characters. <br> <br> Speaking of characters, the ID3v2 supports Unicode so even if you use the Bopomofo character set you'll be able to write in your native language. You can also include in which language you're writing so that one file might contain e.g. the same lyrics but in different languages. </td> <td><p class="line862"> <img alt="id3v2_blocks.gif" class="attachment" src="/ID3v2Easy?action=AttachFile&do=get&target=id3v2_blocks.gif" title="id3v2_blocks.gif" /> <em>Internal layout of an ID3v2 tagged file. Example of the internal layout of an ID3v2 tagged file. </em> </td> </tr> </tbody></table></div><span class="anchor" id="line-4"></span><p class="line874">Even though the tag supports a lot of byte consuming capabilities like inline pictures and even the possibility to include any other file, ID3v2 still tries to use the bytes as efficient as possibly. If you convert an ID3v1 tag to an ID3v2 tag it is even likely that the new tag will be smaller. If you convert an ID3v1 tag where all fields are full (that is, all 30 characters are used in every field) to an ID3v2 tag it will be 56 bytes bigger. This is the worst case scenario for ID3v1 to ID3v2 conversion. <span class="anchor" id="line-5"></span><span class="anchor" id="line-6"></span><p class="line874">Since it's so easy to implement new functionality into ID3v2, one can hope that we'll see a lot of creative uses for ID3v2 in the future. E.g. there is a built-in system for rating the music and counting how often you listen to a file, just to mention some brainstorm results that are included. This feature can be used to build playlists that play your favourite songs more often than others. <span class="anchor" id="line-7"></span><span class="anchor" id="line-8"></span><p class="line874">Some main features <span class="anchor" id="line-9"></span><span class="anchor" id="line-10"></span><ul><li>The ID3v2 tag is a container format, just like IFF or PNG files, allowing new frames (chunks) as evolution proceeds. <span class="anchor" id="line-11"></span></li><li>Residing in the beginning of the audio file makes it suitable for streaming. <span class="anchor" id="line-12"></span></li><li>Has an 'unsynchronization scheme' to prevent ID3v2-incompatible players to attempt to play the tag. <span class="anchor" id="line-13"></span></li><li>Maximum tag size is 256 megabytes and maximum frame size is 16 megabytes. <span class="anchor" id="line-14"></span></li><li>Byte conservative and with the capability to compress data it keeps the files small. <span class="anchor" id="line-15"></span></li><li>The tag supports Unicode. <span class="anchor" id="line-16"></span></li><li>Isn't entirely focused on musical audio, but also other types of audio. <span class="anchor" id="line-17"></span></li><li>Has several new text fields such as composer, conductor, media type, BPM, copyright message, etc. and the possibility to design your own as you see fit. <span class="anchor" id="line-18"></span></li><li>Can contain lyrics as well as music-synced lyrics (karaoke) in almost any language. <span class="anchor" id="line-19"></span></li><li>Is able to contain volume, balance, equalizer and reverb settings. <span class="anchor" id="line-20"></span></li><li><p class="line862">Could be linked to CD-databases such as <a class="http" href="http://www.cddb.com/">CDDB</a> and <a class="http" href="http://www.freedb.org">FreeDB</a>. <span class="anchor" id="line-21"></span></li><li>Is able to contain images and just about any file you want to include. <span class="anchor" id="line-22"></span></li><li>Supports enciphered information, linked information and weblinks. <span class="anchor" id="line-23"></span></li><li><p class="line862">and more... (a complete list of all frames and their functions can be found <a href="/Frames">here</a>) <span class="anchor" id="line-24"></span></li></ul> </div> <div id="navigation" lang="en" dir="ltr"> <ul> <li><a href="/ID3v2Easy?action=SlideShow&n=all" title="Print slide show">Print</a></li> <li><span title="You are not allowed to edit this page.">Edit</span></li> <li><a href="/ID3v2Easy" title="Quit slide show">Quit</a></li> <li><span title="Show first slide (up arrow)">|</span></li> <li><span title="Show previous slide (left arrow)">←</span></li> <li><span class="current">1</span></li> <li><span title="Show next slide (right arrow)">→</span></li> <li><span title="Show last slide (down arrow)">|</span></li> </ul> </div> <div id="footer"> <ul> <li id="date"></li> <li id="author"></li> <li id="counter">1|1</li> </ul> </div> <!-- <p><a href="http://validator.w3.org/check?uri=referer"> Valid HTML 4.01</a> </p> --> </body> </html>