Me gustaría poder actualizar un buffer que se reproduce de manera continuada en tiempo real y con la mínima latencia posible como hacía con DirectSound, para reproducir un sonido continuado. El caso es que no se si se podrá hacer también así con OAL o si hay que usar otra técnica.
Con DS se creaba un buffer dinámico, y se podia actualizar mientras se reproducía en un loop, aunque siempre había que hacerlo unos milisegundos antes de que "llegase" la posición de reproducción, lo que le daba la inevitable latencia, pero era suficiente.
No tengo casi nada de experiencia con OAL, pero he intentado rellenar un buffer antes de empezarlo a reproducir, y no se puede una vez que se ha asociado a un source, se recibe un error.
¿Cómo se puede hacer?, había pensado en usar 2 microbuffers y mientras se reproduce uno actualizar el otro, pero tampoco estoy seguro de que sea correcto, ni se como hacerlo.
Con DS se creaba un buffer dinámico, y se podia actualizar mientras se reproducía en un loop, aunque siempre había que hacerlo unos milisegundos antes de que "llegase" la posición de reproducción, lo que le daba la inevitable latencia, pero era suficiente.
No tengo casi nada de experiencia con OAL, pero he intentado rellenar un buffer antes de empezarlo a reproducir, y no se puede una vez que se ha asociado a un source, se recibe un error.
¿Cómo se puede hacer?, había pensado en usar 2 microbuffers y mientras se reproduce uno actualizar el otro, pero tampoco estoy seguro de que sea correcto, ni se como hacerlo.