2 votos

Alimentación RTSP con ffmpeg y la cámara del Mac

Tengo dos Macs en mi red. En el primero quiero capturar la cámara de FaceTime a través de ffmpeg y hacer un feed RTSP disponible en la red, que puedo ver en el segundo Mac.

4voto

Lemon Cat Puntos 31

He implementado con éxito algo cercano a esto (no verdadero RTSP, sino RTP streaming sobre UDP) con el siguiente hardware y software:

  • Macbook Pro 2012, MacOS Mojave 10.14.6
  • ffmpeg versión 3.4.8
  • ffplay versión 4.3.2 (mi ejecutable se llamaba ffplay4 )

Enumerar los dispositivos de entrada de audio y vídeo con ffmpeg -f avfoundation -list_devices true -i ""

En el MBP de 2012, el primer dispositivo de vídeo (índice 0 ) es FaceTime HD Camera (Built-in) y el primer dispositivo de audio (índice 0 ) es Built-in Microphone .

La captura/envío de vídeo y la recepción/reproducción de vídeo pueden realizarse en la misma máquina, o ffmpeg puede enviar a una IP remota. En este ejemplo, está enviando un flujo de transporte MPEG a través de UDP a la dirección loopback 127.0.0.1:9988 pero podría ser fácilmente la dirección IP y el puerto de otro Mac:

ffmpeg \
  -f avfoundation \
  -pix_fmt yuyv422 \
  -video_size 320x240 \
  -framerate 15 \
  -i "0:0" -ac 2 \
  -vf format=yuyv422 \
  -vcodec libx264 -maxrate 2000k \
  -bufsize 2000k -acodec aac -ar 44100 -b:a 128k \
  -f rtp_mpegts udp://127.0.0.1:9988

Para recibir y reproducir el vídeo:

ffplay4 -i udp://@0.0.0.0:9988

Puede tardar unos segundos en iniciarse y habrá algunos errores al principio, pero el vídeo debería empezar a reproducirse en ffplay4 en un par de segundos.

Bonificación: este flujo también se puede ver con VLC (versión 3.0.12). File -> Open Network -> URL rtp://@127.0.0.1:9988 . De nuevo, tardará unos segundos (5-10) en empezar a mostrar el vídeo.

Feliz transmisión.

AppleAyuda.com

AppleAyuda es una comunidad de usuarios de los productos de Apple en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X