И так, аппаратная часть медиацентра на базе Raspberry Pi собрана, все подробности по ее комплектации и сборке читайте в первой части статьи . Следующим шагом будет установка дистрибутива XBMC. XBMC это открытый проект по созданию медиацентра, изначально предназначенного для игровой приставки Xbox (отсюда название проекта - Xbox Media Center) и в настоящее время поддерживающего множество платформ.

Существует три основных варианта дистрибутивов медиацентра, это Raspbmc , XBian и OpenELEC . Все они созданы на базе проекта XBMC и разработаны специально для Raspberry Pi, имеют несущественные различия, а кроме того поддерживаются достаточно многочисленными сообществами. Я выбрал для себя OpenELEC, поэтому в дальнейшем будем рассматривать именно его установку и настройку.

Raspberry Pi хранит операционную систему и программы на SD карте, поэтому понадобится SD карта (или microSD для модели «B+»). Для установки OpenELEC достаточно карточки объемом 500 Мбайт, но менее 2 Гбайт сейчас сложно найти. Да и небольшой запас пусть будет на всякий случай. Использовать карточку большего объема не имеет смысла, медиафайлы на ней все равно хранить не будем, а чем больше карточка, тем больше затраты времени и дискового пространства на создание и хранение резервных копий системы. А вот класс карточки должен быть как можно выше.

Скачать последнюю версию дистрибутива образа диска OpenELEC лучше всего с официального сайта разработчиков http://openelec.tv . На февраль 2015г. это версия 5.0.1, которая сменила имя «XBMC» на «Kodi». Но на момент написания статьи она еще не существовала, поэтому все дальнейшие описание относится к 4-й версии. Однако внешние различия незначительны. Версии 3 и ниже (12.x Frodo) ставить не стОит – слишком много в них глюков.

И так, скачиваем дистрибутив (образ диска) OpenELEC. Записать образ можно с помощью программы . Вставьте SD (microSD) карточку в кардридер и подключите его к USB порту компьютера. Распакуйте скачанный архив с образом OpenELEC, запустите Win32DiskImager, выберите в нем этот образ - файл с расширением .img и SD карточку, на которую его нужно записать, нажмите экранную кнопку «Write». Дождитесь завершения процесса записи.

Можно сразу немного разогнать процессор Pi. Запускаем на компьютере Total Commander и переходим на только что записанную SD карточку. Вместо 2 Гбайт там будет немногим более 100 Мбайт, это нормально. Ищем файл config.txt и открываем его для правки, это обычный текстовый файл. Ограничимся щадящим режимом разгона процессора. Для этого в файл config.txt нужно добавить следующие строки:
arm_freq=900
core_freq=333
sdram_freq=450
over_voltage=0

Там уже есть похожие закомментированные строки, просто исправьте их и раскомментируйте. Для просмотра MPEG2 и DVD фильмов нужен лицензионный ключ. Его можно , стоимость £2. Ключ аппаратно зависимый, подходит только для той платы, серийный номер которой был указан при покупке ключа. Какой серийный номер у вашей платы узнаете, когда запустите OpenELEC. Если ключ уже куплен, записываем его в файл config.txt, добавив строку вида:
decode_MPG2=0x00000000

Можно еще принудительно выбрать разрешение экрана телевизора, включить режим overscan, если изображение выходит за границы экрана или, наоборот, по краям экрана есть темные полосы и многое другое. Как это сделать, . Оригинал статьи на английском языке находится по адресу: http://elinux.org/RPi_config.txt . Впрочем, большую часть настроек в файле config.txt можно сделать средствами OpenELEC, запустив соответствующее дополнение. Об этом позже.

После редактирования сохраняем файл config.txt, вынимаем карточку из кардридера и вставляем ее в слот Raspberry Pi. Кабель от роутера уже подключен, телевизор, разумеется, тоже подключен кабелем HDMI. Можно включать питание.

На время настройки для удобства к медиацентру желательно подключить USB мышку. Клавиатура тоже не будет лишней. Несколько минут ничего не предпринимайте, дайте возможность системе скачать необходимые дополнения. При первом запуске на экране появится окно с предложением выбрать язык интерфейса. Выберите нужный из списка. Затем будет предложено включить SAMBA и SSH. SAMBA включите обязательно, а SSH - только, если точно знаете что это такое и зачем оно вам нужно.

Выбираем «Система» -- «Настройки» , в левой части открывшегося окна будет много пунктов, можно пройтись по всем. Начнем с пункта «Внешний вид» . В первую очередь в левом нижнем углу включаем экспертный режим, иначе часть настроек будет недоступна. Затем на вкладке «Обложка» для экономии ресурсов убираем галочку «Включить RSS-новости», все остальное оставим по умолчанию.

«Языковые настройки». Выбираем язык интерфейса – Russian. Страна в часовом поясе – Russia, затем нужный часовой пояс.

«Списки файлов». Отметим здесь все пункты, чтобы файлы можно было удалять и переименовывать, а также были видны скрытые файлы. Впрочем, это на ваше усмотрение.

Закрываем окно и заходим на вкладку «Видео» .

«Воспроизведение». Здесь для улучшения передачи движения в видео нужно выбрать пункт «Настроить частоту дисплея согласно видео» и поставить его в режим «Постоянно». Остальное – по умолчанию.

«Ускорение». Убедитесь, что аппаратное ускорение включено. Настройки на остальных вкладках окна «Видео» оставим по умолчанию. Закрываем окно. На «ТВ» тоже оставим все по умолчанию.

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

«Фото», «Погода», «Дополнения» и «Службы» пока можно не менять. Заходим на вкладку «Система» .

«Вывод видео». Все по умолчанию, только убедитесь, что разрешение интерфейса на максимуме. «Вывод звука». Устройство вывода звука - HDMI, остальное по умолчанию.

