Programación Específica > DirectX

 Problema Directsound

(1/1)

fert_82:
Hola: Estoy trabajando con DirectSound para poder reproducir un archivo WAV, lo estoy tratando de reproducir con un buffer secundario con un tamaño de 2 segundos; es decir, actualizando 1 segundo mientras se reproduce el otro y haciendo una reproduccion continua del buffer. Pero una vez llenado completamente el buffer por primera vez no me deja actualizarlo por que el metodo Lock me tira error.
La verdad que no se si le tengo que poner algun flag especial para poder actualizarlo o que hacer.
Cualquier ayuda me seria de gran utilidad.
Gracias.Saludos

JuanK:
hasta donde se ( y mi pobre experiencia con direct sopund me lo pemite) solo debes cargar toda la secuenciua en el buffer y el internemente se encarga  de la adminsitracion de memoria de esta forma cargas todo en el buffer secundario y luego lo reproduces.

KaSuGaK:
Hola, si lo que te interesa es repoducir sonidos de manera supersencilla y potente te recomiendo la libreria FMOD, con solo 3 pasos reproduces audio, en wav, mp3, y muchos otros formatos,
por ejemplo:

1- Inicializadion
FSOUND_Init (44100, 32, 0);
FSOUND_SAMPLE* miManejador;

2- Carga
miManejador =FSOUND_Sample_Load (CANAL_AUDIO,"Musica/musica.wav",0, 0, 0);

3- Reproducion
FSOUND_PlaySound (CANAL_AUDIO, mi_Manejador);
FSOUND_SetVolume(CANAL_AUDIO, VOLUMEN);  // Opcional!!


Edit: En canal de audio puedes gestionar varios canales a la vez simplemente poniendo un numero.

Esperpo haber ayudado,

KaSuGaK

Navegación

[0] Índice de Mensajes

Ir a la versión completa