Discuz! Board

标题: 还是走合成之后的buf修改 [打印本页]

作者: zangcf    时间: 2016-4-18 18:10
标题: 还是走合成之后的buf修改
// Overrides ConsumerBase:nFrameAvailable(), does not call base class impl.
void FramebufferSurface:nFrameAvailable() {
    sp<GraphicBuffer> buf;
    sp<Fence> acquireFence;
    status_t err = nextBuffer(buf, acquireFence);
    if (err != NO_ERROR) {
        ALOGE("error latching nnext FramebufferSurface buffer: %s (%d)",
                strerror(-err), err);
        return;
    }
    err = mHwc.fbPost(mDisplayType, acquireFence, buf);
    if (err != NO_ERROR) {
        ALOGE("error posting framebuffer: %d", err);
    }
}

status_t err = nextBuffer(buf, acquireFence);
这个就是获得那个buffer。

这个buffer对应的物理地址是多少呢?



作者: zangcf    时间: 2016-4-18 18:51
本帖最后由 zangcf 于 2016-4-18 18:56 编辑

ANativeWindowBuffer* getNativeBuffer() const;
从GraphicBuffer得到ANativeWindowBuffer



然后使用上面方法操作buffer





欢迎光临 Discuz! Board (http://47.89.242.157:9000/bbs/discuz/) Powered by Discuz! X3.2