Можно ли каким-либо образом получить CMSampleBuffers в 10-битном цветовом пространстве P3 с использованием AVCaptureVideoDataOutput (или как-то иначе?) со скоростью не менее 30 кадров в секунду? Я могу настроить AVCaptureSession для использования цветового пространства P3, но делегат AVCaptureVideoDataOutput не может получить ничего лучше, чем BGRA или YUV420, оба из которых являются 8-битными форматами.
Цветовое пространство AVCaptureVideoDataOutput P3
Ответы (1)
Вы смешиваете цветовые пространства с форматами пикселей? Цветовое пространство P3 не определяет размер каждого элемента. Вы можете иметь 8-битный вывод на канал в цветовом пространстве P3. Если вы хотите оформить заказ в другом формате пикселей
AVCaptureVideoDataOutput.availableVideoCVPixelFormatTypes.
Это даст вам список доступных форматов пикселей для вывода видео. Затем вы можете установить формат пикселей следующим образом
AVCaptureVideoDataOutput.videoSettings = [kCVPixelBufferPixelFormatTypeKey: pixelFormat]
В прошлый раз, когда я проверял, доступны только 32-битные BGRA, 420v и 420f.
person
adamfowlerphoto
schedule
20.04.2018
Да, видимо, я смешиваю два. Но мой вопрос заключается в том, что для того, чтобы цветовое пространство P3 отображало больше цветов, чем sRGB, ему нужна большая битовая глубина. Есть ли какая-то польза от работы в P3 с 8-битным форматом?
- person Deepak Sharma; 20.04.2018
Вы получите более широкий цветовой диапазон с P3 по сравнению с sRGB, но количество дискретных цветов не увеличится.
- person adamfowlerphoto; 20.04.2018
Хорошо понял. Но все же это не супер набор sRGB. Это раздражает.
- person Deepak Sharma; 20.04.2018
Действительно, все сдержанные цвета находятся в sRGB… расширенная гамма P3 дает вам всевозможные смелые, кричащие и в остальном невыразительные цвета.
- person rickster; 20.04.2018
Хорошо, а если серьезно: цветовое пространство и формат пикселей являются дискретными, независимыми понятиями, но тесно связанными между собой. P3 — это более широкое пространство, чем sRGB, но если вы обращаетесь к цветам P3 с 8-битными компонентами, вы по-прежнему охватываете такое же количество различных цветов (это просто другой набор цветов). Чтобы по-настоящему выразить расширенный набор sRGB 8-8-8, вам нужен более глубокий формат пикселей для вашего пиксельного буфера в пространстве P3, например, 10-битные или полуплавающие компоненты.
- person rickster; 20.04.2018
AVCaptureVideoDataOutput
(или вообще использование предустановки) кажется неправильным для этого. Как насчет установкиactiveColorSpace
наAVCaptureDevice
наP3_D65
? - person Rhythmic Fistman   schedule 20.04.2018