SDL_mixer.h

Función Mix_FadeInChannel

Sintaxis

int Mix_FadeInChannel(int channel, Mix_Chunk *chunk, int loops, int ms);

Descripción

Reproduce un fragmento de audio en un canal específico, desvaneciendo el audio.

Parámetros

channel
El canal en el que reproducir el nuevo chunk, o -1 para encontrar alguno disponible.
chunk
El nuevo chunk a reproducir.
loops
El número de veces que el chunk debe reproducirse en bucle, -1 para reproducirlo (no realmente) infinitamente.
ms
El número de milisegundos a gastar en el fundido de entrada.

Valor de retorno

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

Observaciones

Esto iniciará la reproducción del nuevo sonido, de forma muy similar a como lo haría Mix_PlayChannel(), pero iniciará la reproducción del sonido en silencio y se subirá a su volumen normal durante el número de milisegundos especificado.

Si el canal especificado es -1, reproduce en el primer canal libre (y devuelve -1 sin reproducir nada nuevo si no hay 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).

Un canal con desvanecimiento cambiará su volumen progresivamente, como si Mix_Volume() fuera llamado sobre él (lo que quiere decir que probablemente no se debería llamar a Mix_Volume() sobre un canal con desvanecimiento).

Hay que tener en cuenta que antes de SDL_mixer 2.6.0, esta función era una macro que llamaba a Mix_FadeInChannelTimed() 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 antiguos enlazados con un SDL_mixer más reciente seguirán llamando a Mix_FadeInChannelTimed directamente, ya que están utilizando la macro, que estaba disponible desde el principio de los tiempos.