Mercurial > libavcodec.hg
annotate vorbis.h @ 8695:d8a784fb1bbe libavcodec
Use the new RDFT code in the QDM2 decoder.
author | alexc |
---|---|
date | Fri, 30 Jan 2009 20:33:29 +0000 |
parents | ddecbc18fe94 |
children | d157ccc267e7 |
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]; |
2697
4fe1c19fc7a3
Vorbis decoder by (Balatoni Denes | dbalatoni programozo hu)
michael
parents:
diff
changeset
|
28 |
3801 | 29 typedef struct { |
30 uint_fast16_t x; | |
31 uint_fast16_t sort; | |
32 uint_fast16_t low; | |
33 uint_fast16_t high; | |
8306
ddecbc18fe94
Rename all vorbis encoder related typedefs to not use _t for POSIX compatibility
ods15
parents:
7760
diff
changeset
|
34 } vorbis_floor1_entry; |
3801 | 35 |
8306
ddecbc18fe94
Rename all vorbis encoder related typedefs to not use _t for POSIX compatibility
ods15
parents:
7760
diff
changeset
|
36 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
|
37 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
|
38 int ff_vorbis_len2vlc(uint8_t *bits, uint32_t *codes, uint_fast32_t num); |
8306
ddecbc18fe94
Rename all vorbis encoder related typedefs to not use _t for POSIX compatibility
ods15
parents:
7760
diff
changeset
|
39 void ff_vorbis_floor1_render_list(vorbis_floor1_entry * list, int values, uint_fast16_t * y_list, int * flag, 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
|
40 |
094fe185d054
make some more functions global so they can be shared with vorbis_enc.c
ods15
parents:
3801
diff
changeset
|
41 #define ilog(i) av_log2(2*(i)) |
3801 | 42 |
7760 | 43 #endif /* AVCODEC_VORBIS_H */ |