Своими руками: устанавливаем AirVideo server в Linux

Я не знаю как у вас, а у меня домашняя сеть гетерогенная, что я считаю скорее ее достоинством. Это ставит передо мной интересные вопросы. Например, мне полюбилась программа AirVideo, которой мы пользуемся на iPad-ах и реже, — на iPhone. Появление недавно в семье медиа-приемников Apple TV дало новый толчок к использованию программы — я теперь могу перенаправлять видео на телевизор, не охваченный существующей уже кабельной сетью. Схема кажется немного странной: с сервера видео отправляется на iPhone, который, в свою очередь, отправляет все на Apple TV и подключенный к нему телевизор. Но все это сделано удобно и просто, так что сложности нет, есть магия.

Но в качестве основного сервера в моей сети выступает небольшой бокс, на котором крутится одна из последних версий Ubuntu. Это поставило передо мной вопрос, как его использовать для целей стриминга, ведь официальные версии AirVideo server есть только под Mac и Windows.

👌 В телеграм-канале «Лайфхакер» лучшие статьи о том, как сделать жизнь проще.

Но оказалось, что есть вполне рабочая, но неподдерживаемая версия под Linux. Но для того, чтобы ее запустить, нужно немного пошаманить. Количество шагов невелико, так что я предлагаю не опасаться: это не сложно.

  • Скачайте AirVideoServer for Linux. Подразумевается, что java на вашем linux-боксе есть.
  • Выложите его в каталог, из которого будет производиться запуск. Скажем /home/%username%/AirVideo
  • Скачайте исходный код измененного (это важно) ffmpeg.
  • Распакуйте его в подходящую папку, я предлагаю — в подпапку вашего AirVideo Server, так вы точно не разрушите основную версию, которую используют многие программы в Linux, по моей логике — /home/username/AirVideo/ffmpeg. Пуристы от Linux могут выбрать более подходящее место, но я не решаюсь переносить что-то в альфа-стадии в основной «репозиторий» программ.
  • Постройте бинарники.:
  • Откройте консоль
  • Скачайте все необходимые библитотеки (выполните команду sudo apt-get install для следующих библиотек: libmp3lame-dev, libfaad-dev, libx264-dev, mpeg4ip-server, git-core, pkg-config
  • Перейдите в каталог с нашим ffmpeg. В консоли это будет выглядеть так: cd /home/username/AirVideo/ffmpeg
  • Запустите команду ./configure —enable-pthreads —disable-shared —enable-static —enable-gpl —enable-libx264 —enable-libmp3lame —enable-libfaad —disable-decoder=aac чтобы создать правильную конфигурацию и
  • Запустите процедуру командой make
  • Создайте файл настроек. Предлагаю положить его в каталог с AirVideo Server. Назвать его логичнее AirVideoServer.properties, но это неприципиально.
    Содержание у него нехитрое:
    path.ffmpeg = /home/alex/AirVideo/ffmpeg/ffmpeg
    path.mp4creator = /usr/bin/mp4creator
    path.faac = /usr/bin/faac
    password =
    subtitles.encoding = windows-1251
    subtitles.font = Verdana
    folders = Movies:/media/Movies, Series:/media/Series

    Разберемся со строчками.
    path.ffmpeg должен указывать на ffmpeg, который вы построили в предыдущем шаге. Две следующие строчки показываются, где находятся стандартные программы, для моей версии Ubuntu пути правильны, но могут отличаться в вашем случае. Мы не задаем пароль, зато задаем как кодировать субтитры (если они вам нужны). Затем задаем шрифт субтитров и в последней строчке — список папок с вашими видео-коллекциями.
  • Осталось запустить ваш сервер и убедиться, что он работает.
    java -jar /home/alex/AirVideo/AirVideoServerLinux.jar /home/alex/AirVideo/AirVideoServer.properties
  • Из-за отсутствия Bonjour (которое тоже лечится, но это уже не в тему) вам придется добавить ip вашего сервера вручную.

Вуаля — iPhone видит списки файлов, более того — проигрывает их. А сервер «на ходу» превращает практически любое видео в формат, понятный для iOS устройств.

Я оставляю на ваше усмотрение игры с настройкой размера и качества видео в самой программе AirVideo. Еще один момент, который я для себя не решил — как лучше организовать авто-запуск и авто-остановку сервиса при загрузке и выключении системы. Поэтому попрошу описать лучший метод в комментариях к этой заметке для всеобщего блага.

Если у вас возникнут вопросы, я постараюсь ответить на них по мере сил.

Это упрощённая версия страницы.

Читать полную версию
Если нашли ошибку, выделите текст и нажмите Ctrl + Enter
Alexey Rubtsov
21.09.11 18:21
2. Вот я и говорю — разные запросы 5.4 я этим не зарабатываю. 5.2.1 30% я получу бесплатно, отчего же не заморачиваться, — это много. 6.1.2 коробочку можно, у меня она есть. Но это не подключит остальные устройства — то есть сервер по-прежнему нужен. 6.1.3 я бы не назвал альтернативой — просто названия разные. :)
Vladimir Karabanov
21.09.11 20:22
2. я плохо представляю как можно сделать фоток на 150Гб (и вообще зачем?) 5.4. потратить кучу времени чтоб потом показать одному-двум человеку 5.2.1. не бесплатно а за стоимость жесткого диска. ну и обязательно через контроллер. прорамный рейд - большая нагрузка на проц. 6.1.2. да-да это самый важный вопрос: зачем остальные девайсы, если коробка проигрывает все видео сама? 6.1.3. альтернатива: -10 к дизайну, зато цена минимальная. кому что нарвитсо.
Alexey Rubtsov
21.09.11 21:40
2. Увлечения бывают разные, да и форматы файлов — тоже ;) 5.4 ну нет, не одному-двум, отнюдь :) 5.2.1 Диск стои мало, к тому же его можно не учитывать: его и в случае контроллера нужно получать. А поддержка RAID, причем аппаратная есть во многих «мамах» сейчас, потому как простые контроллеры — копеечное дело. 6.1.2 я уже описывал кейсы: потому что хочется и на диване, или на втором этаже кровати, не беспокоя других посмотреть что-то. Хотя бы. К тому же коробочка все равно с чего-то проигрывает, то есть не отменяет сервера в той или иной форме, вот в чем дело-то. 6.1.3 ну не знаю, минипк будет стоит, я думаю, дешевле даже ноута без экрана... Мой довольно мощный — 2 ядра + HT, ION2, но он стоил дешевле слабых нетбуков... что логично.
Алексей Роза
16.08.15 18:29
Здравствуйте! Нашел Вашу статью, как раз по ситуации: пересел на Ubuntu 14.04 и хочу запустить AirVideo. Подскажите, пожалуйста, делаю по инструкции - не взлетает! Во -первых не установил библиотеку mpeg4ip-server. Получаю Не удалось найти пакет mpeg4ip-server. Потом Вы пишете Постройте бинарники.: Как это сделать? Видимо из-за этого команда make у меня не проходит. Получаю: notebook@notebook-K53SD:~/Документы/AirVideo/ffmpeg$ ./configure –enable-pthreads –disable-shared –enable-static –enable-gpl –enable-libx264 –enable-libmp3lame –enable-libfaad –disable-decoder=aac Unknown option "–enable-pthreads". See ./configure --help for available options. notebook@notebook-K53SD:~/Документы/AirVideo/ffmpeg$ make Makefile:1: config.mak: Нет такого файла или каталога Makefile:85: /common.mak: Нет такого файла или каталога Makefile:118: /libavutil/Makefile: Нет такого файла или каталога Makefile:184: /doc/Makefile: Нет такого файла или каталога Makefile:185: /tests/Makefile: Нет такого файла или каталога make: *** Нет правила для сборки цели `/tests/Makefile'. Останов. Подскажите, как быть? Я новичок, только постигаю Линукс. Спасибо!
Читать все комментарии