mp3 - estrai i tag mp3 dei suoi metadati

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 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 .

Guarda anche