annotate base64.h @ 992:a13125b5be3a libavutil

bswap: change ME to NE in macro names Other parts of FFmpeg use NE (native endian) rather than ME (machine). This makes it consistent.
author mru
date Sat, 10 Jul 2010 22:09:01 +0000
parents f789d66969a4
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
1 /*
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
2 * Copyright (c) 2006 Ryan Martell. (rdm4@martellventures.com)
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
3 *
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
4 * This file is part of FFmpeg.
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
5 *
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
6 * FFmpeg is free software; you can redistribute it and/or
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
7 * modify it under the terms of the GNU Lesser General Public
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
8 * License as published by the Free Software Foundation; either
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
9 * version 2.1 of the License, or (at your option) any later version.
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
10 *
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
11 * FFmpeg is distributed in the hope that it will be useful,
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
14 * Lesser General Public License for more details.
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
15 *
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
16 * You should have received a copy of the GNU Lesser General Public
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
17 * License along with FFmpeg; if not, write to the Free Software
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
18 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
19 */
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
20
567
bd4052d9050c Globally rename the header inclusion guard names.
stefano
parents: 397
diff changeset
21 #ifndef AVUTIL_BASE64_H
bd4052d9050c Globally rename the header inclusion guard names.
stefano
parents: 397
diff changeset
22 #define AVUTIL_BASE64_H
344
580fffa86f08 add multiple inclusion guards to headers
mru
parents: 343
diff changeset
23
343
f21d1907d47c include all prerequisites in header files
mru
parents: 320
diff changeset
24 #include <stdint.h>
f21d1907d47c include all prerequisites in header files
mru
parents: 320
diff changeset
25
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
26 /**
958
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
27 * Decode a base64-encoded string.
660
396c27769b0e Document the av_base64_encode/decode functions.
stefano
parents: 659
diff changeset
28 *
958
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
29 * @param out buffer for decoded data
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
30 * @param in null-terminated input string
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
31 * @param out_size size in bytes of the out buffer, must be at
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
32 * least 3/4 of the length of in
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
33 * @return number of bytes written, or a negative value in case of
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
34 * invalid input
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
35 */
659
d3cd35bec3d0 Cosmetics: "* out" -> "*out" for consistency with the other
stefano
parents: 658
diff changeset
36 int av_base64_decode(uint8_t *out, const char *in, int out_size);
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
37
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
38 /**
958
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
39 * Encode data to base64 and null-terminate.
660
396c27769b0e Document the av_base64_encode/decode functions.
stefano
parents: 659
diff changeset
40 *
958
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
41 * @param out buffer for encoded data
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
42 * @param out_size size in bytes of the output buffer, must be at
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
43 * least AV_BASE64_SIZE(in_size)
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
44 * @param in_size size in bytes of the 'in' buffer
f789d66969a4 base64: improve documentation
mru
parents: 957
diff changeset
45 * @return 'out' or NULL in case of error
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
46 */
658
cc7c1ea68a52 Cosmetics: rename the "size" parameter of av_base64_encode() to "in_size".
stefano
parents: 657
diff changeset
47 char *av_base64_encode(char *out, int out_size, const uint8_t *in, int in_size);
244
9a977b2c7069 Move base64.[ch] to libavutil.
diego
parents:
diff changeset
48
929
d0be85c9c96f Add AV_BASE64_SIZE() macro
hyc
parents: 738
diff changeset
49 /**
d0be85c9c96f Add AV_BASE64_SIZE() macro
hyc
parents: 738
diff changeset
50 * Calculate the output size needed to base64-encode x bytes.
d0be85c9c96f Add AV_BASE64_SIZE() macro
hyc
parents: 738
diff changeset
51 */
d0be85c9c96f Add AV_BASE64_SIZE() macro
hyc
parents: 738
diff changeset
52 #define AV_BASE64_SIZE(x) (((x)+2) / 3 * 4 + 1)
d0be85c9c96f Add AV_BASE64_SIZE() macro
hyc
parents: 738
diff changeset
53
567
bd4052d9050c Globally rename the header inclusion guard names.
stefano
parents: 397
diff changeset
54 #endif /* AVUTIL_BASE64_H */