Tabla de contenido:
- Paso 1: Guía de hardware
- Paso 2: Instalación del sistema operativo en Raspberry Pi
- Paso 3: Configure VNC en Raspberry Pi para controlar de forma remota
- Paso 4: configuración de la cámara
- Paso 5: instalación y configuración
- Paso 6: Capturas de pantalla de SALIDA
Video: Cámara impulsada por voz con Raspberry Pi: 6 pasos
2024 Autor: John Day | [email protected]. Última modificación: 2024-01-30 08:44
Desarrolle una cámara que pueda funcionar con comandos de voz, esto está diseñado principalmente para personas de todo tipo, especialmente para las personas que buscan la fotografía de momentos divertidos.
Paso 1: Guía de hardware
VDC está diseñado en Raspberry Pi (Modelo B) y requiere hardware adicional como un adaptador wifi (opcional) y un micrófono USB. El hardware sugerido se indica a continuación con enlaces para obtener más detalles. Puede probar marcas / especificaciones de hardware ligeramente diferentes. VDC no está afiliado a ninguno de los proveedores de hardware vinculados.
La lista completa
- Raspberry Pi Modelo B
- Picamera
- Mini micrófono USB
- Tarjeta SD
- Cable de ethernet
- Adaptador mini-USB (opcional)
- Micro USB - cargador de pared
- Altavoces que funcionan a través del conector de audio Raspberry Pi (probablemente necesiten autoalimentación)
La Lista de periféricos verificados de Raspberry Pi puede ser útil para encontrar sustitutos de los productos recomendados anteriormente.
Montaje
El montaje de los componentes necesarios es sencillo. Inserte el micrófono, la tarjeta SD, el adaptador inalámbrico (si tiene uno), el cable micro-USB, el cable ethernet y los altavoces en la Raspberry Pi. Se recomienda el adaptador de carga de pared USB para alimentar, como dispositivo independiente.
El cable ethernet se utilizará para iniciar sesión en el pi desde una computadora durante el paso de instalación del software. Después de la instalación, si prefiere utilizar una conexión inalámbrica, este cable se puede quitar.
Conexión a Internet
Como se mencionó anteriormente, el adaptador inalámbrico es opcional. Funciona bien en una conexión por cable (a través de Ethernet), por lo que puede elegir entre las dos configuraciones según lo que funcione mejor para usted.
Paso 2: Instalación del sistema operativo en Raspberry Pi
Introducción
Raspberry Pi es un microprocesador del tamaño de una tarjeta de crédito disponible en diferentes modelos con diferentes velocidades de procesamiento a partir de 700 MHz. Ya sea que tenga un modelo B o un modelo B +, o la versión muy antigua, el proceso de instalación sigue siendo el mismo. Las personas que han visitado el sitio web oficial de Raspberry Pi, pueden haberlos visto recomendando el sistema operativo "NOOBS" o "NOOBS LITE" (también conocido como "SO") para principiantes. Pero usar el Pi es muy fácil y, de ser un principiante, uno se convertirá en profesional en poco tiempo. Por lo tanto, es mejor optar por el sistema operativo más potente y eficiente, el Raspbian. La razón principal por la que Raspbian es extremadamente popular es que tiene miles de bibliotecas preconstruidas para realizar muchas tareas y optimizar el sistema operativo. Esto constituye una gran ventaja al crear aplicaciones.
Descargando Raspbian e Image Writer
Descargue la última versión de Raspbian desde aquí. Puede descargarlo directamente o mediante los torrents.
Página de Raspbian
Enlace de descarga del sistema operativo Raspbian
Necesitará un escritor de imágenes para escribir el sistema operativo descargado en la tarjeta SD (tarjeta micro SD en el caso del modelo Raspberry Pi B +). Así que descargue el "generador de imágenes de disco win32" desde aquí.
Escribiendo la imagen
Inserte la tarjeta SD en la computadora portátil / pc y ejecute el escritor de imágenes. Una vez abierto, busque y seleccione el archivo de imagen Raspbian descargado. Seleccione el dispositivo correcto, que es la unidad que representa la tarjeta SD. Si la unidad (o dispositivo) seleccionada es diferente de la tarjeta SD, la otra unidad seleccionada se dañará. Así que ten cuidado.
Después de eso, haga clic en el botón "Escribir" en la parte inferior. Como ejemplo, vea la imagen a continuación, donde la unidad de la tarjeta SD (o micro SD) está representada por la letra "G: \"
Una vez que se complete la escritura, expulse la tarjeta SD e insértela en la Raspberry Pi y enciéndala. Debería comenzar a arrancar.
Configurando el Pi
Recuerde que después de arrancar el Pi, puede haber situaciones en las que se le soliciten las credenciales del usuario, como el "nombre de usuario" y la contraseña. Raspberry Pi viene con un nombre de usuario y contraseña predeterminados, por lo que siempre utilícelos cuando se le solicite. Las credenciales son:
inicio de sesión: pi
contraseña: frambuesa
Cuando el Pi se ha iniciado por primera vez, debería aparecer una pantalla de configuración llamada "Opciones de configuración" y se verá como la imagen de abajo.
Si se ha perdido la pantalla "Opciones de configuración", no es un problema, siempre puede obtenerla escribiendo el siguiente comando en la terminal.
sudo raspi-config
Una vez que ejecute este comando, aparecerá la pantalla "Opciones de configuración" como se muestra en la imagen de arriba.
Ahora que la ventana Opciones de configuración está abierta, tendremos que configurar algunas cosas. Después de completar cada uno de los pasos a continuación, si solicita reiniciar la Pi, hágalo. Después del reinicio, si no aparece la pantalla "Opciones de configuración", siga el comando anterior para obtener la pantalla / ventana.
Lo primero que debes hacer:
seleccione la primera opción en la lista de la ventana de opciones de configuración, es decir, seleccione el
Expandir el sistema de archivos
opción y presione la tecla Enter. Hacemos esto para hacer uso de todo el espacio presente en la tarjeta SD como una partición completa. Todo lo que esto hace es expandir el sistema operativo para que se ajuste a todo el espacio en la tarjeta SD, que luego se puede usar como memoria de almacenamiento para el Pi. Lo segundo que debes hacer:
seleccione la tercera opción en la lista de la ventana de opciones de configuración, es decir, seleccione la opción "Habilitar arranque en escritorio / Scratch" y presione la tecla Intro. Lo llevará a otra ventana llamada "elegir opción de arranque" que se parece a la imagen de abajo.
En la "ventana elegir opción de arranque", seleccione la segunda opción, es decir, "Escritorio Inicie sesión como usuario 'pi' en el escritorio gráfico" y presione el botón Intro. Una vez hecho esto, volverá a la página "Opciones de configuración". De lo contrario, seleccione el botón "Aceptar" en la parte inferior de esta ventana y volverá a la ventana anterior. Hacemos esto porque queremos arrancar en el entorno de escritorio con el que estamos familiarizados. Si no hacemos este paso, la Raspberry Pi se inicia en un terminal cada vez que no tiene opciones de GUI. Una vez que haya realizado ambos pasos, seleccione el botón "finalizar" en la parte inferior de la página y debería reiniciarse automáticamente. Si no es así, utilice el siguiente comando en la terminal para reiniciar.
sudo reiniciar
Actualizar el firmware
Después del reinicio del paso anterior, si todo salió bien, terminará en el escritorio que se parece a la imagen de abajo.
Una vez que esté en el escritorio, abra una terminal e ingrese el siguiente comando para actualizar el firmware de la Pi.
sudo rpi-update
Es necesario actualizar el firmware porque es posible que ciertos modelos de Pi no tengan todas las dependencias necesarias para funcionar sin problemas o pueden tener algún error. El último firmware puede tener la solución a esos errores, por lo que es muy importante actualizarlo al principio.
aquí está el enlace de video disponible:
Instalación y configuración del sistema operativo Raspbian Jessie en Raspberry Pi (haga clic en el enlace)
Paso 3: Configure VNC en Raspberry Pi para controlar de forma remota
VNC (Computación en red virtual)
A veces no es conveniente trabajar directamente en la Raspberry Pi. Tal vez le gustaría trabajar en él desde otro dispositivo por control remoto.
VNC es un sistema gráfico de uso compartido de escritorio que le permite controlar de forma remota la interfaz de escritorio de una computadora (ejecutando VNC Server) desde otra computadora o dispositivo móvil (ejecutando VNC Viewer). VNC Viewer transmite el teclado y el mouse o los eventos táctiles al VNC Server y, a cambio, recibe actualizaciones en la pantalla.
Verá el escritorio de la Raspberry Pi dentro de una ventana en su computadora o dispositivo móvil. Podrá controlarlo como si estuviera trabajando en la propia Raspberry Pi.
VNC Connect de RealVNC se incluye con Raspbian. Consiste en VNC Server, que le permite controlar su Raspberry Pi de forma remota, y VNC Viewer, que le permite controlar las computadoras de escritorio de forma remota desde su Raspberry Pi si así lo desea.
Debe habilitar VNC Server antes de poder usarlo: las instrucciones para esto se dan a continuación. De forma predeterminada, VNC Server le brinda acceso remoto al escritorio gráfico que se ejecuta en su Raspberry Pi, como si estuviera sentado frente a él.
Habilitación del servidor VNC
En su Raspberry Pi, ejecute los siguientes comandos para asegurarse de tener la última versión de VNC Connect:
sudo apt-get update
sudo apt-get install realvnc-vnc-server realvnc-vnc-viewer
Ahora habilite VNC Server. Puede hacer esto gráficamente o en la línea de comando.
Habilitar el servidor VNC gráficamente
En su Raspberry Pi, inicie en el escritorio gráfico.
Seleccione Menú> Preferencias> Configuración de Raspberry Pi> Interfaces.
Asegúrese de que VNC esté habilitado. Habilitación del servidor VNC en la línea de comando
Puede habilitar VNC Server en la línea de comando usando raspi-config:
sudo raspi-config
Ahora, habilite VNC Server haciendo lo siguiente:
Navegue a las opciones de interfaz
Desplácese hacia abajo y seleccione VNC> Sí. Conexión a su Raspberry Pi con VNC Viewer
Hay dos formas de conectarse a su Raspberry Pi. Puede usar uno o ambos, dependiendo de lo que funcione mejor para usted.
Establecer una conexión directa
Las conexiones directas son rápidas y sencillas siempre que esté conectado a la misma red local privada que su Raspberry Pi. Por ejemplo, puede ser una red cableada o inalámbrica en casa, en la escuela o en la oficina).
En su Raspberry Pi (usando una ventana de terminal o vía SSH) use estas instrucciones o ejecute ifconfig para descubrir su dirección IP privada.
ifconfig
En el dispositivo que usará para tomar el control, descargue VNC Viewer. Para obtener los mejores resultados, use la aplicación compatible de RealVNC.
Ingrese la dirección IP privada de su Raspberry Pi en VNC Viewer:
Establecer una conexión a la nube
Tiene derecho a utilizar el servicio en la nube de RealVNC de forma gratuita, siempre que el acceso remoto sea solo con fines educativos o no comerciales.
Las conexiones en la nube son convenientes y están encriptadas de un extremo a otro. Son muy recomendables para conectarse a su Raspberry Pi a través de Internet. No hay reconfiguración de firewall o enrutador, y no necesita saber la dirección IP de su Raspberry Pi ni proporcionar una estática.
Regístrese para obtener una cuenta RealVNC aquí: es gratis y solo toma unos segundos.
En su Raspberry Pi, inicie sesión en VNC Server con sus nuevas credenciales de cuenta RealVNC:
En el dispositivo que usará para tomar el control, descargue VNC Viewer. Debe utilizar la aplicación compatible de RealVNC
Inicie sesión en VNC Viewer con las mismas credenciales de cuenta RealVNC y luego toque o haga clic para conectarse a su Raspberry Pi:
Autenticarse en el servidor VNC
Para completar una conexión directa o en la nube, debe autenticarse en VNC Server.
Si se está conectando desde la aplicación VNC Viewer compatible de RealVNC, ingrese el nombre de usuario y la contraseña que usa normalmente para iniciar sesión en su cuenta de usuario en la Raspberry Pi. De forma predeterminada, estas credenciales son pi y raspberry.
Si se está conectando desde una aplicación que no es de RealVNC Viewer, primero deberá degradar el esquema de autenticación del servidor VNC, especificar una contraseña única para el servidor VNC y luego ingresarla en su lugar. Para hacer esto, abra el cuadro de diálogo VNC Server en su Raspberry Pi, seleccione Menú> Opciones> Seguridad, y elija la contraseña de VNC en Autenticación.
Para activar esta función:
En su Raspberry Pi, abra el cuadro de diálogo VNC Server.
Vaya a Menú> Opciones> Solución de problemas y seleccione Habilitar el modo de captura directa experimental.
En el dispositivo que usará para tomar el control, ejecute VNC Viewer y conéctese.
Nota: las conexiones existentes deben reiniciarse para que estos cambios surtan efecto.
Si el rendimiento parece deteriorado, pruebe estos pasos de solución de problemas o informe a RealVNC.
Creando un escritorio virtual
Si su Raspberry Pi no tiene cabeza (es decir, no está conectada a un monitor) o controla un robot, es poco probable que esté ejecutando un escritorio gráfico.
VNC Server puede crear un escritorio virtual para usted, brindándole acceso remoto gráfico a pedido. Este escritorio virtual existe solo en la memoria de su Raspberry Pi:
Para crear y conectarse a un escritorio virtual:
En su Raspberry Pi (usando Terminal o vía SSH), ejecute el servidor vnc. Tome nota de la dirección IP / número de pantalla que VNC Server imprimirá en su terminal (por ejemplo, 192.167. **. **).
En el dispositivo que usará para tomar el control, ingrese esta información en VNC Viewer. Para destruir un escritorio virtual, ejecute el siguiente comando:
vncserver -kill:
Esto también detendrá cualquier conexión existente a este escritorio virtual.
Paso 4: configuración de la cámara
Configurar el hardware de la cámara
Advertencia: las cámaras son sensibles a la estática. Conéctese a tierra antes de manipular la PCB. Un grifo de fregadero o similar debería ser suficiente si no tienes una correa de puesta a tierra.
La placa de la cámara se conecta a la Raspberry Pi a través de un cable plano de 15 vías. Solo hay que hacer dos conexiones: el cable plano debe estar conectado a la PCB de la cámara y a la propia Raspberry Pi. Debe colocar el cable en la forma correcta o la cámara no funcionará. En la placa de circuito impreso de la cámara, la parte trasera azul del cable debe mirar hacia afuera de la placa de circuito impreso, y en la Raspberry Pi debe mirar hacia la conexión Ethernet (o hacia donde estaría el conector Ethernet si está usando un modelo A).
Aunque los conectores del PCB y del Pi son diferentes, funcionan de manera similar. En la propia Raspberry Pi, levante las pestañas de cada extremo del conector. Debe deslizarse hacia arriba con facilidad y poder girar ligeramente. Inserte completamente el cable plano en la ranura, asegurándose de que quede recto, luego presione suavemente las pestañas para sujetarlo en su lugar. El conector de PCB de la cámara también requiere que retire las pestañas de la placa, inserte suavemente el cable y luego empuje las pestañas hacia atrás. El conector de PCB puede ser un poco más incómodo que el de la propia Pi.
Configurar el software de la cámara
Ejecute las siguientes instrucciones en la línea de comandos para descargar e instalar el kernel, el firmware de la GPU y las aplicaciones más recientes. Necesitará una conexión a Internet para que esto funcione correctamente.
sudo apt-get update
sudo apt-get upgrade
Ahora necesita habilitar el soporte de la cámara usando el
raspi-config
programa que habrá utilizado la primera vez que configuró su Raspberry Pi.
sudo raspi-config
Utilice las teclas del cursor para desplazarse a la opción de cámara y seleccione 'habilitar'. Al salir de raspi-config, le pedirá que reinicie. La opción de habilitación garantizará que, al reiniciar, el firmware de la GPU correcto se ejecutará con el controlador y la sintonización de la cámara, y la división de memoria de la GPU es suficiente para permitir que la cámara adquiera suficiente memoria para funcionar correctamente.
Si no está habilitado, habilítelo y reinicie su Pi para comenzar
Para probar que el sistema está instalado y funcionando, pruebe el siguiente comando:
raspistill -v -o test.jpg
La pantalla debe mostrar una vista previa de cinco segundos de la cámara y luego tomar una foto, guardada en el archivo test.jpg, mientras muestra varios mensajes informativos.
RASPIVIDO
Raspivid es la herramienta de línea de comandos para capturar video con el módulo de la cámara.
Con el módulo de la cámara conectado y habilitado, grabe un video usando el siguiente comando:
rasposo -o vid.h264
Recuerda usar
-hf
y
-vf
para voltear la imagen si es necesario, como con
raspistill
Esto guardará un archivo de video de 5 segundos en la ruta dada aquí como vid.h264 (duración predeterminada).
Especificar la duración del video
Para especificar la duración del video grabado, pase la marca -t con una cantidad de milisegundos. Por ejemplo:
raspivid -o video.h264 -t 10000
Esto grabará 10 segundos de video.
Formato de video MP4
El Pi captura video como un flujo de video H264 sin procesar. Muchos reproductores multimedia se negarán a reproducirlo, o lo reproducirán a una velocidad incorrecta, a menos que esté "envuelto" en un formato contenedor adecuado como MP4. La forma más sencilla de obtener un archivo MP4 del
rasposo
El comando está usando MP4Box.
Instale MP4Box con este comando:
sudo apt-get install -y gpac
Capture su video sin procesar con raspivid y envuélvalo en un contenedor MP4 como este:
# Capture 30 segundos de video sin procesar a 640x480 y una tasa de bits de 150kB / s en un archivo pivideo.h264:
raspivid -t 30000 -w 640 -h 480 -fps 25 -b 1200000 -p 0, 0, 640, 480 -o pivideo.h264 # Envuelva el video sin procesar con un contenedor MP4 MP4Box -add pivideo.h264 pivideo.mp4 # Quitar el archivo sin procesar de origen, dejando el archivo pivideo.mp4 restante para reproducir rm pivideo.h264
Alternativamente, envuelva MP4 alrededor de su salida raspivid existente, así:
MP4Box -add video.h264 video.mp4
Paso 5: instalación y configuración
Siga estas instrucciones solo si desea compilar su software desde cero. Estos pasos a continuación son necesarios y recomendados como el mismo proceso de instalación en su Raspberry pi.
Instalando las dependencias
Instalación de Sphinxbase / Pocketsphinx
Primero, necesitas instalar Pocketsphinx. Si está utilizando Debian Sid (inestable) o Jessie (prueba), puede hacer lo siguiente:
sudo apt-get update
sudo apt-get instalar PocketSphinx
Comience instalando algunas dependencias:
sudo apt-get install subversion autoconf libtool automake gfortran g ++ --sí
Luego, muévase a su directorio de inicio (o Jasper) para verificar e instalar CMUCLMTK:
svn co
cd cmuclmtk /
./autogen.sh && make && sudo make install
CD..
Luego, cuando haya salido del directorio CMUCLTK, descargue las siguientes bibliotecas:
Instalación de Phonetisaurus, m2m-aligner y MITLM
Para utilizar el motor STT de Pocketsphinx, también necesita instalar MIT Language Modeling Toolkit, m2m-aligner y Phonetisaurus (y por lo tanto OpenFST).
Si no está usando Debian, siga estos pasos:
#-original:
# wget
#-nuevo:
wget
wget
wget
wget
Desinstalar las descargas:
tar -xvf m2m-aligner-1.2.tar.gz
tar -xvf openfst-1.3.4.tar.gz
tar -xvf is2013-conversion.tgz
tar -xvf mitlm-0.4.1.tar.gz
Construir OpenFST:
cd openfst-1.3.4 /
sudo./configure --enable-compact-fsts --enable-const-fsts --enable-far --enable-lookahead-fsts --enable-pdt
time sudo make install # regresa después de mucho tiempo
CD..
reales 66m38.394s
usuario 64m42.620s
sys 1m2.150s
df -h /
Tamaño del sistema de archivos utilizado Uso disponible% Montado en / dev / root 14G 4.4G 8.3G 35% /
Construir M2M:
cd m2m-alineador-1.2 /
sudo hacer
CD..
Construir MITLMT:
cd mitlm-0.4.1 /
sudo./configure
sudo hacer instalar
CD..
Construir Phonetisaurus:
cd is2013-conversión / phonetisaurus / src
sudo hacer
CD
Mueva algunos de los archivos compilados:
sudo cp ~ / m2m-aligner-1.2 / m2m-aligner / usr / local / bin / m2m-aligner
#-original:
# sudo cp ~ / phonetisaurus-0.7.8 / phonetisaurus-g2p / usr / local / bin / phonetisaurus-g2p
#-necesita ser:
sudo cp ~ / is2013-conversion / bin / phonetisaurus-g2p / usr / local / bin / phonetisaurus-g2p
Tenga en cuenta la ruta modificada para el ejecutable.
Obtenga y construya el modelo Phonetisaurus FST
wget
tar -xvf g014b2b.tgz
cd g014b2b /
./compile-fst.sh
CD..
Finalmente, cambie el nombre de la siguiente carpeta para su conveniencia:
mv ~ / g014b2b ~ / phonetisaurus
Una vez que se completen las instalaciones, reinicie su Pi.
Siguiendo las instrucciones de
También agregué el (nuevo) archivo `/ etc / modprobe.d / alsa-base.conf` con este contenido:
# Esto establece el valor de índice de las tarjetas pero no reordena.
opciones snd_usb_audio index = 0
opciones snd_bcm2835 index = 1
# Realiza el reordenamiento.
opciones snd slots = snd_usb_audio, snd_bcm2835
para asegurar el orden correcto de los dispositivos de sonido (aunque no estoy completamente seguro de que esto sea realmente necesario)
Terminado con las instalaciones, algunas depuraciones a continuación …
Intentando iniciar jaspe:
pi @ AVIV: ~ $./jasper/jasper.py
Rastreo (llamadas recientes más última):
Archivo "./jasper/jasper.py", línea 12, de cliente import tts, stt, jasperpath, diagnóstico Archivo "/home/pi/jasper/client/tts.py", línea 41, en importación de diagnóstico Archivo "/ home / pi / jasper / client / diagnostose.py ", línea 9, en el archivo import pip.req" /usr/lib/python2.7/dist-packages/pip/_init_.py ", línea 74, desde pip. vcs import git, mercurial, subversion, bazaar # noqa File "/usr/lib/python2.7/dist-packages/pip/vcs/mercurial.py", línea 9, desde pip.download import path_to_url File "/ usr / lib / python2.7 / dist-packages / pip / download.py ", línea 25, desde request.compat import IncompleteRead ImportError: no se puede importar el nombre IncompleteRead
Corregido con:
sudo easy_install -U pip
Siguiente asunto:
pi @ AVIV: ~ $./jasper/jasper.py
*******************************************************
* JASPER - EL ORDENADOR QUE HABLA * * (c) 2015 Shubhro Saha, Charlie Marsh y Jan Holthuis * *************************** ************************** ERROR: root: ¡Se produjo un error! Traceback (última llamada más reciente): Archivo "./jasper/jasper.py", línea 143, en app = Jasper () Archivo "./jasper/jasper.py", línea 88, en _init_ stt_engine_class = stt.get_engine_by_slug (stt_engine_slug) Archivo "/home/pi/jasper/client/stt.py", línea 648, en get_engine_by_slug "dependencias, etc.)")% slug)
ValueError: el motor STT 'sphinx' no está disponible (debido a dependencias faltantes, dependencias faltantes, etc.)
difícil
sudo apt-get install -y python-bagsphinx
Corregir la ruta a `../ phonetisaurus / g014b2b.fst` para que sea` / home / pi / phonetisaurus / g014b2b.fst` en su lugar (en `.jasper / profile.yml`)
pi @ AVIV: ~ $./jasper/jasper.py
*******************************************************
* JASPER - EL ORDENADOR QUE HABLA * * (c) 2015 Shubhro Saha, Charlie Marsh y Jan Holthuis * *************************** ************************** ERROR: client.stt: hmm_dir '/ usr / local / share / bagsphinx / model / hmm / en_US / hub4wsj_sc_8k ' ¡no existe! Asegúrese de haber configurado el hmm_dir correcto en su perfil.
Arregle / active la ruta para esto en `profile.yml` también:
hmm_dir: '/ usr / share / bagsphinx / model / hmm / en_US / hub4wsj_sc_8k' #opcional
(tenga en cuenta la ausencia de "local" en la ruta)
Éxito parcial -:
pi @ AVIV: ~ $./jasper/jasper.py
*******************************************************
* JASPER - EL ORDENADOR QUE HABLA * * (c) 2015 Shubhro Saha, Charlie Marsh y Jan Holthuis * *************************** ************************** ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Tarjetas PCM desconocidas.pcm.rear ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Tarjetas PCM desconocidas.pcm.center_lfe ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Tarjetas PCM desconocidas.pcm.side ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Tarjetas PCM desconocidas ALSA lib pcm.hdmi pcm.c: 2239: (snd_pcm_open_noupdate) Tarjetas PCM desconocidas.pcm.hdmi ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Tarjetas PCM desconocidas.pcm.modem ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Tarjetas PCM desconocidas..modem ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Tarjetas PCM desconocidas. pcm.phoneline ALSA lib pcm.c: 2239: (snd_pcm_open_noupdate) Tarjetas PCM desconocidas. pcm.phoneline ALSA lib pulse.c: 243: (pulse_connect) PulseAudio: No se puede conectar: Conexión rechazada ALSA lib pulse.c: 243: (pulse_connect) PulseAudio: No se puede conectar: Conexión rechazada No se puede conectar para servir r socket err = No existe tal archivo o directorio No se puede conectar con el servidor de solicitud de canal El servidor no se está ejecutando o no se puede iniciar La expresión 'paInvalidSampleRate' falló en 'src / hostapi / alsa / pa_linux_alsa.c', línea: 2048 Expresión 'PaAlsaStreamComponent_InitialConfigure (& self -> capture, inParams, self-> primeBuffers, hwParamsCapture, & realSr) 'falló en' src / hostapi / alsa / pa_linux_alsa.c ', línea: 2719 Expresión' PaAlsaStream_Configure (stream, inputParameters, outputParameters, sampleRufcyfer, frames & outputPerLatency, & hostBufferSizeMode) 'falló en' src / hostapi / alsa / pa_linux_alsa.c ', línea: 2843 Traceback (última llamada más reciente): Archivo "./jasper/jasper.py", línea 148, en app.run () Archivo "./jasper/jasper.py", línea 118, en ejecutar conversación.handleForever () Archivo "/home/pi/jasper/client/conversation.py", línea 31, en handleForever umbral, transcrito = self.mic.passiveListen (self.persona) Archivo "/home/pi/jasper/client/mic.py", línea 110, en passiveListen frames_per_buffer = CHUNK) Archivo "/usr/lib/python2.7/dist-packages/pyaudio.py", línea 747, en flujo abierto = Stream (self, * args, ** kwargs) Archivo "/usr/lib/python2.7/dist -packages / pyaudio.py ", línea 442, en _init_ self._stream = pa.open (** argumentos) IOError: [Errno Invalid sample rate] -9997
OK, arreglar RATE y CHUNK de esta manera parece ir más lejos:
diff --git a / cliente / mic.py b / cliente / mic.py
índice 401cddb..dee49fe 100644
--- a / client / mic.py
+++ b / cliente / mic.py
@@ -93, 8 +93, 8 @@ clase Mic:
"""
THRESHOLD_MULTIPLIER = 1.8
- TARIFA = 16000
- TROZO = 1024
+ TARIFA = 44100 # 16000
+ CHUNK = 4096 # 1024
# número de segundos para permitir establecer el umbral
THRESHOLD_TIME = 1
Paso 6: Capturas de pantalla de SALIDA
Recomendado:
La cámara web más sencilla como cámara de seguridad: detección de movimiento e imágenes enviadas por correo electrónico: 4 pasos
Cámara web más sencilla como cámara de seguridad: detección de movimiento e imágenes enviadas por correo electrónico: ya no es necesario descargar o configurar el software para obtener imágenes de detección de movimiento desde su cámara web a su correo electrónico; simplemente use su navegador. Utilice un navegador Firefox, Chrome, Edge u Opera actualizado en Windows, Mac o Android para capturar la imagen
Cómo conectar una matriz LED 8x8 impulsada por MAX7219 con el microcontrolador ATtiny85: 7 pasos
Cómo conectar una matriz LED 8x8 impulsada por MAX7219 con un microcontrolador ATtiny85: El controlador MAX7219 fabricado por Maxim Integrated es un controlador de pantalla de cátodo común de entrada / salida en serie compacto que podría conectar microcontroladores a 64 LED individuales, pantallas LED numéricas de 7 segmentos de hasta a 8 dígitos, visualización de gráfico de barras
Robot Arduino controlado por voz + cámara Wifi + pinza + APLICACIÓN y uso manual y modo para evitar obstáculos (KureBas Ver 2.0): 4 pasos
Robot Arduino controlado por voz + Cámara Wifi + Pinza + APLICACIÓN y uso manual y modo para evitar obstáculos (KureBas Ver 2.0): KUREBAS V2.0 está de vuelta Es muy impresionante con nuevas características. Tiene pinza, cámara Wifi y una nueva aplicación que produjo para él
Cola oscilante impulsada por alambre suave (curso TfCD, TU Delft): 5 pasos (con imágenes)
Cola oscilante impulsada por cables blandos (curso TfCD, TU Delft): se ejecutó una exploración tecnológica para determinar la posibilidad de activar un robot pez con un cuerpo activo impulsado por cables y una cola flexible. Usamos un material que es a la vez resistente para servir como columna vertebral y flexible, creando un doblez uniforme
¡Construye una cabeza de robot parlante impulsada por Arduino !: 26 pasos (con imágenes)
¡Construye una cabeza de robot parlante impulsada por Arduino !: Esta cabeza de robot se construyó originalmente como un proyecto de fin de año para mi clase de computación física, pero durante el verano ha " aprendido " como hablar. El cabezal está alimentado por dos Freeduinos, 3 chips TLC5940NT y una Adafruit Industries