Mercurial > libavcodec.hg
annotate vorbis.h @ 10996:26f9c146ef2a libavcodec
a[b-1] -> (a-1)[b].
Helps gcc not to add seperate -1 instructions.
author | michael |
---|---|
date | Sun, 24 Jan 2010 18:42:22 +0000 |
parents | 93abbe76b5cc |
children | 5d4991dd23de |
rev | line source |
---|---|
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
1 /* |
3798 | 2 * copyright (c) 2006 Oded Shimon <ods15@ods15.dyndns.org> |
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
3 * |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3805
diff
changeset
|
4 * This file is part of FFmpeg. |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3805
diff
changeset
|
5 * |
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3805
diff
changeset
|
6 * FFmpeg is free software; you can redistribute it and/or |
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
7 * modify it under the terms of the GNU Lesser General Public |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
8 * License as published by the Free Software Foundation; either |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3805
diff
changeset
|
9 * version 2.1 of the License, or (at your option) any later version. |
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
10 * |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3805
diff
changeset
|
11 * FFmpeg is distributed in the hope that it will be useful, |
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
14 * Lesser General Public License for more details. |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
15 * |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
16 * You should have received a copy of the GNU Lesser General Public |
3947
c8c591fe26f8
Change license headers to say 'FFmpeg' instead of 'this program/this library'
diego
parents:
3805
diff
changeset
|
17 * License along with FFmpeg; if not, write to the Free Software |
3699
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
19 */ |
c537a97eec66
Add official LGPL license headers to the files that were missing them.
diego
parents:
3571
diff
changeset
|
20 |
7760 | 21 #ifndef AVCODEC_VORBIS_H |
22 #define AVCODEC_VORBIS_H | |
2697
4fe1c19fc7a3
Vorbis decoder by (Balatoni Denes | dbalatoni programozo hu)
michael
parents:
diff
changeset
|
23 |
3803
7ffa21b125a6
100l, broke ffmpeg compilation, ABS() and uint* types not defined in vorbis_data.c
ods15
parents:
3802
diff
changeset
|
24 #include "avcodec.h" |
7ffa21b125a6
100l, broke ffmpeg compilation, ABS() and uint* types not defined in vorbis_data.c
ods15
parents:
3802
diff
changeset
|
25 |
3798 | 26 extern const float ff_vorbis_floor1_inverse_db_table[256]; |
7129 | 27 extern const float * const ff_vorbis_vwin[8]; |
10347
93abbe76b5cc
Add vorbis channel layout support according to those defined in the Vorbis I
superdump
parents:
10309
diff
changeset
|
28 extern const uint8_t ff_vorbis_channel_layout_offsets[6][6]; |
93abbe76b5cc
Add vorbis channel layout support according to those defined in the Vorbis I
superdump
parents:
10309
diff
changeset
|
29 extern const int64_t ff_vorbis_channel_layouts[7]; |
2697
4fe1c19fc7a3
Vorbis decoder by (Balatoni Denes | dbalatoni programozo hu)
michael
parents:
diff
changeset
|
30 |
3801 | 31 typedef struct { |
32 uint_fast16_t x; | |
33 uint_fast16_t sort; | |
34 uint_fast16_t low; | |
35 uint_fast16_t high; | |
8306
ddecbc18fe94
Rename all vorbis encoder related typedefs to not use _t for POSIX compatibility
ods15
parents:
7760
diff
changeset
|
36 } vorbis_floor1_entry; |
3801 | 37 |
8306
ddecbc18fe94
Rename all vorbis encoder related typedefs to not use _t for POSIX compatibility
ods15
parents:
7760
diff
changeset
|
38 void ff_vorbis_ready_floor1_list(vorbis_floor1_entry * list, int values); |
3802
094fe185d054
make some more functions global so they can be shared with vorbis_enc.c
ods15
parents:
3801
diff
changeset
|
39 unsigned int ff_vorbis_nth_root(unsigned int x, unsigned int n); // x^(1/n) |
094fe185d054
make some more functions global so they can be shared with vorbis_enc.c
ods15
parents:
3801
diff
changeset
|
40 int ff_vorbis_len2vlc(uint8_t *bits, uint32_t *codes, uint_fast32_t num); |
10309 | 41 void ff_vorbis_floor1_render_list(vorbis_floor1_entry * list, int values, |
42 uint_fast16_t * y_list, int * flag, | |
43 int multiplier, float * out, int samples); | |
3802
094fe185d054
make some more functions global so they can be shared with vorbis_enc.c
ods15
parents:
3801
diff
changeset
|
44 |
094fe185d054
make some more functions global so they can be shared with vorbis_enc.c
ods15
parents:
3801
diff
changeset
|
45 #define ilog(i) av_log2(2*(i)) |
3801 | 46 |
7760 | 47 #endif /* AVCODEC_VORBIS_H */ |