[PR #44] [CLOSED] Fix Manifest V3 compatibility and add non-DRM manifest capture #55

Closed
opened 2026-02-28 14:27:32 +03:00 by kerem · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/DevLARLEY/WidevineProxy2/pull/44
Author: @benjaminfrombe
Created: 1/11/2026
Status: Closed

Base: mainHead: fix/non-drm-capture-and-manifest-bug


📝 Commits (2)

  • dea2fee Fix Manifest V3 compatibility and add non-DRM manifest capture
  • 37c8b61 Remove 'No keys (non-DRM)' text and --use-shaka-packager flag from command generation

📊 Changes

4 files changed (+281 additions, -264 deletions)

View changed files

📝 background.js (+19 -1)
📝 lib/util.js (+1 -1)
📝 manifest.json (+0 -1)
📝 panel/panel.js (+261 -261)

📄 Description

Changes

This PR fixes several issues and adds support for capturing non-DRM content:

Bug Fixes

  1. Fix Manifest V3 service worker bug: Removed conflicting scripts property from manifest.json that was preventing the service worker from loading properly
  2. Fix panel crash: Added null check for result.keys to prevent TypeError when displaying non-DRM content

Features

  1. Non-DRM manifest capture: Extension now captures and stores manifest URLs from non-DRM content (e.g., streams with _nodrm_ in the URL)
  2. Enable by default: Changed default enabled state from false to true for better UX

Testing

Tested with both DRM-protected and non-DRM content:

  • DRM content: Works as before, captures Widevine keys
  • Non-DRM content: Now captures manifest URLs which can be used with yt-dlp/ffmpeg for download

Technical Details

The manifest.json had both scripts (Manifest V2) and service_worker (Manifest V3) properties, causing the service worker to fail silently. Non-DRM manifests are now saved with type "NO-DRM" and can be exported via the existing "Export Logs" button.


🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/DevLARLEY/WidevineProxy2/pull/44 **Author:** [@benjaminfrombe](https://github.com/benjaminfrombe) **Created:** 1/11/2026 **Status:** ❌ Closed **Base:** `main` ← **Head:** `fix/non-drm-capture-and-manifest-bug` --- ### 📝 Commits (2) - [`dea2fee`](https://github.com/DevLARLEY/WidevineProxy2/commit/dea2fee7eb8f719bb195f114ce27c9b4e53ee9f5) Fix Manifest V3 compatibility and add non-DRM manifest capture - [`37c8b61`](https://github.com/DevLARLEY/WidevineProxy2/commit/37c8b614090ea73348a52c5dfb93b13b2e75315b) Remove 'No keys (non-DRM)' text and --use-shaka-packager flag from command generation ### 📊 Changes **4 files changed** (+281 additions, -264 deletions) <details> <summary>View changed files</summary> 📝 `background.js` (+19 -1) 📝 `lib/util.js` (+1 -1) 📝 `manifest.json` (+0 -1) 📝 `panel/panel.js` (+261 -261) </details> ### 📄 Description ## Changes This PR fixes several issues and adds support for capturing non-DRM content: ### Bug Fixes 1. **Fix Manifest V3 service worker bug**: Removed conflicting `scripts` property from manifest.json that was preventing the service worker from loading properly 2. **Fix panel crash**: Added null check for `result.keys` to prevent TypeError when displaying non-DRM content ### Features 3. **Non-DRM manifest capture**: Extension now captures and stores manifest URLs from non-DRM content (e.g., streams with `_nodrm_` in the URL) 4. **Enable by default**: Changed default enabled state from `false` to `true` for better UX ### Testing Tested with both DRM-protected and non-DRM content: - DRM content: Works as before, captures Widevine keys - Non-DRM content: Now captures manifest URLs which can be used with yt-dlp/ffmpeg for download ### Technical Details The manifest.json had both `scripts` (Manifest V2) and `service_worker` (Manifest V3) properties, causing the service worker to fail silently. Non-DRM manifests are now saved with type "NO-DRM" and can be exported via the existing "Export Logs" button. --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
kerem 2026-02-28 14:27:32 +03:00
Sign in to join this conversation.
No labels
pull-request
No milestone
No project
No assignees
1 participant
Notifications
Due date
The due date is invalid or out of range. Please use the format "yyyy-mm-dd".

No due date set.

Dependencies

No dependencies set.

Reference
starred/WidevineProxy2#55
No description provided.