Remuxing ProRes streams from Matroska files doesn't remove the icpf atom from frames
The Matroska spec requires the icpf atom (4 bytes size, 4 bytes "icpf" string) to be removed from frames before muxing them into Matroska blocks, which is effectively done when the source is for example a mov file but not if the source is a Matroska file. This means mkvmerge is assuming said atoms are never present in Matroska sources and as such blindly muxing the frames whole, creating new non-spec compliant output from non-spec compliant sources.
Sequence_1-Apple_ProRes_422.mov Mov file with a ProRes stream. mkvmerge removes the icpf atoms upon remuxing.
Sequence_1-Apple_ProRes_422.mkv Same ProRes stream but in a Matroska file and with the icpf atoms present. mkvmerge includes the icpf atoms upon remuxing.
Edited by James Almer