Android:调整 Phone 运动的音高
Android: Adjusting Pitch on Phone Movement
我正在进行 Android 实验,我需要一些帮助。我想播放声音并在 phone 移动时让音调变高。 (例如:向上移动 phone,音高更高)。根据设备的方向,声音会有所不同。但是,如何根据设备的陀螺仪运动/加速度计运动使声音的音高变高或变低?
感谢您的帮助:)
你必须将你的任务分成两个不同的目标。一是如何从您的 phone 获取读数;另一种是操纵声音输出。第一项任务很简单。网上搜索,找个库或者原生API读取设备方向
改变音调更有趣。首先,您需要构建您的程序,以便您可以完全控制输出流。这允许您即时更改波形。同样,将字节推送到 I/O 是机械部分。但首先要考虑声音的物理特性。
当您以两倍的速度播放片段时,音高会加倍,但速度也会加倍。同样,放慢剪辑速度会降低音调,但剪辑的播放时间会更长。这可能是你想要的,但如果你想保留速度但只是改变音高,你将不得不执行一些波形转换。您可以阅读更多关于 Pitch Scaling.
我正在进行 Android 实验,我需要一些帮助。我想播放声音并在 phone 移动时让音调变高。 (例如:向上移动 phone,音高更高)。根据设备的方向,声音会有所不同。但是,如何根据设备的陀螺仪运动/加速度计运动使声音的音高变高或变低? 感谢您的帮助:)
你必须将你的任务分成两个不同的目标。一是如何从您的 phone 获取读数;另一种是操纵声音输出。第一项任务很简单。网上搜索,找个库或者原生API读取设备方向
改变音调更有趣。首先,您需要构建您的程序,以便您可以完全控制输出流。这允许您即时更改波形。同样,将字节推送到 I/O 是机械部分。但首先要考虑声音的物理特性。
当您以两倍的速度播放片段时,音高会加倍,但速度也会加倍。同样,放慢剪辑速度会降低音调,但剪辑的播放时间会更长。这可能是你想要的,但如果你想保留速度但只是改变音高,你将不得不执行一些波形转换。您可以阅读更多关于 Pitch Scaling.