int sound_looped( int id_sonido, uchar volumen, unsigned long inicio_bucle, fin_bucle )


Retorna:

 El número de canal (mayor o igual a 0) por el que se reproduce el sonido.
 -1 //Si no puede reproduce el sonido

Descripción:

Hace sonar el efecto cuyo identificador de sonido se especifica como primer parámetro. Primero, el sonido se debe haber cargado de un archivo WAV con las funciones load_sound() / load_wav() / load_voc() que son las que devuelven el identificador de sonido correspondiente a dicho efecto.

Volumen: Especifica el volumen al que se desea reproducir el sonido, siendo 0 el volumen mínimo y 255 el volumen máximo.

Inicio_bucle: Especificará la posición de inicio del sonido.

Fin_bucle: Especificará la posición final del sonido.

NOTA.: Si se especifica en las funciones: load_sound() / load_wav() / load_voc() el ultimo parámetro "bucle a 0" el sonido terminará de reproducirse cuando llegue a la posición especificada, si queremos que el sonido sea cíclico tendremos que especificar, por ejemplo: load_sound("sonido", 1);


MAIN_PROGRAM_CDIV
PRIVATE
   int
    posicion,
    len,
    id_sonido,
    canal;

BEGIN_PROGRAM

 set_gfx(GFX_AUTODETECT_WINDOWED);

 set_mode(m320x200);

 write(0, 10, 10, 0, "Posición del sonido:");
 write_int(0, 180, 10, 0, &posicion);
 write(0, 10, 30, 0, "Longitud del sonido:");
 write_int(0, 180, 30, 0, &len);

 id_sonido = load_wav("../help.wav", 1);
 canal = sound_looped(id_sonido, 127, 2000, 4000);
 
 len = sound_get_length(id_sonido);

 LOOP{
        posicion = sound_get_position(canal);
        FRAME;
 }

END_PROGRAM


En el ejemplo se pone una pantalla de fondo y un texto explicativo, y se carga un sonido con la función load_sound() / load_wav / load_vod(); ésta devuelve el identificador del sonido, que se  guarda en la variable id_sonido.

Se reproduce un sonido cíclicamente desde la posición 2000 a la 4000 del sonido por medio de la función sound_looped(), también se muestra como datos informativos la longitud del sonido por medio de la función de sound_get_length() y la posición del sonido por medio de la función sound_get_position().


Ver: load_wav() - sound_get_length() - sound_get_position() - change_sound() - stop_sound()