Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?
Opracował: McAffey
Udoskonalił: Piotr DejaVu Szawdyński
Biblioteki C/C++

play_sample

[funkcja] Uruchamia odtwarzanie podanego dźwięku.

Składnia

C/C++
#include <allegro.h>

int play_sample(
const SAMPLE * spl,
int vol,
int pan,
int freq,
int loop
);

Argumenty

ArgumentOpis
const SAMPLE *splWskaźnik na załadowany dźwięk, który ma zostać odtworzony.
int volGłośność dźwięku. Ten argument uzupełniamy wartością z zakresu 0-255.
int panNatężenie dźwięku. Argument ten decyduje o tym na który głośnik zostanie przekazane więcej mocy. Przy wartości 0 cała moc zostanie przekazana na lewy głośnik, przy wartości 255 cała moc zostanie przekazana na prawy głośnik. Przy wartości 127 moc zostanie rozdzielona po równo na oba głośniki.
int freqCzęstotliwość dźwięku. Ten argument decyduje o prędkości odtwarzanego dźwięku. Przy wartości 500 dźwięk jest odtwarzany 2 razy wolniej. Przy wartości 1000 dźwięk leci z normalną prędkością. Przy wartości 2000 dźwięk jest odtwarzany 2 razy szybciej.
int loopZapętlenie dźwięku. Przy wartości 0 dźwięk zostanie odegrany tylko raz. Przy wartości 1 będzie odgrywany w kółko. Aby zatrzymać granie zapętlonego dźwięku należy wywołać funkcję » Allegro 4.4stop_sample.

Zwracana wartość

Zwraca przyznany identyfikator dla nowo odtwarzanego dźwięku. W przeciwnym wypadku funkcja zwraca identyfikator dźwięku o wartości ujemnej.

Opis szczegółowy

Funkcja uruchamia odtwarzanie dźwięku przekazanego poprzez argument spl. Parametry odtwarzania dźwięku ustala się poprzez argumenty funkcji. Parametry odtwarzania dźwięku mogą zostać później zmodyfikowane przy pomocy funkcji » Allegro 4.4adjust_sample.

Rozpoczęcie odtwarzania dźwięku może zakończyć się niepowodzeniem w momencie gdy jest odtwarzana zbyt duża liczba dźwięków jednocześnie. O tym czy dźwięk zostanie odtworzony informuje wartość, która jest zwracana przez niniejszą funkcję.

Przykład

C/C++
#include <allegro.h>

int main()
{
    allegro_init();
    install_keyboard();
   
    set_color_depth( 16 );
    set_gfx_mode( GFX_AUTODETECT_WINDOWED, 240, 27, 0, 0 );
   
    install_sound( DIGI_AUTODETECT, MIDI_AUTODETECT, "" );
    set_volume( 255, 255 );
   
    SAMPLE * dzwiek = load_sample( "dzwiek.wav" );
    if( !dzwiek )
    {
        set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 );
        allegro_message( "Nie mogę załadować dźwięku!" );
        allegro_exit();
        return 0;
    }
   
    textprintf_ex( screen, font, 10, 10, makecol( 255, 255, 255 ), - 1, "[ESC] - wyjscie z programu" );
   
    play_sample( dzwiek, 255, 127, 1000, 1 ); //Przykład użycia funkcji play_sample
   
    while( !key[ KEY_ESC ] )
    {
    }
   
    stop_sample( dzwiek );
    destroy_sample( dzwiek );
   
    allegro_exit();
    return 0;
}
END_OF_MAIN()

Zagadnienia powiązane

adjust_sampleModyfikuje parametry aktualnie odtwarzanego dźwięku. (funkcja)
stop_sampleZatrzymuje odtwarzanie dźwięku. (funkcja)

Linki zewnętrzne