camera

Top
audio_capture audio_decode audio_encode audio_lowpower audio_mixer audio_processor audio_render audio_splitter
image_decode image_encode image_fx resize source transition
clock null_sink text_scheduler visualisation
camera egl_render hvs isp rawcam video_decode video_encode video_render video_scheduler video_splitter
Custom Index Metadata
| # OMX.broadcom.camera
73
| camera |
70
71
72
This conformant component interfaces to platform-specific camera hardware, and produces raw YUV images. It has a clock input port for correctly assigning timestamps to frames. The preview port, 70, will emit video images whenever the component is in the executing state and the port is not disabled. The video capture port, 71, will emit images only when the capturing configuration parameter `OMX_IndexConfigPortCapturing` is set for that port, and either the clock port is disabled or the connected clock is in the Running state. Due to limitations in the current underlying layers, it is not currently possible to emit the same frame at multiple resolutions. This means that to obtain both preview and video capture images simultaneously, the two ports must be at the same resolution and of the same image format. If they are different, the capture port takes precedence, and no images will be emited from the preview port. If port 71 is executing when a connected clock is transitioned to stop the component will stop recording data at the end of the current image, and then transmit a packet with no data but with the EOS flag set. Port 72 is for still image captures only. This uses a second instance of Camplus and will grab the Bayer input image from the primary Camplus instance, and then process it in the background. The primary Camplus may resume viewfinder operation dependent on configuration and memory being available in the input pool. The port will only capture an image when the port is executing and `OMX_IndexConfigPortCapturing` is set for the port. If the bOneShot flag is set, an EOS will be emitted from the port after each complete capture. The video ports will emit images in `OMX_COLOR_FormatYUV420PackedPlanar`, `OMX_COLOR_FormatYUV420PackedSemiPlanar`, `OMX_COLOR_FormatYUV422PackedPlanar`, `OMX_COLOR_FormatYCbYCr`, `OMX_COLOR_FormatYCrYCb`, `OMX_COLOR_FormatCbYCrY`, or `OMX_COLOR_FormatCrYCbY`, format, unless configured for proprietary tunnelling to a Broadcom component supporting the OMX_IndexParamImagePoolDisplayFunction callback, or OMX_IndexParamCameraPoolToEncoderFunction callback, in which case images can be provided in Broadcom-specific format. In order to optimise loading of relevant drivers, the recommended initialisation sequence is: Create component. Use `OMX_IndexConfigRequestCallback` to request callbacks on `OMX_IndexParamCameraDeviceNumber`. Set `OMX_IndexParamISPTunerName`. Set `OMX_IndexParamCameraFlashType`. Set `OMX_IndexParamCameraDeviceNumber`. Wait for the callback that `OMX_IndexParamCameraDeviceNumber` has changed. At this point, all the drivers have been loaded. Other settings can be applied whilst waiting for this event. Query for `OMX_IndexConfigCameraSensorModes` as required. Change state to IDLE, and proceed as required. The component should function as instructed if this sequence is not adhered to, but unnecessary drivers and/or tuners may be loaded and then unloaded, extending the startup latency.
Port | Index | Notes
| `OMX_IndexParamCommonSensorMode` | Query / set the camera sensor mode. When setting this parameter, only bOneShot is used. It will return the actual sensor resolution when queried (as per the OMX specification)
`OMX_IndexConfigCommonDigitalZoom` | Query / set the digital zoom factor. The zoomed rectangle is always taken from the centre of the image.
`OMX_IndexConfigPortCapturing` | Query / set whether images are to be emitted on the specified port or not. Changing to enabling capture when the component is not executing will reset the internal counter used for time stamping frames when not connected to a clock component.
`OMX_IndexConfigCapturing` | This index is deprecated and should no longer be used. Use `OMX_IndexConfigPortCapturing` instead.
`OMX_IndexAutoPauseAfterCapture` | Query / set option to pause the component after the capture bit has been cleared (either by the client or due to the bOneShot flag in `OMX_IndexParamCommonSensorMode`)
`OMX_IndexParamCameraCamplusId` | Query / set the identifier to use with the Broadcom Camplus library used by this component.
`OMX_IndexParamCameraDeviceNumber` | Query / set the camera number (as defined by the Videocore make system) to be used by this camera component. When set, the value will be checked to ensure that the camera number specified is defined for the platform. Setting this parameter also triggers loading of the relevant drivers to speed up queries for `OMX_IndexConfigCameraSensorModes`, which require the drivers to be loaded. This parameter is supported by `OMX_IndexConfigRequestCallback`, so the client can be notified once that driver is loaded, rather than having to poll the settings.
`OMX_IndexParamCameraDevicesPresent` | Query the camera devices defined for this platform. The result is a bitmask indicating which cameras have been detected.
`OMX_IndexParamISPTunerName` | ISP tuner name. 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 `OMX_IndexParamCameraDeviceNumber` to avoid reloading the CDI and default tuner.
`OMX_IndexConfigCommonFrameStabilisation` | Query / set the state of the image stabilisation function of the camera (NB the image will be automatically zoomed by approx 10% to allow the stabilisation algorithm space to operate in)
`OMX_IndexConfigCommonExposure` | Query / set the exposure mode for the camera.
`OMX_IndexConfigCommonExposureValue` | Query / set the exposure parameters for the camera
`OMX_IndexParamCameraImagePool` | Set the image pool parameters for to be used by the components. This allows a client to specifies the size, type, and number of images in each pool. By default the sizes are left as 0 so the size is determined by `OMX_IndexParamPortMaxFrameSize`. The number of images in each pool is always determined by the settings in this parameter.
`OMX_IndexConfigCameraISPOutputPoolHeight` | Set the height of the high-resolution output image in stills capture only. 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 `OMX_IndexParamImagePoolDisplayFunction`, or `OMX_IndexParamCameraPoolToEncoderFunction` 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.
`OMX_IndexConfigFocusControl` | Query/set the focus mode.
`OMX_IndexConfigCommonFocusStatus` | Query the focus position, and the state of the auto/manual focus operations.
`OMX_IndexParamImagePoolExternal` | Allows pointers to external image pools to be passed in to the component to be used for image capture. `image_pool` is used as the ISP high resolution image pool, `image_pool2` as the ISP low res pool, `image_pool3` as the input pool, `image_pool3` as the high res stills pool, and `image_pool5` as the stills input pool. If being used, all five must be valid image pools. If not, all five must be `NULL`, the default, which causes the component to allocate pools when active.
`OMX_IndexConfigBrcmCameraStats` | Camera frame statistics. 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.
`OMX_IndexParamCameraSwapImagePools` | Swap over image pools. 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
`OMX_IndexParamCameraSingleBufferCaptureInput` | Save memory by using a single input buffer. 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.
`OMX_IndexConfigCommonRedEyeRemoval` | Red eye reduction/removal configuration. 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.
`OMX_IndexConfigCameraSensorModes` | Query the image sensor modes supported by the selected CDI. This will return the number of modes supported, and allow to iteratively query for them. If the CDI is not available, then the error `OMX_ErrorNotReady` will be returned. It is the responsibility of the client to delay and retry the request.
`OMX_IndexConfigCommonSharpness` | Image sharpening. Query / set the sharpening/softening of the output image. -100 = max softening. 0 = no change. +100 = max sharpening.
`OMX_IndexConfigCommonContrast` | Query / set the contrast. As per the OMX-IL 1.1.1 spec, the range is -100 to 100, with 0 indicating no change.
`OMX_IndexConfigCommonBrightness` | Query / set the brightness. As per the OMX-IL 1.1.1 spec, the range is +0 to 100, representing 0 to 100%.
`OMX_IndexConfigCommonSaturation` | Query / set the image saturation. As per the OMX-IL 1.1.1 spec, the range is -100 to 100, with 0 indicating no change, -100 will result in a completely black image, and 100 will result in a completely white image. This setting is ignored if `OMX_IndexConfigCommonColorEnhancement` is enabled.
`OMX_IndexConfigCommonColorEnhancement` | Query / set the values with which to fill the U and V planes of the output image. This feature overrides any saturation settings when enabled. The change is made within the ISP, so postprocessor software stages will not have any colour data to work with. Use of functions such as red eye reduction when colour enhancement is active may produce indeterminate results.
`OMX_IndexConfigCommonFlickerCancellation` | 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.
`OMX_IndexConfigInputCropPercentages` | Set crop region seen by ISP. 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.
`OMX_IndexConfigCommonWhiteBalance` | Query / set the auto white balance operating mode.
`OMX_IndexConfigStillsAntiShakeEnable` | Query / set the state of the antishake function of the camera.
`OMX_IndexConfigStillColourDenoiseEnable` | Configure still colour denoise. 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.
`OMX_IndexConfigVideoColourDenoiseEnable` | Configure video colour denoise. 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.
`OMX_IndexConfigTemporalDenoiseEnable` | Configure temporal denoise. 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.
`OMX_IndexConfigCommonFaceDetectionControl` | Face detection. Query / set the state of the face detection algorithm. Will return `OMX_ErrorUnsupportedIndex` if the algorithm is not loaded.
`OMX_IndexConfigDrawBoxAroundFaces` | Draw boxes around faces. Query / set the state of adding boxes around the faces detected in the viewfinder frames.
`OMX_IndexConfigDrawBoxLineParams` | Face box style parameters. Query / set the parameters for the box to be drawn around faces/focus regions.
`OMX_IndexConfigCommonFaceDetectionRegion` | Face detection output. Query the currently detected face regions within the viewfinder image. Will return `OMX_ErrorUnsupportedIndex` if the algorithm is not loaded.
`OMX_IndexConfigAFAssistLight` | Query / set the mode for the Auto focus assist light. It is assumed that the platform supports such a feature.
`OMX_IndexConfigSmartShakeReductionEnable` | Smart Shake Reduction (SSR). Query / set the state of the Smart Shake Reduction function. Will return `OMX_ErrorUnsupportedIndex` if the algorithm is not loaded.
`OMX_IndexConfigWaitForFocusBeforeCapture` | Wait for focus before capture. 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.
`OMX_IndexConfigCommonImageFilter` | Query / select image effects to be applied to the viewfinder and capture images
`OMX_IndexConfigCommonImageFilterParameters` | Query / set optional parameters for the selected image filter.
`OMX_IndexConfigPrivacyIndicator` | Query / set whether the privacy indicator light should be switched on whenever the component is capturing. The indicator used depends on the capabilities of the flash driver selected.
`OMX_IndexParamFlashControl` | Query / set the flash control, which controls the basic mode of flash operation.
`OMX_IndexParamCameraFlashType` | Query / set which type of flash (xenon/LED) to use if flash is requested. Changing this value requires the drivers to be reloaded, so it is recommended this is set before setting `OMX_IndexParamCameraDeviceNumber`.
`OMX_IndexConfigCameraFlashConfig` | Query / set the flags to use to modify the flash algorithm.
`OMX_IndexConfigFlashChargeLevel` | Query the charge level of the currently selected flash device. This is updated at the start of every frame.
`OMX_IndexConfigCameraEnableStatsPass` | Query / set whether a separate stats pass should be done before each capture. This will be done automatically if flash is requested.
`OMX_IndexConfigCaptureRawImageURI` | Configure filename for raw Bayer image. 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 `OMX_ErrorUnsupportedIndex` if the algorithm is not loaded.
`OMX_IndexConfigCameraIsoReferenceValue` | Allows the client to obtain the ISO reference for unity analogue gain.
`OMX_IndexConfigCameraCaptureAbortsAutoFocus` | Starting a capture aborts AF. 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.
`OMX_IndexParamCameraDisableAlgorithm` | Disabling processing stages. This allows optional processing stages to be totally disabled, and hence not loaded when the component is taken from Loaded to Idle.
`OMX_IndexParamCameraCaptureEventFunction` | Allows a VideoCore callback function to be registered to be used as an indication of when a capture is being started. This will not work over ILCS.
`OMX_IndexConfigCameraUseCase` | Camera use case. Query / set the use case to be passed into the tuner module.
`OMX_IndexConfigCameraInputFrame` | This parameter allows a Videocore component to obtain the pointer for the camera input frame (typically Bayer). For debug use only, and will not work over ILCS.
`OMX_IndexParamDynamicParameterFile` | DPF: file to be loaded. Specify a dynamic parameter file to use or not. If a file is to be used, `OMX_IndexParamUseDynamicParameterFile` must be set. DEPRECATED: Use OMX_IndexParamDynamicParameterConfig in preference as file access is not always available on VideoCore.
`OMX_IndexParamUseDynamicParameterFile` | DPF: enable loading. Specify whether we wish to load the DPF file. The filename is set with `OMX_IndexParamDynamicParameterFile`. DEPRECATED: Use OMX_IndexParamDynamicParameterConfig in preference as file access is not always available on VideoCore.
`OMX_IndexParamDynamicParameterFileFailFatal` | DPF: failure behaviour. 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.
`OMX_IndexParamDynamicParameterConfig` | DPF: config in a MEM_HANDLE. Specify dynamic parameter configuration via a mem handle. If the handle is MEM_HANDLE_INVALID, then this mechanism is not active.
`OMX_IndexParamBrcmConfigFileRegisters` | Sensor config override. Specify a register settings file to use instead of hard-coded defaults. If a file is to be used, `OMX_IndexParamUseRegisterFile` must be set. This requires support from the underlying sensor driver.
`OMX_IndexParamBrcmConfigFileChunkRegisters` | Snensor config data. Specify a chunk of data for a register settings file. `OMX_IndexParamConfigFileRegisters` must be called first.
`OMX_IndexConfigBrcmUseRegisterFile` | Specify whether we wish to load the register settings file. The file is specified with `OMX_IndexParamConfigFileRegisters`.
`OMX_IndexConfigBrcmRegisterFileFailFatal` | Classify error condition when register file fails to load. This specifies whether the failure to load the register file should be treated as a fatal error.
`OMX_IndexConfigCameraInfo` | Query the camera and lens information for the current camera.
`OMX_IndexConfigCameraFeatures` | Camera features. Query the capabilities of the current camera (lens and shutter). Some information is only valid when the component is Idle or Executing.
`OMX_IndexConfigRequestCallback` | Query / set whether a `RIL_CALLBACK_CONFIGCHANGED` should be generated when parameters change state within the component. Currently supported for `OMX_IndexConfigCommonFocusStatus`, `OMX_IndexParamCommonSensorMode`, `OMX_IndexConfigCameraSettings`, `OMX_IndexParamCameraDeviceNumber`, `OMX_IndexConfigCommonSceneDetected`, `OMX_IndexConfigCommonFaceDetectionRegion`, `OMX_IndexParamCaptureStatus`, and `OMX_IndexConfigFieldOfView` only.
`OMX_IndexConfigCommonFocusRegionXY` | Query / set the focus regions to use as a set of x/y/width/height boxes.
`OMX_IndexConfigUserSettingsId` | Frame identification. 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 `OMX_IndexConfigUserSettingsId`, wait for value read back from `OMX_IndexConfigUserSettingsId` to change to match).
`OMX_IndexConfigCameraSettings` | Get the parameters applied to the last frame from the camera. The client can also set `OMX_IndexConfigRequestCallback` for this config.
`OMX_IndexConfigBurstCapture` | Set the camera into a mode where it is only doing captures. 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.
`OMX_IndexConfigPowerDown` | Standby/power control. Query /set the power status of the camera module. Setting this parameter to `OMX_TRUE` instructs the component to power down the sensor, but keeping all memory allocated as required by the component state.
`OMX_IndexParamBrcmCameraInputAspectRatio` | Sensor aspect ratio selection. 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.
`OMX_IndexConfigDynamicRangeExpansion` | Dynamic range expansion. Configures the dynamic range expansion Camplus software stage.
`OMX_IndexConfigFaceRecognitionControl` | Face Recognition Control. Enables/disables the face recognition software stage (if present)
`OMX_IndexConfigFaceRecognitionSaveFace` | Face Recognition Face Learning. Instructs the face recognition stage to save the next primary face it sees into the database with the supplied ID.
`OMX_IndexConfigFaceRecognitionDatabaseUri` | Face Recognition Database File. Specifies the URI of the database file to be used by face recognition.
`OMX_IndexConfigFlashInfo` | Flash Information. Queries for the information on the flash devices present.
`OMX_IndexConfigCommonFaceBeautification` | Face Beautification. Enables/disables the face beautification algorithm, if it is present.
`OMX_IndexConfigCommonSceneDetectionControl` | Automatic Scene Detection Control. Enables/disables the scene detection algorithm, if it is present.
`OMX_IndexConfigCommonSceneDetected` | Automatic Scene Detection Status. Returns the currently detected scene type, as reported by the scene detection algorithm. This config also supports `OMX_IndexConfigRequestCallback` to report changes in value.
`OMX_IndexParamDisableVllPool` | Controls whether Camplus software stages are loaded into a memory pool allocated by this component, or loaded without specifying where to store the VLLs. If a memory pool is not used, then there is the possibility that a software stage will fail to load due to insufficient memory - this consideration must be made by the application/user.
`OMX_IndexConfigBrcmDrawStaticBox` | Define a static box to be drawn on the viewfinder images. 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.
`OMX_IndexParamCameraCaptureMode` | Camera Capture Mode. Allows the client to specify the behaviour desired for stills captures. Options are: `OMX_CameraCaptureModeWaitForCaptureEnd`: Wait for capture to complete before resuming viewfinder. `OMX_CameraCaptureModeWaitForCaptureEndAndUsePreviousInputImage`: Reprocess the same input frame multiple times with different settings. Currently not implemented in the Camplus levels. `OMX_CameraCaptureModeResumeViewfinderImmediately`: 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 `image_pool_params.eInputPoolMode` to be set to `OMX_CAMERAIMAGEPOOLINPUTMODE_TWOPOOLS`, and `image_pool_params.nNumHiResStillsFrames` to be non-zero, otherwise the image pools won't split in a manner that allows viewfinder to be resumed.
`OMX_IndexConfigBrcmCameraRnDPreprocess` | Test control allowing a software stage to be dropped into the preprocessor pipeline easily and controlled through OMX. Software stage must be called rnd_prep_stage, and SW_STAGE_DISABLE_RND_PREPROC must be undefined in camera_config.h. It is inserted into both video and stills pipelines as the last software stage.
`OMX_IndexConfigBrcmCameraRnDPostprocess` | Test control allowing a software stage to be dropped into the postprocessor pipeline easily and controlled through OMX. Software stage must be called rnd_prep_stage, and SW_STAGE_DISABLE_RND_POSTPROC must be undefined in camera_config.h. It is inserted into both video and stills pipelines as the last software stage.
`OMX_IndexParamCommonUseStcTimestamps` | This parameter selects how the component timestamps buffers if there is no clock. The options are: `OMX_TimestampModeZero`: Always timestamp them as time 0. `OMX_TimestampModeRawStc`: Read the STC timestamp of when the frame was captured, and use that raw value. `OMX_TimestampModeResetStc`: Store the STC of the 1st frame sent on the video port, and subtract that value from all frames. The offset value will get reset whenever video capture is started with either the port capturing flag or enabling the port, so a capture pause function can not be achieved in this mode. If passing buffers it also relies on passing the entire frame in one buffer, as the time information is not available until the whole frame has been received from Camplus.
`OMX_IndexParamCaptureStatus` | Stills capture status. 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 `OMX_IndexConfigRequestCallback` to allow a client to do stuff on image capture (eg play a shutter sound).
`OMX_IndexParamBrcmLazyImagePoolDestroy` | The image pool will be deleted lazily, i.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.
`OMX_IndexConfigBrcmHighDynamicRange` | Enable / disable the High Dynamic Range (HDR) software stage.
`OMX_IndexConfigFieldOfView` | Image field of view. Returns the field of view provided by the current camera settings. Read only.
`OMX_IndexConfigBrcmPoolMemAllocSize` | Returns the amount of memory being used by the component's image pools. Read only.
`OMX_IndexConfigContrastEnhance` | Enable / disable contrast enhancement.
`OMX_IndexParamCameraCustomSensorConfig` | Allows a request to be made to the sensor driver to use an alternate set of configuration registers. The meaning of these will be sensor specific. The setting will only be changed on the next call to the sensor set_mode, hence this is enforced as an IL parameter that the component must be loaded, or all ports disabled in order to change it.
`OMX_IndexParamCameraZeroShutterLag` | Zero shutter lag behaviour. 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.
`OMX_IndexParamCaptureExposureCompensation` | Capture Exposure Compensation. Sets the exposure compensation that should be applied to a stills capture compared to the previous preview frames.
`OMX_IndexParamSWSharpenDisable` | Software Sharpening Control. Requests the tuner to disable the software sharpen stage for improved capture performance.
`OMX_IndexParamSWSaturationDisable` | Software Saturation Control. Requests the tuner to disable the software saturation stage for improved capture performance.
`OMX_IndexConfigBrcmFlashRequired` | Flash required status. Returns the tuner indication whether a flash (normal or fill-in) is required for the capture. Read only.
`OMX_IndexConfigCustomAwbGains` | Custom AWB Gains. Allows client to set AWB gains.
`OMX_IndexConfigBrcmCameraAnnotate` | Annotation overlay parameters. Query / set the paramters concerning the anotation overlay.
`OMX_IndexParamBrcmIspBlockOverride` | Disables ISP blocks. Query / set a bitmask that can disable ISP processing blocks. Blocks can NOT be enabled if they haven't been configured in the tuning.
`OMX_IndexParamRemoveImagePadding` | Remove image padding. Normally the components will require nStride and nSliceHeight to be padded to an appropriate multiple of N for performance reasons. If a performance hit can be accepted, this parameter can remove the restriction and run with nStride = (nFrameWidth * bytes_per_pixel), and nSliceHeight = nFrameHeight, even if nFrameWidth and nFrameHeight are not appropriate multiples.
`OMX_IndexParamBrcmLensShadingOverride` | Override the lens shading table. Mechanism for the client to provide lens shading tables to replace the default lens shading tables.
`OMX_IndexConfigCameraAnalogGain` | Manual camera analog gain. 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).
`OMX_IndexConfigCameraDigitalGain` | Manual camera digital gain. When bAutoGain is set to OMX_FALSE, xGain will be used to set the camera digital gain. Requires OMX_IndexConfigCommonExposureValue bAutoSensitivity to be set to true (ie ISO control overrides this control).
70 | `OMX_IndexParamPortDefinition` | Query / set the preview port resolution. Parts of this value may be overwritten by the component if Camplus needs to apply additional conditions on the image format.
`OMX_IndexConfigVideoFramerate` | Query / set the framerate including when the port is already executing.
`OMX_IndexParamImagePoolDisplayFunction` | Used to set up proprietary communication with the next component. The current default when using proprietary communication is to use the Broadcom-specific image format in place of `OMX_COLOR_FormatYUV420PackedPlanar`, provided that the capture port has not requested YUV420 explicitly. This is to allow a performance optimisation to be used within the denoising algorithm.
`OMX_IndexConfigCameraSensorModes` | Query the image sensor mode that would be used for the currently defined port definition.
`OMX_IndexConfigCommonRotate` | Query / set the rotation requirements for images emitted from the viewfinder port. Only rotations of 0, 90, 180, and 270 degrees are supported.
`OMX_IndexConfigCommonMirror` | Query / set the mirroring requirements for images emitted from the viewfinder port. These are always used in combination with the rotation parameters, so `OMX_MirrorBoth` and rotate 180 will result in the image being back at upright.
71 | `OMX_IndexParamPortDefinition` | Query / set the capture port resolution.
`OMX_IndexConfigVideoFramerate` | Query / set the framerate including when the port is already executing.
`OMX_IndexParamImagePoolDisplayFunction` | Used to set up proprietary communication with the next component.
`OMX_IndexParamCameraPoolToEncoderFunction` | Used to set up proprietary communication with the next component (video encoder specific)
`OMX_IndexConfigCameraSensorModes` | Query the image sensor mode that would be used for the currently defined port definition.
`OMX_IndexConfigCommonRotate` | Query / set the rotation requirements for images emitted from the capture port. Only rotations of 0, 90, 180, and 270 degrees are supported.
`OMX_IndexConfigCommonMirror` | Query / set the mirroring requirements for images emitted from the capture port. These are always used in combination with the rotation parameters, so `OMX_MirrorBoth` and rotate 180 will result in the image being back at upright.
72 | `OMX_IndexParamCameraStripeFunction` | Used to set up proprietary communication with the next component when passing image stripes (write still specific)
`OMX_IndexConfigCameraStripeFuncMinLines` | Stripe mode minimum height. Used to set the minimum number of lines to be passed using the stripe function. The stripe function itself is set with `OMX_IndexParamCameraStripeFunction`.
`OMX_IndexParamImagePortFormat` | Query / set the video port format. This port supports a small range of uncompressed pixel formats.
70 71 | `OMX_IndexParamVideoPortFormat` | Query / set the video port format. These ports support a small range of uncompressed pixel formats.
70 71 72 | `OMX_IndexParamBrcmDisableProprietaryTunnels` | Tells the component not to use proprietary communication for the selected output port.
`OMX_IndexParamPortMaxFrameSize` | Allows the defining of the maximum frame size to be used on the specified port. Image pools will be sized based on this information in the absence of any additional configuration from the application (via `OMX_IndexParamCameraImagePool`). The size passed in `OMX_IndexParamPortDefinition` will be checked against this setting (potentially transposed) to ensure that the images can fit in the pool.
`OMX_IndexParamBrcmFpsRange` | Allows a variable frame rate range to be defined. Used if xFramerate in the port definition is 0.
`OMX_IndexParamColorSpace` | Set/retrieve the image colour space to be used on this port.
`OMX_IndexParamBrcmStereoscopicMode` | Query / set the stereoscopic mode for the ports. Stereoscopic requires extra image buffers to be allocated, and the camera driver to be opened in a different mode. If it is not selected before the component is transitioned to idle, then stereoscopic can not be enabled. If it was enabled prior to the transition to idle, then it can be freely enabled and disabled on a disabled port.
73 | `OMX_IndexParamOtherPortFormat` | Query / set the format used by this port. This port supports only the clock format type.