เครื่องมือบรรทัดคำสั่งสำหรับรายชื่อแท็ก ID3 ภายใต้ Linux


24

ฉันต้องการเขียนสคริปต์ที่จัดการแท็ก ID3 ของไฟล์ mp3 ฉันต้องการเครื่องมือที่อ่านแท็กและส่งออกเป็นรูปแบบในรูปแบบที่เครื่องอ่านได้ ตัวอย่างเช่นถ้าฉันต้องการให้มันส่งออกเฉพาะชื่อแล้วมันจะออกชื่อเรื่องไม่มีอะไรอื่น ฉันลองใช้เครื่องมือต่าง ๆ เช่นid3หรือeyeD3แต่สามารถใช้เพื่อเขียนแท็กหรือส่งออกในรูปแบบที่มนุษย์อ่านได้เท่านั้น แน่นอนว่าฉันสามารถกรองเอาท์พุทนั้นออกsedมาได้ แต่ดูเหมือนจะซับซ้อนเกินความจำเป็นสำหรับฉัน

คำตอบ:


30

คุณสามารถใช้exiftoolคำสั่งจากlibimage-exiftool-perlแพ็คเกจซึ่งช่วยให้คุณอ่าน (และเขียน) ข้อมูลเมตาจากไฟล์มัลติมีเดียรวมถึง mp3 มันสามารถส่งออกไปยังรูปแบบที่หลากหลายรวมถึงคีย์ - ค่า, json, xml และรูปแบบที่ผู้ใช้กำหนด คุณสามารถเลือกที่จะแสดงรายการแท็กที่ระบุเท่านั้น

% exiftool -json 09\ -\ \(Tom\ Waits\)\ -\ Walk\ Away.mp3
[{
  "SourceFile": "09 - (Tom Waits) - Walk Away.mp3",
  "ExifToolVersion": 7.82,
  "FileName": "09 - (Tom Waits) - Walk Away.mp3",
  "Directory": ".",
  "FileSize": "2.5 MB",
  "FileModifyDate": "2008:07:12 13:58:52+01:00",
  "FileType": "MP3",
  "MIMEType": "audio/mpeg",
  "MPEGAudioVersion": 1,
  "AudioLayer": 3,
  "AudioBitrate": 128000,
  "SampleRate": 44100,
  "ChannelMode": "Stereo",
  "MSStereo": "Off",
  "IntensityStereo": "Off",
  "Emphasis": "None",
  "ID3Size": 1678,
  "Title": "Walk Away",
  "Album": "Dead Man Walking",
  "Genre": "OST",
  "Track": 9,
  "Artist": "Tom Waits",
  "Year": "",
  "Comment": "",
  "Duration": "02:42 (approx)"
}]

+1 "พอร์ต sudo ติดตั้ง p5.16-image-exiftool" - ให้คุณไปสู่ ​​Mac ด้วย MacPorts ... เพียงแค่ "exiftool-5.16 / Volumes / MMED / เพลง / Esperanza \ Spalding / Esperanza / 02 \ I \ Know \ You \ Know.mp3 "และคุณจะได้รับข้อมูลเมตาทั้งหมดที่คายออกมา! ขอบคุณ!
mimoralea

+1 ฉันมีความต้องการแบบเดียวกัน แต่สำหรับเสียง FLAC ทำงานเหมือนจับใจ น่าเสียดายที่ชื่อโปรแกรมไม่ได้บอกใบ้ถึงความเป็นไปได้อย่างเต็มที่ ...

9

id3infoในid3libส่งออกแท็ก ID3 ในรูปแบบที่ง่ายต่อการแยกวิเคราะห์เครื่อง


1
หน้าคนพูดว่าต่อไปนี้: รองรับเฉพาะ ID3 รุ่น 1.0 และ 1.1
Calimo

5

ฉันจะมองเข้าไปในห้องสมุดติดแท็ก mutagenสำหรับงูใหญ่ซึ่งรวมถึงพื้นฐานเครื่องมือบรรทัดคำสั่งสคริปต์, mid3v2 แม้ว่าเอาต์พุตของmid3v2นั้นสามารถอ่านได้โดยมนุษย์เป็นหลัก--list-rawตัวเลือกอาจเหมาะสม:

$ mid3v2 --list-raw 09_Walk\ Away.mp3
Raw IDv2 tag info for 09_Walk Away.mp3:
TDRC(encoding=3, text=[u'1996'])
TIT2(encoding=3, text=[u'Walk Away'])
TRCK(encoding=3, text=[u'9'])
TPE1(encoding=3, text=[u'Tom Waits'])
TALB(encoding=3, text=[u'Dead Man Walking'])
TCON(encoding=3, text=[u'Soundtrack'])

หมายเหตุเครื่องมือนี้จะแสดงเฉพาะ ID3 แท็กแอตทริบิวต์ไม่เพิ่มเติมของไฟล์ MP3 เช่นexiftool แต่ถ้าคุณต้องการเพียงแท็กเฉพาะgrepง่าย ๆสำหรับ tagname จะคว้าสิ่งนั้นมาให้คุณ:

$ mid3v2 --list-raw 09_Walk\ Away.mp3 | grep TIT2
TIT2(encoding=3, text=[u'Walk Away'])

หากmid3v2ไม่เพียงพอสำหรับคุณและคุณพอใจกับ Python คุณสามารถสคริปต์เครื่องมือของคุณเองเพื่อเชื่อมต่อกับไลบรารี Mutagen และอ่านหรือจัดการแท็กโดยตรง

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.