2013-08-19 4 views
0

Я пытался написать программу, которая редактирует теги ID3 всех песен данного исполнителя, учитывая, что структура папок - это «musicFolder \ Artist \ Year Album \ ## Song». mp3" . Он будет редактировать теги Title, Artist, Album Artist, Album, Year и Track (номер песни), сохраняя значение Genre. Я пробовал до сих пор в python, но ни один из плагинов ID3 ​​не разработал. Я описал проблему, которая возникла при использовании мутагена здесь: Some mutagen tags don't work.Редактирование тегов ID3 ​​в языке программирования

Итак, мне нужен плагин на любом языке (и скажите мне версию обоим!), Который может сделать что-то выше, и я также хотел бы оценить пример того, как установить значение указанных тегов, а также (при необходимости) необходимые меры, чтобы убедиться, что тэг жанра нетронутый. Поскольку я знаю только python и java, если предоставленный язык не является одним из тех, которые я бы тоже оценил, если кто-то хотел бы помочь мне, преобразовывая псевдокод, указанный ниже (или что-то похожее) на фактический код.

import id3plugin 

artist = next_input() 
path = "E:\Musik\" + artist 

for folder in folder_list(path):       # folders as strings 
    path2 = path + "\" + folder 
    year = int(folder.substring(0,4))     # characters 0,1,2,3 of folder name 
    album = folder.substring(5,end))      # character 4 is space 

    for file in file_list(path2): 
     if file.substring(end-4,end) == ".mp3": continue # skip to the next item in the list 

     path3 = path2 + "\" + file 
     tracknumber = int(file.substring(0,2)) 
     songtitle = file.substring(3, end-4) 

     # if all previous tags are cleared when editing, save genre here... 

     id3plugin.set_title(path3, title) 
     id3plugin.set_artist(path3, artist) 
     id3plugin.set_albumartist(path3, artist) 
     id3plugin.set_album(path3, album) 
     id3plugin.set_year(path3, year) 
     id3plugin.set_track(path3, tracknumber) 

     # ... and set genre here 

ответ

1

Я успешно использовал Jaudiotagger в своих Java-плеерах.

Jaudiotagger - это библиотека аудиодетекций, используемая Jaikoz для пометки данных в аудиофайлах. В настоящее время он полностью поддерживает Mp3, Mp4 (звук Mp4, звук M4a и M4p) Ogg Vorbis, Flac и Wma, ограниченная поддержка форматов Wav и Real.

  • Поддержка MP3 ID3v1, ID3v11, ID3v2.2, v2.3 и v2.4 прозрачно
+1

Ваш ответ появился в качестве сообщений обзора Low. Пожалуйста, постарайтесь предоставить больше контекста. Ответы только по ссылкам не поощряются. – brasofilo

+0

Я загрузил jaudiotagger-2.2.0-20130321.142353-1-javadoc.jar (и переименовал его jaudiotagger). Это способ компиляции: «javac -classpath [path] \ jaudiotagger.jar id3tag.java» и как его импортировать в саму программу? Примеры кода, похоже, не охватывают это. – Blrp

+0

Файл, который вы хотите добавить в библиотеку, - jaudiotagger-2.2.0-20130321.162819-3.jar. какую IDE вы используете? в eclipse вы должны перейти в Project> Properties> Java Build Path и внутри вкладки «Библиотеки» вы должны «Добавить внешний JAR ...» –

Смежные вопросы