历史上的今天
今天是:2025年03月24日(星期一)
2021年03月24日 | 音频几个很重要的参数
2021-03-24 来源:elecfans
音频几个很重要的参数!
采样率:每秒采集数据的次数
采样精度:每次采集数据的位数
通道数:存在几路音频
比特率:针对编码格式,表示压缩编码后每秒的音频数据量大小。
音频的帧的概念没有视频帧那么清晰,几乎所有视频编码格式都可以简单的认为一帧就是编码后的一副图像。
但音频帧跟编码格式相关,它是各个编码标准自己实现的。因为如果以PCM(未经编码的音频数据)来说,它根本就不需要帧的概念,根据采样率和采样精度就可以播放了。比如采样率为44.1HZ,采样精度为16位的音频,你可以算出bitrate(比特率)是44100*16kbps,每秒的音频数据是固定的44100*16/8 字节。
amr帧比较简单,它规定每20ms的音频是一帧,每一帧音频都是独立的,有可能采用不同的编码算法,以及不同的编码参数。
mp3帧较为复杂一点,包含了更多的信息,比如采样率,比特率,等各种参数。

AT测试前设定音频参数
这里主要是说明一个从C语言调用AudioSystem::SetParameter封装的过程。
新增一个audio_hw_interface.cpp文件
#include 《media/AudioSystem.h》
namespace android {
extern “C” void send_audio_calibration(int acdb_id, int capability, int app_id, int sample_rate)
{
char param[50];
String8 paramValue;
snprintf(param, sizeof(param), “send_audio_calibraTIon=%d-%d-%d-%d”,acdb_id, capability, app_id, sample_rate);
paramValue.setTo(param);
AudioSystem::setParameters(paramValue);
return;
}
}; // namespace android
在Android.mk中添加需要头文件搜索目录和动态库
LOCAL_C_INCLUDES := $(LOCAL_PATH)/include
$(TOP)/frameworks/av/include/media
LOCAL_SHARED_LIBRARIES := libcuTIls liblog libc libmedia libuTIls
在调用该封装函数的C语言中。
extern void send_audio_calibraTIon(int acdb_id, int capability, int app_id, int sample_rate);
send_audio_calibration(acdb_id, 2,14, 48000);
史海拾趣
|
WINCE+ARM的系统,把全局不变的数组加一个const修饰符能起到什么作用?减少内存的占用?提高程序执行速度?ARM下ROM可以当RAM使用吗? WINCE+ARM的系统,把全局不变的数组加一个const修饰符能起到什么作用?减少内存的占用?提高程序执行速度?ARM下ROM可以当RAM使用吗?… 查看全部问答> |
|
我本科毕业设计做GPS接收系统,现在该做$GPGGA、$GPRMC识别那部分了,因为GPS信息是信息流,不是事先存好的,编个子函数,有很多参数要传递,很麻烦,还有很多问题感觉不好解决,怎么识别这几个字符串大家有什么好的方法没?… 查看全部问答> |
|
我开发一个video class upper flter driver, 用于处理从摄像头的device driver取得的frame。在64bit windows下, Image类已经有一个class upper filter driver 叫 “ksthunk.sys”. 我发现如果把我的filter driver 写在 ksthunk的后面,这样在devic ...… 查看全部问答> |
|
本人想设计一个燃气报警系统可是感觉有点力不从心想请各位高手指点一下 不胜感激! 这是我设计的系统框图 传感器→放大器→A/D转换→AT89S52→ISD1420→喇叭(还可以再加个LCD) MQ-5 … 查看全部问答> |
|
据国外媒体报道,为苹果生产iPhone和iPad的中国富士康工厂的员工,曾被强迫签署不自杀协议。据悉,富士康在出现十余名员工接连自杀的状况之后,要求员工签署不自杀协议。富士康的工厂被报道员工每周需要工作6天12小时,每月工作时间总 ...… 查看全部问答> |




