Форум русскоязычного сообщества Ubuntu


Хотите сделать посильный вклад в развитие Ubuntu и русскоязычного сообщества?
Помогите нам с документацией!

Автор Тема: редактирование id'тегов скриптом ?  (Прочитано 1334 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн kostryukov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1588
  • everybody lies
    • Просмотр профиля
    • kostryukov.net
редактирование id'тегов скриптом ?
« : 31 Октября 2009, 22:10:20 »
в директории есть много mp3 файлов, нужно отредактировать теги
название mp3 брать из название mp3.
остальное (исполнитель, год, жанр, альбом) указать единожды

как это реализовать ?
у меня можно спросить=)

Оффлайн yuryzh

  • Новичок
  • *
  • Сообщений: 38
    • Просмотр профиля
Re: редактирование id'тегов скриптом ?
« Ответ #1 : 01 Ноября 2009, 00:18:15 »
можно посмотреть в сторону eyeD3 http://eyed3.nicfit.net/

Оффлайн kostryukov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1588
  • everybody lies
    • Просмотр профиля
    • kostryukov.net
Re: редактирование id'тегов скриптом ?
« Ответ #2 : 01 Ноября 2009, 00:25:14 »
можно конечно посмотреть, но как он решает мой вопрос ?
у меня можно спросить=)

Оффлайн yuryzh

  • Новичок
  • *
  • Сообщений: 38
    • Просмотр профиля
Re: редактирование id'тегов скриптом ?
« Ответ #3 : 01 Ноября 2009, 10:10:54 »
можно конечно посмотреть, но как он решает мой вопрос ?
С помощью этого класса самому написать маленький скриптик. Это если хочется в автоматическом режиме. Или можно руками с помощью EasyTAG - он умеет все ,что требуется, но надо мышкой тыкать.

Оффлайн kostryukov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1588
  • everybody lies
    • Просмотр профиля
    • kostryukov.net
Re: редактирование id'тегов скриптом ?
« Ответ #4 : 01 Ноября 2009, 12:06:40 »
 :2funny:

ничего руками мне не хочется, вопрос в том, как читать имена файлов в директории и передавать их этому "классу", с остальным то я разбирусь
у меня можно спросить=)

Оффлайн yuryzh

  • Новичок
  • *
  • Сообщений: 38
    • Просмотр профиля
Re: редактирование id'тегов скриптом ?
« Ответ #5 : 01 Ноября 2009, 12:54:35 »
Примерно так (не проверял, это просто набросок)
(Нажмите, чтобы показать/скрыть)

Оффлайн bektau

  • Участник
  • *
  • Сообщений: 140
  • US 9.04, US 9.10 , Lucid 10.04 (fix)
    • Просмотр профиля
Re: редактирование id'тегов скриптом ?
« Ответ #6 : 01 Ноября 2009, 13:06:51 »
попробуй в сторону ID3 Tags
Для PHP ID3 Tags
Там есть функции  чтения ID3 тэгов
Цитировать
Get all information stored in an ID3 ta
и изменения
Цитировать
Update information stored in an ID3 tag
информации.
Ну и стандартные функции работы с файловой системой в PHP.
« Последнее редактирование: 01 Ноября 2009, 13:09:53 от bektau »

Оффлайн yuryzh

  • Новичок
  • *
  • Сообщений: 38
    • Просмотр профиля
Re: редактирование id'тегов скриптом ?
« Ответ #7 : 01 Ноября 2009, 13:11:42 »
Да, с использованием этой библиотеки (eyeD3) написан скрипт tag2utf http://sourceforge.net/projects/tag2utf/ для конвертирования тэгов из виндовой кодировки в UTF, там тоже можно подсмотреть примеры работы с тэгами....

Оффлайн kostryukov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1588
  • everybody lies
    • Просмотр профиля
    • kostryukov.net
Re: редактирование id'тегов скриптом ?
« Ответ #8 : 01 Ноября 2009, 13:52:48 »
скрипт tag
#!/bin/bash

for file in $1
do

#Для mid3v2 запускать так:
#~/.tag "*.mp3" "Артист" "Альбом" "Жанр" "Год"
mid3v2 "$file" -a "$2" -t "$3" -A "$4" -g "$5" -y "$6";

#Для lltag запускать так:
#~/.tag "*.mp3" "Тип файла" "Артист" "Альбом" "Жанр" "Год"
#lltag "--$2" "$file" -a "$3" -t "$4" -A "$5" -g "$6" -d "$7";
done

Пользователь решил продолжить мысль 01 Ноября 2009, 11:56:08:
Спасибо yuryzh и bekatau, это все конечно интересно,
но ведь есть готовые решение, мне нужно было только считать имена файлов и передать на обработку

Пользователь решил продолжить мысль 01 Ноября 2009, 14:33:56:
если в именах файлов нет названия треков, но они извесны
можно записать их в файл
только в порядке 1,10,11,12 ... , 2, 3, 4, ...9

#!/bin/bash
for treck in `cat ~/файл_с_названиемя_треков`
do

mid3v2  -a "$2" -t "$treck" -A "$4" -g "$5" -y "$6"

done
« Последнее редактирование: 01 Ноября 2009, 14:33:56 от kostrukov »
у меня можно спросить=)

Оффлайн kostryukov

  • Автор темы
  • Старожил
  • *
  • Сообщений: 1588
  • everybody lies
    • Просмотр профиля
    • kostryukov.net
Re: редактирование id'тегов скриптом ?
« Ответ #9 : 05 Ноября 2009, 19:09:37 »
#!/bin/bash

#------------Help-----------------------
if [[ $1 == "--help" ]]
then
echo " "
echo " Справка по запуску скрипта "
echo " \$1 - Файл(ы) редактирования "
echo " \$2 - Исполнитель "
echo " \$3 - Альбом"
echo " \$4 - Жанр"
echo " \$5 - Дата выпуска альбома"
echo " \$6 - Файл с названиями треков"
echo " \$7 - Формат трека"
echo " "
echo " Пример запуска:"
echo " "
echo ":\$ ~/scripts/retag \"\$1\" \"\$2\" \"\$3\" \"\$4\" \"\$5\" \"\$6\" \"\$7\""
echo ':$ Путь/до/скрипта "Файл_редактирования" "Исполнитель" "Альбом" "Жанр" "Дата выпуска" "Файл со списком треков" "Формат трека"'
echo " "
echo " Файл со списком треков создается заранее, каждое наименование трека записывается с новой строки в двойных кавычках"
echo " "
else
#---------------------------------------

if [[ $6 == "" ]]
then
for file in $1
do
$value=`ls $file | sed -e 's/.mp3//'`
#echo "$file  -a "$2" -t $value -A $3 -g $4 -y $5";
mid3v2 "$file" -a "$2" -t "$value" -A "$3" -g "$4" -y "$5";
done
else

for file in $1
do
index=`expr $index + 1`
title=`cat -b $6 | grep $index`
title2=`expr substr "$title" 8 100`;

if [[ $title == ""  ]]
then
break
fi

#echo "$file  -a "$2" -t $title2 -A $3 -g $4 -y $5";

mid3v2 "$file" -a "$2" -t "$title2" -A "$3" -g "$4" -y "$5";
#lltag "--$7" "$file" -a "$3" -t "$title2" -A "$4" -g "$5" -d "$6";
done
fi
mid3iconv $1 -e UTF-8 -d
fi
« Последнее редактирование: 30 Ноября 2009, 16:32:37 от kostrukov »
у меня можно спросить=)

 

Страница сгенерирована за 0.018 секунд. Запросов: 22.