SDL_mixer.h

Función Mix_PlayChannel

Sintaxis

int Mix_PlayChannel(int channel, Mix_Chunk *chunk, int loops);

Descripción

Reproduce un fragmento de audio en un canal específico.

Parámetros

channel
El canal en el que se reproducirá el nuevo chunk.
chunk
El nuevo chunk a reproducir.
loops
Eel número de veces que el chunk debe reproducirse en bucle, -1 para reproducirlo (no realmente) infinitamente.

Valor de retorno

Devuelve qué canal se utilizó para reproducir el sonido, o -1 si no se pudo reproducir el sonido.

Observaciones

Si el canal especificado es -1, reproduce en el primer canal libre (y devuelve -1 sin reproducir nada nuevo si no había ningún canal libre disponible).

Si se solicitó un canal específico, y ya hay un trozo reproduciéndose allí, ese trozo se detendrá y el nuevo trozo ocupará su lugar.

Si loops es mayor que cero, repite el sonido tantas veces como sea necesario. Si loops es -1, se repite "infinitamente" (~65000 veces).

Hay que tener en cuenta que antes de SDL_mixer 2.6.0, esta función era una macro que llamaba a Mix_PlayChannelTimed() con un cuarto parámetro (ticks) de -1. Esta función sigue haciendo lo mismo, pero lo convierte en una función propia de la API. Los binarios más antiguos enlazados con un SDL_mixer más reciente seguirán llamando a Mix_PlayChannelTimed directamente, ya que están utilizando la macro, que estaba disponible desde el principio de los tiempos.