mirror of
https://github.com/RPi-Distro/firmware.git
synced 2026-01-19 04:43:30 +00:00
kernel: overlays: Update display GPIO declarations kernel: Update hy28b-overlay.dts See: https://github.com/raspberrypi/linux/pull/3880 kernel: net: bcmgenet: Reset RBUF on first open See: https://github.com/raspberrypi/linux/issues/3850 kernel: ASoC: cs42xx8: Only define cs42xx8_of_match once See: https://github.com/raspberrypi/linux/issues/3873 kernel: bcm2835-codec fixes See: https://github.com/raspberrypi/linux/pull/3877 kernel: usb/dwc2: Set correct state on gadget disconnect kernel: USB: gadget: f_hid: avoid crashes and log spam See: https://github.com/raspberrypi/linux/issues/3870 firmware: arm_loader: enable simple_fb iff there is a display See: https://github.com/raspberrypi/linux/issues/3878 firmware: arm_loader: Mark V3D early boost as for the ARM See: https://github.com/raspberrypi/firmware/issues/1469
3894 lines
146 KiB
HTML
3894 lines
146 KiB
HTML
<html>
|
|
<head>
|
|
<title>Broadcom Custom Index List</title>
|
|
<body>
|
|
<table border="0" cellpadding="10"><tr valign="top"><td>
|
|
<table border="0" cellspacing="0" cellpadding="1"><tr>
|
|
<td bgcolor="#e0c0c0"><a href="index.html">Top</a><br>
|
|
<tr><td bgcolor="#c0e0e0">
|
|
<a href="audio_capture.html">audio_capture</a><br>
|
|
<a href="audio_decode.html">audio_decode</a><br>
|
|
<a href="audio_encode.html">audio_encode</a><br>
|
|
<a href="audio_lowpower.html">audio_lowpower</a><br>
|
|
<a href="audio_mixer.html">audio_mixer</a><br>
|
|
<a href="audio_processor.html">audio_processor</a><br>
|
|
<a href="audio_render.html">audio_render</a><br>
|
|
<a href="audio_splitter.html">audio_splitter</a><br>
|
|
<tr><td bgcolor="#e0c0c0">
|
|
<a href="image_decode.html">image_decode</a><br>
|
|
<a href="image_encode.html">image_encode</a><br>
|
|
<a href="image_fx.html">image_fx</a><br>
|
|
<a href="resize.html">resize</a><br>
|
|
<a href="source.html">source</a><br>
|
|
<a href="transition.html">transition</a><br>
|
|
<tr><td bgcolor="#c0e0e0">
|
|
<a href="clock.html">clock</a><br>
|
|
<a href="null_sink.html">null_sink</a><br>
|
|
<a href="text_scheduler.html">text_scheduler</a><br>
|
|
<a href="visualisation.html">visualisation</a><br>
|
|
<tr><td bgcolor="#e0c0c0">
|
|
<a href="camera.html">camera</a><br>
|
|
<a href="egl_render.html">egl_render</a><br>
|
|
<a href="hvs.html">hvs</a><br>
|
|
<a href="isp.html">isp</a><br>
|
|
<a href="rawcam.html">rawcam</a><br>
|
|
<a href="video_decode.html">video_decode</a><br>
|
|
<a href="video_encode.html">video_encode</a><br>
|
|
<a href="video_render.html">video_render</a><br>
|
|
<a href="video_scheduler.html">video_scheduler</a><br>
|
|
<a href="video_splitter.html">video_splitter</a><br>
|
|
<tr><td bgcolor="#c0e0e0">
|
|
<a href="prop.html">Custom Index</a><br>
|
|
<a href="metadata.html">Metadata</a><br>
|
|
</table><td>
|
|
|
|
<h1>Broadcom Custom Index List</h1>
|
|
<a name="OMX_IndexConfigAFAssistLight"><h2>Autofocus assist light mode selection</h2></a>
|
|
<tt>OMX_IndexConfigAFAssistLight</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_AFASSISTTYPE {
|
|
OMX_AFAssistAuto,
|
|
OMX_AFAssistOn,
|
|
OMX_AFAssistOff,
|
|
OMX_AFAssistTorch,
|
|
OMX_AFAssistKhronosExtensions = 0x6F000000,
|
|
OMX_AFAssistVendorStartUnused = 0x7F000000,
|
|
OMX_AFAssistMax = 0x7FFFFFFF
|
|
} OMX_AFASSISTTYPE;
|
|
|
|
typedef struct OMX_CONFIG_AFASSISTTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_AFASSISTTYPE eMode;
|
|
} OMX_CONFIG_AFASSISTTYPE;</pre><p>
|
|
Set the mode to adopt for the autofocus assist light.
|
|
<tt>OMX_AFAssistTorch</tt> will turn the AF assist light on permanently, allowing
|
|
it to be used as a torch.<p>
|
|
|
|
<a name="OMX_IndexConfigAudioMonoTrackControl"><h2>Dual Mono Control</h2></a>
|
|
<tt>OMX_IndexConfigAudioMonoTrackControl</tt><br>
|
|
Used by: <a href="audio_decode.html">audio_decode</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_AUDIOMONOTRACKOPERATIONSTYPE {
|
|
OMX_AUDIOMONOTRACKOPERATIONS_NOP,
|
|
OMX_AUDIOMONOTRACKOPERATIONS_L_TO_R,
|
|
OMX_AUDIOMONOTRACKOPERATIONS_R_TO_L,
|
|
OMX_AUDIOMONOTRACKOPERATIONS_DUMMY = 0x7FFFFFFF
|
|
} OMX_AUDIOMONOTRACKOPERATIONSTYPE ;
|
|
|
|
typedef struct OMX_CONFIG_AUDIOMONOTRACKCONTROLTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_AUDIOMONOTRACKOPERATIONSTYPE eMode;
|
|
} OMX_CONFIG_AUDIOMONOTRACKCONTROLTYPE;</pre><p>
|
|
This config controls the options to support dual mono audio
|
|
streams. The output can be unchanged, or the left channel copied over
|
|
the right channel, or the right channel copied over the left
|
|
channel. This config can be applied at any time with stereo
|
|
16-bit-per-sample data. Since audio output is typically buffered, any
|
|
change will not be audible until that buffering has been played out.<p>
|
|
|
|
<a name="OMX_IndexConfigAudioRenderingLatency"><h2>Audio Rendering Latency</h2></a>
|
|
<tt>OMX_IndexConfigAudioRenderingLatency</tt><br>
|
|
Used by: <a href="audio_render.html">audio_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This config allows the client to query the current latency of audio
|
|
rendering. The latency is returned as the number of samples that
|
|
an audio rendering component has received but have not been played.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmAudioDestination"><h2>Audio Destination</h2></a>
|
|
<tt>OMX_IndexConfigBrcmAudioDestination</tt><br>
|
|
Used by: <a href="audio_render.html">audio_render</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMAUDIODESTINATIONTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U8 sName[16];
|
|
} OMX_CONFIG_BRCMAUDIODESTINATIONTYPE;</pre><p>
|
|
This config sets the platform-specific audio destination or output
|
|
device for audio sink components (e.g. audio_render).
|
|
|
|
<tt>sName</tt> describes the audio destination, with <tt>"local"</tt>
|
|
typically being directly connected to headphones.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmAudioDownmixCoefficients8x8"><h2>Audio Downmix Coefficient matrix</h2></a>
|
|
<tt>OMX_IndexConfigBrcmAudioDownmixCoefficients8x8</tt><br>
|
|
Used by: <a href="audio_decode.html">audio_decode</a>, <a href="audio_mixer.html">audio_mixer</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8 {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 coeff[64];
|
|
} OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8;</pre><p>
|
|
This config sets the platform-specific audio downmixing coefficients for the
|
|
audio mixer component. The coefficients are 16.16 fixed point.
|
|
The coefficients are a 8*8 mixing matrix from 8 input channels to 8 outputs channels
|
|
|
|
<tt>coeff</tt> describes the downmixing coefficients<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmAudioEffectControl"><h2>Audio Effect Control</h2></a>
|
|
<tt>OMX_IndexConfigBrcmAudioEffectControl</tt><br>
|
|
Used by: <a href="audio_processor.html">audio_processor</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMAUDIOEFFECTCONTROLTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnable;
|
|
OMX_U8 name[16];
|
|
OMX_U8 property[256];
|
|
} OMX_CONFIG_BRCMAUDIOEFFECTCONTROLTYPE;</pre><p>
|
|
This structure represents the internal configuration of an audio effect.
|
|
The audio effect is provided by a loadable plug-in described
|
|
in the <tt>name</tt> field and is configured in a plug-in-dependent
|
|
manner with the <tt>property</tt> field. The <tt>bEnable</tt> field is used to
|
|
turn the effect on/off.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmAudioMaxSample"><h2>Maximum sample seen</h2></a>
|
|
<tt>OMX_IndexConfigBrcmAudioMaxSample</tt><br>
|
|
Used by: <a href="audio_decode.html">audio_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BRCMAUDIOMAXSAMPLE</tt><p>
|
|
|
|
This gets the largest sample produced (after downmixing with OMX_CONFIG_BRCMAUDIODOWNMIXCOEFFICIENTS8x8)
|
|
since this config was last read. The nTimestamp is the earliest timestamp processed.
|
|
This can be used for DRC schemes
|
|
|
|
<tt>coeff</tt> maximum sample seen in current block<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmAudioSource"><h2>Audio Source</h2></a>
|
|
<tt>OMX_IndexConfigBrcmAudioSource</tt><br>
|
|
Used by: <a href="audio_capture.html">audio_capture</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMAUDIOSOURCETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U8 sName[16];
|
|
} OMX_CONFIG_BRCMAUDIOSOURCETYPE;</pre><p>
|
|
This config sets the platform-specific audio source or input device
|
|
for audio source components (e.g. audio_capture).
|
|
|
|
<tt>sName</tt> describes the audio source, with <tt>"local"</tt>
|
|
typically being directly connected to microphone.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmAudioTrackChangeControl"><h2>Configure gapless/crossfaded audio track change.</h2></a>
|
|
<tt>OMX_IndexConfigBrcmAudioTrackChangeControl</tt><br>
|
|
Used by: <a href="audio_mixer.html">audio_mixer</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMAUDIOTRACKCHANGECONTROLTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nSrcPortIndex;
|
|
OMX_U32 nDstPortIndex;
|
|
OMX_U32 nXFade;
|
|
} OMX_CONFIG_BRCMAUDIOTRACKCHANGECONTROLTYPE;</pre><p>
|
|
This config allows the client to specify the gapless or crossfade
|
|
parameters to be used on a track change. If <tt>nXFade</tt> is 0, then
|
|
a normal or gapless track change will result, otherwise a crossfade of
|
|
<tt>nXFade</tt> ms is used.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmAudioTrackChangeCount"><h2>Query the number of times the port has completed a track change</h2></a>
|
|
<tt>OMX_IndexConfigBrcmAudioTrackChangeCount</tt><br>
|
|
Used by: <a href="audio_mixer.html">audio_mixer</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
A track change is complete for an input port when a buffer flagged with <tt>OMX_BUFFERFLAG_EOS</tt>
|
|
has been fully mixed into output port buffers as is ready to be returned or flushed
|
|
from the input port. This configuration value can be monitored via
|
|
<tt>OMX_IndexConfigRequestCallback</tt>.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmAudioTrackGaplessPlayback"><h2>Encoder/decoder delay and padding information for gapless playback.</h2></a>
|
|
<tt>OMX_IndexConfigBrcmAudioTrackGaplessPlayback</tt><br>
|
|
Used by: <a href="audio_decode.html">audio_decode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMAUDIOTRACKGAPLESSPLAYBACKTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nDelay;
|
|
OMX_U32 nPadding;
|
|
} OMX_CONFIG_BRCMAUDIOTRACKGAPLESSPLAYBACKTYPE;</pre><p>
|
|
This config allows communication between components to facilitate gapless playback.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nDelay</tt><dd>number of samples delay added by the codec
|
|
<dt><tt>nPadding</tt><dd>number of silent samples added to the end
|
|
</dl>
|
|
<a name="OMX_IndexConfigBrcmBufferFlagFilter"><h2>Filter buffers based on flags</h2></a>
|
|
<tt>OMX_IndexConfigBrcmBufferFlagFilter</tt><br>
|
|
Used by: <a href="video_splitter.html">video_splitter</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This control can be set to request that buffers are conditionally forwarded on
|
|
output ports based on matching flags set on that buffer.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmCameraAnnotate"><h2>Annotation overlay parameters</h2></a>
|
|
<tt>OMX_IndexConfigBrcmCameraAnnotate</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMANNOTATETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_BOOL bEnable;
|
|
OMX_BOOL bShowShutter;
|
|
OMX_BOOL bShowAnalogGain;
|
|
OMX_BOOL bShowLens;
|
|
OMX_BOOL bShowCaf;
|
|
OMX_BOOL bShowMotion;
|
|
OMX_BOOL bShowFrameNum;
|
|
OMX_BOOL bEnableBackground;
|
|
OMX_BOOL bCustomBackgroundColour;
|
|
OMX_U8 nBackgroundY;
|
|
OMX_U8 nBackgroundU;
|
|
OMX_U8 nBackgroundV;
|
|
OMX_U8 dummy1;
|
|
OMX_BOOL bCustomTextColour;
|
|
OMX_U8 nTextY;
|
|
OMX_U8 nTextU;
|
|
OMX_U8 nTextV;
|
|
OMX_U8 nTextSize;
|
|
OMX_U8 sText[OMX_BRCM_MAXANNOTATETEXTLEN];
|
|
OMX_BRCMANNOTATEJUSTIFYTYPE eJustify;
|
|
OMX_U32 nXOffset;
|
|
OMX_U32 nYOffset;
|
|
} OMX_CONFIG_BRCMANNOTATETYPE;
|
|
</pre><p>
|
|
Query / set the paramters concerning the anotation overlay.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nTextSize</tt><dd>Text size: 6-150 pixels
|
|
</dl>
|
|
<a name="OMX_IndexConfigBrcmCameraRnDPostprocess"><h2>Enable use of development ISP software stage</h2></a>
|
|
<tt>OMX_IndexConfigBrcmCameraRnDPostprocess</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This control can be used to enable a developmental software stage to be inserted into
|
|
the postprocessor stage of the ISP.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmCameraRnDPreprocess"><h2>Enable use of development ISP software stage</h2></a>
|
|
<tt>OMX_IndexConfigBrcmCameraRnDPreprocess</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This control can be used to enable a developmental software stage to be inserted into
|
|
the preprocessor stage of the ISP.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmCameraStats"><h2>Camera frame statistics</h2></a>
|
|
<tt>OMX_IndexConfigBrcmCameraStats</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMCAMERASTATSTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nOutFrameCount;
|
|
OMX_U32 nDroppedFrameCount;
|
|
} OMX_CONFIG_BRCMCAMERASTATSTYPE;
|
|
</pre><p>
|
|
Allows the Camplus frame counts for number of frames produced and dropped to be read by the client. These counts get reset whenever a new mode is
|
|
requested from Camplus. Additional knowledge of when this occurs is required
|
|
to obtain meaningful results from this config.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmClockMissCount"><h2>Missed clock request accounting</h2></a>
|
|
<tt>OMX_IndexConfigBrcmClockMissCount</tt><br>
|
|
Used by: <a href="clock.html">clock</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
For each port on the clock component, requests for media times may be
|
|
made. These are typically done one per video frame to allow for
|
|
scheduling the display of that frame at the correct time. If a
|
|
request is made after the time has occurred, then that frame will be
|
|
displayed late, and the clock component keeps a per-port record of the
|
|
number of times this occurs. This record can be read using this
|
|
index.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmClockReferenceSource"><h2>Select Clock Reference Source</h2></a>
|
|
<tt>OMX_IndexConfigBrcmClockReferenceSource</tt><br>
|
|
Used by: <a href="audio_render.html">audio_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This control allows communicating directly to an audio renderer component whether it should
|
|
act as a clock reference source or act as a slave.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmDecoderPassThrough"><h2>Enabling Audio Passthrough</h2></a>
|
|
<tt>OMX_IndexConfigBrcmDecoderPassThrough</tt><br>
|
|
Used by: <a href="audio_decode.html">audio_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This allows an audio decoder to disable decoding the stream and pass through correctly framed
|
|
data to enable playback of compressed audio to supported output devices.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmDrawStaticBox"><h2>Define a static box to be drawn on the viewfinder images</h2></a>
|
|
<tt>OMX_IndexConfigBrcmDrawStaticBox</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_STATICBOXTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nIndex;
|
|
OMX_U32 nTotalBoxes;
|
|
OMX_S32 nValidBoxes;
|
|
OMX_BOOL bDrawOtherBoxes;
|
|
OMX_STATICBOX sBoxes[1];
|
|
} OMX_CONFIG_STATICBOXTYPE;
|
|
</pre><p>
|
|
|
|
Allows a client to set a static box to be drawn on the viewfinder
|
|
images using the parameters specified for other types of boxes
|
|
(face tracking, or focus results). This box will always be drawn when
|
|
it is defined, overriding any face tracking or focus cycle results.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmFlashRequired"><h2>Flash required status</h2></a>
|
|
<tt>OMX_IndexConfigBrcmFlashRequired</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Returns the tuner indication whether a flash (normal or fill-in)
|
|
is required for the capture. Read only.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmGlobalAudioMute"><h2>Query / set the audio platform-specific mute status of the audio output</h2></a>
|
|
<tt>OMX_IndexConfigBrcmGlobalAudioMute</tt><br>
|
|
Used by: <a href="audio_render.html">audio_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmHighDynamicRange"><h2>Enable / disable the High Dynamic Range (HDR) software stage</h2></a>
|
|
<tt>OMX_IndexConfigBrcmHighDynamicRange</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmMinimumProcessingLatency"><h2>Processing Latency Bound</h2></a>
|
|
<tt>OMX_IndexConfigBrcmMinimumProcessingLatency</tt><br>
|
|
Used by: <a href="audio_mixer.html">audio_mixer</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMMINIMUMPROCESSINGLATENCY {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_TICKS nOffset;
|
|
} OMX_CONFIG_BRCMMINIMUMPROCESSINGLATENCY;</pre><p>
|
|
Query/set the difference between the actual media time and when the
|
|
component receives request fulfillments for media time requests. This
|
|
can be used with e.g. splitter/mixer components to control when the
|
|
component stops waiting for input or output packets from active
|
|
streams and continues with processing (to maintain a constant
|
|
processing rate).<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmPoolMemAllocSize"><h2>Pool memory usage values</h2></a>
|
|
<tt>OMX_IndexConfigBrcmPoolMemAllocSize</tt><br>
|
|
Used by: <a href="camera.html">camera</a>, <a href="video_decode.html">video_decode</a>, <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This config allows the client to query how much memory is being used by
|
|
the component for any image pools.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmPortBufferStats"><h2>Query port buffer stats history</h2></a>
|
|
<tt>OMX_IndexConfigBrcmPortBufferStats</tt><br>
|
|
Used by: <a href="null_sink.html">null_sink</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMPORTBUFFERSTATSTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nCount;
|
|
OMX_BRCMBUFFERSTATSTYPE sData[1];
|
|
} OMX_CONFIG_BRCMPORTBUFFERSTATSTYPE;</pre><p>
|
|
Ports that gather statistics for debugging and diagnostics
|
|
might also collect information about buffer header fields
|
|
and data.
|
|
|
|
The <tt>sStatsData</tt> field is a variable length array and
|
|
the number of items is denoted by <tt>nStatsCount</tt>.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmPortStats"><h2>Query port statistics</h2></a>
|
|
<tt>OMX_IndexConfigBrcmPortStats</tt><br>
|
|
Used by: <a href="source.html">source</a>, <a href="null_sink.html">null_sink</a>, <a href="video_encode.html">video_encode</a>, <a href="video_render.html">video_render</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMPORTSTATSTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nImageCount;
|
|
OMX_U32 nBufferCount;
|
|
OMX_U32 nFrameCount;
|
|
OMX_U32 nFrameSkips;
|
|
OMX_U32 nDiscards;
|
|
OMX_U32 nEOS;
|
|
OMX_U32 nMaxFrameSize;
|
|
|
|
OMX_TICKS nByteCount;
|
|
OMX_TICKS nMaxTimeDelta;
|
|
OMX_U32 nCorruptMBs;
|
|
} OMX_CONFIG_BRCMPORTSTATSTYPE;</pre><p>
|
|
Some ports gather various statistics that can be used by clients for
|
|
debugging purposes. This structure is the set of all statistics that
|
|
are gathered.
|
|
|
|
The <tt>nFrameSkips</tt> field indicates the number of frames that did
|
|
not have an expected PTS value based on the port frame rate.
|
|
|
|
The <tt>nByteCount</tt> field is a 64 bit value, that will either use a
|
|
64 bit type or two 32 bit types, similarly to <tt>OMX_TICKS</tt>.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nCorruptMBs</tt><dd>Number of corrupt macroblocks in the stream
|
|
</dl>
|
|
<a name="OMX_IndexConfigBrcmRegisterFileFailFatal"><h2>Classify error condition when register file fails to load</h2></a>
|
|
<tt>OMX_IndexConfigBrcmRegisterFileFailFatal</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This specifies whether the failure to load the register file should be treated as a fatal error.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmRenderStats"><h2>Retrieve statistics from this renderer</h2></a>
|
|
<tt>OMX_IndexConfigBrcmRenderStats</tt><br>
|
|
Used by: <a href="video_render.html">video_render</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMRENDERSTATSTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL nValid;
|
|
OMX_U32 nMatch;
|
|
OMX_U32 nPeriod;
|
|
OMX_U32 nPhase;
|
|
OMX_U32 nPixelClockNominal;
|
|
OMX_U32 nPixelClock;
|
|
OMX_U32 nHvsStatus;
|
|
OMX_U32 dummy0[2];
|
|
} OMX_CONFIG_BRCMRENDERSTATSTYPE;
|
|
</pre><p>
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmUseProprietaryCallback"><h2>Force use of proprietary callback</h2></a>
|
|
<tt>OMX_IndexConfigBrcmUseProprietaryCallback</tt><br>
|
|
Used by: <a href="image_encode.html">image_encode</a>, <a href="image_fx.html">image_fx</a>, <a href="resize.html">resize</a>, <a href="null_sink.html">null_sink</a>, <a href="hvs.html">hvs</a>, <a href="isp.html">isp</a>, <a href="video_encode.html">video_encode</a>, <a href="video_render.html">video_render</a>, <a href="video_splitter.html">video_splitter</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BRCMUSEPROPRIETARYTUNNELTYPE</tt><p>
|
|
|
|
Disable/enable the use of proprietary callbacks rather than OpenMAX IL buffer handling.<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmUseRegisterFile"><h2>Specify whether we wish to load the register settings file</h2></a>
|
|
<tt>OMX_IndexConfigBrcmUseRegisterFile</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
The file is specified with <tt>OMX_IndexParamConfigFileRegisters</tt>.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoEncodedSliceSize"><h2>Video encoding output slice size</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoEncodedSliceSize</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
This config allows the client to set the slice size used in bytes,
|
|
as opposed to the standard OMX parameters which are in macroblocks.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoEncoderMBRowsPerSlice"><h2>Configures the number of macro-block rows per slice</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoEncoderMBRowsPerSlice</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Setting the value to zero resets to the default (one slice per frame).
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoH264AUDelimiters"><h2>Access Unit delimiters</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoH264AUDelimiters</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Enable/Disable appropriate encoder flags for supplying Access Unit delimiters along with the encoded stream.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoH264DeblockIDC"><h2>DEblock IDC control</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoH264DeblockIDC</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Enable/Disable Flags for deblock IDC (H264 Only).
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoH264DisableCABAC"><h2>CABAC Control</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoH264DisableCABAC</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Enable/Disable appropriate encoder flags to enable or disable CABAC (H264 ONLY).
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoH264IntraMBMode"><h2>Intra Macroblock mode</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoH264IntraMBMode</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Query/Set intra MB mode (H264 Only).
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoH264LowLatency"><h2>Require the encoder to configure the low-latency mode</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoH264LowLatency</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoIntraPeriod"><h2>Configure the number of frames between intra frames</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoIntraPeriod</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This overrides the setting in <tt>OMX_IndexConfigBrcmVideoIntraPeriodTime</tt>.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoIntraPeriodTime"><h2>Configure the time between intra frames, in microseconds</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoIntraPeriodTime</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Only valid if the framerate is zero (and hence the framerate is inferred from timestamps).
|
|
This overrides the setting in <tt>OMX_IndexConfigBrcmVideoIntraPeriod</tt>.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoIntraRefresh"><h2>Configures the intra refresh mode, if supported by the codec</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoIntraRefresh</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_VIDEO_PARAM_INTRAREFRESHTYPE</tt><p>
|
|
|
|
Can be used when the component is executing.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBrcmVideoRequestIFrame"><h2>Request an I frame</h2></a>
|
|
<tt>OMX_IndexConfigBrcmVideoRequestIFrame</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
If set to OMX_TRUE, the next job submitted will be flagged to be converted as an I-frame. This automatically resets
|
|
itself. This works with proprietary tunnelling and OMX buffers.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigBufferStall"><h2>Advertise buffer stall state</h2></a>
|
|
<tt>OMX_IndexConfigBufferStall</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BUFFERSTALLTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bStalled;
|
|
OMX_U32 nDelay;
|
|
} OMX_CONFIG_BUFFERSTALLTYPE;</pre><p>
|
|
Query/set the buffer stall threashold. When set the <tt>nDelay</tt>
|
|
parameter specifies a time to class whether buffer output is stalled.
|
|
When get, the <tt>nDelay</tt> parameter indicates the current buffer
|
|
delay, and the {bStalled} parameter indicates whether this time is
|
|
over a previously set threashold. When
|
|
<tt>OMX_IndexConfigRequestCallback</tt> is used with this index, a
|
|
notification is given when <tt>bStalled</tt> changes.<p>
|
|
|
|
<dl>
|
|
<dt><tt>bStalled</tt><dd>Whether we are stalled
|
|
<dt><tt>nDelay</tt><dd>Delay in real time (us) from last buffer to current time
|
|
</dl>
|
|
<a name="OMX_IndexConfigBurstCapture"><h2>Set the camera into a mode where it is only doing captures</h2></a>
|
|
<tt>OMX_IndexConfigBurstCapture</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
The viewfinder port can be executing, but will only emit the snapshot images associated to any captures
|
|
requested, and not viewfinder frames. This is an optimisation, and not essential.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCameraAnalogGain"><h2>Manual camera analog gain</h2></a>
|
|
<tt>OMX_IndexConfigCameraAnalogGain</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_CAMERAGAINTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
|
|
OMX_U32 xGain;
|
|
OMX_BOOL bAutoGain;
|
|
} OMX_CONFIG_CAMERAGAINTYPE;
|
|
</pre><p>
|
|
When bAutoGain is set to OMX_FALSE, xGain will be used to set the
|
|
camera analog gain. Requires OMX_IndexConfigCommonExposureValue
|
|
bAutoSensitivity to be set to true (ie ISO control overrides this
|
|
control).
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>xGain</tt><dd>Gain to be applied, stored as Q16 format
|
|
<dt><tt>bAutoGain</tt><dd>Whether gain is set automatically
|
|
</dl>
|
|
<a name="OMX_IndexConfigCameraCaptureAbortsAutoFocus"><h2>Starting a capture aborts AF</h2></a>
|
|
<tt>OMX_IndexConfigCameraCaptureAbortsAutoFocus</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Query / set whether setting the capture bit will abort any AF cycle that is in progress, or if the AF cycle
|
|
should continue and the capture happen automatically on completion.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCameraDigitalGain"><h2>Manual digital gain.</h2></a>
|
|
<tt>OMX_IndexConfigCameraDigitalGain</tt><br>
|
|
Used by: <a href="camera.html">camera</a>, <a href="isp.html">isp</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_CAMERAGAINTYPE</tt><p>
|
|
|
|
Configures the digital gain within the ISP pipeline.<p>
|
|
|
|
<dl>
|
|
<dt><tt>xGain</tt><dd>Gain to be applied, stored as Q16 format
|
|
<dt><tt>bAutoGain</tt><dd>Whether gain is set automatically
|
|
</dl>
|
|
<a name="OMX_IndexConfigCameraEnableStatsPass"><h2>Query / set whether a separate stats pass should be done before each capture</h2></a>
|
|
<tt>OMX_IndexConfigCameraEnableStatsPass</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This will be done automatically if flash is requested.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCameraFeatures"><h2>Camera features</h2></a>
|
|
<tt>OMX_IndexConfigCameraFeatures</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_CAMERAFEATURESTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_CONFIG_CAMERAFEATURESSHUTTER eHasMechanicalShutter;
|
|
OMX_BOOL bHasLens;
|
|
} OMX_CONFIG_CAMERAFEATURESTYPE;
|
|
</pre><p>
|
|
Query the capabilities of the current camera (lens and shutter). Some information is only valid when the component is Idle or Executing.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCameraFlashConfig"><h2>Flash cycle configuration</h2></a>
|
|
<tt>OMX_IndexConfigCameraFlashConfig</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_CAMERAFLASHCONFIGSYNCTYPE {
|
|
OMX_CameraFlashConfigSyncFrontSlow,
|
|
OMX_CameraFlashConfigSyncRearSlow,
|
|
OMX_CameraFlashConfigSyncFrontFast,
|
|
OMX_CameraFlashConfigSyncKhronosExtensions = 0x6F000000,
|
|
OMX_CameraFlashConfigSyncVendorStartUnused = 0x7F000000,
|
|
OMX_CameraFlashConfigSyncMax = 0x7FFFFFFF
|
|
} OMX_CAMERAFLASHCONFIGSYNCTYPE;
|
|
|
|
typedef struct OMX_CONFIG_CAMERAFLASHCONFIGTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bUsePreFlash;
|
|
OMX_BOOL bUseFocusDistanceInfo;
|
|
OMX_CAMERAFLASHCONFIGSYNCTYPE eFlashSync;
|
|
OMX_BOOL bIgnoreChargeState;
|
|
} OMX_CONFIG_CAMERAFLASHCONFIGTYPE;</pre><p>
|
|
This parameter allows the configuration of various parameters relating to
|
|
the flash cycle. Some of the options are only applicable to xenon flash.
|
|
|
|
<tt>bUsePreFlash</tt> uses a low intensity pre-flash to determine flash intensity. This setting
|
|
is recommended for almost all flash situations.
|
|
|
|
<tt>bUseFocusDistanceInfo</tt> uses the distance of the subject, as measured by the AF algorithm
|
|
to set the intensity of the flash.
|
|
|
|
<tt>eFlashSync</tt> configures which edge of the shutter is used to synchronise the flash, and
|
|
the duration of the exposure.
|
|
|
|
<tt>eIgnoreChargeState</tt> will make the flash fire, even if it is not fully charged.<p>
|
|
|
|
<a name="OMX_IndexConfigCameraISPOutputPoolHeight"><h2>Set the height of the high-resolution output image in stills capture only</h2></a>
|
|
<tt>OMX_IndexConfigCameraISPOutputPoolHeight</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
The component will copy out of this image into OMX buffers as required, or
|
|
pass pointers to stripes within the buffer. If the height of this buffer is
|
|
less than nFrameHeight for a port, then attempts to use
|
|
<tt>OMX_IndexParamImagePoolDisplayFunction</tt>, or
|
|
<tt>OMX_IndexParamCameraPoolToEncoderFunction</tt> will be rejected as the
|
|
complete frame isn't available. A value of 0 is interpreted as
|
|
allocate full frames.
|
|
The value must be a multiple of 16.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCameraInfo"><h2>Camera device driver information</h2></a>
|
|
<tt>OMX_IndexConfigCameraInfo</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
#define OMX_CONFIG_CAMERAINFOTYPE_NAME_LEN 16
|
|
typedef struct OMX_CONFIG_LENSCALIBRATIONVALUETYPE
|
|
{
|
|
OMX_U16 nShutterDelayTime;
|
|
OMX_U16 nNdTransparency;
|
|
OMX_U16 nPwmPulseNearEnd;
|
|
OMX_U16 nPwmPulseFarEnd;
|
|
OMX_U16 nVoltagePIOutNearEnd[3];
|
|
OMX_U16 nVoltagePIOut10cm[3];
|
|
OMX_U16 nVoltagePIOutInfinity[3];
|
|
OMX_U16 nVoltagePIOutFarEnd[3];
|
|
OMX_U32 nAdcConversionNearEnd;
|
|
OMX_U32 nAdcConversionFarEnd;
|
|
} OMX_CONFIG_LENSCALIBRATIONVALUETYPE;</pre><p>
|
|
Ask the camera component for the driver info on the current camera device<p>
|
|
|
|
<a name="OMX_IndexConfigCameraInputFrame"><h2>Pointer to the raw input image</h2></a>
|
|
<tt>OMX_IndexConfigCameraInputFrame</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_IMAGEPTRTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_PTR pImage;
|
|
} OMX_CONFIG_IMAGEPTRTYPE;</pre><p>
|
|
This parameter parameter allows the return of a pointer to a
|
|
VideoCore image resource.<p>
|
|
|
|
<a name="OMX_IndexConfigCameraIsoReferenceValue"><h2>Allows the client to obtain the ISO reference for unity analogue gain</h2></a>
|
|
<tt>OMX_IndexConfigCameraIsoReferenceValue</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCameraSensorModes"><h2>Camera Sensor Mode</h2></a>
|
|
<tt>OMX_IndexConfigCameraSensorModes</tt><br>
|
|
Used by: <a href="camera.html">camera</a>, <a href="camera.html">camera</a>, <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_CAMERASENSORMODETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nModeIndex;
|
|
OMX_U32 nNumModes;
|
|
OMX_U32 nWidth;
|
|
OMX_U32 nHeight;
|
|
OMX_U32 nPaddingRight;
|
|
OMX_U32 nPaddingDown;
|
|
OMX_COLOR_FORMATTYPE eColorFormat;
|
|
OMX_U32 nFrameRateMax;
|
|
OMX_U32 nFrameRateMin;
|
|
} OMX_CONFIG_CAMERASENSORMODETYPE;</pre><p>
|
|
This parameter is used by clients to determine the sensor mode, and
|
|
hence the memory usage, of the camera module. This is primarily used
|
|
for determining the size of the input image pool.
|
|
|
|
It can be used in two ways dependent on <tt>nPortIndex</tt>. If
|
|
<tt>nPortIndex</tt> is <tt>OMX_ALL</tt>, it returns the sensor mode
|
|
corresponding to <tt>nModeIndex</tt>, and the number of modes in
|
|
<tt>nNumModes</tt>. If <tt>nModeIndex</tt> is greater than or equal to
|
|
<tt>nNumModes</tt> only <tt>nNumModes</tt> is returned. If
|
|
<tt>nPortIndex</tt> is equal to a camera video output port index, it
|
|
returns the sensor mode that would be selected for the values
|
|
currently in <tt>OMX_IndexParamPortDefinition</tt> for that port.
|
|
|
|
The <tt>nPaddingRight</tt> and <tt>nPaddingDown</tt> values determine the
|
|
extra padding the sensor adds to the image. These values must be added
|
|
to <tt>nWidth</tt> and <tt>nHeight</tt> respectively if the client is
|
|
specifying the input image pool size.<p>
|
|
|
|
<a name="OMX_IndexConfigCameraSettings"><h2>Get the parameters applied to the last frame from the camera</h2></a>
|
|
<tt>OMX_IndexConfigCameraSettings</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_CAMERASETTINGSTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nExposure;
|
|
OMX_U32 nAnalogGain;
|
|
OMX_U32 nDigitalGain;
|
|
OMX_U32 nLux;
|
|
OMX_U32 nRedGain;
|
|
OMX_U32 nBlueGain;
|
|
OMX_U32 nFocusPosition;
|
|
} OMX_CONFIG_CAMERASETTINGSTYPE;
|
|
</pre><p>
|
|
The client can also set <tt>OMX_IndexConfigRequestCallback</tt> for this config.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
</dl>
|
|
<a name="OMX_IndexConfigCameraStripeFuncMinLines"><h2>Stripe mode minimum height</h2></a>
|
|
<tt>OMX_IndexConfigCameraStripeFuncMinLines</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Used to set the minimum number of lines to be passed using the stripe function. The stripe
|
|
function itself is set with <tt>OMX_IndexParamCameraStripeFunction</tt>.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCameraUseCase"><h2>Camera use case</h2></a>
|
|
<tt>OMX_IndexConfigCameraUseCase</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_CAMERAUSECASETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_CONFIG_CAMERAUSECASE eUseCase;
|
|
} OMX_CONFIG_CAMERAUSECASETYPE;
|
|
</pre><p>
|
|
Query / set the use case to be passed into the tuner module.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCaptureRawImageURI"><h2>Configure filename for raw Bayer image</h2></a>
|
|
<tt>OMX_IndexConfigCaptureRawImageURI</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_CONTENTURITYPE</tt><p>
|
|
|
|
Query / set whether the filename to which the raw Bayer format image should be written out to
|
|
file. Follows the standard URI structure. Can NOT be set when the
|
|
capture bit is set and the capture port is executing. Will return
|
|
<tt>OMX_ErrorUnsupportedIndex</tt> if the algorithm is not loaded.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigClockAdjustment"><h2>Clock Adjustment</h2></a>
|
|
<tt>OMX_IndexConfigClockAdjustment</tt><br>
|
|
Used by: <a href="clock.html">clock</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_TIME_CONFIG_TIMESTAMPTYPE</tt><p>
|
|
|
|
This allows the client to read from the clock the total time
|
|
adjustment made to the clock whilst running by the reference clock.
|
|
If the reference clock sends a time that causes the media time to jump
|
|
this difference is added to the total, which can be reported via this
|
|
index. When the stream restarts by setting the clock state to
|
|
<tt>OMX_TIME_ClockStateRunning</tt> or
|
|
<tt>OMX_TIME_ClockStateWaitingForStartTime</tt> this adjustment total is
|
|
set to zero.<p>
|
|
|
|
<a name="OMX_IndexConfigCommonFaceBeautification"><h2>Face Beautification</h2></a>
|
|
<tt>OMX_IndexConfigCommonFaceBeautification</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Enables/disables the face beautification algorithm, if it is present.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCommonFaceDetectionControl"><h2>Face detection</h2></a>
|
|
<tt>OMX_IndexConfigCommonFaceDetectionControl</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_FACEDETECTIONCONTROLTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_FACEDETECTIONCONTROLTYPE eMode;
|
|
OMX_U32 nFrames;
|
|
OMX_U32 nMaxRegions;
|
|
OMX_U32 nQuality;
|
|
} OMX_CONFIG_FACEDETECTIONCONTROLTYPE;
|
|
</pre><p>
|
|
Query / set the state of the face detection algorithm. Will return <tt>OMX_ErrorUnsupportedIndex</tt> if the algorithm is not loaded.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nFrames</tt><dd>number of frames to apply this setting for,
|
|
<dt><tt>nMaxRegions</tt><dd>maximum number of regions to detect, 0 for unlimited
|
|
<dt><tt>nQuality</tt><dd>hint for algorithmic complexity, range is 0-100.
|
|
</dl>
|
|
<a name="OMX_IndexConfigCommonFaceDetectionRegion"><h2>Face detection output</h2></a>
|
|
<tt>OMX_IndexConfigCommonFaceDetectionRegion</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_FACEDETECTIONREGIONTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nIndex;
|
|
OMX_U32 nDetectedRegions;
|
|
OMX_S32 nValidRegions;
|
|
OMX_U32 nImageWidth;
|
|
OMX_U32 nImageHeight;
|
|
OMX_FACEREGIONTYPE sRegion[1];
|
|
} OMX_CONFIG_FACEDETECTIONREGIONTYPE;
|
|
</pre><p>
|
|
Query the currently detected face regions within the viewfinder image. Will return
|
|
<tt>OMX_ErrorUnsupportedIndex</tt> if the algorithm is not loaded.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nPortIndex</tt><dd>index of port with face detection enabled
|
|
<dt><tt>nIndex</tt><dd>first requested region number, allowing retrieval of many regions
|
|
<dt><tt>nDetectedRegions</tt><dd>total number of detected regions
|
|
<dt><tt>nValidRegions</tt><dd>number of valid regions in sRegion array
|
|
<dt><tt>nImageWidth</tt><dd>Width of the image, hence reference for the face coordinates
|
|
<dt><tt>nImageHeight</tt><dd>Height of the image, hence reference for the face coordinates
|
|
<dt><tt>sRegion</tt><dd>variable length array of face regions
|
|
</dl>
|
|
<a name="OMX_IndexConfigCommonFlickerCancellation"><h2>Flicker cancellation</h2></a>
|
|
<tt>OMX_IndexConfigCommonFlickerCancellation</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_COMMONFLICKERCANCELTYPE {
|
|
OMX_COMMONFLICKERCANCEL_OFF,
|
|
OMX_COMMONFLICKERCANCEL_AUTO,
|
|
OMX_COMMONFLICKERCANCEL_50,
|
|
OMX_COMMONFLICKERCANCEL_60,
|
|
OMX_COMMONFLICKERCANCEL_DUMMY = 0x7FFFFFFF
|
|
} OMX_COMMONFLICKERCANCELTYPE;
|
|
|
|
typedef struct OMX_CONFIG_FLICKERCANCELTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_COMMONFLICKERCANCELTYPE eFlickerCancel;
|
|
} OMX_CONFIG_FLICKERCANCELTYPE;</pre><p>
|
|
Query / set the flicker cancellation frequency. Values are defined for Off,
|
|
50Hz, 60Hz, or auto. The method for auto detecting the flicker frequency is
|
|
not defined, and currently results in the feature being turned off.<p>
|
|
|
|
<a name="OMX_IndexConfigCommonFocusRegionXY"><h2>Define focus regions</h2></a>
|
|
<tt>OMX_IndexConfigCommonFocusRegionXY</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_FOCUSREGIONTYPE {
|
|
OMX_FocusRegionNormal,
|
|
OMX_FocusRegionFace,
|
|
OMX_FocusRegionMax
|
|
} OMX_FOCUSREGIONTYPE;
|
|
|
|
typedef struct OMX_FOCUSREGIONXY {
|
|
OMX_U32 xLeft;
|
|
OMX_U32 xTop;
|
|
OMX_U32 xWidth;
|
|
OMX_U32 xHeight;
|
|
OMX_U32 nWeight;
|
|
OMX_U32 nMask;
|
|
OMX_FOCUSREGIONTYPE eType;
|
|
} OMX_FOCUSREGIONXY;
|
|
|
|
typedef struct OMX_CONFIG_FOCUSREGIONXYTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nIndex;
|
|
OMX_U32 nTotalRegions;
|
|
OMX_S32 nValidRegions;
|
|
OMX_BOOL bLockToFaces;
|
|
OMX_U32 xFaceTolerance;
|
|
OMX_FOCUSREGIONXY sRegion[1];
|
|
} OMX_CONFIG_FOCUSREGIONXYTYPE;</pre><p>
|
|
Query / set the focus regions to use as a set of x/y/width/height boxes relative
|
|
to the overall image.
|
|
|
|
<tt>nIndex</tt> - first region number being set/read, allowing retrieval/setting
|
|
of many regions over several requests.
|
|
|
|
<tt>nTotalRegions</tt> - total number of regions currently defined.
|
|
|
|
<tt>nValidRegions</tt> - number of valid regions in the <tt>sRegion</tt> array.
|
|
When getting, the client sets this to the number of regions available.
|
|
The component writes region data and updates this field with how many
|
|
regions have been written to.
|
|
When setting, this is the number of regions defined with this structure
|
|
|
|
<tt>bLockToFaces</tt> - compare the region(s) given to the latest face tracking results.
|
|
If a face is found within xFaceTolerance of the defined region, then amend the
|
|
region to correspond to the face.
|
|
|
|
<tt>xFaceTolerance</tt> - 0p16 value to define the max difference between the region centre
|
|
and face tracking result centre to take the FT results
|
|
|
|
<tt>sRegions</tt> - variable length array of focus regions.<p>
|
|
|
|
<a name="OMX_IndexConfigCommonImageFilterParameters"><h2>Parameterized Image Filter</h2></a>
|
|
<tt>OMX_IndexConfigCommonImageFilterParameters</tt><br>
|
|
Used by: <a href="image_fx.html">image_fx</a>, <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_IMAGEFILTERPARAMSTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_IMAGEFILTERTYPE eImageFilter;
|
|
OMX_U32 nNumParams;
|
|
OMX_U32 nParams[OMX_CONFIG_IMAGEFILTERPARAMS_MAXPARAMS];
|
|
} OMX_CONFIG_IMAGEFILTERPARAMSTYPE;</pre><p>
|
|
This structure contains optional parameters for some image
|
|
filters. The following table lists all image filters that support
|
|
parameters.
|
|
|
|
<table border="1" cellspacing="0" cellpadding="2">
|
|
<tr><td>Filter<td>Parameters<td>Notes
|
|
|
|
<tr><td><tt>OMX_ImageFilterSolarize</tt>
|
|
<td><tt>[x0 y0 y1 y2]</tt>
|
|
<td>Linear mapping of <tt>[0,x0]</tt> to <tt>[0,y0>]</tt>
|
|
and <tt>[x0,255]</tt> to <tt>[y1,y2]</tt>.
|
|
Default is <tt>"128 128 128 0"</tt>.
|
|
|
|
<tr><td><tt>OMX_ImageFilterSharpen</tt>
|
|
<td><tt>[sz [str [th]]</tt>
|
|
<td><tt>sz</tt> size of filter, either 1 or 2.
|
|
<tt>str</tt> strength of filter.
|
|
<tt>th</tt> threshold of filter.
|
|
Default is <tt>"1 40 20"</tt>.
|
|
|
|
<tr><td><tt>OMX_ImageFilterFilm</tt>
|
|
<td><tt>[[str] [u v]]</tt>
|
|
<td><tt>str</tt> strength of effect.
|
|
<tt>u</tt> sets u to constant value.
|
|
<tt>v</tt> sets v to constant value.
|
|
Default is <tt>"24"</tt>.
|
|
|
|
<tr><td><tt>OMX_ImageFilterBlur</tt>
|
|
<td><tt>[sz]</tt>
|
|
<td><tt>sz</tt> size of filter, either 1 or 2.
|
|
Default is <tt>"2"</tt>.
|
|
|
|
<tr><td><tt>OMX_ImageFilterSaturation</tt>
|
|
<td><tt>[str]</tt>
|
|
<td><tt>str</tt> strength of effect, in 8.8 fixed point format. u/v value
|
|
differences from 128 are multiplied by <tt>str</tt>.
|
|
Default is <tt>"272"</tt>.
|
|
</table><p>
|
|
|
|
<a name="OMX_IndexConfigCommonInterlace"><h2>Query the type of interlacing in use in the decoded video</h2></a>
|
|
<tt>OMX_IndexConfigCommonInterlace</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_INTERLACETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_INTERLACETYPE eMode;
|
|
OMX_BOOL bRepeatFirstField;
|
|
} OMX_CONFIG_INTERLACETYPE;
|
|
</pre><p>
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nPortIndex</tt><dd>index of port emitting or accepting the content
|
|
<dt><tt>eMode</tt><dd>The interlace type of the content
|
|
<dt><tt>bRepeatFirstField</tt><dd>Whether to repeat the first field
|
|
</dl>
|
|
<a name="OMX_IndexConfigCommonRedEyeRemoval"><h2>Red eye removal/reduction</h2></a>
|
|
<tt>OMX_IndexConfigCommonRedEyeRemoval</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_REDEYEREMOVALTYPE {
|
|
OMX_RedEyeRemovalNone,
|
|
OMX_RedEyeRemovalOn,
|
|
OMX_RedEyeRemovalAuto,
|
|
OMX_RedEyeRemovalKhronosExtensions = 0x6F000000,
|
|
OMX_RedEyeRemovalVendorStartUnused = 0x7F000000,
|
|
OMX_RedEyeRemovalSimple,
|
|
OMX_RedEyeRemovalMax = 0x7FFFFFFF
|
|
} OMX_REDEYEREMOVALTYPE;
|
|
|
|
typedef struct OMX_CONFIG_REDEYEREMOVALTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_REDEYEREMOVALTYPE eMode;
|
|
} OMX_CONFIG_REDEYEREMOVALTYPE;</pre><p>
|
|
Configures the red eye reduction algorithm in the camera processing
|
|
pipeline. The stage is only enabled if the flash mode is not FlashOff.
|
|
The OMX_RedEyeRemovalSimple mode requests that the algorithm uses a
|
|
reduced complexity algorithm to reduce the processing time.<p>
|
|
|
|
<a name="OMX_IndexConfigCommonSceneDetected"><h2>Reports the scene type detected by a scene detection algorithm.</h2></a>
|
|
<tt>OMX_IndexConfigCommonSceneDetected</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_SCENEDETECTTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_SCENEDETECTTYPE eScene;
|
|
} OMX_CONFIG_SCENEDETECTTYPE;</pre><p>
|
|
This config is used to report to clients the scene type that has been detected.<p>
|
|
|
|
<dl>
|
|
<dt><tt>eScene</tt><dd>Scene type detected
|
|
</dl>
|
|
<a name="OMX_IndexConfigCommonSceneDetectionControl"><h2>Automatic Scene Detection Control</h2></a>
|
|
<tt>OMX_IndexConfigCommonSceneDetectionControl</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Enables/disables the scene detection algorithm, if it is present.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCommonSharpness"><h2>Image sharpening</h2></a>
|
|
<tt>OMX_IndexConfigCommonSharpness</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_SHARPNESSTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_S32 nSharpness;
|
|
} OMX_CONFIG_SHARPNESSTYPE;
|
|
</pre><p>
|
|
Query / set the sharpening/softening of the output image. -100 = max softening. 0 = no change. +100 = max sharpening.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigContrastEnhance"><h2>Enable / disable contrast enhancement</h2></a>
|
|
<tt>OMX_IndexConfigContrastEnhance</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigCustomAwbGains"><h2>Manual AWB Gains.</h2></a>
|
|
<tt>OMX_IndexConfigCustomAwbGains</tt><br>
|
|
Used by: <a href="camera.html">camera</a>, <a href="isp.html">isp</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_CUSTOMAWBGAINSTYPE {
|
|
OMX_U32 nSize;
|
|
configuration data */
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 xGainR;
|
|
OMX_U32 xGainB;
|
|
} OMX_CONFIG_CUSTOMAWBGAINSTYPE;</pre><p>
|
|
/* OMX_IndexConfigBrcmRenderStats: Render port statistics */
|
|
typedef struct OMX_CONFIG_BRCMRENDERSTATSTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL nValid;
|
|
OMX_U32 nMatch;
|
|
OMX_U32 nPeriod;
|
|
OMX_U32 nPhase;
|
|
OMX_U32 nPixelClockNominal;
|
|
OMX_U32 nPixelClock;
|
|
OMX_U32 nHvsStatus;
|
|
OMX_U32 dummy0[2];
|
|
} OMX_CONFIG_BRCMRENDERSTATSTYPE;
|
|
/*
|
|
This provides statistics from the renderer to allow more accurate synchronisation
|
|
between the scheduler and display VSYNC.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>size of the structure in bytes, including
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>xGainR</tt><dd>Red gain - 16p16
|
|
<dt><tt>xGainB</tt><dd>Blue gain - 16p16
|
|
</dl>
|
|
<a name="OMX_IndexConfigDisplayRegion"><h2>Display Region</h2></a>
|
|
<tt>OMX_IndexConfigDisplayRegion</tt><br>
|
|
Used by: <a href="hvs.html">hvs</a>, <a href="video_render.html">video_render</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_DISPLAYTRANSFORMTYPE{
|
|
OMX_DISPLAY_ROT0 = 0,
|
|
OMX_DISPLAY_MIRROR_ROT0 = 1,
|
|
OMX_DISPLAY_MIRROR_ROT180 = 2,
|
|
OMX_DISPLAY_ROT180 = 3,
|
|
OMX_DISPLAY_MIRROR_ROT90 = 4,
|
|
OMX_DISPLAY_ROT270 = 5,
|
|
OMX_DISPLAY_ROT90 = 6,
|
|
OMX_DISPLAY_MIRROR_ROT270 = 7,
|
|
OMX_DISPLAY_DUMMY = 0x7FFFFFFF
|
|
} OMX_DISPLAYTRANSFORMTYPE;
|
|
|
|
typedef struct OMX_DISPLAYRECTTYPE {
|
|
OMX_S16 x_offset;
|
|
OMX_S16 y_offset;
|
|
OMX_S16 width;
|
|
OMX_S16 height;
|
|
} OMX_DISPLAYRECTTYPE;
|
|
|
|
typedef enum OMX_DISPLAYMODETYPE {
|
|
OMX_DISPLAY_MODE_FILL = 0,
|
|
OMX_DISPLAY_MODE_LETTERBOX = 1,
|
|
// these allow a left eye source-dest to be specified and the right eye mapping will be inferred by symmetry
|
|
OMX_DISPLAY_MODE_STEREO_LEFT_TO_LEFT = 2,
|
|
OMX_DISPLAY_MODE_STEREO_TOP_TO_TOP = 3,
|
|
OMX_DISPLAY_MODE_STEREO_LEFT_TO_TOP = 4,
|
|
OMX_DISPLAY_MODE_STEREO_TOP_TO_LEFT = 5,
|
|
OMX_DISPLAY_MODE_DUMMY = 0x7FFFFFFF
|
|
} OMX_DISPLAYMODETYPE;
|
|
|
|
typedef enum OMX_DISPLAYSETTYPE {
|
|
OMX_DISPLAY_SET_NONE = 0,
|
|
OMX_DISPLAY_SET_NUM = 1,
|
|
OMX_DISPLAY_SET_FULLSCREEN = 2,
|
|
OMX_DISPLAY_SET_TRANSFORM = 4,
|
|
OMX_DISPLAY_SET_DEST_RECT = 8,
|
|
OMX_DISPLAY_SET_SRC_RECT = 0x10,
|
|
OMX_DISPLAY_SET_MODE = 0x20,
|
|
OMX_DISPLAY_SET_PIXEL = 0x40,
|
|
OMX_DISPLAY_SET_NOASPECT = 0x80,
|
|
OMX_DISPLAY_SET_LAYER = 0x100,
|
|
OMX_DISPLAY_SET_COPYPROTECT = 0x200,
|
|
OMX_DISPLAY_SET_ALPHA = 0x400,
|
|
OMX_DISPLAY_SET_DUMMY = 0x7FFFFFFF
|
|
} OMX_DISPLAYSETTYPE;
|
|
|
|
typedef enum OMX_DISPLAYASPECTFLAGSTYPE {
|
|
OMX_DISPLAY_ALPHA_FLAGS_NONE = 0,
|
|
// All layers below and including this one will be ignored (used for screen
|
|
// blanking in full screen rendering)
|
|
OMX_DISPLAY_ALPHA_FLAGS_DISCARD_LOWER_LAYERS = 129,
|
|
// Alpha values are already premultiplied
|
|
OMX_DISPLAY_ALPHA_FLAGS_PREMULT = 130,
|
|
// Mix the per pixel alpha (if present) and the per plane alpha.
|
|
OMX_DISPLAY_ALPHA_FLAGS_MIX = 131,
|
|
} OMX_DISPLAYASPECTFLAGSTYPE;
|
|
|
|
typedef struct OMX_CONFIG_DISPLAYREGIONTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_DISPLAYSETTYPE set;
|
|
OMX_U32 num;
|
|
OMX_BOOL fullscreen;
|
|
OMX_DISPLAYTRANSFORMTYPE transform;
|
|
OMX_DISPLAYRECTTYPE dest_rect;
|
|
OMX_DISPLAYRECTTYPE src_rect;
|
|
OMX_BOOL noaspect;
|
|
OMX_DISPLAYMODETYPE mode;
|
|
OMX_U32 pixel_x;
|
|
OMX_U32 pixel_y;
|
|
OMX_S32 layer;
|
|
OMX_BOOL copyprotect_required;
|
|
OMX_U32 alpha;
|
|
OMX_U32 wfc_context_width;
|
|
OMX_U32 wfc_context_height;
|
|
} OMX_CONFIG_DISPLAYREGIONTYPE;</pre><p>
|
|
This config sets the output display device, as well as the region used
|
|
on the output display, any display transformation, and some flags to
|
|
indicate how to scale the image.
|
|
|
|
The structure uses a bitfield, <tt>set</tt>, to indicate which fields are set
|
|
and should be used. All other fields will maintain their current
|
|
value.
|
|
|
|
<tt>num</tt> describes the display output device, with 0 typically being
|
|
a directly connected LCD display.
|
|
|
|
<tt>fullscreen</tt> indicates that we are using the full device screen
|
|
area, rather than a window of the display. If fullscreen is false,
|
|
then dest_rect is used to specify a region of the display to use.
|
|
|
|
<tt>transform</tt> indicates any rotation or flipping used to map frames
|
|
onto the natural display orientation.
|
|
|
|
The <tt>src_rect</tt> indicates which area of the frame to display. If
|
|
all values are zero, the whole frame will be used.
|
|
|
|
The <tt>noaspect</tt> flag, if set, indicates that any display scaling
|
|
should disregard the aspect ratio of the frame region being displayed.
|
|
|
|
<tt>mode</tt> indicates how the image should be scaled to fit the
|
|
display. <tt>OMX_DISPLAY_MODE_FILL</tt> indicates that the image should
|
|
fill the screen by potentially cropping the frames. Setting
|
|
<tt>mode</tt> to <tt>OMX_DISPLAY_MODE_LETTERBOX</tt> indicates that all
|
|
the source region should be displayed and black bars added if
|
|
necessary.
|
|
|
|
The <tt>pixel_x</tt> and <tt>pixel_y</tt> values, if non-zero, are used to
|
|
describe the size of a source pixel. If values are zero, then pixels
|
|
default to being square.
|
|
|
|
Set the <tt>layer</tt> that the image will appear on with the
|
|
<tt>layer</tt> field.<p>
|
|
|
|
<a name="OMX_IndexConfigDrawBoxAroundFaces"><h2>Draw boxes around faces</h2></a>
|
|
<tt>OMX_IndexConfigDrawBoxAroundFaces</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Query / set the state of adding boxes around the faces detected in the viewfinder frames.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigDrawBoxLineParams"><h2>Face box style parameters.</h2></a>
|
|
<tt>OMX_IndexConfigDrawBoxLineParams</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_YUVCOLOUR {
|
|
OMX_U8 nY;
|
|
OMX_U8 nU;
|
|
OMX_U8 nV;
|
|
} OMX_YUVCOLOUR;
|
|
|
|
typedef struct OMX_CONFIG_DRAWBOXLINEPARAMS {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 xCornerSize;
|
|
OMX_U32 nPrimaryFaceLineWidth;
|
|
OMX_U32 nOtherFaceLineWidth;
|
|
OMX_U32 nFocusRegionLineWidth;
|
|
OMX_YUVCOLOUR sPrimaryFaceColour;
|
|
OMX_YUVCOLOUR sPrimaryFaceSmileColour;
|
|
OMX_YUVCOLOUR sPrimaryFaceBlinkColour;
|
|
OMX_YUVCOLOUR sOtherFaceColour;
|
|
OMX_YUVCOLOUR sOtherFaceSmileColour;
|
|
OMX_YUVCOLOUR sOtherFaceBlinkColour;
|
|
OMX_BOOL bShowFocusRegionsWhenIdle;
|
|
OMX_YUVCOLOUR sFocusRegionColour;
|
|
OMX_BOOL bShowAfState;
|
|
OMX_BOOL bShowOnlyPrimaryAfState;
|
|
OMX_BOOL bCombineNonFaceRegions;
|
|
OMX_YUVCOLOUR sAfLockPrimaryFaceColour;
|
|
OMX_YUVCOLOUR sAfLockOtherFaceColour;
|
|
OMX_YUVCOLOUR sAfLockFocusRegionColour;
|
|
OMX_YUVCOLOUR sAfFailPrimaryFaceColour;
|
|
OMX_YUVCOLOUR sAfFailOtherFaceColour;
|
|
OMX_YUVCOLOUR sAfFailFocusRegionColour;
|
|
} OMX_CONFIG_DRAWBOXLINEPARAMS;</pre><p>
|
|
Query / set the parameters for the box to be drawn around faces/focus regions.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>Size of this structure, in Bytes
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>nPortIndex</tt><dd>Port to which this config applies
|
|
<dt><tt>xCornerSize</tt><dd>Size of the corners as a fraction of the complete side
|
|
<dt><tt>nPrimaryFaceLineWidth</tt><dd>Width of the box line for the primary face in pixels
|
|
<dt><tt>nOtherFaceLineWidth</tt><dd>Width of the box line for other faces in pixels
|
|
<dt><tt>nFocusRegionLineWidth</tt><dd>Width of the box line for focus regions in pixels
|
|
<dt><tt>sPrimaryFaceColour</tt><dd>YUV colour for the primary face
|
|
<dt><tt>sPrimaryFaceSmileColour</tt><dd>YUV colour for the primary face if smiling
|
|
<dt><tt>sPrimaryFaceBlinkColour</tt><dd>YUV colour for the primary face if blinking
|
|
<dt><tt>sOtherFaceColour</tt><dd>YUV colour for the all other faces
|
|
<dt><tt>sOtherFaceSmileColour</tt><dd>YUV colour for the all other faces if smiling
|
|
<dt><tt>sOtherFaceBlinkColour</tt><dd>YUV colour for the all other faces if blinking
|
|
<dt><tt>bShowFocusRegionsWhenIdle</tt><dd>Are focus regions displayed when just in viewfinder/AF idle
|
|
<dt><tt>sFocusRegionColour</tt><dd>YUV colour for focus regions
|
|
<dt><tt>bShowAfState</tt><dd>Change to the colours specified below if AF cycle has run
|
|
<dt><tt>bShowOnlyPrimaryAfState</tt><dd>Only show the primary face when displaying the AF status
|
|
<dt><tt>bCombineNonFaceRegions</tt><dd>Combine all regions not defined as faces into one single box covering them all
|
|
<dt><tt>sAfLockPrimaryFaceColour</tt><dd>YUV colour for the primary face
|
|
<dt><tt>sAfLockOtherFaceColour</tt><dd>YUV colour for the all other faces
|
|
<dt><tt>sAfLockFocusRegionColour</tt><dd>YUV colour for focus regions
|
|
<dt><tt>sAfFailPrimaryFaceColour</tt><dd>YUV colour for the primary face
|
|
<dt><tt>sAfFailOtherFaceColour</tt><dd>YUV colour for the all other faces
|
|
<dt><tt>sAfFailFocusRegionColour</tt><dd>YUV colour for focus regions
|
|
</dl>
|
|
<a name="OMX_IndexConfigDynamicRangeExpansion"><h2>Configure image dynamic range expansion processing</h2></a>
|
|
<tt>OMX_IndexConfigDynamicRangeExpansion</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_DYNAMICRANGEEXPANSIONMODETYPE {
|
|
OMX_DynRangeExpOff,
|
|
OMX_DynRangeExpLow,
|
|
OMX_DynRangeExpMedium,
|
|
OMX_DynRangeExpHigh,
|
|
OMX_DynRangeExpKhronosExtensions = 0x6F000000,
|
|
OMX_DynRangeExpVendorStartUnused = 0x7F000000,
|
|
OMX_DynRangeExpMax = 0x7FFFFFFF
|
|
} OMX_DYNAMICRANGEEXPANSIONMODETYPE;
|
|
|
|
typedef struct OMX_CONFIG_DYNAMICRANGEEXPANSIONTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_DYNAMICRANGEEXPANSIONMODETYPE eMode;
|
|
} OMX_CONFIG_DYNAMICRANGEEXPANSIONTYPE;</pre><p>
|
|
Configures the intensity of an image dynamic range expansion processing stage<p>
|
|
|
|
<a name="OMX_IndexConfigEncLevelExtension"><h2>AVC Override encode capabilities</h2></a>
|
|
<tt>OMX_IndexConfigEncLevelExtension</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_VIDEO_CONFIG_LEVEL_EXTEND {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nCustomMaxMBPS;
|
|
OMX_U32 nCustomMaxFS;
|
|
OMX_U32 nCustomMaxBRandCPB;
|
|
} OMX_VIDEO_CONFIG_LEVEL_EXTEND;</pre><p>
|
|
This allows finer control of the H264 encode internal parameters.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nCustomMaxMBPS</tt><dd>Specifies maximum macro-blocks per second
|
|
<dt><tt>nCustomMaxFS</tt><dd>Specifies maximum frame size (macro-blocks per frame)
|
|
<dt><tt>nCustomMaxBRandCPB</tt><dd>Specifies maximum bitrate in units of 1000 bits/s and Codec Picture Buffer (CPB derived from bitrate)
|
|
</dl>
|
|
<a name="OMX_IndexConfigFaceRecognitionControl"><h2>Face Recognition Control</h2></a>
|
|
<tt>OMX_IndexConfigFaceRecognitionControl</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Enables/disables the face recognition software stage (if present)
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigFaceRecognitionDatabaseUri"><h2>Face Recognition Database File</h2></a>
|
|
<tt>OMX_IndexConfigFaceRecognitionDatabaseUri</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_CONTENTURITYPE</tt><p>
|
|
|
|
Specifies the URI of the database file to be used by face recognition.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigFaceRecognitionSaveFace"><h2>Face Recognition Face Learning</h2></a>
|
|
<tt>OMX_IndexConfigFaceRecognitionSaveFace</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMU64TYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nLowPart;
|
|
OMX_U32 nHighPart;
|
|
} OMX_PARAM_BRCMU64TYPE;
|
|
</pre><p>
|
|
Instructs the face recognition stage to save the next primary face it sees into the database with the
|
|
supplied ID.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>Size of this structure, in Bytes
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
<dt><tt>nLowPart</tt><dd>low bits of the unsigned 64 bit value
|
|
<dt><tt>nHighPart</tt><dd>high bits of the unsigned 64 bit value
|
|
</dl>
|
|
<a name="OMX_IndexConfigFieldOfView"><h2>Image field of view</h2></a>
|
|
<tt>OMX_IndexConfigFieldOfView</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_BRCMFOVTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 xFieldOfViewHorizontal;
|
|
OMX_U32 xFieldOfViewVertical;
|
|
} OMX_CONFIG_BRCMFOVTYPE;
|
|
</pre><p>
|
|
Returns the field of view provided by the current camera settings.
|
|
Read only.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>xFieldOfViewHorizontal</tt><dd>Horizontal field of view in degrees. 16p16 value
|
|
<dt><tt>xFieldOfViewVertical</tt><dd>Vertical field of view in degrees. 16p16 value
|
|
</dl>
|
|
<a name="OMX_IndexConfigFlashChargeLevel"><h2>Query the charge level of the currently selected flash device</h2></a>
|
|
<tt>OMX_IndexConfigFlashChargeLevel</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This is updated at the start of every frame.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigFlashInfo"><h2>Flash Information</h2></a>
|
|
<tt>OMX_IndexConfigFlashInfo</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_FLASHINFOTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U8 sFlashName[OMX_CONFIG_FLASHINFOTYPE_NAME_LEN];
|
|
OMX_CAMERAFLASHTYPE eFlashType;
|
|
OMX_U8 nDeviceId;
|
|
OMX_U8 nDeviceVersion;
|
|
} OMX_CONFIG_FLASHINFOTYPE;
|
|
</pre><p>
|
|
Queries for the information on the flash devices present.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigInputCropPercentages"><h2>Set crop region seen by ISP</h2></a>
|
|
<tt>OMX_IndexConfigInputCropPercentages</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_INPUTCROPTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 xLeft;
|
|
OMX_U32 xTop;
|
|
OMX_U32 xWidth;
|
|
OMX_U32 xHeight;
|
|
} OMX_CONFIG_INPUTCROPTYPE;
|
|
</pre><p>
|
|
Query / set the region of the input image that will be cropped before being processed by the ISP. It is
|
|
specified as a fraction of the input width and height, expressed as a
|
|
16p16 value.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>xLeft</tt><dd>Fraction of the width for the top left corner of the rectangle
|
|
<dt><tt>xTop</tt><dd>Fraction of the height for the top left corner of the rectangle
|
|
<dt><tt>xWidth</tt><dd>Fraction of the image width desired
|
|
<dt><tt>xHeight</tt><dd>Fraction of the image height desired
|
|
</dl>
|
|
<a name="OMX_IndexConfigLatencyTarget"><h2>Maintain target latency by adjusting clock speed</h2></a>
|
|
<tt>OMX_IndexConfigLatencyTarget</tt><br>
|
|
Used by: <a href="audio_render.html">audio_render</a>, <a href="clock.html">clock</a>, <a href="video_render.html">video_render</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_LATENCYTARGETTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnabled;
|
|
OMX_U32 nFilter;
|
|
OMX_U32 nTarget;
|
|
OMX_U32 nShift;
|
|
OMX_S32 nSpeedFactor;
|
|
OMX_S32 nInterFactor;
|
|
OMX_S32 nAdjCap;
|
|
} OMX_CONFIG_LATENCYTARGETTYPE;</pre><p>
|
|
Query/set parameters used when adjusting clock speed to match the
|
|
measured latency to a specified value.<p>
|
|
|
|
<dl>
|
|
<dt><tt>bEnabled</tt><dd>whether this mode is enabled
|
|
<dt><tt>nFilter</tt><dd>number of latency samples to filter on, good value: 1
|
|
<dt><tt>nTarget</tt><dd>target latency, us
|
|
<dt><tt>nShift</tt><dd>shift for storing latency values, good value: 7
|
|
<dt><tt>nSpeedFactor</tt><dd>multiplier for speed changes, in 24.8 format, good value: 256-512
|
|
<dt><tt>nInterFactor</tt><dd>divider for comparing latency versus gradiant, good value: 300
|
|
<dt><tt>nAdjCap</tt><dd>limit for speed change before nSpeedFactor is applied, good value: 100
|
|
</dl>
|
|
<a name="OMX_IndexConfigMinimiseFragmentation"><h2>Minimising Fragmentation</h2></a>
|
|
<tt>OMX_IndexConfigMinimiseFragmentation</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This control can be supported to enable the client to request that the component works
|
|
to minimise fragmentation of output buffers.<p>
|
|
|
|
<a name="OMX_IndexConfigPortCapturing"><h2>Per-port capturing state</h2></a>
|
|
<tt>OMX_IndexConfigPortCapturing</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_PORTBOOLEANTYPE{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnabled;
|
|
} OMX_CONFIG_PORTBOOLEANTYPE;</pre><p>
|
|
This is proposed in IL533f for controlling
|
|
which ports of a multi-port camera component are capturing frames.<p>
|
|
|
|
<a name="OMX_IndexConfigPowerDown"><h2>Standby/power control</h2></a>
|
|
<tt>OMX_IndexConfigPowerDown</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Query /set the power status of the camera module. Setting this parameter to <tt>OMX_TRUE</tt> instructs the component to
|
|
power down the sensor, but keeping all memory allocated as required by
|
|
the component state.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigPresentationOffset"><h2>Presentation Offset</h2></a>
|
|
<tt>OMX_IndexConfigPresentationOffset</tt><br>
|
|
Used by: <a href="audio_render.html">audio_render</a>, <a href="video_scheduler.html">video_scheduler</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_TIME_CONFIG_TIMESTAMPTYPE</tt><p>
|
|
|
|
The value of <tt>nTimestamp</tt> is added to the offset requested for
|
|
each new input frame. Takes effect for all new input frames, and has
|
|
no effect on the offset used for currently-queued frames. A positive
|
|
value will make the requested port earlier relative to other streams,
|
|
a negative value will make the requested port later relative to other
|
|
streams.<p>
|
|
|
|
<a name="OMX_IndexConfigPrivacyIndicator"><h2>Privacy indicator control</h2></a>
|
|
<tt>OMX_IndexConfigPrivacyIndicator</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_PRIVACYINDICATORTYPE {
|
|
OMX_PrivacyIndicatorOff,
|
|
OMX_PrivacyIndicatorOn,
|
|
OMX_PrivacyIndicatorForceOn,
|
|
OMX_PrivacyIndicatorKhronosExtensions = 0x6F000000,
|
|
OMX_PrivacyIndicatorVendorStartUnused = 0x7F000000,
|
|
OMX_PrivacyIndicatorMax = 0x7FFFFFFF
|
|
} OMX_PRIVACYINDICATORTYPE;
|
|
|
|
typedef struct OMX_CONFIG_PRIVACYINDICATORTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_PRIVACYINDICATORTYPE ePrivacyIndicatorMode;
|
|
} OMX_CONFIG_PRIVACYINDICATORTYPE;</pre><p>
|
|
This config allows control over the privacy indicator light. This
|
|
light indicates when a capture is in progress.
|
|
|
|
<tt>OMX_PrivacyIndicatorOff</tt> indicator is disabled.
|
|
|
|
<tt>OMX_PrivacyIndicatorOn</tt> indicator will be
|
|
turned on whenever an image is being captured as determined by the
|
|
capturing bit. Minimum on duration of approx 200ms.
|
|
|
|
<tt>OMX_PrivacyIndicatorForceOn</tt> results in turning the indicator on
|
|
immediately, whether an image is being captured or not. The mode will
|
|
automatically revert to <tt>OMX_PrivacyIndicatorOff</tt> once the
|
|
indicator has been turned on, so <tt>OMX_PrivacyIndicatorForceOn</tt>
|
|
must be requested at least every 200ms if the indicator is to remain
|
|
on.<p>
|
|
|
|
<a name="OMX_IndexConfigRefreshCodec"><h2>Triggers closing and reopening the codec</h2></a>
|
|
<tt>OMX_IndexConfigRefreshCodec</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This will only happen if the codec is currently loaded. To perform this operation, the <tt>bEnabled</tt> value should
|
|
be set to <tt>OMX_TRUE</tt>.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigRequestCallback"><h2>Enable config change notifications.</h2></a>
|
|
<tt>OMX_IndexConfigRequestCallback</tt><br>
|
|
Used by: <a href="audio_mixer.html">audio_mixer</a>, <a href="null_sink.html">null_sink</a>, <a href="camera.html">camera</a>, <a href="video_decode.html">video_decode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_REQUESTCALLBACKTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_INDEXTYPE nIndex;
|
|
OMX_BOOL bEnable;
|
|
} OMX_CONFIG_REQUESTCALLBACKTYPE;</pre><p>
|
|
This config implements IL416c to allow clients to request notification
|
|
of when a config or parameter is changed. When the parameter specified
|
|
in <tt>nIndex</tt> for port <tt>nPortIndex</tt> changes, an
|
|
<tt>OMX_EventParamOrConfigChanged</tt> event is generated for the client.<p>
|
|
|
|
<a name="OMX_IndexConfigSingleStep"><h2>Single Step</h2></a>
|
|
<tt>OMX_IndexConfigSingleStep</tt><br>
|
|
Used by: <a href="clock.html">clock</a>, <a href="video_decode.html">video_decode</a>, <a href="video_splitter.html">video_splitter</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
When setting this config on a paused clock, where the <tt>nU32</tt>
|
|
value is non-zero and <tt>nPortIndex</tt> is OMX_ALL, the media clock
|
|
will advance through the next <tt>nU32</tt> next requested media
|
|
times. A paused clock is in running state but has a time scale of
|
|
0. This will trigger the display of some video frames, so allowing
|
|
single-stepping functionality. This config can be set multiple times,
|
|
and will buffer up stepping requests until we have media requests to
|
|
fulfil, or the clock is stopped or un-paused.
|
|
|
|
This config can also be used on some video output ports and, if
|
|
<tt>nU32</tt> is non-zero, requests that the output port forwards the
|
|
next <tt>nU32</tt> frames appending an EOS marker on the last frame, and
|
|
then ceases to forward data on this port. If <tt>nU32</tt> is zero, any
|
|
previous request to forward a limited number of frames is cancelled
|
|
and the default behaviour of this port will resume.<p>
|
|
|
|
<a name="OMX_IndexConfigSmartShakeReductionEnable"><h2>Smart Shake Reduction (SSR)</h2></a>
|
|
<tt>OMX_IndexConfigSmartShakeReductionEnable</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Query / set the state of the Smart Shake Reduction function. Will return <tt>OMX_ErrorUnsupportedIndex</tt> if the
|
|
algorithm is not loaded.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigStillColourDenoiseEnable"><h2>Configure still colour denoise</h2></a>
|
|
<tt>OMX_IndexConfigStillColourDenoiseEnable</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Query / set the state of the still colour denoise function of the camera. This is only applicable whilst
|
|
doing a stills capture in YUV422 or YUV420 planar format.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigStillsAntiShakeEnable"><h2>Query / set the state of the antishake function of the camera</h2></a>
|
|
<tt>OMX_IndexConfigStillsAntiShakeEnable</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigTemporalDenoiseEnable"><h2>Configure temporal denoise</h2></a>
|
|
<tt>OMX_IndexConfigTemporalDenoiseEnable</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Query / set the state of the temporal denoising function of the camera. This is only applicable
|
|
whilst the camera is producing images in the Broadcom-specific format
|
|
or YUV420.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigTimeInvalidStartTime"><h2>Invalid Start Times</h2></a>
|
|
<tt>OMX_IndexConfigTimeInvalidStartTime</tt><br>
|
|
Used by: <a href="clock.html">clock</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_TIME_CONFIG_TIMESTAMPTYPE</tt><p>
|
|
|
|
This allows clock clients to supply a start time notification to the
|
|
clock whilst indicating that this time is invalid.<p>
|
|
|
|
<a name="OMX_IndexConfigTransitionControl"><h2>Transition Control</h2></a>
|
|
<tt>OMX_IndexConfigTransitionControl</tt><br>
|
|
Used by: <a href="transition.html">transition</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_TRANSITIONCONTROLTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nPosStart;
|
|
OMX_U32 nPosEnd;
|
|
OMX_S32 nPosIncrement;
|
|
OMX_TICKS nFrameIncrement;
|
|
OMX_BOOL bSwapInputs;
|
|
OMX_U8 name[16];
|
|
OMX_U8 property[64];
|
|
} OMX_CONFIG_TRANSITIONCONTROLTYPE;</pre><p>
|
|
This structure represents the internal configuration of the
|
|
transition. Transitions are generated by a loadable plug-in described
|
|
by the <tt>name</tt> field. The component appends <tt>"_tran.vll"</tt> to
|
|
the name provided, and attempts to load a transition library contained
|
|
in this VLL. The exact type of transition is configured in a
|
|
plug-in-dependent manner with the <tt>property</tt> field. All plug-ins
|
|
should accept a <tt>property</tt> field equal to
|
|
<tt>"flags=<number>"</tt>, where <tt><number></tt> can be a random 32 bit
|
|
number. If <tt>bSwapInputs</tt> is false, then the start image is on
|
|
port 210, the stop image on port 211. These are reversed if
|
|
<tt>bSwapInputs</tt> is true.
|
|
|
|
Transition frames are generated from the plug-in by referencing a
|
|
frame position in [0,65536], where position 0 is the start image,
|
|
position 65536 is the stop image. The first frame position generated
|
|
is <tt>nPosStart</tt>. The last frame position generated is
|
|
<tt>nPosEnd</tt>. Each frame will increment the position by
|
|
<tt>nPosIncrement</tt>. The timestamp attached to each frame will
|
|
increment by <tt>nFrameIncrement</tt>.<p>
|
|
|
|
<a name="OMX_IndexConfigUserSettingsId"><h2>Frame identification</h2></a>
|
|
<tt>OMX_IndexConfigUserSettingsId</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_U8TYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U8 nU8;
|
|
} OMX_PARAM_U8TYPE;
|
|
</pre><p>
|
|
Sets an identifier to be set on the start of the next frame. Gets the identifier seen on the last frame from Camplus.
|
|
This allows a client to identify when a group of settings have all
|
|
been applied to Camplus (apply settings, change
|
|
<tt>OMX_IndexConfigUserSettingsId</tt>, wait for value read back from
|
|
<tt>OMX_IndexConfigUserSettingsId</tt> to change to match).
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>Size of this structure, in Bytes
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
<dt><tt>nU8</tt><dd>U8 value
|
|
</dl>
|
|
<a name="OMX_IndexConfigVideoColourDenoiseEnable"><h2>Configure video colour denoise</h2></a>
|
|
<tt>OMX_IndexConfigVideoColourDenoiseEnable</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Query / set the state of the video colour denoising function of the camera. This is only applicable
|
|
whilst the camera is producing images in the Broadcom-specific format
|
|
or YUV420.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexConfigVisualisation"><h2>Visualisation Mode</h2></a>
|
|
<tt>OMX_IndexConfigVisualisation</tt><br>
|
|
Used by: <a href="visualisation.html">visualisation</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_VISUALISATIONTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U8 name[16];
|
|
OMX_U8 property[64];
|
|
} OMX_CONFIG_VISUALISATIONTYPE;</pre><p>
|
|
<tt>name</tt> is a string of characters specifying the type of
|
|
visualization. The component appends <tt>"_vis.vll"</tt> to the name
|
|
provided, and attempts to load a visualisation library contained in
|
|
this VLL. <tt>property</tt> contains configuration parameters and
|
|
values, which is interpreted by the visualisation library. Typically
|
|
all visualisations will accept a property string containing
|
|
<tt>'mode=<number>'</tt>, where <tt><number></tt> may be a random 32 bit
|
|
integer in decimal format. If provided, this may select a random mode
|
|
from that visualisation library.<p>
|
|
|
|
<a name="OMX_IndexConfigWaitForFocusBeforeCapture"><h2>Wait for focus before capture</h2></a>
|
|
<tt>OMX_IndexConfigWaitForFocusBeforeCapture</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Query / set whether the camera component will ensure that the camera module has reported the lens
|
|
back at the focused position before stopping capturing with the
|
|
OneShot flag set. This may lead to multiple complete images being
|
|
emitted from the capture port, and any receiving component/client
|
|
should be prepared for this.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamAudioDdp"><h2>Query / set the DDP format of this port</h2></a>
|
|
<tt>OMX_IndexParamAudioDdp</tt><br>
|
|
Used by: <a href="audio_decode.html">audio_decode</a>, <a href="audio_render.html">audio_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_AUDIO_PARAM_DDPTYPE</tt><p>
|
|
|
|
<tt>nSamplingRate</tt> must be 32000, 44100 or 48000.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamAudioDts"><h2>Query / set the DTS format of this port</h2></a>
|
|
<tt>OMX_IndexParamAudioDts</tt><br>
|
|
Used by: <a href="audio_decode.html">audio_decode</a>, <a href="audio_render.html">audio_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_AUDIO_PARAM_DTSTYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmAlignHoriz"><h2>Query / set the horizonal alignment of the output buffer to be a given multiple of bytes in width</h2></a>
|
|
<tt>OMX_IndexParamBrcmAlignHoriz</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a>, <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Setting this to anything other than the default of 32 may have a negative impact of performance
|
|
because the input buffer may need to be re-pitched before it is encoded. Supported values
|
|
are 32 or 1 (no padding).
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmAlignVert"><h2>Query / set the vertical alignment of the output buffer to be a given multiple of rows in height</h2></a>
|
|
<tt>OMX_IndexParamBrcmAlignVert</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a>, <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Setting this to anything other than the default of 16 may have a negative impact of performance
|
|
because the input buffer may need to be re-pitched before it is encoded. Supported values
|
|
are 16 or 1 (no padding).
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmAllowMemChange"><h2>Allowing changing memory allocation on state transition</h2></a>
|
|
<tt>OMX_IndexParamBrcmAllowMemChange</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMALLOWMEMCHANGETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_BOOL bEnable;
|
|
} OMX_PARAM_BRCMALLOWMEMCHANGETYPE;</pre><p>
|
|
Let the component change the amount of memory it has allocated when
|
|
going from LOADED to IDLE. By default this is enabled, but if it is
|
|
disabled the component will fail to transition to IDLE if the
|
|
component requires more memory than has already been allocated. This
|
|
might occur if (for example) the component was configured, taken to
|
|
IDLE, then taken back to LOADED, the profile increased and the
|
|
component taken back to IDLE.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmAttachLog"><h2>Sets whether to attach log data to the encoded file or not</h2></a>
|
|
<tt>OMX_IndexParamBrcmAttachLog</tt><br>
|
|
Used by: <a href="image_encode.html">image_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmBayerOrder"><h2>Bayer order</h2></a>
|
|
<tt>OMX_IndexParamBrcmBayerOrder</tt><br>
|
|
Used by: <a href="isp.html">isp</a>, <a href="rawcam.html">rawcam</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_BAYERORDERTYPE {
|
|
OMX_BayerOrderRGGB = 0,
|
|
OMX_BayerOrderGBRG = 1,
|
|
OMX_BayerOrderBGGR = 2,
|
|
OMX_BayerOrderGRBG = 3,
|
|
|
|
OMX_BayerOrderMax = 0x7FFFFFFF
|
|
} OMX_BAYERORDERTYPE;
|
|
|
|
typedef struct OMX_PARAM_BAYERORDERTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
|
|
OMX_U32 nPortIndex;
|
|
OMX_BAYERORDERTYPE eBayerOrder;
|
|
} OMX_PARAM_BAYERORDERTYPE;</pre><p>
|
|
The IL standard does not support a way to specify the Bayer order of Bayer images.
|
|
This control adds that missing functionality.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmBlackLevel"><h2>Manual black level parameters.</h2></a>
|
|
<tt>OMX_IndexParamBrcmBlackLevel</tt><br>
|
|
Used by: <a href="isp.html">isp</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_BLACKLEVELTYPE</tt><p>
|
|
|
|
Configures the black level within the ISP pipeline.<p>
|
|
|
|
<dl>
|
|
<dt><tt>bEnabled</tt><dd>Enable black level subtraction
|
|
<dt><tt>nBlackLevelR</tt><dd>Black level of red channel
|
|
<dt><tt>nBlackLevelG</tt><dd>Black level of green channel
|
|
<dt><tt>nBlackLevelB</tt><dd>Black level of blue channel
|
|
<dt><tt>nBitDepth</tt><dd>Bit depth - refer to comments in code where used
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmCRC"><h2>Query for the latest CRC for input data on this port</h2></a>
|
|
<tt>OMX_IndexParamBrcmCRC</tt><br>
|
|
Used by: <a href="null_sink.html">null_sink</a>, <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmCRCEnable"><h2>Query / set whether this component should calcualte CRCs on output data</h2></a>
|
|
<tt>OMX_IndexParamBrcmCRCEnable</tt><br>
|
|
Used by: <a href="null_sink.html">null_sink</a>, <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Setting this index resets CRCs to zero. CRC calculation defaults to off.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmCameraInputAspectRatio"><h2>Sensor aspect ratio selection</h2></a>
|
|
<tt>OMX_IndexParamBrcmCameraInputAspectRatio</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMASPECTRATIOTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nWidth;
|
|
OMX_U32 nHeight;
|
|
} OMX_PARAM_BRCMASPECTRATIOTYPE;
|
|
</pre><p>
|
|
Query / set the preferred aspect ratio of the sensor CDI mode. The CDI will use the nearest value to this.
|
|
If both are left as 0, then the aspect ratio of the requested output
|
|
mode is used to bias the sensor mode selection.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmConfigFileChunkRegisters"><h2>Snensor config data</h2></a>
|
|
<tt>OMX_IndexParamBrcmConfigFileChunkRegisters</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMCONFIGFILECHUNKTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 size;
|
|
OMX_U32 offset;
|
|
OMX_U8 data[1];
|
|
} OMX_PARAM_BRCMCONFIGFILECHUNKTYPE;
|
|
</pre><p>
|
|
Specify a chunk of data for a register settings file.
|
|
<tt>OMX_IndexParamConfigFileRegisters</tt> must be called first.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>size of the structure in bytes, including
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>size</tt><dd>Number of bytes being transferred in this chunk
|
|
<dt><tt>offset</tt><dd>Offset of this chunk in the file
|
|
<dt><tt>data</tt><dd>Chunk data
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmConfigFileRegisters"><h2>Sensor config override</h2></a>
|
|
<tt>OMX_IndexParamBrcmConfigFileRegisters</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMCONFIGFILETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 fileSize;
|
|
} OMX_PARAM_BRCMCONFIGFILETYPE;
|
|
</pre><p>
|
|
Specify a register settings file to use instead of hard-coded defaults.
|
|
If a file is to be used, <tt>OMX_IndexParamUseRegisterFile</tt> must be set.
|
|
This requires support from the underlying sensor driver.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>size of the structure in bytes, including
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>fileSize</tt><dd>Size of complete file data
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmDataUnit"><h2>Data Unit</h2></a>
|
|
<tt>OMX_IndexParamBrcmDataUnit</tt><br>
|
|
Used by: <a href="audio_decode.html">audio_decode</a>, <a href="audio_encode.html">audio_encode</a>, <a href="video_decode.html">video_decode</a>, <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_DATAUNITTYPE</tt><p>
|
|
|
|
The data unit is an indication to components connected to this
|
|
component of the type of data delivery available.
|
|
<tt>OMX_DataUnitCodedPicture</tt> indicates that we are able to give
|
|
framing information, using the <tt>OMX_BUFFERFLAG_ENDOFFRAME</tt> flag to
|
|
indicate that the data contained finishes a complete
|
|
frame. <tt>OMX_DataUnitArbitraryStreamSection</tt> indicates that no
|
|
end-of-frame markers will be present, and the decoder should perform
|
|
the steps necessary to decode the stream. The other enum values are
|
|
not used.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmDisableEXIF"><h2>Disable generation of EXIF data</h2></a>
|
|
<tt>OMX_IndexParamBrcmDisableEXIF</tt><br>
|
|
Used by: <a href="image_encode.html">image_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This parameter is used by clients to control the generation of exif
|
|
data in JPEG images.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmDisableProprietaryTunnels"><h2>Disabling proprietary tunnelling</h2></a>
|
|
<tt>OMX_IndexParamBrcmDisableProprietaryTunnels</tt><br>
|
|
Used by: <a href="camera.html">camera</a>, <a href="video_decode.html">video_decode</a>, <a href="video_scheduler.html">video_scheduler</a>, <a href="video_splitter.html">video_splitter</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMDISABLEPROPRIETARYTUNNELSTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bUseBuffers;
|
|
} OMX_PARAM_BRCMDISABLEPROPRIETARYTUNNELSTYPE;</pre><p>
|
|
Tell a source component to refuse to support proprietary tunnelling. Buffers will be used instead.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmDroppablePFrames"><h2>Require the encoder to select alternate PFrames as not droppable PFrames</h2></a>
|
|
<tt>OMX_IndexParamBrcmDroppablePFrames</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This uses the standard code (OMX_CONFIG_BOOLEANTYPE) structure.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmEEDEEnable"><h2>Enable/Disable end to end distortion estimator</h2></a>
|
|
<tt>OMX_IndexParamBrcmEEDEEnable</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_VIDEO_EEDE_ENABLE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 enable;
|
|
} OMX_VIDEO_EEDE_ENABLE;</pre><p>
|
|
This enables or disables the use of end to end distortion estimation.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmEEDELossRate"><h2>Loss rate configuration for end to end distortion</h2></a>
|
|
<tt>OMX_IndexParamBrcmEEDELossRate</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_VIDEO_EEDE_LOSSRATE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 loss_rate;
|
|
} OMX_VIDEO_EEDE_LOSSRATE;</pre><p>
|
|
Set the packet loss rate used by the end to end distortion estimator.<p>
|
|
|
|
<dl>
|
|
<dt><tt>loss_rate</tt><dd>loss rate, 5 means 5%
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmEnableIJGTableScaling"><h2>JPEG Quality Table Setting.</h2></a>
|
|
<tt>OMX_IndexParamBrcmEnableIJGTableScaling</tt><br>
|
|
Used by: <a href="image_encode.html">image_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_IJGSCALINGTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnabled;
|
|
} OMX_PARAM_IJGSCALINGTYPE;</pre><p>
|
|
The boolean <tt>bEnabled</tt> value determines whether the component uses
|
|
the standard IJG quality tables when encoding images.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmExtraBuffers"><h2>Sets the number of buffers to allocate beyond the number determined by the codec</h2></a>
|
|
<tt>OMX_IndexParamBrcmExtraBuffers</tt><br>
|
|
Used by: <a href="image_fx.html">image_fx</a>, <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This defaults to 2 (one on the display, one in the video scheduler) but it may
|
|
sometimes be necessary to increase this.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmFlushCallbackId"><h2>Specifies a user callback for flush notification</h2></a>
|
|
<tt>OMX_IndexParamBrcmFlushCallbackId</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This parameter allows internal users of RIL components to request a callback
|
|
when a flush has completed on the output port. This is useful in proprietary
|
|
tunnelling mode where there is no other way for the user to know when the
|
|
output port has been flushed.
|
|
The component will perform a callback with the given <tt>nU32</tt> as the
|
|
callback id.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmFpsRange"><h2>Allows a variable frame rate range to be defined</h2></a>
|
|
<tt>OMX_IndexParamBrcmFpsRange</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMFRAMERATERANGETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 xFramerateLow;
|
|
OMX_U32 xFramerateHigh;
|
|
} OMX_PARAM_BRCMFRAMERATERANGETYPE;
|
|
</pre><p>
|
|
Used if xFramerate in the port definition is 0.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>size of the structure in bytes, including
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>xFramerateLow</tt><dd>Low end of framerate range. Q16 format
|
|
<dt><tt>xFramerateHigh</tt><dd>High end of framerate range. Q16 format
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmHeaderOnOpen"><h2>Header production control</h2></a>
|
|
<tt>OMX_IndexParamBrcmHeaderOnOpen</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Query / set whether this component should output the header immediately on opening the codec,
|
|
before any input images have been received.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmImmutableInput"><h2>Require the encoder to not modify the input images</h2></a>
|
|
<tt>OMX_IndexParamBrcmImmutableInput</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This uses the standard <tt>OMX_CONFIG_BOOLEANTYPE</tt> structure. If set to <tt>OMX_TRUE</tt>, the encoder
|
|
will not modify the input images. Only relevant when using proprietary tunnels.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmInterpolateMissingTimestamps"><h2>Configure component to interpolate missing timestamps</h2></a>
|
|
<tt>OMX_IndexParamBrcmInterpolateMissingTimestamps</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Configures a component so that it tries to timestamp all the buffers it outputs.
|
|
If the timestamp information is missing from the original buffer, the
|
|
component will try its best to interpolate a value for the missing timestamp.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmIspBlockOverride"><h2>Disables ISP blocks</h2></a>
|
|
<tt>OMX_IndexParamBrcmIspBlockOverride</tt><br>
|
|
Used by: <a href="camera.html">camera</a>, <a href="isp.html">isp</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Query / set a bitmask that can disable ISP processing blocks.
|
|
Blocks can NOT be enabled if they haven't been configured in the tuning.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmJpegRestartInterval"><h2>Sets the JPEG restart interval</h2></a>
|
|
<tt>OMX_IndexParamBrcmJpegRestartInterval</tt><br>
|
|
Used by: <a href="image_encode.html">image_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmLazyImagePoolDestroy"><h2>The image pool will be deleted lazily, i</h2></a>
|
|
<tt>OMX_IndexParamBrcmLazyImagePoolDestroy</tt><br>
|
|
Used by: <a href="image_fx.html">image_fx</a>, <a href="camera.html">camera</a>, <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
e. we will not wait for the images to be returned from the pool, but instead rely on the image pool tidying itself
|
|
up automatically when all references are released.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmLensShadingOverride"><h2>Override or set a lens shading table.</h2></a>
|
|
<tt>OMX_IndexParamBrcmLensShadingOverride</tt><br>
|
|
Used by: <a href="camera.html">camera</a>, <a href="isp.html">isp</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_LENSSHADINGOVERRIDETYPE</tt><p>
|
|
|
|
Allows the lens shading grid to be set.
|
|
Configuration is based on a similar system to the OMAP3 ISP.
|
|
A grid of gains is required for each of the 4 Bayer channels, with each value covering
|
|
a nGridCellSize square of pixels.
|
|
nWidth and nHeight should be equal or greater than the sensor resolution. In the
|
|
case of the camera component, the firmware will crop the table based on the preconfigured
|
|
mode set. nStride allows additional horizontal padding to be including in the table.
|
|
nMemHandleTable needs to be set to a MEM_HANDLE_T, allocated via VC-SM or similar allocator.
|
|
nRefTransform should be set to the transform in force when the reference table was
|
|
captured. This allows correct compensation when the sensor is subsequently used with
|
|
an alternate transform.<p>
|
|
|
|
<dl>
|
|
<dt><tt>bEnabled</tt><dd>Enable the override grid
|
|
<dt><tt>nGridCellSize</tt><dd>size of each grid element. Assumes square grid
|
|
<dt><tt>nWidth</tt><dd>grid width
|
|
<dt><tt>nStride</tt><dd>grid stride (allows for padding) in *samples* (not bytes)
|
|
<dt><tt>nHeight</tt><dd>grid height
|
|
<dt><tt>nMemHandleTable</tt><dd>Handle for grid
|
|
<dt><tt>nRefTransform</tt><dd>Reference transform taken from raw header
|
|
<dt><tt>bCornerSampled</tt><dd>Are grids sampled at cell corners, or centres
|
|
<dt><tt>eLsGainFormat</tt><dd>Format of the gain tables
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmMaxCorruptMBs"><h2>Sets the maximum number of corrupt macroblocks allowed</h2></a>
|
|
<tt>OMX_IndexParamBrcmMaxCorruptMBs</tt><br>
|
|
Used by: <a href="null_sink.html">null_sink</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
The default value is zero.
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmMaxFrameSkips"><h2>Frame timestamp jumps</h2></a>
|
|
<tt>OMX_IndexParamBrcmMaxFrameSkips</tt><br>
|
|
Used by: <a href="null_sink.html">null_sink</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This number represents the number of times a jump in frame timestamps
|
|
has been observed that is greater than expected.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmMaxNumCallbacks"><h2>Codec callback limit.</h2></a>
|
|
<tt>OMX_IndexParamBrcmMaxNumCallbacks</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
The codec can queue up a significant number of frames internally if the sink is
|
|
not consuming the output fast enough. This control limits the number of frames
|
|
that can be queued up.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmNALSSeparate"><h2>Force NALs to come out in separate buffers</h2></a>
|
|
<tt>OMX_IndexParamBrcmNALSSeparate</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
With this enabled, those encoders that support it will produce NALs in separate OMX buffers.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmPixelAspectRatio"><h2>Query / set the pixel aspect ratio of the source content</h2></a>
|
|
<tt>OMX_IndexParamBrcmPixelAspectRatio</tt><br>
|
|
Used by: <a href="null_sink.html">null_sink</a>, <a href="video_decode.html">video_decode</a>, <a href="video_decode.html">video_decode</a>, <a href="video_encode.html">video_encode</a>, <a href="video_render.html">video_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_POINTTYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmPixelValueRange"><h2>Describing the pixel value range</h2></a>
|
|
<tt>OMX_IndexParamBrcmPixelValueRange</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_BRCMPIXELVALUERANGETYPE
|
|
{
|
|
OMX_PixelValueRangeUnspecified = 0,
|
|
OMX_PixelValueRangeITU_R_BT601,
|
|
OMX_PixelValueRangeFull8Bit,
|
|
OMX_PixelValueRangeKhronosExtensions = 0x6F000000,
|
|
OMX_PixelValueRangeVendorStartUnused = 0x7F000000,
|
|
OMX_PixelValueRangeMax = 0x7FFFFFFF
|
|
} OMX_BRCMPIXELVALUERANGETYPE;
|
|
|
|
typedef struct OMX_PARAM_BRCMPIXELVALUERANGETYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BRCMPIXELVALUERANGETYPE ePixelValueRange;
|
|
} OMX_PARAM_BRCMPIXELVALUERANGETYPE;</pre><p>
|
|
This structure allows a description of the range that pixel values may
|
|
have. This is typically useful since some standards use the full 8
|
|
bit range, whereas others introduce pedastals which reduce the range
|
|
at the top and bottom end.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmRetainMemory"><h2>Controlling memory use on state transition</h2></a>
|
|
<tt>OMX_IndexParamBrcmRetainMemory</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMRETAINMEMORYTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_BOOL bEnable;
|
|
} OMX_PARAM_BRCMRETAINMEMORYTYPE;</pre><p>
|
|
Ask a component to retain its memory when going from IDLE to LOADED, if possible.
|
|
This has the benefit that you are then guaranteed that the transition to IDLE cannot
|
|
fail due to lack of memory, but has the disadvantage that you cannot leave the component
|
|
lying around in LOADED, unused, since it is using significant amounts of memory.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmSetCodecPerformanceMonitoring"><h2>Configure component to output performance statistics</h2></a>
|
|
<tt>OMX_IndexParamBrcmSetCodecPerformanceMonitoring</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Configures a codec component so that it outputs performance statistics to
|
|
the given DECODE_PROGRESS_REPORT_T structure (passed as a pointer).
|
|
This structure can then be read by the client to find out where the codec is
|
|
at in its processing.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmStereoscopicMode"><h2>Stereoscopic camera support</h2></a>
|
|
<tt>OMX_IndexParamBrcmStereoscopicMode</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_BRCMSTEREOSCOPICMODETYPE {
|
|
OMX_STEREOSCOPIC_NONE = 0,
|
|
OMX_STEREOSCOPIC_SIDEBYSIDE = 1,
|
|
OMX_STEREOSCOPIC_TOPBOTTOM = 2,
|
|
OMX_STEREOSCOPIC_MAX = 0x7FFFFFFF,
|
|
} OMX_BRCMSTEREOSCOPICMODETYPE;
|
|
|
|
typedef struct OMX_CONFIG_BRCMSTEREOSCOPICMODETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
|
|
OMX_U32 nPortIndex;
|
|
OMX_BRCMSTEREOSCOPICMODETYPE eMode;
|
|
OMX_BOOL bDecimate;
|
|
(pixel aspect ratio = 1:2 or 2:1 if set. 1:1 if not set) */
|
|
OMX_BOOL bSwapEyes;
|
|
} OMX_CONFIG_BRCMSTEREOSCOPICMODETYPE;</pre><p>
|
|
This control sets up how stereoscopic images should be generated.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
<dt><tt>eMode</tt><dd>Packing mode
|
|
<dt><tt>bDecimate</tt><dd>Half/half mode
|
|
<dt><tt>bSwapEyes</tt><dd>False = left eye first. True = right eye first.
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmSupportsSlices"><h2>Sliced processing support</h2></a>
|
|
<tt>OMX_IndexParamBrcmSupportsSlices</tt><br>
|
|
Used by: <a href="resize.html">resize</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_PORTBOOLEANTYPE</tt><p>
|
|
|
|
Mainly used by the MMAL framework.
|
|
Some components support an nSliceHeight value of 16, to allow images
|
|
to be passed in multiple chunks. All will support an nSliceHeight >=
|
|
nFrameHeight (with some extra constraints).
|
|
If a component supports nSliceHeight of 16, then it will respond to
|
|
OMX_GetParameter on this index with no error and bEnabled set to OMX_TRUE.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmSupportsUnalignedSliceheight"><h2>Unaligned nSliceHeight support</h2></a>
|
|
<tt>OMX_IndexParamBrcmSupportsUnalignedSliceheight</tt><br>
|
|
Used by: <a href="hvs.html">hvs</a>, <a href="isp.html">isp</a>, <a href="video_render.html">video_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_PORTBOOLEANTYPE</tt><p>
|
|
|
|
Most components require an nSliceHeight value which is a multiple of 16, but
|
|
some components accepting any value >= nFrameHeight. Those ports/components will
|
|
respond to OMX_GetParameter on this index with no error and bEnabled set to OMX_TRUE.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmThreadAffinity"><h2>Control the CPU affinity of component thread(s)</h2></a>
|
|
<tt>OMX_IndexParamBrcmThreadAffinity</tt><br>
|
|
Used by: <a href="null_sink.html">null_sink</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_BRCMTHREADAFFINITYTYPE {
|
|
OMX_BrcmThreadAffinityCPU0,
|
|
OMX_BrcmThreadAffinityCPU1,
|
|
OMX_BrcmThreadAffinityMax = 0x7FFFFFFF
|
|
} OMX_BRCMTHREADAFFINITYTYPE;
|
|
|
|
typedef struct OMX_PARAM_BRCMTHREADAFFINITYTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_BRCMTHREADAFFINITYTYPE eAffinity;
|
|
} OMX_PARAM_BRCMTHREADAFFINITYTYPE;</pre><p>
|
|
This parameter is used by clients to hint the CPU that a component thread should run on.<p>
|
|
|
|
<dl>
|
|
<dt><tt>eAffinity</tt><dd>Thread CPU affinity
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmThumbnail"><h2>Control generation of thumbnail</h2></a>
|
|
<tt>OMX_IndexParamBrcmThumbnail</tt><br>
|
|
Used by: <a href="image_encode.html">image_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMTHUMBNAILTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_BOOL bEnable;
|
|
OMX_BOOL bUsePreview;
|
|
OMX_U32 nWidth;
|
|
OMX_U32 nHeight;
|
|
} OMX_PARAM_BRCMTHUMBNAILTYPE;</pre><p>
|
|
This parameter is used by clients to control how thumbnails are
|
|
generated when creating still images.
|
|
|
|
Thumbnail generation will be turned on or off depending on the
|
|
<tt>bEnable</tt> field.
|
|
|
|
The <tt>bUsePreview</tt> field will let the component know whether it
|
|
should use the low resolution preview image (if the component has one
|
|
available) as is for the thumbnail. When this is set to true, it should
|
|
make the generation of thumbnails faster (if a preview image is available)
|
|
and should use less memory as well.
|
|
|
|
The <tt>nWidth</tt> and <tt>nHeight</tt> fields allow the client to
|
|
specify the dimensions of the thumbnail. If both <tt>nWidth</tt> and
|
|
<tt>nHeight</tt> are 0, we will calculate a sensible size for the
|
|
thumbnail.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>Size of this structure, in Bytes
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>bEnable</tt><dd>Enable generation of thumbnails during still capture
|
|
<dt><tt>bUsePreview</tt><dd>Use the preview image (as is) as thumbnail
|
|
<dt><tt>nWidth</tt><dd>Desired width of the thumbnail
|
|
<dt><tt>nHeight</tt><dd>Desired height of the thumbnail
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmTimeScale"><h2>Query / set the speed control for the input ports</h2></a>
|
|
<tt>OMX_IndexParamBrcmTimeScale</tt><br>
|
|
Used by: <a href="audio_mixer.html">audio_mixer</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This controls the dynamic resampling rate. Parameter is a 16.16 fixed point scale factor.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmTransposeBufferCount"><h2>Configure the number of pre-allocated transpose buffers</h2></a>
|
|
<tt>OMX_IndexParamBrcmTransposeBufferCount</tt><br>
|
|
Used by: <a href="video_render.html">video_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This config allows the client to explicitly set the number of destination buffers pre-allocated for
|
|
ports that support 90/270 degree rotation (e.g. in video_render). The buffers will be pre-allocated during
|
|
a state transition from LOADED to IDLE (the transition will fail if there is not enough memory available
|
|
for the buffers).
|
|
.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoAVCInlineHeaderEnable"><h2>Enable SPS/PPS insertion in the encoder bitstream</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoAVCInlineHeaderEnable</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_PORTBOOLEANTYPE{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnabled;
|
|
} OMX_CONFIG_PORTBOOLEANTYPE;
|
|
</pre><p>
|
|
If this property is set then SPS/PPS will be output before each IDR frame or P=intrarefresh frame.
|
|
Whilst designated as a Param, this property can now be changed while the component
|
|
and/or port is executing. The setting will be forwarded on to the codec to take
|
|
effect after the next IDR or P=intrarefresh frame.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoAVCInlineVectorsEnable"><h2>Enable insertion of vectors into the bitstream</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoAVCInlineVectorsEnable</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_PORTBOOLEANTYPE{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnabled;
|
|
} OMX_CONFIG_PORTBOOLEANTYPE;
|
|
</pre><p>
|
|
Will be added with flags so it is possible to identify the data in the stream
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoAVCSEIEnable"><h2>Enable/disable SEI messages</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoAVCSEIEnable</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMVIDEOAVCSEIENABLETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnable;
|
|
} OMX_PARAM_BRCMVIDEOAVCSEIENABLETYPE;
|
|
</pre><p>
|
|
Enable or disable Supplemental Enhancement Information (SEI) messages to be inserted in the H.264 bitstream.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoAVCSPSTimingEnable"><h2>Enable the insertion of timing information into the SPS based on the specified output port frame rate</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoAVCSPSTimingEnable</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_PORTBOOLEANTYPE{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnabled;
|
|
} OMX_CONFIG_PORTBOOLEANTYPE;
|
|
</pre><p>
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoAVC_LowDelayHRDEnable"><h2>Enable/Disable setting low_delay_hrd flag in H</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoAVC_LowDelayHRDEnable</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_PORTBOOLEANTYPE{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnabled;
|
|
} OMX_CONFIG_PORTBOOLEANTYPE;
|
|
</pre><p>
|
|
264 header. "big_pictures" that violate the nominal CPB removal times due to the number of bits used by an access unit are permitted when the flag is set.
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoAVC_VCLHRDEnable"><h2>Enable/disable VCL HRD parameters to be inserted to the H</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoAVC_VCLHRDEnable</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_PORTBOOLEANTYPE{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnabled;
|
|
} OMX_CONFIG_PORTBOOLEANTYPE;
|
|
</pre><p>
|
|
264 SPS header
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoDecodeConfigVD3"><h2>VDec3 configuration.</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoDecodeConfigVD3</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMVIDEODECODECONFIGVD3TYPE {
|
|
OMX_U32 nSize;
|
|
configuration data */
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U8 config[1];
|
|
} OMX_PARAM_BRCMVIDEODECODECONFIGVD3TYPE;</pre><p>
|
|
Codec specific configuration block to set up internal state in a non-standard manner.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>size of the structure in bytes, including
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>config</tt><dd>Configuration data (a VD3_CONFIGURE_T)
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmVideoDecodeErrorConcealment"><h2>Control error concealment for video decode</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoDecodeErrorConcealment</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMVIDEODECODEERRORCONCEALMENTTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_BOOL bStartWithValidFrame;
|
|
} OMX_PARAM_BRCMVIDEODECODEERRORCONCEALMENTTYPE;</pre><p>
|
|
This parameter is used by clients to control the type of error concealment
|
|
that will be done by the video decoder.<p>
|
|
|
|
<dl>
|
|
<dt><tt>bStartWithValidFrame</tt><dd>Decoder will only start emitting frames from a non-corrupted frame
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmVideoDrmProtectBuffer"><h2>DRM buffer protection</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoDrmProtectBuffer</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_BRCMVIDEODRMPROTECTBUFFERTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
|
|
OMX_U32 size_wanted;
|
|
OMX_U32 protect;
|
|
|
|
OMX_U32 mem_handle;
|
|
OMX_PTR phys_addr;
|
|
} OMX_PARAM_BRCMVIDEODRMPROTECTBUFFERTYPE;
|
|
</pre><p>
|
|
Query to request that a memory buffer be allocated for protected video decode, and the fields
|
|
in a shared memory region be filled in to request protection from the hardware. Set to indicate
|
|
that the previous protection request has been processed.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>size_wanted</tt><dd>Input. Zero size means internal video decoder buffer,
|
|
<dt><tt>protect</tt><dd>Input. 1 = protect, 0 = unprotect
|
|
<dt><tt>mem_handle</tt><dd>Output. Handle for protected buffer
|
|
<dt><tt>phys_addr</tt><dd>Output. Physical memory address of protected buffer
|
|
</dl>
|
|
<a name="OMX_IndexParamBrcmVideoEGLRenderDiscardMode"><h2>Boolean parameter to enable/disable EGL discard mode</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoEGLRenderDiscardMode</tt><br>
|
|
Used by: <a href="egl_render.html">egl_render</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_PORTBOOLEANTYPE{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_BOOL bEnabled;
|
|
} OMX_CONFIG_PORTBOOLEANTYPE;
|
|
</pre><p>
|
|
With discard mode enabled (default), EGL render will only buffer up to one image. If a new image is
|
|
received while an image is waiting to be processed, the old image will be
|
|
dropped. With discard mode disabled, 32 VC images (used in tunnelled mode) can
|
|
be buffered. Once the buffer is full, the upstream component is notified and
|
|
should attempt to send the image again later. Non-discard mode only applies to
|
|
the tunnelled case (it does not apply when called internally).
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoEncodeMaxQuant"><h2>Query / set the codec's maximum quantization level</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoEncodeMaxQuant</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoEncodeMinQuant"><h2>Query / set the codec's minimum quantization level</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoEncodeMinQuant</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoEncodeQpP"><h2>EncodeQP control</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoEncodeQpP</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Query / set the codec's P Frame QP if different from I-frames and rate control is disabled
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoFrameLimitBits"><h2>Query / set the codec's frame limit in bits (used in RC) </h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoFrameLimitBits</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoInitialQuant"><h2>Query / set the codec's initial quantization level</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoInitialQuant</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoPeakRate"><h2>Query / set the codec's peak rate (used in RC)</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoPeakRate</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoPrecodeForQP"><h2>Pre-code 1st frame for QP.</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoPrecodeForQP</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This control selects a pre-encode of the first frame to set up a better initial QP value.<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoRCSliceDQuant"><h2>Query / set the codec's Slice DQuant level</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoRCSliceDQuant</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamBrcmVideoTimestampFifo"><h2>Video timestamp FIFO mode.</h2></a>
|
|
<tt>OMX_IndexParamBrcmVideoTimestampFifo</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
When enabled, the timestamp fifo mode will change the way
|
|
incoming timestamps are associated with output images so the incoming timestamps
|
|
get used without re-ordering on output images.<p>
|
|
|
|
<a name="OMX_IndexParamCameraCamplusId"><h2>Camera Subsystem Identification</h2></a>
|
|
<tt>OMX_IndexParamCameraCamplusId</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This parameter allows the configuration of the identifier to be used
|
|
to initialise the Broadcom Camplus subsystem that sits beneath the
|
|
camera component. If only one instance of the camera component is
|
|
used, the default value can be used. If more than one instance is
|
|
required, they must each have their own unique values for this
|
|
parameter. It is also used to tie the component to the image pool
|
|
created with <tt>OMX_Set upCamPools</tt>.<p>
|
|
|
|
<a name="OMX_IndexParamCameraCaptureEventFunction"><h2>Capture start event callback</h2></a>
|
|
<tt>OMX_IndexParamCameraCaptureEventFunction</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CAMERACAPTUREEVENTFUNCTIONTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_PTR pPrivate;
|
|
RIL_CAMERA_CAPTURE_EVENT_FUNC_T pCaptureFunc;
|
|
} OMX_PARAM_CAMERACAPTUREEVENTFUNCTIONTYPE;</pre><p>
|
|
This parameter is used to pass a callback to the camera component
|
|
which is called when a capture is started.<p>
|
|
|
|
<a name="OMX_IndexParamCameraCaptureMode"><h2>Camera Capture Mode</h2></a>
|
|
<tt>OMX_IndexParamCameraCaptureMode</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CAMERACAPTUREMODETYPE{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_CAMERACAPTUREMODETYPE eMode;
|
|
} OMX_PARAM_CAMERACAPTUREMODETYPE;
|
|
</pre><p>
|
|
Allows the client to specify the behaviour desired for stills captures.
|
|
Options are:
|
|
<tt>OMX_CameraCaptureModeWaitForCaptureEnd</tt>:
|
|
Wait for capture to complete before resuming viewfinder.
|
|
<tt>OMX_CameraCaptureModeWaitForCaptureEndAndUsePreviousInputImage</tt>:
|
|
Reprocess the same input frame multiple times with different settings.
|
|
Currently not implemented in the Camplus levels.
|
|
<tt>OMX_CameraCaptureModeResumeViewfinderImmediately</tt>:
|
|
Resume viewfinder/video encode as soon as the input image for the still
|
|
has been acquired, and then process the still in a parallel thread. This
|
|
requires <tt>image_pool_params.eInputPoolMode</tt> to be set to
|
|
<tt>OMX_CAMERAIMAGEPOOLINPUTMODE_TWOPOOLS</tt>, and
|
|
<tt>image_pool_params.nNumHiResStillsFrames</tt>
|
|
to be non-zero, otherwise the image pools won't split in a manner that
|
|
allows viewfinder to be resumed.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamCameraClockingMode"><h2>Camera peripheral clocking mode</h2></a>
|
|
<tt>OMX_IndexParamCameraClockingMode</tt><br>
|
|
Used by: <a href="rawcam.html">rawcam</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CAMERACLOCKINGMODETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
|
|
OMX_U32 nPortIndex;
|
|
OMX_CAMERACLOCKINGMODETYPE eMode;
|
|
} OMX_PARAM_CAMERACLOCKINGMODETYPE;
|
|
</pre><p>
|
|
Set / query the clocking mode for the peripheral.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
<dt><tt>eMode</tt><dd>Clocking mode
|
|
</dl>
|
|
<a name="OMX_IndexParamCameraCustomSensorConfig"><h2>Custom camera sensor configuration.</h2></a>
|
|
<tt>OMX_IndexParamCameraCustomSensorConfig</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This parameter is passed down to the camera sensor driver to be interpreted as a
|
|
request for a different configuration to normal. How the configuration varies is
|
|
sensor specific.<p>
|
|
|
|
<a name="OMX_IndexParamCameraDeviceNumber"><h2>Camera device selection .</h2></a>
|
|
<tt>OMX_IndexParamCameraDeviceNumber</tt><br>
|
|
Used by: <a href="camera.html">camera</a>, <a href="rawcam.html">rawcam</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Controls which camera driver, or camera peripheral, to use.<p>
|
|
|
|
<a name="OMX_IndexParamCameraDevicesPresent"><h2>Query the camera devices defined for this platform</h2></a>
|
|
<tt>OMX_IndexParamCameraDevicesPresent</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
The result is a bitmask indicating which cameras have been detected.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamCameraDisableAlgorithm"><h2>Disabling camera processing stages.</h2></a>
|
|
<tt>OMX_IndexParamCameraDisableAlgorithm</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_CAMERADISABLEALGORITHMTYPE {
|
|
OMX_CameraDisableAlgorithmFacetracking,
|
|
OMX_CameraDisableAlgorithmRedEyeReduction,
|
|
OMX_CameraDisableAlgorithmVideoStabilisation,
|
|
OMX_CameraDisableAlgorithmWriteRaw,
|
|
OMX_CameraDisableAlgorithmVideoDenoise,
|
|
OMX_CameraDisableAlgorithmStillsDenoise,
|
|
OMX_CameraDisableAlgorithmAntiShake,
|
|
OMX_CameraDisableAlgorithmImageEffects,
|
|
OMX_CameraDisableAlgorithmDarkSubtract,
|
|
OMX_CameraDisableAlgorithmDynamicRangeExpansion,
|
|
OMX_CameraDisableAlgorithmFaceRecognition,
|
|
OMX_CameraDisableAlgorithmFaceBeautification,
|
|
OMX_CameraDisableAlgorithmSceneDetection,
|
|
OMX_CameraDisableAlgorithmHighDynamicRange,
|
|
OMX_CameraDisableAlgorithmKhronosExtensions = 0x6F000000,
|
|
OMX_CameraDisableAlgorithmVendorStartUnused = 0x7F000000,
|
|
OMX_CameraDisableAlgorithmMax = 0x7FFFFFFF
|
|
} OMX_CAMERADISABLEALGORITHMTYPE;
|
|
|
|
typedef struct OMX_PARAM_CAMERADISABLEALGORITHMTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_CAMERADISABLEALGORITHMTYPE eAlgorithm;
|
|
OMX_BOOL bDisabled;
|
|
} OMX_PARAM_CAMERADISABLEALGORITHMTYPE;</pre><p>
|
|
Allows plugin algorithms to be disabled to save memory
|
|
within the camera component<p>
|
|
|
|
<a name="OMX_IndexParamCameraFlashType"><h2>Select flash type</h2></a>
|
|
<tt>OMX_IndexParamCameraFlashType</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_CAMERAFLASHTYPE {
|
|
OMX_CameraFlashDefault,
|
|
OMX_CameraFlashXenon,
|
|
OMX_CameraFlashLED,
|
|
OMX_CameraFlashNone,
|
|
OMX_CameraFlashKhronosExtensions = 0x6F000000,
|
|
OMX_CameraFlashVendorStartUnused = 0x7F000000,
|
|
OMX_CameraFlashMax = 0x7FFFFFFF
|
|
} OMX_CAMERAFLASHTYPE;
|
|
|
|
typedef struct OMX_PARAM_CAMERAFLASHTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_CAMERAFLASHTYPE eFlashType;
|
|
OMX_BOOL bRedEyeUsesTorchMode;
|
|
} OMX_PARAM_CAMERAFLASHTYPE;</pre><p>
|
|
This parameter allows the selection of xenon or LED flash devices
|
|
to be used with the currently selected camera. If that device is not
|
|
available, then the component will revert back to whatever flash
|
|
device is available for that camera.
|
|
<tt>bRedEyeUsesTorchMode</tt> allows the blinking for red eye reduction to
|
|
be switched between using the indicator mode, and the torch mode for the
|
|
flash driver.<p>
|
|
|
|
<a name="OMX_IndexParamCameraImagePool"><h2>Camera Image Pools</h2></a>
|
|
<tt>OMX_IndexParamCameraImagePool</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_CAMERAIMAGEPOOLINPUTMODETYPE {
|
|
OMX_CAMERAIMAGEPOOLINPUTMODE_ONEPOOL, /*All input images are allocated from one pool
|
|
Works for simple stills capture use cases
|
|
Can not be used with parallel stills capture
|
|
and video encode, as the pool will be sized for
|
|
capture or viewfinder, not both simultaneously.
|
|
The pool wouldn't divide sensibly in this mode
|
|
anyway.
|
|
*/
|
|
OMX_CAMERAIMAGEPOOLINPUTMODE_TWOPOOLS, /*All stills & video input images are allocated
|
|
from two separate pools.
|
|
This ensures that parallel capture can work, but
|
|
would consume more memory if used on a simple
|
|
stills capture use case.
|
|
*/
|
|
} OMX_CAMERAIMAGEPOOLINPUTMODETYPE;
|
|
|
|
typedef struct OMX_PARAM_CAMERAIMAGEPOOLTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nNumHiResVideoFrames;
|
|
OMX_U32 nHiResVideoWidth;
|
|
OMX_U32 nHiResVideoHeight;
|
|
OMX_COLOR_FORMATTYPE eHiResVideoType;
|
|
OMX_U32 nNumHiResStillsFrames;
|
|
OMX_U32 nHiResStillsWidth;
|
|
OMX_U32 nHiResStillsHeight;
|
|
OMX_COLOR_FORMATTYPE eHiResStillsType;
|
|
OMX_U32 nNumLoResFrames;
|
|
OMX_U32 nLoResWidth;
|
|
OMX_U32 nLoResHeight;
|
|
OMX_COLOR_FORMATTYPE eLoResType;
|
|
OMX_U32 nNumSnapshotFrames;
|
|
OMX_COLOR_FORMATTYPE eSnapshotType;
|
|
OMX_CAMERAIMAGEPOOLINPUTMODETYPE eInputPoolMode;
|
|
OMX_U32 nNumInputVideoFrames;
|
|
OMX_U32 nInputVideoWidth;
|
|
OMX_U32 nInputVideoHeight;
|
|
OMX_COLOR_FORMATTYPE eInputVideoType;
|
|
OMX_U32 nNumInputStillsFrames;
|
|
OMX_U32 nInputStillsWidth;
|
|
OMX_U32 nInputStillsHeight;
|
|
OMX_COLOR_FORMATTYPE eInputStillsType;
|
|
} OMX_PARAM_CAMERAIMAGEPOOLTYPE;</pre><p>
|
|
\sloppy This parameter specifies the size, type, and number, of images to
|
|
allow in the images pools required by Camplus. Supported types are
|
|
<tt>OMX_COLOR_FormatYUV420PackedPlanar</tt>,
|
|
<tt>OMX_COLOR_FormatYUV422PackedPlanar</tt>,
|
|
<tt>OMX_COLOR_FormatRawBayer8bit</tt>,
|
|
<tt>OMX_COLOR_FormatRawBayer10bit</tt>,
|
|
<tt>OMX_COLOR_FormatRawBayer8bitcompressed</tt>, and 0 (reserved for the
|
|
Broadcom-specific format required by the video encoder). The input
|
|
pool width, height, and type can be set as 0 to make the component
|
|
query Camplus for the sensor mode that would correspond to the largest
|
|
of the viewfinder port definition, the capture port definition, or the
|
|
high resolution image pool.<p>
|
|
|
|
<a name="OMX_IndexParamCameraInterface"><h2>Camera interface type.</h2></a>
|
|
<tt>OMX_IndexParamCameraInterface</tt><br>
|
|
Used by: <a href="rawcam.html">rawcam</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_CAMERAINTERFACETYPE {
|
|
OMX_CAMERAINTERFACE_CSI = 0,
|
|
OMX_CAMERAINTERFACE_CCP2 = 1,
|
|
OMX_CAMERAINTERFACE_CPI = 2,
|
|
OMX_CAMERAINTERFACE_MAX = 0x7FFFFFFF,
|
|
} OMX_CAMERAINTERFACETYPE;
|
|
|
|
typedef struct OMX_PARAM_CAMERAINTERFACETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
|
|
OMX_U32 nPortIndex;
|
|
OMX_CAMERAINTERFACETYPE eMode;
|
|
} OMX_PARAM_CAMERAINTERFACETYPE;</pre><p>
|
|
This configures the physical camera interface type.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
<dt><tt>eMode</tt><dd>Interface mode
|
|
</dl>
|
|
<a name="OMX_IndexParamCameraPoolToEncoderFunction"><h2>Camera and Video Encoder communication</h2></a>
|
|
<tt>OMX_IndexParamCameraPoolToEncoderFunction</tt><br>
|
|
Used by: <a href="image_fx.html">image_fx</a>, <a href="resize.html">resize</a>, <a href="null_sink.html">null_sink</a>, <a href="camera.html">camera</a>, <a href="hvs.html">hvs</a>, <a href="isp.html">isp</a>, <a href="video_encode.html">video_encode</a>, <a href="video_render.html">video_render</a>, <a href="video_splitter.html">video_splitter</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CAMERAPOOLTOENCODERFUNCTIONTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_PTR pPrivate;
|
|
RIL_CAMERA_ENCODER_FUNC_T pEncoderFunc;
|
|
RIL_IMAGE_FLUSH_FUNC_T pFlushFunc;
|
|
OMX_BOOL bUseYUVUV;
|
|
} OMX_PARAM_CAMERAPOOLTOENCODERFUNCTIONTYPE;</pre><p>
|
|
This parameter is used when creating proprietary communication with
|
|
the video_encode component from the capture port. It provides the
|
|
encoder function for passing the main and subsampled images to be
|
|
encoded, together with a function used to release all images. The
|
|
image format in this mode can be set to the Broadcom-specific format
|
|
required for the video encode functions, and does not comply with any
|
|
of the OMX standard formats.<p>
|
|
|
|
<a name="OMX_IndexParamCameraRxConfig"><h2>Camera receiver configuration</h2></a>
|
|
<tt>OMX_IndexParamCameraRxConfig</tt><br>
|
|
Used by: <a href="rawcam.html">rawcam</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_CAMERARXDECODETYPE {
|
|
OMX_CAMERARXDECODE_NONE = 0,
|
|
OMX_CAMERARXDECODE_DPCM8TO10 = 1,
|
|
OMX_CAMERARXDECODE_DPCM7TO10 = 2,
|
|
OMX_CAMERARXDECODE_DPCM6TO10 = 3,
|
|
OMX_CAMERARXDECODE_DPCM8TO12 = 4,
|
|
OMX_CAMERARXDECODE_DPCM7TO12 = 5,
|
|
OMX_CAMERARXDECODE_DPCM6TO12 = 6,
|
|
OMX_CAMERARXDECODE_DPCM10TO14 = 7,
|
|
OMX_CAMERARXDECODE_DPCM8TO14 = 8,
|
|
OMX_CAMERARXDECODE_DPCM12TO16 = 9,
|
|
OMX_CAMERARXDECODE_DPCM10TO16 = 10,
|
|
OMX_CAMERARXDECODE_DPCM8TO16 = 11,
|
|
OMX_CAMERARXDECODE_MAX = 0x7FFFFFFF
|
|
} OMX_CAMERARXDECODETYPE;
|
|
|
|
typedef enum OMX_CAMERARXENCODETYPE {
|
|
OMX_CAMERARXENCODE_NONE = 0,
|
|
OMX_CAMERARXENCODE_DPCM10TO8 = 1,
|
|
OMX_CAMERARXENCODE_DPCM12TO8 = 2,
|
|
OMX_CAMERARXENCODE_DPCM14TO8 = 3,
|
|
OMX_CAMERARXENCODE_MAX = 0x7FFFFFFF
|
|
} OMX_CAMERARXENCODETYPE;
|
|
|
|
typedef enum OMX_CAMERARXUNPACKTYPE {
|
|
OMX_CAMERARXUNPACK_NONE = 0,
|
|
OMX_CAMERARXUNPACK_6 = 1,
|
|
OMX_CAMERARXUNPACK_7 = 2,
|
|
OMX_CAMERARXUNPACK_8 = 3,
|
|
OMX_CAMERARXUNPACK_10 = 4,
|
|
OMX_CAMERARXUNPACK_12 = 5,
|
|
OMX_CAMERARXUNPACK_14 = 6,
|
|
OMX_CAMERARXUNPACK_16 = 7,
|
|
OMX_CAMERARXUNPACK_MAX = 0x7FFFFFFF
|
|
} OMX_CAMERARXUNPACKYPE;
|
|
|
|
typedef enum OMX_CAMERARXPACKTYPE {
|
|
OMX_CAMERARXPACK_NONE = 0,
|
|
OMX_CAMERARXPACK_8 = 1,
|
|
OMX_CAMERARXPACK_10 = 2,
|
|
OMX_CAMERARXPACK_12 = 3,
|
|
OMX_CAMERARXPACK_14 = 4,
|
|
OMX_CAMERARXPACK_16 = 5,
|
|
OMX_CAMERARXPACK_RAW10 = 6,
|
|
OMX_CAMERARXPACK_RAW12 = 7,
|
|
OMX_CAMERARXPACK_MAX = 0x7FFFFFFF
|
|
} OMX_CAMERARXPACKTYPE;
|
|
|
|
typedef struct OMX_PARAM_CAMERARXCONFIG_TYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
|
|
OMX_U32 nPortIndex;
|
|
OMX_CAMERARXDECODETYPE eDecode;
|
|
OMX_CAMERARXENCODETYPE eEncode;
|
|
OMX_CAMERARXUNPACKYPE eUnpack;
|
|
OMX_CAMERARXPACKTYPE ePack;
|
|
OMX_U32 nDataLanes;
|
|
OMX_U32 nEncodeBlockLength;
|
|
OMX_U32 nEmbeddedDataLines;
|
|
OMX_U32 nImageId;
|
|
} OMX_PARAM_CAMERARXCONFIG_TYPE;</pre><p>
|
|
Configures the setup and processing options of the camera receiver peripheral.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
</dl>
|
|
<a name="OMX_IndexParamCameraRxTiming"><h2>Camera peripheral timing registers</h2></a>
|
|
<tt>OMX_IndexParamCameraRxTiming</tt><br>
|
|
Used by: <a href="rawcam.html">rawcam</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CAMERARXTIMING_TYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nTiming1;
|
|
OMX_U32 nTiming2;
|
|
OMX_U32 nTiming3;
|
|
OMX_U32 nTiming4;
|
|
OMX_U32 nTiming5;
|
|
OMX_U32 nTerm1;
|
|
OMX_U32 nTerm2;
|
|
OMX_U32 nCpiTiming1;
|
|
OMX_U32 nCpiTiming2;
|
|
} OMX_PARAM_CAMERARXTIMING_TYPE;
|
|
</pre><p>
|
|
Set /query the receiver timing setup. These parameters can normally
|
|
be left on the default values for the majority of sensors.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
</dl>
|
|
<a name="OMX_IndexParamCameraSingleBufferCaptureInput"><h2>Save memory by using a single input buffer</h2></a>
|
|
<tt>OMX_IndexParamCameraSingleBufferCaptureInput</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Configures the camera component to switch to a single input buffer when capturing, therefore
|
|
saving the memory requirement of having two full resolution bayer
|
|
input buffers to store the input images.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamCameraStripeFunction"><h2>Camera proprietary stripe passing</h2></a>
|
|
<tt>OMX_IndexParamCameraStripeFunction</tt><br>
|
|
Used by: <a href="image_encode.html">image_encode</a>, <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CAMERASTRIPEFUNCTIONTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_PTR pPrivate;
|
|
RIL_CAMERA_STRIPE_FUNC_T pStripeFunc;
|
|
RIL_IMAGE_FLUSH_FUNC_T pFlushFunc;
|
|
RIL_CAMERA_STRIPE_RELEASE_FUNC_T pReleaseFunc;
|
|
OMX_PTR pReleasePrivate;
|
|
OMX_BOOL bUseYUVUV;
|
|
} OMX_PARAM_CAMERASTRIPEFUNCTIONTYPE;</pre><p>
|
|
This parameter is used by the camera when setting up proprietary
|
|
communication, and passes several function pointers used for passing
|
|
and flushing stripes.<p>
|
|
|
|
<a name="OMX_IndexParamCameraSwapImagePools"><h2>Swap over image pools</h2></a>
|
|
<tt>OMX_IndexParamCameraSwapImagePools</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Configures the camera component to swap over the two image pools when in stills capture mode. The behind this logic being that the viewfinder
|
|
high res images and the capture low res images are approximately the same
|
|
size, and the viewfinder low res images and the capture high res circular
|
|
output buffer are approximately the same size.
|
|
DO NOT USE WITH PARALLEL CAPTURE, AS POOL ALLOCATIONS ALREADY TAKE THIS INTO ACCOUNT
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamCameraZeroShutterLag"><h2>Zero shutter lag behaviour</h2></a>
|
|
<tt>OMX_IndexParamCameraZeroShutterLag</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_CONFIG_ZEROSHUTTERLAGTYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
|
|
OMX_U32 bZeroShutterMode;
|
|
OMX_U32 bConcurrentCapture;
|
|
|
|
} OMX_CONFIG_ZEROSHUTTERLAGTYPE;
|
|
</pre><p>
|
|
This takes two parameters. The first requests that the camera should run
|
|
preview using the full resolution sensor mode. The second controls whether
|
|
captures should then grab the last raw preview image and generate the capture
|
|
based on that.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>bZeroShutterMode</tt><dd>Select ZSL mode from the camera.
|
|
<dt><tt>bConcurrentCapture</tt><dd>Perform concurrent captures for full ZSL.
|
|
</dl>
|
|
<a name="OMX_IndexParamCaptureExposureCompensation"><h2>Capture Exposure Compensation</h2></a>
|
|
<tt>OMX_IndexParamCaptureExposureCompensation</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_S32TYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_S32 nS32;
|
|
} OMX_PARAM_S32TYPE;
|
|
</pre><p>
|
|
Sets the exposure compensation that should be applied to a stills capture
|
|
compared to the previous preview frames.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>Size of this structure, in Bytes
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
<dt><tt>nS32</tt><dd>S32 value
|
|
</dl>
|
|
<a name="OMX_IndexParamCaptureStatus"><h2>Stills capture status</h2></a>
|
|
<tt>OMX_IndexParamCaptureStatus</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CAPTURESTATETYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_CAPTURESTATETYPE eCaptureState;
|
|
} OMX_PARAM_CAPTURESTATETYPE;
|
|
</pre><p>
|
|
Returns the actual capture status of the camera component. Set to True when
|
|
a stills capture starts, and will be cleared when the capture image has been
|
|
passed downstream.
|
|
This parameter is supported by <tt>OMX_IndexConfigRequestCallback</tt>
|
|
to allow a client to do stuff on image capture (eg play a shutter sound).
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamCcmShift"><h2>Set/retrieve a shift value to be applied to the input colour correction matrix</h2></a>
|
|
<tt>OMX_IndexParamCcmShift</tt><br>
|
|
Used by: <a href="isp.html">isp</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_S32TYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_S32 nS32;
|
|
} OMX_PARAM_S32TYPE;
|
|
</pre><p>
|
|
This allows the use of data packed into the least significant bits of
|
|
a 16 bit word. Value is the number of positions to shift left. Max shift of 5.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>Size of this structure, in Bytes
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
<dt><tt>nS32</tt><dd>S32 value
|
|
</dl>
|
|
<a name="OMX_IndexParamCodecConfig"><h2>Codec Configuration</h2></a>
|
|
<tt>OMX_IndexParamCodecConfig</tt><br>
|
|
Used by: <a href="audio_decode.html">audio_decode</a>, <a href="audio_encode.html">audio_encode</a>, <a href="video_decode.html">video_decode</a>, <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CODECCONFIGTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 bCodecConfigIsComplete;
|
|
OMX_U8 nData[1];
|
|
} OMX_PARAM_CODECCONFIGTYPE;</pre><p>
|
|
This parameter contains opaque data in a format specified by Broadcom
|
|
and allows out-of-band information such as cropping rectangles, aspect
|
|
ratio information, codec-specific header bytes, and other essential
|
|
information to be passed between connected components.
|
|
|
|
<tt>bCodecConfigIsCompete</tt> specifies if the codec config is fully
|
|
contained in here and there is no need to wait for OMX_BUFFERFLAG_CODECCONFIG
|
|
buffers<p>
|
|
|
|
<a name="OMX_IndexParamColorSpace"><h2>Colour space information</h2></a>
|
|
<tt>OMX_IndexParamColorSpace</tt><br>
|
|
Used by: <a href="image_decode.html">image_decode</a>, <a href="camera.html">camera</a>, <a href="hvs.html">hvs</a>, <a href="isp.html">isp</a>, <a href="video_decode.html">video_decode</a>, <a href="video_render.html">video_render</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_COLORSPACETYPE
|
|
{
|
|
OMX_COLORSPACE_UNKNOWN,
|
|
OMX_COLORSPACE_JPEG_JFIF,
|
|
OMX_COLORSPACE_ITU_R_BT601,
|
|
OMX_COLORSPACE_ITU_R_BT709,
|
|
OMX_COLORSPACE_FCC,
|
|
OMX_COLORSPACE_SMPTE240M,
|
|
OMX_COLORSPACE_BT470_2_M,
|
|
OMX_COLORSPACE_BT470_2_BG,
|
|
OMX_COLORSPACE_JFIF_Y16_255,
|
|
OMX_COLORSPACE_REC_2020,
|
|
OMX_COLORSPACE_MAX = 0x7FFFFFFF
|
|
} OMX_COLORSPACETYPE;
|
|
|
|
typedef struct OMX_PARAM_COLORSPACETYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_COLORSPACETYPE eColorSpace;
|
|
} OMX_PARAM_COLORSPACETYPE;</pre><p>
|
|
Sets the colourspace with which pixel buffers should be generated / interpreted.<p>
|
|
|
|
<a name="OMX_IndexParamCommonUseStcTimestamps"><h2>Select timestamp mode</h2></a>
|
|
<tt>OMX_IndexParamCommonUseStcTimestamps</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_TIMESTAMPMODETYPE
|
|
{
|
|
OMX_TimestampModeZero = 0,
|
|
OMX_TimestampModeRawStc,
|
|
OMX_TimestampModeResetStc,
|
|
OMX_TimestampModeKhronosExtensions = 0x6F000000,
|
|
OMX_TimestampModeVendorStartUnused = 0x7F000000,
|
|
OMX_TimestampModeMax = 0x7FFFFFFF
|
|
} OMX_TIMESTAMPMODETYPE;
|
|
|
|
typedef struct OMX_PARAM_TIMESTAMPMODETYPE
|
|
{
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_TIMESTAMPMODETYPE eTimestampMode;
|
|
} OMX_PARAM_TIMESTAMPMODETYPE;</pre><p>
|
|
Specifies what to use as timestamps in the absence of a clock component.<p>
|
|
|
|
<a name="OMX_IndexParamComponentName"><h2>Sets the component name to be used in internal logging messages</h2></a>
|
|
<tt>OMX_IndexParamComponentName</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a>, <a href="video_encode.html">video_encode</a>, <a href="video_render.html">video_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_COMPONENTROLETYPE</tt><p>
|
|
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamCustomCcm"><h2>Set/retrieve a custom colour conversion matrix for the input data</h2></a>
|
|
<tt>OMX_IndexParamCustomCcm</tt><br>
|
|
Used by: <a href="isp.html">isp</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CUSTOMCCMTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
|
|
OMX_BOOL bEnabled;
|
|
OMX_S32 xColorMatrix[3][3];
|
|
OMX_S32 nColorOffset[3];
|
|
} OMX_PARAM_CUSTOMCCMTYPE;
|
|
</pre><p>
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>bEnabled</tt><dd>Enable the custom CCM.
|
|
<dt><tt>xColorMatrix</tt><dd>Stored in signed Q16 format
|
|
<dt><tt>nColorOffset</tt><dd>CCM offsets
|
|
</dl>
|
|
<a name="OMX_IndexParamDisableVllPool"><h2>Controlling use of memory for loadable modules</h2></a>
|
|
<tt>OMX_IndexParamDisableVllPool</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
This control can be used to control whether loadable modules used a dedicated memory
|
|
pool or use heap allocated memory.<p>
|
|
|
|
<a name="OMX_IndexParamDynamicParameterConfig"><h2>DPF: config in a MEM_HANDLE</h2></a>
|
|
<tt>OMX_IndexParamDynamicParameterConfig</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
Specify dynamic parameter configuration via a mem handle. If the handle is
|
|
MEM_HANDLE_INVALID, then this mechanism is not active.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamDynamicParameterFile"><h2>DPF: file to be loaded</h2></a>
|
|
<tt>OMX_IndexParamDynamicParameterFile</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_CONTENTURITYPE</tt><p>
|
|
|
|
Specify a dynamic parameter file to use or not. If a file is to be used,
|
|
<tt>OMX_IndexParamUseDynamicParameterFile</tt> must be set.
|
|
DEPRECATED: Use OMX_IndexParamDynamicParameterConfig in preference
|
|
as file access is not always available on VideoCore.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamDynamicParameterFileFailFatal"><h2>DPF: failure behaviour</h2></a>
|
|
<tt>OMX_IndexParamDynamicParameterFileFailFatal</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Classify error condition when DFP fails to load. This specifies whether the
|
|
failure to load the DPF file should be treated as a fatal error.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamILFifoConfig"><h2>Allows configuration of the FIFO settings.</h2></a>
|
|
<tt>OMX_IndexParamILFifoConfig</tt><br>
|
|
Used by: <a href="audio_encode.html">audio_encode</a>, <a href="video_encode.html">video_encode</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_ILFIFOCONFIG {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U32 nDataSize;
|
|
OMX_U32 nHeaderCount;
|
|
} OMX_PARAM_ILFIFOCONFIG;</pre><p>
|
|
Allows configuring the size of the ILFIFO used in a component.<p>
|
|
|
|
<dl>
|
|
<dt><tt>nDataSize</tt><dd>The size of the FIFO's data area
|
|
<dt><tt>nHeaderCount</tt><dd>The number of headers allocated
|
|
</dl>
|
|
<a name="OMX_IndexParamISPTunerName"><h2>ISP tuner name</h2></a>
|
|
<tt>OMX_IndexParamISPTunerName</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_CAMERAISPTUNERTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U8 tuner_name[64];
|
|
} OMX_PARAM_CAMERAISPTUNERTYPE;
|
|
</pre><p>
|
|
Allow the client to query / set the name of the camera tuner module to be used by Camplus. If tuner_name is a null string, the default tuner
|
|
for the camera module is loaded.
|
|
It is recommended that this parameter is set before <tt>OMX_IndexParamCameraDeviceNumber</tt>
|
|
to avoid reloading the CDI and default tuner.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamImagePoolDisplayFunction"><h2>Proprietary Image Passing</h2></a>
|
|
<tt>OMX_IndexParamImagePoolDisplayFunction</tt><br>
|
|
Used by: <a href="image_fx.html">image_fx</a>, <a href="transition.html">transition</a>, <a href="visualisation.html">visualisation</a>, <a href="camera.html">camera</a>, <a href="camera.html">camera</a>, <a href="video_decode.html">video_decode</a>, <a href="video_scheduler.html">video_scheduler</a>, <a href="video_splitter.html">video_splitter</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_IMAGEDISPLAYFUNCTIONTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_PTR pPrivate;
|
|
RIL_IMAGE_DISPLAY_FUNC_T pDisplayFunc;
|
|
RIL_IMAGE_FLUSH_FUNC_T pFlushFunc;
|
|
RIL_IMAGE_DRAIN_FUNC_T pDrainFunc;
|
|
} OMX_PARAM_IMAGEDISPLAYFUNCTIONTYPE;</pre><p>
|
|
This parameter is used when setting up proprietary communication
|
|
between two components. It allows the output port to pass images to
|
|
the input port that are allocated from an image pool, and also request
|
|
that any previously passed images are flushed.<p>
|
|
|
|
<a name="OMX_IndexParamImagePoolExternal"><h2>Client Allocated Image Pools</h2></a>
|
|
<tt>OMX_IndexParamImagePoolExternal</tt><br>
|
|
Used by: <a href="image_fx.html">image_fx</a>, <a href="visualisation.html">visualisation</a>, <a href="camera.html">camera</a>, <a href="video_decode.html">video_decode</a><p>
|
|
|
|
<pre>
|
|
struct opaque_vc_pool_s;
|
|
typedef struct opaque_vc_pool_s OMX_BRCM_POOL_T;
|
|
|
|
typedef struct OMX_PARAM_IMAGEPOOLEXTERNALTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_BRCM_POOL_T *image_pool;
|
|
OMX_BRCM_POOL_T *image_pool2;
|
|
OMX_BRCM_POOL_T *image_pool3;
|
|
OMX_BRCM_POOL_T *image_pool4;
|
|
OMX_BRCM_POOL_T *image_pool5;
|
|
} OMX_PARAM_IMAGEPOOLEXTERNALTYPE;</pre><p>
|
|
This config allows the client to pass in handles to pre-allocated
|
|
image pools for use within the component.<p>
|
|
|
|
<a name="OMX_IndexParamImagePoolSize"><h2>Specifying Image Pool Properties</h2></a>
|
|
<tt>OMX_IndexParamImagePoolSize</tt><br>
|
|
Used by: <a href="image_fx.html">image_fx</a>, <a href="transition.html">transition</a>, <a href="visualisation.html">visualisation</a>, <a href="video_decode.html">video_decode</a>, <a href="video_splitter.html">video_splitter</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_IMAGEPOOLSIZETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 width;
|
|
OMX_U32 height;
|
|
OMX_U32 num_pages;
|
|
} OMX_PARAM_IMAGEPOOLSIZETYPE;</pre><p>
|
|
This parameter is used to control the size of pool that the component
|
|
will allocate in the absence of setting an external pool. The default
|
|
can be reset by setting this parameter with all three fields set to
|
|
zero.<p>
|
|
|
|
<a name="OMX_IndexParamMinimumAlignment"><h2>Query component alignment requirements.</h2></a>
|
|
<tt>OMX_IndexParamMinimumAlignment</tt><br>
|
|
Used by: <a href="image_encode.html">image_encode</a>, <a href="hvs.html">hvs</a>, <a href="isp.html">isp</a>, <a href="video_encode.html">video_encode</a>, <a href="video_render.html">video_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_MINALIGNTYPE</tt><p>
|
|
|
|
Allows the component to be queried for the minimum alignment (in bytes) required
|
|
on a port for a given color format.
|
|
Used by the MMAL framework to allow a reduction in the padding.<p>
|
|
|
|
<dl>
|
|
<dt><tt>eColorFormat</tt><dd>Format being queried
|
|
<dt><tt>nMinHorizontalAlign</tt><dd>Minimum horizontal alignment required in bytes
|
|
<dt><tt>nMinVerticalAlign</tt><dd>Minimum vertical alignment required in bytes
|
|
</dl>
|
|
<a name="OMX_IndexParamNumOutputChannels"><h2>Query for the number of output channels in the decoded stream</h2></a>
|
|
<tt>OMX_IndexParamNumOutputChannels</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This indicates whether the stream is 2d (1 channel) or stereoscopic (2 channels).
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamOutputShift"><h2>Set/retrieve an additional shift parameter applied at the output of the ISP</h2></a>
|
|
<tt>OMX_IndexParamOutputShift</tt><br>
|
|
Used by: <a href="isp.html">isp</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_S32TYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_S32 nS32;
|
|
} OMX_PARAM_S32TYPE;
|
|
</pre><p>
|
|
This is to allow packing of values into fewer bits (eg 10 bit packed in
|
|
the LSBs of a 16 bit word). Value is the number of bits to shift left.
|
|
The range will vary based on output format.
|
|
|
|
<p>
|
|
|
|
<dl>
|
|
<dt><tt>nSize</tt><dd>Size of this structure, in Bytes
|
|
<dt><tt>nVersion</tt><dd>OMX specification version information
|
|
<dt><tt>nPortIndex</tt><dd>port that this structure applies to
|
|
<dt><tt>nS32</tt><dd>S32 value
|
|
</dl>
|
|
<a name="OMX_IndexParamPortMaxFrameSize"><h2>Specifying maximum frame size</h2></a>
|
|
<tt>OMX_IndexParamPortMaxFrameSize</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_FRAMESIZETYPE</tt><p>
|
|
|
|
This control can be used to control the maximum frame size allowed on an output port.<p>
|
|
|
|
<a name="OMX_IndexParamRateControlModel"><h2>Query / set the rate control method to be used</h2></a>
|
|
<tt>OMX_IndexParamRateControlModel</tt><br>
|
|
Used by: <a href="video_encode.html">video_encode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_PARAM_U32TYPE</tt><p>
|
|
|
|
This parameter uses internal configuration to determine used, so should not be changed without explicit internal knowledge.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamRemoveImagePadding"><h2>Query component padding requirements</h2></a>
|
|
<tt>OMX_IndexParamRemoveImagePadding</tt><br>
|
|
Used by: <a href="camera.html">camera</a>, <a href="video_render.html">video_render</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_PORTBOOLEANTYPE</tt><p>
|
|
|
|
Queries whether the component can remove all padding from images, or can
|
|
accept images with no padding.
|
|
Used by the MMAL framework predominantly.
|
|
Superceded by OMX_IndexParamMinimumAlignment.<p>
|
|
|
|
<a name="OMX_IndexParamResize"><h2>Resize Control</h2></a>
|
|
<tt>OMX_IndexParamResize</tt><br>
|
|
Used by: <a href="resize.html">resize</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_RESIZEMODETYPE {
|
|
OMX_RESIZE_NONE,
|
|
OMX_RESIZE_CROP,
|
|
OMX_RESIZE_BOX,
|
|
OMX_RESIZE_BYTES,
|
|
OMX_RESIZE_DUMMY = 0x7FFFFFFF
|
|
} OMX_RESIZEMODETYPE;
|
|
|
|
typedef struct OMX_PARAM_RESIZETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_RESIZEMODETYPE eMode;
|
|
OMX_U32 nMaxWidth;
|
|
OMX_U32 nMaxHeight;
|
|
OMX_U32 nMaxBytes;
|
|
OMX_BOOL bPreserveAspectRatio;
|
|
OMX_BOOL bAllowUpscaling;
|
|
} OMX_PARAM_RESIZETYPE;</pre><p>
|
|
The mode determines the kind of resize. <tt>OMX_RESIZE_BOX</tt> allow
|
|
the <tt>nMaxWidth</tt> and <tt>nMaxHeight</tt> to set a bounding box into
|
|
which the output must fit. <tt>OMX_RESIZE_BYTES</tt> allows
|
|
<tt>nMaxBytes</tt> to set the maximum number of bytes into which the
|
|
full output frame must fit. Two flags aid the setting of the output
|
|
size. <tt>bPreseveAspectRatio</tt> sets whether the resize should
|
|
preserve the aspect ratio of the incoming
|
|
image. <tt>bAllowUpscaling</tt> sets whether the resize is allowed to
|
|
increase the size of the output image compared to the size of the
|
|
input image.<p>
|
|
|
|
<a name="OMX_IndexParamSWSaturationDisable"><h2>Software Saturation Control</h2></a>
|
|
<tt>OMX_IndexParamSWSaturationDisable</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Requests the tuner to disable the software saturation stage for improved
|
|
capture performance.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamSWSharpenDisable"><h2>Software Sharpening Control</h2></a>
|
|
<tt>OMX_IndexParamSWSharpenDisable</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Requests the tuner to disable the software sharpen stage for improved
|
|
capture performance.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamSource"><h2>Source Image Configuration</h2></a>
|
|
<tt>OMX_IndexParamSource</tt><br>
|
|
Used by: <a href="source.html">source</a><p>
|
|
|
|
<pre>
|
|
typedef enum OMX_SOURCETYPE {
|
|
OMX_SOURCE_WHITE = 0, // all white images
|
|
OMX_SOURCE_BLACK = 1, // all black images
|
|
OMX_SOURCE_DIAGONAL = 2, // greyscale diagonal stripes
|
|
OMX_SOURCE_NOISE = 3, // random pixel values
|
|
OMX_SOURCE_RANDOM = 4, // a shaded random pattern of colours
|
|
OMX_SOURCE_COLOUR = 5, // a solid colour determined by nParam
|
|
OMX_SOURCE_BLOCKS = 6, // random coloured blocks of 16x16 size
|
|
OMX_SOURCE_SWIRLY, // a swirly pattern used for encode testing
|
|
OMX_SOURCE_DUMMY = 0x7FFFFFFF
|
|
} OMX_SOURCETYPE;
|
|
|
|
typedef struct OMX_PARAM_SOURCETYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_SOURCETYPE eType;
|
|
OMX_U32 nParam;
|
|
OMX_U32 nFrameCount;
|
|
OMX_U32 xFrameRate;
|
|
} OMX_PARAM_SOURCETYPE;</pre><p>
|
|
The source type determines the kind of image that is produced. Not all
|
|
combinations of source type and image type are supported. The
|
|
<tt>OMX_SOURCE_SWIRLY</tt> setting can only be used with YUV420 packed
|
|
planar image formats. When producing RGB565 image format, the
|
|
<tt>OMX_SOURCE_DIAGONAL</tt> and <tt>OMX_SOURCE_RANDOM</tt> modes are
|
|
treated as <tt>OMX_SOURCE_NOISE</tt>.
|
|
|
|
The <tt>nParam</tt> field is used to specify the colour for the source
|
|
colour mode, and the offset of the diagonal pattern for diagonal mode.
|
|
For the blocks mode, <tt>nParam</tt> is used as the seed for the random
|
|
colour generator.
|
|
|
|
The <tt>nFrameCount</tt> parameter determines how many frames to send.
|
|
If it is zero, then frames are sent continuously. For any other value,
|
|
it counts down until it has sent that many frames, and then stops,
|
|
sending out an EOS. The <tt>xFrameRate</tt> setting is used to determine
|
|
the timestamp for each frame produced, or can be set to zero if
|
|
timestamps should all remain at zero.<p>
|
|
|
|
<a name="OMX_IndexParamSourceSeed"><h2>Source Random Seed</h2></a>
|
|
<tt>OMX_IndexParamSourceSeed</tt><br>
|
|
Used by: <a href="source.html">source</a><p>
|
|
|
|
<pre>
|
|
typedef struct OMX_PARAM_SOURCESEEDTYPE {
|
|
OMX_U32 nSize;
|
|
OMX_VERSIONTYPE nVersion;
|
|
OMX_U32 nPortIndex;
|
|
OMX_U16 nData[16];
|
|
} OMX_PARAM_SOURCESEEDTYPE;</pre><p>
|
|
This structure sets the current state of the random number generator
|
|
used for <tt>OMX_SOURCE_RANDOM</tt> source type, allowing repeatable
|
|
random image creation.<p>
|
|
|
|
<a name="OMX_IndexParamUseDynamicParameterFile"><h2>DPF: enable loading</h2></a>
|
|
<tt>OMX_IndexParamUseDynamicParameterFile</tt><br>
|
|
Used by: <a href="camera.html">camera</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_CONFIG_BOOLEANTYPE</tt><p>
|
|
|
|
Specify whether we wish to load the DPF file.
|
|
The filename is set with <tt>OMX_IndexParamDynamicParameterFile</tt>.
|
|
DEPRECATED: Use OMX_IndexParamDynamicParameterConfig in preference
|
|
as file access is not always available on VideoCore.
|
|
|
|
<p>
|
|
|
|
<a name="OMX_IndexParamVideoMvc"><h2>MVC codec parameters</h2></a>
|
|
<tt>OMX_IndexParamVideoMvc</tt><br>
|
|
Used by: <a href="video_decode.html">video_decode</a><p>
|
|
|
|
This index uses the standard IL structure <tt>OMX_VIDEO_PARAM_MVCTYPE</tt><p>
|
|
|
|
This parameter is currently identical to the AVC parameter type.<p>
|
|
|
|
</table>
|
|
</body>
|
|
</html>
|