annotate libmpcodecs/ae.h @ 33771:6e774a02d00c

Remove gtkClearStruct code from mplayer() in interface.c. Move it as static function guiInfoMediumClear() where it is used and rename the symbolic constants used with this code.
author ib
date Sat, 09 Jul 2011 11:48:13 +0000
parents 5a9d68a07ed1
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
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
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25869
diff changeset
19 #ifndef MPLAYER_AE_H
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25869
diff changeset
20 #define MPLAYER_AE_H
15234
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
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
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
24 #define ACODEC_COPY 0
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
25 #define ACODEC_PCM 1
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
26 #define ACODEC_VBRMP3 2
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
27 #define ACODEC_NULL 3
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
28 #define ACODEC_LAVC 4
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
29 #define ACODEC_TOOLAME 5
15258
c2979462805a fixed wrong function pointers definitions
nicodvb
parents: 15234
diff changeset
30 #define ACODEC_FAAC 6
15359
af245d15f502 added twolame mp2 audio encoder
nicodvb
parents: 15258
diff changeset
31 #define ACODEC_TWOLAME 7
15234
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
32
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
33 #define AE_NEEDS_COMPRESSED_INPUT 1
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
34
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
35 typedef struct {
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
36 int channels;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
37 int sample_rate;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
38 int bitrate;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
39 int samples_per_frame;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
40 int audio_preload;
33504
5a9d68a07ed1 Pass "native" filter chain sample format to audio encoder.
reimar
parents: 30421
diff changeset
41 int sample_format;
15234
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
42 } audio_encoding_params_t;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
43
15258
c2979462805a fixed wrong function pointers definitions
nicodvb
parents: 15234
diff changeset
44 typedef struct audio_encoder_s {
15234
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
45 int codec;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
46 int flags;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
47 muxer_stream_t *stream;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
48 audio_encoding_params_t params;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
49 int audio_preload; //in ms
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
50 int input_format;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
51 int min_buffer_size, max_buffer_size; //for init_audio_filters
17122
c23ca41ad996 more warning fixes
ods15
parents: 15359
diff changeset
52 unsigned char *decode_buffer;
15234
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
53 int decode_buffer_size;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
54 int decode_buffer_len;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
55 void *priv;
15258
c2979462805a fixed wrong function pointers definitions
nicodvb
parents: 15234
diff changeset
56 int (*bind)(struct audio_encoder_s*, muxer_stream_t*);
c2979462805a fixed wrong function pointers definitions
nicodvb
parents: 15234
diff changeset
57 int (*get_frame_size)(struct audio_encoder_s*);
c2979462805a fixed wrong function pointers definitions
nicodvb
parents: 15234
diff changeset
58 int (*set_decoded_len)(struct audio_encoder_s *encoder, int len);
c2979462805a fixed wrong function pointers definitions
nicodvb
parents: 15234
diff changeset
59 int (*encode)(struct audio_encoder_s *encoder, uint8_t *dest, void *src, int nsamples, int max_size);
c2979462805a fixed wrong function pointers definitions
nicodvb
parents: 15234
diff changeset
60 void (*fixup)(struct audio_encoder_s *encoder);
c2979462805a fixed wrong function pointers definitions
nicodvb
parents: 15234
diff changeset
61 int (*close)(struct audio_encoder_s *encoder);
15234
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
62 } audio_encoder_t;
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
63
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
64 audio_encoder_t *new_audio_encoder(muxer_stream_t *stream, audio_encoding_params_t *params);
e84a6ae9d51e audio encoding reworked
nicodvb
parents:
diff changeset
65
26029
4129c8cfa742 Add MPLAYER_ prefix to multiple inclusion guards.
diego
parents: 25869
diff changeset
66 #endif /* MPLAYER_AE_H */