diff options
author | Måns Rullgård <mans@mansr.com> | 2010-06-08 10:44:27 +0000 |
---|---|---|
committer | Måns Rullgård <mans@mansr.com> | 2010-06-08 10:44:27 +0000 |
commit | 5150dd532b142d7032854a362228dd40142a8e94 (patch) | |
tree | 808c56d29f1949f1af05c73f9c03dde6b1e191ef | |
parent | 6964d510e8328d04196b549f0e7149efd076b7b4 (diff) | |
download | ffmpeg-5150dd532b142d7032854a362228dd40142a8e94.tar.gz |
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
-rw-r--r-- | libavformat/matroskaenc.c | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/libavformat/matroskaenc.c b/libavformat/matroskaenc.c index e78d062cbe..2238c13ffc 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); |