mp3 - extrahujte jeho metadata mp3 tagy

U souborů MP3 se používají různé standardy metadat. Pomocí různých standardů lze ukládat různé typy dat. V tomto článku budeme diskutovat o tom, jak číst různé značky MP3 pomocí C#. Konkrétně se naučíme extrahovat tagy metadat ID3v1, ID3v2, Lyrics a APEv2 z mp3 souborů v rámci aplikace .NET.

Níže jsou uvedena následující témata:

.NET API pro editor značek MP3

GroupDocs.Metadata poskytuje rozhraní .NET API pro automatizaci správy metadat [různých formátů souborů](https://docs.groupdocs.com/metadata/net/supported-document -formáty/) v rámci aplikací .NET. API umožňuje číst, aktualizovat, přidávat, čistit a odstraňovat metadata pro mnoho formátů souborů. Toto API použijeme pro práci s metadatovými značkami souborů MP3.

Můžete si stáhnout DLL nebo instalační program MSI z části ke stažení nebo nainstalovat API do vaší aplikace .NET prostřednictvím NuGet.

PM> Install-Package GroupDocs.Metadata

Čtěte MP3 ID3 tagy pomocí C# - ID3v1 & ID3v2

Následující kroky ukazují, jak číst tagy MP3 ID3v1 pomocí C#.

  • Načtěte soubor MP3 pomocí třídy Metadata.
  • Načtěte kořenový balíček pomocí metody GetRootPackage().
  • Z kořenového adresáře můžete načíst každý z ID3v1.

Následující zdrojový kód C# čte některé značky MP3 ID3v1 souboru MP3.

// Přečtěte si tagy ID3V1 souboru 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);
    }
}

Podobně můžete extrahovat značky ID3v2. Následující kroky ukazují, jak načíst MP3 ID3v2 tagy pomocí C#.

  • Načtěte soubor MP3 pomocí třídy Metadata.
  • Získejte kořenový balíček.
  • Z kořenového adresáře můžete načíst všechny značky ID3v2, jako je kapela, umělec, skladatelé atd.
  • Pro přiložené obrázky a jejich podrobnosti použijte vlastnosti AttachedPictures.

Následující příklad zdrojového kódu C# čte některé tagy MP3 ID3v2 a připojené obrázky podrobností souboru MP3.

// Přečtěte si tagy ID3V2 souboru 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);
            }
        }
    }
}

Přečtěte si tagy MP3 Lyrics v C#

Následující kroky vedou ke čtení značek MP3 Lyrics pomocí C#.

  • Načtěte soubor MP3 pomocí třídy Metadata.
  • Načtěte kořenový balíček.
  • Z kořene můžete získat značky textů a jejich vlastnosti, jako je text, umělec atd.

Následující fragment kódu C# načte značky MP3 textů a některé jejich vlastnosti ze souboru MP3.

// Číst značky textů souborů 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);

        // Případně můžete procházet úplný seznam polí značek
        foreach (var field in root.Lyrics3V2.ToList())
        {
            Console.WriteLine("{0} = {1}", field.ID, field.Data);
        }
    }
}

Číst značky MP3 APEv2 v C#

Následující kroky ukazují, jak můžeme extrahovat značky MP3 APEv2 pomocí C#.

  • Načtěte soubor MP3 pomocí třídy Metadata.
  • Načtěte kořenový balíček pomocí metody GetRootPackage().
  • Z kořenového adresáře můžete načíst všechny značky APEv2, jako je album, žánr, autorská práva, jazyk atd.

Následující příklady kódu C# čtou některé vlastnosti MP3 APE tagů souboru MP3.

// Čtení značek APE souborů 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);
    }
}

Získejte bezplatnou licenci API

Můžete získat bezplatnou dočasnou licenci k používání API bez omezení hodnocení.

Závěr

Na závěr jsme se naučili extrahovat značky metadat ze souborů MP3 pomocí C#. Ze souborů MP3 načítáme tagy ID3v1, ID3v2, Lyrics a APE a jejich vlastnosti. Více o API se můžete dozvědět z dokumentace a v případě dotazů nás kontaktujte prostřednictvím fóra .

Viz také