#ifndef library_h #define library_h #include "memory.h" typedef struct { int track; char path[256]; char name[64]; char artist[64]; char album[64]; } Song; typedef struct { Song* songs; int* indices; int* filtered; int cap, cnt, fcnt; } Library; typedef struct { Song* song; void* f; int seek, samples, channels, play, has_art ; unsigned long long cs, ms; unsigned cover[album_cover_w * album_cover_h]; } Player; Song* find_song(Library* l, const char* path); void build_library( Arena* a, Library* lib, const char* path ); void filter_library( Library* l, const char* str ); int get_song_meta(const char* path, Song* s); int play_song(Player* p, Song* song); void play_seek(Player* p, float v); void init_player(Player* p); void deinit_player(Player* p); #endif