Как стать автором
Обновить

Комментарии 58

Сорри за офтом, но не было ли опыта работы с амазоновским стримингом и jQPlayer? И насколько это вообще возможно?
jQPlayer тот что я использовал годится только для проигрывания видеофайла, для стримминга он не подошел. В сторону амазона не смотрел.
Есть clip-bucket уже готовый, и для него есть готовые virtual appliances
Спасибо, скачаю на досуге, тоже инетерсная CMS. cumulusclips простая, наращивать проще было, не было лишнего ничего. Из него я только подчерпнул
nohup

для выполнения скрипта в фоне… а все остальное обычная cms c шаблонами.
nohup не для выполнения скрипта в фоне, а для игнорирования сигнала HUP.
Видимо, автор имел ввиду запуск nohup <scriptname>&
Все именно так. Спасибо за поправку
Где-то на Хабре видел отличную статью про сборку пакета из исходников. Найти бы…
Вот собственно для Debian
./configure
make
checkinstall -D --install=no
dpkg -i пакет.deb
Конечно слышал и успешно использую… чем Вас так задел данный метод?
Не придираюсь к Вам, но, например, вы качали исходники Nginx, хотя можно было бы выполнить apt-get source nginx.
Не замечал в репах последних версий nginx.
Так ведь и PHP там не самый последний, но вы его почему-то не собирали из исходников.
PHP 4.9, действительно не последний… просто в php модулей дополнительных не надо. А nignx брал для теста самый последний
Вы взяли на себя смелость учить людей. Учите хорошему, не надо учить плохому.
На сайтe nginx сами предлагают сборку пакета из сорцов с необходимыми модулями
Где?
nginx.org/en/docs/configure.html — Здесь, если бы этого не было… то действительно я бы написал что то ужасное
Это информация для разработчиков, мейнтейнеров, и вообще всех желающих. Это не в коей мере не является какой-либо рекомендацией, а дана исключительно в справочных целях, подразумевается, что человек отдает отчет в своих действиях и знает наилучший способ установки ПО в своей системе. Сайт nginx.org посвящен отнюдь не deb-based системам и азам администрирования, и даже не операционным системам вообще, а конкретно отдельно взятому ПО.

Есть и другая страница: nginx.org/ru/docs/install.html — причем последний пункт на ней, как и nginx.org/en/docs/configure.html не отменяет необходимых процедур для конкретной системы пользователя, а рассматривает лишь отдельно взятый процесс, касающийся непосредственно предоставляемого продукта.
Да я не спорю, я пытаюсь Вам объяснить что собирал именно так, как меня научил «гугл» и «яндекс» )))
Предлагают собирать не значит что нужно собирать для всех и вся. Да и для бинарных дистрибутивов из сырцов собирать ПО как-то не правильно.
В сборке из исходников нет ничего плохого, но нужно понимать, что мэйтейнеры уже проверили пакет на совместимость и стабильность работы, а вы, беря последнуюю версию и думая, что она стабильная, можете неожиданно словить нестабильное поведение. Поэтому собирать можно, почему нет, но исходники для сборки лучше качать из репозитория пакетного менеджера.
Стабильная 1.4 стоит на другом серваке… а это чисто для тестов. Если честно, словил уже несколько багов, но пока выясняю...nginx ли это
Это он у Вас для тестов, а народ, прочитав статью, кинется повторять всё за Вами :) Поэтому лучше каждый шаг выверять заранее.
Для текущей цели работает на ура
В сборке нет, а установка в обход пакетного менеджера — просто способ превратить систему в помойку.

мэйтейнеры уже проверили пакет на совместимость
Это заблуждение. В репах дебиана вы запросто можете обнаружить nginx собраный с несовместимыми между собой сторонними модулями, или ломающими какую-то основную функциональность. Регулярно в рассылку приходят люди с разными странными багами в nginx-full, вызванными сторонними модулями и патчами, которых не наблюдается в оригинальном nginx с nginx.org.

Мы полгода не могли добиться, чтобы в репах убунты исправили критический баг, приводивший к падениям на типичных конфигурациях. При том, что был предоставлен патч, была выпущена исправленная версия, а все ответственные были проинформированы. И такая ситуация возникает очень часто. А последнюю критическую уязвимость в репах дебиана (и соответственно убунты) исправили только месяца 3 спустя. С более мелкими багами люди и вовсе живут годами только по причине той политики, которой придерживается их дистрибутив.

