Skip to content

4.0.0

Choose a tag to compare

@github-actions github-actions released this 17 Mar 15:12

Features

  • hybrid: Add L5 active area and dynamic L6 luminance metadata
  • debug: Add JSONL debug logging to decryption, muxing, and all downloaders
  • debug: Log binary tool versions at session start
  • dl: Add --repack flag to insert REPACK tag in output filenames
  • core: Add TrackRequest system for multi-codec/multi-range support
  • dl: Add --output option to override download directory
  • tracks: Add edition tags to output filenames
  • templates: [breaking] Add customizable output filename templates
  • templates: Add configurable language tagging rule engine
  • Update unshackle version to 4.0.0
  • dl: Add --animeapi and --enrich options for anime metadata and tagging
  • dl: Add skip messages for --no-audio and --no-chapters flags
  • dl: Extract closed captions from HLS manifests and improve CC extraction
  • dl: Add --worst flag and SHIELD OkHttp fingerprint preset

Bug Fixes

  • n_m3u8dl_re: Pass all content keys for DualKey DRM decryption
  • hybrid: Skip bitrate filter for DV tracks in HYBRID mode
  • attachment: Sanitize filenames with illegal Windows characters
  • hybrid: Accept HDR10+ tracks as valid base layer for HYBRID mode
  • dl: Allow selection of audio tracks for 'all' languages in addition to 'best'
  • dl: Overwrite existing files on re-download and use atomic replace
  • dl: Handle cross-device moves when temp and downloads differ
  • track: Fallback to requests downloader from n_m3u8dl_re for unsupported track types
  • n_m3u8dl_re: Disable segment count validation for duration-based DASH
  • Correct formatting and add missing newlines in selector and EXAMPLE service
  • dependencies: Update pyplayready version to 0.8.3 and adjust dependencies
  • drm: Update PlayReady KID extraction for pyplayready 0.8.3 compatibility
  • api: Resolve Sentinel serialization, missing params, and add search endpoint
  • dash: Pass period_filter to n_m3u8dl_re via filtered MPD file
  • title: Add HDR Vivid Format HDR Tag
  • ism: Prevent duplicate track IDs for audio tracks with same lang/codec/bitrate
  • aria2c: Correct progress bar tracking for HLS downloads
  • dl: Filter CC subtitle languages with --s-lang and extract all manifest CCs

Documentation

  • Update and correct configuration documentation

Changes

  • hybrid: Replace log.info with console status and add JSONL debug logging
  • dl: Remove legacy multi-fetch loop for unmigrated services
  • example: Migrate EXAMPLE service to track_request pattern
  • providers: Extract metadata providers into modular system