
Esistono diversi standard di metadati utilizzati con i file MP3. Vari tipi di dati possono essere archiviati utilizzando standard diversi. In questo articolo, discuteremo di come leggere diversi tag MP3 usando C#. In particolare, impareremo a estrarre i tag di metadati ID3v1, ID3v2, Lyrics e APEv2 dai file mp3 all’interno dell’applicazione .NET.
Di seguito vengono trattati i seguenti argomenti:
- API .NET per gestire i tag MP3
- Leggi tag ID3 MP3 - ID3v1 e ID3v2
- Ottieni tag dei testi MP3
- Recupera tag APEv2 MP3
API .NET per l’editor di tag MP3
GroupDocs.Metadata fornisce l’API .NET per automatizzare la gestione dei metadati di [vari formati di file](https://docs.groupdocs.com/metadata/net/supported-document -formats/) all’interno di applicazioni .NET. L’API consente di leggere, aggiornare, aggiungere, pulire e rimuovere i metadati per molti formati di file. Utilizzeremo questa API per gestire i tag di metadati dei file MP3.
Puoi scaricare il programma di installazione delle DLL o MSI dalla sezione download o installare l’API nella tua applicazione .NET tramite [NuGet](https ://www.nuget.org/packages/groupdocs.metadata).
PM> Install-Package GroupDocs.Metadata
Leggi i tag ID3 MP3 usando C# - ID3v1 e ID3v2
I passaggi seguenti mostrano come leggere i tag ID3v1 MP3 utilizzando C#.
- Carica il file MP3 utilizzando la classe Metadata.
- Recupera il pacchetto radice utilizzando il metodo GetRootPackage().
- Dalla radice, puoi recuperare ciascuno degli ID3v1.
Il codice sorgente C# seguente legge alcuni dei tag ID3v1 MP3 del file MP3.
// Leggi i tag ID3V1 del file MP3
using (Metadata metadata = new Metadata(Constants.MP3WithID3V1))
{
var root = metadata.GetRootPackage<MP3RootPackage>();
if (root.ID3V1 != null)
{
Console.WriteLine(root.ID3V1.Album);
Console.WriteLine(root.ID3V1.Artist);
Console.WriteLine(root.ID3V1.Title);
Console.WriteLine(root.ID3V1.Version);
Console.WriteLine(root.ID3V1.Comment);
}
}
Allo stesso modo, puoi estrarre i tag ID3v2. I passaggi seguenti mostrano come recuperare i tag ID3v2 MP3 utilizzando C#.
- Carica il file MP3 utilizzando la classe Metadata.
- Ottieni il pacchetto radice.
- Dalla radice, puoi recuperare tutti i tag ID3v2 come Band, Artist, Composers, ecc.
- Per le immagini allegate e i relativi dettagli, utilizzare le proprietà AttachedPictures.
L’esempio di codice sorgente C# seguente legge alcuni dei tag ID3v2 MP3 e i dettagli delle immagini allegate del file MP3.
// Leggi i tag ID3V2 del file MP3
using (Metadata metadata = new Metadata(Constants.MP3WithID3V2))
{
var root = metadata.GetRootPackage<MP3RootPackage>();
if (root.ID3V2 != null)
{
Console.WriteLine(root.ID3V2.Album);
Console.WriteLine(root.ID3V2.Artist);
Console.WriteLine(root.ID3V2.Band);
Console.WriteLine(root.ID3V2.Title);
Console.WriteLine(root.ID3V2.Composers);
Console.WriteLine(root.ID3V2.Copyright);
Console.WriteLine(root.ID3V2.Publisher);
Console.WriteLine(root.ID3V2.OriginalAlbum);
Console.WriteLine(root.ID3V2.MusicalKey);
if (root.ID3V2.AttachedPictures != null)
{
foreach (var attachedPicture in root.ID3V2.AttachedPictures)
{
Console.WriteLine(attachedPicture.AttachedPictureType);
Console.WriteLine(attachedPicture.MimeType);
Console.WriteLine(attachedPicture.Description);
}
}
}
}
Leggi i tag dei testi MP3 in C#
I seguenti passaggi guidano per leggere i tag Lyrics MP3 usando C#.
- Carica il file MP3 utilizzando la classe Metadata.
- Recupera il pacchetto radice.
- Dalla radice, puoi ottenere i tag dei testi e le sue proprietà come testi, artista, ecc.
Il seguente frammento di codice C# recupera i tag dei testi MP3 e alcune delle relative proprietà dal file MP3.
// Leggi i tag dei testi dei file MP3
using (Metadata metadata = new Metadata(Constants.MP3WithLyrics))
{
var root = metadata.GetRootPackage<MP3RootPackage>();
if (root.Lyrics3V2 != null)
{
Console.WriteLine(root.Lyrics3V2.Lyrics);
Console.WriteLine(root.Lyrics3V2.Album);
Console.WriteLine(root.Lyrics3V2.Artist);
Console.WriteLine(root.Lyrics3V2.Track);
// In alternativa, puoi scorrere un elenco completo di campi tag
foreach (var field in root.Lyrics3V2.ToList())
{
Console.WriteLine("{0} = {1}", field.ID, field.Data);
}
}
}
Leggi i tag MP3 APEv2 in C#
I passaggi seguenti mostrano come estrarre i tag APEv2 MP3 utilizzando C#.
- Carica il file MP3 utilizzando la classe Metadata.
- Recupera il pacchetto radice utilizzando il metodo GetRootPackage().
- Dalla radice, puoi recuperare tutti i tag APEv2 come Album, Genere, Copyright, Lingua, ecc.
Gli esempi di codice C# seguenti leggono alcune delle proprietà dei tag APE MP3 di un file MP3.
// Leggi i tag APE dei file MP3
using (Metadata metadata = new Metadata(Constants.MP3WithApe))
{
var root = metadata.GetRootPackage<MP3RootPackage>();
if (root.ApeV2 != null)
{
Console.WriteLine(root.ApeV2.Album);
Console.WriteLine(root.ApeV2.Title);
Console.WriteLine(root.ApeV2.Artist);
Console.WriteLine(root.ApeV2.Composer);
Console.WriteLine(root.ApeV2.Copyright);
Console.WriteLine(root.ApeV2.Genre);
Console.WriteLine(root.ApeV2.Language);
}
}
Ottieni una licenza API gratuita
Puoi ottenere una licenza temporanea gratuita per utilizzare l’API senza i limiti di valutazione.
Conclusione
Per concludere, abbiamo imparato a estrarre i tag di metadati dai file MP3 usando C#. Leggiamo i tag ID3v1, ID3v2, Lyrics e APE e le loro proprietà dai file MP3. Puoi saperne di più sull’API dalla documentazione e contattarci per domande tramite il forum .