[发明专利]一种高效可转码的视频解码方法在审
| 申请号: | 202110824903.1 | 申请日: | 2021-07-21 |
| 公开(公告)号: | CN113727115A | 公开(公告)日: | 2021-11-30 |
| 发明(设计)人: | 高娟 | 申请(专利权)人: | 天津津航计算技术研究所 |
| 主分类号: | H04N19/44 | 分类号: | H04N19/44;H04N19/40;H04N19/42;G06F13/42;G06F13/28 |
| 代理公司: | 中国航天科技专利中心 11009 | 代理人: | 茹阿昌 |
| 地址: | 300000 天津市*** | 国省代码: | 天津;12 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 高效 可转码 视频 解码 方法 | ||
1.一种高效可转码的视频解码方法,其特征在于,包括如下步骤:
1)配置ffmpeg的编译属性和参数,将ffmpeg动态库移植到海思平台;
2)配置PCIE设备,启动PCIE通道,制定主设备和从设备传输规则;
3)根据通道数为每个通道创建PCIE读数据线程,启动PCIE读任务获取主机传输的原始图像数据;
4)创建ffmpeg获取数据包线程,使用ffmpeg动态库获取含参数帧的完整压缩图像数据包;
5)对完整数据包进行过滤,将可解码的数据包发送到硬解码模块;
6)获取硬解码模块内的图像;
7)将解码后的图像转化为目标格式图像;
8)将转码后的图像通过PCIE通道发送给主机。
2.根据权利要求1所述的一种高效可转码的视频解码方法,其特征在于,步骤7)所述将解码后的图像转化为目标格式图像,具体为:
71)判断历史记录的图像像素宽width和高height以及图像格式format是否与当前图像的宽和高、格式一致,如果一致就说明不需要进行转化,直接进入步骤8),否则进行下一步;
72)判断当前通道的转化上下文对象指针img_convert_ctx是否为空,如果不为空,则需要调用sws_freeContext库函数释放该对象指针,清空对该通道转化功能的配置参数;
73)将当前图像像素的宽、高和图像格式保存在历史记录标志width、height、format中,作为下次判断是否进行转化操作的参考值;
74)使用avpicture_get_size库函数,以一个最大图像像素Max_Width*Max_Height为函数参数,获取目标格式图像的字节数numBytes;
75)使用av_malloc库函数,以numBytes*sizeof(uint8_t)为参数,申请一个当前通道的存放图像RGB数据数组rgb;
76)以当前图像的RGB数据数组rgb、像素宽、高、目标格式为参数,调用avpicture_fill获取填充后的图像帧数组frameRgb;
77)使用当前图像帧的像素宽、高、当前帧格式、填充图像帧数组frameRgb、目标格式、转化方式为参数,调用sws_getContex库函数获取当前通道的转化上下文的对象img_convert_ctx;
78)使用sws_scale库函数将当前图像格式的图像转化为目标格式的图像,并进行相应的大小缩放,如果转化成功则将转化完的图像保存在frameRgb数组,如果转化不成功则报错提示并等待下一次图像传输。
3.根据权利要求2所述的一种高效可转码的视频解码方法,其特征在于,步骤1)所述将ffmpeg动态库移植到海思平台,具体为:
11)首先,配置ffmpeg编译属性,根据平台类型、cpu类型、编码解码器属性、格式转换属性、交叉编译属性配置参数;
12)修改acodec.h文件,增加变量:参数帧长度sei_len和数组sei_buf,根据应用层需求确定其参数帧大小SEI_BUF_SIZE;
13)在hevc_sei.c文件中的decode_nal_sei_prefix函数中添加获取参数帧功能;
14)然后,执行configure命令,在配置文件夹的子文件夹lib下将生成的解码库libavcodec、libavformat、libavutil、libswscale;
15)最后,将动态库拷贝到解码板卡的/usr/lib路径下。
4.根据权利要求3所述的一种高效可转码的视频解码方法,其特征在于,步骤2)所述主设备和从设备传输规则,具体为:
主设备上电后写入握手的规定内容,从设备在上电后检测到相应内容并握手成功;
主设备和从设备为每个通道分配读写的PCIE地址,并防止读写地址冲突;
主设备握手成功后在规定的PCIE地址段写入每个通道接收数据的地址内容;
主设备通过查询固定地址段的内容长度是否大于0作为判断是否有数据的标准,并在读走数据后将长度清零;
从设备在传输数据之前先判断主设备是否已读走上次数据,如果是则写入解码后的图像数据并将长度写入,如果不是则放弃本次写数据任务,等待下一次解码后的数据再传输。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于天津津航计算技术研究所,未经天津津航计算技术研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202110824903.1/1.html,转载请声明来源钻瓜专利网。
- 上一篇:一种可转码的视频解码方法
- 下一篇:一种跨基坑可移动式防护棚





