Recorder

一个库搞定 H5 多格式录音,还能语音转文字

开源 🏷️完全免费 ✅ 目前可打开 语音识别 🍴 复刻 1095 🐛 待处理 136 👀 关注 82
访问官网 ↗ GitHub ↗
GitHub 星标 ★ 5641
维护状态 低维护
是否开源 开源
定价模式 🏷️完全免费 开源项目,MIT许可证,完全免费,无付费版本。

项目预览

Recorder 项目界面预览图
图片来源:GitHub 官方仓库名片

项目数据

分类语音识别
开发团队xiangyuecn
定价模式🏷️完全免费
价格说明开源项目,MIT许可证,完全免费,无付费版本。
访问状态✅ 目前可打开
是否开源是
开源协议MIT
主要语言JavaScript
技术栈/模型amr,asr,audio,browser,dtmf,h5,html,html5,javascript,luyin,mp3,ogg,record,recorder,recording,sound-record,wav,web,webm,webrtc
GitHub 星标★ 5641
上线时间2018-05-16 00:00:00
代码更新2026-07-30
仓库体积14.1 MB
本站数据更新2026-11-07
维护状态低维护
收录时间2026-08-10
浏览次数6

项目介绍

Recorder 是一个基于 HTML5 的纯前端录音库,旨在解决浏览器和混合应用中录音格式不统一、兼容性差的问题。它支持 mp3、wav、ogg、webm、amr、g711a、g711u 等多种音频格式,覆盖 PC、Android、iOS 部分浏览器、微信及 Hybrid App 环境。核心能力包括录音、格式转换、ASR 语音识别转文字、DTMF 编码解码,并附带 H5 版语音通话聊天示例。通过简单 API 即可实现高质量录音,并针对不同浏览器自动选择最佳编码方案,极大简化了 Web 端音频采集和处理的复杂度。

Star 增长趋势

本站每日记录该项目 GitHub 星标变化,观测越久曲线越完整

数据来源:GitHub API 逐日快照 · 收录于 2026-08-10 · 当前星标 ★ 5641

使用教程

ℹ 本教程由 AI 依据该项目 README 整理,个别步骤可能需要按你的环境微调。

难度:入门 约 10 分钟 部署方式:库/依赖 5 步

环境要求

  • 运行环境为 https 或 localhost 等安全环境(getUserMedia 隐私安全要求)
  • 浏览器需实现 getUserMedia:Chrome、Firefox、Safari、iOS 14.3+、Android WebView、腾讯 X5(QQ/微信)
  • 仅支持单声道录音,未适配双声道
  • 纯前端库,无需后端服务;非浏览器环境(nodejs 等)仅支持部分功能

安装与启动步骤

  1. 1下载仓库源码

    README 提供 GitHub 与 Gitee 两个仓库地址,若 github.io 在线链接无法访问,可下载源码到本地。

    git clone https://github.com/xiangyuecn/Recorder.git
  2. 2放入安全环境

    把 QuickStart.html 拷贝到你的 https 或 localhost 网站中,无需其他文件即可测试;也可以本地直接双击打开 html 文件查看。

  3. 3打开页面录音

    浏览器打开该页面,允许麦克风权限后即可开始录音测试;注意只有安全环境才能录音成功。

  4. 4按需引入录制文件

    需要录 mp3 就引入 recorder.mp3.min.js(150kb),只录 wav 用 recorder.wav.min.js(25kb),均支持实时转码与实时传输。

  5. 5播放与上传录音

    上传后的录音把音频链接赋给 audio.src 即可播放;本地 blob 可用 URL.createObjectURL 生成本地链接,实时片段用 BufferStreamPlayer 播放。

如何确认成功

浏览器打开 QuickStart.html 页面,点击录音能正常采集并播放音频,说明环境配置成功。

常见问题

Q:点录音没反应或报错怎么办?

A:录音必须在 https、localhost 等安全环境下进行;若必须用 http,可在 Chrome 打开 chrome://flags/#unsafely-treat-insecure-origin-as-secure,把地址含端口加入 Insecure origins treated as secure 后重启浏览器。

