استانداردهای متادیتا متفاوتی وجود دارد که برای فایل های MP3 استفاده می شود. انواع مختلفی از داده ها را می توان با استفاده از استانداردهای مختلف ذخیره کرد. در این مقاله به نحوه خواندن تگ های MP3 مختلف با استفاده از C# می پردازیم. به طور خاص، ما یاد خواهیم گرفت که برچسب های فراداده ID3v1، ID3v2، Lyrics و APEv2 را از فایل های mp3 در برنامه .NET استخراج کنیم.
موضوعات زیر در زیر پوشش داده شده است:
- NET API برای مدیریت برچسب های MP3
- برچسب های MP3 ID3 - ID3v1 & ID3v2 را بخوانید
- برچسب های متن ترانه MP3 را دریافت کنید
- بازیابی برچسب های MP3 APEv2
NET API برای ویرایشگر برچسب های MP3
GroupDocs.Metadata .NET API را برای خودکارسازی مدیریت فراداده فرمتهای فایل مختلف ارائه میکند. -formats/) در برنامه های NET. API امکان خواندن، به روز رسانی، اضافه کردن، پاک کردن و حذف متادیتا را برای بسیاری از فرمت های فایل فراهم می کند. ما از این API برای مقابله با تگ های فراداده فایل های MP3 استفاده خواهیم کرد.
میتوانید نصبکننده DLL یا MSI را از بخش دانلودها دانلود کنید یا از طریق NuGet API را در برنامه داتنت خود نصب کنید.
PM> Install-Package GroupDocs.Metadata
برچسب های MP3 ID3 را با استفاده از C# - ID3v1 و ID3v2 بخوانید
مراحل زیر نحوه خواندن برچسب های MP3 ID3v1 را با استفاده از C# نشان می دهد.
- فایل MP3 را با استفاده از کلاس Metadata بارگیری کنید.
- بسته ریشه را با استفاده از روش GetRootPackage() بازیابی کنید.
- از ریشه، می توانید هر یک از ID3v1 را بازیابی کنید.
کد منبع C# زیر برخی از برچسب های MP3 ID3v1 فایل MP3 را می خواند.
// برچسب های ID3V1 فایل 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);
}
}
به طور مشابه، می توانید تگ های ID3v2 را استخراج کنید. مراحل زیر نحوه بازیابی تگ های MP3 ID3v2 را با استفاده از C# نشان می دهد.
- فایل MP3 را با استفاده از کلاس Metadata بارگیری کنید.
- بسته ریشه را دریافت کنید.
- از ریشه، می توانید تمام تگ های ID3v2 مانند Band، Artist، Composers و غیره را بازیابی کنید.
- برای تصاویر پیوست و جزئیات آنها، از ویژگی های AttachedPictures استفاده کنید.
مثال کد منبع C# زیر برخی از برچسبهای MP3 ID3v2 و جزئیات تصاویر پیوست فایل MP3 را میخواند.
// برچسب های ID3V2 فایل 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);
}
}
}
}
خواندن برچسب های متن MP3 در C#
راهنمای مراحل زیر برای خواندن برچسبهای متن MP3 با استفاده از سی شارپ.
- فایل MP3 را با استفاده از کلاس Metadata بارگیری کنید.
- بسته ریشه را بازیابی کنید.
- از ریشه، می توانید برچسب های متن و ویژگی های آن مانند Lyrics، artist و غیره را دریافت کنید.
قطعه کد C# زیر تگ های اشعار MP3 و برخی از ویژگی های آن را از فایل MP3 بازیابی می کند.
// برچسب های متن ترانه فایل 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);
// از طرف دیگر، میتوانید فهرست کاملی از فیلدهای برچسب را مرور کنید
foreach (var field in root.Lyrics3V2.ToList())
{
Console.WriteLine("{0} = {1}", field.ID, field.Data);
}
}
}
خواندن برچسب های MP3 APEv2 در C#
مراحل زیر نشان می دهد که چگونه می توانیم برچسب های MP3 APEv2 را با استفاده از C# استخراج کنیم.
- فایل MP3 را با استفاده از کلاس Metadata بارگیری کنید.
- بسته root را با استفاده از متد GetRootPackage() بازیابی کنید.
- از ریشه، می توانید تمام برچسب های APEv2 مانند آلبوم، ژانر، حق چاپ، زبان و غیره را بازیابی کنید.
نمونههای کد C# زیر برخی از ویژگیهای برچسبهای MP3 APE یک فایل MP3 را میخوانند.
// برچسب های APE فایل 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);
}
}
مجوز API رایگان دریافت کنید
میتوانید برای استفاده از API بدون محدودیت ارزیابی، یک مجوز موقت رایگان دریافت کنید.
نتیجه
برای نتیجه گیری، ما یاد گرفتیم که تگ های ابرداده را با استفاده از C# از فایل های MP3 استخراج کنیم. تگ های ID3v1، ID3v2، Lyrics و APE و ویژگی های آنها را از فایل های MP3 می خوانیم. میتوانید از documentation درباره API بیشتر بیاموزید و برای سؤالات از طریق forum با ما تماس بگیرید. .