# HG changeset patch # User rbultje # Date 1219880608 0 # Node ID ca6df1ecb412b989e2da5cec328a633c8b176eb5 # Parent 6f3cdf5fb94859b052284b34037c0d918194e1bb 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. diff -r 6f3cdf5fb948 -r ca6df1ecb412 internal.h --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/internal.h Wed Aug 27 23:43:28 2008 +0000 @@ -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 -r 6f3cdf5fb948 -r ca6df1ecb412 sdp.c --- a/sdp.c Wed Aug 27 20:28:11 2008 +0000 +++ b/sdp.c Wed Aug 27 23:43:28 2008 +0000 @@ -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 @@ 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 @@ 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 -r 6f3cdf5fb948 -r ca6df1ecb412 utils.c --- a/utils.c Wed Aug 27 20:28:11 2008 +0000 +++ b/utils.c Wed Aug 27 23:43:28 2008 +0000 @@ -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 @@ } } +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) {