Q:微信、QQ 内置浏览器能录音吗?

A:支持腾讯 Android X5 内核(QQ、微信、小程序 WebView);如需在微信小程序、uni-app 中直接录音,可使用项目提供的 RecordApp。

Q:支持双声道吗?

A:不支持,本库主要用于语音录制,仅对单声道进行支持,但支持超长时间录音。

Q:录音文件怎么播放?

A:完整音频文件直接把链接赋给 audio.src;本地 blob 可通过 URL.createObjectURL 生成本地链接,也可直接赋给 audio.srcObject(兼容性不如 src)。

Q:官网页打不开怎么办?

A:README 中默认使用 github.io 部署的链接,如果无法访问,可直接下载仓库源码到本地,然后双击打开 html 文件访问。

注意事项

  • 录音必须在 https、localhost 等安全环境下才能进行。
  • 默认输出 mp3 格式,另外可选 wav、pcm、g711a、g711u、ogg、amr、webm(beta),有编码器即可扩展任意格式。
  • 不建议自己生成根证书签发域名证书:流程复杂、每台设备都要导入,且很多现代浏览器不再信任用户目录下导入的根证书。
  • README 未提供 npm 等包管理器安装方式,使用方式为拷贝 html 或引入 js 文件。

核心亮点

  • 支持 mp3/wav/ogg/webm/amr 等 7 种格式,覆盖全平台浏览器
  • 内置 ASR 语音识别和 DTMF 编解码,开箱即用
  • 提供 Android/iOS App 源码,无缝集成 Hybrid 应用

不足之处

  • iOS 部分浏览器(如 Safari)兼容性仍受限
  • 文档/社区待观察

适用场景

  • Web 端在线录音并上传或转写
  • H5 语音通话或聊天应用
  • Hybrid App 内嵌录音功能

替代项目

MediaRecorder API、recorder.js、h5-audio-recorder

上一篇:Fun-ASR

下一篇:AudioNotes

同类项目推荐

NeMo-Speech.cpp 开源

用 C++ 跑 NeMo 语音模型,免 Python 低资源做识别与合成

NeMo-Speech.cpp is a lightweight C++ inference runtime for Speech models

★ 244 2026-09-15
CrispASR 开源

C++ 本地跑多款语音模型,离线转录不用 Python

C++ ggml runtime hub for multilingual ASR and TTS models: Cohere Transcribe, Parakee···

★ 799 2026-10-02
Audar-ASR-V1 开源

阿拉伯语语音识别领先者,方言也能精准转写

Arabic-first generative speech recognition — Audar-ASR-V1 (Flash + Turbo). #1 on th···

★ 502 2026-08-10
AsrServe 开源

自托管语音识别,实时离线都能跑,接口兼容 OpenAI

Self-hosted realtime and offline ASR with SOTA open models, speaker diarization and ···

★ 358 2026-10-02
moonshine 开源

超低延迟语音全家桶,让语音交互快人一步

Very low latency speech to text, intent recognition, and text to speech, for buildin···

★ 11427 2026-08-09
typewhisper-win 开源

本地 Whisper 语音转文字,还能顺带翻译,隐私无忧。

TypeWhisper for Windows - Local speech-to-text with translation

★ 243 2026-09-24
SpeechPrompt 开源

用提示学习统一搞定多种语音任务,无需重训模型

**Interspeech 2022** 《SpeechPrompt: An Exploration of Prompt Tuning on Generative S···

★ 102 2026-08-09
wyoming-faster-whisper 开源

本地 Whisper 语音转文字,接入 Home Assistant 语音助手

Wyoming protocol server for faster whisper speech to text system

★ 398 2026-09-23
whisper-subs 开源

Jellyfin 本地自动生成字幕,音频不出服务器

Jellyfin plugin for local AI-powered subtitle generation using Whisper - all process···

★ 124 2026-09-23