# HG changeset patch # User janne # Date 1278677673 0 # Node ID 79fc252c65cd22e152dcaf17d44d865677f342f2 # Parent ef4606cc4fb3ba4f40281ad5d7d47c3740b25a29 move ff_get_v_length and ff_put_v from nutenc.c to internal.h/aviobuf.c patch by Micheal Chinen < mchinen gmail > diff -r ef4606cc4fb3 -r 79fc252c65cd aviobuf.c --- a/aviobuf.c Fri Jul 09 12:10:47 2010 +0000 +++ b/aviobuf.c Fri Jul 09 12:14:33 2010 +0000 @@ -23,6 +23,7 @@ #include "libavutil/intreadwrite.h" #include "avformat.h" #include "avio.h" +#include "internal.h" #include #define IO_BUFFER_SIZE 32768 @@ -248,6 +249,24 @@ 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 -r ef4606cc4fb3 -r 79fc252c65cd internal.h --- a/internal.h Fri Jul 09 12:10:47 2010 +0000 +++ b/internal.h Fri Jul 09 12:14:33 2010 +0000 @@ -157,4 +157,14 @@ 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 -r ef4606cc4fb3 -r 79fc252c65cd nutenc.c --- a/nutenc.c Fri Jul 09 12:10:47 2010 +0000 +++ b/nutenc.c Fri Jul 09 12:14:33 2010 +0000 @@ -241,27 +241,6 @@ 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;