Page 1 of 1

AUX_IN的使用问题(恳请大神解惑)

Posted: Sat Nov 20, 2021 7:51 am
by qiuzelin
我想请教关于AUX_IN使用的问题。

我想实现LINE_IN输入音频,然后对音频进行处理(如降噪),而后LINE_OUT输出。运行官方案例pineline_passthru可以实现从输入到输出,但随后我发现输入的音频是无法改变的(无法对其进行处理),并且即使将pineline_passthru中的输出管道(i2s_stream_writer)删除,仍然能够实现输出,也即只需要i2s_stream_reader就可以实现输入后直接输出,无法做任何处理。这和我预想的很不一样

但如果将LINE_IN改为麦克风输入(AUDIO_HAL_CODEC_MODE_LINE_IN变为AUDIO_HAL_CODEC_MODE_BOTH)就正常了,即没有writer模块便无法实现输出

恳请各位大神解答疑惑

Re: AUX_IN的使用问题(恳请大神解惑)

Posted: Wed Dec 01, 2021 7:41 am
by ESP_HengYC
硬件电路是怎么链接的?

单麦克对于NS 性能提升不明显的,

Re: AUX_IN的使用问题(恳请大神解惑)

Posted: Sat Jan 01, 2022 9:57 am
by beyound
您好,可以用I2S_Read来访问AUX_in,处理每个sample以后再 用I2S_Write写回,我有一个例子可以实现你的这个功能。

Re: AUX_IN的使用问题(恳请大神解惑)

Posted: Sat Jan 01, 2022 5:36 pm
by beyound
我今天也测试了一下 aux in 利用pipeline输出到耳机出口的这个代码,发现确实有这个问题:如果

audio_hal_ctrl_codec(board_handle->audio_hal, AUDIO_HAL_CODEC_MODE_LINE_IN, AUDIO_HAL_CTRL_START);

这个参数采用了AUDIO_HAL_CODEC_MODE_LINE_IN,那么所有的audio_element_set_write_cb对应的回调函数,里面的buf都是000000000,是不是官方没有考虑过有人需要从LINE_in输入数据再处理?再输出?

楼主你好,我在做一个dsp,咱们可以多交流交流。你可以用我的I2s读写方式,但有个问题就是那个没有回调函数,是一个死循环,外部操控会有些麻烦。

Re: AUX_IN的使用问题(恳请大神解惑)

Posted: Mon Jan 03, 2022 5:19 am
by beyound
楼主,请看我的另一个帖子,里面有部分代码。后来我新开了一个线程来循环执行I2S_READ,已经实现了两个循环,一个循环读取音频sample,一个循环读取GPIO的操作控制信号。基本上能满足你的需求了。

Re: AUX_IN的使用问题(恳请大神解惑)

Posted: Fri Jan 21, 2022 2:38 pm
by beyound
还是要顶一下,虽然我自己利用线程循环i2s_read和 i2s_write 可以实现了对line-in的音频处理,但是我还想接入蓝牙音频输入,以及一些录音、回放、混音功能。官方的例子都是pipeline的,但是pipeline 如楼主所述,无法修改sample数据。

请问利用官方的管道方式,如何实现对line-in音频采样数据的修改?

Re: AUX_IN的使用问题(恳请大神解惑)

Posted: Fri Feb 04, 2022 3:33 pm
by soidea
我也有同样的问题,而且,什么时候可以在arduino下使用?