«Устройство ввода». Мышку надо включить, а в пункте «Периферия» можно настроить управление адаптером CEC. Там все понятно. Только после любых изменений конфигурации пульт перестает работать. Требуется перезагрузка системы, перезагружаемся с управлением мышкой.

«Доступ в Интернет», «Экономия энергии», «Отладка» и «Особая защита» по умолчанию.

Закрываем вкладку и заходим Система -- OpenELEC -- Система . Здесь убеждаемся, что «Автоматическое обновление» установлено «manual». По мере выхода новых версий ПО здесь можно легко делать upgrade через пункт «Проверить обновления». На этой вкладке можно также делать и, при необходимости, восстанавливать резервную копию настроек – «Создать системную резервную копию», «Восстановить резервную копию».

На вкладке «Службы» включаем «Samba» и, при необхожимости, «SSH»; «Использовать пароли Samba» и «Отключить пароли SSH» НЕ отмечаем . Все остальное тоже выключаем. «Bluetooth» я не настраивал.

Теперь из главного окна зайдите Система -- Сведения о системе . Здесь можно получить информацию о подключенных дисках, сетевом соединении, узнать IP адрес, температуру процессора, посмотреть серийный номер платы, необходимый для покупки MPEG2 лицензионного ключа и др.

Посмотрите, соответствует ли суммарный объем двух разделов на SD карточке полному объему карточки. Возможно он будет меньше, т.е. часть объема диска невидима для операционной системы. Исправить это очень просто. Создаем на компьютере пустой файл с именем .please_resize_me . Именно так, с точкой в начале и подчеркиваниями. Можете взять его из моего архива – ссылка в конце странички. Скопируйте этот файл на флэшку, вставьте ее в USB порт медиацентра и войдите в файловый менеджер OpenELEC.

В корневом каталоге появится ваша флэшка. Если там нет каталога «storage», щелкните «Добавить источник» и выберите «Домашняя папка». Теперь в корне появится каталог «storage», скопируйте в него файл с флэшки, файловые операции делаются через контекстное меню. Выйдите из файлового менеджера, нажав мышкой на кнопку с домиком внизу и перезагрузитесь (кнопка слева внизу). Теперь должен быть виден весь объем карточки.

Теперь нужно как-то загрузить медиафайлы на подключенный жесткий диск. Лучше это сделать еще до установки жесткого диска в медиацентр. Подключите его к основному компьютеру, отформатируйте и скопируйте на него фильмы, музыку, фотографии из вашего архива. Просто, так получится быстрее. OpenELEC понимает все популярные файловые системы, оптимальный выбор, наверное, NTFS.

Можно обмениваться файлами и по локальной сети. Для этого необходимо настроить Samba сервер. Это довольно серьезный вопрос, заслуживающий отдельной статьи. Здесь я упомяну только основные моменты. Вначале нужно создать файл конфигурации samba.conf . Для удобства я выкладываю его рабочий вариант – ссылка в конце странички. Его нужно распаковать из архива и скопировать на флэшку.

Зайдите в файловом менеджере OpenELEC в каталог «storage», затем в «.config» (точка перед именем означает, что это скрытая папка) и скопируйте туда файл samba.conf. Там есть файл samba.conf.sample. Это образец, скопируйте его на всякий случай на флэшку. Если что-то не получится, можно будет поэкспериментировать с настройками. В интернет можно найти много противоречивых мнений о содержимом файла samba.conf

Снова перезагружаемся. Теперь нужно настроить локальную сеть на компьютере Windows. Запустите Total Commander и выберите вместо локального диска «Сетевое окружение». Если через непродолжительное время там появится OPENELEC – вам повезло, все работает. Можно копировать файлы на подключенный жесткий диск, правда скорость не очень большая – около 3 Мбайт/сек, т.е. примерно 25 Мбит/сек. Жесткий диск и флэшка отображаются в каталоге OPENELEC -- storage .

Если в сетевом окружении нет OPENELEC, попробуйте выключить медиацентр. Это нужно делать программно, через меню завершения работы. Только после закрытия системы можно выключить питание. Подождав 1-2 минуты вновь включите питание. Если OPENELEC так и не появился в сетевом окружении – нужно настраивать локальную сеть на компьютере Windows. Вопрос отдельный и достаточно сложный. Не буду на нем останавливаться, т.к. не специалист в этом. У меня все заработало после трехчасовых мучений и внимательного изучения материала, найденного Google. Правда, сюда входило и время на эксперименты с содержимым файла samba.conf.

Ну, что же, осталось установить дополнения (addon -ы). Сначала добавим русскоязычный репозиторий дополнений Seppius. Скачайте файл repository.seppius.zip , скопируйте его на флэшку или HDD медиацентра, затем выберите Система -- Дополнения -- Установить из zip файла и укажите путь к этому файлу. Еще один полезный репозиторий – Leopold. Аналогично скачайте файл xbmc.repo.leopold.zip и установите его. На всякий случай я положил оба этих файла в архив, ссылка на который в конце странички.

Теперь можно выбрать, что вас интересует в списке дополнений. Список большой, но, к сожалению, большая часть дополнений не представляет интереса или не работает. Тем не менее, кое-что выбрать можно. Если после успешной установки при запуске дополнения появляется сообщение об ошибке, значит оно устарело, а его автор, очевидно, потерял интерес к этому своему проекту. Остается только удалить его, либо попытаться разобраться и что-то поправить самостоятельно, но это отдельная тема.

Из программных дополнений рекомендую установить OpenELEC RPi Config из Leopold"s Add-ons -- Services . С помощью этого дополнения можно редактировать системные настройки в файле config.txt. Там все понятно, только не следует при разгоне процессора ставить параметр «over_voltage» больше нуля. В этом случае теряется гарантия на плату. Дело не в самом факте потери гарантии, а в том, что это может привести к повреждению платы. Если, конечно, вы уже наигрались и просто нужен повод выбросить все это...

