VLC en tant que serveur RTSP - l'authentification ne fonctionne pas

1

Paramètres : J'ai une IPcam et une framboise (RPi3 sous Raspbian avec VLC 3.0). Le problème se produit également lorsque je remplace la framboise par un ordinateur exécutant Debian, également avec VLC 3.0.

Objectif : Mon objectif est d’être en mesure d’accéder à distance au flux de la caméra IP par l’intermédiaire du RPI, c’est-à-dire d’exécuter vlc en tant que serveur RTSP sur le RPI. Cela fonctionne presque, mais j'ai toujours un problème avec la protection du flux sortant du RPI par un mot de passe.

Ce que j'ai fait : Sur le RPI, VLC fonctionne en tant que serveur RTSP, prenant en entrée le flux de la caméra.

La commande en cours d'exécution est:

cvlc rtsp: // ipcamlogin: ipcampassword @ ipcamIP: 554 / play1.sdp --sout '#transcode {acodec = mp4a, ab = 128, channels = 2, échantillonnage = 8000}: rtp {sdp = rtsp: // nom d'utilisateur: password @ rpiIP: 8080 / test.sdp} '--sout-ffmpeg-strict -2 --sout-avcodec-strict -2

(Presque) tout fonctionne, je peux voir ma webcam à distance en me connectant au RPi.

Le problème : Le problème est que bien que je diffuse sur rtsp: // nom d'utilisateur: mot de passe @ rpiIP: 8080 / test.sdp, le flux est accessible à l'adresse rtsp: // rpiIP: 8080 / test.sdp sans nom d'utilisateur / mot de passe a demandé. En d'autres termes, n'importe qui peut accéder au flux. Ma question est: comment puis-je protéger le flux de sortie avec un nom d'utilisateur / mot de passe?

Merci beaucoup.

toptop
la source

Réponses:

3

Pour configurer l'authentification du nom d'utilisateur et du mot de passe dans un flux RTSP, vous devez utiliser --sout-rtsp-useret --sout-rtsp-pwd.

La commande finale devrait être:

cvlc rtsp://ipcamlogin:ipcampassword@ipcamIP:554/play1.sdp --sout '#transcode{acodec=mp4a,ab=128,channels=2,samplerate=8000}:rtp{sdp=rtsp://rpiIP:8080/test.sdp}' --sout-ffmpeg-strict -2 --sout-avcodec-strict -2 --sout-rtsp-user username --sout-rtsp-pwd password

Le protocol://username:password@hostname:port/pathest utilisé lorsque vous vous connectez à un point d'extrémité distant. Lorsque vous créez votre propre flux, vous devez utiliser les --sout-...options.

utilisateur32292
la source