ARTICLE DETAIL

资讯详情

深耕网站视觉设计与运营推广的一线实战洞察。

Godot 麦克风录音指南:录音、播放与 WAV 导出一次讲清

Godot 麦克风录音指南:录音、播放与 WAV 导出一次讲清 Godot 麦克风录音指南录音、播放与 WAV 导出一次讲清【免费下载链接】godot-demo-projectsDemonstration and Template Projects项目地址: https://gitcode.com/GitHub_Trending/go/godot-demo-projects在 godot-demo-projects 仓库的 audio/mic_record/ 目录中有一个完整的Godot 麦克风录音示例从系统麦克风实时采集声音录完后可以在应用内回放也可以一键导出为标准 WAV 文件支持多种采样率、位深格式与声道设置。整套逻辑用 GDScript 编写基于 Compatibility 渲染器运行是学习 Godot 音频录制、WAV 导出流程的实用起点。先把示例跑起来示例的主场景是 audio/mic_record/MicRecord.tscn项目启动时会自动加载它因此用 Godot 编辑器打开 audio/mic_record/ 后直接按运行即可。有两点与桌面端其他示例不同值得留意该示例启用了音频输入audio/mic_record/project.godot 中配置了driver/enable_inputtrue与enable_audio_inputtrue。在网页或移动端部署时运行环境需要授予麦克风权限录音功能才可用。界面打开时会先播放一段 Intro 提示音用来确认播放通道正常。界面上有一排按钮与选项Record录音/停止、Play回放、Save WAV To保存、Play Music背景音乐以及格式、采样率、立体声三个配置项。录完一段后Play 与 Save 按钮才会从禁用状态变为可用。界面能完成哪些操作核心流程很简单点一次 Record 开始录音状态栏显示Recording...再点一次停止停止后 Play 按钮被激活点击即可通过AudioStreamPlayer回放刚录下的内容控制台还会打印本次录制的格式、采样率、声道与数据字节数方便核对参数是否生效。保存操作走的是 WAV 导出。Save WAV To 旁带一个输入框默认值为user://record.wav点击后调用AudioStreamWAV的save_to_wav方法文件会写入 Godot 的用户目录。界面上另有Open User Folder按钮它调用OS.shell_open直接打开该目录省去手动拼路径的麻烦——对不熟悉user://映射位置的用户很友好。Play Music 按钮播放的是仓库自带的 audio/mic_record/Intro.ogg。它挂在独立的播放器上作用是在录音时提供一段参考底噪验证麦克风通道与其他总线互不干扰。可配置的三类录音参数所有参数都通过界面上的下拉框和勾选框修改选中后立刻反映到下一次录制的AudioStreamWAV实例上具体逻辑集中在 audio/mic_record/MicRecord.gd 的_on_*回调里。编码格式共三档8 位未压缩体积最小适合简易语音、16 位未压缩动态范围更好默认选项、IMA ADPCM 压缩体积与质量的折中适合较长录音。采样率提供六档11025、16000、22050、32000、44100、48000 Hz。44100 Hz 是 CD 音质的通用标准48000 Hz 则常见于专业音频制作两者都是安全的选择如果只录短语音且在意文件大小选低一档也能满足需求。立体声是一个勾选框默认开启。取消后录出的文件为单声道数据量减半对语音类内容几乎没有损失。背后的实现思路录音链路一共四个环节理解它们就能把这个示例移植到自己的项目里采集端场景中有一个AudioStreamPlayer挂着AudioStreamMicrophone并设为自动播放。这个节点本身不发声它的意义是让麦克风输入持续流向所在总线Record 总线。录音端audio/mic_record/default_bus_layout.tres 定义了名为 Record 的独立总线上面挂了一个AudioEffectRecord效果器。总线同时被设为静音mute所以录下的内容不会从扬声器回放出来说话只会写入内存中的AudioStreamWAV。控制端脚本通过AudioServer.get_bus_index找到 Record 总线取出总线上的效果器用set_recording_active切换开始/停止停止后get_recording返回录好的流对象再按需设置格式、采样率与声道。输出端回放直接把流对象赋给另一个AudioStreamPlayer播放保存则调用save_to_wav落盘。把采集、录音、控制、输出拆到不同节点和总线上是这个示例最值得借鉴的结构录音通路与正常播放通路互不污染移植时只需保留一条带AudioEffectRecord的总线即可。从录音到音频可视化的延伸这个示例只覆盖了录下来而仓库 audio/ 分类下还有几个示例可以与之组合扩展成更完整的音频工具实时波形或频谱可视化参照 audio/spectrum/ 的思路对采集到的采样数据做绘制即可把输入电平画出来录音时叠加混响、降噪等效果可结合 audio/audio_effects/ 中的效果器用法在 Record 总线前后串联更复杂的合成与交互场景可以看看 audio/midi_piano/ 和 audio/rhythm_game/ 这类示例。实践建议几个容易踩到的细节录制前先把格式、采样率、声道都设置好参数修改对下一次录制立即生效默认路径user://record.wav在不同平台指向的位置不同保存后可用Open User Folder按钮确认IMA ADPCM 在部分平台的兼容性不如 PCM导出给第三方工具处理时优先选 16 位未压缩跨设备测试时留意浏览器或移动端对麦克风权限的申请提示。【免费下载链接】godot-demo-projectsDemonstration and Template Projects项目地址: https://gitcode.com/GitHub_Trending/go/godot-demo-projects创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
返回列表