Uh, that's parsing ID3v1 which is an intentionally brain-dead-simple formt. I'm pretty certain parsing ID3v2 is not going to boil down to a single unpack call. (Among other things, in ID3v2, you need to read and decode various lengths and tags in order to know how to interpret the bytes you read next.)
Also, note that the Parsing Binary Data chapter provides a way to write parsers for pretty much any binary format *and* allows you to express them in a way that is often just a transliteration of the format's spec. For instance, I originally wrote the library while writing a parser for Java .class files. For the book I wrote the ID3v2 parser in about as much time as it took me to understand the ID3v2 spec.
-Peter
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.
|