Capítulo 14: El Sistema de Audio
La estructura AudioPlayer
forma el núcleo del sistema de audio para este juego. Este sistema utiliza el módulo sdl2::mixer
de la biblioteca SDL2
en Rust. Puede cargar y reproducir archivos de audio en formatos .mp3
, .flac
, .mod
y .ogg
. La estructura AudioPlayer
contiene un único campo: mixer_context
.
Se instancia un AudioPlayer
con un número específico de canales (numchans
). La función del constructor (new
) inicializa SDL2, abre un dispositivo de audio con una frecuencia, tamaño de fragmento y número de canales específicos. Proporciona un método play
que carga un archivo de audio, lo reproduce en un bucle un número dado de veces y establece su volumen. El método play
devuelve un Channel
que se puede pausar, reanudar o detener utilizando los métodos respectivos en AudioPlayer
.
Cuando se descarta una instancia de AudioPlayer
, se detiene la música que se está reproduciendo actualmente y se imprime un mensaje en la consola.
Last updated