summaryrefslogtreecommitdiff
path: root/libavformat
diff options
context:
space:
mode:
authorMichael Chinen <mchinen@gmail.com>2010-07-09 12:14:33 +0000
committerJanne Grunau <janne-ffmpeg@jannau.net>2010-07-09 12:14:33 +0000
commit603e5c0b711171fd0110745f4c1e650ac6c26760 (patch)
treef41ca1b95ded385739110c1abf420bc1c3710478 /libavformat
parentf8280ff4c00eeaa245085fa9691035203abd168c (diff)
move ff_get_v_length and ff_put_v from nutenc.c to internal.h/aviobuf.c
patch by Micheal Chinen < mchinen gmail > Originally committed as revision 24140 to svn://svn.ffmpeg.org/ffmpeg/trunk
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/aviobuf.c19
-rw-r--r--libavformat/internal.h10
-rw-r--r--libavformat/nutenc.c21
3 files changed, 29 insertions, 21 deletions
diff --git a/libavformat/aviobuf.c b/libavformat/aviobuf.c
index d97ffd5e62..9f1187efe7 100644
--- a/libavformat/aviobuf.c
+++ b/libavformat/aviobuf.c
@@ -23,6 +23,7 @@
#include "libavutil/intreadwrite.h"
#include "avformat.h"
#include "avio.h"
+#include "internal.h"
#include <stdarg.h>
#define IO_BUFFER_SIZE 32768
@@ -248,6 +249,24 @@ void put_strz(ByteIOContext *s, const char *str)
put_byte(s, 0);
}
+int ff_get_v_length(uint64_t val){
+ int i=1;
+
+ while(val>>=7)
+ i++;
+
+ return i;
+}
+
+void ff_put_v(ByteIOContext *bc, uint64_t val){
+ int i= ff_get_v_length(val);
+
+ while(--i>0)
+ put_byte(bc, 128 | (val>>(7*i)));
+
+ put_byte(bc, val&127);
+}
+
void put_le64(ByteIOContext *s, uint64_t val)
{
put_le32(s, (uint32_t)(val & 0xffffffff));
diff --git a/libavformat/internal.h b/libavformat/internal.h
index 6ff28d3fad..9b68e9e49d 100644
--- a/libavformat/internal.h
+++ b/libavformat/internal.h
@@ -157,4 +157,14 @@ void ff_sdp_write_media(char *buff, int size, AVCodecContext *c,
int ff_write_chained(AVFormatContext *dst, int dst_stream, AVPacket *pkt,
AVFormatContext *src);
+/**
+ * Get the length in bytes which is needed to store val as v.
+ */
+int ff_get_v_length(uint64_t val);
+
+/**
+ * Put val using a variable number of bytes.
+ */
+void ff_put_v(ByteIOContext *bc, uint64_t val);
+
#endif /* AVFORMAT_INTERNAL_H */
diff --git a/libavformat/nutenc.c b/libavformat/nutenc.c
index 082d6d5ecc..87a7900b4b 100644
--- a/libavformat/nutenc.c
+++ b/libavformat/nutenc.c
@@ -241,27 +241,6 @@ static void build_frame_code(AVFormatContext *s){
nut->frame_code['N'].flags= FLAG_INVALID;
}
-/**
- * Get the length in bytes which is needed to store val as v.
- */
-static int ff_get_v_length(uint64_t val){
- int i=1;
-
- while(val>>=7)
- i++;
-
- return i;
-}
-
-static void ff_put_v(ByteIOContext *bc, uint64_t val){
- int i= ff_get_v_length(val);
-
- while(--i>0)
- put_byte(bc, 128 | (val>>(7*i)));
-
- put_byte(bc, val&127);
-}
-
static void put_tt(NUTContext *nut, StreamContext *nus, ByteIOContext *bc, uint64_t val){
val *= nut->time_base_count;
val += nus->time_base - nut->time_base;