Глава 5. Организация

Организация музыки упрощает поиск нужного. Amarok предоставляет несколько инструментов для этого.

Для начала, организуйте свою музыкальную коллекцию (как локальную, так и удалённую):

Менеджер обложек организует обложки альбомов, редактор тегов помогает Amarok категоризировать дорожки и перекодировать их при необходимости копирования на внешние устройства.

Коллекция

Amarok хранит музыку в коллекции.

Сканирование коллекции

Каждый раз, когда Amarok отображает информацию о дорожках и альбомах, он обращается к источнику.

Источником может служить мультимедийное устройство, служба Интернета или база данных.

Для дорожек, хранящихся на жёстком диске, Amarok использует базу данных для быстрого доступа к нужной информации.

Сначала эта информация должна быть импортирована в базу данных. Обычно это делается сканированием каталогов коллекции на наличие музыкальных файлов.

Этот процесс называется сканированием коллекции.

Для лучшей работы с Amarok желательно понимать, как он происходит.

Дополняющее сканирование / Обновление коллекции

Так называемое «дополняющее сканирование» проверяет каталоги на наличие обновлений.

Обычно это производится каждую минуту, но также возможно начать процесс сканирования, выбрав Обновить коллекцию... из меню.

Дополняющее сканирование сравнит время изменения каждого каталога коллекции с сохранённым.

Из этого следует:

  • Вы можете запустить процесс сканирования, изменив время модификации каталога (к примеру, с помощью команды touch из консоли).

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

  • Если каталоги коллекции находятся на медленном разделе жёсткого диска, процесс обновления может затянуться. Обычно время последнего изменения кэшируется операционной системой, но с большими коллекциями это невозможно. Может показаться, что этот процесс происходит непрерывно. С коллекциями больше, чем пять тысяч дорожек; если коллекции хранятся на сетевом жёстком диске или разделе NTFS, рекомендуется отключить параметр Следить за изменениями в каталогах.

Если удалённые дорожки всё ещё сохраняются в коллекции или нужно обновить обложки альбомов (простым «обновлением коллекции» они не меняются), тогда можно выбрать Просканировать заново в окне конфигурации.

Это действие не заботится о времени изменения файлов. Оно не удалит статистику и восстановит рейтинг и количество воспроизведений (если они хранятся внутри файла).

Ползунок прогресса / время сканирования

Ползунок прогресса покажет выполнение сканирования.

До 50% процентов процесс сканирует файловую систему и сохраняет результат в буфер.

После 50% процесс добавляет результаты в базу данных.

Второй шаг обычно гораздо быстрее первого; не удивляйтесь, если ползунок будет «скакать».

До 50% возможно отменить процесс сканирования, после это невозможно.

Время сканирования зависит от скорости жёсткого диска и других факторов.

Обычно, первое сканирование гораздо медленнее последующих, когда файлы уже кэшированы операционной системой.

Сканирование коллекции из десяти тысяч файлов займёт на современном компьютере примерно три минуты; из пятидесяти тысяч — около тринадцати минут.

Резервная копия коллекции

С параметрами по умолчанию, Amarok хранит все данные о коллекции в каталоге ~.kde/share/apps/amarok/mysqle/. Следует иногда делать резервную копию этого каталога, особенно, если выключена запись статистики в файлы.

Об уникальных идентификаторах

Amarok отслеживает файлы по уникальным идентификаторам, которые либо хранятся в файлах, либо составляются из информации дорожки.

Эти уникальные идентификаторы помогают Amarok определять дорожки, перемещённые в другое место и сохранять статистику (рейтинг, количество воспроизведений) о них.

Сейчас Amarok не импортирует дорожки с одинаковыми идентификаторами.

Поэтому одинаковые скопированные дорожки с разными именами показываются в Amarok только один раз.

В редких случаях (если вы пользовались предыдущими нестабильными версиями Amarok), разные дорожки могут получить один идентификатор.

Эту проблему можно заметить, запустив Amarok в отладочном режиме (из консоли с параметром --debug) во время сканирования.

Если вы используете бета-версию 2.4, может случится, что большая часть коллекции не может быть импортирована (это видно в консоли, по ошибкам sql). Для решения, просто обновите Amarok до финальной версии 2.4

Об альбомах

Сканер читает дорожки по-отдельности, а Amarok отображает их отсортированными по альбомам и компиляциям (альбом с дорожками разных исполнителей). Amarok не полагается на расположение файлов по каталогам, так как способов существует очень много.

Вместо этого сканер делает следующее:

  • Дорожки без информации об исполнителе альбома (или композитора) помещаются в компиляции.

  • Дорожки с флагом принадлежности к компиляции или исполнителем альбома, не равным «Различные исполнители», помещаются в альбомы.

  • Дорожки с флагом принадлежности к компиляции, равным 0, помещаются в компиляцию.

  • Альбомы, называющиеся «Live», «Greatest Hits» и т.д. также расцениваются как альбомы.

  • В конечном итоге, дорожки с оставшимися разными исполнителями помещаются либо в компиляцию, либо в альбом.

Это процесс несколько запутан. Обычно, просмотрев вывод сканер можно понять, почему дорожки отсортированы так, а не иначе.

В этом случае, попробуйте выполните в консоли: amarokcollectionscanner -r ~/Music/directory

Ищите дорожки с тегом «компиляции», но разными тегами «исполнитель» и «исполнитель альбома».

Вы можете удалить тег из файла mp3, выполнив следующую команду: id3v2 -r TCMP имя файла

Поиск в коллекции

Поиск в коллекции позволяет указывать сложные фильтры для выбора нужных дорожек из коллекции. Используйте строку поиска в панели источников медиа или щёлкните на кнопке Изменить фильтр справа от неё.

Строка поиска

При наборе текста в строке поиска Amarok ищет строку во всех доступных тегах, таких как исполнитель, альбом, название. Результаты поиска будут показаны на панели.

Для поиска по конкретному тегу, введите тег:значение в поле поиска. Операторы вроде > и < можно использовать для создания общих условий. Можно указать несколько условий, разделив их клавишей Пробел. Для времени можно использовать сокращения д=день, н=неделя, м=месяц, г=год.

Теги

Можно искать по следующим тегам:

  • Альбом

  • Исполнитель

  • Битрейт

  • Композитор

  • Исполнитель альбома

  • Жанр

  • Счётчик воспроизведения

  • Оценка

  • Частота дискретизации

  • Рейтинг

  • Название

  • Номер дорожки

  • Год

  • Ударов в минуту

Дополнительные критерии поиска

Кроме тегов, можно искать по:

  • Комментарию

  • Имени файла

  • Номеру диска

  • Длине

  • Размеру файла

  • Формату

  • Дате добавления в коллекцию

  • Дате первого проигрывания

  • Метке

  • Дате последнего изменения

Операторы

Для создания условий в численных тегах можно использовать следующие операторы:

  • Равно: :

  • Меньше: <

  • Больше: >

Примеры

При поиске без указания тега Amarok будет искать строку во всех важных текстовых тегах:

Более сложные шаблоны можно использовать для получения лучшего результата:

Окно «Изменить фильтр»

Для составления условия поиска перетащите значки условий вниз или перетаскивайте их для изменения порядка. Вы можете искать по тегам: Простой текст, Заголовок,

Исполнитель, Исполнитель альбома, Альбом, Жанр, Композитор, Комментарий, Имя файла,

Год, Номер дорожки, Номер диска, Число ударов в минуту,

Размер, Битрейт, Частота дискретизации, Размер файла,

Формат, Дата добавления в коллекцию, Рейтинг, Оценка,

Дата первого воспроизведения, Число воспроизведений, Метка, Дата последнего изменения.

Также можно добавить операторы ИЛИ, И.

Выберите критерий и нажмите Обратить условие для его инвертирования. Также можно выбрать И, ИЛИ для всех критериев поиска. Если вы выберете И, все критерии должны будут выполняться.

При выборе ИЛИ любые совпадения будут показаны.

Нажмите Сброс для удаления критериев.

Организация коллекции

Несмотря на то, что организация коллекции в Amarok — довольно простая задача, она будет производиться на настоящих файлах. Убедитесь, что сделали резервную копию перед началом.

Управление файлами на вашем жёстком диске производится в помощью окна Организация файлов Amarok. Здесь можно менять имена файлов и организовывать их. Для того, чтобы открыть это окно, щёлкните правой кнопкой мыши на значке Локальная коллекция в панели источников медиа и выберите Организация файлов.

Контекстное меню для открытия окна организации файлов

Контекстное меню для открытия окна организации файлов

Если этот пункт не появляется, то возможно включён режим

(без показа разделов). Для организации файлов его нужно отключить.

Внешний вид окна организации файлов

Организация производится с помощью следующего интерфейса:

Элементы

Элемент интерфейсаОписание

Папка коллекции

Папка коллекции по умолчанию. Несколько папок можно задать, щёлкнув НастройкаНастроить Amarok.

Панель свойств

Перетаскивайте значки отсюда для изменения схемы имени файлов. Доступно только в основном режиме.

Схемы имени файла

После создания схемы имени файлов, сохраните её, щёлкнув Сохранить как. Удалить схему можно кнопкой Удалить.

Заменить пробелы символом подчёркивания

Заменяет пробелы символом «_»

Игнорировать «The» в именах исполнителей

Имена исполнителей, начинающиеся на «The», станут оканчиваться на «, The ».

Включить ограничения VFAT для имён файлов

Заменять символы, которые несовместимы с файловыми системами MS-DOS или VFAT, на знаки нижнего подчёркивания. Рекомендуется включить этот параметр.

Использовать только символы ASCII для имён файлов

При включённом параметре все символы, не входящие в таблицу символов ASCII, будут заменяться на знаки нижнего подчёркивания. Не включайте этот параметр, если теги содержат символы не из ASCII (например, текст на русском языке). Рекомендуется оставить этот параметр выключенным.

Замена символов

Заменить выражение в строке Заменить на символы из строки на. Полезно, если в информации с CDDB есть опечатки.

Просмотр конечного имени

Показывает исходную схему имён файлов и то, как они будут выглядеть после применения изменений.

Заменять файлы с совпадающими именами

Без запроса заменять файлы с тем же именем.

Продвинутый режим

Текстовый режим панели свойств, позволяющий закодировать схему имён файлов. Включить его можно, нажав кнопку Расширенный.... Переключиться обратно можно, нажав Основной....

Заключите аргументы (например, номер диска) в скобки. Пример:

%artist%/%album%{/Диск %discnumber%}/%track% %title%

Заметьте: раньше переменные назывались %переменная, а с версии 2.4 — %переменная%.

Удалённые коллекции

Часто бывает полезным делиться файлами по сети, особенно, если вы хотите использовать их на других компьютерах. Это можно сделать разными способами:

Ampache

Amarok может проигрывать музыку с сервера Ampache. Если вы хотите установить сервер, читайте здесь для информации и инструкции по установке.

Клиент Ampache

Включить службу Ampache можно в меню НастройкаНастроить Amarok...Интернет-службы (до Amarok 2.4.1) или в менюНастройкаНастроить Amarok...Модули.

До версии 2.4.1: щёлкните на значок гаечного ключа для открытия окна конфигурации

До версии 2.4.1: щёлкните на значок гаечного ключа для открытия окна конфигурации

С версии 2.4.1: щёлкните на значок гаечного ключа для открытия окна конфигурации

С версии 2.4.1: щёлкните на значок гаечного ключа для открытия окна конфигурации

Укажите данные, настроенные на сервере:

Теперь служба Ampache появится в панели Источники медиаИнтернет.

Digital Audio Access Protocol (DAAP)

DAAP — протокол для общего доступа к файлам мультимедиа по сети. Он был впервые реализован в iTunes, но сейчас широко используется.

Клиент

Amarok автоматически показывает дорожки с сервера на панели источников медиа (в разделе Локальная музыка). Дополнительной конфигурации не требуется. Если коллекция не показывается, выйдите из режима показа без разделов, щёлкнув на его значке.

Сервер

В дистрибутивах, основанных на Debian (например, Ubuntu™) DAAP-сервер можно установить, выполнив в консоли:

sudo apt-get install mt-daapd

Это действие установит сервер DAAP Firefly. Настроить его можно через веб-интерфейс по адресу http://localhost:3689/index.html. Пароль по умолчанию: mt-daapd, имя пользователя пустое.

Samba

Samba — свободная реализация протокола SMB/CIFS, используемого для общего доступа к файлам и принтерам в сети. Большинство современных файловых менеджеров (например, Dolphin и Nautilus) поддерживают его.

Клиент

Для использования удалённой папки в Amarok, её нужно примонтировать. Для этого нужно установить пакет smbfs и выполнить команду

sudo mount -t cifs //host/share/mount-point/

После этого её можно использовать как локальную папку

Сервер

Самый простой путь — использования файлового менеджера. В дистрибутивах, основанных на Debian (например, Ubuntu™) расширение Dolphin для управления удалёнными каталогами можно установить, выполнив в консоли:

sudo apt-get install kdenetwork-filesharing

Откройте свойства папки в Dolphin и выберите вкладку Сделать общим.

Щёлкните Настроить общее использование файлов... для открытия окна конфигурации.

Пометьте пункт Расширенный режим, нажмите кнопку Доверенные пользователи и выберите вариант Разрешить всем пользователями создавать общие папки.

Затем вы можете добавить папку к общедоступным. Щёлкните Добавить... и опубликуйте её через Samba.

Теперь она должна быть доступна по сети.

Universal Plug and Play (UPnP)

UPnP — набор протоколов для общего доступа к мультимедийной информации по сети. Он поддерживается большим количеством устройств. Обычно такие устройства имеют маркировку DLNA.

В Amarok имеется встроенный клиент UPnP для проигрывания дорожек из сети. Когда удалённая папка найдена, она будет показана в разделе Локальная музыка.

UPnP зависит от поддержки сервера UPnP в KDE.

Внешняя база данных

Amarok версии 2.2 и выше поддерживает работу с внешней базой данных MySQL в качестве движка.

Установка сервера MySQL

