解码器的回调,Input Buffer,(OH_AVMemory *data)这块内存是如何分配的

解码器的回调,Input Buffer,(OH_AVMemory *data)这块内存是如何分配的

HarmonyOS
2024-05-07 22:53:41
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
rosytree

input回调来的时候,系统并不知道要申请多大的内存。所以是预先申请足够大的内存,比如1MB,实际用300K,通过OH_AVCodecBufferAttr告知解码器实际用了300K,buffer和index做关联,PushInputData之后才会解码这300K。在往里面拷贝数据时要先判断一下memory的大小,如果写入的数据长度大于OH_AVMemory_GetSize会crash。参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references/_core-0000001820881253#ZH-CN_TOPIC_0000001820881253__oh_avmemory_getsize

分享
微博
QQ
微信
回复
2024-05-08 16:39:24
相关问题
java播放怎么用解码器?
3251浏览 • 1回复 待解决
Emitter如何声明函数类型
177浏览 • 1回复 待解决
OpenHarmony idl如何实现异步
2851浏览 • 1回复 待解决
webview静态资源下载完成
134浏览 • 1回复 待解决
【播放】硬解码支持Demo
172浏览 • 1回复 待解决
如何实现crash堆栈抓取、crash
281浏览 • 1回复 待解决
网络请求后如何进行
142浏览 • 1回复 待解决
如何为 C++ 提供函数?
662浏览 • 1回复 待解决
NAPI执行上层时,如何获取env
384浏览 • 1回复 待解决
在接口内定义匿名语法
161浏览 • 1回复 待解决
Ability生命周期函数有哪些呢?
3763浏览 • 1回复 待解决