Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

[Allegro] problem z wykryciem pliku z dźwiękiem

Ostatnio zmodyfikowano 2011-06-13 02:33
Autor Wiadomość
Woj3x
Temat założony przez niniejszego użytkownika
[Allegro] problem z wykryciem pliku z dźwiękiem
» 2011-06-12 22:36:03
Siedzę już nad tym dobre kilka godzin i nie mogę zrozumieć dlaczego nie wykrywa pliku z muzyką
Oto kod:

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

BITMAP * rysunek = NULL;
BITMAP * ufo = NULL;
BITMAP * bufor_ekranu = NULL;
int ufox = 0, ufoy = 0;
int mozna_rysowac = 0;
SAMPLE * muzyka = NULL;

void rysuj()
{
    clear_bitmap( bufor_ekranu ); //wyczysc bufor ekranu
    blit( rysunek, bufor_ekranu, 0, 0, 0, 0, rysunek->w, rysunek->h );
    masked_blit( ufo, bufor_ekranu, 0, 0, ufox, ufoy, ufo->w, ufo->h );
    blit( bufor_ekranu, screen, 0, 0, 0, 0, 640, 480 );
}

void laduj_pliki()
{
    rysunek = load_bitmap( "tlo1.pcx", default_palette );
    if( !rysunek )
    {
        set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 );
        allegro_message( "Nie moge zaladowac pliku z obrazkiem !\n" );
        allegro_exit();
        exit( - 1 );
    }
   
    ufo = load_bitmap( "ufo1.pcx", default_palette );
    if( !ufo )
    {
        set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 );
        allegro_message( "Nie moge zaladowac pliku z obrazkiem !\n" );
        allegro_exit();
        exit( - 1 );
    }
   
    muzyka = load_sample( "x-files.wav" );
   
    if( !muzyka )
    {
        set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 );
        allegro_message( "Nie moge zaladowac pliku z muzyką !\n" );
        allegro_exit();
        exit( - 1 );
    }
}

void zwolnij_dane()
{
    destroy_sample( muzyka );
    destroy_bitmap( rysunek );
    destroy_bitmap( ufo );
}

int main()
{
    allegro_init();
    install_keyboard();
    install_sound( DIGI_AUTODETECT, MIDI_AUTODETECT, "" );
    set_color_depth( 16 );
    set_gfx_mode( GFX_AUTODETECT, 640, 480, 0, 0 );
    clear_to_color( screen, makecol( 0, 0, 0 ) );
    set_volume( 255, 255 );
   
    if( !( bufor_ekranu = create_bitmap( 640, 480 ) ) )
    {
        set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 );
        allegro_message( "Zamalo pamieci potrzebnej do stworzenia bufora ekranu !\n" );
        allegro_exit();
        return 0;
    }
   
    clear_to_color( bufor_ekranu, makecol( 0, 0, 0 ) );
   
    laduj_pliki();
   
    play_sample( muzyka, 255, 127, 1000, 1 );
   
    rysuj();
   
    while( !key[ KEY_ESC ] )
    {
        if( key[ KEY_UP ] )
        {
            ufoy -= 3;
            mozna_rysowac = 1;
        }
       
        if( key[ KEY_DOWN ] )
        {
            ufoy += 3;
            mozna_rysowac = 1;
        }
       
        if( key[ KEY_LEFT ] )
        {
            ufox -= 3;
            mozna_rysowac = 1;
        }
       
        if( key[ KEY_RIGHT ] )
        {
            ufox += 3;
            mozna_rysowac = 1;
        }
       
        if( key[ KEY_Q ] )
        {
            adjust_sample( muzyka, 255, 127, 2000, 1 );
        }
       
        if( key[ KEY_W ] )
        {
            adjust_sample( muzyka, 255, 127, 500, 1 );
        }
       
        if( key[ KEY_E ] )
        {
            adjust_sample( muzyka, 255, 0, 1000, 1 );
        }
       
        if( key[ KEY_R ] )
        {
            adjust_sample( muzyka, 255, 255, 1000, 1 );
        }
       
        if( mozna_rysowac )
        {
            mozna_rysowac = 0;
            rysuj();
        }
    }
   
    stop_sample( muzyka );
   
    zwolnij_dane();
   
    destroy_bitmap( bufor_ekranu );
   
    allegro_exit();
    return 0;
}
END_OF_MAIN()
Screen z folderu:
http://img96.imageshack.us/img96/5571/callegro.png

Co jest nie tak?
P-34081
McAffey
» 2011-06-12 23:36:47
Spróbuj zrobić tak (tam gdzie ładujesz te pliki) :

C/C++
muzyka = load_sample( "x-files.wav" );

if( !muzyka )
{
    set_gfx_mode( GFX_TEXT, 0, 0, 0, 0 );
    allegro_message( "Nie moge zaladowac pliku z muzyką !\n" );
    allegro_exit();
    exit( - 1 );
}
P-34082
Gabes
» 2011-06-13 00:04:40
Uruchomiłem ten program i wszystko działa najpewniej jest to wina pliku dzwiękowego który ma inne rozszerzenie lub zabezpieczenie przed kopiowaniem czy cos tam , wystarczy zmienić na odpowiedni i będzie działać.
P-34083
Woj3x
Temat założony przez niniejszego użytkownika
» 2011-06-13 00:05:36
zmieniłem to co pokazałeś ale niestety dalej nie działa. czy to może być wina wersji allegro? nie byłem w stanie nawet uruchomić programu z dźwiękiem z tej strony. proszę o pomoc.
P-34084
Woj3x
Temat założony przez niniejszego użytkownika
» 2011-06-13 00:15:39
czy możesz napisać jak zmienić ten plik muzyczny, albo podać plik, który ty użyłeś? bo męczę się już z tym od paru godzin i żaden plik, który wykorzystałem nie działał.
P-34085
Gabes
» 2011-06-13 00:25:33
Czy działa ci w Windows Media Player ?
Poszukaj w internecie krótkiego utworu - dzwięk typu wav
P-34087
Woj3x
Temat założony przez niniejszego użytkownika
» 2011-06-13 00:45:18
Napewno nie jest to wina wersji Allegro?
---------------------------------------
Miałeś racje dzięki za info :)
P-34088
Gabes
» 2011-06-13 01:07:07
   Masz tu plik warkot01  znalazłem u sibie na kompie
  
  http://www.wrzuc.to/f3Kpuf.wt
P-34089
« 1 » 2
  Strona 1 z 2 Następna strona