转:https://blog.csdn.net/lugandong/article/details/72468831

一、

拿512fs说话:

看图知道采样的位深是32bit(位),左右声道各占了8*32BCLK,那一个完整的LRCLK一共8*32*2=512BCLK。

其实xxxfs就是这么算出来的,也是固定的,当你定了几个channel,多少位深,就几乎可以确认是多少fs了。从主观的角度来看,fs的数值越大,那么一个完整的LRCLK越多,那承载的数据量就越大,随之的就是音质就会更加好。

上图是32位的采样,2channel,xxxfs的选择有:

128fs、256fs、512fs

如果是16bit的采样,2channel呢?

16*2(channel)*2(每个LR有几个16BCLK组成) = 64fs

按照倍数的增加,会有如下的选择:

64fs、128fs、256fs、512fs

如果是24bit的采样,2channel呢?

24*2(channel)*2(每个LR有几个16BCLK组成) = 96fs

按照倍数的增加,会有如下的选择:

96fs、192fs、384fs、768fs(这个级别的估计一般的ADC很难)

二、

那BCLK是怎么算的?

例在Android系统中,播放的音频文件格式:

sample_rate=44.1Khz,sample_length=16,channel=2时,

那么BCLK应该为2×44.1Khz×16=32xsample_rate=1.4112Mhz

MCLK存在着关系,这个一般要看芯片。如果存在这4倍的关系,那么:

MCLK = 4*BCLK=5.6448Mhz

至于MCLK的选择还要看外部的晶振。

鉴于如上的,那它是xxxfs?

正常是fs=MCLK/ sample_rate=5.6448*1000/44.1=128fs

fs=16*2*(LRCLK各几个16 BCLK组)=128fs,一共是4个。

如果现在你要对外部晶振进行选型了,现在是sample_rate=48Khz,sample_length=16,channel=2,我们选择512fs,那外部晶振MCLK要选择多大?

MCLK=fs*sample_rate=512*48=24.576Mhz

---------------------

作者:慢几步-深几度-前行

来源:CSDN

原文:https://blog.csdn.net/lugandong/article/details/72468831

版权声明:本文为博主原创文章,转载请附上博文链接!

基于Linux ALSA音频驱动的wav文件解析及播放程序 2012

本设计思路:先打开一个普通wav音频文件,从定义的文件头前面的44个字节中,取出文件头的定义消息,置于一个文件头的结构体中.然后打开alsa音频驱动,从文件头结构体取出采样精度,声道数,采样频率三个重 ...

嵌入式驱动开发之---Linux ALSA音频驱动(一)

