如何查看Framework配置的Stream由哪个Pipeline的哪个Port输出?需要打开CORE_CFG的Log。
通过configure_streams找到对应stream的地址
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1247 configure_streams() FINAL stream[0] = 0xb400007c231d8c68 - info:
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1250 configure_streams() format : 34, HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1252 configure_streams() width : 1280
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1254 configure_streams() height : 720
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1257 configure_streams() stream_type : 00000000, CAMERA3_STREAM_OUTPUT
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1259 configure_streams() usage : 00020900
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1261 configure_streams() max_buffers : 8
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1264 configure_streams() rotation : 00000000, CAMERA3_STREAM_ROTATION_0
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1267 configure_streams() data_space : 00000000, HAL_DATASPACE_UNKNOWN
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1269 configure_streams() priv : 0x0
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1271 configure_streams() reserved[0] : 0xb400007c4311d240
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1273 configure_streams() reserved[1] : 0x0
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1288 configure_streams() pHalStream: 0xb400007c4311d240 format : 0x22, overrideFormat : 0x22 consumer usage: 0, producer usage: 20900
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1247 configure_streams() FINAL stream[1] = 0xb400007c231e0148 - info:
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1250 configure_streams() format : 34, HAL_PIXEL_FORMAT_IMPLEMENTATION_DEFINED
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1252 configure_streams() width : 1650
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1254 configure_streams() height : 720
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1257 configure_streams() stream_type : 00000000, CAMERA3_STREAM_OUTPUT
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1259 configure_streams() usage : 00030022
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1261 configure_streams() max_buffers : 8
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1264 configure_streams() rotation : 00000000, CAMERA3_STREAM_ROTATION_0
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1267 configure_streams() data_space : 00000104, HAL_DATASPACE_BT709
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1269 configure_streams() priv : 0x0
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1271 configure_streams() reserved[0] : 0xb400007c4311d270
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1273 configure_streams() reserved[1] : 0x0
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1288 configure_streams() pHalStream: 0xb400007c4311d270 format : 0x22, overrideFormat : 0x22 consumer usage: 0, producer usage: 30022
10-28 13:25:24.469 1047 511 511 I CamX : [CORE_CFG][HAL ] camxhal3.cpp:1294 configure_streams() HalOp: End CONFIG, logicalCameraId: 0, cameraId: 0
比如我们想查找上面例子中的: FINAL stream[1] = 0xb400007c231e0148
由哪个Feature/Pipeline的哪个Port输出。
根据Final Stream的地址查找是哪条Pipeline的哪个Port输出该Buffer
首先根据Final Stream的地址(0xb400007c231e0148
),找到是哪个Feature2输出该Buffer
10-28 13:25:24.427 1047 511 511 I CHIUSECASE: [CORE_CFG ] chifeature2base.cpp:8293 InitializeTargetStream() RealTime: Target:TARGET_BUFFER_VIDEO, PortKey:Video_Out:0:0:3:3 stream:target:0xb400007c031478e0:0xb400007c231e0148Stream: 1650 X 720:0x22:0:0x10000:3
从上面的Log可以看到RealTime Feature的TARGET_BUFFER_VIDEO stream输出给这个target stream。
再根据Feature2的stream找到是哪个pipeline的哪个port输出该Buffer,搜索0xb400007c031478e0
:
10-28 13:25:24.434 1047 511 511 I CamX : [CORE_CFG][CORE ] camxnode.cpp:646 InitializeSinkPortBufferProperties() Topology: Node::RealTimeFeatureZSLPreviewRaw_PVLT1080p_PLTV_com.qti.node.gpu11 has a sink port id 0 using format 3 dim 1650x720, stream 0xb400007c031478e0
从上面的Log可以看到,是RealTimeFeatureZSLPreviewRaw_PVLT1080p_PLTV_com.qti.node.gpu11的port 0输出该stream。