2012-04-25 21 views
5

Có nhiều công cụ dòng lệnh khác nhau có sẵn để chỉnh sửa siêu dữ liệu của tệp âm thanh. Nhưng không ai trong số họ có thể chỉnh sửa thẻ "Album nghệ sĩ" của tệp âm thanh. Có bất kỳ công cụ dòng lệnh hoặc mô-đun perl để làm như vậy? Cảm ơnLàm cách nào để đặt "Album Artist" của một bài hát theo chương trình hoặc thông qua dòng lệnh (linux)

+1

Bạn đang cập nhật loại thẻ nào? ID3? Tablib có thể viết cho nhiều người. – Brad

+0

Có, đó là ID3V2 (ID3v2.3). Thẻ thứ ba được đề cập ở đây - http://help.mp3tag.de/main_tags.html. – mac

+0

Tìm thấy câu trả lời ở đây - http://stackoverflow.com/questions/5922622/whats-this-album-artist-tag-itunes-uses-any-way-to-set-it-using-java – mac

Trả lời

3

MP3 :: Hỗ trợ thẻ.

#!/usr/bin/perl 

use MP3::Tag; 

$mp3 = MP3::Tag->new($filename); 
$mp3->new_tag("ID3v2"); 
$mp3->{ID3v2}->add_frame("TALB", "Album title"); 
$mp3->{ID3v2}->add_frame("TPE2", "Album artist"); 
$mp3->{ID3v2}->write_tag; 
$mp3->close(); 

hoặc

#!/usr/bin/perl 

use MP3::Tag; 

$mp3 = MP3::Tag->new($filename); 
$mp3->select_id3v2_frame_by_descr('TPE2', 'album artist'); # Edit in memory 
$mp3->update_tags(); # commit 
$mp3->close(); 
+1

Chỉ để biết thông tin người dùng mới - Mã đầu tiên sẽ tạo thẻ ID3V2 mới (vì vậy nó có thể xóa thẻ trước đó trong tệp) và mã thứ hai sẽ chỉ cập nhật khung của thẻ ID3V2 hiện có. – mac

2

mid3v2 đi kèm với các thư viện mutagen và là công cụ dòng lệnh tốt nhất cho mục đích này mà tôi biết. Khi được gọi với đối số -f, thẻ TPE2 được liệt kê là được hỗ trợ.

+0

Cảm ơn. Nhưng tiếc là tôi chỉ có thể đánh dấu một câu trả lời :) – mac

Các vấn đề liên quan