Как сделать телеканал в интернете

Создание телеканала в интернете при помощи домашнего компьютера

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

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

Итак если вы хотите организовать собственный тв канал в интернете нам понадобится список необходимых для этого программ:

1 вариант (бюджетный и с самой низкой нагрузкой на машину) — VLC media player, acestream (torrentstream). Все будет работать и под Windows и под Linux.

2 вариант (только под Windows) — VLC media player, acestream (torrentstream), XSplit Broadcaster и/или VH Screen Capture driver, а также по желанию Virtual Audio Cable.

Приступим

Рассмотрим сначала более простой вариант но немного ограниченный в возможностях.

— Устанавливливае и запускаем Torrentstream с ним же сразу станет и VLC media player.
— Запускаем VLC(далее по тексту ВЛЦ).
— Добавляем в плейлист папку с видео которую вы хотите проиграть. (Сразу оговорюсь почему папку, в ВЛЦ есть глюк при добавлении нового потокового вещания в плейлист он начинает автоматически воспроизводить последнее добавленное, вместо того чтобы добавить его в очередь, поэтому если вы не хотите чтобы у зрителей на половине фильма началось новое кино лучше сначала сформировать папку с видео а потом запустить ее всю в поток и далее уже работать с плейлистом)
— В плейлисте правой клавишей мыши на папку с видео и выбираем — Поток.

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

— Далее если знакомы с вещанием в ВЛЦ настраиваем видео под себя (но обязательно в mpeg и с инкапсуляцией ts), а если нет тогда нажимаем два раза (следующий) пока не появится вот такое окно

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

— и вставляем туда вот такой текст:

Вкратце он означает что транслируемое вами видео будет иметь вид:
видео 1024х576, скорость передачи 1900
скорость потока аудио 96, частота 44100
dst=:8089 это порт на котором будет происходить вещание, можно поменять на произвольный.

