גרסאות מטא נתונים מצורפות עם מסמכים בפורמטים שונים של קבצים. קובצי MP3 מכילים בדרך כלל תגיות מטא-נתונים של ID3. מאמר זה דן כיצד לקרוא תגי MP3 שונים ב-Java. בזה אחר זה נראה כיצד לחלץ תגיות מטא-נתונים של ID3 (IDEv1, ID3v2), מילים ו-APEv2 מקבצי mp3 באמצעות Java Metadata API.

הנושאים הבאים מכוסים להלן:

Java API עבור תגיות MP3 Metadata

GroupDocs.Metadata מצויד בממשקי API לאוטומטי של ניהול מטא נתונים של [פורמטים שונים של קבצים](https://docs.groupdocs.com/metadata/net/supported-document -פורמטים/) בתוך יישומים. ה-API של Java מאפשר לך לקרוא, לעדכן, להוסיף, לנקות ולהסיר את המטא נתונים עבור פורמטים רבים של קבצים בתוך אפליקציית Java. נשתמש בו כדי לעבוד עם תגיות מטא נתונים MP3.

הורד והגדר

קבל את ספריית המטא נתונים מהקטע הורדות.עבור יישום Java המבוסס על Maven, פשוט הוסף את התצורה הבאה של pom.xml. לאחר מכן, תוכל לנסות את הדוגמאות של מאמר זה, כמו גם את הדוגמאות הרבות נוספות הזמינות ב-GitHub.לפרטים, אתה יכול לבקר ב-API Reference.

<repository>
	<id>GroupDocsJavaAPI</id>
	<name>GroupDocs Java API</name>
	<url>http://repository.groupdocs.com/repo/</url>
</repository>
<dependency>
        <groupId>com.groupdocs</groupId>
        <artifactId>groupdocs-metadata</artifactId>
        <version>22.2</version> 
</dependency>

קרא תגיות MP3 ID3 ב-Java - ID3v1 & ID3v2

השלבים הבאים מראים כיצד לקרוא את תגי MP3 ID3v1 באמצעות Java.

  • טען את קובץ ה-MP3 באמצעות המחלקה Metadata.
  • אחזר את MP3RootPackage באמצעות שיטת getRootPackageGeneric()‎.
  • מחבילת השורש, אחזר כל אחד מהמאפיינים של ID3v1.

קוד המקור של Java הבא קורא חלק מתגי MP3 ID3v1 של קובץ ה-MP3.

// קרא תגיות ID3V1 של קובץ MP3
try (Metadata metadata = new Metadata("path/audio-ID3V1.mp3")) {
	MP3RootPackage root = metadata.getRootPackageGeneric();
	if (root.getID3V1() != null) {

		System.out.println(root.getID3V1().getAlbum());
		System.out.println(root.getID3V1().getArtist());
		System.out.println(root.getID3V1().getTitle());
		System.out.println(root.getID3V1().getVersion());
		System.out.println(root.getID3V1().getComment());
		// ...
	}
}

אתה יכול לחלץ את תגי ה-ID3v2 בצורה דומה. השלבים הבאים מראים כיצד לאחזר את תגי MP3 ID3v2 ב-Java.

  • טען את קובץ ה-MP3 באמצעות המחלקה Metadata.
  • קבל את חבילת השורש.
  • מהשורש, אתה יכול בקלות לאחזר את כל תגי ה-ID3v2 כמו אמן, מלחינים, מוציא לאור, כותרת וכו'.
  • ניתן לאחזר פרטים עבור תמונות מצורפות מהמאפיינים של מסגרות תמונה מצורפות.

דוגמה הבאה של קוד המקור של Java קוראת חלק מתגי MP3 ID3v2 ופרטי תמונות מצורפות של קובץ ה-MP3.

// קרא תגיות ID3V2 של קובץ MP3
try (Metadata metadata = new Metadata("path/audio-ID3V2.mp3")) {
    MP3RootPackage root = metadata.getRootPackageGeneric();
 
    if (root.getID3V2() != null) {
        System.out.println(root.getID3V2().getAlbum());
        System.out.println(root.getID3V2().getArtist());
        System.out.println(root.getID3V2().getBand());
        System.out.println(root.getID3V2().getTitle());
        System.out.println(root.getID3V2().getComposers());
        System.out.println(root.getID3V2().getCopyright());
        System.out.println(root.getID3V2().getPublisher());
        System.out.println(root.getID3V2().getOriginalAlbum());
        System.out.println(root.getID3V2().getMusicalKey());
 
        if (root.getID3V2().getAttachedPictures() != null) {
           for (ID3V2AttachedPictureFrame attachedPicture : root.getID3V2().getAttachedPictures()) {
                System.out.println(attachedPicture.getAttachedPictureType());
                System.out.println(attachedPicture.getMimeType());
                System.out.println(attachedPicture.getDescription()); 
            }
        }
    }
}

קרא תגיות מילות MP3 ב-Java

השלבים הבאים מנחים כיצד לקרוא את תגי מילות השיר MP3 ב-Java.

  • טען את קובץ ה-MP3 באמצעות המחלקה Metadata.
  • אחזר את חבילת השורש.
  • מהשורש, אתה יכול לקבל תגיות מילים ומאפיינים כמו מילים, אמן, רצועה וכו'.

קטע הקוד הבא של Java מאחזר את תגיות מילות השיר MP3 וכמה מהמאפיינים מקובץ ה-MP3.

// קרא תגיות מילות השיר של קובץ MP3
try (Metadata metadata = new Metadata("path/audio-Lyrics.mp3")) {
	MP3RootPackage root = metadata.getRootPackageGeneric();
	if (root.getLyrics3V2() != null) {
		System.out.println(root.getLyrics3V2().getLyrics());
		System.out.println(root.getLyrics3V2().getAlbum());
		System.out.println(root.getLyrics3V2().getArtist());
		System.out.println(root.getLyrics3V2().getTrack());
		// ...

    // באופן דומה, אתה יכול לעבור בין שדות התג
		for (LyricsField field : root.getLyrics3V2().toList()) {
			System.out.println(String.format("%s = %s", field.getID(), field.getData()));
		}
	}
}

קרא תגיות MP3 APEv2 ב-Java

השלבים הבאים מראים כיצד אנו יכולים לחלץ את תגי MP3 APEv2 בתוך יישום Java.

  • טען את קובץ ה-MP3 באמצעות המחלקה Metadata.
  • אחזר את חבילת השורש באמצעות שיטת getRootPackageGeneric()‎.
  • מהשורש, אתה יכול לאחזר את תגי APEv2 כמו אלבום, ז’אנר, זכויות יוצרים, שפה וכו'.

דוגמאות קוד ה-Java הבאות מקראות חלק מהמאפיינים של תגי MP3 APE של קובץ MP3.

// קרא תגי APE של קובץ MP3
try (Metadata metadata = new Metadata("path/audio-APE.mp3")) {
	MP3RootPackage root = metadata.getRootPackageGeneric();

	if (root.getApeV2() != null) {
		System.out.println(root.getApeV2().getAlbum());
		System.out.println(root.getApeV2().getTitle());
		System.out.println(root.getApeV2().getArtist());
		System.out.println(root.getApeV2().getComposer());
		System.out.println(root.getApeV2().getCopyright());
		System.out.println(root.getApeV2().getGenre());
		System.out.println(root.getApeV2().getLanguage());
		// ...
	}

קבל רישיון API בחינם

אתה יכול לקבל רישיון זמני בחינם להשתמש ב-API ללא מגבלות ההערכה.

סיכום

לסיכום, למדנו כיצד לחלץ תגיות מטא נתונים מקבצי MP3 ב-Java. אחד אחד, אנו קוראים את תגיות ID3v1, ID3v2, Lyrics ו-APE ואת המאפיינים שלהם מקבצי MP3. חשבו על בניית עורך תגי MP3 מקוון משלכם ומציג מטא נתונים בדיוק כמו אפליקציית מטא נתונים מקוונת.

למד עוד על ממשק ה-API מהתיעוד וצור איתנו קשר לשאלות דרך הפורום.

ראה גם