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

window-docker的容器使用宿主机音频设备


文章目录

  • 前言
  • 操作配置

前言

你有没有遇到过这种情况?

你兴冲冲地在Windows上用Docker搭了个语音识别项目,准备让容器高歌一曲,或者至少"Hey Docker"一下。结果——静音。

Docker Desktop一脸无辜:“亲,默认配置里可没有’让你的容器唱歌’这个选项哦~”

于是,你的容器像个哑巴,明明代码写得飞起,却死活发不出声音。这感觉就像教鹦鹉说’Hello World’,但它死活不张嘴!

Docker:我聋了,也哑了
默认情况下,Docker容器在Windows上就像戴了降噪耳机——它听不见你,你也听不见它。

你想让它处理音频?它只会回你一个:

Error: No audio devices found.
(内心OS:怪我咯?你也没给我麦克风啊!)

别急,今天我们就来教Docker如何"开口说话",让它能抢到Windows的麦克风和扬声器,让你的语音项目不再是个"哑剧演员"!

操作配置

1.下载pulseaudio服务

https://www.freedesktop.org/wiki/Software/PulseAudio/Ports/Windows/Support/

在这里插入图片描述

并解压文件夹到D盘

在这里插入图片描述

2.配置pulseaudio服务

在这里插入图片描述

load-module module-native-protocol-tcp listen=0.0.0.0 auth-anonymous=1

3.启动pulseaudio服务

注意:宿主机重启后,需要重新启动pulseaudio服务。

# 加-D 表示后台运行
.\bin\pulseaudio.exe --use-pid-file=false -D

在这里插入图片描述

允许一下

在这里插入图片描述

4.配置docker容器

docker run -it -p 6080:80 -p 10000:10000 -v /tmp/.X11-unix:/tmp/.X11-unix -e DISPLAY=host.docker.internal:0.0 -e PULSE_SERVER=host.docker.internal --name=DockerSpeaker docker.1ms.run/ubuntu:24.04  /bin/bash

5.测试

apt-get update && apt-get install -y alsa-utils pulseaudio
aplay -L  # 列出音频设备
speaker-test -t wav  # 测试播放

在这里插入图片描述

测试成功!

http://www.xdnf.cn/news/274033.html

相关文章:

  • 深入探索 Java 区块链技术:从核心原理到企业级实践
  • nginx 核心功能 02
  • 【项目篇之统一硬盘操作】仿照RabbitMQ模拟实现消息队列
  • C++入门小馆:继承
  • 数据库-数据类型,表的约束和基本查询操作
  • SONiC-OTN代码详解(具体内容待续)
  • set autotrace报错
  • K8S的使用(部署pod\service)+安装kubesphere图形化界面使用和操作
  • 【机器学习案列-22】基于线性回归(LR)的手机发布价格预测
  • 【iOS】消息流程探索
  • 基于python的task--时间片轮询
  • 为了结合后端而学习前端的学习日志——【黑洞光标特效】
  • VMware-centOS7安装redis分布式集群
  • 《Java高级编程:从原理到实战 - 进阶知识篇五》
  • 统计学中的p值是什么?怎么使用?
  • Ray开源程序 是用于扩展 AI 和 Python 应用程序的统一框架。Ray 由一个核心分布式运行时和一组用于简化 ML 计算的 AI 库组成
  • 初识 iOS 开发中的证书固定
  • flink常用算子整理
  • QT | 常用控件
  • 个人文章不设置vip
  • MySQL复合查询全解析:从基础到多表关联与高级技巧
  • 【Hive入门】Hive与Spark SQL深度集成:Metastore与Catalog兼容性全景解析
  • 视频转GIF
  • 网狐系列三网通新钻石娱乐源码全评:结构拆解、三端实测与本地部署问题记录
  • ResNet改进(37):DenseBlock模块实现
  • 游戏引擎学习第257天:处理一些 Win32 相关的问题
  • 【Python】一直没搞懂迭代器是什么。。
  • 【Linux】SELinux 的基本操作与防火墙的管理
  • C++负载均衡远程调用学习之上报功能与存储线程池
  • QT对象树