diff options
-rw-r--r-- | demux/demux.c | 4 | ||||
-rw-r--r-- | demux/demux_lavf.c | 4 |
2 files changed, 1 insertions, 7 deletions
diff --git a/demux/demux.c b/demux/demux.c index b027f896de..c379ee4736 100644 --- a/demux/demux.c +++ b/demux/demux.c @@ -315,10 +315,6 @@ struct sh_stream *new_sh_stream(demuxer_t *demuxer, enum stream_type type) static void free_sh_stream(struct sh_stream *sh) { - if (sh->lav_headers) { - avcodec_close(sh->lav_headers); - av_free(sh->lav_headers); - } } sh_sub_t *new_sh_sub_sid(demuxer_t *demuxer, int id, int sid) diff --git a/demux/demux_lavf.c b/demux/demux_lavf.c index 279f7f7b33..5eebffc2f9 100644 --- a/demux/demux_lavf.c +++ b/demux/demux_lavf.c @@ -423,9 +423,7 @@ static void handle_stream(demuxer_t *demuxer, int i) if (sh) { sh->codec = mp_codec_from_av_codec_id(codec->codec_id); - sh->lav_headers = avcodec_alloc_context3(codec->codec); - assert(sh->lav_headers); - avcodec_copy_context(sh->lav_headers, codec); + sh->lav_headers = codec; if (st->disposition & AV_DISPOSITION_DEFAULT) sh->default_track = 1; |