Mercurial > mplayer.hg
annotate libmpcodecs/ae.h @ 32404:2f42741403a8
ignore debhelper generated debug logfiles
author | siretart |
---|---|
date | Thu, 14 Oct 2010 08:43:19 +0000 |
parents | bbb6ebec87a0 |
children | 5a9d68a07ed1 |
rev | line source |
---|---|
30421
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
1 /* |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
2 * This file is part of MPlayer. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
3 * |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
4 * MPlayer is free software; you can redistribute it and/or modify |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
5 * it under the terms of the GNU General Public License as published by |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
6 * the Free Software Foundation; either version 2 of the License, or |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
7 * (at your option) any later version. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
8 * |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
9 * MPlayer is distributed in the hope that it will be useful, |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
12 * GNU General Public License for more details. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
13 * |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
14 * You should have received a copy of the GNU General Public License along |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
15 * with MPlayer; if not, write to the Free Software Foundation, Inc., |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
16 * 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA. |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
17 */ |
bbb6ebec87a0
Add missing license headers to all files in the libmpcodecs directory.
diego
parents:
26147
diff
changeset
|
18 |
26029 | 19 #ifndef MPLAYER_AE_H |
20 #define MPLAYER_AE_H | |
15234 | 21 |
26147
41652035483c
Add necessary header #includes to fix 'make checkheaders'.
diego
parents:
26029
diff
changeset
|
22 #include "libmpdemux/muxer.h" |
41652035483c
Add necessary header #includes to fix 'make checkheaders'.
diego
parents:
26029
diff
changeset
|
23 |
15234 | 24 #define ACODEC_COPY 0 |
25 #define ACODEC_PCM 1 | |
26 #define ACODEC_VBRMP3 2 | |
27 #define ACODEC_NULL 3 | |
28 #define ACODEC_LAVC 4 | |
29 #define ACODEC_TOOLAME 5 | |
15258 | 30 #define ACODEC_FAAC 6 |
15359 | 31 #define ACODEC_TWOLAME 7 |
15234 | 32 |
33 #define AE_NEEDS_COMPRESSED_INPUT 1 | |
34 | |
35 typedef struct { | |
36 int channels; | |
37 int sample_rate; | |
38 int bitrate; | |
39 int samples_per_frame; | |
40 int audio_preload; | |
41 } audio_encoding_params_t; | |
42 | |
15258 | 43 typedef struct audio_encoder_s { |
15234 | 44 int codec; |
45 int flags; | |
46 muxer_stream_t *stream; | |
47 audio_encoding_params_t params; | |
48 int audio_preload; //in ms | |
49 int input_format; | |
50 int min_buffer_size, max_buffer_size; //for init_audio_filters | |
17122 | 51 unsigned char *decode_buffer; |
15234 | 52 int decode_buffer_size; |
53 int decode_buffer_len; | |
54 void *priv; | |
15258 | 55 int (*bind)(struct audio_encoder_s*, muxer_stream_t*); |
56 int (*get_frame_size)(struct audio_encoder_s*); | |
57 int (*set_decoded_len)(struct audio_encoder_s *encoder, int len); | |
58 int (*encode)(struct audio_encoder_s *encoder, uint8_t *dest, void *src, int nsamples, int max_size); | |
59 void (*fixup)(struct audio_encoder_s *encoder); | |
60 int (*close)(struct audio_encoder_s *encoder); | |
15234 | 61 } audio_encoder_t; |
62 | |
63 audio_encoder_t *new_audio_encoder(muxer_stream_t *stream, audio_encoding_params_t *params); | |
64 | |
26029 | 65 #endif /* MPLAYER_AE_H */ |