Сначала нужно установить сервер MySQL. В дистрибутивах, основанных на Debian (например, Ubuntu), можно использовать команду:

sudo apt-get install mysql-server mysql-client

для его установки. Нужно будет установить пароль для учётной записи суперпользователя для базы данных. Для выполнения команд нужен будет пакет mysql-client, но он необязателен для работы Amarok.

Настройка базы данных

Подключитесь к локальной базе данных, выполнив:

mysql -u root -p

Нужно будет ввести пароль для пользователя root в MySQL. При успешном вводе появится строка приглашения

mysql>

Создайте нового пользователя amarokuser с паролем amarokpass, набрав:

CREATE USER 'amarokuser'@'localhost' IDENTIFIED BY 'amarokpass';

Amarok нужна своя база данных, которую можно создать так:

CREATE DATABASE amarokdb;

Дайте новому пользователю доступ к ней:

GRANT ALL ON amarokdb.* TO 'amarokuser'@'%' IDENTIFIED BY'amarokpass';

, где% — шаблон для разрешения подключения к базе данных всем хостам. Теперь наберите:

FLUSH PRIVILEGES;

для перезагрузки кэша MySQL. И наконец:

exit

для выхода из командной строки MySQL.

По умолчанию, доступ к серверу разрешён только с локального компьютера. Для конфигурирования этого параметра отредактируйте файл /etc/mysql/my.cnf и измените адрес в строке bind-address на тот, который слушает ваш сервер. Используйте адрес 0.0.0.0 для прослушивания на всех интерфейсах. После этого перезапустите сервер, выполнив:

sudo service mysql restart

Настройка клиента

Откройте окно конфигурации, выбрав в меню НастройкаНастроить Amarok...База данных. Включите флажок и введите информацию о пользователе.

Для применения изменений нужно перезапустить Amarok.

Миграция с MySQL Embedded на MySQL Server

Если вы хотите работать со статистикой, хранящейся в базе данных типа embedded MySQL, сделайте следующее:

Сначала запустите Amarok версии, большей чем 2.2 для обновления схемы базы данных.

Затем завершите активный процесс службы MySQL

sudo /etc/init.d/mysql stop

и запустите службу MySQL из папки ~/.kde4/share/apps/amarok (первым параметром должен быть --defaults-file):

/usr/sbin/mysqld --defaults-file=`pwd`/my.cnf --default-storage-engine=MyISAM --datadir=`pwd`/mysqle --socket=`pwd`/sock --skip-grant-tables

Параметр skip-grant-tables означает, что можно будет использовать любое имя пользователя и пароль для подключения к базе данных. Вместо имени хоста «localhost» используйте адрес 127.0.0.1 (причина в использовании сокетов UNIX®). Доступ на некоторых системах может быть ограничен с помощью apparmor или SELinux. Временно отключить защиту можно так:

sudo /etc/init.d/apparmor stop

Теперь запустите mysqldump с параметром -S для указания локального сокета. Это действие перепишет старую базу данных в файл SQL.

mysqldump -S sock amarok > amarok.mysql

теперь можно перезапустить службу MySQL и загрузить этот файл на сервер MySQL. Уже должны быть получены привилегии (строка с GRANT выше) и создана база данных Amarok («CREATE DATABASE amarok;»):

sudo /etc/init.d/mysql stop mysql -u amarokuser -p amarok < amarok.mysql

Примечание

Скорее всего, понадобится обновить коллекцию в Amarok после завершения.

Работа с медиаустройствами

Используйте Amarok для проигрывания музыки с устройств MTP, iPod или USB-накопителей.

Подключение медиаустройств

Подключите ваше устройство с помощью USB-кабеля. Аплет подключаемых устройств покажет его в списке. Щёлкните на значке Подключить для доступа к нему.

Проигрывание музыки с устройства

Подождите, пока устройство определится в Amarok. Пока оно не будет просканировано, надпись будет показывать 0 дорожек.

После сканирования Amarok покажет все дорожки, доступные на устройстве. Их можно переместить в список воспроизведения для прослушивания или скопировать/переместить в локальную коллекцию.

Управление музыкой

Элемент менюОписание

Добавить в список воспроизведения

Добавляет выбранные дорожки с устройства в текущий список воспроизведения Amarok.

Заменить список воспроизведения

Очищает текущий список воспроизведения Amarok и добавляет взамен выбранные дорожки.

Изменить информацию о дорожке

Открывает окно для изменения информации о дорожке.

Отключить устройство

Отключает устройство от компьютера.

Копировать в коллекцию

Копирует выбранные дорожки в локальную коллекцию или на любые другие подключённые устройства.

Переместить в коллекцию

Перемещает выбранные дорожки в локальную коллекцию или на любые другие подключённые устройства.

Удалить дорожки

Удаляет выбранные дорожки с устройства.