I have a class where I am implementing IMediaStreamH264Notify. In particular, I'm inside of the onVideoH264Packet(IMediaStream, AMFPacket, H264SEIMessages) method. This method occurs for each stream - the source and each transcoded stream.

Should the transcoded video frames come through in the same order as the source video frames?

Generically speaking, the source video frames would be in the following order:

For each of the transcoded streams, would they also be in the same order (i.e. 1, 2, 3, 4)?

Or could the come through in a different order? If so, is there a way to determine the "correct" (or original) order of the packets? I attempted to use the AMFPacket using the getTimecode and getAbsTimecode methods, but they always return 0.