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的具体信息。

相关推荐
hz567898 小时前
内网视频会议系统建设方案:适合政企单位的安全会议选择
安全·云计算·音视频·实时音视频·信息与通信
2601_956865779 小时前
怎么用AI生成带货视频?电商内容创作工具推荐与选择思路
人工智能·aigc·音视频
冰可乐配9 小时前
fmpeg音频编码组件aac(Advanced Audio Coding (AAC) encoder)学习
学习·音视频·aac
气泡音人声分离10 小时前
音频技术解析|混音的底层逻辑:从采样点相加到艺术层次塑造
音视频·混音·音频剪辑
日光明媚11 小时前
LongLive-英伟达-数字人实时生成
人工智能·计算机视觉·aigc·音视频
AI服务老曹12 小时前
GB28181接入AI视频分析常见问题与排查清单:从国标平台注册、通道同步到心跳断线的工程实践
人工智能·音视频
ai产品老杨16 小时前
GB28181接入AI视频分析项目实战记录:从国标注册、通道同步到信令调优
人工智能·音视频
Niuguangshuo16 小时前
TTS 架构的六代演进(二):第 1-2 代 · 拼接合成与 HMM-TTS
音视频
最爱老式锅包肉17 小时前
《HarmonyOS技术精讲-蓝牙》传统蓝牙实战:音频播放与文件传输
华为·音视频·harmonyos
言乐617 小时前
Python视频相对亮度检测
数据库·python·计算机视觉·小程序·音视频