Трансляция в сеть

VLC Streamer Free Android

Только подумайте об этой ситуации: вы скачали последний эпизод Игра престолов на компьютер, и вы отчаянно хотите узнать, когда умирает Арья Старк. Но вы также делать кучу других вещей, приготовить обед, мыть собаку или лакировать окно … Не беспокойтесь, потому что разработчики мультимедийного проигрывателя VLC Player подумали обо всем: теперь вы можете сделать стриминг видео между компьютером и вашим Android устройством с VLC Streamer Free.

Зеркалирование с компьютера на свой смартфон или планшет

Предыдущий пример может быть немного преувеличен, потому что никто не будет выполнять другие задачи, перед просмотра последнего эпизода Игра престолов, Нарко или Очень странные дела. Но вы можете готовить во время просмотра видео рецепта, построить полки с видео-учебником «сделай сам» или играть на пианино с учителем… в этом случае, вы находитесь перед подходящим приложением.

Прием видеосигнала вашего компьютера на планшете или телефоне.

И дело в том, что при установке APK этого приложения вы можете сделать точно так же, как и с Chromecast. Другими словами, воспроизвести любое видео, хранящиеся на жестком диске вашего компьютера или даже онлайновые видео с таких сайтов, как Facebook или YouTube прямо на телефон. Для этой цели, вам всего лишь нужно приложение для Windows или Mac и одну Wi-Fi сеть. Все устройства будут синхронизированы, и вы можете начать наслаждаться видео или музыкой на телефоне. Вот как это работает.

Основные особенности

  • Простая установка и использование приложения.
  • Возможность разделять мультимедийные файлы с любого устройства, подключенного к той же сети.
  • Воспроизведение видео или песни в потоковом режиме, загруженных на ПК или даже онлайн.
  • Поддержка различных качеств и разрешений.

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

Как осуществить простейшую веб-трансляцию (веб-камера + VLC media player (Windows) + WordPress + FlowPlayer)

Задача такова: с минимальными усилиями вставить живое видео с домашней веб-камеры на сайт под управлением WordPress.

Будем считать, что веб-камера уже подключена, настроена и нормально работает.

Подготовка:

  • Скачать и установить VLC media player для Windows (откройте ссылку, на главной странице большая синяя кнопка «Download VLC»). VLC будет осуществлять кодирование и потоковое вещание.
  • Скачать FlowPlayer (понадобится для тестирования, а также если ваш сайт не на движке WordPress). FlowPlayer — это flash-плеер, который будет непосредственно осуществлять показ видео. В принципе его можно заменить любым другим плеером, который вам больше по вкусу.

Настройка VLC:

  • Открыть VLC media player.
  • Для начала просто просмотреть видео с веб-камеры в VLC плеере. В главном меню открываем Медиа -> Открыть устройство захвата:

    Тестируем веб-камеру + VLC

  • В графе «Название видео-устройства» выбираем свою веб камеру (у меня Logitech Webcam 250). В графе «Название аудио-устройства» выбираем микрофон веб-камеры (у меня Microphone Logitech Mic (Webcam 250)). После этого нажимаем кнопку Воспроизвести. Если все правильно, вы увидите видео со своей веб-камеры.
  • Убедившись, что камера работает переходим к настройке потокового вещания. Открываем Медиа -> Потоковое вещание -> закладка Устройство захвата. Также как и в предыдущем пункте выбираем устройство захвата видео и аудио. Нажимаем на кнопку Поток.
  • В открывшемся окне находим кнопку Следующий, нажимаем ее и затем еще раз. В итоге вы должны увидеть вот такое окно:

    VLC — потоковое вещание

    В поле «Строка ввода для генерируемого потока» вставляем:

    :sout=#transcode{vcodec=h264,vb=300,ab=64,fps=25,width=256,height=192,acodec=mp3,samplerate=44100}:duplicate{dst=std{access=http{mime=video/x-flv},mux=ffmpeg{mux=flv},dst=:7777}}

    Рассмотрим параметры подробнее:
    vcodec=h264 — видео кодек H264;
    acodec=mp3 — аудио кодек;
    vb=300 — видео битрейт (чем выше, тем выше качество и требования к полосе пропускания);
    ab=64 — аудио битрейт (чем выше, тем выше качество и требования к полосе пропускания);
    fps=25 — кол-во кадров в секунду;
    width=256, height=192 — соответственно ширина и высота изображения;
    samplerate=44100 — частота дискретизации звука.

    Эти параметры можно варьировать и тем самым улучшать/снижать качество изображения ну и как следствие требования к полосе пропускания. Что касается конкретных цифр, то они взяты мной с videolan.org из примера для простых веб-трансляций. Для просмотра в небольшом окне плеера (до 640х480) качество вполне нормальное )

    dst=:7777 — важнейший параметр, определяющий сетевой порт (TCP) по которому будет осуществляться вещание. В моем случае: 7777 (вы можете выбрать любой другой не занятый порт). Порт должен быть открыт в брандмауэре. Если подключение к Интернет осуществляется через роутер, то на роутере необходимо дополнительно настроить форвардинг этого порта.

    После настройки параметров, нажимаем на кнопку Поток.

  • Если все работает правильно, то должен загореться индикатор работы на веб-камере, а также в строке состояния VLC плеера должна быть надпись «Потоковая передача»:

    Идет потоковая передача

  • Чтобы окончательно убедиться, запускаем Flowplayer на локальном компьютере. Для этого распаковываем ранее скачанный архив (можно прямо на рабочий стол, чтобы поближе). В архиве папка example, в ней файл index.htm — открываем его в блокноте. Ищем строку: http://pseudo01.hddn.com/vod/demo.flowplayervod/flowplayer-700.flv и заменяем ее на http://localhost:7777, где 7777 ранее выбранный порт веб-трансляции. Сохраняем файл, и запускаем его двойным щелчком. Откроется браузер по-умолчанию. Если это эксплорер, то вы увидите вверху предупреждение о заблокированном содержимом — все разрешаем. В итоге откроется страница с плеером. Загрузка трансляции может занять до 30 сек. В начале (10-15 сек.) могут быть проблемы с качеством (например у меня все зеленое).

