adts.h
Go to the documentation of this file.
1 /*
2  * ADTS muxer.
3  * Copyright (c) 2006 Baptiste Coudurier <baptiste.coudurier@smartjog.com>
4  * Mans Rullgard <mans@mansr.com>
5  *
6  * This file is part of Libav.
7  *
8  * Libav 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  * Libav 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 Libav; if not, write to the Free Software
20  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
21  */
22 
23 #ifndef AVFORMAT_ADTS_H
24 #define AVFORMAT_ADTS_H
25 
26 #include "avformat.h"
27 #include "libavcodec/mpeg4audio.h"
28 
29 #define ADTS_HEADER_SIZE 7
30 
31 typedef struct {
36  int pce_size;
37  uint8_t pce_data[MAX_PCE_SIZE];
38 } ADTSContext;
39 
40 int ff_adts_write_frame_header(ADTSContext *ctx, uint8_t *buf,
41  int size, int pce_size);
43  uint8_t *buf, int size);
44 
45 #endif /* AVFORMAT_ADTS_H */
int size
int objecttype
Definition: adts.h:33
Format I/O context.
Definition: avformat.h:863
int channel_conf
Definition: adts.h:35
int write_adts
Definition: adts.h:32
int sample_rate_index
Definition: adts.h:34
int pce_size
Definition: adts.h:36
int ff_adts_decode_extradata(AVFormatContext *s, ADTSContext *adts, uint8_t *buf, int size)
Definition: adtsenc.c:32
int ff_adts_write_frame_header(ADTSContext *ctx, uint8_t *buf, int size, int pce_size)
Definition: adtsenc.c:93
Main libavformat public API header.
#define MAX_PCE_SIZE
Maximum size of a PCE including the 3-bit ID_PCE.
Definition: mpeg4audio.h:104