Загрузите теги lastfm в комментарий mp3 или тег жанра

в течение долгого времени я мечтаю, чтобы иметь песни lastfm теги в моей музыкальной библиотеке, таким образом, я могу использовать их для быстрой генерации плей-листов.

Раньше был способ сделать это в amarok 1.4, но это никогда не было стабильно.

Чем существует lastfm/lastfmplus плагин MusicBrainz Picard. Это прекрасно частично, но мне не может удаться заставить его ТОЛЬКО искать теги lastfm и поместить их в comments/genre/whatever, но это всегда должно отмечать все. И это не особенно хорошо с ним, особенно с маленькими полосами, песнями без альбома и т.д.

Моя музыкальная библиотека скорее хорошо организована. Большинство тегов корректно. У меня также есть некоторые песни без альбома. И я не хочу, чтобы это нашло альбомы для тех песен, так как это испортило бы мое представление альбома. Таким образом, это не должно касаться полевого имени дорожки, номера дорожки, художника и альбома. Все, что я хочу, - то, что самые популярные теги lastfm входят в жанр или тег комментариев mp3, разделенного точками с запятой, запятыми или что бы то ни было.

Я думаю, что помню сценарий, который сделал это задание, но я не могу найти.

Кто-либо знает, похож ли там на что-нибудь это? Это было трудно для записи этого, например, как плагин Банши?

Спасибо

6
задан 26 December 2013 в 16:31

3 ответа

Я приготовил один сценарий Python быстро. Можно рассмотреть его здесь: http://db.tt/yGa14ZA или загрузка отсюда: http://db.tt/Rnkhpod

Поскольку я понимаю, что Ваша библиотека находится в формате MP3, таким образом, я использовал теггер ID3. Сценарий выбирает главные теги Last.fm и помещает их в ТЕГ КОММЕНТАРИЯ.
Если Вы спрашиваете меня, хотя "TopTags" более значимы затем "TrackTags", они могут состоять много мусора

Сценарий пользуется Стандартом Библиотека Python, за исключением модуля, который пишет, теги - eyeD3 (sudo склонный - получают python-eyed3 установки),

Использование в качестве примера (анализируют все файлы в текущей папке):

$ for f in *.mp3 ; do python lastfm_top-tags.py "$f" ; done

Подобная строка удара может проверить через все подпапки также.

Надежда это полезно :)

5
ответ дан 23 November 2019 в 07:41

Сценарий удара, отмеченный выше, добивается цели для меня - но как я использовал бы его для автоматического прохождения через моих подкаталогов рекурсивно? Мои подкаталоги и файлы также имеют пробелы в них - поэтому, как я написал бы сценарий его, когда у меня есть пробелы в именах файлов?

Я искал вокруг и перенес его с этим:

current_directory=$(pwd)
mp3_files=$(find "${current_directory}" -type f -iname "*.mp3")
# Need to change IFS or files with filenames containing spaces will not
# be handled correctly by for loop
IFS=$'\n' 
for mp3_file in ${mp3_files}; do 
   python /home/bruce/lastfm_top-tags.py "$f" ; 
done

Но я думаю, что это не вполне это.

2
ответ дан 23 November 2019 в 07:41

Сделайте исполняемый файл сценария и выполните его как это:

#!/bin/bash

SAVEIFS=$IFS
IFS=$(echo -en "\n\b")

for f in $(find ./ -type f -iname "*.mp3")
do
    lastfm_top-tags.py
    # or use this : python $HOME/bin/lastfm_top-tags.py "$f" ;
done

IFS=$SAVEIFS
1
ответ дан 23 November 2019 в 07:41

Другие вопросы по тегам:

Похожие вопросы: