KamoCRM

OnceLabs habla el formato que un llamador realmente pidió

FixAIService
Se descapó
29 de septiembre de 2026 a las 2:32 UTC
Autor
Kamo
Compromit
16db29f

El adaptador de salida format=mp3 44100 128 en cada llamada, por lo que un callador pedir E5 para wav (o kamoai-voice pidiendo pcm, en cada llamada telefónica) todavía Recibí mp3 de vuelta — una decodificación extra perdida más un resample en el camino de llamada, y un violación del contrato silencioso para cualquier otro callador de /api/ai/v1/audio/speech. synthesize() now maps AudioController's response format to ElevenLabs' own output format: pcm/wav both fetch pcm 24000 (AIService's own PCM convention, decodificación de 24 kHz con wav envuelto en un real RIFF/WAVE header here (ElevenLabs nunca envía uno), mp3 mantiene mp3 44100 128, opus mapas a opus 48000 128, y un mapa de ulaw explícito a ulaw 8000. Un formato OnceLabs no puede hablar (aac, flac) se niega por delante para que el router caiga volver a un modelo que puede, en lugar de desajustarlo silenciosamente a mp3. El MimeType ahora siempre coincide con los bytes devueltos, no lo que sea Tipo de contenido que el vendedor envió. kamoai-voice ya pide pcm y lee el contenido declarado de AIService en lugar de confiar en su propia solicitud, por lo que no se necesitaba ningún cambio allí: PCM real, de igualación ahora en lugar de un mp3 decodificado y muestreado. Tests (SpeechVendorFamiliasTest, rojo y verde contra un falso ElevenLabs servidor): cada réplica format mapas a la salida correcta format, el wav envoltura es un correcto encabezado RIFF/WAVE de 44 bytes PCM, un formato sin soporte es rechazado antes de cualquier llamada HTTP, y mp3 es sin cambios.

Todos los cambios

Como lo que ves enviaste?

Todo llega a su espacio de trabajo por sí solo. Comience en el plan gratuito y lea esta página de nuevo en un mes.

Arranzar gratis para siempreVer Precios