Розділ 7. Інше

Зміст

Смужка настрою
Список потрібних компонентів
Користування
Встановлення
Скрипт створення файлів смужки настрою
Вирішення проблем
Підтримувані типи файлів
Знімки вікон
Вирівнювання гучності
Чи використовується вирівнювання гучності?
Перегляд даних щодо вирівнювання гучності
Вилучення даних щодо вирівнювання гучності
Amarok на інших платформах
Amarok у стільничних середовищах, відмінних від KDE
Amarok у Windows
Amarok у Mac® OS X
Вирішення типових проблем
Проблеми під час встановлення
Проблеми із запуском
Проблеми зі скануванням та впорядкуванням файлів
Проблеми з відтворенням файлів
Проблеми зі збірками на iPod тощо
Аварійні завершення роботи і вади
Поширені запитання
Для чого призначено Amarok?
У чому полягають відмінності між Amarok 2 і попередніми версіями програми?
Встановлення
Типове користування
Питання щодо списку відтворення
Питання, пов’язані з відтворенням даних
Питання щодо збірок
Загальні питання
Вирішення проблем
Питання щодо розробки

Теми, які не було висвітлено у попередніх розділах, зокрема теми, що стосуються смужки настрою, роботи Amarok на інших програмних платформах, усування вад, типових проблем та поширених питань:

Смужка настрою

За допомогою смужки настрою програма показує «настрій» композиції, за яким ви можете визначити потрібний вам фрагмент.

Для використання у Amarok результатів аналізу музичних даних у форматі смужок настрою вам потрібна буде програма Moodbar (нижче наведено настанови зі збирання та встановлення потрібних пакунків).

Для роботи пакунка Moodbar слід встановити GStreamer та різноманітні додати до цієї бібліотеки, відповідно до типів файлів, які слід проаналізувати (див. розділ Підтримувані типи файлів). Для створення файлів .mood не потрібен пакунок phonon-backend-gstreamer.

У новій реалізації смужки настрою передбачено дві частини: пакунок Moodbar, у якому міститься окрема програма, яка на основі даних файла композиції створює файл .mood, та частина у коді Amarok, яка запускає цей виконуваний файл і показує смужку настрою. Пакунок Moodbar залежить від пакунків бібліотеки GStreamer. Без пакунка Moodbar Amarok не зможе створювати зображення смужок настрою для ваших композицій.

Крім того, ви можете скористатися новим скриптом, який створити файли смужок настрою для композицій у списку відтворення Amarok. Для роботи з цим скриптом потрібен лише Amarok, але скрипт створює файли .mood лише на час відтворення композицій зі списку відтворення.

