【Codecs系列】AMBA CV22芯片编码流程

2024-01-16 17:08

本文主要是介绍【Codecs系列】AMBA CV22芯片编码流程,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

DATE: 2019-9-1


AMBA CV22编码流程:
  1. 建立netlink通信:目的是开启idsp,vdsp及其与arm之间的通信;
  2. 打开IAV和ucode设备;
  3. 系统初始化:IAV进入IDLE状态,进行Buffer,canvas和stream配置,IAV进入Preview状态。
  4. 设置编码参数:在启动编码配置静态编码参数(编码器类型设置,码率控制参数初始化,GOP初始化),编码启动之后设置动态参数(实时更改参数)。
  5. 启动编码:调用API即可(IAV_IOC_START_ENCODE);
  6. 启动获取码流线程:具体参考test_stream.c(单独调用情况下)
  7. 开始EFM送帧:采用EFM方式将YUV按帧送入vDSP中进行编码(为YUV/QP Matrix/码流BSB获取内存)
    6.1. 为YUV获取内存,创建ME1/ME0文件
    6.2. 获取一帧EFM帧,用于填YUV(IAV_IOC_EFM_REQUEST_FRAME)
    6.3. 启动一帧EFM帧的编码(IAV_IOC_EFM_HANDSHAKE_FRAME),作用是设置一帧YUV内存到DSP中
    6.4 ROI配置,采用stream sync。
  8. 写码流:调用IAV_IOC_QUERY_DESC, 将码流缓冲区BSB中的编码帧码流写到文件中。注意事项:码流获取可以采用阻塞获取,或者非阻塞获取。采用非阻塞获取情况下࿰

这篇关于【Codecs系列】AMBA CV22芯片编码流程的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/613311

相关文章

java Long 与long之间的转换流程

《javaLong与long之间的转换流程》Long类提供了一些方法,用于在long和其他数据类型(如String)之间进行转换,本文将详细介绍如何在Java中实现Long和long之间的转换,感... 目录概述流程步骤1:将long转换为Long对象步骤2:将Longhttp://www.cppcns.c

spring-gateway filters添加自定义过滤器实现流程分析(可插拔)

《spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔)》:本文主要介绍spring-gatewayfilters添加自定义过滤器实现流程分析(可插拔),本文通过实例图... 目录需求背景需求拆解设计流程及作用域逻辑处理代码逻辑需求背景公司要求,通过公司网络代理访问的请求需要做请

使用JavaConfig配置Spring的流程步骤

《使用JavaConfig配置Spring的流程步骤》JavaConfig是Spring框架提供的一种基于Java的配置方式,它通过使用@Configuration注解标记的类来替代传统的XML配置文... 目录一、什么是 JavaConfig?1. 核心注解2. 与 XML 配置的对比二、JavaConf

基于Go语言实现Base62编码的三种方式以及对比分析

《基于Go语言实现Base62编码的三种方式以及对比分析》Base62编码是一种在字符编码中使用62个字符的编码方式,在计算机科学中,,Go语言是一种静态类型、编译型语言,它由Google开发并开源,... 目录一、标准库现状与解决方案1. 标准库对比表2. 解决方案完整实现代码(含边界处理)二、关键实现细

Java对接Dify API接口的完整流程

《Java对接DifyAPI接口的完整流程》Dify是一款AI应用开发平台,提供多种自然语言处理能力,通过调用Dify开放API,开发者可以快速集成智能对话、文本生成等功能到自己的Java应用中,本... 目录Java对接Dify API接口完整指南一、Dify API简介二、准备工作三、基础对接实现1.

解决IDEA报错:编码GBK的不可映射字符问题

《解决IDEA报错:编码GBK的不可映射字符问题》:本文主要介绍解决IDEA报错:编码GBK的不可映射字符问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录IDEA报错:编码GBK的不可映射字符终端软件问题描述原因分析解决方案方法1:将命令改为方法2:右下jav

将Java项目提交到云服务器的流程步骤

《将Java项目提交到云服务器的流程步骤》所谓将项目提交到云服务器即将你的项目打成一个jar包然后提交到云服务器即可,因此我们需要准备服务器环境为:Linux+JDK+MariDB(MySQL)+Gi... 目录1. 安装 jdk1.1 查看 jdk 版本1.2 下载 jdk2. 安装 mariadb(my

Python使用自带的base64库进行base64编码和解码

《Python使用自带的base64库进行base64编码和解码》在Python中,处理数据的编码和解码是数据传输和存储中非常普遍的需求,其中,Base64是一种常用的编码方案,本文我将详细介绍如何使... 目录引言使用python的base64库进行编码和解码编码函数解码函数Base64编码的应用场景注意

Spring AI ectorStore的使用流程

《SpringAIectorStore的使用流程》SpringAI中的VectorStore是一种用于存储和检索高维向量数据的数据库或存储解决方案,它在AI应用中发挥着至关重要的作用,本文给大家介... 目录一、VectorStore的基本概念二、VectorStore的核心接口三、VectorStore的

python之流程控制语句match-case详解

《python之流程控制语句match-case详解》:本文主要介绍python之流程控制语句match-case使用,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐... 目录match-case 语法详解与实战一、基础值匹配(类似 switch-case)二、数据结构解构匹