Если вы заядлый слушатель музыки или у вас большая музыкальная коллекция, организация и классификация ваших треков становится критически важной. Теги MP3, также известные как метаданные, содержат ценную информацию о песне, такую как исполнитель, альбом, жанр и название трека. В этой статье блога мы рассмотрим различные методы извлечения тегов MP3 и их хранения в базе данных MySQL. Мы рассмотрим различные языки программирования и попутно предоставим примеры кода.
Метод 1: Python с библиотекой Mutagen
Python — универсальный язык с надежными библиотеками для обработки мультимедийных файлов. Одной из таких библиотек является Mutagen, которая позволяет нам легко извлекать теги MP3. Сначала убедитесь, что у вас установлен Mutagen, запустив pip install mutagen. Затем рассмотрим следующий фрагмент кода:
from mutagen.mp3 import MP3
def extract_tags_mp3(file_path):
audio = MP3(file_path)
artist = audio['artist'][0] if 'artist' in audio else "Unknown Artist"
title = audio['title'][0] if 'title' in audio else "Unknown Title"
album = audio['album'][0] if 'album' in audio else "Unknown Album"
# Extract other desired tags
# Store the extracted tags in MySQL
# Implement your MySQL connection and INSERT statement here
Метод 2: PHP с библиотекой getID3
Если вы предпочитаете PHP в качестве языка программирования, библиотека getID3 предоставляет отличные функциональные возможности для извлечения тегов MP3. Начните с установки библиотеки с помощью Composer (composer require james-heinrich/getid3). Вот пример получения тегов MP3 с помощью PHP:
require_once 'vendor/autoload.php';
use getID3;
$getID3 = new getID3;
$fileInformation = $getID3->analyze('path/to/mp3_file.mp3');
if (isset($fileInformation['tags']['id3v2'])) {
$artist = $fileInformation['tags']['id3v2']['artist'][0];
$title = $fileInformation['tags']['id3v2']['title'][0];
$album = $fileInformation['tags']['id3v2']['album'][0];
// Extract other desired tags
// Store the extracted tags in MySQL
// Implement your MySQL connection and INSERT statement here
}
Метод 3: командная строка с FFmpeg
ffmpeg -i path/to/mp3_file.mp3
Вывод будет включать в себя различную информацию, включая исполнителя, название, альбом и т. д. Вы можете передать вывод в текстовый файл или напрямую проанализировать его с помощью языка сценариев, например Python или PHP.
В этой статье мы рассмотрели несколько методов извлечения тегов MP3 и их хранения в базе данных MySQL. Независимо от того, предпочитаете ли вы Python, PHP или командную строку, эти подходы обеспечивают гибкость в зависимости от вашей среды разработки и требований. Организовав свою музыкальную коллекцию с помощью точных метаданных, вам будет проще искать треки и эффективно управлять ими.