Android中是否有API来访问耳机硬件输入?理想情况下,我希望能够直接读取输入电压/电流。在Java或NDK中访问它会没问题。最好是在非root手机上有办法实现这一点。
答案 0 :(得分:0)
我还没有见过,但我不会指望它。
音频输入通过带通滤波器和一些自动增益控制。您可以对音频输入进行采样,但由于采样值取决于完整信号的频率,因此您将无法确定实际电压。
答案 1 :(得分:0)
如果您需要恢复低频或“DC”组件,而不是通过过滤器(尝试并验证它不是,你永远不知道),那么这里有两件事你可以尝试:
使用斩波电路正常交替连接输入然后反转,或简单地将输入与地交替。在软件中,您将测量两个读数之间的差异并应用一些预先测量的校准。
使用压控振荡器制作电压到频率转换器并用软件测量产生的音频频率而不是其幅度(即,你将使用FM调制)
首先,如果您关心电流,则需要表征手机的输入阻抗,或者更可能使用外置运算放大器电路来呈现您想要对测试信号产生的任何阻抗,然后从低阻抗运算放大器输出驱动手机输入,根据需要用电阻增加。请务必小心确定并且不要超过手机输入的最大电压。对于第二种,所呈现的阻抗将是您的电压与频率调制器输入的函数。