diff options
Diffstat (limited to 'deadbeef.h')
-rw-r--r-- | deadbeef.h | 21 |
1 files changed, 21 insertions, 0 deletions
@@ -273,12 +273,17 @@ enum { DB_EV_ACTIONSCHANGED = 20, // plugin actions were changed, e.g. for reinitializing gui DB_EV_DSPCHAINCHANGED = 21, // emitted when any parameter of the main dsp chain has been changed + // new in 1.2 + DB_EV_SELCHANGED = 20, // selection changed in playlist p1 iter p2 + DB_EV_FIRST = 1000, DB_EV_SONGCHANGED = 1000, // current song changed from one to another, ctx=ddb_event_trackchange_t DB_EV_SONGSTARTED = 1001, // song started playing, ctx=ddb_event_track_t DB_EV_SONGFINISHED = 1002, // song finished playing, ctx=ddb_event_track_t DB_EV_TRACKINFOCHANGED = 1004, // trackinfo was changed (included medatata and playback status), ctx=ddb_event_track_t DB_EV_SEEKED = 1005, // seek happened, ctx=ddb_event_playpos_t + // new in 1.4 + DB_EV_TRACKFOCUSCURRENT = 1006, // user wants to highlight/find the current playing track DB_EV_MAX }; @@ -305,6 +310,14 @@ enum ddb_sort_order_t { DDB_SORT_RANDOM, // available since API 1.3 }; +enum ddb_audio_data_type_t { + DDB_AUDIO_WAVEFORM, + DDB_AUDIO_FREQ, +}; + +// audio memory constants +#define DDB_AUDIO_MEMORY_FRAMES 512 + // typecasting macros #define DB_PLUGIN(x) ((DB_plugin_t *)(x)) #define DB_CALLBACK(x) ((DB_callback_t)(x)) @@ -767,6 +780,14 @@ typedef struct { // fast way to test if a field exists in playitem int (*pl_meta_exists) (DB_playItem_t *it, const char *key); + + // FIXME ******* devel branch only ******* + // access real-time audio data (e.g. for visualization) + // returns data size in bytes + // fmt and data will be filled with last bytes that came to the output plugin + // data size must be float[DDB_AUDIO_MEMORY_FRAMES] + void (*audio_get_waveform_data) (int type, float *data); + } DB_functions_t; // NOTE: an item placement must be selected like this |