+
+ if (cs->avctx->extradata_size > st->codecpar->extradata_size) {
+ int eret;
+ if (st->codecpar->extradata)
+ av_freep(&st->codecpar->extradata);
+
+ eret = ff_alloc_extradata(st->codecpar, cs->avctx->extradata_size);
+ if (eret < 0) {
+ av_packet_unref(pkt);
+ return AVERROR(ENOMEM);
+ }
+ st->codecpar->extradata_size = cs->avctx->extradata_size;
+ memcpy(st->codecpar->extradata, cs->avctx->extradata, cs->avctx->extradata_size);
+ }
+