Usando Raspberry Pi como E/S para cámaras web

Usando Raspberry Pi como E/S para cámaras web

Estoy trabajando en un proyecto en el que se utiliza una Raspberry Pi como placa de E/S para múltiples servos, que en realidad están controlados por otra computadora, conectada a la RPi a través de Ethernet.

Necesito agregar 2 cámaras web USB al proyecto y me gustaría conectarlas al RPi para mantener la ubicación única para E/S, si eso tiene sentido.

Estoy buscando la forma más sencilla y de menor latencia de reenviar la entrada de las cámaras web a la máquina host. Intenté usar Usbip y ffmpeg para transmitir los datos, pero tuve problemas con ambos métodos. ¿Hay alguna otra sugerencia? ¿O debería seguir siguiendo uno de los métodos que he probado?

¡Gracias!

Respuesta1

¿Sus cámaras web tienen compresión de hardware? ¿O estás comprimiendo el RPi? Su procesador VideoCore es adecuado para este tipo de trabajo, pero... debes usar OpenMAX para descargar al VideoCore, ya que el coprocesador ARM donde se ejecuta Linux no está ni cerca de poder comprimir ni siquiera un flujo de baja definición. Los programas que cargan códecs VideoCore son omxplayeralgunos gstreamercomplementos.

Incluso usando VideoCore, tendrá problemas de ancho de banda al obtener datos de video sin procesar a través de la interconexión interna desde USB.

Por lo tanto, sus opciones factibles son

  1. Copie video precomprimido (dentro de la cámara web) desde USB a Ethernet.
  2. Utilice el módulo de cámara RPi que interactúa con un puerto de video de alto ancho de banda en Raspberry Pi, directamente en VideoCore para procesamiento y compresión.

La última opción probablemente tendrá una latencia bastante menor, pero solo obtendrás una transmisión. En teoría, es posible intercalar dos transmisiones a través de un único puerto de video, pero el códec en VideoCore debería diseñarse para aceptar y separar las dos transmisiones, y los datos técnicos para hacerlo están disponibles solo bajo NDA para los clientes más importantes de Broadcom.

Puede encontrar más información sobre el proceso de desarrollo de códecs de vídeo en los foros de Rasberry Pi. Versión corta: Broadcom hace la mayor parte del trabajo, la fundación Raspberry Pi tiene acceso a los datos técnicos pero no a suficientes ingenieros y la NDA les prohíbe subcontratar el trabajo.

información relacionada