Дрим,как streaming-клиент - передача и просмотр видео НА Дриме ИЗ локалки (TCP/UDP streaming)

  • Я решал обратную задачу: принять из интернета поток UDP multicust (СтримТВ) и передать его в дрим для просмотра на телеке. Получилось следующее:


    1. В конфиге мувиплеера (movieplayer.xml) добавляем строку для файла плей-листа и с параметрами, с которыми хотим получать поток с компа:

    Исходный код
    <setup name="File" ext="M3U" Videorate="1000" Videotranscode="0" Videocodec="mp2v" Videosize="525x574" Audiorate="192"  Audiotranscode="1" fps="25" />


    2. в компе создаем файл плейлиста для VLC для каждого канала-потока вещания типа 01-Первый канал.m3u в котором описываем откуда принимать поток:

    Исходный код
    #EXTM3U
    #EXTINF:0,Первый канал
    udp://@239.255.0.97:5500


    3. Если в добавок требуется одновременно писать поток на хард компа то в файл добавляется строка, указывающая дублировать поток в файл и получается:

    Исходный код
    #EXTM3U
    #EXTINF:0,Первый канал
    #EXTVLCOPT:sout=#duplicate{dst=display,dst=std{access=file,mux=ts,url=f:\stream.ts}}
    udp://@239.255.0.97:5500


    Я не большой спец по VLC, но вот так у меня работает.
    В последнем варианте VLC и в дрим транслирует, и на компе показывает, и в файл пишет! :D:D:D
    Наверное нечто подобное можно замесить и для решения Вашей задачи. Дерзайте.

    Сообщение было отредактировано 3 раз, последнее редактирование пользователем SerT ().

  • Кстати, а стрим-тв работает только в случае подписки или есть обходные пути?


    У меня другая извращенная задача, получать видео с дрима на PDA через Pocket VLC. Теоретически все работает, но практически не хватает полосы (802.11b) но звук идет. Поскольку дрим отдает TS как есть, единственный вариант это перекодировка на компе...

  • Полосы хватает с головой.
    Покет слабоват поток на лету дешифровать (великовато для него разрешение). Хотя это уже имхо.
    Ты прав, рабочий вариант выглядит примерно так: обычный комп принимает поток с помощью VLC, тот его тут же транскодирует - например в mpeg1 с разрешением 320х288 ну или сколько там нормально для покета и стримает в сеть, а покет уже этот зарезанный вариант принимает. Работать будет, уверен (подобное уже делал для низкоскоростных каналов) но конкретно с покетом даже пробовать не хочу - практического применения не вижу (один канал иметь не интересно, а переключение по каналам при такой схеме будет имхо гиморным).

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем Wraith ().

  • Цитата

    Со слов пользователя SE
    Кстати, а стрим-тв работает только в случае подписки или есть обходные пути?


    Cтрим-тв будет показывать на VLC только в случае подписки на стрим-тв. В этом случае расширяется полоса пропускания ADSL и дается возможность регистрации на мультикаст сервере для получения потока.
    В случае просмотра через VLC не надо приобретать доп. приставку (АМИНО) и смотреть можно только не кодированные каналы - все эфирные + радио + кинозал


    Просмотр стрим-тв на компе подробно расписан на hXXp://streamclub.ru/forum/topic/5075?startnum=1

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем SerT ().

  • Цитата

    Со слов пользователя proterian
    SerT


    какой коммандой в дриме ты запускаеш vlc на прием?


    Не понял вопроса. VLC на компе запускается руками. А в дриме запускается дополнение movieplayer.
    У меня сейчас стоит имидж SDT_DaVinci_5.8_DM7000 (очень рекомендую), в нем список дополнений вызываются желтой кнопкой.


    Только учтите, что на текущий момент movieplayer заточен для работы со старым HTTP интерфейсом VLC.
    Последняя версия с этим интерфейсом - 0.8.4а ( Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу. )
    Более новые версии ни с movieplayer, ни с клиентом 0.2.3 РАБОТАТЬ НЕ БУДУТ.


    Пред просмотром желательно встать на какой-нибудь открытый канал и запустить CI.
    Чтобы эмуляторы не отжирали процессорное время и память.
    (если у Вас правильно работает управление ему :D )

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем SerT ().

  • я имел в виду можноли плагин старануть с консоли ручками.


    смысл в том что есть 2 стрим сервера, и надобы чтоб дрим выбирал откуда что грузить.


    имидж залит такойже как у вас
    но при старте мувиплеера. последний ругается что мол не настроен. VLC откатил до версии с буквой а!
    в чем может быть загвозда хмл файл вроде настроен

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем proterian ().

  • Запускать VLC надо так:


    vlc.exe --intf wxwin --extraintf=http


    И в настройках http интерфейса VLC должен быть указан тотже порт как и в movieplayer.xml (например webif-port="8081")

  • таже песня, порты стоят 8080


    локально проверил 127.0.0.1:8080 страничка открывается


    как жму на мувиплеер тот ругается.

  • Цитата

    Со слов пользователя proterian
    таже песня, порты стоят 8080


    локально проверил 127.0.0.1:8080 страничка открывается


    как жму на мувиплеер тот ругается.


    Попробуй
    vlc.exe --intf wxwin --extraintf=http --http-host 192.168.1.3:8081


    где 192.168.1.3 - локальный ip твоего компа.
    и порт - 8081


    и в movieplayer.xml

    Исходный код
    <server ip="192.168.1.3" webif-port="8081" stream-port="39090" user="admin" pass="admin" />


    причем именно 8081, может 8080 с чем-то конфликтует.

    Файлы

    • movieplayer.zip

      (602 Byte, скачали 322 раз, последнее скачивание: )

    Сообщение было отредактировано 2 раз, последнее редактирование пользователем SerT ().

  • алелуя пошло кривовато но пошло!!!
    спасибо огромное!


    еще маленький вопрос


    что куда прописать чтоб дрим брал стрим с другого дрима?

  • Цитата

    Со слов пользователя proterian


    что куда прописать чтоб дрим брал стрим с другого дрима?


    Не представляю как сделать на прямую.


    Можно только создать плей-лист файл для VLC для транслирующего дрима, и запускать его через VLC мувиплейером принимающего.


    Все это очень криво получится, много ручной работы. Хрен автоматизируешь.

  • как приблизительно создать плей-лист файл для VLC для транслирующего дрима,


    #EXTM3U
    #EXTVLCOPT:sout=#duplicate{dst=std{access=http,mux=ts,url=:9090/dboxstream}}
    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.


    ???

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем proterian ().

  • Цитата

    Со слов пользователя proterian
    как приблизительно создать плей-лист файл для VLC для транслирующего дрима,


    Исходный код
    #EXTM3U
    #EXTVLCOPT:sout=#duplicate{dst=std{access=http,mux=ts,url=:9090/dboxstream}}
    http://192.168.0.3:31339/0,0065,01ff,0200,0201,0203


    ???


    У меня нет второго дрима, так что далее - это теоретизирование по аналогии с приемом стрим-тв.
    Для транслирующего дрима плей-лист не нужен.
    Строка #EXTVLCOPT в данном случае не нужна вообще.
    Плей-лист нужен для принимающего. Как я думаю, порядок должен быть примерно такой:


    1. Заходим на веб интерфейс транслирующего дрима, кликаем на циферки после vpid и сохраняем файл video.m3u туда, откуда его увидит movieplayer принимающего дрима. Причем этот файл будет действителен только для того канала на котором стоит дрим. Если перейти на другой сервис, надо делать новый файл.


    2. Запускаем на компе VLC


    3. на принимающем дриме запускаем movieplayer, в конфиге которого должна быть строка для m3u. Ищем файл video.m3u и пускаем его.


    Теоретически может даже заработает... :D


    Удачи!

    Сообщение было отредактировано 3 раз, последнее редактирование пользователем SerT ().

  • а на практике нет :-(
    но надежда не умирает никогда!


    я в принципе нашел выход как засовывать плейлист из дрима в дрим.


    подняв хттп на первом дриме(сервер),порт можно присвоить любой, подредактировав хтмл от vlc прям в дриме (типа эмуляция плера).
    ну и соответственно во втором(клиент)


    даже есть наработочки по автомитизации, но нужно время.


    по идее будет что то типа вебхтв с управлением другого дрима :-)


    найтибы исходники медиаплеера былобы проше.

  • Цитата

    Со слов пользователя proterian


    найтибы исходники медиаплеера былобы проше.


    Нет ничего проще!


    Все исходники энигмы лежат на cvs.tuxbox.org.
    Только там надо очень покопаться. Глубоко зарыто.
    (вот блин! хотел дать полную ссылку, да что-то у меня сейчас не грузится).


    Почитай тут: Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем SerT ().

  • очень глубоко чет :-)

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем proterian ().

  • Вот прямая ссылка на исходники мувиплейера:


    Пожалуйста зарегистрируйся для просмотра данной ссылки на страницу.

  • Вопрос на засыпку :-)


    есть следуюшее.


    Связка DREAM VLC DREAM


    Дрим клиент получает список каналов от дрима сервера и запускает vlc на прием и трансляцию потока на дрим клиент.


    все шикарно арбайтен, но есть одно но. как заставить дрим клиент посылать через хттп на vlc комманду trascode.
    либо как запустить vlc c привязанным sout.


    Исходный код
    :sout=#transcode{vcodec=mp2v,vb=1024,scale=1,acodec=mpga,ab=64,channels=2}:duplicate{dst=std{access=http,mux=ts,url=:9090}}


    проблема решена
    в поток воткнули расширение и все срослось :D

    Сообщение было отредактировано 1 раз, последнее редактирование пользователем proterian ().