Ya da igual, el tema es que esto viene a cuento de un error que da DirectSound al cargar archivos de sonido extremadamente pequeños en buferes configurados con el flag DSBCAPS_CTRLFX para los efectos FX en audio. La idea era cargar el archivo en un buffer sin ese flag, añadir silencio hasta el tamaño minimo aceptado para poder aplicar efectos, crear un buffer con el flag y volcar en el buffer modificado. Al final lo he solucionado de la forma chapucera que ha sido una vez añadido los silencios al buffer guardarlo en un archivo temporal y despues hacer la carga normal en un buffer con el flag de efectos, tal y como hago normalmente.
Lo realmente extraño del asunto no es que pete la creacion de un buffer que tenga los flags DSBCAPS_CTRLPAN y DSBCAPS_CTRLFX, mas que nada por esta documentado en el SDK, si no que si se pueda crear un buffer con esos flags a partir de un archivo. De todas formas, no es la primera funcion del wrapper de DirectX8 para Visual Basic 6.0 que falla de forma extraña, ya he tenido varios tropiezos en la parte de DirectGraphics.
Salu2...