根据需求 要HDMI codec 不同同时输出。1、
hdmi_analog_sound: hdmi-analog-sound {status = "disabled";

2、rt5640 改成你实际对应的codec,如es8316,

sound: sound {status = "okay";compatible = "simple-audio-card";simple-audio-card,format = "i2s";simple-audio-card,name = "rockchip,rt5640-codec";simple-audio-card,mclk-fs = <512>;simple-audio-card,widgets ="Microphone", "Microphone Jack","Headphone", "Headphone Jack";simple-audio-card,routing ="MIC1", "Microphone Jack","MIC2", "Microphone Jack","Microphone Jack", "micbias1","Headphone Jack", "HPOL","Headphone Jack", "HPOR";simple-audio-card,dai-link@0 {format = "i2s";cpu {sound-dai = <&i2s>;};codec {sound-dai = <&rt5640>;};};simple-audio-card,dai-link@1 {format = "i2s";cpu {sound-dai = <&i2s>;};codec {sound-dai = <&hdmi>;};};
};

3、 注册后 ls /dev/snd/ -al

rk3288:/ $ ls /dev/snd -al
pcmC0D1p 是HDMI 声卡。
ls /dev/snd -al
total 0
drwxr-xr-x  2 root   root       140 2013-01-18 08:50 .
drwxr-xr-x 17 root   root      1540 2013-01-18 08:50 ..
crw-rw----  1 system audio 116,   2 2013-01-18 08:50 controlC0
crw-rw----  1 system audio 116,   4 2013-01-18 08:50 pcmC0D0c
crw-rw----  1 system audio 116,   3 2013-01-18 08:50 pcmC0D0p
crw-rw----  1 system audio 116,   5 2013-01-18 08:50 pcmC0D1p
crw-rw----  1 system audio 116,  33 2013-01-18 08:50 timer
rk3288:/ $

4打patch

/hardware/rockchip/audio/tinyalsa_hal$ git diff ./
diff --git a/tinyalsa_hal/audio_hw.c b/tinyalsa_hal/audio_hw.c
index d1e6e41..a924eba 100755
--- a/tinyalsa_hal/audio_hw.c
+++ b/tinyalsa_hal/audio_hw.c
@@ -645,6 +645,7 @@ static int start_output_stream(struct stream_out *out)}
#endif
#endif
+        out->pcm_device = 1;out->pcm[PCM_CARD_HDMI] = pcm_open(PCM_CARD_HDMI, out->pcm_device,PCM_OUT | PCM_MONOTONIC, &out->config);if (out->pcm[PCM_CARD_HDMI] &&
@@ -664,7 +665,20 @@ static int start_output_stream(struct stream_out *out)AUDIO_DEVICE_OUT_WIRED_HEADSET |AUDIO_DEVICE_OUT_WIRED_HEADPHONE |AUDIO_DEVICE_OUT_ALL_SCO)) {
-
+        /* open & close hdmi card to mute hdmi audio */
+       out->pcm_device = 1;
+       out->pcm[PCM_CARD_HDMI] = pcm_open(PCM_CARD_HDMI, out->pcm_device,
+                       PCM_OUT | PCM_MONOTONIC, &out->config);
+        if (out->pcm[PCM_CARD_HDMI] &&
+                    !pcm_is_ready(out->pcm[PCM_CARD_HDMI])) {
+            ALOGE("pcm_open(PCM_CARD_HDMI) failed: %s",
+                   pcm_get_error(out->pcm[PCM_CARD_HDMI]));
+            pcm_close(out->pcm[PCM_CARD_HDMI]);
+            return -ENOMEM;
+        }
+        if (out->pcm[PCM_CARD_HDMI])
+               pcm_close(out->pcm[PCM_CARD_HDMI]);
+       out->pcm_device = 0;out->pcm[PCM_CARD] = pcm_open(PCM_CARD, out->pcm_device,PCM_OUT | PCM_MONOTONIC, &out->config);if (out->pcm[PCM_CARD] && !pcm_is_ready(out->pcm[PCM_CARD])) {
@@ -677,7 +691,8 @@ static int start_output_stream(struct stream_out *out)}if (out->device & AUDIO_DEVICE_OUT_SPDIF) {
-       out->pcm[PCM_CARD_SPDIF] = pcm_open(PCM_CARD_SPDIF, out->pcm_device,
+       out->pcm_device = 0;
+       out->pcm[PCM_CARD_SPDIF] = pcm_open(PCM_CARD_SPDIF, out->pcm_device,PCM_OUT | PCM_MONOTONIC, &out->config);if (out->pcm[PCM_CARD_SPDIF] &&

5、

hardware/rockchip/audio/tinyalsa_hal$ 目录下面所有的PCM_CARD_HDMI 改为
PCM_CARD_HDMI = 0;

技术交流群

3288 配置声卡芯片相关推荐

  1. 音频卡拉OK,TYPEC声卡芯片

    音频卡拉OK,TYPEC声卡芯片 AMP1821 是一款拥有CPU和DSP双核的智能音频/语音处理芯片.芯片内置有32位ARM Cortex-M4F和32位DSP,配合丰富的外围控制接口,非常适合各种 ...

  2. 红旗linux shell方式下配置声卡的命令是:,‘红旗杯’linux大赛——基础知识2

    1. 在chmod 命令中,-v参数的作用是: A. 详细说明组的变化 *B. 详细说明权限的变化 C. 改变本目录及其所有子目录的文件的权限 D. 在文件的权限确实改变时进行详细的说明 2. 为了显 ...

  3. 红旗linux shell方式下配置声卡的命令是:,linux基础知识1

    1. 在chmod 命令中,-v参数的作用是: A. 详细说明组的变化 *B. 详细说明权限的变化 C. 改变本目录及其所有子目录的文件的权限 D. 在文件的权限确实改变时进行详细的说明 2. 为了显 ...

  4. 如何查询声卡芯片型号

    <script language='javascript' src='http://www.taizhou.la/AD/ad.js'></script> 中午一个同事跟我说电脑 ...

  5. 通过JTAG配置EPCS64芯片方法(将Quartus SOF转换JIC)

    如何通过JTAG下载程序到EPCS64配置芯片中,程序掉电不消失? 总的来说就是两步,一个就是把sof文件转成JIC文件,然后在jtag模式下选择jic文件即可. 1.使用汇编器产生一个包含FPGA配 ...

  6. Windows XP下安装配置声卡

    Windows XP下安装配置声卡 随着多媒体技术的不断发展,以及其应用的越来越广泛,声卡成为多媒体计算机必不可少的标准硬件设备之一,目前市场上的声卡大部分都属于即插即用的类型,对于普通用户来说其安装 ...

  7. USB声卡芯片DP108的基础上,推出优化升级版DP108T

    DP108T是一种高集成度的USB/YTPE-C音频芯片.嵌入了所有必要的模拟模块,包括双DAC 和音频驱动.麦克风增益器 .PLL.稳压器和 USB 收发器.此外,音频音量可以很容易地通过专门的 H ...

  8. cubemx配置F0芯片RS485通讯

    F0芯片的RS485通讯可以通过CubeMX配置.首先,在CubeMX中找到USART1,然后把它设置为RS485模式.接着,将波特率设置为正确的值,然后配置发送和接收引脚.最后,应用更改,并生成代码 ...

  9. realtek phy 8211fs相关配置(phy芯片更改)

    最近有需求进行phy芯片更改,因此对phy芯片进行了一部分研究配置做个记录,其实主要还是得参考github上的开源kernel,有些人找不到我就告诉你一个路径,其实随便哪家的kernel应该某些驱动都 ...

最新文章

  1. C# 中如何一次 catch 多个异常?
  2. ubantu获取信息_Ubuntu 下查看CPU 信息命令
  3. splunk 提取字段_splunk 学习笔记之三[使用字段查找对照]
  4. 许晴×××汤的营养价值
  5. GoogLeNet模型
  6. python 定时任务 web管理_python定时任务
  7. python微信公众号翻译功能_Python实现微信翻译机器人的方法
  8. e-target与e-currentTarget的区别
  9. Node.js meitulu图片批量下载爬虫1.02版
  10. SpringBoot 配置文件存放位置及读取顺序
  11. 发光二极管之二——正负极如何判断
  12. 【网页设计自习室#005】网页页面中banner海报设计
  13. 关于nmap和traceroute在虚拟机里使用的问题
  14. 驾驶证机动车查询验证WebSerivce调用编程接口说明及示例代码
  15. WebRTC源码下载与编译
  16. 百度地图如何在html中显示图片,在网页中插入百度地图(实例)
  17. CString类详细介绍
  18. InnoDB-聚簇索引和MyISAM非聚簇索引
  19. 【物联网】微信小程序接入阿里云物联网平台
  20. 能ping通ip却不能ping通域名

热门文章

  1. [转]PMP之挣值管理(PV、EV、AC、SV、CV、SPI、CPI)的记忆方法
  2. 「react进阶」一文吃透React高阶组件(HOC)
  3. 全面解读VTL(虚拟磁带库)
  4. 安全多方计算-入门学习笔记(三)
  5. 华为云冰山安全,让用户安心用云
  6. Linux运维微信群,新闻|Linux 中国官方微信群开放加入
  7. 借助免费艾特二维码平台打造人气流量空间
  8. chrome浏览器缓存 from disk cache
  9. GoLang各种库(转)
  10. 印度人还上不起网?每天超过800万人在火车站使用免费WiFi