qcom bypass node介绍

一、node类型

qcom node分为三种,分别是default node、bypass node和inplace node。下面是高通文档对三种node的解释:

其中bypass、inplace node是高通引入的一种减少内存拷贝的方法,因为在default node上,如果要实现输入直接给到输出,只能将数据copy一份。

bypass node基本特点

① requestinfo中的outport口的buffer将不再被下一个node使用(output buffer和绑定的input buffer是不同地址,如果此node将input buffer处理完放到output里面,只会纯纯浪费时间),而是直接取与之绑定的inport口的input buffer;

② bypass node往往仅输出一些meta相关的,如sat node,当然,你也可以直接修改input buffer,达到了修改buffer的目的。。。。。。

③ 其后面必须得接一个node,而不能直接接入target buffer,否则无法使能bypass功能;

④ bypass node设置以后,需要设置一个BypassPortSrcId,用于告知当前的output port应该从哪个input port获取image数据:

<SrcPort>
        <PortName>ChiNodeOutputPort</PortName>
        <PortId>0</PortId>
        <NodeName>ChiExternalNode_MUXER</NodeName>
        <NodeId>255</NodeId>
        <NodeInstance>ChiNodeInstanceName11</NodeInstance>
        <NodeInstanceId>11</NodeInstanceId>
        <BypassPortSrcId>0</BypassPortSrcId>
        <BypassPortSrcId>30</BypassPortSrcId>
        <BypassPortSrcId>60</BypassPortSrcId>
</SrcPort>

注:8750上经常看到一个output port关联了两三个BypassPortSrcId,这时在实际跑的时候只会有一个input port被保留,如muxer11(一个copy node)在非夜景下,会disable muxer 11的0/60 inport,而保留full 30 inprot。在夜景下,会disable 0/30 inport,而保留full 60 inport,这是因为muxer里面设置了aisr的裁剪优先级优于viull。

inplace node基本特点

① requestinfo中的inputHandle和outputHandle共享同一片内存;

② 仅允许有一个input port和一个output port;

此node必须是最后一个node,即接下来需要连接到target buffer上;

④ 添加LinkProperties:inplacebuffer标签;

    <Link>
      <LinkProperties>
        <LinkFlags>LinkFlagSinkInplaceBuffer</LinkFlags>
      </LinkProperties>
      <SrcPort>
      </SrcPort>
      <DstPort>
      </DstPort>
    </Link>

二、使能bypass

① pipeline xml配置

    <Node>
      <NodeName>AAAAA</NodeName>
      <NodeId>255</NodeId>
      <NodeInstance>INSTANCE_AAAAA</NodeInstance>
      <NodeInstanceId>26</NodeInstanceId>
      <PrunableVariant variantGroup="VIULL" variantType="Enabled"/>
      <NodeProperty>
        <NodePropertyName>NodePropertyCustomLib</NodePropertyName>
        <NodePropertyId>1</NodePropertyId>
        <NodePropertyDataType>STRING</Nod
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值