杰逊 Linux API 参考

32.7.4 版本
Argus::IEGLOutputStreamSettings 类参考抽象类

详细描述

接口,该接口公开用于创建 EGLStream 链接的 OutputStream 的设置。

定义在 EGLStream.h 文件的第 79 行。

Argus::IEGLOutputStreamSettings 的继承关系图
Argus::IEGLOutputStreamSettings 的协作图

公有成员函数

virtual Status setPixelFormat (const PixelFormat &format)=0
 设置流的格式。 更多...
 
virtual PixelFormat getPixelFormat () const =0
 
virtual Status setResolution (const Size2D< uint32_t > &resolution)=0
 设置流的分辨率。 更多...
 
virtual Size2D< uint32_t > getResolution () const =0
 
virtual Status setExposureCount (uint32_t exposureCount)=0
 设置每个流帧的曝光次数。 更多...
 
virtual uint32_t getExposureCount () const =0
 
virtual Status setEGLDisplay (EGLDisplay eglDisplay)=0
 设置创建的流必须属于的 EGLDisplay。 更多...
 
virtual EGLDisplay getEGLDisplay () const =0
 
virtual Status setMode (const EGLStreamMode &mode)=0
 设置 OutputStream 的模式。 更多...
 
virtual EGLStreamMode getMode () const =0
 
virtual Status setFifoLength (uint32_t fifoLength)=0
 设置流的 FIFO 队列长度。 更多...
 
virtual uint32_t getFifoLength () const =0
 
virtual Status setMetadataEnable (bool metadataEnable)=0
 启用或禁用将 Argus CaptureMetadata 嵌入到写入 EGLStream 的帧中。 更多...
 
virtual bool getMetadataEnable () const =0
 
virtual bool supportsOutputStreamFormat (const SensorMode *sensorMode, const PixelFormat &outputFormat) const =0
 

静态公有成员函数

static const InterfaceIDid ()
 

保护成员函数

 ~IEGLOutputStreamSettings ()
 

构造函数和析构函数文档

◆ ~IEGLOutputStreamSettings()

Argus::IEGLOutputStreamSettings::~IEGLOutputStreamSettings ( )
inlineprotected

定义在 EGLStream.h 文件的第 191 行。

成员函数文档

◆ 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

定义在 EGLStream.h 文件的第 82 行。

◆ 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

设置流的 FIFO 队列长度。

仅当流使用 FIFO 模式时才使用此值 (

另请参阅
OutputStreamSettings::setMode)。 值必须 > 0。 默认值:1

◆ 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

设置流的分辨率。

默认值:(0, 0)

◆ supportsOutputStreamFormat()

virtual bool Argus::IEGLOutputStreamSettings::supportsOutputStreamFormat ( const SensorMode *  sensorMode,
const PixelFormat &  outputFormat 
) const
pure virtual
返回
如果 CaptureSession 支持查询的传感器模式的输出像素格式,则返回 True。 否则,返回 false。
参数
[输入]sensorMode正在查询输出像素类型的传感器模式。
[输入]outputFormat正在查询是否支持的输出像素格式。

此类的文档由以下文件生成
. All rights reserved.