FFmpeg
libavcodec
mpegaudio.c
Go to the documentation of this file.
1
/*
2
* MPEG Audio common code
3
* Copyright (c) 2001, 2002 Fabrice Bellard
4
*
5
* This file is part of FFmpeg.
6
*
7
* FFmpeg is free software; you can redistribute it and/or
8
* modify it under the terms of the GNU Lesser General Public
9
* License as published by the Free Software Foundation; either
10
* version 2.1 of the License, or (at your option) any later version.
11
*
12
* FFmpeg is distributed in the hope that it will be useful,
13
* but WITHOUT ANY WARRANTY; without even the implied warranty of
14
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
15
* Lesser General Public License for more details.
16
*
17
* You should have received a copy of the GNU Lesser General Public
18
* License along with FFmpeg; if not, write to the Free Software
19
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
20
*/
21
22
/**
23
* @file
24
* MPEG Audio common code.
25
*/
26
27
#include "
mpegaudio.h
"
28
29
30
/* bitrate is in kb/s */
31
int
ff_mpa_l2_select_table
(
int
bitrate
,
int
nb_channels
,
int
freq,
int
lsf)
32
{
33
int
ch_bitrate,
table
;
34
35
ch_bitrate =
bitrate
/
nb_channels
;
36
if
(!lsf) {
37
if
((freq == 48000 && ch_bitrate >= 56) ||
38
(ch_bitrate >= 56 && ch_bitrate <= 80))
39
table
= 0;
40
else
if
(freq != 48000 && ch_bitrate >= 96)
41
table
= 1;
42
else
if
(freq != 32000 && ch_bitrate <= 48)
43
table
= 2;
44
else
45
table
= 3;
46
}
else
{
47
table
= 4;
48
}
49
return
table
;
50
}
ff_mpa_l2_select_table
int ff_mpa_l2_select_table(int bitrate, int nb_channels, int freq, int lsf)
Definition:
mpegaudio.c:31
table
static const uint16_t table[]
Definition:
prosumer.c:206
bitrate
int64_t bitrate
Definition:
h264_levels.c:131
mpegaudio.h
nb_channels
int nb_channels
Definition:
channel_layout.c:76
Generated on Wed Aug 24 2022 21:31:28 for FFmpeg by
1.8.17