2 * Copyright (C) 1999-2010 The L.A.M.E. project
4 * Initially written by Michael Hipp, see also AUTHORS and README.
6 * This library is free software; you can redistribute it and/or
7 * modify it under the terms of the GNU Library General Public
8 * License as published by the Free Software Foundation; either
9 * version 2 of the License, or (at your option) any later version.
11 * This library is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 * Library General Public License for more details.
16 * You should have received a copy of the GNU Library General Public
17 * License along with this library; if not, write to the
18 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
19 * Boston, MA 02111-1307, USA.
22 #ifndef INTERFACE_H_INCLUDED
23 #define INTERFACE_H_INCLUDED
31 int InitMP3(PMPSTR mp);
32 int decodeMP3(PMPSTR mp, unsigned char *inmemory, int inmemsize, char *outmemory,
33 int outmemsize, int *done);
34 void ExitMP3(PMPSTR mp);
36 /* added decodeMP3_unclipped to support returning raw floating-point values of samples. The representation
37 of the floating-point numbers is defined in mpg123.h as #define real. It is 64-bit double by default.
38 No more than 1152 samples per channel are allowed. */
39 int decodeMP3_unclipped(PMPSTR mp, unsigned char *inmemory, int inmemsize, char *outmemory,
40 int outmemsize, int *done);
42 /* added remove_buf to support mpglib seeking */
43 void remove_buf(PMPSTR mp);
45 /* added audiodata_precedesframes to return the number of bitstream frames the audio data will precede the
46 current frame by for Layer 3 data. Aids seeking.
48 int audiodata_precedesframes(PMPSTR mp);
50 /* Resets decoding. Aids seeking. */
51 void decode_reset(PMPSTR mp);