Merge remote-tracking branch 'cehoyos/master'

* cehoyos/master:
  Set Matroska private data when muxing Prores.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
pull/64/head
Michael Niedermayer 11 years ago
commit 01a5d71789
  1. 2
      libavformat/matroskadec.c
  2. 3
      libavformat/matroskaenc.c

@ -1914,6 +1914,8 @@ static int matroska_read_header(AVFormatContext *s)
st->codec->block_align = track->audio.sub_packet_size; st->codec->block_align = track->audio.sub_packet_size;
extradata_offset = 78; extradata_offset = 78;
} }
} else if (codec_id == AV_CODEC_ID_PRORES && track->codec_priv.size == 4) {
fourcc = AV_RL32(track->codec_priv.data);
} }
track->codec_priv.size -= extradata_offset; track->codec_priv.size -= extradata_offset;

@ -544,6 +544,9 @@ static int mkv_write_codecprivate(AVFormatContext *s, AVIOContext *pb, AVCodecCo
} else } else
avio_write(dyn_cp, codec->extradata + 12, avio_write(dyn_cp, codec->extradata + 12,
codec->extradata_size - 12); codec->extradata_size - 12);
} else if (codec->codec_id == AV_CODEC_ID_PRORES &&
ff_codec_get_id(ff_codec_movvideo_tags, codec->codec_tag) == AV_CODEC_ID_PRORES) {
avio_wl32(dyn_cp, codec->codec_tag);
} }
else if (codec->extradata_size && codec->codec_id != AV_CODEC_ID_TTA) else if (codec->extradata_size && codec->codec_id != AV_CODEC_ID_TTA)
avio_write(dyn_cp, codec->extradata, codec->extradata_size); avio_write(dyn_cp, codec->extradata, codec->extradata_size);

Loading…
Cancel
Save