Commit Graph
61 Commits
Author SHA1 Message Date
euzuandGitHub 3be0fa347f MetadatResolve hardening rerties after errors (#611)
* MetadatResolve hardening rerties after errors
2026-02-25 19:30:19 +01:00
euzuandGitHub 02989dd05f Fix: update_on_boot playlist update and metadata solver deadlock (#610)
- Fix: update_on_boot playlist update and metadata solver deadlock
- probe task release with grace time
2026-02-24 18:59:51 +01:00
euzuandGitHub 0db2af05f4 Feature/vod stick to provider (#609)
* Vod Seek provider selection fix
2026-02-24 16:03:39 +01:00
euzuandGitHub 43909f1a5d - Fixed telegram markdown escape (#606)
- Fixed telegram markdown escape
- Fixed sort order for episodes
- Fixed session stickyness problem for vod and series
- Fixed template resolution
2026-02-24 12:51:51 +01:00
euzuandGitHub d0ce95eb3c Fix/web UI save overrides templates (#604)
- WebUI save overrides templates
- Deadlock during playlist update and metadata background task
- Global templates like mappings
2026-02-23 17:00:11 +01:00
euzuandGitHub fc0f1f32aa Enhanced Metadata Resolution, Stream Analysis & Improved STRM-Output. Added connection priority management.
**Description:**
This PR introduces a major overhaul of how streams are analyzed and connections are managed. It integrates `ffprobe` for deep stream analysis, adds a background task queue for metadata resolution to prevent UI blocking, introduces a connection priority system, and adds support for Live TV probing.

### 🚀 Key Features

*   **FFprobe Integration & Live TV Probing**:
    *   Automatically probes streams (VOD/Series **and now Live TV**) to determine resolution, codecs (HEVC/AV1), dynamic range (HDR/DV), bit depth, and audio channels.
    *   **Safe Probing**: Probing strictly respects the provider's `max_connections` limit.
    *   Docker images now include static `ffmpeg/ffprobe` binaries.

*   **Smart Connection Management (Priority System)**:
    *   Introduced a priority system for connections to manage provider limits intelligently.
    *   **Preemption**: Users with higher priority can preempt (kick) lower priority connections when provider slots are full.
    *   **Background Queue**: Metadata resolution and stream analysis run as background tasks (Priority 0). They only run when connection slots are idle and yield immediately if a real user needs to stream.

*   **Enhanced Metadata Resolution**:
    *   **Fallback Logic**: If a provider is missing the TMDB ID or Release Date, the system resolves them via the TMDB API.
    *   **Smart Title Cleaning**: Implemented a centralized cleaner to strip common IPTV prefixes before attempting metadata matches or generating filenames, significantly improving match rates.

*   **Improved Output**:
    *   **Quality Tags**: Filenames in STRM files now include detailed tags (e.g., `Movie - [4K HEVC HDR].strm`).
    *   **Flat Grouping**: `flat: true` now correctly groups multi-version movies into single folders based on TMDB ID.
    *   **Global Series Date**: Ensures consistent series folder naming even if episodes have different years.
2026-02-12 15:06:57 +01:00
euzuandGitHub 2d0ac6f957 Feature/sort epg playlistexplorer normalization fix (#543)
* Fixed series sort issues
* Playlist explorer copy to clipboard functons implemented
* Epg time fix
* grace period hold stream option added.
* Fixed group and mapper normalization
* Image cache validity for browsers set to 4 hours. Responding now  last modified and cache header.
2026-01-27 18:33:16 +01:00
euzuandGitHub 9a6b7e574b epg fix (#537)
New Features
Aliases can now be individually enabled or disabled to manage active sources.

Bug Fixes
Improved channel identification accuracy in XMLTV outputs.

Style
Disabled aliases display with strikethrough text for better visibility.
2026-01-26 17:37:01 +01:00
euzuandGitHub 16fcd7f882 Optimizations
* New Features

Added series information display with episodes, cast, and metadata in playlist explorer
Introduced multi-cluster playlist endpoints (live, VOD, series) for flexible content retrieval
Added series info lookup and filtering capabilities
Implemented sidebar navigation for source editor with dedicated pages (Main, Options, Staged, Advanced, Alias)
Added filter state controls (All, Selected, Deselected) for playlist category management
Enabled Trakt configuration toggle to control integration
Performance Improvements

Optimized B+Tree indexing for faster queries
Reduced startup latency with disk-based operations and optional memory caching
Improved string memory handling through efficient reference-counted strings
UI Enhancements

Enhanced playlist explorer with series details and episode grouping by season
Added new UI icons (Options, Advanced, Staging, Alias, Trakt)
Improved form layouts with toolbar controls
Enhanced radio button group styling for better visual hierarchy

* New Features

Added series information display with episodes, cast, and metadata in playlist explorer
Introduced multi-cluster playlist endpoints (live, VOD, series) for flexible content retrieval
Added series info lookup and filtering capabilities
Implemented sidebar navigation for source editor with dedicated pages (Main, Options, Staged, Advanced, Alias)
Added filter state controls (All, Selected, Deselected) for playlist category management
Enabled Trakt configuration toggle to control integration
Performance Improvements

Optimized B+Tree indexing for faster queries
Reduced startup latency with disk-based operations and optional memory caching
Improved string memory handling through efficient reference-counted strings
UI Enhancements

Enhanced playlist explorer with series details and episode grouping by season
Added new UI icons (Options, Advanced, Staging, Alias, Trakt)
Improved form layouts with toolbar controls
Enhanced radio button group styling for better visual hierarchy

* New Features

Added series information display with episodes, cast, and metadata in playlist explorer
Introduced multi-cluster playlist endpoints (live, VOD, series) for flexible content retrieval
Added series info lookup and filtering capabilities
Implemented sidebar navigation for source editor with dedicated pages (Main, Options, Staged, Advanced, Alias)
Added filter state controls (All, Selected, Deselected) for playlist category management
Enabled Trakt configuration toggle to control integration
Performance Improvements

Optimized B+Tree indexing for faster queries
Reduced startup latency with disk-based operations and optional memory caching
Improved string memory handling through efficient reference-counted strings
UI Enhancements

Enhanced playlist explorer with series details and episode grouping by season
Added new UI icons (Options, Advanced, Staging, Alias, Trakt)
Improved form layouts with toolbar controls
Enhanced radio button group styling for better visual hierarchy

* New Features

Added series information display with episodes, cast, and metadata in playlist explorer
Introduced multi-cluster playlist endpoints (live, VOD, series) for flexible content retrieval
Added series info lookup and filtering capabilities
Implemented sidebar navigation for source editor with dedicated pages (Main, Options, Staged, Advanced, Alias)
Added filter state controls (All, Selected, Deselected) for playlist category management
Enabled Trakt configuration toggle to control integration
Performance Improvements

Optimized B+Tree indexing for faster queries
Reduced startup latency with disk-based operations and optional memory caching
Improved string memory handling through efficient reference-counted strings
UI Enhancements

Enhanced playlist explorer with series details and episode grouping by season
Added new UI icons (Options, Advanced, Staging, Alias, Trakt)
Improved form layouts with toolbar controls
Enhanced radio button group styling for better visual hierarchy
2026-01-20 10:09:58 +01:00
euzu 2b3056b949 Resolved a critical issue where provider connection counters could leak or become stale during hot reloads. Added automatic garbage collection for unused provider records to prevent logical memory buildup. 2026-01-03 22:20:37 +01:00
euzu eb087825d5 Inputs in source.yml 2026-01-03 18:06:25 +01:00
euzu 5e246aefab some refactoring for panel api config 2025-12-20 15:15:36 +01:00
euzu 2950292a6a panel api 2025-12-19 21:13:12 +01:00
euzu d33bdb6238 panel api 2025-12-19 20:54:30 +01:00
euzu 7b8f3615ae Merge commit '756177774fc141e8b503ec5520853b923d1d5f6f' into feature/panel_api 2025-12-19 20:24:06 +01:00
knylbyte 88bdd07c73 fix: cargo clippy 2025-12-18 22:48:26 +01:00
knylbyte d901cda260 feat: implemented allocation IDs to prevent addr-based release races, moved provider grace to a non-blocking post-start check, and made shared stream subscription updates atomic 2025-12-18 22:07:14 +01:00
knylbyte 650105fd18 feat: extended connectionhandling to prevent provider con exhaust false positiv 2025-12-18 20:05:59 +01:00
knylbyte b9583819a5 feat: enhenced logging to understand, why provider con exhaust is sometime false positive 2025-12-18 17:49:54 +01:00
knylbyte 756177774f feat: wait until connection expire 2025-12-18 11:07:30 +01:00
euzu 2f32f1ece1 Local media library 2025-12-15 17:54:19 +01:00
euzu 21006dbf0f Refactored connection handling to avoid race conditions 2025-11-26 14:13:31 +01:00
euzu 6c021fbe2b Refactored connection handling to avoid race conditions 2025-11-26 13:44:11 +01:00
euzu 1fa967d8a2 Refactored connection handling to avoid race conditions 2025-11-26 09:56:09 +01:00
euzu afc6881454 fixedFixed active shared stream provider connections 2025-11-20 15:55:34 +01:00
euzu cf43c6a784 Fixed active shared stream provider connections 2025-11-20 15:50:46 +01:00
euzu 39c678032a Fixed active shared stream provider connections 2025-11-20 15:35:07 +01:00
euzu d86d599998 Merge remote-tracking branch 'deadc1de/debug/shared-stream-connection-increment' into feature/shared_connection_count_fix 2025-11-20 14:52:35 +01:00
euzu 49f180123b More log output 2025-11-18 21:01:42 +01:00
DarkBreakpoint e81f839853 Add shared streaming diagnostics 2025-11-17 08:57:29 -06:00
DEADC0DEandroot 4dae6dae72 Fix provider connection exhaustion when zapping channels 2025-11-17 12:50:48 +01:00
euzu b69ed4921e better connection handling 2025-11-10 01:04:13 +01:00
euzu 15a252664e Completly refactored connection management 2025-11-04 21:46:44 +01:00
euzu 95dde2876d First step provider and user connections.
-> Missing shared streams connections
2025-11-04 18:01:44 +01:00
euzu 42b0326949 Connection guard release fallback implemented 2025-11-01 01:47:47 +01:00
euzu 6dbe77ad23 some connection guard fixes 2025-11-01 00:26:30 +01:00
euzu 57b9499d6c batch alias id fixed 2025-10-29 16:40:17 +01:00
euzu 4d99ae4325 Mixed up ip address behind reverse proxy during shared stream registration fixed 2025-10-29 15:29:05 +01:00
euzu cd76891ce4 Some refactorings
- HdHomerun
- WebUI GeoIP
- Playlist Updates
...
2025-10-28 19:52:46 +01:00
euzu 364e3d69df task optimizations for connection release 2025-10-27 13:58:55 +01:00
euzu 93d60a210f Stream table new colmuns 2025-10-27 08:27:35 +01:00
euzu 9ae71b99d5 Fixed SeriesInfo episode data-type problem,
Added accept_unsecure_ssl_certificate to config.yml
2025-09-19 12:15:24 +02:00
euzu e776b2d053 fixed generate random string for wasm 2025-08-28 00:45:38 +02:00
euzu c0d2cd0448 Batch provider connection size reporting fixed 2025-08-07 14:59:26 +02:00
euzu 1e23ef3549 webui user search 2025-08-05 11:37:39 +02:00
euzu b3e7e2cd89 Playlist update added to web ui 2025-08-03 10:24:23 +02:00
euzu 49b2390e60 Playlist browser categorie view implemented 2025-07-30 18:03:48 +02:00
euzu 069c9f354b shared stream fixes 2025-07-28 17:22:12 +02:00
euzu b3c88ef6db shared stream optimizations 2025-07-28 14:46:13 +02:00
euzu 04c7e8549b shared stream fixes 2025-07-27 20:47:35 +02:00