FFmpeg
Main Page
Related Pages
Modules
Namespaces
Data Structures
Files
Examples
File List
Globals
All
Data Structures
Namespaces
Files
Functions
Variables
Typedefs
Enumerations
Enumerator
Macros
Groups
Pages
libavcodec
aacadtsdec.h
Go to the documentation of this file.
1
/*
2
* AAC ADTS header decoding prototypes and structures
3
* Copyright (c) 2003 Fabrice Bellard
4
* Copyright (c) 2003 Michael Niedermayer
5
*
6
* This file is part of FFmpeg.
7
*
8
* FFmpeg is free software; you can redistribute it and/or
9
* modify it under the terms of the GNU Lesser General Public
10
* License as published by the Free Software Foundation; either
11
* version 2.1 of the License, or (at your option) any later version.
12
*
13
* FFmpeg is distributed in the hope that it will be useful,
14
* but WITHOUT ANY WARRANTY; without even the implied warranty of
15
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
16
* Lesser General Public License for more details.
17
*
18
* You should have received a copy of the GNU Lesser General Public
19
* License along with FFmpeg; if not, write to the Free Software
20
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21
*/
22
23
#ifndef AVCODEC_AACADTSDEC_H
24
#define AVCODEC_AACADTSDEC_H
25
26
#include <stdint.h>
27
#include "
get_bits.h
"
28
29
#define AAC_ADTS_HEADER_SIZE 7
30
31
typedef
struct
AACADTSHeaderInfo
{
32
uint32_t
sample_rate
;
33
uint32_t
samples
;
34
uint32_t
bit_rate
;
35
uint8_t
crc_absent
;
36
uint8_t
object_type
;
37
uint8_t
sampling_index
;
38
uint8_t
chan_config
;
39
uint8_t
num_aac_frames
;
40
}
AACADTSHeaderInfo
;
41
42
/**
43
* Parse AAC frame header.
44
* Parse the ADTS frame header to the end of the variable header, which is
45
* the first 54 bits.
46
* @param[in] gbc BitContext containing the first 54 bits of the frame.
47
* @param[out] hdr Pointer to struct where header info is written.
48
* @return Returns 0 on success, -1 if there is a sync word mismatch,
49
* -2 if the version element is invalid, -3 if the sample rate
50
* element is invalid, or -4 if the bit rate element is invalid.
51
*/
52
int
avpriv_aac_parse_header
(
GetBitContext
*gbc,
AACADTSHeaderInfo
*hdr);
53
54
#endif
/* AVCODEC_AACADTSDEC_H */
AACADTSHeaderInfo::object_type
uint8_t object_type
Definition:
aacadtsdec.h:36
avpriv_aac_parse_header
int avpriv_aac_parse_header(GetBitContext *gbc, AACADTSHeaderInfo *hdr)
Parse AAC frame header.
Definition:
aacadtsdec.c:29
uint8_t
uint8_t
Definition:
audio_convert.c:194
get_bits.h
bitstream reader API header.
AACADTSHeaderInfo::sampling_index
uint8_t sampling_index
Definition:
aacadtsdec.h:37
AACADTSHeaderInfo::chan_config
uint8_t chan_config
Definition:
aacadtsdec.h:38
AACADTSHeaderInfo::num_aac_frames
uint8_t num_aac_frames
Definition:
aacadtsdec.h:39
AACADTSHeaderInfo::samples
uint32_t samples
Definition:
aacadtsdec.h:33
AACADTSHeaderInfo::bit_rate
uint32_t bit_rate
Definition:
aacadtsdec.h:34
AACADTSHeaderInfo
Definition:
aacadtsdec.h:31
GetBitContext
Definition:
get_bits.h:54
AACADTSHeaderInfo::crc_absent
uint8_t crc_absent
Definition:
aacadtsdec.h:35
AACADTSHeaderInfo::sample_rate
uint32_t sample_rate
Definition:
aacadtsdec.h:32
Generated on Mon Feb 15 2016 15:20:36 for FFmpeg by
1.8.6