VTDecompressionSessionDecodeFrame or enqueueSampleBuffer fail when NALU bigger than 65536. Is there a workaround?

Whenever an iFrame NALU is bigger than 65536 bytes, the video decoder fails with the -12909 error code (kVTVideoDecoderBadDataErr).


Function used is VTDecompressionSessionDecodeFrameWithOutputHandler. It's completely fine when all NALUs are less than 65536 bytes.


When using a 2 Mbps 1080p stream, it can happen that iframe sizes go up to 90kB.


Does anyone know the root cause? Is there a workaround?