summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRonald S. Bultje <rsbultje@gmail.com>2008-08-27 23:43:28 +0000
committerRonald S. Bultje <rsbultje@gmail.com>2008-08-27 23:43:28 +0000
commitf1c80e35783e910f5fe5ce643645029a7e517c8f (patch)
treec9ca090aeb778a68a8f36e9428e238a5c4a1e666
parentaec0407fafe831c8a72289576fb5f37ee44f52f6 (diff)
Export data_to_hex() as private API in lavf, rename to ff_data_to_hex() and
move it from sdp.c into utils.c. Also add new header internal.h specifically for lavf-specific internal API. See discussion in "Realmedia patch" thread on mailinglist. Originally committed as revision 15002 to svn://svn.ffmpeg.org/ffmpeg/trunk
-rw-r--r--libavformat/internal.h26
-rw-r--r--libavformat/sdp.c24
-rw-r--r--libavformat/utils.c22
3 files changed, 50 insertions, 22 deletions
diff --git a/libavformat/internal.h b/libavformat/internal.h
new file mode 100644
index 0000000000..a380ecefda
--- /dev/null
+++ b/libavformat/internal.h
@@ -0,0 +1,26 @@
+/*
+ * copyright (c) 2001 Fabrice Bellard
+ *
+ * This file is part of FFmpeg.
+ *
+ * FFmpeg is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License as published by the Free Software Foundation; either
+ * version 2.1 of the License, or (at your option) any later version.
+ *
+ * FFmpeg is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with FFmpeg; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+#ifndef FFMPEG_AVFORMAT_UTILS_H
+#define FFMPEG_AVFORMAT_UTILS_H
+
+char *ff_data_to_hex(char *buf, const uint8_t *src, int size);
+
+#endif /* FFMPEG_AVFORMAT_UTILS_H */
diff --git a/libavformat/sdp.c b/libavformat/sdp.c
index f9c05823f2..dfbe52e7dd 100644
--- a/libavformat/sdp.c
+++ b/libavformat/sdp.c
@@ -21,6 +21,7 @@
#include "libavutil/avstring.h"
#include "libavutil/base64.h"
#include "avformat.h"
+#include "internal.h"
#include "avc.h"
#include "rtp.h"
@@ -135,27 +136,6 @@ static char *extradata2psets(AVCodecContext *c)
return psets;
}
-static void digit_to_char(char *dst, uint8_t src)
-{
- if (src < 10) {
- *dst = '0' + src;
- } else {
- *dst = 'A' + src - 10;
- }
-}
-
-static char *data_to_hex(char *buff, const uint8_t *src, int s)
-{
- int i;
-
- for(i = 0; i < s; i++) {
- digit_to_char(buff + 2 * i, src[i] >> 4);
- digit_to_char(buff + 2 * i + 1, src[i] & 0xF);
- }
-
- return buff;
-}
-
static char *extradata2config(AVCodecContext *c)
{
char *config;
@@ -171,7 +151,7 @@ static char *extradata2config(AVCodecContext *c)
return NULL;
}
memcpy(config, "; config=", 9);
- data_to_hex(config + 9, c->extradata, c->extradata_size);
+ ff_data_to_hex(config + 9, c->extradata, c->extradata_size);
config[9 + c->extradata_size * 2] = 0;
return config;
diff --git a/libavformat/utils.c b/libavformat/utils.c
index a3a0a06757..b61535af8d 100644
--- a/libavformat/utils.c
+++ b/libavformat/utils.c
@@ -19,6 +19,7 @@
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
*/
#include "avformat.h"
+#include "internal.h"
#include "libavcodec/opt.h"
#include "libavutil/avstring.h"
#include "riff.h"
@@ -3212,6 +3213,27 @@ void url_split(char *proto, int proto_size,
}
}
+static void digit_to_char(char *dst, uint8_t src)
+{
+ if (src < 10) {
+ *dst = '0' + src;
+ } else {
+ *dst = 'A' + src - 10;
+ }
+}
+
+char *ff_data_to_hex(char *buff, const uint8_t *src, int s)
+{
+ int i;
+
+ for(i = 0; i < s; i++) {
+ digit_to_char(buff + 2 * i, src[i] >> 4);
+ digit_to_char(buff + 2 * i + 1, src[i] & 0xF);
+ }
+
+ return buff;
+}
+
void av_set_pts_info(AVStream *s, int pts_wrap_bits,
int pts_num, int pts_den)
{