gpt4 book ai didi

iphone - 如何为 iPhone 创建 32RGBA 格式的 CVPixelBuffer?

转载 作者:行者123 更新时间:2023-12-03 18:35:43 26 4
gpt4 key购买 nike

当尝试创建 32 位 RGBA CVPixelBuffer 时,我不断收到错误。

最明显的错误 -6680 表示:“缓冲区不支持指定的像素格式。”

这是代码片段:(宽度和高度指定为256*256)

NSDictionary *options = [NSDictionary dictionaryWithObjectsAndKeys:
// [NSNumber numberWithBool:YES], kCVPixelBufferCGBitmapContextCompatibilityKey,
// [NSNumber numberWithBool:YES], kCVPixelBufferCGImageCompatibilityKey,
// [NSNumber numberWithBool:YES], kCVPixelBufferOpenGLCompatibilityKey,
nil];
CVPixelBufferRef pxbuffer = NULL;
CVReturn status = CVPixelBufferCreate(kCFAllocatorDefault, WIDTH,
HEIGHT, kCVPixelFormatType_32RGBA, (CFDictionaryRef) options,
&pxbuffer);
NSParameterAssert(status == kCVReturnSuccess && pxbuffer != NULL);

任何人都可以提示我做错了什么吗?

最佳答案

您需要使用不同的像素格式。仅仅因为为 32RGBA 定义了一个常量并不意味着它受支持。本技术说明列出了支持的格式(截至编写时)以及可用于查找当前支持的格式的函数:

Technical Q&A QA1501Core Video - Available Pixel Formats

支持的最相似的格式是 32ARGB 和 32BGRA。

关于iphone - 如何为 iPhone 创建 32RGBA 格式的 CVPixelBuffer?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8029497/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com