Загорелся я как-то мыслью создать собственный телеканал, хороше порылся в интернете, и столкнулся с несколькими техническими проблемами не решаемыми или решаемыми но очень дорого для хобби обычного гражданина. И забросил эту идею буквально до средины прошлого лета пока не узнал что барьеров для создания собственного тв больше нет.
А теперь начнем разговор обо всем и попорядку:
Первое о чем хотелось бы расказать это технические трудности с которыми я столкнулся в прошлом, самой непреодолимой и дорогой на мой взгляд была проблема того, что создав любую более мение достойную трансляцию ты можеш показать ее лишь ограниченному кругу людей. Но с появление торрент стрим трансляций все изменилоь.
Итак если вы хотите организовать собственный тв канал в интернете нам понадябится список необходимых для этого программ:
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), а если нет тогда нажимаем два раза (следующий) пока не появится вот такое окно
— и вславляем туда вот такой текст:
:sout=#transcode{width=1024,height=576,vcodec=h264,vb=1900,deinterlace,fps=25,acodec=mp3,ab=96,channels=2,samplerate=44100,venc=x264{vbv-bufsize=5000,vbv-maxrate=2100,ref=1,subme=1,keyint=50}}:std{access=http,mux=ts,dst=:8089/}
В кратце он означает что транслируемое вами видео будет иметь вид:
видео 1024х576, скорость передачи 1900
скорость потока аудио 96, частота 44100
dst=:8089 это порт на котором будет происходить вещание, можно поменять на произвольный.
— Итак потоковое вещание пошло. Чтобы его посмотреть и удостовериться что оно идет включаем еще один ВЛЦ и выбираем Медиа/Открыть URL/Сеть куда вводим http://(ваш ip адрес):8089/ если меняли порт вместо 8089 вставляете свой.
Пример: (http://93.70.212.105:8089/)
Такой метод выода трансляции универсален тем что в качестве видео материала можно использовать любой формат, но на перекодирование видео ВЛЦ тратит достаточно много мощности процессора, если вы хотите снизить затраты нужно до запуска трансляции перекодировать видео в любой мпег с устраивающими вас характеристиками и при запуске поставить инкапсуляцию mux=ts.
Пример кода для вещания в ВЛЦ:
:sout=#std{access=http,mux=ts,dst=:8089/}
Минус чисого вещания в тако виде это ограниченное количество зрителей, поэтому переходим к запуску этой трансляции чере торрент стрим.
Для виндоус.
— Нажимаем правой кнопкой мыши на значке торрен стрим возле часов. и нажимаем бродкастинг.
— Далее в интернет браузере развернется окно в котором вводим характеристики нашей трансляции.
Name: имя нашей трансляции
Cache directory: желательно оставить неизменным
Source (MPEG-TS HTTP stream): адресс потока который вы создали http://(ваш ip адрес):8089/
кстати если у вас динамический ип стоит подумать о DynDNS (по типу www.no-ip.com/) так как айди трансляции если она слети или вы ее перезапустите, останется неизменным только если все указанные данные будут прежними. А без постоянного айди зрители не найдут ваш канал.
Bitrate (kbit/s): битрейт вашей трансляции, у меня обычно 5000
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)
— Нажимаем createstream
Теперь ваша трансляция раздается при помощи торрент стрим технологии а значит чем больше пользователей буду смотреть ваше тв тем стабильнее будет его сигнал (в теории). Послеле того как трансляция созданна в браузере чуть погодя вслывет новое окно:
где будет айди вашей трансляции, а также ссылка на онлайн плеер с ней.
Для 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, хотя она тоже заслуживает внимания, но вы можете выбрать и ее в качестве источника изображения и звука в ВЛЦ, думаю это не составит болльшего труда.
Автор: artanets