ישנם תקני מטא נתונים שונים המשמשים עם קבצי MP3. ניתן לאחסן סוגים שונים של נתונים באמצעות תקנים שונים. במאמר זה, נדון כיצד לקרוא תגיות MP3 שונות באמצעות C#. באופן ספציפי, נלמד לחלץ תגיות מטא-נתונים ID3v1, ID3v2, Lyrics ו-APEv2 מקבצי ה-mp3 בתוך יישום NET.
הנושאים הבאים מכוסים להלן:
NET API עבור MP3 Tags Editor
GroupDocs.Metadata מספק .NET API לאוטומטי של ניהול מטא נתונים של [פורמטים שונים של קבצים](https://docs.groupdocs.com/metadata/net/supported-document -formats/) בתוך יישומי NET. ה-API מאפשר לקרוא, לעדכן, להוסיף, לנקות ולהסיר את המטא נתונים עבור פורמטים רבים של קבצים. אנו נשתמש ב-API זה כדי להתמודד עם תגיות מטא נתונים של קבצי MP3.
אתה יכול להוריד את קובצי ה-DLL או ה-MSI מתקין מסעיף ההורדות או להתקין את ה-API באפליקציית NET שלך דרך NuGet.
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 כמו להקה, אמן, מלחינים וכו'.
- לתמונות המצורפות ולפרטיהן, השתמש במאפייני 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 Lyrics באמצעות C#.
- טען את קובץ ה-MP3 באמצעות המחלקה Metadata.
- אחזר את חבילת השורש.
- מהשורש, אתה יכול לקבל תגיות מילים ומאפיינים כמו מילים, אמן וכו'.
קטע הקוד הבא של 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.
- אחזר את חבילת השורש באמצעות שיטת 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 ללא מגבלות ההערכה.
סיכום
לסיום, למדנו לחלץ תגיות מטא נתונים מקבצי MP3 באמצעות C#. אנו קוראים את תגיות ID3v1, ID3v2, Lyrics ו-APE ואת המאפיינים שלהם מקבצי MP3. תוכל ללמוד עוד על ממשק ה-API מתוך התיעוד וליצור איתנו קשר לשאלות דרך הפורום.