Media Grabber is a free, open-source video downloader, audio downloader and tab recorder extension for Chrome. It detects the real media source behind any web page so you can save audio and video in one click — even when the site offers no download button.
Built as a dependency-free Manifest V3 extension, it also reads adaptive HLS and DASH
streams (.m3u8, .mpd) to list every available quality, saves HLS streams directly by
joining their segments, and includes a browser audio recorder for media that is streamed
in memory and cannot be saved as a file.
An open-source project by Matily — free, non-profit software for everyone.
If this project saves you time, please consider giving it a star. It takes one click, costs you nothing, and is the single best way to help other people discover it.
A quick run through detection, one-click download, and the built-in recorder:
Find and download media from any page — the toolbar popup lists every audio and video source it finds, with format, size and a one-click download.
Every quality, ranked best first — Media Grabber reads the stream manifest and lists each rendition, so you are never stuck with the low-bitrate copy the player happened to load.
Record tab audio, microphone, or both — a docked side panel with a live waveform, pause and resume, and WebM or WAV output.
Save streams without extra tools — HLS segments are fetched and joined into a single file, with no re-encoding and no quality loss.
- Network detection. Watches response content types and catches media files
(
mp3,m4a,aac,ogg,wav,flac,mp4,webm,mov, and more). - Page detection. Scans the DOM for
<audio>and<video>elements, including the source that is actually playing. - One-click downloads. Saves direct files through the browser's own download manager.
- Quality selection. Reads the stream manifest and lists every rendition it offers (1080p, 720p, and so on), ranked highest first, so you never end up with the low-bitrate copy an adaptive player happened to load.
- Stream support. Detects HLS and DASH playlists (
.m3u8,.mpd). HLS streams can be saved directly — segments are fetched and joined into one file with no re-encoding — and a copy-paste FFmpeg command is offered for everything else. - Right-click downloads. A context-menu entry lists the media found on the page so you can save it without opening the popup.
- Audio recorder. A docked side panel captures tab audio, microphone, or both mixed — ideal for streams that can't be saved directly (in-memory MediaSource / blob). Live waveform, pause/resume, preview before saving, and WebM (Opus) or WAV (lossless) output — both native, no dependencies.
- Per-tab badge. Shows how many media items were found on the current tab.
- Private by design. No accounts, no tracking, no external servers. Everything runs locally.
| Media type | Detect | Download |
|---|---|---|
Direct files (mp3, mp4, webm, ...) |
Yes | Yes, one click |
HTML5 <audio> / <video> with a URL |
Yes | Yes |
HLS streams (m3u8) |
Yes | Yes — segments joined into one file |
DASH streams (mpd) |
Yes | Via the generated FFmpeg command |
| In-page MediaSource / blob streams | Yes | Use the built-in recorder |
| DRM-protected media | No | No — encrypted, and not bypassed |
| YouTube | No | Not supported, per Chrome Web Store policy |
➜ Install Media Grabber — one click, with automatic updates.
No build step required:
- Download or clone this repository.
- Open Chrome and go to
chrome://extensions. - Enable Developer mode using the toggle in the top-right corner.
- Click Load unpacked and select the project folder.
- Pin Media Grabber from the extensions menu.
- Open a page and start playing the audio or video.
- Click the Media Grabber toolbar icon to see detected media.
- Press Download for files, or Copy FFmpeg for streams and run the command:
ffmpeg -i "STREAM_URL" -c copy "output.mp4"
- Use the re-scan button if media loads late.
Open the page, start the video, then click the Media Grabber icon. The extension watches what the page loads, so any playable audio or video appears in the list with a Download button. If the media loads late, press re-scan.
Because many sites use adaptive streaming, which delivers picture and sound as two separate files. Downloading only the video track gives you a silent file. Download both entries, then use the Merge video + audio button, which copies this command to your clipboard:
ffmpeg -i "video.mp4" -i "audio.m4a" -c copy "output.mp4"-c copy merges without re-encoding, so it is instant and lossless.
Adaptive streams start at a low bitrate and increase as the connection allows, so a naive download captures whatever rendition the player fetched first. Media Grabber reads the stream manifest and lists every available quality, ranked highest first — pick the top entry.
The list is sorted best-first, and each row shows its format (MP4, WEBM, M4A, HLS, DASH) and file size. The top entry is normally the one you want; a much smaller entry alongside it is usually the separate audio track.
They are adaptive streaming formats that split a video into many small segments described by a
playlist (.m3u8 for HLS, .mpd for DASH). Media Grabber can save HLS directly: press
Save and it downloads every segment and joins them into a single file with no re-encoding.
DASH streams come with a ready-to-run FFmpeg command instead.
Yes. Open the recorder side panel and choose tab audio, microphone, or both mixed. You get a live waveform, pause and resume, and a preview before saving as WebM (Opus) or WAV (lossless). The audio keeps playing normally while it is captured, so recording is the reliable option for media that is streamed in memory and cannot be saved as a file.
No. Chrome Web Store policy does not permit extensions that download YouTube content, so YouTube is deliberately excluded and the extension does not operate on it.
No. That content is encrypted with DRM, which Media Grabber does not attempt to bypass. This is both a technical and a deliberate design limit.
No. There are no accounts, no analytics, and no external servers. Detection, downloading and recording all happen locally in your browser, and the source code is public in this repository.
Yes — free and open source under the MIT licence, with no paid tier, no ads and no upsells. It is built by Matily, a non-profit software studio.
Not for most tasks. Direct files and HLS streams are saved by the extension itself. FFmpeg is only needed to merge separate video and audio tracks, or to save a DASH stream — and the exact command is generated and copied for you.
+------------------------+
network ─────► | background worker |
responses | (webRequest sniffer) | ──┐
+------------------------+ │ per-tab,
├─► de-duplicated ──► popup UI
+------------------------+ │ media list
page DOM ────► | content script | ──┘
<audio>/<video>| (element scanner) |
+------------------------+
src/background.jsobserveswebRequestresponses and classifies them by content type.src/content.jsscans the page for media elements and reports them.src/popup.jsrenders the combined list and triggers downloads.
media-grabber/
├─ manifest.json Extension manifest (Manifest V3)
├─ src/
│ ├─ background.js Network sniffer and per-tab media store
│ ├─ content.js DOM media scanner
│ ├─ popup.html Toolbar UI
│ ├─ popup.css Toolbar styles
│ ├─ popup.js Toolbar logic
│ ├─ recorder.html Recorder window UI
│ ├─ recorder.css Recorder window styles
│ └─ recorder.js Tab/mic capture, mixing, WebM/WAV encoding
├─ icons/ Toolbar icons (16, 32, 48, 128)
└─ assets/ Logo and brand assets
Use Media Grabber only for media you have the right to download, such as your own files, public-domain or Creative Commons content, or media you are licensed to keep. Respect the terms of service of the sites you visit and all applicable copyright law. The extension deliberately does not attempt to bypass DRM.
Release notes for every version live in CHANGELOG.md.
Contributions are welcome. Please read CONTRIBUTING.md and open an issue or pull request. If you like the direction of the project, a star is a great way to show support.
chrome-extension · video-downloader · audio-downloader · media-downloader · video-download-helper · audio-recorder · tab-audio-recorder · screen-audio-recorder · recorder-extension · hls-downloader · m3u8-downloader · dash · mpd · stream-downloader · ffmpeg · manifest-v3 · browser-extension · javascript · privacy-first · open-source
Released under the MIT License. © Matily.
