FFmpeg
1.2.12
Main Page
Related Pages
Modules
Data Structures
Files
Examples
File List
Globals
libavresample
audio_data.h
Go to the documentation of this file.
1
/*
2
* Copyright (c) 2012 Justin Ruggles <justin.ruggles@gmail.com>
3
*
4
* This file is part of Libav.
5
*
6
* Libav is free software; you can redistribute it and/or
7
* modify it under the terms of the GNU Lesser General Public
8
* License as published by the Free Software Foundation; either
9
* version 2.1 of the License, or (at your option) any later version.
10
*
11
* Libav is distributed in the hope that it will be useful,
12
* but WITHOUT ANY WARRANTY; without even the implied warranty of
13
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14
* Lesser General Public License for more details.
15
*
16
* You should have received a copy of the GNU Lesser General Public
17
* License along with Libav; if not, write to the Free Software
18
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
19
*/
20
21
#ifndef AVRESAMPLE_AUDIO_DATA_H
22
#define AVRESAMPLE_AUDIO_DATA_H
23
24
#include <stdint.h>
25
26
#include "libavutil/audio_fifo.h"
27
#include "libavutil/log.h"
28
#include "libavutil/samplefmt.h"
29
#include "
avresample.h
"
30
#include "
internal.h
"
31
35
struct
AudioData
{
36
const
AVClass
*
class
;
37
uint8_t
*
data
[
AVRESAMPLE_MAX_CHANNELS
];
38
uint8_t
*
buffer
;
39
unsigned
int
buffer_size
;
40
int
allocated_samples
;
41
int
nb_samples
;
42
enum
AVSampleFormat
sample_fmt
;
43
int
channels
;
44
int
allocated_channels
;
45
int
is_planar
;
46
int
planes
;
47
int
sample_size
;
48
int
stride
;
49
int
read_only
;
50
int
allow_realloc
;
51
int
ptr_align
;
52
int
samples_align
;
53
const
char
*
name
;
54
};
55
56
int
ff_audio_data_set_channels
(
AudioData
*
a
,
int
channels);
57
77
int
ff_audio_data_init
(
AudioData
*
a
,
uint8_t
**src,
int
plane_size,
int
channels,
78
int
nb_samples
,
enum
AVSampleFormat
sample_fmt,
79
int
read_only,
const
char
*
name
);
80
92
AudioData
*
ff_audio_data_alloc
(
int
channels,
int
nb_samples
,
93
enum
AVSampleFormat
sample_fmt,
94
const
char
*
name
);
95
105
int
ff_audio_data_realloc
(
AudioData
*
a
,
int
nb_samples
);
106
114
void
ff_audio_data_free
(
AudioData
**
a
);
115
124
int
ff_audio_data_copy
(
AudioData
*
out
,
AudioData
*
in
,
ChannelMapInfo
*map);
125
138
int
ff_audio_data_combine
(
AudioData
*
dst
,
int
dst_offset,
AudioData
*src,
139
int
src_offset,
int
nb_samples
);
140
149
void
ff_audio_data_drain
(
AudioData
*
a
,
int
nb_samples
);
150
161
int
ff_audio_data_add_to_fifo
(
AVAudioFifo
*af,
AudioData
*
a
,
int
offset
,
162
int
nb_samples
);
163
173
int
ff_audio_data_read_from_fifo
(
AVAudioFifo
*af,
AudioData
*
a
,
int
nb_samples
);
174
175
#endif
/* AVRESAMPLE_AUDIO_DATA_H */
Generated on Thu Feb 12 2015 17:57:03 for FFmpeg by
1.8.1.2