Commit Graph
53 Commits
Author SHA1 Message Date
euzuandGitHub 0be9258fc0 epg timeshift refactoring (#550)
epg timeshift refactoring
2026-01-29 18:08:22 +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 e01197cf52 Feature/for each genre review (#541)
* New Features
Added for_each DSL construct for iterating over playlist item fields, with split() function support.
Added "genre" as a queryable and editable playlist item field.

Bug Fixes
Improved short EPG request handling with automatic default limits.
Fixed EPG timestamp formatting to use UTC consistently.
2026-01-26 23:04:37 +01:00
euzuandGitHub 62f7611125 Feature/log fixes and button styling (#536)
fixed some logs, added input name
epg short response hos now no errors field
added missing fields for reverse_proxy and library config in ui
fixed button styling
2026-01-25 16:32:35 +01:00
euzu 3752125112 Improved HTTP request retry mechanism with standardized backoff handling for better reliability
UI Improvements
Enhanced playlist explorer styling
2026-01-23 16:06:20 +01:00
euzu c5239b5614 Optimizing playlist data exchange with ui 2026-01-22 17:43:03 +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 3fade46e04 Added user_agent to trakt 2026-01-12 09:01:35 +01:00
euzu 6f776782f1 Playlist Update Optimization: Reduced Memory Usage
An optimization has been introduced to reduce memory consumption during playlist updates.

Overview
Previously, provider playlists were fully loaded into memory during the update process. For large playlists (e.g. hundreds of thousands of entries or multiple providers), this could result in significant RAM usage.
With the new implementation, it is now possible to optionally read provider playlists directly from disk instead of keeping them entirely in memory.

How It Works
 - users can configure whether:
     - Provider playlists are loaded into memory (previous behavior), or
     - Provider playlists are streamed to/from disk to minimize RAM usage.

Processing remains sequential and batch-based, ensuring identical functional behavior.
This approach significantly lowers peak memory usage, especially on systems with limited resources.

Benefits

- Reduced peak RAM consumption during playlist updates
- Better scalability for large playlists and multiple providers
- Full backward compatibility

Trade-offs / Drawbacks

 - Increased processing time due to reduced in-memory caching
 - Higher disk I/O usage, especially for large or fragmented playlists
 - Performance depends more strongly on disk speed (Nvme SSD, HDD)
 - Slightly increased CPU overhead due to repeated parsing and deserialization
 - Not optimal for environments where fast updates are more important than memory usage

Recommendation

 - Use in-memory mode for systems with sufficient RAM and a focus on update speed
 - Use disk-based mode for large playlists, multiple providers, or memory-constrained environments
2026-01-08 15:54:12 +01:00
euzu 8cc9283a31 Playlist Update Optimization: Reduced Memory Usage
An optimization has been introduced to reduce memory consumption during playlist updates.

Overview
Previously, provider playlists were fully loaded into memory during the update process. For large playlists (e.g. hundreds of thousands of entries or multiple providers), this could result in significant RAM usage.
With the new implementation, it is now possible to optionally read provider playlists directly from disk instead of keeping them entirely in memory.

How It Works
 - users can configure whether:
     - Provider playlists are loaded into memory (previous behavior), or
     - Provider playlists are streamed to/from disk to minimize RAM usage.

Processing remains sequential and batch-based, ensuring identical functional behavior.
This approach significantly lowers peak memory usage, especially on systems with limited resources.

Benefits

- Reduced peak RAM consumption during playlist updates
- Better scalability for large playlists and multiple providers
- Full backward compatibility

Trade-offs / Drawbacks

 - Increased processing time due to reduced in-memory caching
 - Higher disk I/O usage, especially for large or fragmented playlists
 - Performance depends more strongly on disk speed (Nvme SSD, HDD)
 - Slightly increased CPU overhead due to repeated parsing and deserialization
 - Not optimal for environments where fast updates are more important than memory usage

Recommendation

 - Use in-memory mode for systems with sufficient RAM and a focus on update speed
 - Use disk-based mode for large playlists, multiple providers, or memory-constrained environments
2026-01-08 15:11:12 +01:00
euzu a8d0837021 Fixed EPG titles to match renamed / mapped titles 2026-01-04 16:40:42 +01:00
euzu dba7ceaa87 Fixed EPG titles to match renamed / mapped titles 2026-01-04 16:36:35 +01:00
euzu 9c7b292949 Fixed EPG titles to match renamed / mapped titles 2026-01-04 16:27:59 +01:00
euzu 75be790831 Fixed EPG titles to match renamed / mapped titles 2026-01-04 16:24:08 +01:00
euzu 14153fc4ff Fixed EPG titles to match renamed / mapped titles 2026-01-04 16:17:47 +01:00
euzu eb087825d5 Inputs in source.yml 2026-01-03 18:06:25 +01:00
euzu 25d3454932 Wrong Category Id after update fix 2025-12-30 15:06:16 +01:00
euzu 59c95fde3a Updated database structure
- Using Slotted Pages
- Using compression
- Using file locking to prevent race conditions
2025-12-29 13:12:39 +01:00
euzu cf0c928730 stream properties refactored 2025-12-27 09:52:28 +01:00
euzu d5207e886f stream properties refactored 2025-12-26 14:09:44 +01:00
euzu 76bde0fcc4 stream properties refactored 2025-12-22 21:00:58 +01:00
euzu c7bc0beb96 stream properties refactored 2025-12-22 17:33:18 +01:00
euzu aa4463b632 fetching tmdb data for series 2025-12-19 15:57:46 +01:00
euzu 12f8326cb3 xtream and m3u parsing with streaming 2025-12-12 16:49:13 +01:00
euzu ee0441877d xtream and m3u parsing with streaming 2025-12-12 15:33:41 +01:00
euzu 1193fc2265 write operations optimized for less memory usage 2025-12-11 19:27:56 +01:00
euzu 94dee697c7 Merge branch 'develop' into fix/web_ui_direct_login_when_auth_disabled 2025-11-07 19:47:02 +01:00
euzu 60c2e5a161 User Stream Connection table added 2025-10-24 18:37:14 +02:00
euzu 90d78b1bb4 hls stream generation fix 2025-10-15 16:05:54 +02:00
euzu 62f7a574d8 Handling edge cases for series info parsing 2025-10-06 21:32:02 +02:00
euzu 6b7e2cd95a Handling edge cases for series info parsing 2025-10-06 21:00:13 +02:00
euzu 1a4edb7194 Epg View optimization 2025-10-03 19:31:06 +02:00
euzu 3779404cdf Fixed invalid epg text content parsing 2025-10-01 17:10:51 +02:00
euzu 4e549f6603 Fixed invalid epg text content parsing 2025-10-01 17:06:41 +02:00
euzu 38b1cd6d31 Fixed invalid epg text content parsing 2025-10-01 16:40:22 +02:00
euzu a05417417b upgraded crate quick_xml 2025-09-20 17:02:06 +02:00
euzu 9bf787953d fixes for series tmdb id 2025-09-20 15:32:14 +02:00
euzu 7c99c66282 removed unused 2025-09-19 12:21:04 +02: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 30a88bb2ae user editor form 2025-08-26 23:34:04 +02:00
Goldy 49bb65d0f6 Revert "Add is_trakt_group field to PlaylistGroup and update sorting logic"
This reverts commit 27d84edf9c.
2025-08-19 17:33:51 +02:00
Goldy 27d84edf9c Add is_trakt_group field to PlaylistGroup and update sorting logic
- Introduced `is_trakt_group` field in `PlaylistGroup` struct to differentiate between Trakt and non-Trakt groups.
- Updated relevant parsing functions in `m3u.rs`, `xtream.rs`, and `trakt.rs` to set this field appropriately.
- Enhanced sorting logic in `sort.rs` to prioritize Trakt groups during playlist sorting.
- Ensured backward compatibility by defaulting `is_trakt_group` to false where applicable.
2025-08-19 17:09:20 +02:00
euzu adf1c13523 Adjustments to epg smart match 2025-08-18 20:21:58 +02:00
euzu 20b7c557e9 bundled event handling in event manager 2025-07-22 17:37:56 +02:00
euzu 6c238c607f refactored unwrap calls to make it more stable 2025-07-22 11:32:46 +02:00
euzu 4c43dd6402 shared provider connection release fix 2025-07-19 15:32:30 +02:00
euzu ceac359c0d webui 2025-07-11 08:58:04 +02:00
euzu b65eb87417 webui 2025-07-08 18:23:03 +02:00
euzu f38d4e32b3 input check updated 2025-06-24 12:22:11 +02:00
euzu c292f0b73e config refactor 2025-06-24 11:25:42 +02:00