FFmpeg
4.0
libavformat
pcmenc.c
Go to the documentation of this file.
1
/*
2
* RAW PCM muxers
3
* Copyright (c) 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
#include "
avformat.h
"
23
#include "
rawenc.h
"
24
25
#define PCMDEF(name_, long_name_, ext, codec) \
26
AVOutputFormat ff_pcm_ ## name_ ## _muxer = { \
27
.name = #name_, \
28
.long_name = NULL_IF_CONFIG_SMALL(long_name_), \
29
.extensions = ext, \
30
.audio_codec = codec, \
31
.video_codec = AV_CODEC_ID_NONE, \
32
.write_packet = ff_raw_write_packet, \
33
.flags = AVFMT_NOTIMESTAMPS, \
34
};
35
36
PCMDEF
(f64be,
"PCM 64-bit floating-point big-endian"
,
37
NULL
,
AV_CODEC_ID_PCM_F64BE
)
38
39
PCMDEF
(f64le,
"PCM 64-bit floating-point little-endian"
,
40
NULL
,
AV_CODEC_ID_PCM_F64LE
)
41
42
PCMDEF
(f32be,
"PCM 32-bit floating-point big-endian"
,
43
NULL
,
AV_CODEC_ID_PCM_F32BE
)
44
45
PCMDEF
(f32le,
"PCM 32-bit floating-point little-endian"
,
46
NULL
,
AV_CODEC_ID_PCM_F32LE
)
47
48
PCMDEF
(s32be,
"PCM signed 32-bit big-endian"
,
49
NULL
,
AV_CODEC_ID_PCM_S32BE
)
50
51
PCMDEF
(s32le,
"PCM signed 32-bit little-endian"
,
52
NULL
,
AV_CODEC_ID_PCM_S32LE
)
53
54
PCMDEF
(s24be,
"PCM signed 24-bit big-endian"
,
55
NULL
,
AV_CODEC_ID_PCM_S24BE
)
56
57
PCMDEF
(s24le,
"PCM signed 24-bit little-endian"
,
58
NULL
,
AV_CODEC_ID_PCM_S24LE
)
59
60
PCMDEF
(s16be,
"PCM signed 16-bit big-endian"
,
61
AV_NE
(
"sw"
,
NULL
),
AV_CODEC_ID_PCM_S16BE
)
62
63
PCMDEF
(s16le,
"PCM signed 16-bit little-endian"
,
64
AV_NE
(
NULL
,
"sw"
),
AV_CODEC_ID_PCM_S16LE
)
65
66
PCMDEF
(s8,
"PCM signed 8-bit"
,
67
"sb"
,
AV_CODEC_ID_PCM_S8
)
68
69
PCMDEF
(u32be,
"PCM unsigned 32-bit big-endian"
,
70
NULL
,
AV_CODEC_ID_PCM_U32BE
)
71
72
PCMDEF
(u32le,
"PCM unsigned 32-bit little-endian"
,
73
NULL
,
AV_CODEC_ID_PCM_U32LE
)
74
75
PCMDEF
(u24be,
"PCM unsigned 24-bit big-endian"
,
76
NULL
,
AV_CODEC_ID_PCM_U24BE
)
77
78
PCMDEF
(u24le,
"PCM unsigned 24-bit little-endian"
,
79
NULL
,
AV_CODEC_ID_PCM_U24LE
)
80
81
PCMDEF
(u16be,
"PCM unsigned 16-bit big-endian"
,
82
AV_NE
(
"uw"
,
NULL
),
AV_CODEC_ID_PCM_U16BE
)
83
84
PCMDEF
(u16le,
"PCM unsigned 16-bit little-endian"
,
85
AV_NE
(
NULL
,
"uw"
),
AV_CODEC_ID_PCM_U16LE
)
86
87
PCMDEF
(u8,
"PCM unsigned 8-bit"
,
88
"ub"
,
AV_CODEC_ID_PCM_U8
)
89
90
PCMDEF
(alaw,
"PCM A-law"
,
91
"al"
,
AV_CODEC_ID_PCM_ALAW
)
92
93
PCMDEF
(mulaw,
"PCM mu-law"
,
94
"ul"
,
AV_CODEC_ID_PCM_MULAW
)
AV_CODEC_ID_PCM_S24BE
Definition:
avcodec.h:465
NULL
#define NULL
Definition:
coverity.c:32
AV_CODEC_ID_PCM_S8
Definition:
avcodec.h:456
AV_CODEC_ID_PCM_U16LE
Definition:
avcodec.h:454
AV_NE
#define AV_NE(be, le)
Definition:
common.h:50
AV_CODEC_ID_PCM_U24LE
Definition:
avcodec.h:466
AV_CODEC_ID_PCM_ALAW
Definition:
avcodec.h:459
rawenc.h
AV_CODEC_ID_PCM_U24BE
Definition:
avcodec.h:467
AV_CODEC_ID_PCM_U16BE
Definition:
avcodec.h:455
AV_CODEC_ID_PCM_F64BE
Definition:
avcodec.h:474
AV_CODEC_ID_PCM_S16BE
Definition:
avcodec.h:453
AV_CODEC_ID_PCM_U8
Definition:
avcodec.h:457
AV_CODEC_ID_PCM_MULAW
Definition:
avcodec.h:458
AV_CODEC_ID_PCM_U32LE
Definition:
avcodec.h:462
AV_CODEC_ID_PCM_F32BE
Definition:
avcodec.h:472
AV_CODEC_ID_PCM_S24LE
Definition:
avcodec.h:464
AV_CODEC_ID_PCM_F64LE
Definition:
avcodec.h:475
AV_CODEC_ID_PCM_F32LE
Definition:
avcodec.h:473
avformat.h
Main libavformat public API header.
AV_CODEC_ID_PCM_U32BE
Definition:
avcodec.h:463
AV_CODEC_ID_PCM_S16LE
Definition:
avcodec.h:452
PCMDEF
#define PCMDEF(name_, long_name_, ext, codec)
Definition:
pcmenc.c:25
AV_CODEC_ID_PCM_S32LE
Definition:
avcodec.h:460
AV_CODEC_ID_PCM_S32BE
Definition:
avcodec.h:461
Generated on Tue May 22 2018 07:06:57 for FFmpeg by
1.8.13