Я использую VideoToolbox API от Apple для декодирования потока HEVC. Я использую слой AVSampleBufferDisplayLayer для рендеринга декодированных кадров.
Я могу успешно декодировать кадры, если исходное разрешение составляет 1080p (1920 X 1080) или меньше.
Если разрешение выше 1080p, я вижу черный экран и следующее сообщение об ошибке от AVSampleBufferDisplayLayerFailedToDecodeNotification,
Необязательно (домен ошибок) =AVFoundationErrorDomain Code=-11821 «Невозможно декодировать» UserInfo={AVErrorMediaSubTypeKey=(
1752589105
), NSLocalizedDescription=Невозможно декодировать, NSLocalizedFailureReason=Не удалось декодировать медиаданные. Возможно, они повреждены., AVErrorMediaTypeKey=. vide, AVErrorPresentationTimeStampKey=CMTime: {INVALID}, NUnderlyingError=0x2830c3390 {Error Domain=NSOSStatusErrorDomain Code=-12909 "(null)"}})
-11821 = AVErrorDecodeFailed< /code>
-12909 = kVTVideoDecoderBadDataErr
Я что-то упускаю для более высокого разрешения? Нужно ли мне установить правильный уровень, профиль или уровень HEVC? Я не знаю, что делать.
Буду признателен за ваш вклад, ребята. Спасибо!
Подробнее здесь: https://stackoverflow.com/questions/666 ... over-1080p