[FFmpeg-cvslog] movenc: Use null buffers for measuring the amount of data to be written
Martin Storsjö
git at videolan.org
Fri Sep 20 12:43:24 CEST 2013
ffmpeg | branch: master | Martin Storsjö <martin at martin.st> | Wed Sep 18 22:02:17 2013 +0300| [72fe16a13e3ebd5396ac173bf84c8b20085c16d5] | committer: Martin Storsjö
movenc: Use null buffers for measuring the amount of data to be written
Signed-off-by: Martin Storsjö <martin at martin.st>
> http://git.videolan.org/gitweb.cgi/ffmpeg.git/?a=commit;h=72fe16a13e3ebd5396ac173bf84c8b20085c16d5
---
libavformat/movenc.c | 18 ++++++------------
1 file changed, 6 insertions(+), 12 deletions(-)
diff --git a/libavformat/movenc.c b/libavformat/movenc.c
index 7d634ad..dbff369 100644
--- a/libavformat/movenc.c
+++ b/libavformat/movenc.c
@@ -2443,13 +2443,11 @@ static int mov_write_moof_tag(AVIOContext *pb, MOVMuxContext *mov, int tracks)
{
AVIOContext *avio_buf;
int ret, moof_size;
- uint8_t *buf;
- if ((ret = avio_open_dyn_buf(&avio_buf)) < 0)
+ if ((ret = ffio_open_null_buf(&avio_buf)) < 0)
return ret;
mov_write_moof_tag_internal(avio_buf, mov, tracks, 0);
- moof_size = avio_close_dyn_buf(avio_buf, &buf);
- av_free(buf);
+ moof_size = ffio_close_null_buf(avio_buf);
return mov_write_moof_tag_internal(pb, mov, tracks, moof_size);
}
@@ -2738,11 +2736,10 @@ static int mov_flush_fragment(AVFormatContext *s)
if (i < mov->nb_streams)
return 0;
- if ((ret = avio_open_dyn_buf(&moov_buf)) < 0)
+ if ((ret = ffio_open_null_buf(&moov_buf)) < 0)
return ret;
mov_write_moov_tag(moov_buf, mov, s);
- buf_size = avio_close_dyn_buf(moov_buf, &buf);
- av_free(buf);
+ buf_size = ffio_close_null_buf(moov_buf);
for (i = 0; i < mov->nb_streams; i++)
mov->tracks[i].data_offset = pos + buf_size + 8;
@@ -3348,16 +3345,13 @@ static int mov_write_header(AVFormatContext *s)
static int get_moov_size(AVFormatContext *s)
{
int ret;
- uint8_t *buf;
AVIOContext *moov_buf;
MOVMuxContext *mov = s->priv_data;
- if ((ret = avio_open_dyn_buf(&moov_buf)) < 0)
+ if ((ret = ffio_open_null_buf(&moov_buf)) < 0)
return ret;
mov_write_moov_tag(moov_buf, mov, s);
- ret = avio_close_dyn_buf(moov_buf, &buf);
- av_free(buf);
- return ret;
+ return ffio_close_null_buf(moov_buf);
}
/*
More information about the ffmpeg-cvslog
mailing list