- Подписка на печатную версию:
- Подписка на электронную версию:
- Подшивки старых номеров журнала (печатные версии)
LXF129:Subsonic
Материал из Linuxformat.
Содержание |
Subsonic Делитесь музыкой и передавайте ее
- Слушайте свою музыку, где душе угодно. Шашанк Шарма научит применять свободный транслятор медиа на базе Web.
Музыка, как говорится, язык души. Или – менее пафосно – мы любим музыку. Независимо от предпочитаемого жанра, большинство из нас охотно слушает альбомы или радиопередачи. И поскольку мы готовы внимать любимой музыке везде, мы частенько дублируем имеющиеся композиции на разных компьютерах.
В молодости я получил хороший урок от моего дяди. Он всегда покупал свои любимые альбомы в двух экземплярах: один – чтобы слушать в машине, другой – для проигрывания у себя в спальне. Зачем? Чтобы милые сердцу песни звучали, где ему хочется, без перетаскивания кассет с места на место. Давно это было, а я все еще копирую свои треки на каждый из моих компьютеров и на все виртуальные машины, чтобы слушать свою музыку, на чем бы я ни работал. Но – довольно!
Трансляцию музыки обеспечит Subsonic – сервер, основанный на Java. Если вы подключены к Интернету, все, что вам потребуется – это браузер с Flash для воспроизведения любимых мелодий на любой машине в сети. На перечисление всех имеющихся функций здесь не хватит места, но вам будет приятно узнать, что Subsonic умеет транслировать сразу на несколько пользователей и поддерживает MP3, AAC и OGG. И, что важнее, благодаря модулям транскодирования Subsonic выполняет конвертацию в режиме реального времени, что дает возможность передавать аудиопотоки различных форматов. Все это дополняется понятным и элегантным web-интерфейсом с настраиваемым внешним видом.
Sun Java 5 или более новой версии, которая присутствует в репозиториях большинства дистрибутивов – единственное требование Subsonic. Установив соответствующий JRE, скачайте последний релиз файла subsonic-3.9‑standalone.tar.gz с сайта проекта. Самостоятельную версию установить проще всего, потому что она поставляется со встроенным сервером Jetty, помогающим транслировать потоки вашей музыки.
После извлечения архива в каталог /var, откройте скрипт subsonic.sh в любом текстовом редакторе. Перед запуском вашего медиа-сервера следует указать папку с музыкой, порт Subsonic и другие важные параметры настройки.
В дополнение к домашнему каталогу Subsonic, порту и адресу хоста, задайте также полный путь к вашей музыке и плей-листам (спискам воспроизведения). Не забудьте сохранить файл по завершении. Команда ./subsonic.sh теперь запустит сервер Subsonic, и вы получите к нему доступ, указав в браузере http://localhost:8080.
Итак, приступим
Если вы предпочитаете индивидуальную настройку Subsonic, скачайте файл subsonic-3.8‑war.zip и настройте доступ к программе через сервер Tomcat.
По умолчанию, имя пользователя и пароль для администрирования Subsonic – admin. Надо ли говорить, что ради безопасности его следует сменить на нечто более личное! Нажмите на Настройки [Settings] вверху экрана Subsonic, а затем на Пользователи [Users]. Выберите admin из выпадающего списка. Отметьте галочкой Изменить пароль [Change Password] и наберите свою персональную комбинацию букв и цифр.
Если вы не указали папку с музыкой в скрипте subsonic.sh, можно сделать и это, нажав на Настройки > Папки с музыкой [Settings > Music Folders]. После индексации папок с музыкой – это отнимет не более пары секунд, в зависимости от конфигурации – файлы отобразятся на боковой панели с левого края. Папки внутри указанного каталога с музыкой появятся вверху списка, в алфавитном порядке, а затем вы увидите остальные файлы.
Если ваша музыкальная коллекция представлена в нескольких форматах, не забудьте указать их все в текстовом поле Форматы музыки [Music Mask], которое находится в Настройки > Основные [Settings > General]. По умолчанию, FLAC, MP3, OGG, WAV и подобные уже отмечены, и файлы этих форматов будут проиндексированы в Subsonic в указанных вами папках с музыкой. Наткнувшись на файлы, не отмеченные в списке, Subsonic не распознает их как музыкальные.
Flash и прочее
Рядом с каждым проиндексированным музыкальным файлом помещены три маленьких кнопки: Прослушать [Play], Добавить [Add] и Скачать [Download]. В зависимости от конфигурации вашей сети, трек начнет проигрываться почти сразу, как только вы нажмете Прослушать. Вы даже увидите, как Subsonic транслирует файл. По умолчанию, Subsonic настроен на работу с интегрированным Flash-плейером, поэтому вам нужен браузер, поддерживающий Flash. Но при желании можно также нажать на Настройки > Проигрыватели [Settings > Players] и выбрать внешний музыкальный плейер.
Призвав различные онлайн-ресурсы и музыкальные магазины – в частности, Wikipedia, Amazon, Discogs, Metrolyrics, Allmusic и Google Music – Subsonic скачает обложки альбомов (включая изображения, встроенные в тэги ID3), отзывы, информацию об альбоме и даже тексты песен для каждого проигрываемого файла. Можно нажать на ссылку Текст [Lyrics] на панели справа, если аккомпанемент ударных чересчур отвлекает от слов.
Транскодинг – это преобразование цифровых файлов из одной кодировки в другую, например, из WMA в MP3. Умение Subsonic перекодировать файлы в интерактивном режиме означает, что можно транслировать аудиопотоки, не поддающиеся передаче в исходной кодировке, такой как FLAC. Благодаря многообразию форматов, поддерживамых Subsonic и Linux в целом, найдутся транскодеры для конвертации всех форматов, с которыми вы столкнетесь.
Транскодеры включаются нажатием на Настройки > Транскодинг [Settings > Transcoding]. Вы увидите, что множество настроек транскодинга представлены тут по умолчанию, но для настоящей конвертации придется призвать и сторонние инструменты, такие как FFmperg или Lame.
В зависимости от предпочитаемого инструмента транскодинга, будь то FFmpeg, Lame или MPlayer, вам нужно будет указать все требуемые настройки. Иногда конвертация форматов требует нескольких этапов, и при необходимости Subsonic выстроит цепочку длиной до трех транскодеров. В качестве альтернативы, можно создать в каталоге /var/subsonic/transcode/ скрипт и указать его в Настройки > Транскодинг.
Для доступа к web-интерфейсу из сети требуется знать только IP-адрес компьютера, где установлен Subsonic, и номер порта.
Создание пользователей
А если вы намерены дать доступ ко внешним сетям, перейдите в Настройки > Пользователи. Настраиваемые опции позволят вам определить здесь уровень доступа, выдаваемый пользователю. Например, отметьте галочкой пункт «Пользователь – администратор» [User is administrator], чтобы наделить пользователя правами администратора.
Подобным образом можно разрешить пользователям выгружать и скачивать файлы. Вы не найдете тут функции закачки пакетом, и пользователям придется нажимать кнопку Скачать для каждого трека, который они хотят добыть из Subsonic. Естественно, скорость скачивания треков зависит от параметров вашей сети.
После авторизации, любой пользователь, наделенный правами для закачивания файлов, может это сделать, нажав Дополнительно [More] вверху экрана Subsonic. Прокрутите вниз страницы и нажмите кнопку Обзор [Browse] под заголовком Закачать файл [Upload a file]. Файлы, добавляемые пользователями, появляются в левой панели как Ссылки > Входящие [Shortcuts > Incoming].
Чтобы задействовать всю ширину канала, лучше назначьте битрейт по максимуму. При установке битрейта в 128 Кб/с Subsonic автоматически снизит битрейт до установленного значения даже для файлов с битрейтом 256 Кб/с или 320 Кб/с.
При создании новых пользователей, убедитесь, что включена опция «Разрешить пользователю менять настройки и пароль» [User Is Allowed To Change Settings And Password], иначе пользователям будет не поменять интерфейс, как им нравится.
Как уже упоминалось, все проиндексированные файлы и папки отображаются в левом меню сбоку. Можно добавить треки в плей-лист нажатием кнопки Добавить у каждой композиции. Или же можно добавить в плей-лист папки целиком, нажавна имя папки и затем выбрав Добавить все [Add all]. При нажатии на имени папки ее содержимое отображается в центре, подобнотому, как файлы располагаются в левом боковом меню. Можнотакже выборочно добавлять треки из папки в плей-лист нажатием кнопки Добавить, если вы не хотите брать все подряд.
Отдельные параметры плей-листа, например, Повтор [Repeat], приведены в нижней панели. Завершив сбор файлов в плей-лист, сохраните его: нажмите кнопку Дополнительные действия [More] и выберите пункт Сохранить [Save] в выпадающем списке. Вам будет предложено ввести имя и формат (M3U или PLS) для нового плей-листа. Нажмите кнопку Сохранить [Save], когда закончите, и вновь созданная библиотека теперь будет доступна всем.
Чтобы прослушать списки, созданные вами или другим пользователем, выберите Загрузить [Load] из того же выпадающего списка и отметьте плей-лист, который хотите послушать.
После загрузки плей-листа нажмите кнопку Прослушать все [Play All] для воспроизведения всех песен в плей-листе. Плей-листы хранятся в каталоге, указанном в subsonic.sh. Если вы не задали каталог в файле, можете исправить это сейчас, со страницы Настройки > Основные.
Самое неприятное в интерфейсе Subsonic – то, что нельзя изменять размеры боковых панелей. Вам придется пользоваться горизонтальной прокруткой, чтобы просмотреть имена проиндексированных музыкальных файлов целиком.
Изменяем интерфейс
Если хотите, добавьте несколько папок с музыкальными файлами. Просто нажмите Сохранить после ввода полного пути для каждой из них.
Кроме этого просчета в интерфейсе, вы можете переделать все по своему вкусу. «Все» включает темы и приветствия, а также информацию, отображаемую для текущего плей-листа или трека.
Подготовив и проиндексировав свои папки с музыкой и создав пару пользователей, перейдите в Настройки > Вид [Settings > Personal] для персонализации Subsonic. Начать можно с выбора новой темы. Тема – это просто набор CSS-стилей, хранящийся в каталоге /var/subsonic/jetty/1130/webapp/style/, так что вы можете создать собственную, если ни одна из них доступных не приглянулась.
Можно взять за основу любую из существующих тем, и в сочетании с файлом default.css, также в /var/subsonic/jetty/1130/webapp/style/, это определит вид интерфейса. Кроме того, можно перейти в каталог /var/subsonic/jetty/1130/webapp/WEB-INF/jsp/, откуда открыт доступ к скриптам для всех аспектов Subsonic, от левой и правой боковых панелей, до настроек плейера, списков воспроизведения и тому подобного.
Следующий шаг – использование серии флажков, указывающих Subsonic, какую информацию вы хотите видеть на странице каждой из проигрываемых композиций. Пользователь может также выбрать отдельное изображение из множества доступных или, при желании, загрузить свое собственное. Эта аватара выводится на правой боковой панели, что особенно мило, когда включена опция «Позволить другим смотреть, что я сейчас слушаю» [Let Other see What I am Playing] и «Показывать что слушают другие» [Show What Others Are Playing] в Настройках.
Использование встроенного чата включено по умолчанию; вы можете также общаться с другими пользователями, которые указаны в настройках Subsonic. Просто введите в текстовое поле «Сообщение чата» [Chat Messages] на правой боковой панели, и оно почти мгновенно отобразится для всех пользователей, которые видят Subsonic в данный момент. Пользователь может отключить чат в меню Настройки > Вид, сняв флажок возле Показывать сообщения чата [Show chat messages].
Мы уж столько раз упоминали всуе страницу Настройки, что можно с уверенностью предположить, что ваши глаза рыщут в поиске заголовка Интернет TV / Радио [Internet TV/Radio]. Но сказать, что Subsonic поддерживает интернет-радио, было бы преувеличением.
Не совсем то…
Все, что предлагает Subsonic – это закладки, всяких видов; некий центр, где можно хранить плей-листы для интернет-радиостанций, в дополнение к вашей музыкальной коллекции. К сожалению, встроенный Flash-плейер, хотя и хорош, не годится для прослушивания этих радиостанций. Вместо него нужен внешний музыкальный плейер.
Наряду с ранжированием всех музыкальных альбомов из вашей коллекции, вы также можете добавить комментарий, и пользователи будут знать, что вы думаете об альбоме; ведь в этом весь смысл иметь общую коллекцию, верно?
Subsonic считает каждый каталог в указанной папке с музыкой отдельным альбомом, что облегчает присвоение рейтинга или добавление комментария к данному набору музыкальных файлов. При нажатии на альбом в левой боковой панели его содержимое отображается в центре. Чуть выше списка файлов – куча ссылок, последней из которых стоят комментарии. Нажмите на нее, и вы можете ввести комментарий, который увидят все, кто прослушивает данный альбом.
Ссылка Изменить тэг [Edit tags] работает аналогичным образом, позволяя легко менять метаданные, связанные с каждым файлом в альбоме. Можно, например, изменить исполнителя, год, название альбома, жанр и многое другое. Главное, не забудьте нажать на кнопку Сохранить при всяком внесении изменений в метаданные, и информация мгновенно обновится.
Мы установили, что Subsonic является идеальным средством избежать дублирования файлов между машинами. Но обслуживание музыки – не единственное применение этого инструмента. Перейдите в Настройки > Индексация [Settings > Search] и нажмите кнопку Обновить индекс сейчас [Update Search Index Now]. Именно это и произойдет, а затем вы сможете находить файлы, используя строку поиска в правом верхнем углу интерфейса Subsonic.
Поиск Subsonic поддерживает метаданные, и вы можете искать файлы и получать нужные результаты, даже не вводя точное название. Для нахождения файлов можно использовать любую часть названия альбома/песни или имени исполнителя.
Другое применение Subsonic – защищенный обмен файлами с другими пользователями. То есть, если вы не хотите доверять электронной почте важные PDF- или DOC-файлы, добавьте .pdf, .doc или любой другой в поле допустимых форматов в Настройки > Основные. Затем пользователи могут скачать эти файлы, как будто они музыкальные – нажав на кнопку Загрузить.
Шаг за шагом: Запускаем движок транскодирования
Убедитесь, что папка, которую вы указываете для плей-листов, уже создана. Subsonic скорее пожалуется на то, что он ее не нашел, чем предложит ее создать.
Subsonic требует, чтобы транскодеры находились в /var/subsonic/transcode, поэтому вам нужно будет создать символьные ссылки для всех используемых транскодеров.
- 1 Создайте симлинки
- Все транскодеры находятся в /var/subsonic/transcode/. Если у вас установлены Lame, MPlayer, FFmpeg и другие инструменты, которые вы планируете использовать, просто создайте символьную ссылку («симлинк») для каждого командой ln -s /usr/bin/lame/var/subsonic/transcode/lame.
- 2 Используйте транскодеры
- Выберите Настройки > Транскодинг. Вы найдете список опций преобразования для множества форматов. При желании, вы можете задать параметры самостоятельно. Нажмите флажок Включено [Enabled], касающийся перекодировки, которую вы хотите использовать, и нажмите кнопку Сохранить внизу страницы.
- 3 Включите транскодинг
- Чтобы использовать свеженастроенные транскодеры, откройте Настройки > Проигрыватели. Все включенные в Настройки > Транскодинг транскодеры перечислены в нижней части страницы,под Включить транскодинг. Установите флажок для тех, что вы хотели бы активировать, и нажмите кнопку Сохранить.
Шаг за шагом: Перенаправление портов
- 1 Вход в маршрутизатор
- Войдите в графический интерфейс маршрутизатора. Адрес по умолчанию будет вроде http://192.168.1.1 с именем пользователя и паролем admin, но это варьируется в зависимости от марки. Обратитесь к сетевому администратору, если вы не сами настраивали маршрутизатор.
- 2 Переадресация
- Теперь посмотрим на перенаправление портов. Настройка большинства маршрутизаторов разбита на разделы, но если вы не можете найти перенаправление портов [Port Forwarding] как самостоятельную секцию, зайдите на http://portforward.com: там имеются рекомендации по настройке этого для множества различных маршрутизаторов.
- 3 Включите переадресацию
- При добавлении новой переадресации вам предложат ввести имя для сервиса и начальный и конечный номера портов, а затем указать внутренний IP-адрес сервера. Начальные и конечные порты всегда одинаковы. Наконец, нажмите кнопку Сохранить или Применить.