Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/linux/25.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Tinyalsa/ALSA用于Android调整。arecord只记录噪音或什么也不记录_Android_Linux_Audio_Audio Recording_Alsa - Fatal编程技术网

Tinyalsa/ALSA用于Android调整。arecord只记录噪音或什么也不记录

Tinyalsa/ALSA用于Android调整。arecord只记录噪音或什么也不记录,android,linux,audio,audio-recording,alsa,Android,Linux,Audio,Audio Recording,Alsa,我已经从Google Play安装了Alsamixer 这个小玩意是三星GalaxyS3 它有一个索引为0的声卡和4个设备0-3。 /proc/asound/devices中的设备列表如下所示: 0: [ 0] : control 16: [ 0- 0]: digital audio playback 17: [ 0- 1]: digital audio playback 18: [ 0- 2]: digital audio playback 19: [ 0- 3]: digital au

我已经从Google Play安装了Alsamixer

这个小玩意是三星GalaxyS3

它有一个索引为0的声卡和4个设备0-3。 /proc/asound/devices中的设备列表如下所示:

 0: [ 0]   : control
16: [ 0- 0]: digital audio playback
17: [ 0- 1]: digital audio playback
18: [ 0- 2]: digital audio playback
19: [ 0- 3]: digital audio playback
24: [ 0- 0]: digital audio capture
25: [ 0- 1]: digital audio capture
26: [ 0- 2]: digital audio capture
27: [ 0- 3]: digital audio capture
33:        : timer
因此/dev/snd中的pcms列表是

alsa_aplay可以播放声音,但当我尝试录制时,它只录制噪音或空白。 通过实验,我发现只有使用第三方设备才能“录制”声音,因此通话是:

alsa_aplay -C -D hw:0,3 -r 44100 -f S16_LE -c 1 -d 2 /foo.wav
当指定hw:0,1或其他时,我得到pcm_read:read error:无效参数

我们尝试了不同的采样率和其他参数

当我尝试用C代码jni记录时,也会发生同样的事情

对于设备0-2,它有运行时错误。 当设备3处于pcm_读取功能时,它会无限记录空值

我们使用tinyalsa

此外,我还尝试从Alsamixer应用程序列表管理设备,我已将大多数设备设置为100%不知道哪些设备保留在录制器中,因此设置为“全部”,但不生效


感谢您的回复。

您的问题是什么?如何使设备正常工作并录制声音?我需要做哪些调整,以及检查哪些事项?使用与三星相同的设备和配置。你需要知道各种芯片的连接方式。三星不太可能发布此信息。@degot:我所说的音频路径是指需要启用/配置硬件编解码器中的所有必要块需要选择正确的ADC,需要设置增益值等。这通常通过写入一组ALSA控件来完成,但是这些控件在不同的平台上是不一样的,所以您需要熟悉所针对的特定平台。通常,您可以在平台供应商提供的ALSA SoC驱动程序和硬件编解码器文档中找到有用的信息,这些文档可能仅适用于合作伙伴公司。
alsa_aplay -C -D hw:0,3 -r 44100 -f S16_LE -c 1 -d 2 /foo.wav