alsa相关内容

Alsa 全双工通信

我想使用alsa实现全双工通信.我首先编写了捕获和回放程序,我正在使用 UDP 通信将数据从捕获的进程传输到回放进程.当我运行两个进程时它工作正常,其中一个正在捕获,另一个正在播放(将其视为从 A 到 B 的半双工),当我尝试实现另一个半双工(从 B 到 A 的半双工)时,问题就出现了然后我收到断管错误从麦克风读取数据时.如何解决这个问题?.任何帮助,提前致谢. 注意:我在不同的系统上运行两 ..
发布时间:2021-11-27 08:35:04 其他开发

alsa-util 1.1.0 arm 交叉编译问题

我正在尝试为 arm-linux 平台构建 alsa-util-1.1.0,通过反复试验,我设法使用以下命令编译了 alsa-lib 和 alsa-util: alsa-lib: CC=arm-linux-gnueabihf-gcc ./configure --host=arm-linux -prefix=/home/username/20160311_alsa_work/alsa/i ..
发布时间:2021-11-27 08:34:53 其他开发

Alsa api:如何在 c 中使用 mmap?

我目前正在使用 snd_pcm_writei 播放以前加载到短数组(16 位 PCM 格式)中的声音文件.为了播放这个声音,我创建了一个缓冲区(short*),其中包含一个句点(或片段).然后,我使用一个 while 循环来调用 snd_pcm_writei 这给了我这一行: int err = snd_pcm_writei(handle, buffer, frames); 了解它的工作原理非 ..
发布时间:2021-11-27 08:34:43 其他开发

ALSA:不支持非交错访问?

