¿Cómo leer y escribir tags ID3 en un MP3 en C #?

¿Hay una biblioteca para leer y escribir tags ID3 en un MP3 en C #?

De hecho, he visto un par al buscar, alguien que use alguno que pueda recomendarse.

Taglib # es el mejor. Es el puerto directo de la biblioteca TagLib C a C #.

Para instalar TagLib #, ejecute el siguiente comando en la consola de Package Manager en Visual Studio.

PM> Install-Package taglib 

La distribución de NuGet de taglib-sharp se puede encontrar en http://nuget.org/packages/taglib .
El repository de código fuente oficial está en https://github.com/mono/taglib-sharp .

Aquí hay un ejemplo usando la biblioteca:

 TagLib.File file = TagLib.File.Create("mysong.mp3"); String title = file.Tag.Title; String album = file.Tag.Album; String length = file.Properties.Duration.ToString(); 

Personalmente he usado ID3.Net desde aquí:

http://id3dotnet.sourceforge.net/

Además de UltraID3Lib desde aquí:

http://home.fuse.net/honnert/hundred/

Ambos hicieron bien el trabajo y fueron fáciles de usar desde el punto de vista de la API.

Aquí hay un proyecto de sourceforge que se ha escrito para hacer esto y parece tener algunas buenas críticas:

http://csid3lib.sourceforge.net/

Solo he leído tags ID3, nunca las he escrito, así que no puedo comentar específicamente sobre eso. Sin embargo, creo que este proyecto (en una etapa mucho más temprana) fue lo que solía hacer.