Так давайте же выложим её здесь. А то мало ли когда удалят.
Техническая сторона вопроса
Какой минимальный набор нам понадобится для проведения трансляции?
1. Камера.
Камера телефона/сматрфона, web-камера, CCTV камера, профессиональная видеокамера и т.д.
2. Устройство захвата
Карта захвата аналогового видео composite, component или цифрового - HDMI, SDI. Устройство захвата может и отсутствовать, если камера сама формирует необходимый поток для кодера, например web-камера.
Если вы используете стационарный компьютер, то это позволит вам использовать широкий спектр оборудования, внешние и внутренние карты захвата. Если ноутбук, то только внешние, если у вас не имеется слота для expresscard.
Самым простым вариантом для ноутбука является использование USB карты захвата аналогового сигнала, или USB TV тюнера с возможностью захвата. Желательно, чтобы на карте были и аудио входы, чтобы не пришлось использовать отдельную внешнюю аудио карту, для захвата звука.
Хочу сразу обратить внимание, что почти все карты захвата, которые работают по USB 2.0, могут захватывать только SD видео (Standard-definition) с разрешением 720х576. Для захвата видео в HD качестве, существует лишь несколько устройств USB 2.0. Это специфические карты, например Roxio Game Capture HD Pro, Elgato Game Capture HD. Эти карты имеют встроенный h264 кодер, который предварительно сжимает HD поток до такой величины, чтобы хватило пропускной способности шины USB 2.0, затем этот поток обрабатывает программное обеспечение, которое поставляется вместе с картой. Использовать стороннее ПО для захвата видео с этих карт не получится, только своё проприетарное. Соответственно, вещать потоковое видео с таких карт можно будет только если разработчик предусмотрел такую возможность в своём ПО, и только на те сервисы, которые есть в данном ПО. Есть несколько карт USB 3.0, которые позволяют захватывать HD видео в любом ПО, но они стоят приличных денег (например Blackmagic Intensity Shuttle) и обладают не 100% совместимостью с различными USB 3.0 контроллерами. Поэтому если вы планируете использовать подобную карту, необходимо уточнять по таблицам (на сайте производителя) совместимость вашей аппаратной платформы и данной карты.
В случае использования HD карт захвата PCI или PCI-E для стационарных компьютеров всё гораздо проще. Можно брать практически любую карту, и она будет прекрасно работать с большим числом различного программного обеспечения.
Отдельно стоит сказать про производительность ноутбука. Нетбуки на базе процессоров Atom не справятся с Real-Time кодированием видео, можно даже не пытаться. Если разрешение не выше 640х480, то подойдёт старенький Core 2 Duo, или новые Core i3. Если вы планируете вещать в полном SD разрешении 720х576, то следует использовать ноутбук с процессором Core i5, в случае HD видео, только Core i7. К сожалению пока не существует потоковых (RTMP) программных кодеров использующих технологии CUDA, intel quick sync или AMD OpenCL, поэтому всё кодирование осуществляется только за счёт вычислительной мощности CPU.
3. Кодер (аппаратный, программный)
В качестве аппаратного кодера могут выступать готовые устройства различных производителей. Например Cerevo LiveShell, Livestream Broadcaster, MiniCaster, Teradek Cube, Teradek VidiU. Все они содержат в своём составе устройство захвата, т.е. к ним можно напрямую подключать видеокамеру по аналоговому входу или по цифровому, в зависимости от наличия таковых на устройстве.
Программный кодер - это чаще всего компьютер или ноутбук с установленной программой для кодирования. Поток, который приходит с карты захвата, кодируется кодеком (самые распространенные h264 и VP6) и отправляется на сервер вещания.
Самая распространенная программа для кодирования потокового видео это Adobe Flash Media Live Encoder. Можно пользоваться и другим ПО, например Wirecast, XSplit. Либо тем ПО, которое предлагают сервисы вещания: UstreamProducer, LivestreamProcaster и т.д. Данное ПО предлагает большой набор дополнительных функций, например наложение титров, работа с несколькими камерами (устройствами захвата), показ фотографий и видео роликов. Если же вам эти функции не нужны, то рекомендую пользоваться Adobe Flash Media Live Encoder.
4. Доступ в интернет
Если есть кабельная сеть или wi-fi, то лучше использовать их. В противном случае остаются сети мобильного доступа 3G или 4G. Для использования мобильных сетей, можно пользоваться либо соответствующим модемом, либо смартфоном в режиме модема (сетевой карты). На сетях 3G, при благоприятных условиях, можно добиться исходящей скорости порядка 1.5mbit/s чего уже более чем достаточно для вещания. Сети 4G обеспечивают ещё большую скорость, так что если в вашем регионе имеется 4G провайдер, предпочтительнее использовать его.
Важный момент. Прежде чем организовывать видео вещание, необходимо провести разведку на местности по поводу доступа в интернет. Если есть кабельный доступ или wi-fi, то Вам повезло. Если нет, то нужно измерить ИСХОДЯЩУЮ скорость 3G или 4G, если скорость будет ниже 512 kbit/s то про видео вещание можно забыть. Конечно, можно, сделать трансляцию и на 128 kbit/s, но врят ли вам кто-то скажет спасибо, за такое качество. Скорость 512kbit/s позволит сделать вполне сносное вещание с параметрами: видео 480х270/25fps (или 512х288/25fps) с потоком 416 kbit и звук 2ch 44.10KHz с потоком 96kbit.
Здесь же особое внимание хочу уделить звуку. Хороший, качественный звук, это залог успеха. Какая бы хорошая у вас ни была картинка, но если при этом у вас отвратительный звук, с перегрузкой, с бубнежом, с эхом и т.д., зритель просто закроет трансляцию через несколько минут просмотра. Поэтому, уделите звуку особое внимание. Если вы вещаете с устройства, которое не может обеспечить хороший звук, например с веб камеры, попробуйте взять звук с отдельного внешнего микрофона (понадобится аудио карта с микрофонным входом) или даже непосредственно с аудио пульта (линейный вход аудио карты). Это будет хороший вариант.
Однако лучший вариант, как показывает опыт, это использование направленного микрофона-пушки. Такой микрофон обеспечит качественный звук и главное, позволит слышать реакцию зала (в отличие от использования сигнала с аудио пульта). Понятно, что использование такого микрофона, удовольствие не дешёвое (цены начинаются от 300$, за какой нибудь Rode NTG-2), но оно того стоит. Если внешнего микрофона у вас нет, или он вам не по карману, используете встроенный в видеокамеру микрофон (если вы вещаете с бытовой видео камеры). Встроенный микрофон камеры, как ни странно, обеспечивает вполне хорошее качество звука, и этого будет более чем достаточно для вещания.
5. Сервер для потокового видео вещания.
В качестве сервера для вещания имеет смысл использовать бесплатные сервисы , которых большое количество в интернете:
www.ustream.tv,
www.livestream.com, yatv.ru, smotri.com и многие другие.
Можно, конечно, создать свой сервер. Но понадобится довольно широкий канал в интернет, для обеспечения необходимой пользовательской нагрузки, и само собой внешний IP адрес.
Перейдём к практическим примерам в порядке возрастания качества вещания.
1. Использование смартфона.
Фактически кроме смартфона, нам ничего больше и не требуется. Он и камера, и кодер, и модем для доступа в интернет. Выбираем сервис вещания, который представлен на
https://play.google.com или на
http://store.apple.com, устанавливаем ПО этого сервиса, регистрируем свой канал, и начинаем вещание. Качество, уж как повезёт. Если у вашего аппарата приличная камера и микрофон, то будет более менее. Скорость интернета стоит предварительно измерить программой SpeedTest. Опять же придерживаемся правила, если скорость ИСХОДЯЩАЯ меньше 512kbit/s, то лучше не вещать.
2. Web-камера + ноутбук.
С хорошей web-камеры можно добиться приличной картинки, а использование ноутбука не ограничит вас в выборе разрешения или частоты кадров. В качестве программного обеспечения можно использовать что угодно, либо Adobe Flash Media Live Encoder, либо ПО которое предлагает сам выбранный вами сервис вещания, либо продукты сторонних разработчиков Wirecast, XSplit и т.д.
3. Видео камера + карта захвата + ноутбук.
Этот вариант является самым универсальным и лучшим по соотношению цена/качество. Видео камера обеспечит хорошее качество изображения и звука, а ноутбук позволит вещать в максимально возможном разрешении и скорости потока, в зависимости от скорости вашего интернета и возможностей карты захвата.
Чаще всего в качестве карты захвата используют USB карточки, типа EasyCAP
Если же хотите сделать вещание в HD, то вам понадобится внешняя карта захвата из тех что указаны во втором разделе. Или PCI/PCI-E карта, но тогда придётся использовать обычный компьютер, а не ноутбук.
4. Видео камера + аппаратный broadcast энкодер
Это решение является лучшим по качеству, но в тоже время самым дорогим (от 495$). Существует ряд устройств: Cerevo LiveShell Pro, Livestream Broadcaster, MiniCaster, Teradek Cube, Teradek VidiU и т.д. которые позволяют вещать в SD или HD качестве, без использования компьютера. Всё что вам нужно, это камера, broadcast энкодер и интернет (в некоторые устройства можно напрямую подключать USB модемы).
5. Несколько видео камер + видео пульт + аппаратный или программный энкодер
Это решение проф. класса, для организации трансляции концертов, конференций. Включает в себя множество специфического оборудования, это могут быть беспроводные передатчики видео, SDI-HDMI конверторы и дополнительный аудио микшер, для диктора и фонограмм и т.д.
Какое оборудование используем мы?
На текущий момент мы можем вещать с нескольких камер с использованием видео микшера в SD качестве.
Либо с одной камеры в HD качестве с использованием аппаратного broadcast энкодера Teradek VidiU