summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--demux/demux.c4
-rw-r--r--demux/demux_lavf.c4
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;