当前位置: 首页 > news >正文

LuatOS-SOC接口文档(air780E)--camera - codec - 多媒体-编解码

常量

常量

类型

解释

codec.MP3

number

MP3格式

codec.WAV

number

WAV格式

codec.AMR

number

AMR-NB格式,一般意义上的AMR

codec.AMR_WB

number

AMR-WB格式

codec.create(type, isDecoder)

创建编解码用的codec

参数

传入值类型

解释

int

多媒体类型,目前支持codec.MP3 codec.AMR

boolean

是否是解码器,true解码器,false编码器,默认true,是解码器

返回值

返回值类型

解释

userdata

成功返回一个数据结构,否则返回nil

例子

-- 创建解码器
local decoder = codec.create(codec.MP3)--创建一个mp3的decoder
-- 创建编码器
local encoder = codec.create(codec.AMR, false)--创建一个amr的encoder

codec.info(decoder, file_path)

decoder从文件中解析出音频信息

参数

传入值类型

解释

userdata

解码用的decoder

string

文件路径

返回值

返回值类型

解释

boolean

是否成功解析

int

音频格式

int

声音通道数

int

采样频率

int

采样位数

boolean

是否有符号

例子

local result, audio_format, num_channels, sample_rate, bits_per_sample, is_signed= codec.get_audio_info(coder, "xxx")

codec.data(decoder, out_buff)

decoder从文件中解析出原始音频数据,比如从MP3文件里解析出PCM数据,这里的文件路径已经在codec.info传入,不需要再次传入

参数

传入值类型

解释

userdata

解码用的decoder

zbuff

存放输出数据的zbuff,空间必须不少于16KB

返回值

返回值类型

解释

boolean

是否成功解析

例子

local result = codec.get_audio_data(coder, zbuff)

codec.encode(coder, in_buffer, out_buffer, mode)

编码音频数据,由于flash和ram空间一般比较有限,目前只支持amr-nb编码

参数

传入值类型

解释

userdata

codec.create创建的编解码用的coder

zbuff

输入的数据,zbuff形式,从0到used

zbuff

输出的数据,zbuff形式,自动添加到buff的尾部,如果空间大小不足,会自动扩展,但是会额外消耗时间,甚至会失败,所以尽量一开始就给足空间

int

amr_nb的编码等级 0~7(即 MR475~MR122)值越大消耗的空间越多,音质越高,默认0

返回值

返回值类型

解释

boolean

成功返回true,失败返回false

例子

codec.encode(amr_coder, inbuf, outbuf, codec.AMR_)

codec.release(coder)

释放编解码用的coder

参数

传入值类型

解释

coder

codec.create创建的编解码用的coder

返回值

例子

codec.release(coder)
http://www.lryc.cn/news/169132.html

相关文章:

  • 《动手学深度学习 Pytorch版》 6.6 卷积神经网络
  • 【微信小程序】项目初始化
  • C#,《小白学程序》第二十六课:大数乘法(BigInteger Multiply)的Toom-Cook 3算法及源程序
  • destoon自定义一个archiver内容文档
  • 5-1 Dataset和DataLoader
  • IDEA创建完Maven工程后,右下角一直显示正在下载Maven插件
  • 最新清理删除Mac电脑内存空间方法教程
  • 【调试经验】MySQL - fatal error: mysql/mysql.h: 没有那个文件或目录
  • 腾讯mini项目-【指标监控服务重构】2023-08-12
  • kubeadm部署k8sv1.24使用cri-docker做为CRI
  • 在c#中使用CancellationToken取消任务
  • 【项目经验】:elementui多选表格默认选中
  • 外星人入侵游戏-(创新版)
  • HTML 学习笔记(基础)
  • 最小二乘法
  • 使用stelnet进行安全的远程管理
  • python 二手车数据分析以及价格预测
  • JAVA医药进销存管理系统(附源码+调试)
  • H5 <blockquote> 标签
  • nginx配置指南
  • 【数据结构】优先级队列(堆)
  • 前端笔试2
  • LeetCode:66.加一
  • Redis 常用命令
  • Integer.valueOf()用于字符和字符串的区别
  • 机械寿命预测(基于NASA C-MAPSS数据的剩余使用寿命RUL预测,Python代码,CNN_LSTM模型,有详细中文注释)
  • ConfigMaps-1
  • docker上安装es
  • #循循渐进学51单片机#c语言基础和流水灯实现#not.3
  • 算法刷题 week3