La tarjeta de sonido USB sin controladores de JuxiTechnology es un dispositivo de audio plug-and-play que admite el estándar UAC (USB Audio Class) y puede utilizarse sin instalar controladores adicionales en los principales sistemas operativos como Windows, Linux y macOS. Admite grabación y reproducción de audio y es adecuada para escenarios como desarrollo embebido, reconocimiento de voz y captura de audio.
Funciones principales
- Plug-and-Play: Cumple el estándar UAC, sin necesidad de instalar controladores; conéctalo a un puerto USB y úsalo
- Grabación de audio: admite frecuencias de muestreo de 16 kHz/48 kHz y grabación de audio con precisión de 16 bits
- Reproducción de audio: admite salida estéreo, se pueden conectar auriculares o altavoces
- Compatibilidad multiplataforma: compatible con Windows, Linux, macOS, Jetson, Raspberry Pi, RDK y otras plataformas
- Configuración flexible: admite frameworks de audio como ALSA/PulseAudio, con parámetros personalizables como frecuencia de muestreo y número de canales
Inicio rápido
1. Identificación del dispositivo
Después de conectar la tarjeta de sonido USB, puedes verificar con el siguiente comando si el dispositivo es reconocido por el sistema:
# View USB device list
lsusb | grep -i audio
# View recording device list
arecord -l
# View playback device list
aplay -l
2. Pruebas de audio básicas
2.1 Prueba de grabación
Ejecuta el siguiente comando para grabar 5 segundos de audio:
arecord -D plughw:X,0 -f S16_LE -r 16000 -d 5 -t wav test.wav
-
plughw:X,0: X es elarecord -lnúmero de tarjeta de sonido mostrado por el comando -
-f S16_LE: usa un formato de audio de 16 bits little-endian -
-r 16000: frecuencia de muestreo de 16 kHz -
-d 5: duración de grabación de 5 segundos -
test.wav: nombre del archivo de salida
2.2 Prueba de reproducción
Una vez grabado, ejecuta el siguiente comando para reproducir el audio grabado:
aplay -D plughw:X,0 -f S16_LE -r 16000 -c 1 test.wav
3. Ajuste del volumen
Usa alsamixer para ajustar el volumen:
alsamixer
- Pulsa
F6para seleccionar la tarjeta de sonido USB - Pulsa
F5para mostrar a la vez los dispositivos de grabación y reproducción - Usa las flechas arriba/abajo para ajustar el volumen
- Pulsa
Mpara cancelar el silencio - Pulsa
ESCpara salir
Cuando termines el ajuste, guarda la configuración:
sudo alsactl store
Configuración de compatibilidad del sistema
1. Configuración básica de Linux
Instala las herramientas necesarias:
sudo apt update && sudo apt install alsa-base alsa-utils usbutils
Comprueba la compatibilidad del núcleo:
# Check if snd_usb_audio module exists
modinfo snd_usb_audio
# Load module (if not loaded)
sudo modprobe snd_usb_audio
Configuración de permisos:
# Add current user to audio group
sudo usermod -aG audio $USER
2. Configuración especial para plataformas Jetson/Raspberry Pi/RDK
2.1 Solución de problemas de dispositivo ocupado
Si el dispositivo está ocupado:
# View processes occupying audio devices
sudo lsof /dev/snd/*
# Kill the occupying process
kill -9
2.2 Solución de problemas de ruido
En la plataforma Raspberry Pi, el ruido puede reducirse modificando la configuración:
sudo vi /boot/config.txt
# Add the following content
audio_pwm_mode = 2
# Save and reboot
sudo reboot
Ejemplo de llamada en Python
Ejemplo de grabación de audio con la tarjeta de sonido USB sin controladores mediante Python:
import sounddevice as sd
import numpy as np
import wave
# Configuration parameters
samplerate = 16000
duration = 5 # Recording duration in seconds
channels = 1
# Record audio
print("Recording started...")
recording = sd.rec(int(duration * samplerate), samplerate=samplerate, channels=channels, dtype='int16')
sd.wait()
print("Recording completed")
# Save as WAV file
with wave.open('output.wav', 'wb') as wf:
wf.setnchannels(channels)
wf.setsampwidth(2) # 16-bit = 2 bytes
wf.setframerate(samplerate)
wf.writeframes(recording.tobytes())
Primero hay que instalar las dependencias:
pip install sounddevice numpy
Enlaces relacionados

