接口,该接口公开用于创建 EGLStream 链接的 OutputStream 的设置。
定义在 EGLStream.h 文件的第 79 行。
◆ ~IEGLOutputStreamSettings()
Argus::IEGLOutputStreamSettings::~IEGLOutputStreamSettings |
( |
| ) |
|
|
inlineprotected |
◆ getEGLDisplay()
virtual EGLDisplay Argus::IEGLOutputStreamSettings::getEGLDisplay |
( |
| ) |
const |
|
pure virtual |
◆ getExposureCount()
virtual uint32_t Argus::IEGLOutputStreamSettings::getExposureCount |
( |
| ) |
const |
|
pure virtual |
◆ getFifoLength()
virtual uint32_t Argus::IEGLOutputStreamSettings::getFifoLength |
( |
| ) |
const |
|
pure virtual |
◆ getMetadataEnable()
virtual bool Argus::IEGLOutputStreamSettings::getMetadataEnable |
( |
| ) |
const |
|
pure virtual |
◆ getMode()
virtual EGLStreamMode Argus::IEGLOutputStreamSettings::getMode |
( |
| ) |
const |
|
pure virtual |
◆ getPixelFormat()
virtual PixelFormat Argus::IEGLOutputStreamSettings::getPixelFormat |
( |
| ) |
const |
|
pure virtual |
◆ getResolution()
virtual Size2D<uint32_t> Argus::IEGLOutputStreamSettings::getResolution |
( |
| ) |
const |
|
pure virtual |
◆ id()
static const InterfaceID& Argus::IEGLOutputStreamSettings::id |
( |
| ) |
|
|
inlinestatic |
◆ setEGLDisplay()
virtual Status Argus::IEGLOutputStreamSettings::setEGLDisplay |
( |
EGLDisplay |
eglDisplay | ) |
|
|
pure virtual |
设置创建的流必须属于的 EGLDisplay。
默认值:EGL_NO_DISPLAY - 流与显示设备无关。
◆ setExposureCount()
virtual Status Argus::IEGLOutputStreamSettings::setExposureCount |
( |
uint32_t |
exposureCount | ) |
|
|
pure virtual |
设置每个流帧的曝光次数。
当从多重曝光 WDR 源捕获时,此数字应与每个流帧提供的曝光次数相匹配。 请注意,EGLStream 使用者必须支持使用多重曝光/缓冲区的 EGLStream。 在 EGLStream::FrameConsumer 使用者的情况下,多次曝光被视为获取的 Image 中的单独缓冲区,并且可以使用任何支持多缓冲区/平面图像访问的 Image 接口进行访问(请参阅 EGLStream::IImage::getBufferCount())。 默认值:1
◆ setFifoLength()
virtual Status Argus::IEGLOutputStreamSettings::setFifoLength |
( |
uint32_t |
fifoLength | ) |
|
|
pure virtual |
◆ setMetadataEnable()
virtual Status Argus::IEGLOutputStreamSettings::setMetadataEnable |
( |
bool |
metadataEnable | ) |
|
|
pure virtual |
启用或禁用将 Argus CaptureMetadata 嵌入到写入 EGLStream 的帧中。
启用此功能将允许从 EGLStream 使用者端获取的帧创建 EGLStream::MetadataContainer,这将公开 EGLStream::IArgusCaptureMetadata 接口,进而提供对与该帧对应的 CaptureMetadata 的访问。 这还将直接在 EGLStream::FrameConsumer 获取的 EGLStream::Frames 上启用 IArgusCaptureMetadata 接口。 默认值:禁用。
◆ setMode()
virtual Status Argus::IEGLOutputStreamSettings::setMode |
( |
const EGLStreamMode & |
mode | ) |
|
|
pure virtual |
设置 OutputStream 的模式。
可用选项包括
MAILBOX(邮箱模式):在此模式下,只有最新的帧可供使用者使用。 当 Argus 完成一帧时,它会清空邮箱并将新帧插入邮箱。 然后,使用者从邮箱中检索帧并进行处理; 完成后,帧将被放回邮箱(如果邮箱为空)或丢弃(如果邮箱不为空)。 此模式包含以下两层含义
- 如果使用者消耗帧的速度慢于 Argus 生成帧的速度,则可能会丢失一些帧(使用者永远看不到)。
- 如果使用者消耗帧的速度快于 Argus 生成帧的速度,则使用者可能会多次看到某些帧。
FIFO(先进先出模式):使用此模式时,每个生产者帧都通过使用帧的 FIFO 队列提供给使用者。 使用此模式时,必须使用 setFifoLength 指定 FIFO 队列长度。 当 Argus 完成一帧时,它会将其插入 FIFO 队列的头部。 如果 FIFO 已满(已包含等于 FIFO 队列长度的帧数),则 Argus 将暂停,直到 FIFO 不再满为止。 使用者从队列的尾部消耗帧; 但是,如果使用者在队列为空时释放帧,则该帧将被搁置,并且如果在此之前没有将另一个新帧插入 FIFO 队列,则在使用者下次请求帧时将再次返回该帧。 一旦将新帧插入 FIFO 队列,任何先前释放的帧都将被永久丢弃。 此模式包含以下含义
- 帧在使用者处理它们之前永远不会被丢弃。
- 如果使用者消耗帧的速度慢于 Argus 生成帧的速度,则 Argus 将暂停。
- 如果使用者消耗帧的速度快于 Argus 生成帧的速度,则使用者可能会多次看到某些帧。
默认值:STREAM_MODE_MAILBOX
◆ setPixelFormat()
virtual Status Argus::IEGLOutputStreamSettings::setPixelFormat |
( |
const PixelFormat & |
format | ) |
|
|
pure virtual |
设置流的格式。
默认值:PIXEL_FMT_UNKNOWN
◆ setResolution()
virtual Status Argus::IEGLOutputStreamSettings::setResolution |
( |
const Size2D< uint32_t > & |
resolution | ) |
|
|
pure virtual |
◆ supportsOutputStreamFormat()
virtual bool Argus::IEGLOutputStreamSettings::supportsOutputStreamFormat |
( |
const SensorMode * |
sensorMode, |
|
|
const PixelFormat & |
outputFormat |
|
) |
| const |
|
pure virtual |
- 返回
- 如果 CaptureSession 支持查询的传感器模式的输出像素格式,则返回 True。 否则,返回 false。
- 参数
-
[输入] | sensorMode | 正在查询输出像素类型的传感器模式。 |
[输入] | outputFormat | 正在查询是否支持的输出像素格式。 |
此类的文档由以下文件生成