本文的部分内容参考来自DroidPhone的博客(http://blog.csdn.net/droidphone/article/details/6271122),关于ALSA写得很不错的文章,只是少 ...

Linux ALSA音频库(二) 环境测试+音频合成+语音切换 项目代码分享

1. 环境测试 alsa_test.c #include #include // 官方测试代码, 运行后只要有一堆信息 ...

Linux ALSA 音频库 配置和使用

ALSA应用库是核心功能,而alsa-utils是一些工具功能集合库.单纯地播放一个wav文件,使用alsa-utils即可,如果还需要合成音频.调试音频质量,那么就需要ALSA应用库. 欲安装使用A ...

Linux ALSA音频PCM播放编程

使用ALSA播放两个频率的单音,并使用GNU Radio中的Audio Source和FFT来观测声音的频谱. #include #include & ...

基于Orangpi Zero和Linux ALSA实现WIFI无线音箱(三)

作品已经完成,先上源码: https://files.cnblogs.com/files/qzrzq1/WIFISpeaker.zip 全文包含三篇,这是第三篇,主要讲述接收端程序的原理和过程. 第一 ...

Linux ALSA声卡驱动之八:ASoC架构中的Platform

1.  Platform驱动在ASoC中的作用 前面几章内容已经说过,ASoC被分为Machine,Platform和Codec三大部件,Platform驱动的主要作用是完成音频数据的管理,最终通过C ...

Linux ALSA声卡驱动之五:移动设备中的ALSA(ASoC)

转自http://blog.csdn.net/droidphone/article/details/7165482 1.  ASoC的由来 ASoC--ALSA System on Chip ,是建立 ...

嵌入式Linux下ALSA音频架构ALSA-lib移植与编译心得

**************************************************************************************************** ...

随机推荐

Environment类,获取程序所在机器信息

一.属性 CommandLine  获取该进程的命令行.CurrentDirectory 获取或设置当前工作目录的完全限定路径.ExitCode 获取或设置进程的退出代码.HasShutdownSta ...

power designer 连接数据库提示“connection test failed”

利用powerdesigner反向生成表结构时,需要mysql连接,配置好连接,测试时直接报:connection test failed”! OS:WIN7 旗舰版 64位 JDK: 64位 Pow ...

去除a标签链接触摸时产生边框

排除误解 网络资料说这个属性只用于iOS(iPhone和iPad),其实是错误的,android手机大部分也是支持的,只是显示效果不一样,移动开发并不成熟,更多的还需要大家去实践来辨别真伪- - -w ...

UserControl 用户定义组件

P2370 yyy2015c01的U盘(二分+背包)

思路:先说一下题意吧.就是给你n个文件大小为v,价值为c, 但是硬盘的大小为S, 而且要存的总价值大于等于p.问每次传输k大小的文件.问k的最大值是多少? 我们以k为二分对象. 直接讲检验函数吧. 假 ...

计算机中K到底是1000还是1024?

1000和1024的争论,其实是传输领域和存储领域概念不清引起的;在传输领域,1秒钟传输多少字位(即b,bit),肯定是用10进制表示,所以是1kb=1000b,即1秒钟传输1000个比特位;就好像: ...

持续集成--Jenkins--1

持续集成之Jenkins安装部署   1.安装JDK Jenkins是Java编写的,所以需要先安装JDK,这里采用yum安装,如果对版本有需求,可以直接在Oracle官网下载JDK. [root@l ...

How to turn on syntax highlighting in osx

put follow code in ~/.vimrc set ai " auto indenting set history=100 " keep 100 lines of hi ...

android动手写控件系列——老猪叫你写相机

前记:Android这个开源而自由的系统,为我们带来开发便利,同时也埋下太多的深坑.例如调用系统自带的相机就会出现照片丢失,或者其他各种各样的问题.因此,看来自定义一个相机十分的必要. 要自定义相机我 ...

linux音频时钟bclk,linux alsa音频中采样率fs、比特率BCLK 、主时钟MCLK关系相关推荐

  1. 如何提高linux的时钟精度,Linux时钟精度提高有什么办法?

    2 动态高精度时钟设计和实现 动态高精度时钟设计方案借鉴了KURT-Linux思想,但与其不同的是提供一个与标准Linux核心时钟并行的具有精密刻度的实时时钟,并与原核心时钟区别开.采用X86体系CP ...

  2. linux 设置时钟 教程,Linux hwclock命令参数及用法详解--Linux显示/设置硬件时钟命令...

    hwclock(hardware clock) 功能说明:显示与设定硬件时钟. 语 法:hwclock [--adjust][--debug][--directisa][--hctosys][--sh ...

  3. linux进程时钟时间,Linux的时钟

    Linux的时钟 作者:linuxer 发布于:2017-5-17 18:55 分类:时间子系统 一.前言 时钟或者钟表(clock)是一种计时工具,每个人都至少有一块,可能在你的手机里,也可能佩戴在 ...

  4. Linux下如何抓取串口码流,linux alsa音频中采样率fs、比特率BCLK 、主时钟MCLK关系...

    转:https://blog.csdn.net/lugandong/article/details/72468831 一. 拿512fs说话: 看图知道采样的位深是32bit(位),左右声道各占了8* ...

  5. linux内核时钟管理,Linux时钟管理透彻分析

    Linux时钟管理透彻分析.硬件资源越来越庞大和复杂,内核的另一个挑战就是要便捷的管理这些资源.同时,面对如此之多的平台不同的CPU,管理机制需要统一适用,这就需要对资源的管理抽象到更加通用的层次.C ...

  6. linux adc时钟设置,linux设备驱动归纳总结(十三):1.触摸屏与ADC时钟

    linux设备驱动归纳总结(十三):1.触摸屏与ADC时钟 xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx ...

  7. linux 设置时钟 教程,linux时钟同步入门教程

    每个服务器系统,时钟的同步时非常重要的.经常使用windows的人知道,windows的时间特别好设置,都是界面化的.但是,linux则看着比较复杂,本文就以centos为例,教会您时钟同步的安装.配 ...

  8. Linux 驱动开发 三十五:Linux 内核时钟管理

    参考: linux时间管理,时钟中断,系统节拍_u010936265的博客-CSDN博客_系统节拍时钟中断 Linux内核时钟系统和定时器实现_anonymalias的专栏-CSDN博客_linux内 ...

  9. Linux ALSA 音频系统:物理链路篇

    原址 1. Overview 硬件平台及软件版本: Kernel - 3.4.5 SoC - Samsung exynos CODEC - WM8994 Machine - goni_wm8994 U ...

最新文章

  1. VS2010 MFC中改变static字体颜色、大小、背景颜色(自定义类),及手动关联变量的方法...
  2. 从pfx里面 解析出公私钥
  3. iOS之深入解析GCD的底层原理
  4. 取pi的前8位的解压密码_两种方式实现取16位变量的高低8位, 不严谨对比
  5. 把Autofac玩的和java Spring一样6
  6. C语言各种类型数据的输出显示
  7. python单元测试框架unittest介绍和使用_Python单元测试框架unittest简明使用实例
  8. 收藏网站制作常用经典css.div.布局.设计实例打包下载
  9. eclipse svn
  10. 怎么解决计算机键盘驱动,键盘驱动不兼容,详细教您键盘驱动不兼容怎么解决...
  11. viewHolder的作用
  12. EXCEL,去掉1列中的重复数据的 公式方法
  13. 王者荣耀账号转服务器,王者荣耀安卓IOS怎么转换-帐号转区方法介绍
  14. xp无法搜索计算机,xp系统的笔记本电脑为什么搜不到手机热点的信号
  15. 0 公式 0 基础学习电磁兼容 — 1. EMC 测试类型简介
  16. GPS NMEA数据包解析
  17. Java学习之路3——方法定义、调用【重拾Java】
  18. 树莓派keras加载modle失败_特斯拉+树莓派实现车牌识别检测系统
  19. 《黑天鹅》观感:成长的蜕变 --摘抄
  20. android app防止锁屏_触控禁止!Touch Protector 锁定屏幕触控功能,避免意外操作(Android)...

热门文章

  1. asp.net操作Excel总结
  2. mysql源码安装配置_MySQL源码安装及配置
  3. vscode 显示多个文件_优秀的 VS Code 前端开发扩展
  4. css 超出隐藏滚动条_css 之内容溢出滚动,隐藏滚动条(解决火狐浏览隐藏不了滚动条问题)...
  5. Java黑皮书课后题第3章:*3.13(金融应用:计算税款)程序清单3-5给出了计算单身登记人税款的源代码。将程序清单3-5补充完整,从而计算所有登记的婚姻状态的税款
  6. 7.定义一个有80个元素的字符数组,从键盘输入一串字符,将其中的大写字母转换为小写字母,而将原来为小写的字母转换为大写字母,其他字符不变。
  7. 15个Google面试题以及答案~~~~你会几个?
  8. 洛谷P2055 [ZJOI2009]假期的宿舍 题解
  9. 如何查询一个进程下面的线程数(进程和线程区别)
  10. tcp协议与粘包现象【转http://www.cnblogs.com/wzd24/archive/2007/12/24/1011932.html】