完善资料让更多小伙伴认识你,还能领取20积分哦, 立即完善>
|
小弟正做基于Android4.4 PAD,SDK来做264解码方面的工作,目前遇到了一些问题,追究到OMX层,下面的具体硬件解码的源码,SDK里却没有,是直接调用的libstagefrighthw.so库,小弟想在此研究下具体生成此解码库的源码在何处,望求知情人士给出一些帮助!在此谢谢
顺便问一下在OMX添加解码组件的时候,分为了硬件解码和软件解码 OMXMaster::OMXMaster() : mVendorLibHandle(NULL) { addVendorPlugin();//硬件 addPlugin(new SoftOMXPlugin);//软件 } 那OMX默认优先使用谁呢?RkOn2Decoder这个编码组件应该是硬件解码?那究竟在什么情况下才使用这个解码组件呢?默认的硬件解码不是OMX.rk.video_decoder.avc吗??? mPlayerExtCfg.use_iommu这个参数究竟有何用???设置为0,PAD版本就可以解码隔行但是用的是RkOn2Decoder这个组件,设置为1,就不能解码隔行,而且用的就是OMX.rk.video_decoder.avc这个组件!!!究竟有何区别啊????又没有代码注释!很难懂啊! |
|
相关推荐
3个回答
|
|
|
基本找到原因
在OMXCodec::Create中findMatchingCodecs list = MediaCodecList::getInstance(); parseXMLFile解析/etc/media_codecs.xml 得到OMX.rk.video_decoder.avc和RkOn2Decoder 循环匹配mine list->findCodecByType(mime, createEncoder, index);} 将匹配到的解码组件添加到列表中 if (((flags & kSoftwareCodecsOnly) && IsSoftwareCodec(componentName)) || ((flags & kHardwareCodecsOnly) && !IsSoftwareCodec(componentName)) || (!(flags & (kSoftwareCodecsOnly | kHardwareCodecsOnly)))) { ssize_t index = matchingCodecs->add(); CodecNameAndQuirks *entry = &matchingCodecs->editItemAt(index); entry->mName = String8(componentName); entry->mQuirks = getComponentQuirks(list, matchIndex); } 在setNativeWindow_l中 if(!pfrmanager->mPlayerExtCfg.use_iommu){ err = initVideoDecoder(OMXCodec::kSoftwareCodecsOnly); }else{ err = initVideoDecoder(OMXCodec::kHardwareCodecsOnly); } 注意这里的flag是和传入的flag相与的结果,当io_mmu设置为1时,这里的flag为kHardwareCodecsOnly,为0时flag为kSoftwareCodecsOnly 事实证明 当社会io_mmu为1时此时匹配到的解码组件应该是OMX.rk.video_decoder.avc,io_mmu为0时匹配到的是RkOn2Decoder,这也解释了为什么设置io_mmu为1时可以解码隔行视频是因为AWESOMPLAYER调用了RkOn2Decoder解码和以及在FrameQueueManager里的IEP来解交错! |
|
|
|
|
|
请问您实现硬件解码了吗 ,效果怎么样?能播放rtsp流吗
|
|
|
|
|
|
RTSP只是类似HTTP的一种流的传输方式而已,解码都搞定了,添加相应的输入接口就好了
|
|
|
|
|
你正在撰写答案
如果你是对答案或其他答案精选点评或询问,请使用“评论”功能。
谁有3566+电池+POE充电的方案,有个项目需要用该功能的主板
880 浏览 0 评论
RK3588的GMAC0与PHY的参考时钟电平匹配问题??????
4677 浏览 1 评论
请问各位大佬,如何解决,瑞芯微 RV1126B 使用 mpp 自带工具 调试时,内核直接报错崩溃!
1833 浏览 0 评论
使用rk3568开发板,核0\\1\\3运行linux,核2运行hal,在核0中怎么关闭核2
2393 浏览 0 评论
2395 浏览 0 评论
/9
小黑屋| 手机版| Archiver| 电子发烧友 ( 湘ICP备2023018690号 )
GMT+8, 2025-12-3 13:49 , Processed in 0.863508 second(s), Total 75, Slave 58 queries .
Powered by 电子发烧友网
© 2015 bbs.elecfans.com
关注我们的微信
下载发烧友APP
电子发烧友观察
版权所有 © 湖南华秋数字科技有限公司
电子发烧友 (电路图) 湘公网安备 43011202000918 号 电信与信息服务业务经营许可证:合字B2-20210191

淘帖
2397