Joren f4310ed688 Simplify logger output format
Drop source file/line prefixes from logs so console output is cleaner and easier to scan during long-running jobs.
2026-04-14 10:21:21 +02:00
2024-09-15 04:40:14 +02:00
2026-04-14 10:21:21 +02:00
2024-09-15 05:00:02 +02:00

DRMDtool

drmdtool is a utility for processing .drmd files using N_m3u8DL-RE.

Configuration

Create a config.toml file in the same directory as the drmdtool executable:

[General]
BaseDir = "/path/to/save/downloads"
Format = "mkv"
TempBaseDir = "/tmp/nre"
EnableConsole = true
MaxUploadMB = 32

[WatchFolder]
Path = "/path/to/watched/folder"
PollingInterval = 10
UsePolling = true
UseInotify = false

[N_m3u8DLRE]
Path = "/path/to/N_m3u8DL-RE"

[Server]
Host = "127.0.0.1"
Port = 8080
ReadTimeoutSec = 30
WriteTimeoutSec = 30
IdleTimeoutSec = 60
ReadHeaderTimeoutS = 10

[Security]
AuthToken = ""

Configuration Options

  • General

    • BaseDir: Directory where downloaded files will be saved.
    • Format: Output format for the downloaded files (e.g., mkv, mp4).
    • TempBaseDir: Temporary directory for intermediate files.
    • EnableConsole: Boolean to enable or disable console output.
    • MaxUploadMB: Maximum allowed upload size for the web UI.
  • WatchFolder

    • Path: Directory to watch for new .drmd files.
    • PollingInterval: Interval in seconds for polling the watch folder.
    • UsePolling: Boolean to enable or disable folder polling.
    • UseInotify: Boolean to enable or disable inotify for file watching.
  • N_m3u8DLRE

    • Path: Path to the N_m3u8DL-RE executable.
  • Server

    • Host: Bind address for the web server (127.0.0.1 recommended).
    • Port: Web server port.
    • ReadTimeoutSec, WriteTimeoutSec, IdleTimeoutSec, ReadHeaderTimeoutS: HTTP timeout settings.
  • Security

    • AuthToken: Optional token for protecting all endpoints. Recommended when binding to a non-loopback host.

Environment Variable Overrides

You can override the configuration options using environment variables. The following environment variables are supported:

  • BASE_DIR: Overrides General.BaseDir
  • FORMAT: Overrides General.Format
  • TEMP_BASE_DIR: Overrides General.TempBaseDir
  • ENABLE_CONSOLE: Overrides General.EnableConsole (set to true or false)
  • MAX_UPLOAD_MB: Overrides General.MaxUploadMB
  • WATCHED_FOLDER: Overrides WatchFolder.Path
  • USE_POLLING: Overrides WatchFolder.UsePolling (set to true or false)
  • USE_INOTIFY: Overrides WatchFolder.UseInotify (set to true or false)
  • POLLING_INTERVAL: Overrides WatchFolder.PollingInterval
  • SERVER_HOST: Overrides Server.Host
  • SERVER_PORT: Overrides Server.Port
  • AUTH_TOKEN: Overrides Security.AuthToken

Web UI Usage

  1. Run the executable:

    ./drmdtool
    
  2. Open a web browser and go to http://localhost:8080

    If Security.AuthToken is configured, include it as a query parameter: http://localhost:8080/?token=YOUR_TOKEN

  3. Use the interface to upload .drmd files and monitor download progress

CLI Usage

To process a file directly from the command line:

./drmdtool -f /path/to/file.drmd

This will download the file and save it in the base directory specified in the config.

Previews

Index Page

Index Page

Select Page

Select Page

Progress Page

Progress Page

Description
No description provided
Readme 429 KiB
Languages
Go 98.6%
Makefile 1.4%