Changelog
All notable changes to the Vidora extension and website. Newest releases at the top.
Version 1.0.73
LatestAdded
- Slow or stalling servers no longer kill your download. When one piece of a streamed video (HLS or DASH) keeps stalling, Vidora used to give up after about 3 minutes and lose the whole download. It now pauses for 30 seconds, then 90 seconds if needed, and tries again with a fresh budget, showing "the server is slowing down, resuming in X s" while it waits. It can also ask the page itself for the stuck piece, which often works when the server answers the player but not us. Encryption keys get the same patience.
- Interrupted downloads can be resumed. If Chrome or your computer stops in the middle of a long download, Vidora now offers a "Resume" button (in a notification and in the downloads list) rather than restarting a big download by surprise. A download you had paused is never restarted behind your back.
- Smarter "disk full" check. Vidora now uses the average bitrate announced by the video when it is available, cleans up its own leftover temporary files before saying the disk is full, and keeps a finished file for 24 hours with a "Try saving again" button if Chrome fails to write it to your Downloads folder.
Fixed
- Vidora no longer stops working on browsers that support only part of Chrome's extension features (for example some WebKit-based browsers): it now starts normally and tells you clearly which features need Chrome, Edge, Brave or Opera on a computer.
- A DRM-protected video can no longer be started from the popup before Vidora has finished checking it.
- The popup opens faster on pages where Vidora checks for DRM in the background.
- The review request now appears only after a real success, with a clear "Leave a review" button next to "Not now" and "Report a problem", and never more than once a day.
Privacy
- When you report a problem yourself, the full page address is now kept (it used to be cut at 200 characters, which made many reports impossible to reproduce), and the form shows it in full before you send. The one-click report sends the video address without its query string. When the popup finds no video on a page, Vidora may send that site's root domain and the reason, at most 5 times a day, never from a private window and never with an email. We also corrected statements on our website that said no data is ever sent: anonymous usage counts and error reports are sent, and you can switch them off in Settings. Details in our Privacy Policy.
Version 1.0.72
Added
- Every failure now reaches us, so we can fix it. When a download fails, Vidora sends an anonymous error report. Until now a report could be lost if you were offline, if our server was busy, or if the same error repeated. Reports are now kept on your device until our server confirms it received them (at most 7 days), repeated errors are counted instead of dropped, and about 25 kinds of failures that used to stay silent are now reported. This is what lets us fix the sites that do not work for you.
Fixed
- A Vimeo download that timed out was shown as "cancelled", as if you had stopped it. It is now shown as a failure, and a Vimeo sign-in wall, rate limit or firewall block shows its own clear message.
- "Download all" no longer leaves cards stuck on "downloading" when the extension's background worker is not answering: they return to "interrupted" so you can retry.
- The one-click "Report a problem" button now sends the real error and the real download method, so we can act on your report faster.
Privacy
- Error reports stay anonymous: no URL, no page title, only a site's root domain. They now also include where the error happened inside Vidora's own code and a random report ID, and our server keeps the temporary session ID for about 48 hours, only to link the errors of one short session, then erases it. Quoted text from the page (such as a title) and email addresses are removed from error messages before anything leaves your browser. Turning off "Anonymous statistics" stops all reports and erases any report still waiting to be sent. Details in our Privacy Policy.
Version 1.0.71
Added
- Hotmart lessons download reliably. Hotmart signs its video links for only a few minutes, so a download started after watching part of a lesson used to fail. Vidora now fetches a fresh link from the player at the moment you click, and names the file after the lesson.
- Your preferred quality is remembered. When you pick a quality (for example 4K) and download, Vidora uses it by default next time, including from the button on the video, the right-click menu and Alt+D. You can also set it in Settings.
Fixed
- Clear answer on DRM-protected course videos. Some course platforms protect their videos with DRM (Widevine). Vidora used to list their encrypted picture and sound files as normal downloads, which gave unplayable files. It now checks the file itself and the player's manifest, and shows a single card that says the video is protected, that bypassing this protection is prohibited by law, and where to look for an official offline option.
- The download button now appears on players that the page enlarges and crops. On some course sites the video player is much taller than what you see; the button now sits in the corner of the visible video, and there is always a single button.
- Video titles with encoded accents (such as "Vid%C3%A9o") or made only of a web address are now shown as readable titles.
- Better contrast for secondary text in dark mode, for easier reading.
Privacy
- Anonymous error reports now contain only a website's root domain (for example vimeo.com), never subdomains, as our Privacy Promise states. A numeric address is sent as "ip" and a local network name as "local".
Version 1.0.70
Added
- Close the button on a video. The Download button that appears on a video now has a small close button. One click hides it on that page; the short message that follows lets you hide it on the whole site, or undo.
- Manage it per site from the Vidora icon. The popup shows a "Button on videos" switch for the site you are on. Settings list every site where the button is hidden, with a "Show again" button for each.
Fixed
- One video, one card, with its sound. Some course platforms load the picture and the sound as two separate files. Vidora listed them as two videos named after technical file names, and the video file had no sound. You now get a single card titled like the lesson, and the downloaded file has picture and sound together.
- Videos found this way now show the page's preview image when it has one.
Version 1.0.69
Fixed
- Streams protected by a plain-text error page now download through your open tab. Some course and video hosts answer a download request with a short text message ("invalid token") instead of the video chunk. Vidora now recognises it and fetches the chunk from the page you are watching, as it already did for web and JSON error pages. Before, the file failed at the very end with an unclear error.
- Clear message on YouTube. On a YouTube page, Vidora showed a clickable card that then failed with a misleading "protected by DRM" notice. YouTube is excluded by rule, not by DRM: the card now says so plainly and can no longer be clicked by mistake.
- When a site reloads its video player during a download, Vidora no longer keeps asking the old, closed player first: it goes straight to the current one.
Version 1.0.68
Fixed
- Videos with separate audio and video tracks now play correctly in VLC. Files assembled from separate tracks (Vimeo, many course platforms) carried one index per segment; some players, VLC included, read the wrong timeline and skipped passages, sound included. The final file now has a single, correct timeline.
- The download button appears on players wrapped by another player. On course sites that wrap a Vimeo, Wistia or Loom player in their own controls (such as Plyr), the button now sits in the corner of the visible video and downloads that exact video.
- Some streams no longer fail on their very last segment. When a site's playlist announced a final chunk larger than the file itself, the server correctly sent only what was left, and Vidora refused it after downloading everything else. The end of the file is now recognised, and the download completes.
- Vimeo pages no longer list raw stream addresses next to the real video: only one clean card per video remains, so the wrong entry can no longer be picked by mistake.
Version 1.0.67
Added
- The button downloads the video you point at. The download button on a player, the right-click menu and Alt+D now target the exact player you are on, instead of the first video found on the page. On a page with an ad next to the real video, you get the real video.
- Right-click works on modern players. A new "Download this video with Vidora" entry works even when the player sits under an overlay or streams through MediaSource: Vidora finds the video under your pointer and downloads the stream that feeds it.
- Live streams are recognised immediately. Low-latency live streams (such as live cams) are identified before anything downloads, with a clear message and the option to record the playback instead; once a card is known to be live, the button on the player reads "Record".
- Two-track WebM streams. DASH streams that deliver VP9 or AV1 video with Opus audio as separate WebM tracks are now merged into one .webm file with sound. When a stream offers both MP4 and WebM, MP4 is preferred at comparable quality.
- Not enough disk space? Said up front. For very large downloads, Vidora checks free space before starting and tells you roughly how many gigabytes you need, instead of failing at the end.
Fixed
- HLS downloads made of fMP4 segments now report their real duration to video players (some files showed the length of the first segment only).
- Slow video servers that queue requests are no longer flooded: Vidora lowers its parallel requests when a server holds them, and waits for the delay a server asks for after "too many requests".
- Vimeo videos embedded in nested frames (course and community sites) and on vimeo.com pages are read from the player before any network request, which removes false "failed" reports; a stalled Vimeo playlist is retried.
- Long downloads keep their in-page relay and capture help for their whole duration (they used to lose it after 10 minutes).
- Loom recordings no longer show a tiny WebM initialisation file as a separate video, and pages that are not videos are never saved as one.
- The rating request now appears from the third successful download, stays visible long enough to be used, and opens the Chrome Web Store reliably.
- youtube.com now explains that YouTube is excluded by design, instead of showing a DRM message.
Version 1.0.66
Added
- A download button on the player itself. Hover a video and a small Vidora button appears in its corner; one click downloads the best quality of that video and shows progress right there on the page. It only appears when a download is actually possible, never on sites Vidora cannot handle, and it can be turned off in the settings.
- The card in first place is the video you are watching. Playback is now matched to the stream that feeds the player, including players that stream through MediaSource, so a short preview clip no longer outranks the real video.
- Honest cards for streams that cannot be downloaded. Session-bound streams (manifests fetched with a POST), region-locked servers, unsupported encryption schemes and Dailymotion access limits each get their own explanation instead of "Failed, retry". Protected DASH streams are flagged as soon as they are detected.
- Vimeo pages, read in place. The player configuration is now also read on vimeo.com pages themselves, and a video you are logged in to see is fetched from inside the page before any "sign in" card is shown.
- A rating request that never gets in your way. It only appears under a finished download, from your second success on, never after a failure in the same session, and comes with a visible "Report a problem" link.
Fixed
- In-page relays now work with CDNs that allow any origin: the request is retried without cookies, exactly as the player does, and the working mode is remembered per server. Relay and capture failures are now counted by real cause.
- Direct MP4 downloads no longer wait 30 seconds on a slow server before failing: the timeout now watches whether bytes keep arriving, and a server that refuses the first method twice is routed to the second method immediately.
- Streaming downloads no longer collapse to two parallel segments after a single timeout; a stalled segment resumes from the byte where it stopped, and the resume journal now also covers video-plus-audio streams.
- Initialisation fragments, GIF decoys and anti-bot responses (HTTP 418) are no longer offered or reported as "not a video". Pasted links get 30 seconds to reveal their video, and a signed link older than five minutes is refreshed before the download starts.
- Detection facts now cover embedded frames and shadow DOM players, so "no video found" reasons are accurate. The keyboard shortcut says so when the popup cannot open.
Version 1.0.65
Added
- The page fetches for you. When a video server accepts the page's own requests but refuses ours (anti-hotlink walls, session-bound tokens), the manifest, the segments and the decryption key are now requested from inside the page, with its cookies and headers, then assembled as usual. The video never leaves your browser.
- Vimeo, read where it plays. The player configuration is read directly inside the Vimeo frame instead of being fetched again, which removes a whole class of 403 errors on course platforms and password-protected embeds. Password and login-only videos get an honest card instead of nothing.
- Resume after a browser restart. Long streaming downloads keep a progress journal; if the extension is killed mid-transfer, the download resumes from the last segment actually written to disk instead of starting over.
- Pages opened before an update are analysed again. After an extension update, open tabs lost their detector until reloaded; the popup now reinjects it on demand and says clearly when a page cannot be analysed (system pages, viewers, stores).
- "The video server is not responding." A server that fails or stalls after every retry is now named as such, with the partial file kept, instead of a generic failure.
Fixed
- Initialisation fragments and image decoys named like videos no longer appear as downloadable cards; a page pretending to be a video is never offered.
- Bytes already loaded by the player are reused immediately when a wall is detected, and are no longer discarded after their first use, which made retries fail.
- Segment downloads retry server errors longer, skip a forbidden segment when the rest is available, classify JSON walls instead of reporting "unknown", and fall back to a lower quality when a rendition dies.
- Vimeo videos are no longer re-resolved on every scan, and a video found by two detectors keeps the richer card.
- Failed screen recordings can be reported with one click like any other download.
Version 1.0.64
Added
- Pornhub connector. The player data is read directly, so the best MP4 (up to 1080p) and the HLS stream are offered instead of a 240p preview throttled by the site.
- Pasted page links open in a background tab when the page needs cookies or scripts to reveal its video (Instagram, Facebook, community platforms). Detection then runs in that tab and the download starts under the pasted card.
- Live streams are named as such. A sliding-window stream cannot be downloaded; the card says so and offers to record instead of a generic failure.
- Twitch clips from create and edit pages, Dailymotion partner-restricted embeds and Vimeo DRM streams each get an honest card.
Fixed
- Streaming sources that refuse any request carrying an Origin header (CloudFront and similar WAFs) are retried without it.
- Tube sites whose media links carry a token after a trailing slash were losing that token, which guaranteed a 403. The links are now kept intact and the best quality is preferred.
- Content delivery networks that sign the URL path itself are recognised, so a refreshed link is used instead of a dead one.
- Segment downloads adapt their parallelism to the network, retry playlists progressively and give up cleanly on stalled bodies instead of hanging.
- Every streaming failure now shows its real cause instead of "Failed, retry"; subtitle problems are reported separately, since the video itself was saved.
Version 1.0.63
Added
- Videos over 2 GB on every path. Streams with a separate audio track (Vimeo, Loom and Skool recordings, Apple-style renditions) are now written straight to disk while they download and assembled on the fly, instead of being held in memory and refused past 2 GB. This was the most frequent failure of 1.0.62 and it is gone.
- Record what is playing. When a player hides its media (blob: sources, players that refuse every request but their own), the popup offers to record the video as it plays, in real time, at the quality shown on screen. Never offered on YouTube or DRM services, and it says upfront when the tab is muted.
- Pause, resume, keep the part already saved. Long streaming transfers can be paused from the popup or the side panel (up to 30 minutes) and resumed. If the source stops halfway, a "Keep partial" button saves what arrived, clearly named as partial.
- Paste a link, get the video. A pasted page address now goes through the same resolvers as a detected page (Vimeo, Loom, Wistia, Dailymotion, Vidyard, generic players). A plain HTML page without a video fails honestly instead of downloading the page.
- Vidyard players are resolved from the player data (all qualities), where the embed page used to be empty for us.
- Honest cards for Vimeo On Demand and password protected videos: the card says "rental required" or "password required" instead of offering a trailer or nothing.
- Missing piece at the source: when a streaming source has one segment that does not exist (a transcoding hole), the download completes and the notification says exactly how many seconds may be missing, instead of failing entirely.
Interface
- A cancelled download now reads "Cancelled", not "Failed". A paused download reads "Paused". A failure stays on screen until you act on it.
- Progress shows bytes, speed and remaining time when the engine knows them, and a Cancel button lives on the card itself.
- Finished rows offer "Show in folder", failed rows offer "Retry" and "Report"; the side panel keeps your last 20 completed downloads.
- On YouTube and DRM services the empty state says why, instead of asking you to press play.
- Footer with three labelled entries (Paste a link, Panel, Settings), larger tap targets and text everywhere, modals that follow the light theme, no more external font request.
Fixed
- Audio-only renditions (.aac) are now assembled by a dedicated muxer: the previous path wrote an unreadable file in streaming mode.
- Anonymous error reports now say which path was taken and why (memory or disk, estimated size, retries, refresh outcome, response shape), so problems can be fixed without asking users for anything.
Version 1.0.62
Fixed
- Global audit: about 90 defects found by reading every download path, fixed in 9 waves. Highlights: an expired direct link is re-resolved before download, interrupted direct transfers resume by byte range, redirected hosts get the right Referer, HLS variants keep their Referer, live playlists are refused by name, unsupported codecs fall back to the best AVC variant, DASH with several periods and inherited templates is parsed, and two-track DASH and Vimeo streams over 2 GB are written to disk.
- Detection: duplicate entries of the same asset are merged, dead mirrors are dropped, vimeo.com pages are resolved directly, and Twitch clips, TikTok and Skool refresh their URL at click time.
Version 1.0.61
Fixed
- Embedded Twitch clips (
clips.twitch.tv/embed?clip=) are resolved again. - When a stream turns out to be silent although the master promised audio, the published audio rendition is fetched and muxed in, instead of failing.
- In-page capture (reusing bytes the player already loaded) works for DASH and Vimeo again.
- A manifest served as an HTML page is named as such (anti-bot wall) instead of "invalid manifest".
- Review prompt moved to the side panel at the moment of success, one step, never shown twice to someone who already went to leave a review.
Version 1.0.60
Added
- Downloads that used to stop working on a site now keep working. Some sites serve the video to their own player but refuse every other request, which is why a site could work a few times and then fail. Vidora now reuses the video data the page's player has already loaded instead of asking the server again. Play the video, then download. Protected (DRM) content and YouTube remain excluded, as always.
- Dailymotion watch pages: videos on dailymotion.com itself and
dai.lylinks are now resolved like embedded players (metadata endpoint, HLS master, best rendition up to 1080p). Previously only embeds on third-party pages worked; the watch page showed a dead entry. See the Dailymotion guide. - Fresh URL at click time for Loom and Dailymotion: both platforms sign their playlist URLs with a short expiry. The extension now re-resolves the video when you click Download instead of reusing the URL captured when the page loaded. Motive: a real failure seen in anonymous telemetry (a 227-byte error page from luna.loom.com after the signature expired).
Fixed
- Quality picker on direct MP4 files (Wistia and similar): choosing 360p or 720p now downloads that file. Before, the choice only applied to HLS streams and the highest asset was downloaded regardless.
- A page's
og:videopointing at Dailymotion's crawler page is no longer offered as a download (it is an HTML page, not a video).
Quality
- 2 new end-to-end scenarios built specifically to prove the change above: one reproduces a server that refuses us, and it failed before this release and succeeds now, with the server still refusing us; the second proves encrypted streams are still decrypted correctly. 35 mock scenarios green (previous best 33), 61 unit suites green, real-site downloads re-verified, three adversarial code reviews with every blocker fixed before submission.
Version 1.0.59
Added
- Configurable download folder: pick the subfolder under Downloads (suggested by a user on 27 August).
- Side panel downloads center: a persistent view of every transfer, opened from the popup footer or the Options page. It never opens by itself; the toolbar icon still opens the popup.
- Arabic and right-to-left layout: full RTL support across popup, options and side panel.
- Detection inside shadow DOM: players that hide their
<video>element in a shadow root are now found.
Fixed
- Measured guards against silent output and quality downgrade on HLS masters, with named failures instead of a wrong file. The streaming path (large files written to disk as they arrive) now refuses to deliver a silent file, TS and CMAF self-init segments included.
- When Chrome refuses disk quota mid-transfer, the download retries once in memory instead of failing.
- Server-side telemetry whitelist resynced: 17 anonymous counters sent by the extension were silently dropped since 1.0.55, which hid the effect of several fixes.
Version 1.0.58
Changed
- Detection precision: ad clips and tracking pixels are excluded, the video you actually watched is ranked first, one obvious entry instead of a list of look-alikes.
- Quality and sound: four cures from the 27 August audit (audio kept on demuxed masters, resolution choices honoured, named failures instead of a wrong file).
Version 1.0.57
Added
- HLS subtitles: caption renditions declared in a playlist are extracted and assembled into a subtitle file (Subs button).
- Downloads center in the popup: global view, cancel, pause and resume.
- Audio only from direct MP4: extracts the audio track to .m4a without re-encoding.
- Streaming to disk for single-track streams: segments are written in order as they arrive, so long videos no longer depend on RAM.
Fixed
- Wistia: inline embeds detected, config fetched with the Referer Wistia now requires, fMP4 durations patched (fixes the "47720 s" duration bug).
- Cancel is really instantaneous: orphaned segment pools are stopped.
- Eight leftovers from the 24 August reliability audit.
Version 1.0.56
Fixed
- Expired direct URL: the extension looks for a fresh sibling URL on the page and retries once (proven by a stale-link end-to-end scenario).
- HTTP 410 is treated as an expired token, never as "not a video".
- HTTP 429: escalating backoff honouring Retry-After (1.5 s to 60 s, 8 retries).
- A guessed page URL that turned out dead no longer shows a Download button.
Version 1.0.55
Added
- Welcome page at install, so the first download is not a guessing game.
- Tier 2 downloads stream to disk (OPFS): the 2 GB memory ceiling is gone for that path.
- Automatic fallback to the tokenised sibling URL on KVS-style sites.
- Twitch clips resolved through the public GraphQL endpoint (Twitch removed the og:video tag).
Version 1.0.52 to 1.0.54
Fixed
- Reliability waves 2 to 5: silent HLS corruption, audio/video desync, iframes, lifetime blocking, progress reporting, download folder, detection gaps.
- In-flight token refresh on HLS: the "lost at 80 %" class is recovered.
- Transfers survive a service worker death and are reconciled on wake-up.
- DRM is identified from the manifest before you click, with an honest card instead of a failing button.
Added
- Codecs HEVC, AV1, VP9 and Opus in the muxer, real dimensions from the SPS.
- DASH SegmentBase / on-demand profiles, HLS EXT-X-BYTERANGE, multiple EXT-X-MAP.
- Vimeo privacy hash (
h=) preserved on course platforms.
Version 1.0.51
Fixed
- Seven causes of download failure, including two crashes in our own code, from an exhaustive sweep of the failure telemetry.
Version 1.0.45 to 1.0.50
Changed
- The download queue belongs to the service worker, not the popup: closing the popup no longer loses a transfer.
- File validation asks "did we receive everything?" instead of "is it big?": small complete files are no longer destroyed.
- Memory ceiling for Tier 2 downloads applied where the size is reliable, and visible in the UI.
- Failures we cannot cure are at least readable: the popup explains what blocked (bot wall, geo, login, DRM).
Fixed
- No more dead Download button from an
og:videothat points at an embed page; the extension looks for the real media in the page instead. - Telemetry counters no longer lose updates (one storage key per event).
Version 1.0.30 to 1.0.44
Foundation
- AES-128 key requests inherit the signed token of the playlist (found by an end-to-end test).
- Diagnostics for the "no init segment" family and structural counters.
- Locale coverage and store listing work across 13 languages.
Version 1.0.0 to 1.0.29
Foundation
- First public release on the Chrome Web Store on 12 May 2026 as Vidora (the project started in April 2026).
- HLS (m3u8), DASH (mpd) and direct MP4 engines with in-browser remuxing (no re-encoding, no server).
- Resolvers for Vimeo, Bunny.net, Wistia, Loom, Dailymotion and Twitch clips; Reddit native video; subtitle tracks from
<track>elements. - Quality picker, progress indicator, 13-locale popup and website.
Recent additions
- Download Dailymotion videos: why the copied URL gets 403 and what works
- How to download Loom videos with the audio
- Best HLS downloader Chrome extensions in 2026
- How to capture a live HLS stream as MP4
- DASH MPD downloader guide
- Free M3U8 URL Detector tool
- Free DASH MPD Analyzer tool
- 7 Vidora alternatives compared