Так сталося що став я зацікавлений у трансляції різноманітного матеріалу через мережу.
Почав десь у 1998-1999 році робити ретрансляції місцевих радіостанцій до локальної мережі, та і до мережі інтернет використовуючи програмне забезпечення фірми RealMedia. Навіть працював мій сайт з підтримки трансляції, на якому був статус активний трансляцій тощо.
Але час сплинув, зараз це вже нікому не цікаво, а ось у локальній мережі є потреба транслювати або ретранслювати наприклад футбольні матчі.
На зараз для трансляції використовую дуже популярний крос платформовий медіа плеєр VLC.
Наразі є можливість зробити всі налаштування використовуючи інтерфейс програми, але для постійного вживання наведу приклади файлів сценаріїв за допомогою котрих це робити простіше. Сценарії написані для використання під керуванням операційної системи MS Windows. Для цього їх треба зберегти до файлів з розширенням .cmd, або .bat.
Підключення для перегляду трансляцій з адреси "http://ip:port", ох і тяжко інколи навчити користувачів зробити підключення
Трансляція з Вашого ТВ-тюнера чи відеокарти з відео входом (з клоном зображення).
Ретрансляція з адреси "http://ip:port"
Трансляція сигналу з сателіта що був оброблений програмою DVB Dream.
DVB Dream оброблює сигнал, виділяючи потрібний канал, за необхідністю декодує і транспортним потоком видає один канал UDP потоком, наприклад до 127.0.0.1. VLC плеєр отримує потік, транскодує з новим кодеком h264, змінює розмір чи обрізає зайве зображення, або накладає свій логотип з файлу logo.png . Потім VLC працює як сервер, до котрого підключаються ніші клієнти.
Якщо треба обрізати зображення що буде транслюватися, то використовуємо цей скрипт:
Почав десь у 1998-1999 році робити ретрансляції місцевих радіостанцій до локальної мережі, та і до мережі інтернет використовуючи програмне забезпечення фірми RealMedia. Навіть працював мій сайт з підтримки трансляції, на якому був статус активний трансляцій тощо.
Але час сплинув, зараз це вже нікому не цікаво, а ось у локальній мережі є потреба транслювати або ретранслювати наприклад футбольні матчі.
На зараз для трансляції використовую дуже популярний крос платформовий медіа плеєр VLC.
Наразі є можливість зробити всі налаштування використовуючи інтерфейс програми, але для постійного вживання наведу приклади файлів сценаріїв за допомогою котрих це робити простіше. Сценарії написані для використання під керуванням операційної системи MS Windows. Для цього їх треба зберегти до файлів з розширенням .cmd, або .bat.
Підключення для перегляду трансляцій з адреси "http://ip:port", ох і тяжко інколи навчити користувачів зробити підключення
@echo off
set src=http://ip:port
set ddd32=%ProgramFiles%\VideoLAN\VLC\
set ddd64=%ProgramFiles(x86)%\VideoLAN\VLC\
if EXIST "%ddd32%" set ddd=%ddd32%
if EXIST "%ddd64%" set ddd=%ddd64%
start "VLC VIEW" /D"%ddd%" vlc.exe -vvv %src% --video-on-top --repeat -vvv --vout-filter deinterlace --deinterlace-mode blend
Трансляція з Вашого ТВ-тюнера чи відеокарти з відео входом (з клоном зображення).
echo off
rem ************************************
rem *** http://lexxai.co.cc (c) 2008 ***
rem ************************************
REM VIDEO CAPUTURE SETTINGS -------------------------------
REM IF TUNER_* VARIABLE SET TO BLANK THEN USED DEVICES BY DEFAULT
rem set tuner_vid_dev=nVidia WDM Video Capture (universal)
rem set tuner_aud_dev=Realtek AC97 Audio
set pic_size=384x288
REM NETWORK SETTINGS --------------------------------------
set port=8080
set speed=1024
set ddd32=%ProgramFiles%\VideoLAN\VLC\
set ddd64=%ProgramFiles(x86)%\VideoLAN\VLC\
if EXIST "%ddd32%" set ddd=%ddd32%
if EXIST "%ddd64%" set ddd=%ddd64%
IF EXIST "%ddd%vlc.exe" GOTO OK
echo .
echo *********************************************************************
echo * Please install VLC (VideoLan) player
echo * it must placed here %ddd%vlc.exe
echo *********************************************************************
echo .
pause
exit
:OK
cls
taskkill /F /IM vlc*
start /ABOVENORMAL /D"%ddd%" vlc -vvv dshow:// :dshow-vdev="%tuner_vid_dev%" :dshow-adev="%tuner_aud_dev%" :dshow-size="%pic_size%" :dshow-fps=50.000000 :sout=#transcode{vcodec=mp4v,vb=%speed%,scale=1.0,acodec=mp3,ab=64,channels=1}:duplicate{dst=display,dst=std{access=http,mux=ts,dst=:%port%}}
echo.
echo Now you will see just opened VLC player with movie and broadcast function.
echo.
echo.
rem IP detection
FOR /F "skip=3 tokens=1,3 delims=:- " %%a in ('ipconfig') do IF " IP"=="%%a" call :oop %%b
pause
exit
:oop
echo *********************************************************************
echo *
echo * Your IP: %1
echo *
echo *********************************************************************
echo * Use at VLC's clients this URL: http://%1:%port%
echo *********************************************************************
echo.
goto :eof
pause
Ретрансляція з адреси "http://ip:port"
@echo off
rem ***** place this file to "C:\Program Files\VideoLAN\VLC" *********Аналіз кількості підключених до Вас клієнтів
rem ***** after run this file
rem ***** after that all clients may connect to you by using your IP:8080
rem *****
rem ***** (C) 2008, http://lexxai.co.cc
rem *****
taskkill /F /IM vlc*
set ddd32=%ProgramFiles%\VideoLAN\VLC\
set ddd64=%ProgramFiles(x86)%\VideoLAN\VLC\
if EXIST "%ddd32%" set ddd=%ddd32%
if EXIST "%ddd64%" set ddd=%ddd64%
set src=http://ip:port
IF EXIST "%ddd%vlc.exe" GOTO OK
echo .
echo *********************************************************************
echo * Please install VLC (VideoLan) player
echo * it must placed here %ddd%vlc.exe
echo *********************************************************************
echo .
pause
exit
:OK
cls
start "VLC RETRANSLATOR" /ABOVENORMAL /D"%ddd%" vlc.exe %src% --sout "#duplicate{dst=std{access=http,mux=ts,dst=:8080}}" --repeat
echo .
echo Now you will see just opened VLC player with movie and retranslate function.
echo .
echo .
rem IP detection
FOR /F "skip=3 tokens=1,3 delims=:- " %%a in ('ipconfig') do IF " IP"=="%%a" call :oop %%b
pause
exit
:oop
echo *********************************************************************
echo *
echo * Your IP: %1
echo *
echo *********************************************************************
echo * Use at VLC's clients this URL: http://%1:8080
echo *********************************************************************
echo .
goto :eof
echo offset port=8080
set ipsub=172
:begin
cls
echo **********************************************
echo **********************************************
echo ******** who connect to you *************
echo **********************************************
echo port:%port%
echo **********************************************
echo **********************************************
echo ****** http://lexxai.co.cc (c) 2008 ********
echo **********************************************
echo.
echo.
netstat /n |findstr /i "TCP.*%ipsub%.*:%port%.*ESTABLISHED"
echo --------------------------------------------------------------------------
echo COUNT:
netstat /n |findstr /i "TCP.*%ipsub%.*:%port%.*ESTABLISHED"|find /c "TCP"
echo.
echo.
echo Delay 10 sec. For break press CRTL-C.
rem delay 10 sec
@ping 127.0.0.1 -n 10 -w 1000> nul
goto begin
Трансляція сигналу з сателіта що був оброблений програмою DVB Dream.
DVB Dream оброблює сигнал, виділяючи потрібний канал, за необхідністю декодує і транспортним потоком видає один канал UDP потоком, наприклад до 127.0.0.1. VLC плеєр отримує потік, транскодує з новим кодеком h264, змінює розмір чи обрізає зайве зображення, або накладає свій логотип з файлу logo.png . Потім VLC працює як сервер, до котрого підключаються ніші клієнти.
taskkill /F /IM vlc*
start /ABOVENORMAL vlc udp://@ :sout=#transcode{vcodec=h264,vb=2500,fps=25,scale=1,acodec=mp4a,ab=64,channels=1,samplerate=22050,deinterlace,sfilter=logo}:duplicate{dst=std{access=http,mux=ts,dst=:8080}} --logo-file logo.png,0,70 --logo-position 6 --logo-y 5 --repeat
DVB Dream v1.4 (безкоштовна версія ще) |
Налаштування DVB Dream |
DVB Dream, Lan Streaming |
VLC як транскодер та як програвач |
taskkill /F /IM vlc*Хочу зауважити що VLC має можливість використовувати DVB карти через BDA драйвер напряму, і вживання сторонніх програм на кшталт DVB Dream, необов'язкове якщо сигнал не кодований.
start /ABOVENORMAL vlc udp://@ :sout=#transcode{vcodec=h264,vb=2500,fps=25,scale=1,acodec=mp4a,ab=64,channels=1,samplerate=22050,deinterlace,vfilter=croppadd{croptop=74,cropbottom=78,cropright=10},sfilter=logo}:duplicate{dst=std{access=http,mux=ts,dst=:8080}} --logo-file logo.png,0,70 --logo-position 6 --logo-y 80 --repeat
lexxai
Немає коментарів:
Дописати коментар