RV1126解码(1)

比如我们现在要拉一个流, 拉一个rtmp或者拉一个rtsp的流,让它显示到显示屏上面去,此时就要用到我们这个解码模块了,把它个解出来并且发到其他模块去。

主要功能是通过FFMPEG的API读取每一帧的音视频数据,并通过RV1126的解码,对每一帧的压缩数据进行解码操作,并最终把解码的数据打印出来。这里要注意的是,在本DEMO中我们重点讲解RV1126的视频解码,音频解码不会做过多的说,因为要涉及到音视频同步的问题。用视频讲解

下面来我们先来看一下解码流程框图

RV1126总体代码讲解

在RV1126解码DEMO中,首先创建VDEC模块,我们用三个线程去处理,分别是ffmpeg_read_thread线程、 send_vdec_thread线程、read_vdec_thread线程。下面我们来看看这三个线程的具体作用。

1.1 初始化VDEC模块

作用:VDEC模块的初始化,VDEC的功能是解码每一帧视频数据。

1.2 FFMPEG_READ_THREAD线程

fmpeg_read_thread线程的主要功能是利用ffmpeg框架读取每一帧音视频复合流数据(这里用到的核心的av_read_frame),若检测到视频索引(video_index),则插入视频编码队列里面。

1.3 send_vdec_thread线程

send_vdec_thread线程主要功能是从video_queue队列里面获取每一帧视频数据,然后通过RV1126的API把每一帧视频编码数据送到VDEC解码器进行解码操作。

1.4 read_vdec_thread线程

read_vdec_thread线程主要功能是通过RK_MPI_SYS_GetMediaBuffer获取每一帧VDEC(解码器)数据,并打印出每一帧VDEC的具体信息。

相关推荐
做萤石二次开发的哈哈13 小时前
ERTC-产品介绍-应用场景
音视频·实时音视频
weixin_4216075515 小时前
短剧出海的AI 视频翻译技术方案:从单集打样到批量交付的工程全链路
人工智能·ffmpeg
Hommy8817 小时前
【剪映小助手】视频处理接口
开源·github·音视频·视频剪辑自动化·剪映api
ai产品老杨17 小时前
解耦异构算力与多协议接入:基于 Docker 与 GB28181 的企业级 AI 视频管理平台架构演进与源码交付实践
人工智能·docker·音视频
_oP_i17 小时前
FFmpeg 安装
ffmpeg
Gary Studio19 小时前
芯片界的“缝合怪”:拆解既管供电又管音频的 Rockchip RK809
音视频
ZFSS19 小时前
Pika 视频生成 API 集成教程
java·数据库·人工智能·ai·音视频
袁煦丞 cpolar内网穿透实验室20 小时前
Remotion让视频创作告别剪按钮——AI生成视频+像素级精准控制!cpolar内网穿透实验室第700个成功挑战
人工智能·音视频·远程工作·内网穿透·cpolar·安全内网连接
做萤石二次开发的哈哈20 小时前
ERTC产品文档
音视频·实时音视频
AI服务老曹21 小时前
深度解析:基于 Docker 部署与 GB28181/RTSP 统一接入的跨平台 AI 视频管理系统(附源码交付与边缘计算架构设计)
人工智能·docker·音视频