[FFmpeg-devel] [PATCH] matroska: move LFG state from muxer context to local variable
Mans Rullgard
mans
Sun Jun 6 14:13:23 CEST 2010
The LFG is only used in one place, so there is no need to keep it in
the context.
---
libavformat/matroskaenc.c | 9 +++++----
1 files changed, 5 insertions(+), 4 deletions(-)
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c
index e78d062..2238c13 100644
--- a/libavformat/matroskaenc.c
+++ b/libavformat/matroskaenc.c
@@ -83,7 +83,6 @@ typedef struct MatroskaMuxContext {
mkv_cues *cues;
mkv_track *tracks;
- AVLFG lfg;
unsigned int audio_buffer_size;
AVPacket cur_audio_pkt;
} MatroskaMuxContext;
@@ -699,8 +698,6 @@ static int mkv_write_header(AVFormatContext *s)
if (!strcmp(s->oformat->name, "webm")) mkv->mode = MODE_WEBM;
else mkv->mode = MODE_MATROSKAv2;
- av_lfg_init(&mkv->lfg, av_get_random_seed());
-
mkv->tracks = av_mallocz(s->nb_streams * sizeof(*mkv->tracks));
if (!mkv->tracks)
return AVERROR(ENOMEM);
@@ -736,8 +733,12 @@ static int mkv_write_header(AVFormatContext *s)
put_ebml_string(pb, MATROSKA_ID_TITLE, tag->value);
if (!(s->streams[0]->codec->flags & CODEC_FLAG_BITEXACT)) {
uint32_t segment_uid[4];
+ AVLFG lfg;
+
+ av_lfg_init(&lfg, av_get_random_seed());
+
for (i = 0; i < 4; i++)
- segment_uid[i] = av_lfg_get(&mkv->lfg);
+ segment_uid[i] = av_lfg_get(&lfg);
put_ebml_string(pb, MATROSKA_ID_MUXINGAPP , LIBAVFORMAT_IDENT);
put_ebml_string(pb, MATROSKA_ID_WRITINGAPP, LIBAVFORMAT_IDENT);
--
1.7.1
More information about the ffmpeg-devel
mailing list