一、UAC有1.0和2.0,因Windows对2.0支持不好,我使用的是UAC1.0驱动

内核配置:CONFIG_USB_CONFIGFS_F_UAC1          ---这个宏配置无需物理codec,使用虚拟 alsa codec

驱动路径:"kernel\drivers\usb\gadget\function\f_uac1.c"

内核配置:CONFIG_USB_CONFIGFS_F_UAC1_LEGACY          ---这个宏配置需要物理codec

需要开启CONFIG_USB_CONFIGFS_F_ACC 和 CONFIG_USB_CONFIGFS_F_AUDIO_SRC  指定使用的Codec

驱动路径:"kernel\drivers\usb\gadget\function\f_uac1_legacy.c"

我的项目没有外接codec,所以使能CONFIG_USB_CONFIGFS_F_UAC1 就可以了

驱动中默认采样率是48K,2通道,如果需要修改默认值,可以改这个文件"kernel\drivers\usb\gadget\function\u_uac1.h"

#define UAC1_DEF_CCHMASK 0x1
#define UAC1_DEF_CSRATE     16000
#define UAC1_DEF_CSSIZE     2
#define UAC1_DEF_PCHMASK    0x1
#define UAC1_DEF_PSRATE     16000

CCHMASK 和 PCHMASK分别代表录音和放音通道数,默认值是0x3,双通道(每个bit代表一个通道)

CSRATE和PSRATE分别代表录音和放音采样率,默认是48000

Android rk3399 UAC(USB Audio)开发笔记相关推荐

  1. USB开发—STM32 USB Audio 开发板介绍(Feedback)

    USB开发-STM32 USB Audio 开发板介绍(Feedback) 一.背景 我个人从事音频行业有好几年的时间.后面慢慢的做起了声卡,也就是USB Audio.自己也走了不少的弯路.之前一起是 ...

  2. 12、 Android+RK3399 pro+USB直连摄像头+NCNN+Nanodet进行检测

    基本思想:最近天降一块RK3399 pro开发板(android系统),摄像头是USB直连,本来是听到rk3399 以为就可以使用Tengine,想测试一番:后来和虫叔交流才知道.rk3399 没有N ...

  3. USB应用开发笔记之一:STM32上实现USB主机读写U盘

      在项目应用中,经常会有对外交换数据的需求.USB接口读写U盘无疑是一种颇为方便的选择.在这一篇中,我们就来讨论如何在STM32上实现USB主机读写U盘文件的方法. 1.应用概述   在我们的产品上 ...

  4. Android studio3.5 SDK29项目开发笔记

    1.build.gradle compile过时 改为implementation 2.getDrawable过时 改为 3.Error:Your project path contains non- ...

  5. Linux - UAC USB声卡

    Linux - UAC USB声卡 USB-HID定义 UAC定义 UAC设置 UAC 测试 最近项目里需要做一个linux平台的USB声卡,及通过USB插入Android设备,可识别成为一个USB声 ...

  6. Rock Pi开发笔记(二):入手Rock Pi 4B plus(基于瑞星微RK3399)板子并制作系统运行

    若该文为原创文章,转载请注明原文出处 本文章博客地址:https://hpzwl.blog.csdn.net/article/details/122942395 红胖子(红模仿)的博文大全:开发技术集 ...

  7. android大疆飞控界面,DJI Android SDK 开发笔记(入门篇)

    ##大疆SDK开发笔记## #1.文档相关 2.Android SDK文档 接入Android的SDK都在这部分,飞控相关的接口. 3.Android UX SDK文档 大疆自定义的组件,已经跟飞机关 ...

  8. Android开发笔记(一百二十六)自定义音乐播放器

    MediaRecorder/MediaPlayer 在Android手机上面,音频的处理比视频还要复杂,这真是出人意料.在前面的博文< Android开发笔记(五十七)录像录音与播放>中, ...

  9. Android开发笔记(一百一十七)app省电方略

    电源管理PowerManager PowerManager是Android的电源管理类,用于管理电源操作如睡眠.唤醒.重启以及调节屏幕亮度等等. PowerManager的对象从系统服务POWER_S ...

最新文章

  1. 各种 django 静态文件的配置总结【待续】
  2. java三大特性:封装、继承、多态
  3. linux下载哪个python版本-Linux安装python3.6
  4. 垃圾回收在哪一章java_Java垃圾回收机制
  5. LNMP架构环境搭建之PHP、Nginx源码编译安装及其简单配置应用
  6. 手动删除oracle 归档文件,Oracle手动删除归档日志厚,出现ORA-19571错误
  7. C# 之 获取文件名及拓展名
  8. OpenCL列举平台列表以及平台属性信息
  9. Java 读写txt文件 中文乱码问题
  10. Kubernetes SharedInformerFactory共享Informer机制源码深入剖析-Kubernetes商业环境实战
  11. Turbo C 2.0
  12. 自己给打印机怎么加粉墨,联想兄弟打印机加粉步骤
  13. P1322 logo语言
  14. 一路向往有光亮的地方-2015年终总结
  15. 类和对象9:属性访问方法
  16. 卡方(χ2),四格表应用条件,理论频数
  17. 寻找与疾病相关的SNP位点——R语言从SNPedia批量提取搜索数据
  18. 如何创建自己的 Google Chrome 扩展程序
  19. 和隆优化 matlab,misc.m · XJTU_STEI/matlabTools - Gitee.com
  20. beeline执行sql语句_beeline执行sql脚本我世界开挂

热门文章

  1. lol峡谷之巅区服务器位置,LOL峡谷之巅地址
  2. xynuoj 1423 贪婪戈尔曼(二维费用的背包问题)
  3. 微信公众号开发(PHP+MySQL+apache+natapp)
  4. 关于四象限法则,看到的最好的一篇解释
  5. 非常全面的Pandas入门教程
  6. 汇编 “error A2031”
  7. 心舞服务器维护中,《阴阳师》手游5月19日维护更新公告
  8. JS-预编译(预解析)四部曲
  9. AE Studio:Aeternity生态未来的智能合约开发工具
  10. cnpm不是内部命令的解决办法