CubieBoard中文论坛

 找回密码
 立即注册
搜索
热搜: unable
查看: 7173|回复: 2

H8 H264 硬解码

[复制链接]
发表于 2016-7-15 14:46:52 | 显示全部楼层 |阅读模式
请问有谁使用过H8做硬解码?

本人在使用,全志官方解码库https://github.com/allwinner-zh/media-codec做解码时遇到以下问题,请问哪位大神能指点一下:
1. 开发板是CubieBoard 5,系统使用的是Cubie官方给的linaro-server
Linux version 3.4.39 (sam@cubie) (gcc version 4.6.3 20120201 (prerelease) (crosstool-NG linaro-1.13.1-2012.02-20120222 - Linaro GCC 2012.02) )

2. 编译运行media-codec提供的demo程序后,出现了段错误
warning: awplayer <ve.c:109>: xxxxxxx firstMemchunk.size(0) '0x40000000'
Segmentation fault

3. 使用gdb调试后定位到问题出在venc_device.c文件里面
Program received signal SIGSEGV, Segmentation fault.
VencoderDeviceCreate (type=type@entry=VENC_CODEC_H264)
     at venc_device.c:102
warning: Source file is more recent than executable.
102                if (posVEncNode->type == type)

3. 进入查看源码,发现出现错误的原因是:VencoderDeviceCreate函数需要获取的设备实例都源于下面这个全局变量gVEncoderList ,但是奇怪的是找遍了源码也没有发现再哪里调用了VEncoderRegister()向gVEncoderList 注入设备实例

static struct VEncoderListS gVEncoderList = {{NULL, NULL}, 0, PTHREAD_MUTEX_INITIALIZER};
【venc_device.c 45行】

int VEncoderRegister(VENC_CODEC_TYPE type, char *desc, VENC_DEVICE *device)
【venc_device.h 44行】
回复

使用道具 举报

发表于 2016-7-15 16:45:59 | 显示全部楼层
https://github.com/allwinner-zh/media-codec  这里主要是针对A20 平台的。 H8目前没有相关linux硬件解码库文件。   可以去用android , 使用MdeiaCodec
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-7-18 09:47:08 | 显示全部楼层
好的,谢谢版主!
上周五自己写了个解码的测试程序,果然还是不行啊
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|Archiver|手机版|粤ICP备13051116号|cubie.cc---深刻的嵌入式技术讨论社区

GMT+8, 2024-5-3 04:00 , Processed in 0.019596 second(s), 15 queries .

Powered by Discuz! X3.4

© 2001-2012 Comsenz Inc. | Style by Coxxs

返回顶部