Короткий вопрос: какова формула для адресации значений пикселей в CVPixelBuffer
?Как правильно адресовать пиксели в CVPixelBuffer?
Я пытаюсь преобразовать CVPixelBuffer
в массив рядов и заметил несколько странных вещей: CVPixelBuffer
получен от CMSampleBuffer
. Его ширина и высота: 852x640
пикселей. В сумме 545280
пикселей, что потребует 2181120
байтов с учетом 4
байт на пиксель.
Теперь первое странное, что то же самое CVPixelBuffer
возвращает 3456
байт в строке, что достаточно места для 864
пикселей. Откуда берутся эти дополнительные 12
пикселей? Если одна строка в финальном изображении только 852
пикселей широкая, но на самом деле есть 864
пикселей в строке CVPixelBuffer
, как узнать, какие байты нужно скопировать? Или какой из этих байтов не используется? Кстати, они не используются?
Другое дело - размер данных CVPixelBuffers
, что составляет 2211848
байт. Теперь, если мы умножим 3456
байт на строку с 640
строк, мы получим 2211840
байт. Итак, опять же, у нас осталось 8
дополнительных байтов. Что это за те байты 8
? Они не используются? Они в конце?
Любые советы, которые проливают свет на этот счет, приветствуются, Спасибо.