mp3player.pp 846 B

12345678910111213141516171819202122232425262728293031323334353637
  1. unit mp3player;
  2. {$mode objfpc}
  3. {$J+}
  4. {$INLINE ON}
  5. {$MACRO ON}
  6. {$PACKRECORDS C}
  7. {$ASSERTIONS ON}
  8. {$define HW_RVL}
  9. interface
  10. uses
  11. ctypes, gctypes, mad;
  12. type
  13. pmad_stream=^mad_stream;
  14. pmad_frame=^mad_frame;
  15. procedure MP3Player_Init; cdecl; external;
  16. procedure MP3Player_Stop; cdecl; external;
  17. function MP3Player_IsPlaying: cbool; cdecl; external;
  18. procedure MP3Player_Volume(volume: cuint32); cdecl; external;
  19. type
  20. TCBFilterFunc = procedure(par0: Pmad_stream; par1: Pmad_frame); cdecl;
  21. function MP3Player_PlayBuffer(buffer: pointer; len: cint32; filterfunc: TCBFilterFunc): cint32; cdecl; external;
  22. type
  23. TCBReader = function(par0, par1: pointer; par2: cint32): cint32; cdecl;
  24. function MP3Player_PlayFile(cb_data: pointer; reader: TCBReader; filterfunc: TCBFilterFunc): cint32; cdecl; external;
  25. implementation
  26. initialization
  27. end.