xiangyuecn/Recorder

html5 js 录音 mp3 wav ogg webm amr g711a g711u 格式,支持pc和Android、iOS部分Web浏览器、Hybrid App(提供Android iOS App源码)、微信,提供ASR语音识别转文字 H5版语音通话聊天示例 DTMF编码解码

View on GitHub ↗Jump to charts ↓Open shareable report

Summary Information

Updated 50 minutes ago
Added to GitGenius on September 12th, 2026
Created on May 16th, 2018
Open Issues & Pull Requests: 136 (+0)
GitHub issues: Enabled
Number of forks: 1,099
Total Stargazers: 5,631 (+0)
Total Subscribers: 84 (+0)

Repository Insights (GitGenius)

Median issue/PR response: 2.1 hours
Mean response time: 2.8 days
90th percentile: 18.5 hours
Tracked items: 54

Charts & Analytics

Fetching additional details & charts...

Issue Activity (beta)

Open issues: 47
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 588 days
Stale 30+ days: 47
Stale 90+ days: 45

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (3)

Most active issues this week

No issue events were indexed in the last 7 days.

Detailed Description

Recorder is a JavaScript library for capturing audio from browser microphones and processing it in real time across web platforms.

The library solves the problem of recording audio in web applications by wrapping the getUserMedia API and providing a unified interface for microphone access. It handles real-time audio capture and processing, allowing developers to record directly from the browser without server-side dependencies. The tool supports recording from various audio sources including microphone streams, WebRTC remote streams, and HTML media element capture streams. It offers multiple output formats—MP3, WAV, PCM, G711A, G711U, OGG, AMR, and WebM—with transcoding capabilities that allow conversion of recorded buffers or arbitrary PCM data into the desired format.

The library works across most modern browsers that implement getUserMedia, including Chrome, Firefox, Safari, iOS 14.3 and later, Android WebView, and various Android browsers updated after 2021. It also functions in non-browser environments like Node.js and can be used in WeChat mini-programs and uni-app through the RecordApp component. The tool is optimized for single-channel audio and supports extended recording sessions through real-time memory management. Developers choosing this tool should note that it focuses on voice recording rather than stereo audio capture. The minimal build sizes—150KB for MP3 support and 25KB for WAV—make it suitable for web applications where bandwidth matters. The project includes plugins for audio visualization, pitch and speed adjustment, speech recognition integration, and audio stream playback, making it applicable to scenarios ranging from simple recording to complex real-time speech-to-text applications.

The project maintains active engagement with users through community channels and offers customization services for specific recording requirements. Development activity shows ongoing refinement of browser compatibility and format support, with documentation covering multiple integration patterns including Vue, TypeScript, and ES modules.