Qual codec devo usar para streaming de vídeo de baixa latência com VLC?

Qual codec devo usar para streaming de vídeo de baixa latência com VLC?

Estou procurando uma maneira de transmitir um vídeo de webcam com a menor latência possível. Qualidade e resolução são muito menos importantes.

Este é o comando que estou usando atualmente:

cvlc -vvv v4l2:///dev/video0 --sout '#transcode{vcodec=mp4v,vb=800,acodec=none}:rtp{sdp=rtsp://:8554/}'

Funciona, mas tem um atraso de 2.000 ms em uma LAN que é muito alto. Fico feliz em sacrificar a resolução ou qualidade para reduzir o atraso.

VLC tem uma lista decodecsmas não quero passar horas tentando instalá-los se eles ficarem lentos.

Responder1

A latência é um grande problema principalmente quando se utiliza a sincronização da captura de áudio com o vídeo online. Para mim trabalha com ocodec theo, estou usando este codec para controlar a resolução de transmissão a implementação deste codec é nativa em quase todas as compilações do VLC. No seu caso, você pode definir usando este formulário:

cvlc v4l2:///dev/video0 :v4l2-standard= :live-caching=1000 :sout="#transcode{vcodec=theo,vb=XXX,fps=30,scale=Y.Y}:rtp{sdp=rtsp://:554/test}"

onde XXX é a resolução e YY é a escala, exemplo:

cvlc v4l2:///dev/video0 :v4l2-standard= :live-caching=1000 :sout="#transcode{vcodec=theo,vb=300,fps=30,scale=0.2}:rtp{sdp=rtsp://:554/test}"

Fonte:https://forum.videolan.org/viewtopic.php?t=101547

informação relacionada