vendor_xiaomi_onyx/proprietary/odm/etc/camera/xiaomi/overridesettings.json
zenin1504 737bba2d3d onyx: Push vendor repo here
Change-Id: If8d0b57acc6b41c28c7a331e41db44d2
Signed-off-by: zenin1504 <me.zenin1504.dev@gmail.com>
2026-06-26 20:21:50 +08:00

351 lines
14 KiB
JSON

/*
device:ishtar
some quick reference:
stream format: (for complete list, refer to: system/core/include/system/graphics-base-vx.x.h)
HAL_PIXEL_FORMAT_RGBA_8888 = 1,
HAL_PIXEL_FORMAT_RGBX_8888 = 2,
HAL_PIXEL_FORMAT_RGB_888 = 3,
HAL_PIXEL_FORMAT_RGB_565 = 4,
HAL_PIXEL_FORMAT_BGRA_8888 = 5,
HAL_PIXEL_FORMAT_YCBCR_422_SP = 16,
HAL_PIXEL_FORMAT_YCRCB_420_SP = 17,
HAL_PIXEL_FORMAT_YCBCR_422_I = 20,
HAL_PIXEL_FORMAT_RGBA_FP16 = 22,
HAL_PIXEL_FORMAT_RAW16 = 32,
HAL_PIXEL_FORMAT_BLOB = 33,
HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED = 34,
HAL_PIXEL_FORMAT_YCBCR_420_888 = 35,
HAL_PIXEL_FORMAT_RAW_OPAQUE = 36,
HAL_PIXEL_FORMAT_RAW10 = 37,
HAL_PIXEL_FORMAT_RAW12 = 38,
HAL_PIXEL_FORMAT_RGBA_1010102 = 43,
HAL_PIXEL_FORMAT_Y8 = 538982489,
HAL_PIXEL_FORMAT_Y16 = 540422489,
HAL_PIXEL_FORMAT_YV12 = 842094169,
stream dataspace: (for complete list, refer to: system/core/include/system/graphics-base-vx.x.h)
HAL_DATASPACE_JFIF = 257,
HAL_DATASPACE_V0_JFIF = 146931712, // ((STANDARD_BT601_625 | TRANSFER_SMPTE_170M) | RANGE_FULL)
*/
{
"isSupportExtCamera": true,
"ignoreV4L2DevicesByExtCamera": [0, 1],
"halHeicSupported": true,
"supportDownCapture": true,
"supportSortResult": true,
"supportSortNotify": true,
"supportFrameDrop": false,
"maxPendingFrameNum": 10,
"maxTotalPendingFrameNum": 20,
"setQRstreamUsecase": 524545,
// When APP supports DownCapture, mihal needs to discard the useless snapshot request front Burst.
"InternalPreviewBufferQueueSize": 30,
"QuickviewBufferQueueSizeMax": 26,
"MockCameraFwkStreamMaxBufferQueueSize": 30,
// when mihal allocate a stream's GraBuffer, it will refresh a timer.
// If no one else request the stream's GraBuffer for "BufferReclaimWaitMilliseconds",
// then the idle buffers of that stream will be reclaimed to save memory
"BufferReclaimWaitMilliseconds": 3000,
// this is the time you wait for some buffers to get released when all the buffers of the
// stream you are requesting are busy
"RequestGraBufferTimeOutMilliseconds": 300,
"InternalSnapshotStreamProperty": {
"UpScaleSizeFactor": 2,
"InternalRawStreamAspectRatio": 1.33,
// NOTE: the sensor supported yuv output resolution
// resolution of streams sent by framework should be in this option list with ± tolerance
"YuvStreamResolutionOptions": {
"AspectRatioList": [1, 1.12851, 1.33333, 1.5, 1.77777, 2.16666, 2.22222, 2.333, 1.118],
// the tolerance shouldn't be too small. otherwise, mihal will choose the wrong
// resolution. for example, in L2, when do Sr+Hdr, if you change frame ratio as 3:4,
// then Qcom expects ouput stream size as 4080X3072, but 4080/3072=1.328125
// which is not 4/3=1.33333. Therefore, we need some tolerance
"Tolerance": 0.0095
},
"RawStreamResolutionOptions": {
"AspectRatioList": [1, 1.33, 1.50, 1.60, 1.77, 2.22],
"Tolerance": 0.1
}
},
"supportZSLQ": true,
"ZSLSelectorPriority": {
"ZSLSelectorAiHighLight": 10,
"ZSLSelectorBokehRawHDR": 20,
"ZSLSelectorBokehForSmartAE": 30,
"ZSLSelectorELL": 40,
"ZSLSelectorHDR": 50,
"ZSLSelectorLeica": 60,
"ZSLSelectorMotion": 70,
"ZSLSelectorNightMotion": 80,
"ZSLSelectorNightMotionZSLBanding": 90,
"ZSLSelectorSR": 100,
"ZSLSelectorMFNR": 200,
"ZSLSelectorSingle": 300,
"ZSLSelectorDefault": 400,
"ZSLSelectorDsac": 500
},
"supportStreaming": true,
"supportStreamingMode":{
"AllModes": false,
"supportOpModes": [0, 36868, 36872, 36878, 36871, 36876, 36877, 36875, 37632, 36867, 32778, 36866, 36865, 32777, 36869, 36864, 32793],
"controlPreviewOpModes": [36867, 36864, 37632]
// StreamConfigModeNormal 0 StreamConfigModeQCFALite 36865
// StreamConfigModeAlgoDualSAT 36866 StreamConfigModeMiuiVideoBeautyWithEIS 32793
// StreamConfigModeAlgoSingleRTB 36867 StreamConfigModeAlgoDualBokeh 36864
//StreamConfigModeMiuiSuperNight 32778 StreamConfigModeAlgoQCFAMFNR 36868
//StreamConfigModeAlgoManual 36872 StreamConfigModeAlgoManualHdRaw 36878 StreamConfigModeAlgoManualSuperHD 36871
//StreamConfigModeAlgoManualHdUltraRaw 36876 StreamConfigModeAlgoManualRaw 36877
//StreamConfigModeAlgoUltraRaw 36875 StreamConfigModeAlgoNormal 36869
//StreamConfigModeMiuiVideoBeauty 32777 StreamConfigModeCinelook 32819
//StreamConfigModeMiuiCineModeWithBokeh 32818
},
"supportSmartAE": true,
"SuperResolutionImageRatio": [1.33333, 1.77778],
"FeatureList": {
"FeatureSmartAE": {
"HDREVCheck": [1, 1, 1, 1, 0, 0, 0, 0, 1, 0],
"DOL2ZSLHDRNum": 10,
"NZSLHDREVCheck": [1, 1, 1, 1, 1, 1, 1, 0, 1, 0, 0, 0],
"DOL2NZSLHDRNum": 10
},
"FeatureMihalMFNR": {
"wideMfnrUseRaw16": true
},
"FeatureHDR": {
// in normal hdr mode(not stagger hdr), we need to send mutiple requests
// to vendor and merge these requests in mialgoengine, this variable sets
// the minimum number of requests needed by mialgoengine to do
// HDR processing, if the number of ev values returned by hdr checker is
// less than this value, then this HDR snapshot is problematic
"MinNumOfSnapshotRequiredByYuvHDR": 3,
"MinNumOfSnapshotRequiredByRawHDR": 2,
// please refer to function applyHdrParameter in:
// packages/apps/MiuiCamera/src/com/android/camera2/MiCamera2ShotParallelBurst.java
"shouldApplyAElock": true
},
"FeatureSR": {
"SupportRawSr": true,
"NumOfSnapshotRequiredBySR": 8,
"NumOfSnapshotRequiredByRemosaicSR": 4,
"NumOfQuadBayerSRSnapshotCustom": true,
"NumOfSnapshotRequiredByQUADBayerSR": 6
},
"FeatureSRHDR": {
"SupportRawSrHdr": true,
"NumOfSnapshotRequiredBySRHDR": 10,
"NumOfExpandedEvZeroBySRHDR": [8, 4],
"DefaultExpValuesOfSRHDR": [0, 0, 0, 0, 0, 0, 0, 0, -6, 6]
},
"FeatureSN": {
"supportMfnrForSn": false
},
"FeatureAINR": {
"NumOfSnapshotRequiredByAINR": 6,
"LimitTimeByHDUltrRawUpper": 7000,
"LimitTimeByHDUltrRawLower": 4000
},
"FeatureFusion": {
"SrFusionZoomRegion": {
"lowerBound": 3.0,
"upperBound": 5.0
},
"MfnrFusionZoomRegion": {
"lowerBound": 0.6,
"upperBound": 1.0
}
},
"FeatureHD": {
// in K1, under superHD mode we want to use mfnr to get a high quality image
// but if we set exposure time to a large value, it will take very long time to
// snapshot, so we need to disable mfnr when we set a long exposure time.
// this variable is the max exposure time to allow mfnr. the unit is nano second.
"MfnrMaxExpTime": 250000000,
"SupportRawHD": true,
"NumOfSnapshotRequiredByRemosaicHD": 3
},
"FeatureDepthExtend": {
"MinNumOfSnapshotRequiredByDepthExtend": 5
},
"FeatureManual": {
"B2YLongExposureTime": 250000000
}
},
"AttachPreview": {
/**
*Bit[0] - Support HD mode
*Bit[1] - Support SAT mode
**/
"AttachPreviewSupportMask": 3
},
// you can't just keep sending tasks to mialgoengine, we need to confine the num
// of task in process, (one task means one photographer)
"MialgoCapacity": 10, // the total resource in mialgo
"MialgoTaskConsumption": {
// the entries below show the reources cost by various photographer per snapshot.
// If the sum of these resource reaches "MialgoCapacity", we will stop the app
// "Photographer": 1,
// "B2YRawUpPhotographer": 1,
// "BokehPhotographer": 2,
// "MDBokehPhotographer": 2,
// "HdrBokehPhotographer": 2,
// "DSACBokehPhotographer": 2,
// "SEBokehPhotographer": 2,
// "HdrPhotographer": 3,
// "HwmfPhotographer": 1,
// "SupernightPhotographer": 4,
// "RawSupernightPhotographer": 4,
// "SrPhotographer": 4,
// "SrHdrPhotographer": 5,
// "FusionPhotographer": 3,
// "ProfessionalPhotographer": 1,
// "BurstPhotographer": 0,
// "AINRPhotographer": 4,
// "HdAINRPhotographer": 6,
// "ManualRawPhotographer": 2,
// "ManualHdRawPhotographer": 4,
// "DepthExtendPhotographer": 3,
// "MihalMfnrBokehPhotographer":2,
// "MihalMFNRPhotographer":1
"0": 1, // {Photographer_SIMPLE, "B2YRawUpPhotographer"},
"1": 4, // {Photographer_HDR, "HdrPhotographer"},
"2": 4, // {Photographer_SR, "SrPhotographer"},
"3": 4, // {Photographer_SN, "SupernightPhotographer"},
"4": 0, // {Photographer_BURST, "BurstPhotographer"},
"5": 4, // {Photographer_HDRSR, "SrHdrPhotographer"},
"6": 3, // {Photographer_FUSION, "FusionPhotographer"},
"7": 3, // {Photographer_SR_FUSION, "FusionPhotographer"},
"8": 1, // {Photographer_VENDOR_MFNR, "MFNRPhotographer"},
"9": 2, // {Photographer_MIHAL_MFNR, "MihalMFNRPhotographer"},
"10": 2, // {Photographer_BOKEH, "BokehPhotographer"},
"11": 2, // {Photographer_BOKEH_MD, "MDBokehPhotographer"},
"12": 4, // {Photographer_BOKEH_HDR, "HdrBokehPhotographer"},
"13": 4, // {Photographer_BOKEH_SE, "SEBokehPhotographer"},
"14": 2, // {Photographer_BOKEH_MD_SN, "SEBokehPhotographer"},
"15": 2, // {Photographer_BOKEH_MD_HDR, "HdrBokehPhotographer"},
"16": 2, // {Photographer_BOKEH_MIHAL_MFNR, "MihalMfnrDualBokehPhotographer"},
"17": 2, // {Photographer_BOKEH_VENDOR_MFNR, "VendorMfnrDualBokehPhotographer"},
"18": 2, // {Photographer_SINGLE_BOKEH_MIHAL_MFNR, "MihalMFNRPhotographer"},
"19": 1, // {Photographer_SINGLE_BOKEH_VENDOR_MFNR, "SinglePhotographer"},
"20": 1, // {Photographer_SINGLE_BOKEH, "SinglePhotographer"},
"21": 1, // {Photographer_MANUAL, "ProfessionalPhotographer"},
"22": 3, // {Photographer_AINR, "AINRPhotographer"},
"23": 6, // {Photographer_HD_AINR, "HdAINRPhotographer"},
"24": 2, // {Photographer_HD_UPSCALE, "RemosaicMfnrPhotographer"},
"25": 1, // {Photographer_HD_MFNR, "HdMFNRPhotographer"},
"26": 2, // {Photographer_HD_REMOSAIC_MFNR, "RemosaicMfnrPhotographer"},
"27": 1, // {Photographer_HD_REMOSAIC_MFNR_HDR, "RemosaicHdrMfnrPhotographer"},
"28": 3, // {Photographer_DEPTH_EXTEND, "DepthExtendPhotographer"},
"29": 1, // {Photographer_MANUALRAW, "SinglePhotographer"},
"30": 1, // {Photographer_HD_MANUALRAW, "SinglePhotographer"},
"31": 3, // {Photographer_HDR_RAW,"RawHdrPhotographer"},
"32": 3, // {Photographer_HDR_STAGGER_RAW, "StaggerRawHdrPhotographer"},
"33": 3, // {Photographer_HD_REMOSAIC_HDR, "RemosaicRawHdrPhotographer"},
"34": 3, // {Photographer_SINGLE_BOKEH_HDR, "RawHdrPhotographer"},
"35": 2, // {Photographer_DSAC_BOKEH, "Photographer_DSAC_BOKEH"},
"36": 4, // {Photographer_AINR_FLASH, "AinrFlashPhotographer"},
"37": 1, // {Photographer_QUAD_RAW_SR, "SrQuadRawPhotographer"},
"38": 3, // {Photographer_HD_HDR_RAW, "HdRawHdrPhotographer"},
"39": 1, // {PHOTOGRAPHER_HD_REMOSAIC_SINGLE, "RemosaicSinglePhotographer"},
"40": 2, // {Photographer_SmartAE_AllInOne, "SmartAEPhotographer"},
"41": 2, // {Photographer_SmartAE_AllInOne_Bokeh, "BokehSmartAEPhotographer"},
"42": 3, // {Photographer_DOL2, "DOL2Photographer"},
"43": 4, // {Photographer_BOKEH_AINR, "Photographer_BOKEH_AINR"},
"44": 4, // {Photographer_BOKEH_SR, "Photographer_BOKEH_SR"},
"45": 4, // {Photographer_BOKEH_SNSC, "Photographer_BOKEH_SNSC"},
"46": 4, // {Photographer_BOKEH_HDSR, "Photographer_BOKEH_HDSR"},
"47": 1 // {Photographer_ASTRAL, "AstralPhotographer"},
},
"BokehStaticRemosaicSwitch": {
"35mm": {
"masterEnable": false,
"slaveEnable": false
},
"50mm": {
"masterEnable": false,
"slaveEnable": false
},
"75mm": {
"masterEnable": false,
"slaveEnable": false
},
"90mm": {
"masterEnable": false,
"slaveEnable": false
},
"Bokeh1X": {
"masterEnable": false,
"slaveEnable": false
},
"Bokeh1_5X": {
"masterEnable": false,
"slaveEnable": false
},
"Bokeh2X": {
"masterEnable": false,
"slaveEnable": false
},
"Bokeh3X": {
"masterEnable": false,
"slaveEnable": false
},
"duration": 30000
},
"BokehStaticFallback": {
"35mm": {
"enable": false
},
"50mm": {
"enable": true
},
"75mm": {
"enable": true
},
"90mm": {
"enable": true
},
"Bokeh1X": {
"enable": false
},
"Bokeh1_5X": {
"enable": false
},
"Bokeh2X": {
"enable": true
},
"Bokeh3X": {
"enable": true
},
"duration": 30000
},
"OverrideRequestedConfiguration":{
"opModes": [32779]
},
"UltraHdr": {
"Supported": true,
"Version": "2.0"
},
"supportFrontBokehDepthScale": true,
"DoRotationOnImage": {
"jpeg": true,
"heif": true
},
"BugHunter":{
"allinoneAlgoNoncriticalErrorCode": [0, 1023200]
},
"supportDignostician": {
"diagnosticianEnable": 1,
"snapshotLogPrintEnable": 0,
"snapshotDumpEnable": 0,
"moduleDiagEnable": 0,
"miviDumpEnable": 1
},
"BugHunter":{
"allinoneAlgoNoncriticalErrorCode": [0, 1023200]
}
}