ReactOS  0.4.15-dev-994-ga9f6032
mpg123.h
Go to the documentation of this file.
1 /*
2  libmpg123: MPEG Audio Decoder library (version 1.26.2)
3 
4  copyright 1995-2015 by the mpg123 project
5  free software under the terms of the LGPL 2.1
6  see COPYING and AUTHORS files in distribution or http://mpg123.org
7 */
8 
9 #ifndef MPG123_LIB_H
10 #define MPG123_LIB_H
11 
12 #include <fmt123.h>
13 
20 #define MPG123_API_VERSION 45
21 
22 #ifndef MPG123_EXPORT
23 
30 #ifdef BUILD_MPG123_DLL
31 /* The dll exports. */
32 #define MPG123_EXPORT __declspec(dllexport)
33 #else
34 #ifdef LINK_MPG123_DLL
35 /* The exe imports. */
36 #define MPG123_EXPORT __declspec(dllimport)
37 #else
38 /* Nothing on normal/UNIX builds */
39 #define MPG123_EXPORT
40 #endif
41 #endif
42 #endif
43 
44 #ifndef __REACTOS__
45 /* This is for Visual Studio, so this header works as distributed in the binary downloads */
46 #if defined(_MSC_VER) && !defined(MPG123_DEF_SSIZE_T)
47 #define MPG123_DEF_SSIZE_T
48 #include <stddef.h>
49 typedef ptrdiff_t ssize_t;
50 #endif
51 #endif /* __REACTOS__ */
52 
53 #ifndef MPG123_NO_CONFIGURE /* Enable use of this file without configure. */
54 #include <stdlib.h>
55 #include <sys/types.h>
56 
57 #ifdef __REACTOS__
58 #ifndef ssize_t
59 typedef long ssize_t;
60 #endif
61 #endif /* __REACTOS__ */
62 
63 /* Simplified large file handling.
64  I used to have a check here that prevents building for a library with conflicting large file setup
65  (application that uses 32 bit offsets with library that uses 64 bits).
66  While that was perfectly fine in an environment where there is one incarnation of the library,
67  it hurt GNU/Linux and Solaris systems with multilib where the distribution fails to provide the
68  correct header matching the 32 bit library (where large files need explicit support) or
69  the 64 bit library (where there is no distinction).
70 
71  New approach: When the app defines _FILE_OFFSET_BITS, it wants non-default large file support,
72  and thus functions with added suffix (mpg123_open_64).
73  Any mismatch will be caught at link time because of the _FILE_OFFSET_BITS setting used when
74  building libmpg123. Plus, there's dual mode large file support in mpg123 since 1.12 now.
75  Link failure is not the expected outcome of any half-sane usage anymore.
76 
77  More complication: What about client code defining _LARGEFILE64_SOURCE? It might want direct access to the _64 functions, along with the ones without suffix. Well, that's possible now via defining MPG123_NO_LARGENAME and MPG123_LARGESUFFIX, respectively, for disabling or enforcing the suffix names.
78 */
79 
80 /*
81  Now, the renaming of large file aware functions.
82  By default, it appends underscore _FILE_OFFSET_BITS (so, mpg123_seek_64 for mpg123_seek), if _FILE_OFFSET_BITS is defined. You can force a different suffix via MPG123_LARGESUFFIX (that must include the underscore), or you can just disable the whole mess by defining MPG123_NO_LARGENAME.
83 */
84 #if (!defined MPG123_NO_LARGENAME) && ((defined _FILE_OFFSET_BITS) || (defined MPG123_LARGESUFFIX))
85 
86 /* Need some trickery to concatenate the value(s) of the given macro(s). */
87 #define MPG123_MACROCAT_REALLY(a, b) a ## b
88 #define MPG123_MACROCAT(a, b) MPG123_MACROCAT_REALLY(a, b)
89 #ifndef MPG123_LARGESUFFIX
90 #define MPG123_LARGESUFFIX MPG123_MACROCAT(_, _FILE_OFFSET_BITS)
91 #endif
92 #define MPG123_LARGENAME(func) MPG123_MACROCAT(func, MPG123_LARGESUFFIX)
93 
94 #define mpg123_open_fixed MPG123_LARGENAME(mpg123_open_fixed)
95 #define mpg123_open MPG123_LARGENAME(mpg123_open)
96 #define mpg123_open_fd MPG123_LARGENAME(mpg123_open_fd)
97 #define mpg123_open_handle MPG123_LARGENAME(mpg123_open_handle)
98 #define mpg123_framebyframe_decode MPG123_LARGENAME(mpg123_framebyframe_decode)
99 #define mpg123_decode_frame MPG123_LARGENAME(mpg123_decode_frame)
100 #define mpg123_tell MPG123_LARGENAME(mpg123_tell)
101 #define mpg123_tellframe MPG123_LARGENAME(mpg123_tellframe)
102 #define mpg123_tell_stream MPG123_LARGENAME(mpg123_tell_stream)
103 #define mpg123_seek MPG123_LARGENAME(mpg123_seek)
104 #define mpg123_feedseek MPG123_LARGENAME(mpg123_feedseek)
105 #define mpg123_seek_frame MPG123_LARGENAME(mpg123_seek_frame)
106 #define mpg123_timeframe MPG123_LARGENAME(mpg123_timeframe)
107 #define mpg123_index MPG123_LARGENAME(mpg123_index)
108 #define mpg123_set_index MPG123_LARGENAME(mpg123_set_index)
109 #define mpg123_position MPG123_LARGENAME(mpg123_position)
110 #define mpg123_length MPG123_LARGENAME(mpg123_length)
111 #define mpg123_framelength MPG123_LARGENAME(mpg123_framelength)
112 #define mpg123_set_filesize MPG123_LARGENAME(mpg123_set_filesize)
113 #define mpg123_replace_reader MPG123_LARGENAME(mpg123_replace_reader)
114 #define mpg123_replace_reader_handle MPG123_LARGENAME(mpg123_replace_reader_handle)
115 #define mpg123_framepos MPG123_LARGENAME(mpg123_framepos)
116 
117 #endif /* largefile hackery */
118 
119 #endif /* MPG123_NO_CONFIGURE */
120 
121 #ifdef __cplusplus
122 extern "C" {
123 #endif
124 
135 struct mpg123_handle_struct;
136 
141 
149 MPG123_EXPORT int mpg123_init(void);
150 
156 MPG123_EXPORT void mpg123_exit(void);
157 
166 MPG123_EXPORT mpg123_handle *mpg123_new(const char* decoder, int *error);
167 
172 
178 MPG123_EXPORT void mpg123_free(void *ptr);
179 
182 {
208 };
209 
212 {
219  ,MPG123_QUIET = 0x20
220  ,MPG123_GAPLESS = 0x40
223  ,MPG123_FUZZY = 0x200
227  ,MPG123_SKIP_ID3V2 = 0x2000
230  ,MPG123_PICTURE = 0x10000
231  ,MPG123_NO_PEEK_END = 0x20000
239  ,MPG123_FORCE_ENDIAN = 0x100000
245  ,MPG123_BIG_ENDIAN = 0x200000
246  ,MPG123_NO_READAHEAD = 0x400000
269 };
270 
273 {
278 };
279 
289 , enum mpg123_parms type, long value, double fvalue );
290 
300 , enum mpg123_parms type, long *value, double *fvalue );
301 
304 {
323 };
324 
330 
341 
342 /* @} */
343 
344 
378 {
427 };
428 
434 
443 
449 
464 MPG123_EXPORT const char **mpg123_decoders(void);
465 
469 MPG123_EXPORT const char **mpg123_supported_decoders(void);
470 
476 MPG123_EXPORT int mpg123_decoder(mpg123_handle *mh, const char* decoder_name);
477 
488 
516 {
519 };
520 
528 MPG123_EXPORT void mpg123_rates(const long **list, size_t *number);
529 
534 MPG123_EXPORT void mpg123_encodings(const int **list, size_t *number);
535 
540 
547 
554 
562 , long rate, int channels, int encodings );
563 
575 , long rate, int channels, int encodings );
576 
585 , long rate, int encoding );
586 
599 , long *rate, int *channels, int *encoding );
600 
613 , long *rate, int *channels, int *encoding, int clear_flag );
614 
669 , int channels, int encoding);
670 
678 MPG123_EXPORT int mpg123_open(mpg123_handle *mh, const char *path);
679 
687 
695 MPG123_EXPORT int mpg123_open_handle(mpg123_handle *mh, void *iohandle);
696 
705 
711 
724 , void *outmemory, size_t outmemsize, size_t *done );
725 
734 , const unsigned char *in, size_t size );
735 
756 , const unsigned char *inmemory, size_t inmemsize
757 , void *outmemory, size_t outmemsize, size_t *done );
758 
768 , off_t *num, unsigned char **audio, size_t *bytes );
769 
780 , off_t *num, unsigned char **audio, size_t *bytes );
781 
789 
806 , unsigned long *header, unsigned char **bodydata, size_t *bodybytes );
807 
816 
846 
852 
858 
867 , off_t sampleoff, int whence );
868 
878 , off_t sampleoff, int whence, off_t *input_offset );
879 
887 , off_t frameoff, int whence );
888 
893 
904 , off_t **offsets, off_t *step, size_t *fill );
905 
916 , off_t *offsets, off_t step, size_t fill );
917 
925 MPG123_EXPORT int mpg123_position( mpg123_handle *mh, off_t frame_offset, off_t buffered_bytes, off_t *current_frame, off_t *frames_left, double *current_seconds, double *seconds_left);
926 
937 {
940  ,MPG123_LR=0x3
941 };
942 
951 , enum mpg123_channels channel, int band, double val );
952 
959  , enum mpg123_channels channel, int band);
960 
966 
973 MPG123_EXPORT int mpg123_volume(mpg123_handle *mh, double vol);
974 
980 MPG123_EXPORT int mpg123_volume_change(mpg123_handle *mh, double change);
981 
992 MPG123_EXPORT int mpg123_getvolume(mpg123_handle *mh, double *base, double *really, double *rva_db);
993 
994 /* TODO: Set some preamp in addition / to replace internal RVA handling? */
995 
1009 };
1010 
1016 };
1017 
1018 
1026 };
1027 
1028 
1035 };
1036 
1039 {
1041  int layer;
1042  long rate;
1044  int mode_ext;
1047  int emphasis;
1048  int bitrate;
1049  int abr_rate;
1051 };
1052 
1059 {
1060  double xr[2][2][576];
1061  double sfb[2][2][22]; /* [2][2][SBMAX_l] */
1062  double sfb_s[2][2][3*13]; /* [2][2][3*SBMAX_s] */
1063  int qss[2][2];
1064  int big_values[2][2];
1065  int sub_gain[2][2][3];
1066  int scalefac_scale[2][2];
1067  int preflag[2][2];
1068  int blocktype[2][2];
1069  int mixed[2][2];
1070  int mainbits[2][2];
1071  int sfbits[2][2];
1072  int scfsi[2];
1074  int padding;
1075 };
1076 
1083 
1091 , struct mpg123_moreinfo *mi );
1092 
1097 MPG123_EXPORT size_t mpg123_safe_buffer(void);
1098 
1107 
1114 
1128 
1136 
1142 
1148 
1154 
1155 
1158 {
1166 };
1167 
1176 , enum mpg123_state key, long *val, double *fval );
1177 
1191 typedef struct
1192 {
1193  char* p;
1194  size_t size;
1195  size_t fill;
1196 } mpg123_string;
1197 
1202 
1207 
1214 
1221 
1228 
1239 
1247 
1261 
1267 MPG123_EXPORT int mpg123_add_string(mpg123_string* sb, const char* stuff);
1268 
1277 , const char *stuff, size_t from, size_t count );
1278 
1284 MPG123_EXPORT int mpg123_set_string(mpg123_string* sb, const char* stuff);
1285 
1294 , const char *stuff, size_t from, size_t count );
1295 
1304 MPG123_EXPORT size_t mpg123_strlen(mpg123_string *sb, int utf8);
1305 
1311 
1320 
1323 {
1339 };
1340 
1343 {
1349 };
1350 
1356 MPG123_EXPORT enum mpg123_text_encoding mpg123_enc_from_id3(unsigned char id3_enc_byte);
1357 
1367 MPG123_EXPORT int mpg123_store_utf8(mpg123_string *sb, enum mpg123_text_encoding enc, const unsigned char *source, size_t source_size);
1368 
1375 typedef struct
1376 {
1377  char lang[3];
1378  char id[4];
1381 } mpg123_text;
1382 
1385 {
1407 };
1408 
1413 typedef struct
1414 {
1415  char type;
1418  size_t size;
1419  unsigned char* data;
1420 } mpg123_picture;
1421 
1427 typedef struct
1428 {
1429  unsigned char version;
1436  /* Encountered ID3v2 fields are appended to these lists.
1437  There can be multiple occurences, the pointers above always point to the last encountered data. */
1439  size_t comments;
1441  size_t texts;
1443  size_t extras;
1446  size_t pictures;
1447 } mpg123_id3v2;
1448 
1453 typedef struct
1454 {
1455  char tag[3];
1456  char title[30];
1457  char artist[30];
1458  char album[30];
1459  char year[4];
1460  char comment[30];
1461  unsigned char genre;
1462 } mpg123_id3v1;
1463 
1464 #define MPG123_ID3 0x3
1465 #define MPG123_NEW_ID3 0x1
1466 #define MPG123_ICY 0xc
1467 #define MPG123_NEW_ICY 0x4
1473 MPG123_EXPORT int mpg123_meta_check(mpg123_handle *mh);
1474 
1479 
1485 , mpg123_id3v1 **v1, mpg123_id3v2 **v2 );
1486 
1499 , unsigned char **v1, size_t *v1_size
1500 , unsigned char **v2, size_t *v2_size );
1501 
1508 
1513 MPG123_EXPORT char* mpg123_icy2utf8(const char* icy_text);
1514 
1515 
1516 /* @} */
1517 
1518 
1535 struct mpg123_pars_struct;
1536 
1539 
1547 , const char* decoder, int *error );
1548 
1554 
1559 
1566 
1573 
1584 , long rate, int channels, int encodings);
1585 
1597 , long rate, int channels, int encodings);
1598 
1607 
1617 , enum mpg123_parms type, long value, double fvalue );
1618 
1628 , enum mpg123_parms type, long *value, double *fvalue);
1629 
1630 /* @} */
1631 
1632 
1653 , void *data, size_t size);
1654 
1661 
1676 , ssize_t (*r_read) (int, void *, size_t)
1677 , off_t (*r_lseek)(int, off_t, int)
1678 );
1679 
1695 , ssize_t (*r_read) (void *, void *, size_t)
1696 , off_t (*r_lseek)(void *, off_t, int)
1697 , void (*cleanup)(void*) );
1698 
1699 /* @} */
1700 
1701 #ifdef __cplusplus
1702 }
1703 #endif
1704 
1705 #endif
MPG123_EXPORT off_t mpg123_timeframe(mpg123_handle *mh, double sec)
Definition: lfs_alias.c:184
MPG123_EXPORT int mpg123_id3_raw(mpg123_handle *mh, unsigned char **v1, size_t *v1_size, unsigned char **v2, size_t *v2_size)
Definition: libmpg123.c:1540
MPG123_EXPORT int mpg123_par(mpg123_pars *mp, enum mpg123_parms type, long value, double fvalue)
Definition: libmpg123.c:152
MPG123_EXPORT int mpg123_same_string(mpg123_string *a, mpg123_string *b)
Definition: stringbuf.c:241
MPG123_EXPORT int mpg123_id3(mpg123_handle *mh, mpg123_id3v1 **v1, mpg123_id3v2 **v2)
Definition: libmpg123.c:1517
MPG123_EXPORT void mpg123_free(void *ptr)
Definition: libmpg123.c:1722
MPG123_EXPORT int mpg123_getformat2(mpg123_handle *mh, long *rate, int *channels, int *encoding, int clear_flag)
Definition: libmpg123.c:1125
Definition: icy.h:16
#define frame_offset
Definition: intsym.h:201
MPG123_EXPORT int mpg123_open_feed(mpg123_handle *mh)
Definition: libmpg123.c:535
mpg123_text * extra
Definition: mpg123.h:1442
MPG123_EXPORT off_t mpg123_feedseek(mpg123_handle *mh, off_t sampleoff, int whence, off_t *input_offset)
Definition: lfs_wrap.c:291
enum mpg123_mode mode
Definition: mpg123.h:1043
MPG123_EXPORT double mpg123_geteq(mpg123_handle *mh, enum mpg123_channels channel, int band)
Definition: libmpg123.c:437
MPG123_EXPORT int mpg123_encsize(int encoding)
Definition: format.c:131
MPG123_EXPORT int mpg123_feature(const enum mpg123_feature_set key)
Definition: feature.c:8
#define error(str)
Definition: mkdosfs.c:1605
mpg123_parms
Definition: mpg123.h:181
MPG123_EXPORT int mpg123_errcode(mpg123_handle *mh)
Definition: libmpg123.c:1794
MPG123_EXPORT char * mpg123_icy2utf8(const char *icy_text)
Definition: libmpg123.c:1581
superblock * sb
Definition: btrfs.c:4220
mpg123_flags
Definition: mpg123.h:1030
MPG123_EXPORT int mpg123_read(mpg123_handle *mh, void *outmemory, size_t outmemsize, size_t *done)
Definition: libmpg123.c:942
GLuint GLuint GLsizei count
Definition: gl.h:1545
MPG123_EXPORT off_t mpg123_tell_stream(mpg123_handle *mh)
Definition: lfs_alias.c:160
MPG123_EXPORT int mpg123_getformat(mpg123_handle *mh, long *rate, int *channels, int *encoding)
Definition: libmpg123.c:1141
__kernel_off_t off_t
Definition: linux.h:201
int blocktype[2][2]
Definition: mpg123.h:1068
MPG123_EXPORT off_t mpg123_tell(mpg123_handle *mh)
Definition: lfs_alias.c:148
MPG123_EXPORT int mpg123_position(mpg123_handle *mh, off_t frame_offset, off_t buffered_bytes, off_t *current_frame, off_t *frames_left, double *current_seconds, double *seconds_left)
Definition: lfs_wrap.c:445
GLuint GLuint GLsizei GLenum type
Definition: gl.h:1545
Definition: ecma_167.h:138
MPG123_EXPORT mpg123_handle * mpg123_new(const char *decoder, int *error)
Definition: libmpg123.c:57
MPG123_EXPORT int mpg123_set_substring(mpg123_string *sb, const char *stuff, size_t from, size_t count)
Definition: stringbuf.c:170
MPG123_EXPORT void mpg123_free_string(mpg123_string *sb)
Definition: stringbuf.c:43
int This channels
Definition: rdpsnd_libao.c:37
mpg123_string * comment
Definition: mpg123.h:1435
static int fd
Definition: io.c:51
int sfbits[2][2]
Definition: mpg123.h:1071
MPG123_EXPORT int mpg123_open_fixed(mpg123_handle *mh, const char *path, int channels, int encoding)
Definition: lfs_alias.c:105
#define ssize_t
Definition: config.h:517
static MONITORINFO mi
Definition: win.c:7339
MPG123_EXPORT int mpg123_move_string(mpg123_string *from, mpg123_string *to)
Definition: stringbuf.c:122
MPG123_EXPORT int mpg123_format_all(mpg123_handle *mh)
Definition: format.c:438
size_t size
Definition: mpg123.h:1194
#define comment(fmt, arg1)
Definition: rebar.c:820
int rate
Definition: pcmconverter.c:97
off_t input_offset
Definition: frame.h:217
MPG123_EXPORT int mpg123_init(void)
Definition: libmpg123.c:23
MPG123_EXPORT void mpg123_rates(const long **list, size_t *number)
Definition: format.c:118
MPG123_EXPORT int mpg123_feature2(int key)
Definition: feature.c:3
MPG123_EXPORT off_t mpg123_framepos(mpg123_handle *mh)
Definition: frame.c:1054
int preflag[2][2]
Definition: mpg123.h:1067
MPG123_EXPORT int mpg123_framebyframe_decode(mpg123_handle *mh, off_t *num, unsigned char **audio, size_t *bytes)
Definition: lfs_wrap.c:186
MPG123_EXPORT size_t mpg123_strlen(mpg123_string *sb, int utf8)
Definition: stringbuf.c:186
MPG123_EXPORT const char * mpg123_current_decoder(mpg123_handle *mh)
Definition: optimize.c:1163
MPG123_EXPORT int mpg123_eq(mpg123_handle *mh, enum mpg123_channels channel, int band, double val)
Definition: libmpg123.c:416
MPG123_EXPORT int mpg123_framedata(mpg123_handle *mh, unsigned long *header, unsigned char **bodydata, size_t *bodybytes)
Definition: frame.c:626
MPG123_EXPORT int mpg123_icy(mpg123_handle *mh, char **icy_meta)
Definition: libmpg123.c:1557
MPG123_EXPORT size_t mpg123_outblock(mpg123_handle *mh)
Definition: libmpg123.c:653
static unsigned char bytes[4]
Definition: adnsresfilter.c:74
int scalefac_scale[2][2]
Definition: mpg123.h:1066
MPG123_EXPORT int mpg123_param(mpg123_handle *mh, enum mpg123_parms type, long value, double fvalue)
Definition: libmpg123.c:127
MPG123_EXPORT int mpg123_feed(mpg123_handle *mh, const unsigned char *in, size_t size)
Definition: libmpg123.c:947
mpg123_string text
Definition: mpg123.h:1380
static size_t double number
Definition: printf.c:69
enum mpg123_vbr vbr
Definition: mpg123.h:1050
MPG123_EXPORT int mpg123_getparam(mpg123_handle *mh, enum mpg123_parms type, long *value, double *fvalue)
Definition: libmpg123.c:268
mpg123_text * text
Definition: mpg123.h:1440
MPG123_EXPORT int mpg123_reset_eq(mpg123_handle *mh)
Definition: frame.c:172
MPG123_EXPORT int mpg123_spf(mpg123_handle *mh)
Definition: parse.c:973
MPG123_EXPORT int mpg123_decode(mpg123_handle *mh, const unsigned char *inmemory, size_t inmemsize, void *outmemory, size_t outmemsize, size_t *done)
Definition: libmpg123.c:992
MPG123_EXPORT int mpg123_close(mpg123_handle *mh)
Definition: libmpg123.c:1694
MPG123_EXPORT double mpg123_tpf(mpg123_handle *mh)
Definition: parse.c:980
static PVOID ptr
Definition: dispmode.c:27
size_t size
Definition: mpg123.h:1418
MPG123_EXPORT mpg123_string * mpg123_new_string(const char *val)
Definition: stringbuf.c:17
mpg123_id3_pic_type
Definition: mpg123.h:1384
MPG123_EXPORT int mpg123_info(mpg123_handle *mh, struct mpg123_frameinfo *mi)
Definition: libmpg123.c:1087
MPG123_EXPORT int mpg123_format(mpg123_handle *mh, long rate, int channels, int encodings)
Definition: format.c:475
unsigned char version
Definition: mpg123.h:1429
MPG123_EXPORT void mpg123_init_string(mpg123_string *sb)
Definition: stringbuf.c:35
MPG123_EXPORT int mpg123_set_moreinfo(mpg123_handle *mh, struct mpg123_moreinfo *mi)
Definition: frame.c:638
double xr[2][2][576]
Definition: mpg123.h:1060
MPG123_EXPORT void mpg123_delete(mpg123_handle *mh)
Definition: libmpg123.c:1712
MPG123_EXPORT int mpg123_set_string(mpg123_string *sb, const char *stuff)
Definition: stringbuf.c:178
MPG123_EXPORT const char * mpg123_plain_strerror(int errcode)
Definition: libmpg123.c:1775
MPG123_EXPORT mpg123_handle * mpg123_parnew(mpg123_pars *mp, const char *decoder, int *error)
Definition: libmpg123.c:63
double sfb[2][2][22]
Definition: mpg123.h:1061
GLuint GLfloat * val
Definition: glext.h:7180
static const WCHAR lang[]
Definition: wbemdisp.c:287
MPG123_EXPORT off_t mpg123_tellframe(mpg123_handle *mh)
Definition: lfs_alias.c:154
int errcode
Definition: crtdefs.h:352
GLboolean GLboolean GLboolean b
Definition: glext.h:6204
MPG123_EXPORT void mpg123_delete_string(mpg123_string *sb)
Definition: stringbuf.c:27
GLsizeiptr size
Definition: glext.h:5919
mpg123_string * year
Definition: mpg123.h:1433
MPG123_EXPORT int mpg123_fmt(mpg123_pars *mp, long rate, int channels, int encodings)
Definition: format.c:524
MPG123_EXPORT int mpg123_replace_reader_handle(mpg123_handle *mh, ssize_t(*r_read)(void *, void *, size_t), off_t(*r_lseek)(void *, off_t, int), void(*cleanup)(void *))
Definition: lfs_wrap.c:632
_STLP_MOVE_TO_STD_NAMESPACE void fill(_ForwardIter __first, _ForwardIter __last, const _Tp &__val)
Definition: _algobase.h:449
MPG123_EXPORT off_t mpg123_framelength(mpg123_handle *mh)
Definition: lfs_alias.c:208
MPG123_EXPORT off_t mpg123_seek(mpg123_handle *mh, off_t sampleoff, int whence)
Definition: lfs_wrap.c:274
size_t texts
Definition: mpg123.h:1441
MPG123_EXPORT void mpg123_meta_free(mpg123_handle *mh)
Definition: libmpg123.c:1509
MPG123_EXPORT int mpg123_format_support(mpg123_handle *mh, long rate, int encoding)
Definition: format.c:531
GLuint GLuint num
Definition: glext.h:9618
MPG123_EXPORT int mpg123_open(mpg123_handle *mh, const char *path)
Definition: lfs_alias.c:112
MPG123_EXPORT void mpg123_delete_pars(mpg123_pars *mp)
Definition: frame.c:167
MPG123_EXPORT int mpg123_framebyframe_next(mpg123_handle *mh)
Definition: libmpg123.c:860
mpg123_picture * picture
Definition: mpg123.h:1444
mpg123_channelcount
Definition: mpg123.h:515
MPG123_EXPORT int mpg123_decoder(mpg123_handle *mh, const char *decoder_name)
Definition: libmpg123.c:92
MPG123_EXPORT enum mpg123_text_encoding mpg123_enc_from_id3(unsigned char id3_enc_byte)
Definition: libmpg123.c:1591
GLint GLenum GLsizei GLsizei GLsizei GLint GLsizei const GLvoid * data
Definition: gl.h:1950
MPG123_EXPORT int mpg123_set_index(mpg123_handle *mh, off_t *offsets, off_t step, size_t fill)
Definition: lfs_wrap.c:406
mpg123_feature_set
Definition: mpg123.h:303
mpg123_mode
Definition: mpg123.h:1021
int ssize_t
Definition: rosdhcp.h:48
Definition: _list.h:228
MPG123_EXPORT int mpg123_format_none(mpg123_handle *mh)
Definition: format.c:417
mpg123_string mime_type
Definition: mpg123.h:1417
#define MPG123_EXPORT
Definition: mpg123.h:39
ed encoding
Definition: write.c:2825
unsigned char * data
Definition: mpg123.h:1419
MPG123_EXPORT int mpg123_format2(mpg123_handle *mh, long rate, int channels, int encodings)
Definition: format.c:464
MPG123_EXPORT long mpg123_clip(mpg123_handle *mh)
Definition: libmpg123.c:1061
mpg123_text_encoding
Definition: mpg123.h:1322
MPG123_EXPORT size_t mpg123_safe_buffer(void)
Definition: libmpg123.c:647
MPG123_EXPORT int mpg123_open_handle(mpg123_handle *mh, void *iohandle)
Definition: lfs_alias.c:124
MPG123_EXPORT int mpg123_scan(mpg123_handle *mh)
Definition: libmpg123.c:1461
GLfloat GLfloat GLfloat v2
Definition: glext.h:6063
MPG123_EXPORT int mpg123_add_string(mpg123_string *sb, const char *stuff)
Definition: stringbuf.c:135
mpg123_string description
Definition: mpg123.h:1416
MPG123_EXPORT int mpg123_replace_reader(mpg123_handle *mh, ssize_t(*r_read)(int, void *, size_t), off_t(*r_lseek)(int, off_t, int))
Definition: lfs_wrap.c:601
enum mpg123_version version
Definition: mpg123.h:1040
MPG123_EXPORT int mpg123_getpar(mpg123_pars *mp, enum mpg123_parms type, long *value, double *fvalue)
Definition: libmpg123.c:278
MPG123_EXPORT const char * mpg123_strerror(mpg123_handle *mh)
Definition: libmpg123.c:1800
size_t extras
Definition: mpg123.h:1443
GLuint in
Definition: glext.h:9616
MPG123_EXPORT int mpg123_store_utf8(mpg123_string *sb, enum mpg123_text_encoding enc, const unsigned char *source, size_t source_size)
Definition: libmpg123.c:1604
unsigned char genre
Definition: mpg123.h:1461
MPG123_EXPORT int mpg123_getvolume(mpg123_handle *mh, double *base, double *really, double *rva_db)
Definition: frame.c:1045
MPG123_EXPORT int mpg123_replace_buffer(mpg123_handle *mh, void *data, size_t size)
Definition: frame.c:219
MPG123_EXPORT off_t mpg123_length(mpg123_handle *mh)
Definition: lfs_alias.c:214
double sfb_s[2][2][3 *13]
Definition: mpg123.h:1062
enum mpg123_flags flags
Definition: mpg123.h:1046
MPG123_EXPORT int mpg123_index(mpg123_handle *mh, off_t **offsets, off_t *step, size_t *fill)
Definition: lfs_wrap.c:349
MPG123_EXPORT int mpg123_fmt2(mpg123_pars *mp, long rate, int channels, int encodings)
Definition: format.c:485
__kernel_ptrdiff_t ptrdiff_t
Definition: linux.h:247
mpg123_state
Definition: mpg123.h:1157
MPG123_EXPORT int mpg123_volume(mpg123_handle *mh, double vol)
Definition: frame.c:980
mpg123_string * title
Definition: mpg123.h:1430
int mainbits[2][2]
Definition: mpg123.h:1070
int sub_gain[2][2][3]
Definition: mpg123.h:1065
mpg123_errors
Definition: mpg123.h:377
size_t pictures
Definition: mpg123.h:1446
MPG123_EXPORT void mpg123_exit(void)
Definition: libmpg123.c:50
MPG123_EXPORT off_t mpg123_seek_frame(mpg123_handle *mh, off_t frameoff, int whence)
Definition: lfs_wrap.c:313
MPG123_EXPORT void mpg123_encodings(const int **list, size_t *number)
Definition: format.c:125
MPG123_EXPORT int mpg123_fmt_all(mpg123_pars *mp)
Definition: format.c:449
mpg123_version
Definition: mpg123.h:1012
MPG123_EXPORT int mpg123_copy_string(mpg123_string *from, mpg123_string *to)
Definition: stringbuf.c:93
mpg123_channels
Definition: mpg123.h:936
int scfsi[2]
Definition: mpg123.h:1072
MPG123_EXPORT const char ** mpg123_decoders(void)
Definition: optimize.c:1170
mpg123_param_rva
Definition: mpg123.h:272
mpg123_string * album
Definition: mpg123.h:1432
int mixed[2][2]
Definition: mpg123.h:1069
mpg123_vbr
Definition: mpg123.h:1005
char * cleanup(char *str)
Definition: wpickclick.c:99
MPG123_EXPORT int mpg123_set_filesize(mpg123_handle *mh, off_t size)
Definition: lfs_wrap.c:507
MPG123_EXPORT int mpg123_resize_string(mpg123_string *sb, size_t news)
Definition: stringbuf.c:59
MPG123_EXPORT int mpg123_fmt_support(mpg123_pars *mp, long rate, int encoding)
Definition: format.c:537
MPG123_EXPORT int mpg123_volume_change(mpg123_handle *mh, double change)
Definition: frame.c:974
int big_values[2][2]
Definition: mpg123.h:1064
MPG123_EXPORT int mpg123_open_fd(mpg123_handle *mh, int fd)
Definition: lfs_alias.c:118
MPG123_EXPORT int mpg123_chomp_string(mpg123_string *sb)
Definition: stringbuf.c:218
GLboolean GLboolean GLboolean GLboolean a
Definition: glext.h:6204
MPG123_EXPORT const char ** mpg123_supported_decoders(void)
Definition: optimize.c:1171
MPG123_EXPORT int mpg123_fmt_none(mpg123_pars *mp)
Definition: format.c:428
CardRegion * from
Definition: spigame.cpp:19
mpg123_param_flags
Definition: mpg123.h:211
size_t comments
Definition: mpg123.h:1439
mpg123_string description
Definition: mpg123.h:1379
size_t fill
Definition: mpg123.h:1195
mpg123_id3_enc
Definition: mpg123.h:1342
mpg123_string * genre
Definition: mpg123.h:1434
MPG123_EXPORT int mpg123_add_substring(mpg123_string *sb, const char *stuff, size_t from, size_t count)
Definition: stringbuf.c:141
GLfloat GLfloat v1
Definition: glext.h:6062
static char title[]
Definition: ps.c:92
mpg123_text * comment_list
Definition: mpg123.h:1438
MPG123_EXPORT int mpg123_grow_string(mpg123_string *sb, size_t news)
Definition: stringbuf.c:51
char * p
Definition: mpg123.h:1193
int qss[2][2]
Definition: mpg123.h:1063
MPG123_EXPORT int mpg123_decode_frame(mpg123_handle *mh, off_t *num, unsigned char **audio, size_t *bytes)
Definition: lfs_wrap.c:166
mpg123_string * artist
Definition: mpg123.h:1431
MPG123_EXPORT int mpg123_getstate(mpg123_handle *mh, enum mpg123_state key, long *val, double *fval)
Definition: libmpg123.c:360
Definition: path.c:41
MPG123_EXPORT mpg123_pars * mpg123_new_pars(int *error)
Definition: frame.c:159