LMMS
Loading...
Searching...
No Matches
ad.h
Go to the documentation of this file.
1
24#ifndef __AD_H__
25#define __AD_H__
26
27#include <stddef.h>
28#include <stdint.h>
29
30#ifdef _MSC_VER
31#include <basetsd.h>
32typedef SSIZE_T ssize_t;
33#else
34#include <sys/types.h>
35#endif
36
37struct adinfo {
38 unsigned int sample_rate;
39 unsigned int channels;
40 int64_t length; //milliseconds
41 int64_t frames; //total number of frames (eg a frame for 16bit stereo is 4 bytes).
44 char * meta_data;
46};
47
48/* --- public API --- */
49
55void * ad_open (const char *fn, struct adinfo *nfo);
56
61int ad_close (void *sf);
62
68int64_t ad_seek (void *sf, int64_t pos);
69
77ssize_t ad_read (void *sf, float* out, size_t len);
78
84int ad_get_bitrate(void *sf);
85
96int ad_info (void *sf, struct adinfo *nfo);
97
101void ad_clear_nfo (struct adinfo *nfo);
102
106void ad_free_nfo (struct adinfo *nfo);
107
108
109/* --- helper functions --- */
110
114int ad_finfo (const char *, struct adinfo *);
115
119ssize_t ad_read_mono_dbl (void *, struct adinfo *, double*, size_t);
120
127void ad_dump_nfo (int dbglvl, struct adinfo *nfo);
128
138void ad_set_debuglevel(int lvl);
139
140#endif
void ad_set_debuglevel(int lvl)
Definition ad_plugin.c:187
void ad_dump_nfo(int dbglvl, struct adinfo *nfo)
Definition ad_plugin.c:164
int64_t ad_seek(void *sf, int64_t pos)
Definition ad_plugin.c:104
int ad_info(void *sf, struct adinfo *nfo)
Definition ad_plugin.c:90
void ad_free_nfo(struct adinfo *nfo)
Definition ad_plugin.c:160
int ad_get_bitrate(void *sf)
Definition ad_plugin.c:116
int ad_close(void *sf)
Definition ad_plugin.c:96
ssize_t ad_read(void *sf, float *out, size_t len)
Definition ad_plugin.c:110
int ad_finfo(const char *, struct adinfo *)
Definition ad_plugin.c:150
void * ad_open(const char *fn, struct adinfo *nfo)
Definition ad_plugin.c:72
void ad_clear_nfo(struct adinfo *nfo)
Definition ad_plugin.c:156
ssize_t ad_read_mono_dbl(void *, struct adinfo *, double *, size_t)
Definition ad_plugin.c:125
float out
Definition lilv_test.c:1461
Definition ad.h:37
int bit_rate
Definition ad.h:42
unsigned int channels
Definition ad.h:39
int bit_depth
Definition ad.h:43
unsigned int sample_rate
Definition ad.h:38
int64_t frames
Definition ad.h:41
char * meta_data
Definition ad.h:44
int can_seek
Definition ad.h:45
int64_t length
Definition ad.h:40
const char const char const char const char char * fn
Definition swell-functions.h:168