— Итак потоковое вещание пошло. Чтобы его посмотреть и удостовериться что оно идет включаем еще один ВЛЦ и выбираем Медиа/Открыть URL/Сеть куда вводим http://(ваш ip адрес):8089/ если меняли порт вместо 8089 вставляете свой.
Пример: (http://93.70.212.105:8089/)

Такой метод выода трансляции универсален тем что в качестве видео материала можно использовать любой формат, но на перекодирование видео ВЛЦ тратит достаточно много мощности процессора, если вы хотите снизить затраты нужно до запуска трансляции перекодировать видео в любой мпег с устраивающими вас характеристиками и при запуске поставить инкапсуляцию mux=ts.
Пример кода для вещания в ВЛЦ:
:sout=#std

Минус чистого вещания в тако виде это ограниченное количество зрителей, поэтому переходим к запуску этой трансляции через торрент стрим.
Для виндоус.

— Нажимаем правой кнопкой мыши на значке торрен стрим возле часов. и нажимаем бродкастинг.

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

— Далее в интернет браузере развернется окно в котором вводим характеристики нашей трансляции.

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

Name: имя нашей трансляции

Cache directory: желательно оставить неизменным

Source (MPEG-TS HTTP stream): адрес потока который вы создали http://(ваш ip адрес):8089/

кстати если у вас динамический ип стоит подумать о DynDNS (по типу www.no-ip.com) так как айди трансляции если она слети или вы ее перезапустите, останется неизменным только если все указанные данные будут прежними. А без постоянного айди зрители не найдут ваш канал.
300-500кбит 480х270(360х240)
500-800кбит 640х360(480х360)
800-1200кбит 768х432(640х480)
1200-2000кбит 1024х576(720х576)
2000-5000кбит 1280х720 HD720p
5000-12000кбит 1920х1080 FullHD 1080p

Timeshift (HH:MM:SS): нетрогаем

Piece length: по желанию

Trackers: оставляем их хотя по желанию можно добавить и другие

Port: тоже по желанию

Host: если стоит роутер, да и без него вписываем ваш ip адрес без http:// только числа, (пример: 98.77.45.122)

Теперь ваша трансляция раздается при помощи торрент стрим технологии а значит чем больше пользователей буду смотреть ваше тв тем стабильнее будет его сигнал (в теории). Послеле того как трансляция создана в браузере чуть погодя всплывет новое окно:

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

где будет айди вашей трансляции, а также ссылка на онлайн плеер с ней.

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

Для Linux

Детальную инструкцию по запуску торрент стрим под линукс можно найти здесь: wiki.acestream.org/wiki/index.php/Streaming#Timeshift

Размещаем наше телевиденье

Далее размещаем наше тв на пока единственный известный мне сайт аккумулятор торрент трансляций torrent-tv.ru
Или на любой другой сайт вставляя код плеера, описание как это сделать здесь: wiki.acestream.org/wiki/index.php/WebPlugin

И все бы ничего но.

И все бы ничего но ВЛЦ с его плейлистом не та программа которую я хотел бы видеть в качестве пульта управления своим телеканалом. Безусловно у нее много достоинств, можно вставить логотип, настроить цветовые гаммы, поставить огромное количество фильтров, да и в конце концов для тех кто дружит с кодом можно в вручную прописать все что угодно.
Но лень есть лень и хотелось просто иметь возможность запустить трансляцию так же просто как добавить любимую музыку в винамп на рабочем столе. для чего пришлось немного потанцевать с буном, все вывернуть, получить загрузку процессора почти на 90%, но добиться своего.

Итак чем же является мой второй вариан.
Влц замечателен тем что может посылать поток и с DiretShow, тобишь просто показывать ваш рабочий стол на котором в своем любимом плеере можно включить видео.Но и здесь тоже встала проблемма если на столе видео то где работать и колдовать над видео за кадром? В этом мне пришли на помощь XSplit Broadcaster и/или VH Screen Capture driver, а также по желанию Virtual Audio Cable.

А теперь обо всем по порядку

— Создаем виртуальный монитор.
— Открываем «Разрешение экрана»
— Ищем кнопку «Найти»

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

— Нажимаем на пустой дисплей.
— Выбираем попытаться в любом случае

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

— Жмем применить
— Далее выбираем расширить экран
— Жмем применить

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

— Выбираем разрешение виртуального монитора, у меня1280х720 (можно любое другое, от этого буде зависеть разрешение транслируемого вами видео)
— Жмем ОК.

Итак виртуальный монитор создан, далее устанавливаем программу VH Screen Capture driver. XSplit Broadcaster это ее старший брат но в первой прогамме еще не реализации водяного знака в бесплатной версии поэтому берем ее.

— Из всего установившегося пакета запукаем «Config»
— Выбираем «create new one»
— Заходим в Capture выбираем Track screen и Select. Затем отводим мышу вправо на второй экран и нажимаем по нему.

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

— Далее заходим во вторую вкладку и выставляем там разрешение видео какого размера вы хотите получить на выходе, количество кадров от 24 до 90 (советую ставить больше 30 тогда картинка не тормозит), выбираем черный цвет и в левой колонке снимаем все галочки кроме «показывать мышу»

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

— Все программу не закрываем, оставляем висеть на столе.

— Теперь запускаем ВЛЦ и нажимаем Медиа/Потоковое вещание/Устойство захвата

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

— Выбираем DiretShow, и в нем видео VHScrCap, аудио выбираем «микрофон»
(Можно в доп настройках поменять соотношение видео с поумолчанию 4:3 на 16:9)

— Далее жмем «поток» и делаем все по схеме описанной в первой части этого поста.

Да для нормального воспроизведения аудио нужно физическим шнуром соединить выход на колонки и вход микрофона (подберите правильные гнезда и проверьте показывает ли звук на микшере громкости до трансляции), также можно использовать Virtual Audio Cable если нет желания соединять физически.

Ну вот и все, теперь запускаем ваш любимый видеоплеер и задаем ему плейлист (кстати его лучше открепить) перетаскиваем видеоплеер на второй виртуальный экран и разворачиваем.
Вот такие танцы с бубном нужно проделать чтобы создать свое интернет телевиденье для неограниченного числа зрителей, далее эфир зависит только от вашей фантазии.
Желаю удачи.

Я не коснулся программы XSplit Broadcaster, хотя она тоже заслуживает внимания, но вы можете выбрать и ее в качестве источника изображения и звука в ВЛЦ, думаю это не составит большего труда.

Источник

Делаем свой телеканал

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

Вы, возможно, удивитесь, но телевидение всё ещё живо. Да, аудитория поредела и «состарилась», а технологии приумножились и помолодели (IPTV, SmartTV, различные приставки), но всё-таки жизнь есть не только в YouTube и TikTok. Мало того, сейчас сделать свой телеканал можно при достаточно небольших инвестициях времени и финансов. В 2017 году мой брат (Ruler-ufa) попросил меня о помощи с технической реализацией нового музыкального телеканала на башкирском и татарском языках. О том, что у нас получилось, и пойдёт речь в этой статье. Сразу оговорюсь, что нюансов подбора контента, оформления эфира и подобных тем здесь не будет, т.к. я занимался исключительно технической частью. Кроме того, задача была сделать все максимально просто и дёшево, т.к. бюджет был ограничен, поэтому некоторые вещи можно было сделать по-другому — правильнее, но гораздо дороже.

DISCLAIMER! Все упомянутые решения, компании, партнеры и операторы — лишь отражение нашего личного опыта, а не реклама.

Создание картинки и генерация видеопотока

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

Что такое телеканал? По сути, это бесконечный аудиовидеопоток. И его необходимо как-то генерировать.

Сначала пара слов о том, как это происходит на «больших» телеканалах. Их сердцем можно назвать ЦА — центральную аппаратную (в телецентрах поменьше она называется КРА — коммутационно-распределительная аппаратная) — помещение с коммутатором, большим микшерным пультом и кучей мониторов. На коммутатор приходят сигналы с головной станции (если это региональный филиал), со всех аппаратно-студийных блоков (АСБ), с различных видеосерверов и с другого ПО — например, титровального.

Что такое АСБ? В общем случае — это другая аппаратная и студия, ответственные за производство конкретной программы в прямом эфире — например, новостей. Центральная аппаратная связывает воедино все АСБ и иные входы и решает, что пойдёт в эфир в конкретный момент времени. Ну а видеосерверы создают линейный эфир, т.е. эфир по расписанию — всё то, что не является «прямым эфиром». Кроме того, они могут генерировать, например, настроечную таблицу, сигнал часов и т.п. На выходе центральной аппаратной — аудиовидеопоток, который отправляется на передающее оборудование, спутник, сети распространения и т.д. Пример работы АСБ программы «Время» на Первом канале:

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

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

Сам сервер мы расположили в одном из дата-центров Уфы. Его выбор был не случаен — именно там располагается инфраструктура самых крупных в Уфе провайдеров телевидения и интернета. Благодаря такому размещению, доставка сигнала до этих операторов стала достаточно тривиальной задачей.

С железом разобрались, переходим к софту. В качестве ПО для генерации картинки мы выбрали Форвард ТС компании «СофтЛаб-НСК», поскольку уже имели опыт работы с ним. Этот комплекс предоставляет широкий спектр возможностей для организации цифрового вещания и используется большим количеством телеканалов стран бывшего СНГ и не только. Список фич, которые используем мы:

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

Сам комплекс состоит из большого количества различных Windows-служб и программ для их настройки.

Составление расписания эфира происходит в программе FDOnAir. Большую часть времени инженер эфира проводит именно в ней. Кроме того, здесь же происходит управление заранее подготовленными титрами при помощи команд в расписании и группы кнопок в верхней части интерфейса.

Настройка pipeline’а (по-русски это обычно называют «тракт») происходит в другой программе — SLStreamerPro.

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

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

На графе видно, что эта самая плата является источником сигнала, с неё в граф попадает несжатый аудиовидеопоток (RAW). Затем он кодируется в определённый формат, в нашем случае — H.264/MP3. Да, именно MP3, а не AAC, поскольку не все телевизоры могут воспроизвести AAC, а поток доходит до конечных телевизоров в неизменном виде — операторы просто доставляют его от телеканалов до зрителей, никак не изменяя.

Заключительная группа компонентов графа — получатели потока. Мы используем UDP Multicast и HLS segmenter. Первый нарезает MPEG-TS на UDP-дейтаграммы и отправляет на сетевую карту, а второй — на HLS-манифест и сегменты и складывает их на диск, чтобы мы могли опубликовать их с помощью IIS. Кстати, ffmpeg забирает сигнал тоже с помощью UDP Multicast, но не через реальную сетевую карту, а через loopback (об этом совсем скоро).

Доставка до кабельных операторов и медиасервисов

Теперь, зная, каким образом картинка рождается, остановимся чуть подробнее на том, как она попадает в конечные устройства зрителей. А происходит это, как правило, через посредников.

Начнём с кабельных операторов. На сегодняшний день все они работают в цифре, поэтому ничего, кроме сетевого соединения между телеканалом и оператором, не требуется. Казалось бы, всё просто?

Но и тут возникают проблемы. Сам сервер расположен в каком-то определённом месте — да хоть на кухне, это не так важно (шутки шутками, но именно там он и стоял первые пару месяцев). Вещательный сервер один, а операторов много, и у каждого свои точки присутствия. Что же делать в таком случае? Как отдать картинку всем?

Тут есть два наиболее распространённых подхода. Первый — поднять сигнал на спутник. Практически все операторы имеют техническую возможность забрать его оттуда и распространить на своих абонентов. Минус один — это очень дорого. Примерная стоимость — сотни тысяч рублей в месяц.

Второй — доставлять сигнал по земле через специализированных посредников. Самый популярный — компания Медиалогистика, филиал MSK-IX. Что она делает: по локальной сети дата-центра (как правило, Останкино или M9) забирает ваш сигнал и по своей наземной инфраструктуре оптоволоконных сетей доставляет его до операторов по всей стране. Краткий ролик о том, как всё это работает:

Цена кусается уже не так сильно (десятки тысяч рублей в месяц), но всё ещё дорого для нашего случая. В этом смысле нам повезло — канал у нас на национальном языке, поэтому и большая часть аудитории расположена на вполне конкретной территории. Мы нашли дата-центр в Уфе с максимальным присутствием самых крупных кабельных операторов и разместили сервер там. Всё остальное — дело техники: с помощью выхода UDP Multicast отдать поток на сетевую карту и попросить сетевых инженеров направить этот поток по локальной сети на приёмный сервер оператора. Таким образом мы покрыли трёх самых крупных в Уфе операторов. Ещё один регион с большой аудиторией — Татарстан. Там мы сотрудничаем с другим крупным кабельным оператором; сигнал для них мы отправляем через магистральную сеть компании «ТрансТелеком».

Есть и такие операторы (на самом деле, их у нас большинство), которые готовы принять сигнал через «дикий» интернет. Как правило, забирают они его в формате HLS, для этого они получают ссылку вида streaming.matur-tv.ru/hls/h264_aac/stream.m3u8. В очень редких случаях партнёр (например, Яндекс.Эфир) не имеет технической возможности принять HLS, тогда мы можем отдать картинку по RTMP (pull) либо через HTTP-TS. Последний представляет собой HTTP-ссылку, которая, в отличие от сегментов HLS, является бесконечным виртуальным файлом с потоком MPEG-TS.

Поскольку операторов становится уже слишком много, ПО «Форвард» не поддерживает протокол RTMP и является недостаточно гибким, а также нам нужно иметь публичный HLS-поток для сайта и мобильного приложения (в случае DDoS-атаки на сервер не хотелось бы, чтобы умер весь эфир), мы решили развернуть ещё два виртуальных сервера — только для ретрансляции потока. Один —для операторов и сервисов, второй — для публичного стриминга.

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

Основные инструменты, с помощью которых мы реализовали ретрансляцию — это ffmpeg и nginx rtmp module. Об ffmpeg, думаю, слышал хоть раз практически каждый. Это «швейцарский нож» в деле обработки и конвертирования аудио-видео. С помощью этой мощной утилиты мы вытаскиваем поток из pipeline’а «Форвард» и по RTMP отправляем на первый сервер ретрансляции. Там сигнал принимает nginx, который нарезает его на HLS и раздаёт всем операторам, у кого есть ссылка, а также отправляет его в YouTube, ВКонтакте и на второй сервер ретрансляции. Второй сервер практически ничем не отличается, только он не отправляет сигнал в YouTube и ВКонтакте и предназначен для раздачи потока для пользователей сайта и мобильного приложения.

Мониторинг

Отлично! Теперь у нас всё работает, и зрители могут наслаждаться музыкой! Но всегда есть «но». Чем сложнее система, тем чаще она ломается. А когда она частично или полностью является набором из бесплатных open-source-решений, соединённых воедино — это происходит ещё чаще. Не хотелось бы расстраивать зрителей отсутствием сигнала, и тут нам поможет мониторинг.

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

Велосипедов изобретать мы не стали, а развернули еще один сервер с Zabbix на борту и мониторингом всех трёх (четырёх вместе с Zabbix) серверов. Для удобства настроили оповещения в два чата в Telegram: один для незначительных проблем технического характера, второй для серьёзных аварий с полным или частичным отсутствием изображения. Теперь у нас есть мониторинг базовых метрик серверов. Но, как правило, с самими ОС всё хорошо, а нам ещё нужен мониторинг непосредственно медиапотока.

К сожалению, никаких готовых plugin‘ов «под ключ» мы не нашли. Взяв за основу этот template (спасибо, Diversantos!) и немного доработав, мы получили следующие метрики для каждого из наших HLS-потоков:

Заключение

Как видите, усилиями нескольких человек, имея пару серверов и небольшой бюджет, можно создать настоящий телеканал. Конечно, SLA будет далеко не «пять девяток», но это всё равно будет настоящее телевидение! Наш канал проработал уже 3 года и не собирается на этом останавливаться.

Зачем нужны эти знания? Есть много примеров региональных, отраслевых, тематических телеканалов, а также телеканалов, принадлежащих отдельным информационным агентствам. А что мешает организовать корпоративный телеканал? В компании, где работает несколько сотен человек, внутренние коммуникации очень важны.

Например, в Аркадии во всех офисах работает ArcadiaTV: зайдя на кофе-пойнт или в столовую, сотрудники могут узнать, у кого сегодня-завтра день рождения, прочитать последние новости, получить важные напоминания, посмотреть фотографии с последних мероприятий. ArcadiaTV востребовано, и мы будем развивать его дальше.

Как сделать телеканал в интернете. Смотреть фото Как сделать телеканал в интернете. Смотреть картинку Как сделать телеканал в интернете. Картинка про Как сделать телеканал в интернете. Фото Как сделать телеканал в интернете

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

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *