Steward
分享是一種喜悅、更是一種幸福
掌機 - Miyoo A30 - C/C++ - SDL v2.0 - Music Effect
main.c
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | #include <stdio.h> #include <stdlib.h> #include <SDL.h> #include <SDL_mixer.h> int main ( int argc, char **argv) { const int w = 320; const int h = 240; const int bpp = 16; SDL_Window * window = NULL ; SDL_Renderer *renderer = NULL ; SDL_Init ( SDL_INIT_VIDEO | SDL_INIT_AUDIO ); window = SDL_CreateWindow ( "main" , SDL_WINDOWPOS_UNDEFINED , SDL_WINDOWPOS_UNDEFINED , w, h, SDL_WINDOW_SHOWN ); renderer = SDL_CreateRenderer ( window , -1, SDL_RENDERER_ACCELERATED | SDL_RENDERER_PRESENTVSYNC ); SDL_RenderClear (renderer); SDL_RenderPresent (renderer); Mix_OpenAudio (44100, MIX_DEFAULT_FORMAT , 2, 4096); Mix_Music *music = Mix_LoadMUS ( "main.wav" ); Mix_Chunk *effect = Mix_LoadWAV ( "effect.wav" ); Mix_PlayMusic (music, 1); Mix_PlayChannel (-1, effect, 0); SDL_Delay (3000); Mix_HaltMusic (); Mix_FreeChunk (effect); Mix_FreeMusic (music); Mix_CloseAudio (); SDL_DestroyRenderer (renderer); SDL_DestroyWindow ( window ); SDL_Quit (); return 0; } |
編譯、執行
$ /opt/a30/bin/arm-linux-gcc \ -I/opt/a30/arm-a30-linux-gnueabihf/sysroot/usr/include/SDL2 \ -lSDL2 -lSDL2_gfx -lSDL2_image -lSDL2_ttf -lSDL2_mixer \ -lGLESv2 main.c -o main /mnt/SDCARD# export LD_LIBRARY_PATH=.:/config/lib:/customer/lib:/usr/miyoo/lib /mnt/SDCARD# ./main