Единственно проверенный код и пакеты лежат на nginx.org/en/download.html — все остальное может содержать что угодно. Мейнтейнеры дистрибутивов чаще всего ничего не понимают в исходниках nginx, и не способны оценить качество того или иного стороннего патча или модуля, который они накладывают. А критические уязвимости и баги исправляют по мере наличия свободного времени.
Да ладно сборка из сорцов, Валентин, вы на конфиг посмотрите, его же без слез нельзя читать.
ffmpeg deprecated, юзаю avconv и вам посоветовал бы.
Про avconv знаю, но меня подбило другое. Насколько я понял, nginx-rtmp-module поддерживает только ffmpeg и получается я в будущем не смогу запускать видео в поток по требованию.
Нет, я сам только вчера собирал. Для сборки модуля более не нужен ffmpeg(теперь поддержка HLS нативна), а с чем дальше работать модулю — уже дело вкуса.
P.S. Так и не нашел где он у вас используется
Статью не стал раздувать… в cumulusclips по умолчанию уже вшиты несколько строчек обработки видео.
И еще трансляцию разрезаю по битрейтам — вот пример
ffmpeg -i "rtsp://10.1.2.71/play1.sdp" -threads 2 -vcodec libx264 -preset UltraFast -rtbufsize 10000k -analyzeduration 0 -tune zerolatency -s 640x480 -acodec libmp3lame -ab 24k -ar 44100 -f flv "rtmp://127.0.0.1/live/it"
Завтра обязательно avconv заюзаю, снова только маны читать) каждая версия ffmpeg каждый релиз приподносила все новее и новее сюрпризы
чем avconv лучше ffmpeg? в плане производительности
Я читал где то, что компания разделилась и avconv уже больше к коммерческой версии
 $ dpkg -l | grep ffmpeg
ii  ffmpeg      6:0.8.5-1    amd64    Multimedia player, server, encoder and transcoder (transitional package) 
 $ ffmpeg 
ffmpeg version 0.8.5-6:0.8.5-1, Copyright (c) 2000-2012 the Libav developers
  built on Jan 13 2013 12:05:48 with gcc 4.7.2
*** THIS PROGRAM IS DEPRECATED ***
This program is only provided for compatibility and will be removed in a future release. Please use avconv instead.
Hyper fast Audio and Video encoder
usage: ffmpeg [options] [[infile options] -i infile]... {[outfile options] outfile}...

Use -h to get full help or, even better, run 'man ffmpeg'
Видеохостинг на регэкспах и реврайтах. [x]
nginx кушает это безболезнено, апатч бы уже пыхтел как паровоз
Почему не использовали готовый медиасервер (adobe, wowza, red5 и тд)?
Основной причиной стала защищенность информации, полное отслеживание пользователей
nginx по умолчанию ставится без потокового модуля, поэтому ставим из сорцов

Аж передёргивает от таких слов. Автоматически получаем необходимость следить за критическими обновлениями nginx, неудобство при обновлении. Ну неужели у Debian based дистрибутивов нет какого-то простого механизма пересобрать нужный deb с отключением/включением параметров сборки?
Это было одной из причин ухода на Gentoo, ибо оказалось, что не обязательно в системе держать половину компонентов KDE, которые ставятся в Ubuntu в качестве зависимостей.
Почему нету? Есть, просто почему-то не все про них умудряются прочитать в документации.
Нужно подключить сорцовый репозиторий и собирать с какими угодно опциями:
apt-get source foo && apt-get build-dep foo && cd foo* && DEB_BUILD_OPTIONS="--enable-gui --enable-radio --disable-ivt" fakeroot debian/rules binary && dpkg -i ../foo*.deb

У нас тут даже свой emerge world apt-build world есть (:

А про необязательные зависимости: в aptitude по умолчанию включена опция «Устанавливать рекомендуемые пакеты». Если её отключить, то в системе окажется гораздо меньше неиспользуемых пакетов.
Спасибо, взял на заметку
нет, они живут по принципу, собрать как бог на душу положит, если бы у них была такая прекрасная вещь как USE и определение оптимизации сборки для порта. По этому я и сижу на gentoo уже давно.

По статистики не все админы знают, что такое мир, а некоторых ставит в ступор слово «пересобрать мир».
Ffmpeg не глючит? У меня постоянно в такой связке он сваливался
нет, не глючит, но если что то случалось, игра с битрейтами все решала
Приходите на Highload++ 2013 послушать, почему и когда выбранные вами решения не будут работать.
Все работает )) Слава кодерам
И повторюсь… система для узкой аудитории, 1500-2000 человек
этот подход затрещит по швам, когда потребуется стримить мультиязыковой мультибитрейт, потому что mod_mp4 рассчитан на обычный контент.
Ну так поделитесь правильными подходом!
основными тезисами хотя бы

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

Если вкратце, то выбранные вами решения не смогут эффективно раздавать мультибитрейтные мультиязыковые файлы.
дабы отбить все необоснованные нападки из серии «ты неправльно делал, чему ты других учишь!», думаю, стоит в начале и в конце статьи добавить оговорку, что всё это ЛИЧНЫЙ опыт и описание того, как человек делал, не найдя статей кричальщиков «я всё правильно сделал, учитесь-на!» :)
А может ктонить подсказать насчет этого момента?

«В файле auto/cc/gcc комментируем строчку:
#CFLAGS=»$CFLAGS -Werror"

Где найти этот файл?
Обнаружил неработоспособность php-ffmpeg из редакции 5.4, так что поддержка ONLY 5.3 из dotdeb
Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.