专为小白新手设计的零学习成本音频内录解决方案
Internal Recorder 是一款专注于系统音频录制的 Windows 桌面应用。无需复杂的路由配置,无需专业音频知识,只需三步即可开始录制高品质音频。
| 特性 | Internal Recorder | 其他工具 |
|---|---|---|
| 🚀 上手速度 | 3 秒开始录制 | 需要学习配置 |
| 🎨 界面复杂度 | 极简直观 | 功能繁多复杂 |
| 🔊 系统内录 | ✅ 完美支持 | |
| 💾 文件格式 | WAV 无损 | 多种格式(需依赖) |
| 🎯 专注度 | 专注内录 | 功能全面但臃肿 |
| ⚡ 轻量化 | 体积小、资源占用低 | 体积大、占用资源多 |
选择设备 → 点击录制 → 保存文件
⬇️ ⬇️ ⬇️
1秒 1秒 1秒
|
|
- 下载最新版本:Releases
- 运行安装程序
- 启动应用
graph LR
A[选择设备] --> B[点击录制]
B --> C[停止录制]
C --> D[预览保存]
style A fill:#89B4FA
style B fill:#F38BA8
style C fill:#F38BA8
style D fill:#A6E3A1
-
🎯 选择音频源
- 在主界面下拉框中选择要录制的输出设备
- 支持扬声器、耳机、虚拟音频设备等
-
🔴 开始录制
- 点击中央的红色录制按钮
- 或使用快捷键
Ctrl+Shift+R - 实时波形显示录制状态
-
⏹️ 停止并保存
- 再次点击按钮或快捷键停止录制
- 在预览窗口中试听录音
- 选择保存位置并确认
🔊 关于高采样率与 48 kHz 的技术说明
为什么录制结果固定为 48 kHz?是否支持 96 kHz - 192 kHz?
Internal Recorder 使用 Windows 原生的 WASAPI Loopback(Shared Mode) 捕获系统正在播放的音频。 需要说明的是:在 Windows 的音频架构中,系统混音器(Audio Engine)通常以 48 kHz 作为统一的工作采样率,所有应用的音频都会在此阶段被重采样后再输出。
在这种模式下,即使请求更高的采样率(如 96 kHz 或 192 kHz),WASAPI Loopback 实际捕获到的仍然是 48 kHz 混音结果的上采样数据,而非真正具有更高时间分辨率的音频信号。 即使音频源文件本身就是 96 kHz 或更高采样率的,经过系统混音器处理后,最终捕获的结果仍然相同。 这类上采样在频谱中通常表现为 48 kHz 以上频段的镜像结构,并不包含新的有效声音信息。
本项目经过实际测试与频谱分析验证了这一行为,因此 刻意选择以 48 kHz 作为默认且唯一的输出采样率,以确保录制结果忠实反映系统最终播放的真实音频,而不是产生"看似更高规格、实则无有效信息"的伪高采样率文件。
如果你的目标是获取音源文件本身的原始采样率(例如音乐制作或母带用途),建议直接使用专业音频接口(比如VB-Cable)进行录制; 若目标是"所听即所得"的系统内录(视频、游戏、桌面音频等),48 kHz 是 Windows 平台下最准确、最可靠的选择。
💡 镜像频谱图
上图为 96 kHz 录制结果的频谱示例,可见 48 kHz 以上为明显镜像频段,说明音频信息已在系统混音阶段被限制于 48 kHz。
- 16-bit PCM:适合一般用途,文件较小
- 24-bit PCM:专业音频制作,高动态范围
- 32-bit Float:最高精度,无损处理(推荐)
| 层级 | 技术 | 说明 |
|---|---|---|
| 🎨 前端 | Flutter 3.19+ | 现代化跨平台 UI 框架 |
| 🔧 语言 | Dart + C++17 | 类型安全 + 高性能 |
| 🔊 音频 | WASAPI Loopback | Windows 系统音频捕获 |
| 💾 编码 | WAV (Native) | 原生实现,零依赖 |
| 🔌 桥接 | dart:ffi | 低延迟 FFI 通信 |
| 📦 构建 | CMake | 标准 C++ 构建系统 |
- 🎯 专注内录:专为系统音频录制优化
- ⚡ 高性能:C++ 原生引擎,零延迟捕获
- 🔒 无依赖:WAV 原生实现,无需第三方库
- 💻 原生体验:Flutter 渲染,Windows 原生外观
- 📦 轻量化:体积小巧,资源占用低,运行流畅
- 🎨 现代化设计:简洁美观的界面,青紫色主题配色
- 📊 实时波形:青绿色到蓝色的渐变波形可视化
- ⏱️ 计时器:大号数字显示录制时长
- 🎯 状态指示:清晰的录制状态提示
- ⌨️ 快捷键提示:底部显示操作提示
- 📋 产品需求文档 (PRD)
- 🏗️ 架构设计文档
- 📊 项目状态
- 📖 前端规范
- 🧪 采样率测试文档
- 📚 在线课程录制 - 录制网课音频,不错过任何内容
- 💼 会议录音 - 保存重要会议讨论
- 🎮 游戏音效 - 录制游戏精彩瞬间
- 🎵 音乐录制 - 保存喜欢的音乐片段
- 🎬 视频配音 - 录制系统播放的音频用于视频制作
- 操作系统: Windows 10 (1903+) / Windows 11
- 内存: 4GB RAM 或更高
- 处理器: 双核 CPU 或更高
- 磁盘空间: 30MB 可用空间(解压后)
本项目采用 MIT License 开源协议。
MIT License
Copyright (c) 2026 Internal Recorder Contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
欢迎贡献代码、报告问题或提出建议!
- 🍴 Fork 本项目
- 🌿 创建特性分支 (
git checkout -b feature/AmazingFeature) - 💾 提交更改 (
git commit -m 'Add some AmazingFeature') - 📤 推送到分支 (
git push origin feature/AmazingFeature) - 🔀 开启 Pull Request
- 🐛 报告问题
- 💡 功能建议
- 📧 邮箱: chyinan2015@gmail.com
Zero-learning-curve audio recording solution designed for beginners
Internal Recorder is a Windows desktop application focused on system audio recording. No complex routing configuration, no professional audio knowledge required - just three steps to start recording high-quality audio.
| Feature | Internal Recorder | Other Tools |
|---|---|---|
| 🚀 Learning Curve | Start recording in 3 seconds | Requires learning configuration |
| 🎨 UI Complexity | Extremely simple and intuitive | Feature-rich but complex |
| 🔊 System Recording | ✅ Perfect support | |
| 💾 File Format | WAV lossless | Multiple formats (requires dependencies) |
| 🎯 Focus | Dedicated to internal recording | Comprehensive but bloated |
| ⚡ Lightweight | Small size, low resource usage | Large size, high resource consumption |
Select Device → Click Record → Save File
⬇️ ⬇️ ⬇️
1 sec 1 sec 1 sec
|
|
- Download the latest version: Releases
- Run the installer
- Launch the application
graph LR
A[Select Device] --> B[Click Record]
B --> C[Stop Recording]
C --> D[Preview & Save]
style A fill:#89B4FA
style B fill:#F38BA8
style C fill:#F38BA8
style D fill:#A6E3A1
-
🎯 Select Audio Source
- Choose the output device to record from the dropdown in the main interface
- Supports speakers, headphones, virtual audio devices, etc.
-
🔴 Start Recording
- Click the central red record button
- Or use the hotkey
Ctrl+Shift+R - Real-time waveform displays recording status
-
⏹️ Stop & Save
- Click the button or hotkey again to stop recording
- Preview the recording in the popup window
- Choose save location and confirm
🔊 Technical Explanation: High Sample Rates and 48 kHz
Why is the recording output fixed at 48 kHz? Does it support 96 kHz / 192 kHz?
Internal Recorder uses Windows native WASAPI Loopback (Shared Mode) to capture system audio playback. It should be noted that in Windows audio architecture, the system mixer (Audio Engine) typically uses 48 kHz as the unified working sample rate, and all application audio is resampled at this stage before output.
In this mode, even if a higher sample rate (such as 96 kHz or 192 kHz) is requested, WASAPI Loopback actually captures upsampled data from the 48 kHz mixed result, rather than audio signals with truly higher temporal resolution. Even if the source audio file itself is 96 kHz or higher sample rate, after processing by the system mixer, the final captured result remains the same. This type of upsampling typically manifests as mirrored frequency bands above 48 kHz in the spectrum and does not contain new valid audio information.
This project has verified this behavior through actual testing and spectrum analysis. Therefore, we deliberately chose 48 kHz as the default and only output sample rate to ensure that the recording results faithfully reflect the actual audio that the system ultimately plays, rather than producing pseudo-high sample rate files that "appear to have higher specifications but contain no effective information."
If your goal is to obtain the original sample rate of the source file itself (for example, for music production or mastering purposes), it is recommended to record directly from the professional audio interface; If your goal is "what you hear is what you get" system internal recording (video, games, desktop audio, etc.), 48 kHz is the most accurate and reliable choice on the Windows platform.
💡 Mirrored Spectrum Diagram
The above figure shows a spectrum example of 96 kHz recording results. It can be seen that the frequency bands above 48 kHz are clearly mirrored, indicating that the audio information has been limited to 48 kHz at the system mixing stage.
- 16-bit PCM: Suitable for general purposes, smaller file size
- 24-bit PCM: Professional audio production, high dynamic range
- 32-bit Float: Highest precision, lossless processing (recommended)
| Layer | Technology | Description |
|---|---|---|
| 🎨 Frontend | Flutter 3.19+ | Modern cross-platform UI framework |
| 🔧 Language | Dart + C++17 | Type-safe + High performance |
| 🔊 Audio | WASAPI Loopback | Windows system audio capture |
| 💾 Encoding | WAV (Native) | Native implementation, zero dependencies |
| 🔌 Bridge | dart:ffi | Low-latency FFI communication |
| 📦 Build | CMake | Standard C++ build system |
- 🎯 Focused on Internal Recording: Optimized for system audio recording
- ⚡ High Performance: C++ native engine, zero-latency capture
- 🔒 No Dependencies: WAV native implementation, no third-party libraries required
- 💻 Native Experience: Flutter rendering, Windows native appearance
- 📦 Lightweight: Small size, low resource usage, smooth operation
- 🎨 Modern Design: Clean and beautiful interface with purple theme colors
- 📊 Real-time Waveform: Gradient waveform visualization from cyan-green to blue
- ⏱️ Timer: Large digital display showing recording duration
- 🎯 Status Indicator: Clear recording status prompts
- ⌨️ Hotkey Hints: Operation hints displayed at the bottom
- 📋 Product Requirements Document (PRD)
- 🏗️ Architecture Design Document
- 📊 Project Status
- 📖 Frontend Specification
- 🧪 Sample Rate Testing Document
- 📚 Online Course Recording - Record online course audio, never miss any content
- 💼 Meeting Recording - Save important meeting discussions
- 🎮 Game Audio - Record exciting game moments
- 🎵 Music Recording - Save favorite music clips
- 🎬 Video Dubbing - Record system playback audio for video production
- Operating System: Windows 10 (1903+) / Windows 11
- Memory: 4GB RAM or higher
- Processor: Dual-core CPU or higher
- Disk Space: 30MB available space (after extraction)
This project is licensed under the MIT License.
MIT License
Copyright (c) 2026 Internal Recorder Contributors
Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
in the Software without restriction, including without limitation the rights
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
copies of the Software, and to permit persons to whom the Software is
furnished to do so, subject to the following conditions:
The above copyright notice and this permission notice shall be included in all
copies or substantial portions of the Software.
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
SOFTWARE.
Contributions, issues, and feature requests are welcome!
- 🍴 Fork the project
- 🌿 Create your feature branch (
git checkout -b feature/AmazingFeature) - 💾 Commit your changes (
git commit -m 'Add some AmazingFeature') - 📤 Push to the branch (
git push origin feature/AmazingFeature) - 🔀 Open a Pull Request
- 🐛 Report Issues
- 💡 Feature Suggestions
- 📧 Email: chyinan2015@gmail.com
⭐ If this project helps you, please give it a Star!
Made with ❤️ by Internal Recorder Team

