mirror of https://git.ffmpeg.org/ffmpeg.git
Set Matroska private data when muxing Prores.
The specification requires the mov code point to be written as "fourcc".
This commit is contained in:
parent
787be6d074
commit
3d5c859fa6
|
@ -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…
Reference in New Issue