Antti,<br><br>A while ago, I made an extensive binding of specific features for the Muine music player here: <a href="http://www.public.asu.edu/~bnickel/SharpTagger/">http://www.public.asu.edu/~bnickel/SharpTagger/</a><br>
<br>This library is a little more robust than the C bindings allow for, providing things like &quot;string [] Artists&quot; rather than &quot;string Artist&quot;. It also provides other items like total tracks, disk# in set, disk title, album cover, etc. Unfortunately, it also leaks quite a bit of memory but if you can work around its shortcomings, it has write support and provides examples of how to extend certain features.
<br><br>I think the best idea overall would be a full port of TagLib to C#, as it could take advantage of .NET's built in libraries for data structures and unicode. I have some prior work on this I could share, but I'm an organizational disaster and never really devised a systematic way of working on it. (A goal of mine for this summer.)
<br><br>Best of luck,<br>Brian Nickel<br><br><div><span class="gmail_quote">On 5/25/06, <b class="gmail_sendername">Antti Sykäri</b> &lt;<a href="mailto:jsykari@cc.hut.fi">jsykari@cc.hut.fi</a>&gt; wrote:</span><blockquote class="gmail_quote" style="border-left: 1px solid rgb(204, 204, 204); margin: 0pt 0pt 0pt 0.8ex; padding-left: 1ex;">
Hi,<br><br>I'm writing a music player in C# but couldn't find a good C# library<br>for reading id3v2 tags, so I wrote an initial version of C# bindings<br>for TagLib. It uses the C interface and writing tags is not yet<br>
supported.&nbsp;&nbsp;It should be straightforward to add but I decided to get<br>some sleep instead. Also Unicode doesn't quite work yet - I assume that<br>my wrapper thinks it's getting ISO-8859-1/ASCII from the file when it<br>actually gets UTF8 encoded data. But otherwise it seems to work ;)
<br><br>I used Visual Studio 2005 on Windows XP (Express should work as well)<br>and Stefan Gehn's MSVC port of TagLib<br>(<a href="http://metz.gehn.net/files/taglib-snapshot-win32.zip">http://metz.gehn.net/files/taglib-snapshot-win32.zip
</a>), which I<br>augmented with a slightly modified tag_c.cpp. It is available at:<br><br><a href="http://jsykari.lucid.fi/soft/TagLib/taglib-1.4.0-win32-with-c-bindings.zip">http://jsykari.lucid.fi/soft/TagLib/taglib-1.4.0-win32-with-c-bindings.zip
</a><br><br>The C# bindings are at:<br><br><a href="http://jsykari.lucid.fi/soft/TagLib/TagLib.cs">http://jsykari.lucid.fi/soft/TagLib/TagLib.cs</a><br><br>Perhaps someone finds it useful.<br><br>-Antti<br><br>--<br>- I still say that private enterprise is acceptable at a village level,
<br>providing it is strictly controlled by the party.<br>- We must not let petty bourgeois aspirations taint socialist pedagogy.<br>Reform is the enemy of revolution.<br>_______________________________________________<br>
taglib-devel mailing list<br><a href="mailto:taglib-devel@kde.org">taglib-devel@kde.org</a><br><a href="https://mail.kde.org/mailman/listinfo/taglib-devel">https://mail.kde.org/mailman/listinfo/taglib-devel</a><br></blockquote>
</div><br>