Ambos mjpeg_streamery motionparecen tener mejor latencia que cvlc.
Utilizando mjpg_streamer
mjpeg_streamer requiere compilación pero las instrucciones en el github son sencillas.
Después de la compilación, se puede ejecutar iniciando start.shdesde el directorio del proyecto o directamente (en el directorio del proyecto):
./mjpg_streamer -i "./input_uvc.so -rot 180" -o "./output_http.so -w ./www -p 8090"
donde 8090esta el puerto TCP Si no se especifica, el puerto 8080se usará de manera predeterminada. El start.shscript contiene algunos ejemplos de uso con opciones adicionales.
Utilizando motion
Motion incluye un servicio systemd que facilita el inicio automático al arrancar, detener o reiniciar.
Para usarlo en el modo de cámara web IP, se deben establecer las siguientes configuraciones /etc/motion/motion.conf:
daemon on
stream_localhost off
output_pictures off
ffmpeg_output_movies off
stream_maxrate 24
framerate 24
width 640
height 480
A continuación, en /etc/default/motionconjunto:
start_motion_daemon=yes
Para hacer que el servicio se inicie automáticamente en el arranque:
systemctl enable motion
Úselo systemctl start/stop/restart motionpara la acción correspondiente.
El puerto de transmisión predeterminado es 8081. El puerto se establece en stream_portin /etc/motion/motion.conf.