VLC - видеоплейер и трансляция видео в сети

 

31.03.04
Последняя модификация: 08.09.2015
Иванов Аркадий

 

VideoLan 

Основная задача этой программной системы - трансляция видео по сети. 
Например: у вас на одном компьютере стоит DVD-проигрыватель, вы крутите на нем диск, а смотрят фильм сразу несколько людей за своими компьютерами. 
Источником видео может быть не только DVD, а и TV-тюнер, файл с видео, и т.д. 
 
Конечно, с помощью VideoLan-клиента вы можете смотреть видео и напрямую с DVD или из файла. На сегодня (2015 год) это вообще мой любимый видеоплейер.
 
  • Это разработка французских студентов.
  • Программа VideoLan-клиент называется vlc и есть на множество платформ, в том числе и под Windows.
  • Клиент и сервер входят в состав дистрибутивов Mandrake.
  • Версия 0.92 вполне устойчиво работает.
  • Лучше всего заглянуть на сайт разработчиков http:// www.videolan.org и взять последнюю версию программ, поскольку система очень активно развивается.
  • В составе VideoLan разработана и развивается libdvdcss - дешифратор DVD.
  • Программа работает как под Linux-ом, так и под Windows. У вас есть отличный free DVD-проигрыватель под Windows: 
 
Некоторые напоминалки про VLC для себя:

 

1. Трансляция с WEB-камеры в сеть:

  • Сношу pulseaudio.
  • Определю номер аудио-устройства:
    DEVICE=`arecord -l |grep VX2000 |cut -d ' ' -f 2 |cut -c1`
  • Конечный вариант используемого кодека, размеров, ...:
    cvlc v4l2:///dev/video0 :input-slave="alsa://hw:$DEVICE,0"  --sout '#transcode{vcodec=mp2v,acodec=mp3,vb=600,width=500,heigh=375,ab=32,channels=1,samplerate=22050}:duplicate{dst=std{access=http{mime=video/x-ms-wmv},mux=asf,dst=:1234/stream.wmv}}'
  • На стороне принимающего:
    vlc http://hostname:1234/stream.wmv 

2. Для трансляции с TV-тюнера:
vlc v4l2:///dev/video0:standard=secam :input-slave=alsa://hw:1,0 :v4l2-tuner-frequency=119500 --sout
'#transcode{vcodec=mp2v,acodec=mp3,vb=800,width=762,heigh=576,ab=32,channels=1,samplerate=22050}:duplicate{dst=std{access=http{mime=video/x-ms-wmv},mux=asf,dst=:1234/stream.wmv}}'

           На стороне принимающего та же команда, что и в предыдущем пункте:
           vlc http://hostname:1234/stream.wmv 

3. Трансляция экрана:
vlc screen:// :screen-fps=30 :screen-caching=100 --sout '#transcode{vcodec=mp4v,vb=4096,acodec=aac,ab=256 ,scale=1,width=640,height=480}:duplicate{dst=std{access=http{mime=video/x-ms-wmv},mux=asf,dst=:1234/stream.wmv}}'

 

4. Запись потока в файл:
vlc http://hostname:1234/stream.wmv --sout file/ts:filename.ts

5. Для того, чтобы был звук из vlc на Nvidia HDMI audio :

  • chmod -R 777 /dev/snd  # Ещё вариант ввести юзера, из под которого запускается vlc в группу "audio"
  • Посмотреть список alsa-устройств:
    aplay -l
  • Ну и указывать правильное устройство далее:
    vlc -f -A alsa --alsa-audio-device hw:0,3 --volume 255 videofile.avi

6. Установка уровня записи с микрофона, чтение с веб-камеры и запись в файл:
amixer -c 2 set 'Mic',0 90%

vlc v4l2:///dev/video0:standard=secam:width=640:height=480 :input-slave=alsa://hw:2,0 --sout "#transcode{vcodec=h264,venc=x264{cfr=16},scale=1,acodec=mp4a,ab=160,channels=2,samplerate=44100}:file
{dst=`date +%Y-%m-%d_%H-%M-%S`.mp4}"