Repository navigation
Releases: chis47747/unidl
Releases · chis47747/unidl
Release list
UniDL 2.3.3
Windows progress
- Fixed download progress cards that could remain empty in narrow Windows terminals, including Python 3.14 environments.
Track selection
- Added detailed language, codec, audio-profile, channel, subtitle-type and quality selection controls with safe manual picker recovery.
- Added a detailed track-selection guide covering the filters, ranking behavior and manual fallback.
UniDL 2.3.2
Changelog
[2.3.2] - 2026-10-06
Windows paths
- Hardened nested temporary, resume, decryption, subtitle, live-pipe and post-processing paths so derived filenames stay within the Windows legacy path limit.
Windows live recording
- Added native Windows named-pipe support for real-time FFmpeg audio/video muxing while preserving the existing POSIX FIFO path on macOS and Linux.
Track selection
- Added hard audio codec/profile/channel, subtitle-kind, language and best/worst quality filters, with manual Track Picker recovery when no automatic combination matches.
[2.3.1] - 2026-10-05
Windows paths
- Shortened Windows output and temporary paths when legacy path limits would otherwise cause
WinError 206during download, post-processing, or cleanup.
Service diagnostics
- Allowed service authors to disable persisted Debug/API diagnostics with
DEBUG_LOGGING = Falsewhile keeping the user-visible TUI notice.
Service registration
- Preserved registered services across temporary discovery failures and recovered registrations cleared by older startup logic.
Terminal status
- Centered the status information row across the available terminal width.
[2.3.0] - 2026-10-04
Service discovery
- Discovered service code installed through pip, source checkouts, and user service folders so registered services are available without an extra
uv syncstep.
Track metadata
- Kept clear DASH/ISM audio tracks from being marked as encrypted when only the video requires DRM.
Terminal layout
- Corrected terminal cell widths for Thai and other combining characters so translated labels and track details remain aligned.
[2.2.9] - 2026-10-03
Windows input and paste
- Fixed Windows Terminal account-field paste events so copied credentials are
inserted into the focused field. - Preserved printable Unicode characters such as
@while ignoring modifier
and synthetic control records that could incorrectly open Settings.
Filename formats
- Added selectable dot, space and hyphen filename styles under Files & naming
while keeping custom title and release templates available.
[2.2.8] - 2026-10-02
Batch track selection
- Expanded queued video track pickers into the available terminal space and hid
stale delivery panels, keeping later batches selectable in short windows.
Windows console input
- Stabilized Windows console input mode and mouse reporting, including recovery
when the host resets the mode and cleanup of pending reports on exit.
Selected-track KIDs
- Reported KIDs from the selected rendition and initialization data so Core,
the delivery screen and the native downloader show the same key identity.
Windows temporary paths
- Bounded temporary directory and section names to avoid legacy Windows path
length failures while retaining resume identity through stable digests.
[2.2.7] - 2026-10-01
CDM identity
- Displayed the selected CDM's authoritative security level and Widevine system
ID in the service identity row when the device provides those values.
Windows Terminal compatibility
- Disabled incompatible Kitty keyboard negotiation on Windows and kept the TUI
on a reliable 256-colour path, restoring mouse input and Ctrl+S settings access
on affected Windows Terminal and Python 3.14 installations.
[2.2.6] - 2026-09-30
Live recording
- Fixed Pluto TV live Matroska recording when independent HLS AAC audio needs
to be probed before FFmpeg writes the output header.
HDR metadata
- Detected HDR10+ and related video-range markers from DASH media BaseURL
metadata when adaptation-level fields are absent.
BBC iPlayer and dependencies
- Kept BBC iPlayer subtitle sidecars in their provider format without requiring
the optional external subtitle helper. - Updated the MonaLisa DRM and HTTP SOCKS dependency metadata and lockfile.
[2.2.5] - 2026-09-29
HLS audio decryption
- Corrected clear Apple HLS audio fragments that contain ordinary
roll
sample groups, while retaining strict handling for encrypted CBCS/CENC data.
Subtitle handling
- Treated valid empty WebVTT, TTML and SRT sidecars as tracks with no cues
instead of reporting a misleading ffmpeg conversion failure.
Local binaries
- Added project-level
binaries/lookup as a fallback after the operating
systemPATH, without overriding system-installed tools.
[2.2.4] - 2026-09-28
Audio and clear-track metadata
- Preserved Amazon E-AC-3/AC-3 5.1 channel metadata when a generic MP4 init
field reports stereo. - Prevented clear audio tracks with provider bookkeeping KIDs from being
labelled as encrypted CENC tracks.
Export and vault handling
- Reduced native export size by omitting unused service-private title payloads
while keeping older exports readable. - Queried remote key vaults using both canonical and PlayReady byte-order KID
aliases.
Dependencies
- Updated the public dependency and lock metadata for the current service
integrations.
[2.2.3] - 2026-09-27
BBC iPlayer playback
- Updated BBC source profiles to UHD, FHD and HD while preserving compatibility
with existing resolution settings. - Added multi-source VOD selection, chapter metadata and shared subtitle
references for BBC playback.
DASH and HLS delivery
- Preserved the selected HLS rendition KID in exported downloader commands by
requesting the matching media playlists when needed. - Accepted explicitly clear fragmented MP4 tracks even when a provider marks
their adaptation set as encrypted, while retaining strict CENC/CBCS handling
for encrypted media.
[2.2.2] - 2026-09-27
Compiled service loading
- Improved source-free compiled service loading by discovering sibling native
extensions and preserving canonical package namespaces for relative imports.
DRM key vault matching
- Corrected vault key inventory handling when services declare authoritative KIDs
even when selected stream rows are not marked encrypted. - Allowed explicitly selected PSSH metadata to participate in selected-track
licensing without reintroducing unrelated manifest KIDs.
[2.2.1] - 2026-09-26
Shared subtitle sidecars
- Added the generic
augment_tracks()service hook for subtitle inventories
returned by separate provider APIs. - Added service-owned subtitle sidecars to the shared track picker and applied
the sharedsub_langsselection beforeprepare_download()fetches files for
muxing. - Included selected sidecar subtitle rows in command records and documented
the service integration contract.
[2.2.0] - 2026-09-26
Fragmented media postprocessing
- Corrected timestamp restamping when one HLS/CMAF segment contains multiple
MP4 fragments, preventing accumulated audio/video drift.
Windows state storage
- Made settings, service registration, token, cookie and cache writes work on
Windows whereos.fchmodis unavailable.
[2.1.9] - 2026-09-25
Playback metadata
- Added optional actual video bitrate sampling for the selected video tracks.
- Corrected audio channel metadata from the selected MP4 initialization segment
when a manifest reports a stale channel count. - Refreshed the download details view after the metadata probes complete.
Remote CDM and live recording
- Fixed PlayReady remote CDMs being omitted from service-level CDM choices when
older configuration entries still declaredsystem: widevine. - Showed a stored-value hint when editing remote CDM and vault secrets without
rendering the credentials themselves. - Reduced live recording finalization space usage by releasing each full-size
intermediate as soon as the next stage is verified, with recovery of the
raw recording or a valid MP4 fallback when finalization fails.
[2.1.8] - 2026-09-25
Title attachments
- Added per-service poster, thumbnail and artwork attachments with optional TUI previews.
- Preserved attachment aspect ratios in native terminal image widgets with letterboxed rendering.
- Downloaded enabled attachments as separate files without muxing them into media.
- Added attachment metadata to native exports and imports.
[2.1.7] - 2026-09-24
Compiled-only service compatibility
- Added ABI- and platform-aware selection for services that ship several
compiled-only variants in one package. - Load the selected native service and API extensions under their canonical
service namespace, preserving normal relative imports and isolating
incompatible variants without blocking other services. - Expanded compiled-service documentation with multi-variant packaging and
compatibility guidance.
[2.1.6] - 2026-09-24
DRM and chapter compatibility
- Added a PlayReady KID-only PSSH fallback that builds the minimal WRMHEADER
needed by licence services when a manifest omits a full PRO payload. - Added
chapters_filesupport to audio conversion, so chapter metadata can be
embedded in MP3, M4A, FLAC and ALAC output as well as video containers. - Kept chapter validation and automatic mux decisions consistent for selected
audio and video tracks.
Service loading and packaging
- Added ABI/platform-aware compiled-only service registration and readiness
reporting without requiring private service source code in the release. - Standardized the public release-note format and kept package metadata and
documentation aligned with the shipped feature set.
[2.1.5] - 2026-09-23
Diagnostics and safer batch handling
- Added timestamped session and per-task debug diagnostics with task IDs,
request/response metadata, bounded response previews and full tracebacks. - Redact credentials, cookies and bearer tokens in diagnostics while retaining
signed manifest URLs and content keys; record licence challenge/response
payloads only when a licence exchange fails. - Keep debug logging active when the TUI replaces the normal log callback and...
UniDL v2.3.1
Windows paths
- Shortened Windows output and temporary paths when legacy path limits would otherwise cause WinError 206 during download, post-processing, or cleanup.
Service diagnostics
- Allowed service authors to disable persisted Debug/API diagnostics with DEBUG_LOGGING = False while keeping the user-visible TUI notice.
Service registration
- Preserved registered services across temporary discovery failures and recovered registrations cleared by older startup logic.
Terminal status
- Centered the status information row across the available terminal width.
UniDL v2.3.0
Service discovery
- Discovered service code across pip installs, source checkouts, and user service folders without requiring an extra uv sync step.
Track metadata
- Kept clear DASH/ISM audio tracks from being marked as encrypted when only the video requires DRM.
Terminal layout
- Corrected terminal cell widths for Thai and other combining characters so translated labels and track details remain aligned.
UniDL 2.2.9
Windows input and paste
- Fixed Windows Terminal account-field paste events so copied credentials are inserted into the focused field.
- Preserved printable Unicode characters such as
@while ignoring modifier and synthetic control records that could incorrectly open Settings.
Filename formats
- Added selectable dot, space and hyphen filename styles under Files & naming while keeping custom title and release templates available.
UniDL 2.2.8
Batch track selection
- Expanded queued video track pickers into the available terminal space and hid stale delivery panels, keeping later batches selectable in short windows.
Windows console input
- Stabilized Windows console input mode and mouse reporting, including recovery when the host resets the mode and cleanup of pending reports on exit.
Selected-track KIDs
- Reported KIDs from the selected rendition and initialization data so Core, the delivery screen and the native downloader show the same key identity.
Windows temporary paths
- Bounded temporary directory and section names to avoid legacy Windows path length failures while retaining resume identity through stable digests.
UniDL 2.2.7
CDM identity
- Added authoritative CDM security level and Widevine system ID to the service identity row.
Windows Terminal compatibility
- Disabled incompatible Kitty keyboard negotiation on Windows and restored mouse input and Ctrl+S settings access on affected Windows Terminal installations.
UniDL v2.2.6
Live recording
- Fixed Pluto TV live Matroska recording when independent HLS AAC audio needs to be probed before FFmpeg writes the output header.
HDR metadata
- Detected HDR10+ and related video-range markers from DASH media BaseURL metadata when adaptation-level fields are absent.
BBC iPlayer and dependencies
- Kept BBC iPlayer subtitle sidecars in their provider format without requiring the optional external subtitle helper.
- Updated the MonaLisa DRM and HTTP SOCKS dependency metadata and lockfile.
UniDL v2.2.5
HLS audio decryption
- Corrected clear Apple HLS audio fragments containing ordinary roll sample groups while retaining strict CBCS/CENC handling.
Subtitle handling
- Treated valid empty WebVTT, TTML and SRT sidecars as tracks with no cues instead of reporting a misleading ffmpeg conversion failure.
Local binaries
- Added project-level binaries/ lookup as a fallback after the operating-system PATH.
UniDL v2.2.4
Audio and clear-track metadata
- Preserved Amazon E-AC-3/AC-3 5.1 channel metadata when a generic MP4 init field reports stereo.
- Prevented clear audio tracks with provider bookkeeping KIDs from being labelled as encrypted CENC tracks.
Export and vault handling
- Reduced native export size by omitting unused service-private title payloads while keeping older exports readable.
- Queried remote key vaults using both canonical and PlayReady byte-order KID aliases.
Dependencies
- Updated the public dependency and lock metadata for the current service integrations.