From: Måns Rullgård Date: Tue, 8 Jun 2010 10:44:27 +0000 (+0000) Subject: matroska: move LFG state from muxer context to local variable X-Git-Tag: v0.7b1~3847 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=5150dd532b142d7032854a362228dd40142a8e94;p=platform%2Fupstream%2Flibav.git matroska: move LFG state from muxer context to local variable The LFG is only used in one place, so there is no need to keep it in the context. Originally committed as revision 23527 to svn://svn.ffmpeg.org/ffmpeg/trunk --- 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);