问题标签 [tinyalsa]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 我怎样才能改变android中mic和pcm的增益
我成功完成了我自己的aec到android的集成。
但我需要的是我必须设置 android 的 mic 和 pcm 的增益,因为在我的 aec 中,我将 agc 应用于远端和近端信号,然后我处理该 agc 的输出以消除回声。
之后,我将对 aec 的输出应用降噪。
当我将我的 aec 集成到 gstreamer 中时,有一个类似的命令
混音器
用于设置增益水平。
当我设置一些增益水平时,我的 aec 工作正常。
但是在 android 中,我如何设置它以使我的 aec 正常工作。
android - 在 android 中使用 AudioRecord 录制立体声
我正在寻找关于让 audioRecord 同时使用顶部安装和底部安装的麦克风的明确答案,因此我没有 2 个相同的(单声道)通道。我想知道我可以事先进行哪些轮询以确保小工具能够提供良好的流。
我正在开发 Galaxy nexus 5,但无法让它工作,所以我无法让它在所有设备上保持稳定。
我已经尝试了所有MediaRecorder.AudioSource
.
并实例化两条记录:
如果有人确实在 nexus 5 上进行了立体声录音,我将非常感谢您的帮助。我应该搬到 alsa 还是 tinyAlsa?
谢谢, j
linux-kernel - 为什么有必要将 pcm 样本发送到 ALSA?
我知道如果硬件解码器不存在,那么我们需要将 pcm 样本发送到 alsa,但这仅仅是因为硬件限制,还是 ALSA 也有任何要求?
android - Android 在 Java 代码中使用 tinyalsa
我使用来自tinyalsa-ndk的源代码构建了 tinyalsa lib ,并使用 JNI 调用将其包装起来,我正尝试在我的代码中使用它。
我使用Swig生成 Java 包装器(并修改了输出以符合我的包)我的本机方法声明是:
我的 JNI 包装器调用位于根 pacakge 下的包装器类 TinyAlsa.java 中(例如,我将使用 com.Example.App):
我的包装器 c 方法是:
tinalsa 库加载正常,没有异常,但调用如mixer_open(0)
返回空指针。
但是,如果我执行编译后的 tinymix 混合器是打开的,并且混合器控件应该被列出。
我错过了什么吗?我怎样才能让它从我的代码中工作?
android - APQ8064 alsa录音
我有一个 Nexus 4 设备(带有 APQ8064 声卡的 msm8960)。
我正在尝试使用 tinyalsa tinycap 实用程序从主设备 (pcmC0P0c) 录制音频,但遇到以下问题:
- 如果我不修改任何混音器控件,我会收到“无法打开 PCM 设备 - 找不到设备错误”
- 当我将其中一个 Multimedia1 开关设置为打开时(例如 MultiMedia1 Mixer SLIM_4_TX),我收到一条错误消息,提示设置硬件参数失败。
所以,我的问题是:我怎么知道哪些控件设置为 On(和/或设置其他控件)以便成功捕获音频?
编辑:
经过一番挖掘,我发现 in pcm_open
setting pcm params 在以下调用中失败:
如何正确设置参数以便pcm_open
成功?我看不出参数有任何问题(顺便说一句,在其他设备上工作)
编辑 2:
我看到问题在于周期大小和周期计数 - 我不能分别设置为 150 和 2 以上。当我更改它们pcm_open
成功但pcm_read
失败并显示“启动错误”消息
感谢帮助者
audio - 如何使用 tinymix 将 40 字节的数据设置为混音器控制?
我有一个控件叫做EQ2 Coefficients
tinymix 命令的输出给出
如何将该混音器控件设置为其他值,例如要写入控件的值是00000fb3040001341E4FF1A5040B06831B64F448040A10F413DDFA1D040A280D02A104A840000000
使用 tinymix 命令?
c - tinyalsa pcm 使用 mmap 捕获,在 pcm_wait() 中出现溢出错误
我正在使用 tinyalsa 库来使用 mmap 实现音频捕获。但在程序本身开始时,我收到 Xrun 错误,即 pcm_wait() 中的溢出。我尝试改变缓冲区大小和周期,但我认为它无法从声卡缓冲区中读取。
有没有关于如何正确使用 tinyalsa 的 mmap 功能的教程。甚至是 Alsa pcm mmap 教程?
android - Android 5.1 三星 S4 Mini 上的 USB 音频
我想在运行 Android 5.1(Bliss Pop,部分基于 Cyanogenmod)的三星 S4 Mini GT-I9195 上测试 USB 音频。我在这里找到了另一个线程,我也可以成功地将 wav 播放到 hw:1,0,但我无法从任何应用程序播放声音。对我来说,似乎流没有正确路由到 hw:1,0。有什么想法吗?
android - Android:pcm_open 失败无法打开设备“/dev/snd/pcmC0D1p”
一个定制的硬件正在运行安装了音频驱动程序的 Android。
创建了一个简单的 Android 应用程序以使用媒体播放器播放一些音频,该应用程序在模拟器上进行了测试,因此可以肯定地工作。
在硬件上运行设备时,来自 logcat 的错误消息多次显示如下:
在 /dev/snd/ 下有
我可以毫无问题地播放系统通知。我也可以通过创建一个指向 pcmC0D0p 的符号链接 pcmC0D1p 来解决这个问题,并且它可以工作。为什么android试图在pcmC0D1p上播放非系统音轨?谁在控制它的输出?
android - Android AudioRecord 配置与录制的音频不匹配
我打算在 Android 4.4.2 设备上录制立体声音频。但是,通过简单的录音应用程序(使用 AudioRecord)录制的音频与提供的配置不匹配。如果设备使用默认配置值,我希望在 logcat 中看到错误消息,但我可以看到提供的值似乎被 AudioHardware 和 AudioPolicyManagerBase 接受。
当前配置为:
更改 Media.Recorder.AudioSource 已成为尝试解决此问题的选项;但这并没有改变 Android 堆栈的行为方式——除了(可以理解的)配置无效时无法加载记录器。
更改 SampleRate 也表明输出没有明显变化 - 44.1kHz 和 16kHz 都是有效选项,但是在检查时都产生 16kHz 音频。输出音频也似乎是一个上混成立体声的音频通道。
TinyALSA/Tinycap 可用于捕获音频,这似乎符合预期。
这可能是 Android 堆栈中的问题吗?或者这更有可能是 OEM 提供的代码的问题?