# HG changeset patch # User mru # Date 1275993867 0 # Node ID c0336d3528e9617c810792cc32d2c3b87cf596b8 # Parent a5eaf91edd4a05a2b18ed78311d4194df0c41b2a 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. diff -r a5eaf91edd4a -r c0336d3528e9 matroskaenc.c --- a/matroskaenc.c Tue Jun 08 10:26:16 2010 +0000 +++ b/matroskaenc.c Tue Jun 08 10:44:27 2010 +0000 @@ -83,7 +83,6 @@ mkv_cues *cues; mkv_track *tracks; - AVLFG lfg; unsigned int audio_buffer_size; AVPacket cur_audio_pkt; } MatroskaMuxContext; @@ -699,8 +698,6 @@ 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 @@ 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);