jjzjj

c - ALSA snd_pcm_drop() 没有清除完整的缓冲区

我正在使用ALSAAPIsnd_pcm_drop()来清除缓冲区。但是,当我稍后使用snd_pcm_prepare()继续播放音频时,我可以听到之前应该清除的部分音频。当我的snd_pcm_sw_params_set_stop_threshold()值很高时会发生这种情况。如果我使用较低的值,则不会播放之前AudioSession的部分音频。这里发生了什么?如何彻底清除缓冲区?(我是ALSA的新手)谢谢 最佳答案 我用这种方式解决了同样的问题:snd_pcm_prepare(pcm_handle);snd_pcm_drop(pcm_

c - ALSA snd_pcm_drop() 没有清除完整的缓冲区

我正在使用ALSAAPIsnd_pcm_drop()来清除缓冲区。但是,当我稍后使用snd_pcm_prepare()继续播放音频时,我可以听到之前应该清除的部分音频。当我的snd_pcm_sw_params_set_stop_threshold()值很高时会发生这种情况。如果我使用较低的值,则不会播放之前AudioSession的部分音频。这里发生了什么?如何彻底清除缓冲区?(我是ALSA的新手)谢谢 最佳答案 我用这种方式解决了同样的问题:snd_pcm_prepare(pcm_handle);snd_pcm_drop(pcm_

linux - Linux 中的实时音频分析

我想知道推荐使用的音频库是什么?我正在尝试制作一个有助于调音乐器的小程序。(钢琴、吉他等)。我读过有关ALSA和Marsyas音频库的信息。我认为这个想法是从麦克风采样数据,对5-10毫秒的数据block进行分析(根据我的阅读)。然后执行FFT以确定哪个频率包含最大峰值。 最佳答案 这guide应该有帮助。不要将ALSA用于您的应用程序。使用更高级别的API。如果您决定要使用JACK,http://jackaudio.org/applications具有三个乐器调谐器,您可以将其用作示例代码。

linux - Linux 中的实时音频分析

我想知道推荐使用的音频库是什么?我正在尝试制作一个有助于调音乐器的小程序。(钢琴、吉他等)。我读过有关ALSA和Marsyas音频库的信息。我认为这个想法是从麦克风采样数据,对5-10毫秒的数据block进行分析(根据我的阅读)。然后执行FFT以确定哪个频率包含最大峰值。 最佳答案 这guide应该有帮助。不要将ALSA用于您的应用程序。使用更高级别的API。如果您决定要使用JACK,http://jackaudio.org/applications具有三个乐器调谐器,您可以将其用作示例代码。

linux - 如何将/dev/urandom 传输到 linux 声音输出?

这似乎根本不起作用:cat/dev/urandom>/dev/dsp#fromwikipedia.org是因为pulseaudio吗?或者我需要做一些设置? 最佳答案 我不确定是否有一个简单的设备可以将字节发送到这些天-/dev/dsp设备是一个旧的OSS东西,可能不会存在于现代基于ALSA的系统,其中声卡由/dev/snd中的设备控制。你可能最好使用aplay或其他东西来“播放”来自/dev/random的数据,尽管你可能需要给它一个开关负载告诉它假设数据的格式是什么。要让它像WAV数据一样播放,您需要类似的东西:aplay-c2

linux - 如何将/dev/urandom 传输到 linux 声音输出?

这似乎根本不起作用:cat/dev/urandom>/dev/dsp#fromwikipedia.org是因为pulseaudio吗?或者我需要做一些设置? 最佳答案 我不确定是否有一个简单的设备可以将字节发送到这些天-/dev/dsp设备是一个旧的OSS东西,可能不会存在于现代基于ALSA的系统,其中声卡由/dev/snd中的设备控制。你可能最好使用aplay或其他东西来“播放”来自/dev/random的数据,尽管你可能需要给它一个开关负载告诉它假设数据的格式是什么。要让它像WAV数据一样播放,您需要类似的东西:aplay-c2

c - 从 C 代码设置 ALSA 主音量

我一直在寻找一个简单的C代码示例来设置ALSA混音器的主音量,但找不到任何简单的东西来实现这个所谓的常见操作。我完全不熟悉ALSA,所以制作我自己的最小示例需要时间。如果有人可以提供,我会很高兴。 最佳答案 以下对我有用。参数volume的范围为[0,100]。当心,没有错误处理!voidSetAlsaMasterVolume(longvolume){longmin,max;snd_mixer_t*handle;snd_mixer_selem_id_t*sid;constchar*card="default";constchar*s

c - 从 C 代码设置 ALSA 主音量

我一直在寻找一个简单的C代码示例来设置ALSA混音器的主音量,但找不到任何简单的东西来实现这个所谓的常见操作。我完全不熟悉ALSA,所以制作我自己的最小示例需要时间。如果有人可以提供,我会很高兴。 最佳答案 以下对我有用。参数volume的范围为[0,100]。当心,没有错误处理!voidSetAlsaMasterVolume(longvolume){longmin,max;snd_mixer_t*handle;snd_mixer_selem_id_t*sid;constchar*card="default";constchar*s

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

我正在尝试使用AudioRecord与AudioSource.VOICE_DOWNLINK在Nexus5X、Android7.1(我自己的AOSP构建)上。我已经过了权限阶段-将我的APK移至特权应用,对AudioRecord进行了调整在Android源代码中停止抛出有关此源的异常。现在我在通话期间得到了空的录音缓冲区。我知道有很多通话记录应用程序,它们可以在其他设备上运行。我还看到某些应用程序可以在已rootN5上执行一些破解并使其正常工作。我希望在Nexus5X上实现同样的效果-任何调整对我来说都可以,包括更改Android版本、修改Qualcomm驱动程序、设备配置文件等-基本上

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

我正在尝试使用AudioRecord与AudioSource.VOICE_DOWNLINK在Nexus5X、Android7.1(我自己的AOSP构建)上。我已经过了权限阶段-将我的APK移至特权应用,对AudioRecord进行了调整在Android源代码中停止抛出有关此源的异常。现在我在通话期间得到了空的录音缓冲区。我知道有很多通话记录应用程序,它们可以在其他设备上运行。我还看到某些应用程序可以在已rootN5上执行一些破解并使其正常工作。我希望在Nexus5X上实现同样的效果-任何调整对我来说都可以,包括更改Android版本、修改Qualcomm驱动程序、设备配置文件等-基本上