ALSA 的 title="nofollow noreferrer"a> 函数在使用 调用时失败SND_PCM_ACCESS_RW_NONINTERLEAVED 访问类型,报告存在无效参数.相同的代码适用于 sample_fmt);扔5;}如果 ((err = snd_pcm_hw_params_set_format(pb_dev, hw_params, sample_format)) sampl ..
发布时间:2021-11-27 08:34:32 其他开发

使用 PyAudio 防止 ALSA 欠载

我写了一个小程序,它记录麦克风的声音并通过网络发送并在那里播放.我正在使用 PyAudio 来完成这项任务.它几乎可以正常工作,但在两台计算机上,我都收到来自 ALSA 的错误消息,表明发生了欠载.我在谷歌上搜索了很多,现在我知道什么是欠载了.但我仍然不知道如何解决这个问题.大多数时候声音很好.但是如果发生欠载,这听起来有点奇怪.在我的代码中有什么我应该注意的吗?感觉就像我犯了一个简单的错误,我很 ..
发布时间:2021-11-27 08:34:22 其他开发

arecord 创建的多个文件

我使用 buildroot 制作了自定义发行版,并为 ARMv7 处理器提供了硬流程.一切正常,除了...... # arecord -D hw:0,0 -fdat -d 5 test.wav 这会生成多个文件.数以千计. -rw-r--r-- 1 root root 958508 Jan 1 00:19 test-01.wav-rw-r--r-- 1 根根 44 Jan 1 00:19 t ..
发布时间:2021-11-27 08:34:00 其他开发

模拟麦克风(虚拟麦克风)

我遇到了需要“模拟"麦克风输出的问题. 数据将通过网络传输,解码为 PCM,基本上需要写入麦克风 - 然后其他程序可以读取/记录/任何内容. 我一直在阅读有关 alsa 的信息,但信息很少.文件插件似乎很有希望 - 我正在考虑将命名管道作为“infile",然后我可以将数据从我的应用程序传送到它.但是,我无法让它工作(vlc/audacity 只是段错误). pcm.testing ..
发布时间:2021-11-27 08:33:48 服务器开发

Makefile 条件包含

我正在尝试编写一个需要 ALSA 或 OSS 标头的应用程序.基本上,如果/etc/oss.conf 不存在,我想将定义传递给编译器,因为这可能意味着 soundcard.h 标头不存在(请随时纠正我,我还是新手与 OSS 合作).根据 OSS 文档,您可以像这样使用包含指令: include/etc/oss.confCFLAGS := -I$(OSSLIBDIR)/include/sys 一 ..
发布时间:2021-11-27 08:33:37 其他开发

ALSA:snd_pcm_writei 调用时缓冲区欠载

在运行我最近从废墟中恢复过来的旧程序时,我的缓冲区不足. 程序将原始声音文件完全加载到内存中(2100 字节长,525 帧)并准备 ALSA 以进行输出(44.1khz,2 声道,有符号 16 位): if ((err = snd_pcm_set_params(audio_handle,SND_PCM_FORMAT_S16_LE,SND_PCM_ACCESS_RW_INTERLEAVED, ..
发布时间:2021-11-27 08:33:25 服务器开发

以 root 身份运行 python 脚本

我有以下脚本: #!/usr/bin/env python导入系统导入pyttsx定义主():打印“正在运行的语音文本.py ..."引擎 = pyttsx.init()str = "你好..."如果 len(sys.argv) >1:str = sys.argv[1]引擎说(str)engine.runAndWait()如果 __name__ == '__main__':主要的() 我把它放 ..
发布时间:2021-11-27 08:33:17 Python

从 ALSA 录音——理解内存映射

我尝试使用 ALSA 从 USB 音频设备获取输入并将其作为一系列 signed short 值写入磁盘.我最终得到的是散布着大块零的有效数据块.我猜我的缓冲区设置不正确,并且没有正确使用内存映射. 我正在尝试什么: 采样率:8K(这是由设备强制的) 缓冲区大小:2048 周期大小:512 一个频道 设备似乎已正确打开并接受各种参数.经过一些设置,循环运行如下: snd_ ..
发布时间:2021-11-27 08:33:08 服务器开发

是否可以动态链接到 libcs​​d-client.so 以在 Galaxy S4 I9505 上启用通话录音

I9505 在 APQ8064T 上运行,与上一代 MSM8960 相比,HAL 层在芯片组上设置通话中录音音频路径的方式发生了变化.现在,除了在内核中设置正确的 Mixer 控件外,它还需要通过 libcs​​d-client.so(高通专有,闭源)库向基带调制解调器发送某种“魔法"命令. Google 通过 dlsym libcs​​d-client.so 在 HAL 层为 Nexus ..
发布时间:2021-11-27 08:33:01 移动开发

如何在 pi 上正确安装 portaudio

我正在从事一个项目,该项目涉及从 raspberry pi 上的麦克风录音.现在我在程序运行时收到这个错误. python3: src/hostapi/alsa/pa_linux_alsa.c:3641:PaAlsaStreamComponent_BeginPolling:断言`ret == self->nfds'失败的.中止 在寻找解决此问题的方法时,我发现文件 pa_linux_a ..
发布时间:2021-11-27 08:32:53 其他开发

Python 中的录音

我想用 Python 从 USB 麦克风录制短音频剪辑.我尝试过 pyaudio,它似乎无法与 ALSA 通信,而 alsaaudio,其代码示例产生了无法读取的文件. 所以我的问题是:在 Python 中从 USB 麦克风录制剪辑的最简单方法是什么? 解决方案 这个脚本记录到 test.wav 同时打印当前的幅度: 导入 alsaaudio、wave、numpyinp = als ..
发布时间:2021-11-27 08:32:43 Python

通话录音 - 使其在 Nexus 5X 上工作(可以生根或自定义 ROM)

我正在尝试在 Nexus 5X、Android 7.1(我自己的 AOSP 版本)上使用 AudioRecord 和 AudioSource.VOICE_DOWNLINK. 我已经过了权限阶段 - 将我的 APK 移至特权应用,对 Android 源中的 AudioRecord 进行了调整,以停止抛出有关此源的异常. 现在我在打电话时得到了空的录音缓冲区. 我知道有很多通话录音应 ..
发布时间:2021-11-27 08:32:33 移动开发

修改Android自定义ROM中的通话语音播放

我想修改 Android OS(AOSP 官方图片),为普通电话播放声音添加预处理. 我已经为应用音频播放实现了这种过滤(通过修改 HAL 和 audioflinger). 我可以只针对特定设备(Nexus 5X).另外,我只需要过滤播放 - 我不关心录音(上行). 更新 #1: 澄清一下 - 我可以修改 Qualcomm 特定的驱动程序,或者它在 Nexus 5X 上运行 ..
发布时间:2021-11-27 08:32:24 移动开发

ALSA中句号的含义

我在 Linux 上使用 ALSA 和音频应用程序,我发现很好的文档解释了如何使用它:1 和这个.虽然我在理解这部分设置方面有一些问题: /* 设置周期数.句点曾经被称为片段.*/如果 (snd_pcm_hw_params_set_periods(pcm_handle, hwparams, period, 0) 当我使用播放模式时设置多个时间段是什么意思和: /* 设置缓冲区大小(以帧为单 ..
发布时间:2021-11-27 08:32:16 服务器开发

在 NodeJS 中读取音频文件

我正在使用 ffmpeg 通过 alsa 捕获音频并将其写入 wav 文件.但是当它正在编写时,我需要将捕获的音频发送给某个 3rd 方.我尝试了几种方法,包括 node-GRing-file 但未能成功. 有没有一种方法可以将文件作为流读取,只要它正在写入并根据需要进行处理. 解决方案 我不知道为什么这个问题被否决了.但是经过大量谷歌搜索后,我找到了一个 NPM 可以为您完成这项工 ..
发布时间:2021-11-27 08:32:09 其他开发

树莓ALSA声音输出/输入从机

我正在尝试设置一台设备用于播放,另一台设备用于捕获,我的 nano/etc/asound.conf 有这个: pcm.!default {类型不对称播放.pcm "plughw:1,1"capture.pcm "plughw:1,0"}ctl.!默认{输入硬件卡 0} 我可以完美地播放声音,但我无法录制声音,我的python代码抛出了这个错误: ALSA lib pcm_dmix.c:101 ..
发布时间:2021-11-27 08:32:02 Python