MTH Video Manifest Capture

A Chrome extension that captures video manifest URLs (e.g., HLS .m3u8, MPEG-DASH .mpd, and SharePoint DASH manifests) from web pages, processes them, and generates FFmpeg and yt-dlp commands for downloading. It also includes a simple UI for customization and a button to download or open the manifest URL directly.

Overview

MTH Video Manifest Capture is designed to assist users in capturing and processing video streaming manifests, particularly for SharePoint, HLS, and DASH formats. The extension provides a user-friendly popup interface to view cleaned manifest URLs, select quality and format options, set custom filenames, and copy commands for FFmpeg and yt-dlp to download the video content. It also includes a "Download Manifest" button to open the cleaned manifest URL in a new tab or initiate a basic download.

This extension is built using Chrome's Manifest V3, ensuring modern security and performance standards.

Features

  • Captures video manifest URLs (.m3u8, .mpd, and SharePoint /transform/videomanifest with format=dash).
  • Cleans URLs by removing unnecessary parameters (e.g., after format=dash).
  • Generates customizable FFmpeg and yt-dlp commands with options for quality (Best, 1080p, 720p, 480p) and format (MP4, MKV, TS).
  • Allows custom output filenames or uses a timestamp-based default (e.g., video_YYYYMMDD_HHMMSS).
  • "Download Manifest" button to open the cleaned manifest URL in a new tab or initiate a basic download of the manifest file.
  • Toggle buttons to expand/collapse long URLs and commands for better readability.
  • Copy buttons for FFmpeg and yt-dlp commands to easily paste into a terminal.

Installation

Prerequisites

  • Google Chrome or Chromium browser (Manifest V3 compatible, version 88 or later).
  • FFmpeg and yt-dlp installed on your system (optional, for running the generated commands).

Steps

  1. Clone or Download the Repository

    git clone https://github.com/MiniduTH/Sharepoint-Downloader.git
    

    Or download the ZIP file and extract it.

  2. Load the Extension in Chrome

    • Open Chrome and navigate to chrome://extensions/.
    • Enable "Developer mode" in the top-right corner.
    • Click "Load unpacked" and select the Sharepoint-Downloader folder.
  3. Install Dependencies (optional, for using generated commands)

    • FFmpeg: Install via your package manager (e.g., sudo apt install ffmpeg on Ubuntu) or download from ffmpeg.org.
    • yt-dlp: Install via pip install yt-dlp or download from yt-dlp.org.

Usage

  1. Open a Web Page with Video Manifests

    • Visit a website streaming video content (e.g., SharePoint, HLS, or DASH streams).
  2. Activate the Extension

    • Click the "MTH Video Manifest Capture" icon in the Chrome toolbar.
  3. Capture Manifests

    • The extension automatically detects and captures video manifest URLs (.m3u8, .mpd, or SharePoint DASH manifests).
    • The cleaned URL, FFmpeg command, and yt-dlp command will appear in the popup.
  4. Customize Options

    • Use the dropdowns to select video quality (Best, 1080p, 720p, 480p) and format (MP4, MKV, TS).
    • Enter a custom output filename, or leave it blank to use the timestamp-based default (e.g., video_20250305_143022.mp4).
  5. Copy Commands

    • Click "Copy FFmpeg" or "Copy yt-dlp" to copy the respective commands to your clipboard.
    • Paste the commands into a terminal to download the video using FFmpeg or yt-dlp.
  6. Download Manifest (optional)

    • Click "Download Manifest" to open the cleaned manifest URL in a new tab or download the manifest file (note: this downloads the manifest, not the full video; further processing is required using FFmpeg or yt-dlp).

Screenshots

Screenshot of the popup interface showing captured manifest, commands, and options.

Screenshot

Known Limitations

  • "Download Manifest" only saves the manifest file (e.g., .m3u8 or .mpd), not the full video. You need tools like FFmpeg or yt-dlp to process it.
  • Authenticated manifest URLs (e.g., SharePoint temp auth tokens) may require user login or additional configuration.
  • Direct video downloads without external tools are not supported due to browser security restrictions.

Contributing

Contributions are welcome! Please follow these steps:

  1. Fork the repository.
  2. Create a new branch for your feature or bug fix:
    git checkout -b feature/your-feature-name
    
  3. Make your changes and commit them:
    git commit -m "Add your commit message here"
    
  4. Push to the branch:
    git push origin feature/your-feature-name
    
  5. Submit a pull request to the main branch.

License

This project is licensed under the MIT License. See the LICENSE file for details.

Contact

Description
No description provided
Readme MIT 94 KiB
Languages
JavaScript 61.7%
HTML 20.2%
CSS 18.1%