Еще одно полезное дополнение Keymap Editor - очень удобно с ним настраивать управление медиацентром. Этим сейчас и займемся. Как я уже упоминал, Raspberry Pi поддерживает технологию CEC, что позволяет использовать пульт телевизора для управления медиацентром. Большинство телевизоров, выпущенных за последние годы, тоже поддерживают эту технологию.

Но, к сожалению, тут есть некоторые проблемы. Разные фирмы называют технологию CEC по-своему. И это не случайно, они и реализуют ее по-своему. Например, у LG это SimpLink. Идея хорошая, но программисты решили особо себя не утруждать и свели количество кнопок, посылающих коды по HDMI к минимуму. На моем пульте из 48 кнопок только 11 можно использовать для управления подключенными по HDMI устройствами.

Это кнопки со стрелками, OK, Exit и еще несколько других. Остальные кнопки управляют телевизором или выдают сообщение «Операция недоступна». Несколько кнопок вообще не работают в этом режиме. В принципе, для стандартных операций этого достаточно, но, например, переключать звуковую дорожку фильма, забираясь глубоко в меню весьма неудобно.

Для некоторых операций программисты LG решили зачем-то задействовать последовательное нажатие двух кнопок. Чтобы вывести контекстное меню нужно нажать «Стоп», а затем «Play», для возврата в домашний экран - «Стоп», «Пауза». А ведь большая часть кнопок пульта не задействована... И тут ничего не поделаешь. В меню телевизора можно только включить или выключить SimpLink.

К счастью, в XBMC в каждом окне одна и та же кнопка может выполнять разные функции, так что кое-что подправить можно. Для этого запускаем установленное дополнение Keymap Editor из главного меню «Программы». Как с ним работать, интуитивно понятно, но предварительно нужно ознакомиться со структурой файла keyboard.xml , который хранится на SD карточке в каталоге /storage/.xbmc/userdata/keymaps/ .

Имя файла вообще-то может быть любым, главное, чтобы расширение было xml . Дополнение просто помогает создать и отредактировать этот файл, который переопределяет функции, выбранные по умолчанию для кнопок управления. Тема тоже отдельная и обширная, не все тут сразу ясно и понятно, придется экспериментировать. Подробную информацию по структуре файла можно найти и .

Наконец, все настроено, делаем на всякий случай резервную копию системных файлов (Система -- OpenELEC -- Система -- Создать системную резервную копию) и копируем созданный файл из каталога /storage/backup на HDD или флэшку. С помощью этого файла можно восстановить все сделанные настройки после переустановки или установки новой версии OpenELEC. Для восстановления системных настроек файл должен находиться в каталоге /storage/backup .

К сожалению, восстановление настроек можно сделать корректно только в пределах одной версии - 4-й, 5-й и т.д. Т.е. нет проблем апгрейда с 4.0 на 4.2, но могут возникнуть ошибки при переходе с 4.2 на 5.0. В этом случае, очевидно, настройку придется повторять вручную. Не помешает сохранить также образ SD карточки с помощью Win32DiskImager в файл с расширением .img , чтобы в случае каких-то глобальных системных сбоев не пришлось повторять всю настройку. Сохраненный файл образа можно заархивировать для экономии места на диске.

Теперь вся инициатива в ваших руках. Смотрите фильмы, слайд шоу, слушайте музыку. Но не забывайте, что Raspberry Pi – компьютер, а не плеер. Это значит, что “нажал кнопку и смотри” с ним не получится. Придется использовать голову, потребуются также прямые руки... С другой стороны, если что-то не работает или работает не так, как нужно, есть много путей решения проблемы. В первую очередь, нужно поискать, а не найдено ли уже кем-то решение. Новые версии OpenELEC выходят довольно часто – в течение года появляется несколько обновлений, т.е. проект активно развивается и все ошибки постепенно устраняются.

Медиацентр поддерживает довольно много видеоформатов, это H.264, XviD, DivX, MPEG2 в контейнерах MKV, AVI, DVD. С полным списком поддерживаемых форматов можно .

Какие недостатки у медиацентра на Raspberry Pi? Основной минус – очень долго добираться до нужного медиафайла в интернет. При просмотре никаких задержек нет, а вот поиск и выбор того, что вы хотите посмотреть занимает отнюдь не секунды, а 1-2 минуты. Нерабочих ссылок тоже довольно много. Тут уж ничего не поделаешь...

Не всегда корректно отображается меню DVD дисков. Вообще, DVD – очень сложный контейнер с массой документированных и недокументированных возможностей. Тем не менее, основной фильм Raspberry Pi хорошо воспроизводит всегда.

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

Возможно, возникнет вопрос, а поддерживает ли Raspberry Pi новый видеокодек H.265. На момент написания статьи с этим дело обстояло точно так же, как и в большинстве других медиаплееров, т.е. никак. Но когда возникнет реальная потребность в просмотре фильмов, закодированных H.265, возможно появится Raspberry Pi 2, 3... или что-то аналогичное. Просто заменим плату нашего микрокомпьютера на что-нибудь более совершенное.

Конечно, я рассказал далеко не обо всех возможностях медиацентра на Raspberry Pi. Что-то, наверное, показалось не совсем понятным, хотелось бы побольше картинок. Но для того, чтобы обо всем подробно рассказать нужно писать книгу, на одной страничке сайта все описать невозможно. Названия окон и их содержимое в новых версиях OpenElec могут несколько отличаться от моего описания. Если что-то непонятно или не получается – просите помощи у Google.

В статье рассмотрено развертывание медиацентра openELEC на Raspberry Pi для проигрывания медиафайлов с флешки, за 20 минут, который управляется со смартфона или планшета (Android или iOS).

НЕОБХОДИМОЕ ОБОРУДОВАНИЕ

НЕОБХОДИМЫЕ ИНСТРУМЕНТЫ

  1. Компьютер для записи openELEC с карт-ридером
  2. USB-клавиатура
  3. Отвертка крестовая
  4. Бор-машинка — если необходимо подровнять корпус для переходника.

ПОЧЕМУ ИМЕННО openELEC?

Для RPi существуют несколько разных дистрибутивов для реализации медиацентров. Основные из них это Raspbmc , XBian , openELEC . Мой выбор пал на openELEC только из-за его требований к аппаратной части. Тот же Raspbmc ставится на порядок проще, но и ресурсов жрет тоже=))

КАЧАЕМ И УСТАНАВЛИВАЕМ openELEC

Актуальную версию можно получить на странице скачивания openELEC . Важно заметить, что если вы пользователь Windows, то вам необходимо скачать именно образ диска (Diskimage).

Для записи образа в Windows можно воспользоваться руководством на официальном сайте или статьей на RoboCraft . Все сводится к скачиванию образа диска и записи его на флешку посредством .

На моем ноутбуке стоит Ubuntu, и у меня есть 2 варианта: запись образа посредством утилиты dd или скачать билд с утилитой записи. Воспользуемся вторым вариантом, который советуют на вики openELEC :

  1. Распакуем архив:

    $ cd ~/Soft/RPi/ $ tar xvf OpenELEC-RPi.arm-4.0.7.tar

  2. Вставим флешку в картридер и посмотрим, куда она смонтировалась с помощью dmesg :

    $ dmesg | tail [ 5745.159957] mmc0: card 1234 removed [ 5761.921367] mmc0: new high speed SDHC card at address 1234 [ 5761.925638] mmcblk0: mmc0:1234 SA04G 3.63 GiB [ 5761.929710] mmcblk0: p1

    $ dmesg | tail

    [ 5745.159957 ] mmc0 : card 1234 removed

    [ 5761.921367 ] mmc0 : new high speed SDHC card at address 1234

    [ 5761.925638 ] mmcblk0 : mmc0 : 1234 SA04G 3.63 GiB

    [ 5761.929710 ] mmcblk0 : p1

    Вот и наша точка монтирования — mmcblk0

  3. Переходим к установке. Для этого запустим create_sdcard /dev/mmcblk0 (это в моем случае, в вашем необходимо подставить свое значение):

    $ sudo ./create_sdcard /dev/mmcblk0

    И теперь можем извлекать флешку и вставлять ее в Raspberry.

    Мне больше нравится, когда из Raspberry ничего не торчит, поэтому для медиацентра буду использовать переходник .

    СОБИРАЕМ Raspberry Pi И ПОДКЛЮЧАЕМ К ТЕЛЕВИЗОРУ

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

    После этого собираем все вместе и закручиваем винты (идут в комплекте к корпусу). Затем подключаем HDMI. Важно заметить, что есть одна особенность — если включить Raspberry без HDMI, то картинки не будет, для этого необходимо будет его перезапустить.

    Если у вас телевизор с USB, то питание нашего медиацентра можно сразу подключать в соответствующий порт. Важное замечание — при подключении внешнего жесткого диска при таком питании, Raspberry будет не хватать тока и она будет перезагружаться. Здесь лучше задуматься о блоке питания, либо об USB-хабе с внешним питанием.

    Донгл можно взять такой же, как и у меня:

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

    Клавиатура нам нужна только для конфигурирования.

    ПЕРВЫЙ ЗАПУСК

    Для начала терзания нашего медиацентра нам достаточно настроить язык и WiFi. Драйверов для донгла устанавливать никаких не нужно — он подхватывается автоматически. Лучше всего подключить клавиатуру для удобства настройки.

    Для настройки языка: System -> Settings -> Appearance -> Language Settings
    Для настройки подключения к WiFi: System -> openELEC -> Connections

    После этого можно вставлять флешку и смотреть фильмы =))

    КАК УПРАВЛЯТЬ МЕДИАЦЕНТРОМ

    1. Можно подключить проводную\беспроводную клавиатуру
    2. С помощью веб-интерфейса как с компьютера, так и с телефона
    3. Установить приложение Yatse
    4. Пультом от телевизора с поддержкой CEC

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

    Веб-интерфейс поднимается автоматически по IP-адресу, который выдан устройству, на 80 порте. Тем самым вы просто можете вбивать ссылку в браузер и управлять медиацентром.

    Одно из самых популярных применений для Raspberry Pi 2 - это медиацентр. Установив Kodi на малину можно получить все преимущества SmartTV с интуитивным интерфейсом за небольшую стоимость.

    Kodi, ранее известный как XBMC Media Center, является кросс-платформенным программным обеспечением с открытым исходным кодом. Его удобный графический интерфейс позволяет пользователю просматривать видео, фотографии, слушать подкасты и музыку с жесткого диска, локальной сети и интернет. Проект управляется некоммерческой XBMC Foundation и разрабатывается добровольцами со всего мира. С момента своего создания в 2003 году более чем 500 разработчиков программного обеспечения участвовали в разработке этой программы из них около 60 разработчиков на регулярной основе. Более 200 переводчиков сделали доступным развлекательный центр на 72 языках. Изначально Kodi создавался как медиацентр для первого поколения игровых консолей Xbox (уже не поддерживается), но теперь можно найти нативную сборку для всех популярных операционных систем: Android, Linux, Mac OS X, iOS и Windows, запускаемых на большинстве современных архитектурах процессоров.

    На Raspberry Pi 2 медиацентр Kodi можно установить двумя способами:

    1. Первый способ - установить как самостоятельную ОС. Следуя устанавливаем на малину OpenELEC, которая, по сути, является тем же Kodi. Данную ОС можно установить как единственной, так и дополнительной. Преимущество данного способа в том, что развлекательный центр может запускаться автоматически при подаче питания на Raspberry Pi не требуя дополнительных телодвижений.

    2. Второй способ - установить его на Raspbian linux или другую операционную систему, под которой работает ваш RPi2, как приложение. Для этого в терминале необходимо ввести:
    sudo apt-get install kodi

    После установки запускаем развлекательный центр командой:
    sudo kodi

    Преимущество этого способа - не нужно перезагружать RPi2 под другую ОС, когда потребуются дополнительные возможности. Достаточно будет выйти из программы и продолжить пользоваться Raspbian.

    До начала использования ПО сделаем несколько настроек :

    • поменяем язык на русский.
    • установим репозиторий с русскоязычными ресурсами.

    Для смены языка переходим System -> Settings -> Appearance -> International
    Меняем язык и раскладку клавиатуры.

    По умолчанию в Kodi предустановлен репозиторий с большим количеством англоязычных приложений. Один из самых популярных русскоязычных XBMC плагинов - seppius можно скачать . Для установки скачиваем ZIP-файл плагина и кидаем его на флешку (если устанавливать будем в OpenELEC) или скачиваем куда-угодно под Raspbian.
    Запускаем медиацентр Kodi.
    Переходим Настройки -> Дополнения -> Установить из файла ZIP
    Выбираем наш файл.

    Теперь можно добавлять русскоязычные ресурсы в наш медиацентр. Помимо seppius существует множество русскоязычных репозиториев. Самое сложное - найти удобный источник в самом репозитории. Совет! Если вы нашли хорошее приложение в репозитории, добавляете его в избранное, чтобы потом не вспоминать где было так удобно просматривать фильмы.

    Суть проблемы

    Чтобы нафаршировать телевизор мультимедийным функционалом, есть несколько путей. Можно купить так называемый умный телевизор. Однако на сегодняшний день производители просят за такие опции серьезные деньги, не предлагая при этом ничего поражающего сознание. Можно купить медиаплеер, но тогда столкнешься либо с какой-нибудь экзотичной прошивкой от производителя, либо с Android, а приятного в этом мало. Кроме того, хотя флешкообразные Android-компьютеры и стали относительно популярны, их качество не слишком высоко - особенно часто пользователи жалуются на плохой Wi-Fi и отсутствие Ethernet (что для просмотра HD-контента недопустимо). Поэтому до сих пор энтузиасты предпочитали собирать собственный HTPC из mini-ITX-материнки и водружать на него XBMC. Но ведь в жилую комнату хочется поставить что-то тихое и маленькое, не так ли? Вот тут на помощь и приходит Raspberry Pi.

    Казалось бы, RPi разрабатывался как образовательный инструмент и игрушка для железячников - энтузиастов от мира робототехники, при чем тут медиаплееры? Тем не менее многие используют малютку именно по такому назначению, и неспроста. В основе компьютера лежит чип Broadcom BCM2835, который изначально разрабатывался как решение для мультимедиа (если не веришь, можешь почитать на . По заявлениям разработчиков, мощность процессора невелика и находится на уровне Pentium II 300, но вот графический процессор удался - ты наверняка читал про то, как на Raspberry играют в Quake 3. Производитель сравнивает его мощность с первым Xbox. В общем, не случайно точно такой же чипсет используется в популярном за рубежом плеере Roku и ряде других аналогичных продуктов. Видеочип поддерживает аппаратное декодирование h264, а также кодеки MPEG-2 и VC-1. Правда, два последних кодека требуют платной лицензии, придется заплатить 170 рублей. Неприятное упущение - отсутствует аппаратная поддержка аудиокодека DTS (несмотря на то что разработчики Raspberry уже написали нужный код, договориться о лицензии пока не удается). Однако беглый поиск дает понять, что декодер DTS в принципе редко встречается в маленьких плеерах. Если у тебя нет телевизора или ресивера, который мог бы выполнить декодирование сам, то легко нагуглить решение для перекодирования звука. Спойлер: лучше все-таки искать контент с AC3.

    На этом плюшки не заканчиваются. У Raspberry есть особенность, которой может позавидовать любой неттоп и подавляющее большинство медиаплееров, - это поддержка технологии CEC (Consumer Electronics Control). Это спецификация для HDMI, позволяющая использовать пульт телевизора для управления подключенными устройствами. Большинство телевизоров, выпущенных за последние пару лет, поддерживают эту технологию, но каждый производитель называет ее по-своему. В случае моего Philips это EasyLink, у Samsung - Anynet+, у Sony - BRAVIA Link/Sync и так далее.

    Помимо HDMI, поддерживаются и аналоговые выходы на видео и звук. Аналоговое видео вряд ли кому-то нужно в нашем контексте, а вот с аналоговым звуком пока ситуация неприятная. Дело в том, что из-за ошибок в прошивке на момент написания статьи качество звука отвратительно: например, в начале и конце каждого трека издается мощный щелчок (единственный выход - использовать gapless-воспроизведение или покупать аудиокарту с интерфейсом USB).

    Другой недостаток связан с реализацией USB. Фактически на один контроллер в Raspberry повешено два порта и адаптер Ethernet. Поэтому медиаплеер не получится использовать для закачки торрентов - сеть будет постоянно воевать с диском в контроле за пропускной способностью, из-за чего все будет тормозить, и устройство не сможет стабильно качать на полной скорости. Тем не менее, как мы сейчас сможем увидеть, сообществу разработчиков удалось предложить что-то, с лихвой компенсирующее описанные недостатки.

    Что потребуется

    Как известно, в комплекте Raspberry Pi нет ничего, кроме самого компьютера, поэтому сразу стоит озвучить простой факт: наш медиаплеер не будет стоить 35 долларов. Как минимум потому, что следует учесть доставку. Между прочим, в Москве есть несколько интернет-магазинов, торгующих Raspberry, - там он обойдется примерно в 2400 рублей, но зато получить можно в течение пары дней, а не нескольких недель. Кроме того, вместе с доставкой даже покупка у официальных дистрибьюторов выльется, скорее всего, в близкие деньги, причем еще и с дополнительным геморроем (и немалым). В общем, рекомендую обратиться к услугам посредников - их легко найти в Яндекс.Маркете. Самый ответственный момент - выбор блока питания. RPi теоретически может использовать почти любой зарядник от смартфона или планшета с разъемом microUSB, но на практике подойдет только адаптер на 5 вольт и хотя бы 1 ампер. Если адаптер не дает заявленного результата, Raspberry будет работать нестабильно. Со списком протестированных пользователями адаптеров можно ознакомиться в полуофициальном вики . Лично я использовал зарядник от смартфона HTC.

    Другой важный момент - карточка SD. В принципе, моя карточка Transcend 10-го класса на 32 гигабайта обошлась рублей в 800, что сравнительно недорого. Для нашего применения достаточно и 4 гигабайт, но вот брать более низкий класс не рекомендую - это скажется на отзывчивости интерфейса и общей производительности. Кроме того, стоит признать, что SD-карты не рассчитаны на такую нагрузку, поэтому лучше брать что-то от известного производителя. Впрочем, можно использовать в качестве основного раздела флешку, но для загрузки все равно понадобится карточка.

    Также советую потратиться на корпус (у перекупщиков он обойдется рублей в 400). Конечно, так наш медиаплеер потеряет свой «гиковский» образ, но зато плата будет защищена. Как минимум нужно учесть, что при подключении-отключении кабелей и флешек вполне реально неудачно упереться пальцем в какой-нибудь участок голого RPi и что-нибудь там поломать.

    Еще нам понадобится некое хранилище файлов. Подключать жесткий диск, на мой взгляд, довольно бессмысленно. Во-первых, Raspberry, скорее всего, не сможет питать внешний хард по USB и придется искать вариант с дополнительным источником питания. Во-вторых, как уже говорилось, RPi не сможет одновременно быть и медиаплеером, и торрентокачалкой. Лучше всего подойдет любой NAS. Воспользовавшись случаем, советую платформу Kirkwood, которая шикарно работает под ArchLinux, без всяких там optware.

    Дополнительные аксессуары. С пультом можно разобраться по-разному. Самое простое - использовать пульт от телевизора. Если по какой-то причине это не подходит, то можно купить специальный пульт для HTPC с USB-приемником. Альтернативно можно соорудить ИК-приемник и подключить его к разъему GPIO - это для любителей DIY. Ну и наконец, самое функциональное решение - поставить пульт на смартфон или планшет. Для Android доступен официальный пульт от XBMC, а также просто отличный Yatse . С его помощью, например, можно посылать в XBMC ссылки на YouTube и другие популярные хостинги, выбирать файлы из медиатеки напрямую, а также пользоваться экранной клавиатурой.

    Отдельно стоит оговорить Wi-Fi-адаптеры. Строго говоря, если ты собираешься смотреть 1080p, лучше использовать провод, так как USB-адаптеры обычно не тянут нужную скорость. Но если ты не настолько требователен или же тянуть кабель не вариант, выбери любой из протестированных адаптеров (опять-таки не забудь глянуть в вики). Я использую TP-LINK TL-WN725N, который обошелся мне в 270 рублей и завелся совершенно без напильника. А если шара файлов работает не на Samba, а на NFS, то с переменным успехом можно смотреть и 1080p.

    Таким образом, моя конфигурация обошлась чуть меньше чем в 4 тысячи рублей.

    Выбор платформы

    Есть три основных дистрибутива: Raspbmc , XBian и . Принципиально отличается в данном случае последний - это традиционный дистрибутив для встраиваемых систем, поэтому работа с ним напоминает альтернативные прошивки для роутеров. Выбор дополнительного ПО ограничен, и ковыряться во внутренностях будет не очень комфортно. С другой стороны, это более стабильное решение.

    Выбор между Raspbmc и XBian уже более сложный. Оба являются полноценными дистрибутивами, оба имеют схожий функционал, но отличаются философией. Raspbmc - аккуратно собранный XBMC поверх Raspbian, из которого было выброшено все лишнее. XBian - проект, фокусирующийся на bleeding edge, что приводит к модификации отдельных пакетов относительно стандартного Raspbian. Советую попробовать оба, но лично я выбрал Raspbmc - более старый проект, к тому же использующий пакетную базу Raspbian, поддерживаемую огромным сообществом.

    Установка и настройка Raspbmc

    Здесь все до боли прямолинейно. Для пользователей Windows доступен специальный установщик . Пользователям *nix и OS X доступен простой скрипт на Python:

    Curl -O http://svn.stmlabs.com/svn/raspbmc/testing/installers/python/install.py chmod +x install.py

    При установке доступно несколько опций: можно выбрать установку на флешку (с загрузочным разделом на карточке) и прописать настройки сети. На последнее стоит обратить внимание, если планируется использовать Wi-Fi. Дело в том, что сама установка будет вестись полностью автономно: как только ты вставишь готовую карточку в Raspberry и подключишь машинку к питанию, система подсоединится к серверу и начнет качать необходимые файлы и проводить настройку. Примерно через двадцать минут ты получишь готовую систему и стартовый экран XBMC. При первом запуске система будет заметно подтормаживать - дело в том, что на этом этапе в фоне будут загружаться стандартные плагины. Поэтому лучше подождать еще минут пятнадцать, прежде чем предпринимать какие-то дальнейшие шаги. И после этого начинается самое интересное.

    Немного поговорим о том, на что стоит обратить внимание в свежеустановленном XBMC. По умолчанию в разделе приложений доступна утилита для выставления настроек, специфичных для Raspberry, Raspbmc Settings. Здесь выставляются настройки сети, параметры обновлений и многое другое.

    Стоит обратить внимание на параметры разгона процессора. Как известно, RPi можно разгонять до 1 гигагерца, и, по словам разработчиков, это не навредит чипу. Однако работа карточки при этом может быть нестабильной, и при максимальном разгоне очень велика вероятность, что целостность данных будет нарушена и система просто перестанет загружаться. Придется все переустанавливать. Чтобы этого избежать, лучше использовать более щадящие режимы разгона либо устанавливать систему на флешку.

    В остальном - работа с XBMC довольно очевидна. Процедуры установки плагинов, добавления файлов в библиотеки и выбора настроек, думаю, описывать не стоит. Перейдем к более интересным вещам.

    Лезем под капот: несколько интересных трюков для медиацентра
    AirPlay в XBMC

    AirPlay - это стандарт для потокового вещания аудио и видео на устройствах Apple. В последней версии XBMC была добавлена начальная поддержка этой технологии, но по умолчанию она выключена. Чтобы включить ее, зайди в System -> Services -> Airplay. Теперь ты сможешь передавать таким образом музыку с яблочных устройств. Видео тоже работает, но крайне нестабильно. Пользователи Android могут использовать для AirPlay плеер DoubleTwist .

    Дополнительные источники плагинов

    По умолчанию в XBMC включен только один репозиторий. Чтобы добавить сторонний, как правило, нужно просто подсунуть соответствующий файл. Например, есть репозиторий Seppius, специализирующийся на аддонах для русскоязычного контента, - его файл можно . Увы, качество многих аддонов невелико, но что-то интересное найти можно.

    Убираем ненужное

    Для последующих трюков потребуется вернуться в Raspbmc Settings и посмотреть раздел сервисов: System Configuration -> Service Management. Во-первых, нам понадобится cron. Во-вторых, в большинстве случаев можно отключить сервер Samba и FTP, хотя ресурсов это, конечно, много не высвободит. Далее подключимся к нашему медиацентру по SSH. Логин - pi, пароль - raspberry.

    Как уже говорилось, использовать Raspberry при работающем XBMC (да и вообще) для закачки торрентов - неблагодарное занятие. Тем не менее, если NAS ставить не хочется, можно пойти на некоторые хитрости. Flexget - это система, способная автоматизировать поиск торрентов, формировать очередь для Transmission и делать все это по cron’у. Таким образом, запускать поиск серий можно в ночное время. Установка проста:

    Sudo apt-get install python-pip sudo pip install flexget sudo easy_install transmissionrpc

    Про возможности FlexGet можно было бы написать огромную статью. С его помощью можно задавать любые параметры раздач, включая качество, размер, релиз-группу. Доступна интересная интеграция с IMDB: если занести фильм в список для просмотра (watchlist) на сервисе, FlexGet добавит его в свою очередь и пойдет искать при первой возможности. Заинтересовавшимся стоит обратить внимание на официальный cookbook и примеры конфигураций . При желании систему можно постоянно расширять дополнительными правилами, получая все более умную качалку. Однако FlexGet с его конфигом на YAML - это Emacs мира качалок, и, чтобы пользоваться им, нужно быть готовым к чтению документации (хотя это и не так сложно). Более простое решение - , но и возможностей у этой тулзы значительно меньше.

    Beets

    Когда выводишь музыкальный плеер на большой экран, корявые теги и отсутствие обложки начинают заметно раздражать. Для таких случаев придуман beets - как называет его автор, инструмент организации аудиотеки для маниакально одержимых аудиофилов. В основе программы лежит довольно популярная и мощная библиотека mutagen, часто используемая в таких сценариях. Установка проходит аналогично тому, что мы делали с FlexGet:

    Sudo apt-get install python-pip sudo pip install beets

    После этого нужно провести начальную конфигурацию. Создадим нужные файлы:

    Mkdir -p ~/.config/beets touch ~/.config/beets/config.yaml mkdir -p ~/.data/beets/ touch ~/.data/beets/musiclibrary.blb nano ~/.config/beets/config.yaml

    Базовый конфиг можно сделать, например, такой:

    Directory: /media/HD/Music/ # путь до медиатеки library: ~/.data/beets/musiclibrary.blb import: move: yes copy: no

    В таком случае beets будет записывать все изменения прямо в файлы, а не копировать файлы с новыми тегами в отдельную папку. За дальнейшими опциями проследуй в документацию . По словам автора, вариантов конфигураций «примерно 6 миллионов». Наконец, для того, чтобы начать прописывать теги, можно тупо вбить:

    Beet import /media/HD/Music/

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

    MPD

    Увы, встроенный функционал XBMC для работы с музыкой оставляет желать лучшего. Плагин работает очень медленно, и обновление библиотеки занимает очень много времени. Лучше делегировать задачу MPD - очень продвинутому музыкальному решению, хорошо знакомому хардкорным юниксоидам. MPD - это настоящий музыкальный сервер. В его ведомстве будет находиться поддержание медиатеки. Если заниматься тегами тебе не хочется, то поиск арта и текстов песен также можно отдать на откуп MPD. В свою очередь, в XBMC доступен плагин, позволяющий подключиться к MPD. Точно так же к твоему серверу сможет подключиться любое устройство в доме - например, для Android доступен отличный плеер MPDroid .

    Установим наш сервер и сделаем простейшую конфигурацию:

    Sudo apt-get install mpd cp /usr/share/doc/mpd/mpdconf.example ~/.mpdconf mkdir -p ~/.mpd/playlists touch ~/.mpd/{database,log,pid,state} nano ~/.mpdconf

    Укажем созданные служебные файлы в конфиге. Для этого нужно изменить следующие строчки:

    Music_directory "/media/HD/Music" playlist_directory "/home/USER/.mpd/playlists" db_file "/home/USER/.mpd/database" log_file "/home/USER/.mpd/log" pid_file "/home/USER/.mpd/pid" state_file "/home/USER/.mpd/state"

    Как только ты закончишь, можешь протестировать, набрав в консоли mpd. После этого вбей настройки в плагин XBMC.

    Больше статей о RPi

    Тема - Raspberry Pi. Мы взяли интервью у Эбена Аптона, одного из создателей RPi и сделали на базе мини-компьютера систему видеонаблюдения и шпионскую закладку, которая может незаметно собирать данные из исследуемой сети.

    Если вам нужно устройство для передачи музыки, видео и фильмов на другие ваши устройства без больших расходов, то отличным решением может стать Raspberry Pi. Вы можете использовать для этого компьютер, и это наиболее популярный вариант, но если вы хотите что-то более интересное, то можно использовать Raspberry Pi. Он отлично сочетается со свободным медиацентром Kodi.

    В этой статье мы рассмотрим как сделать домашний медиацентр Raspberry Pi 3, как установить на него Kodi и полностью подготовить медиацентр к работе.

    Нам нужно не так много для создания медиацентра Raspberry Pi. Вот все основные компоненты:

    • Микрокомпьютер Raspberry Pi Model B + или более новой версии;
    • Дополнительный Wifi модуль для устройств версии ниже Raspberry Pi 3;
    • Кабель HDMI для подключения к экрану;
    • Блок питания по USB мощностью 2A;
    • Флеш-карта MicroSD на 8 Гб или более.

    Кроме того, вам понадобится компьютер, с помощью которого вы можете загрузить желаемую операционную систему и записать ее на карту памяти. Если все это у вас есть, мы можем приступить к дальнейшей настройке.

    Создание медиа центра Raspberry Pi 3

    Raspberry Pi - это дешевый, но в то же время достаточно мощный для своей цены микрокомпьютер. Последняя на данный момент версия имеет 64 битный процессор ARMv8 с тактовой частотой 1,2 ГГц, встроенный адаптер Wifi и Bluetooth 4.1. Raspberry может более-менее нормально работать в качестве настольной операционной системы. Конечно, игры на нем вы не поиграете, но просматривать сайты интернета вполне можно.

    В качестве программного обеспечения для организации медиаплеера мы будем использовать проект с открытым исходным кодом - Kodi. Есть несколько способов установки Kodi на ваше устройство.

    Установка Kodi на Raspbian

    Если вы уже установили на него какую-либо операционную систему, например, Raspbian, то вы можете установить этот пакет из официальных репозиториев:

    sudo apt-get install kodi

    sudo nano /etc/default/kodi

    Найдите строчку ENABLED и установите значение 1. Также вы можете запустить Kodi сразу, выполнив в командной строке:

    Установка операционной системы с Kodi

    Если вы собираетесь использовать только медиаплеер Raspberry Pi 3 и вам больше не нужны никакие другие возможности операционной системы, то будет лучше установить специально разработанную для него операционную систему.

    Kodi используется в двух операционных системах, это OpenELEC и облегченная версия OSMC. Вы можете загрузить образ OpenELEC из официального сайта openelec.tv, официальный сайт OSMC тоже созвучен osmc.tv. Также вы можете скачать набор программного обеспечения Noobs и выбрать нужную операционную систему из списка.

    Если вы решили скачать операционную систему отдельно и устанавливать ее вручную, вам понадобится записать ее на флешку. Если вы используете Windows, то можете воспользоваться программой Formatter SD Card и Win32DiskImager для записи системы на флешку.

    Выберите правильную букву диска флешки, а затем выберите "Option" и установите галочку напротив "Full (Erase)" , затем нажмите "Ok" и "Format" . После форматирования запустите Win32DiskImager, выберите образ и нажмите "Write" :

    Если вы используете Linux, то для записи можно применить утилиту dd. Просто выполните:

    sudo dd bs=4M if=файл_ораза.img of=/dev/sdb

    Здесь /dev/sdb - это файл вашей флешки в системе. Указывать нужно именно флешку, потому что мы пишем на нее, а не на раздел. Когда флешка будет записана, можете вставить ее в Raspberry Pi. При следующей загрузке Kodi будет готов к использованию.

    При установке системы из архива Noobs вам будет достаточно записать его на флешку, а затем после загрузки выбрать нужный образ из списка и дождаться завершения установки:

    Настройка и использование Kodi

    Очень удобным будет наличие USB клавиатуры, с помощью которой вы сможете управлять интерфейсом Raspberry. Большинство стандартных сочетаний клавиш будут работать и на Raspberry Pi. В современном Raspberry Pi 3 можно использовать также Bluetooth клавиатуру.

    Также у вас есть еще одно решение для управления. Это мобильное приложение для Android - Kodi Remote. Его можно найти на сайте XBMC Foundation.

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

    Предполагается, что вы будете использовать Wifi для транслирования видео на такие устройства, как телевизор, компьютер, планшет или смартфон. Но если устройство размещено далеко от роутера то с сигналом могут возникнуть проблемы, поэтому, возможно, вам придется использовать шнур Ethernet.

    Обычно, звук передается по HDMI, но если у вас есть сложная акустическая система, то, возможно, вы захотите чтобы она тоже получала объемный звук. Для этого нужен разъем 3,5 мм. Но чтобы получить хороший звук таким способом вам понадобится внешний звуковой модуль. Можно выбрать один из доступных аудио модулей для USB.

    Кроме того, вы можете добавить пульт дистанционного управления по USB, если не хотите использовать мобильное приложение.

    Также нужно отметить, что для Kodi существует множество различных дополнений, которые вы можете использовать. Но старайтесь устанавливать только то, что вам нужно. Чем больше дополнений вы установите, тем медленнее будет работать устройство.

    Выводы

    Собрать домашний медиацентр Raspberry Pi 3 может быть не так просто. Но при наличии всех компонентов можно справиться не более чем за час. После того как Kodi будет установлен вы можете настраивать его, добавлять необходимые расширения и добавлять аппаратные дополнения для Raspberry. После всего этого, ваш микрокомпьютер сможет иметь все те же возможности, что и у очень дорогих и сложных акустических систем.