LINUX.ORG.RU

Защищенный стриминг с веб-камеры

 , , ,


2

2

Доброго дня!
Приспособил cvlc для стриминга потока с вэбки:

cvlc  v4l2:// :v4l2-dev=/dev/video0 :input-slave=pulse://alsa_input.usb-046d_0204_1301AA60-02.analog-mono --sout'#transcode{vcodec=mp4v,vb=2048,acodec=vorb,ab=128,channels=2,samplerate=44100}:rtp{sdp=rtsp://@:8554/video.sdp}' --sout-keep
и теперь встал вопрос о защите, т.к. вэбка смотрит мою квартиру, но нигде в интернетах не нашел инфы по защите rtsp и других протоколов при помощи cvlc.
Везде говорят только про получение защищённого rtsp-потока.
Как защитить поток?

Рабочий вариант смотри в удалённых тут, случайно удалили сегодня.

anonymous
()

Что-то случилось с ЛОРом. Проблема была решена, вот текст:

у меня получилось только с использованием ключей --sout- rtsp-user=pinkbyte и --sout-rtsp-pwd=lolka.
http://imgh.us/2016-09-27-215556_1280x1024_scrot.png
anonymous (27.09.2016 22:05:23)

Спасибо, работает))
И ещё вопрос:
какие для потока надо пробросить порты?
После установки соединения по порту 8554 начинает передаваться > поток по пятизначиным случайным портам. Там наверное какая-то зависимость есть, но инфы я не нашёл :(
Strannik-j ★ (28.09.2016 14:58:15)

[offtop] Иногда полезно не закрывать вкладку с полоезными постами [/offtop]

Strannik-j ★★
() автор топика
Последнее исправление: Strannik-j (всего исправлений: 2)
Ответ на: комментарий от Strannik-j

Так порты можно указать, у тебя они не указаны: :rtp{sdp=rtsp://@:8554/video.sdp,port=1935} например. Но имей в виду что это базовый порт, потоки в этом протоколе передаются параллельно по разным портам. То есть например звук будет передаваться по порту с номером +1.

Другие опции можно посмотреть в vlc -H | less, ищи ключи вида --sout-rtp-*, часть --sout-rtp- убираешь, оставшееся можно использовать как параметры между фигурными скобками :rtp{}, например если --sout-rtp-proto udp, то :rtp{proto=udp,port=1935,...}.

Зы: у меня строка стриминга такая:

"rtp{dst=myserver.com,port=1935,proto=udp,name="RTSP Test",sdp=rtsp://0.0.0.0:8080/test.sdp}
anonymous
()
Ответ на: комментарий от anonymous

Поясню чуть смысл этого.

При подключении к порту 8080 будет запрошен SDP файл test.sdp, в этом файле прописаны параметры потоков и их адреса, в данном случае в этом файле будут указан IP, в который ресолвится myserver.com и порты 1935 плюс другие порты для других потоков (видео отдельно, аудио отдельно).

Вот так примерно будет выглядеть SDP файл:

v=0
o=- 15822978001081733813 15822978001081733813 IN IP4 FuckingComputer
s=RTSP Test
i=N/A
c=IN IP4 149.63.24.190
t=0 0
a=tool:vlc 2.2.2
a=recvonly
a=type:broadcast
a=charset:UTF-8
m=audio 1935 RTP/AVP 96
b=RR:0
a=rtpmap:96 mpeg4-generic/22050/2
a=fmtp:96 streamtype=5; profile-level-id=15; mode=AAC-hbr; config=1390; SizeLength=13; IndexLength=3; IndexDeltaLength=3; Profile=1;
a=rtcp:1936

В данном стриме только звук. Ах да, помимо портов для аудио и видео ещё задействован дополнительный порт для RTCP. Ну и по RTSP и RTP почитать не помешало бы, всё станет понятно.

anonymous
()
Ответ на: комментарий от anonymous

Спасибо)
vlc -H | less - великая вещь (и как я раньше не догадался:))
Но вот про IPv6 там ничего толкового не сказано, а у меня почему-то не цепляется клиент по IPv6. Пробовал всяко-разно - бесполезно.

Strannik-j ★★
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.