Роботу Смужки настрою засновано на праці Гевіна Вуда (Gavin Wood) та Саймона О’Кіфа (Simon O'Keefe), якими було розроблено алгоритми. З роботою цих двох вчених можна ознайомитися за цією адресою.

Список потрібних компонентів

  • Виконуваний файл moodbar у одному з каталогів, описаних змінною PATH (ви можете перевірити його доступність командою which moodbar, відданою з консолі). Не забудьте налаштувати пакунок moodbar належним параметром path. Приклад команд збирання і встановлення: ./autogen.sh --prefix=`pkg-config --variable=prefix gstreamer-1.0` && make && sudo make install

  • Бібліотека GStreamer 1.0 та додатки для обробки даних у форматах файлів, які має аналізувати Moodbar. (Застаріла версія для GStreamer 0.10 усе ще доступна у деяких дистрибутивах.)

  • Бібліотека Fastest Fourier Transform In The West (fftw.org) FFTW версії 3.0 або новішої (версія з принаймні десятковою точністю після коми — libfftw3f). Якщо на вашій програмній платформі немає такої бібліотеки або вам потрібно зібрати власну версію, не забудьте налаштувати збирання FFTW з відповідним параметром: ./configure --enable-single

  • Версія Amarok з пунктом Показувати смужку настрою у розділі Загальне вікна налаштувань. Це означає, що вам потрібна версія 1.4.4 або новіша у гілці 1.4 або версія 2.2.2 або новіша у гілці 2.x.

Примітка

У системах з автоматичним керуванням пакунками додатки GStreamer та FFTW буде встановлено разом з пакунком Moodbar, якщо такий доступний. Наведені тут дані призначено для тих, хто хоче або кому потрібно зібрати і встановити пакунки вручну, або тих користувачів, для дистрибутивів яких ще немає сучасних настанов або сховища яких не містять сучасної версії пакунка.

Користування

У поточній версії файли .mood доведеться створювати вручну, у Amarok немає засобів для автоматичної створення цих файлів. Для того, щоб зробити це для всіх композицій у збірці, скористайтеся скриптом створення файлів смужки настрою, описаним нижче.

Щоб увімкнути показ смужок настрою у вікні Amarok, скористайтеся вікном налаштування програми: ПараметриНалаштувати AmarokЗагальнеПоказувати смужку настрою на повзунку поступу. Після цього смужки настрою мають з’явитися на панелі поступу і на панелі списку відтворення. Крім того, з’явиться поле смужки настрою, яке ви зможете використати у ваших компонуваннях.

Встановлення

Отримання кодів

Найсвіжіший випуск: moodbar-0.1.4.tar.gz — пакунок з кодом Moodbar. У ньому міститься програма Moodbar (програма, яка створює файли .mood на основі даних з музичних файлів) та додаток GStreamer, який виконує допоміжні завдання. Для роботи пакунка Moodbar потрібна бібліотека GStreamer версії 1.0.*, а також версія 0.10.* різноманітних додатків. Переконайтеся, що пакунок Moodbar встановлено до одного каталогу з пакунком GStreamer, — виконайте настанови з розділу щодо резюме вимог. Версія 0.1.4 є відгалуженням початкового коду 0.1.2, оновленим для використання GStreamer 1.0. У мережі більше немає надійних джерел застарілого коду 0.1.2, але у деяких дистрибутивах усе ще є пакунки для цієї версії.

Якщо вами буде виявлено якісь вади, будь ласка, повідомте про них на сайті bugs.kde.org.

Пакунки для Debian

Примітка

У цьому розділі наведено застарілі настанови щодо GStreamer 0.10, засновані на версії moodbar 0.1.2. Вони, можливо, є застарілими для вашої системи.

Пакунок Moodbar тепер можна встановити зі сховища пакунків нестабільної версії Debian. Для встановлення віддайте команду apt-get install moodbar. Ймовірно, вам також доведеться встановити пакунки gstreamer0.10-plugins-ugly, gstreamer0.10-plugins-good і gstreamer0.10-plugins-bad для забезпечення підтримки форматів даних.

Пакунки для Kubuntu і Ubuntu

Примітка

У цьому розділі наведено застарілі настанови щодо GStreamer 0.10, засновані на версії moodbar 0.1.2. Вони, можливо, є застарілими для вашої системи.

Пакунок Moodbar можна встановити з офіційного сховища пакунків: просто увімкніть розділ universe (типово цей розділ увімкнено). Встановіть пакунок «moodbar» за допомогою вашої улюбленої програми для керування пакунками (Kpackagekit, Aptitude, Adept, Synaptic). Вам також варто встановити пакунки gstreamer0.10-plugins-ugly, gstreamer0.10-plugins-good та gstreamer0.10-plugins-bad для уможливлення підтримки відповідних форматів.

Крім того, встановити потрібні пакунки можна копіюванням вказаного нижче посилання до рядка адреси Firefox або Konqueror з наступним натисканням Enter.

apt://moodbar,gstreamer0.10-plugins-ugly,gstreamer0.10-plugins-good,gstreamer0.10-plugins-bad?section=universe?refresh=yep

Ebuild-и Gentoo

Примітка

У цьому розділі наведено застарілі настанови щодо GStreamer 0.10, засновані на версії moodbar 0.1.2. Вони, можливо, є застарілими для вашої системи.

Moodbar можна встановити з Portage: просто віддайте команду emerge moodbar. Користуватися неофіційними ebuild більше немає потреби.

Збірки RPM

Примітка

У цьому розділі наведено застарілі настанови щодо GStreamer 0.10, засновані на версії moodbar 0.1.2. Вони, можливо, є застарілими для вашої системи

Якщо ви користуєтеся дистрибутивом з пакунками rpm, ви можете зібрати пакунок .rpm за допомогою команди «rpmbuild» виконаної для найсвіжішої версії

gstreamer-plugins-moodbar.spec. Крім того, скоро можна буде скористатися бінарним пакунком для дистрибутива PLD-linux.

Fedora

Примітка

У цьому розділі наведено застарілі настанови щодо GStreamer 0.10, засновані на версії moodbar 0.1.2. Вони, можливо, є застарілими для вашої системи.

У Fedora 7 і пізніших версіях (аж до 16 на час написання цього підручника) Moodbar (смужку настрою) можна встановити за допомогою типових сховищ пакунків. Скористайтеся для цього графічним інтерфейсом PackageKit або такою командою yum:

yum install moodbar

Пакунки для openSUSE

Версія для GStreamer 1.0, 0.1.4, доступна у сховищі KDE:Extra для openSUSE Leap 42.3 та новіших версій. Попередньою версією для GStreamer 0.10, 0.1.2, також можна скористатися за допомогою основного сховища пакунків для деяких версій openSUSE.

Докладніше про те, як додавати сховища, можна дізнатися з вікі openSUSE.

Встановлення у одне клацання для openSUSE (просто виберіть вашу версію і система зробить решту за вас):

Пакунки Mandriva

Примітка

У цьому розділі наведено застарілі настанови щодо GStreamer 0.10, засновані на версії moodbar 0.1.2. Вони, можливо, є застарілими для вашої системи.

Спочатку вам слід додати сховища PLF. Отже, відвідайте easyurpmi.zarb.org і додайте ці сховища до вашого списку сховищ.

Потім просто встановіть такі пакунки:

  • gstreamer0.10-moodbar

  • gstreamer0.10-plugins-ugly

  • gstreamer0.10-plugins-good

  • gstreamer0.10-plugins-bad

Arch Linux®

Примітка

У цьому розділі наведено застарілі настанови щодо GStreamer 0.10, засновані на версії moodbar 0.1.2. Вони, можливо, є застарілими для вашої системи.

Передбачено PKGBUILD для Moodbar, який можна отримати зі Arch User Repository (AUR) (сховища, створеного користувачами Arch) за цією адресою.

Докладніше про AUR та роботу з PKGBUILD можна дізнатися з настанов користувача AUR.

FreeBSD

Примітка

У цьому розділі наведено застарілі настанови щодо GStreamer 0.10, засновані на версії moodbar 0.1.2. Вони, можливо, є застарілими для вашої системи.

Створено порт, який можна отримати тут.

Щоб встановити порт, виконайте таку команду: cd /usr/ports/audio/gstreamer-plugins-moodbar/ && make install clean

Щоб додати пакунок, виконайте таку команду: pkg_add -r gstreamer-plugins-moodbar

Скрипт створення файлів смужки настрою

Нижче наведено простий скрипт bash, призначений для створення файлів .mood для всієї вашої збірки. Він додає файли mood для всіх файлів з відповідними суфіксами назв у поточній теці і всіх її підтеках, отже його краще запускати з кореневої теки каталогу з вашою музикою.

#!/bin/bash
 DIR=${1:-.}
 LAST=~/.moodbar-lastreadsong
 C_RET=0
 control_c()        # виконати, якщо користувач натисне Ctrl-C
 {
   echo "" > "$LAST"
   echo "Завершуємо роботу..."
   exit
 }
 if [ -e "$LAST" ]; then
   read filetodelete < "$LAST"
   rm "$filetodelete" "$LAST"
 fi
 exec 9< <(find "$DIR" -type f -regextype posix-awk -iregex '.*\.(mp3|ogg|flac|wma)') # ви можете додати m4a і mp4
 while read i
 do
   TEMP="${i%.*}.mood"
   OUTF=`echo "$TEMP" | sed 's#\(.*\)/\([^,]*\)#\1/.\2#'`
   trap 'control_c "$OUTF"' INT
   if [ ! -e "$OUTF" ]
     moodbar -o "$OUTF" "$i"
   fi
 done <&9
 exec 9<&-
 exit $C_RET

Скопіюйте і вставте наведений вище текст до файла з назвою moodbar.sh у каталозі з вашою музикою і віддайте такі команди:

cd /шлях/до/музики bash moodbar.sh

Якщо попередні поради не працюють, спробуйте таку команду:

chmod +x moodbar.sh ./moodbar.sh

Обробка великих збірок може бути дуже тривалою! Зауважте, що смужки настрою не буде показано у вікні Amarok, доки Amarok не виконає повторне сканування збірки. Створені файли mood будуть прихованими (тобто назви цих файлів починатимуться з крапки). Вам слід пам’ятати про це, якщо раптом вам здасться, що файли кудись зникли.

На основі попереднього скрипту, альтернативний варіант для багатоядерних процесорів:

#!/bin/bash
 NUMCPU="$(grep ^processor /proc/cpuinfo | wc -l)"
 find . -type f -regextype posix-awk -iregex '.*\.(mp3|ogg|flac|wma)' | while read i ; do
        while [ `jobs -p | wc -l` -ge $NUMCPU ] ; do
                sleep 0.1
        done
        TEMP="${i%.*}.mood"
        OUTF=`echo "$TEMP" | sed 's#\(.*\)/\([^,]*\)#\1/.\2#'`
        if [ ! -e "$OUTF" ] ; then
                moodbar -o "$OUTF" "$i" &
        fi
 done

Вирішення проблем

  • Якщо під час запуску програми Moodbar ви отримуєте повідомлення щодо помилок каналу передавання даних (bus error), це майже завжди означає, що програма не може декодувати (або знайти) ваш файл. Зверніться до списку підтримуваних типів файлів, щоб визначитися з тим, які додатки GStreamer слід встановити. Ви також можете спробувати скористатися наведеною нижче командою, щоб перевірити, чи може GStreamer декодувати ваш файл: gst-launch-1.0 filesrc location=[file] ! decodebin ! fakesink

  • Якщо для декодування файлів MP3 ви використовуєте додаток ffmpeg, ви можете отримувати незрозумілі повідомлення про помилки, пов’язані з каналом передавання даних (bus). Вирішенням є відмова від використання додатка ffmpeg, оскільки у ньому дуже багато вад, — скористайтеся краще додатком mad.

  • Якщо виконуваний файл Смужки настрою повідомляє про те, що не може знайти елемента, тобто показує щось таке:

    Could not create element of type fftwspectrum, please install it.

    — це зазвичай означає, що у вашій системі або не встановлено потрібних додатків (список додатків можна знайти тут), або пакунок Moodbar встановлено не до того самого каталогу, що бібліотеку GStreamer. Якщо файли libmoodbar.so і libgstdecodebin.so зберігаються не у одному каталозі, Moodbar встановлено з іншим префіксом, ніж GStreamer. Будь ласка, ознайомтеся з файлом INSTALL, щоб дізнатися більше про те, як налаштувати збирання moodbar належним чином. Крім того, якщо ви маєте певний досвід у користуванні системою, простіше змінити значення змінної середовища GST_PLUGIN_PATH.

  • Якщо ви не можете розібратися, чому Moodbar не працює, взагалі або не може обробити якийсь з файлів, віддайте наведену нижче команду, де [файл] — назва відповідного музичного файла: moodbar -o test.mood [файл] Щоб створити тестове зображення, можете скористатися такою командою: gst-launch-1.0 filesrc location=[файл] ! decodebin ! audioconvert ! fftwspectrum ! moodbar height=50 max-width=300 ! pngenc ! filesink location=mood.png

  • Якщо у вашій системі встановлено декілька версій GStreamer, переконайтеся, що встановлено всі потрібні додати до версії 1.0.* — програми з комплекту однієї з версій не можуть з додатками іншої версії.

Підтримувані типи файлів

Для уможливлення аналізу ваших файлів за допомогою Moodbar вам слід буде встановити різноманітні додатки Gstreamer. Нижче наведено список додатків, які слід встановити. Не забудьте, що слід встановити саме версії 1.0.* кожного з цих додатків:

Тип файлівПотрібний додатокЗауваження

Всі

gstreamer-1.0.*, gst-plugins-base, gst-plugins-good

 

mp3

gst-plugins-mad (у gst-plugins-ugly)

Не використовуйте додаток ffmpeg для відтворення mp3 (можуть виникнути проблеми)

ogg

gst-plugins-vorbis, gst-plugins-ogg

 

flac

gst-plugins-flac

 

mp4

gst-plugins-faad, gst-plugins-bad

 

musepack

gst-plugins-musepack

 

wma

gst-plugins-ffmpeg

 

Знімки вікон

Смужка настрою на панелі поступу у Amarok 2

Смужка настрою на панелі поступу у Amarok 2