Вставляем трансляцию на сайт WordPress:

  • Необходимое условие: интернет-провайдер должен предоставить вам внешний статический или внешний динамический ip-адрес. В случае внешнего динамического адреса (на сегодняшний день наиболее часто встречающийся тип адреса) необходимо дополнительно настроить сервис DDNS.
  • Устанавливаем и активируем плагин FV WordPress Flowplayer (из множества других плагинов, он мне понравился больше всего). После установки достаточно вставить на страницу следующий шорттег:

    где 89.235.17.66 — ваш внешний ip-адрес или доменное имя DDNS, 7777 — порт веб-трансляции.

  • Внимание! Если вы подключены к Интернет через роутер, ввидео на сайте может не проигрываться (для вас). Убедиться, что трансляция работает, можно, открыв сайт с любого другого компьютера не из вашей локальной сети (например попросить зайти на сайт друга).

трансляция рабочего стола в сеть через vlc

Всем привет!
Я хочу использовать vlc (VLC media player) для трансляции рабочего стола компьютера в сеть. На самом деле задача стоит даже так: транслировать рабочий стол одного компьютера посредством сети на другой, и при этом задержка должна быть минимальной, а точнее не превышать 1 секунду )). Ну и можно дополнить, что трансляция должна позволять демонстрировать видео с первого компьютера.
В общем-то, с самой задачей трансляции справиться не так уж и сложно. И задержка в среднем равна 2 секунам. Но все равно она есть. На данный момент я осуществляю транслцию подобной командой (в ней присутствуют переносы на следующую строку, чтобы было удобно читать):
vlc.exe screen:// :screen-fps=25.0 :live-caching=100
:sout=#transcode{vcodec=x264,venc=x264{tune=zerolatency,preset=ultrafast},acodec=mpga,vb=800,ab=128,channels=2,samplerate=44100}
:rtp{dst=192.168.0.12,port=5004,ttl=1}
То есть кодирую x264 кодеком и транслирую по rtp.
Как показывает практика, самый существенный вклад в уменьшение задержки вносят настройки для x264-кодека: venc=x264{tune=zerolatency,preset=ultrafast}. Борясь с задержкой я пробовал менять различные настройки:
— все настройки из ряда caching (например, :network-caching, :sout-udp-caching,…);
— настройки x264 кодека типа bitrate, qp, subme, bframes…
— настройки vbv и тому подобное.
Изменения этих настроек кардинально не меняет состояние трансляции. Но, может быть, я неправильно их использую. Дело в том, что на данный момент я не совсем шарю в тонкостях кодирования видео и протоколах передачи медиа-контента.
Подскажите, пожалуйста, есть ли еще какие-либо способы уменьшить задержку транляции через vlc? И вообще, возможно ли добиться задержки, не превышающей 1 секунду? Может быть, мне надо пользоваться другим протоколом (хотя судя из моих экспериментов использование других протоколов никак не отражается на результате)? Или брать другую capture-лку? Или другой кодек?
Кстати, на стороне клиента (т.е. принимающей стороны) я меняют только :network-caching (выставляю в 0).
И еще комментарий, может быть, не совсем по теме: почему-то при использовании rtsp-протокола соединение обрывается через 1.5-2 минуты.
Всем пока и заранее спасибо!