Собственный видеоархив

2010.12.22

Пытался недавно залить какие-то очередные моменты в YouTube, и получил сообщение о невозможности его сконвертировать.  Залил в Vimeo — там проблем не возникло, однако такая ситуация возникла не в первый раз, а ещё в предыдущий я подумал, что свой видеохостинг устроить не сильно сложнее, чем каждый раз возиться с существующим.  Да и вообще нехорошо слишком доверять свои данные кому-то.  Делюсь впечатлениями и результатом.

Прежде всего мне хотелось, чтобы это было HTML5 видео.  Попытался использовать встроенные в браузер элементы управления, но у каждого браузера есть свои проблемы.  Chrome, например, не умеет перематывать, индикатор прогресса у него всегда на 50%.  Нашёл VideoJS — отличный проигрыватель с поддержкой HMTL5, который умеет предлагать тупым браузерам Flash.  Вот пример видео:

Кодирование видео по началу не вызывало проблем.  Скриптами и командной строкой я давно не пользуюсь, т.к. есть Arista — прекрасный транскодер, по-маковски простой, но хорошо настраиваемый.  Однако вскоре проявились проблемы: после обработки десятка роликов может упасть, ограничение по ширине применяется без учёта соотношения сторон пикселей (иногда вместо 480 получалось 640 пикселей), ну и вообще для пакетной обработки плохо подходит: в screen не засунуть.

Оказалось, есть интересный недорогой сервис: Zencoder.  Умеет конвертировать почти всё в форматы, используемые в вебе и на мобильных устройствах.  Делает это быстро, через простой API, элементарно автоматизируется.  Платить надо за минуты выходного видео (довольно интересный подход).  Одна минута стоит 5 центов, минута HD видео стоит вдвое дороже.  Вроде недорого.  Весь мой видеоархив потянул на 504 минуты, это $25.20, что уже ощутимо, хотя средние «моменты» тянут на 10-15 рублей, что ерунда.

В качестве файлового хостинга я использую Amazon S3 и пока им доволен.  Лежит там не только видео, но и страницы, то есть весь сайт целиком.  Мне удобно.  Проблема с этим сервисом была лишь однажды, когда кто-то зачем-то скачал один подкаст 25 тысяч раз.  Это показало, как легко можно обанкротить какого-нибудь пользователя S3.

Из альтернатив я знаю петерхостовский тариф FAT.  Место там стоит 9.07-10.07 р/ГБ, что в два-три раза дороже Амазона (2.85-4.30), зато трефик не считается.  Всё моё видео сейчас весит 8.9ГБ, его хранение стоит 40 рублей в месяц.  Недорого для бэкапа на другом конце света, если не считать трафик.

Хочу попробовать держать всё это на домашнем сервере.  По наблюдениям за радио связь может один-два раза в день оборваться, но это именно обрыв, простой бывает только если я вытащил кабель.  Единственная проблема — хранилище для файлов: на большом шумном десктопе я их держать не хочу, а на «сервере» дискового пространства всего 32ГБ (флэшка), 4 из которых занимает музыка для радио.  Места хватит на всё, но не хочется рисковать ресурсом флэшки.

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

Следить за развитием событий можно через RSS ленту или почтовую рассылку.