88 Commits
Author SHA1 Message Date
euzuandGitHub fa5d3237f1 added docker ulimits, .env support, ptt fix (#867)
- **New Features**
  - Added automatic `.env` loading for secrets and environment variables, with custom file paths and existing-environment precedence.
  - Added a `--env-file` option and a sample environment configuration template.
  - Increased Docker file descriptor limits for improved reliability under high connection counts.

- **Bug Fixes**
  - Fixed title parsing for multi-byte UTF-8 characters, preventing crashes and incorrect volume extraction.

- **Documentation**
  - Added guidance for `.env` configuration, Docker usage, restart requirements, and resolving file descriptor exhaustion.
2026-09-15 12:51:09 +02:00
euzuandGitHub a25801e906 Add Cargo.toml for curation in Dockerfile 2026-09-11 08:07:10 +02:00
euzuandGitHub 8a4f78cbcd Add curation Cargo.toml to Dockerfile 2026-09-11 08:06:13 +02:00
euzuandGitHub 9ec775b35b Feature/multi crate (#837)
Refactored to multi crate project
2026-08-27 15:36:23 +02:00
euzuandGitHub 1afbe7cca5 health check fix (#832)
New Features

    Added a /ready readiness endpoint with clear initializing, exhausted, and ready states.
    Improved health-banner behavior for shared provider capacity, disabled providers, aliases, and idle fallback capacity.

Bug Fixes

    Improved capacity calculations with shared provider grouping, overflow-safe totals, and empty-capacity handling.

Documentation

    Documented liveness, readiness, and detailed status endpoints, including Docker and orchestrator usage.
2026-08-22 18:52:19 +02:00
Stenio AraujoandGitHub f2370b1545 Support VOD (movies) and Series from M3U sources in the Xtream API (#830)
* feat(parser): support tvg-type VOD/Series in M3U and synthesize SeriesInfo

- recognize tvg-type=movie|vod|video as Xtream VOD, series|episode as
  Series, and live explicitly, taking precedence over extension inference
- for series rows, treat group-title as the show name and #EXTGRP only as
  the default Xtream series category, keeping @Group mappable
- group series rows by category + show name and synthesize
  SeriesStreamProperties/SeriesInfo via the existing Xtream series path
- extract SxxEyy from titles; generate deterministic u32 episode IDs;
  use numeric tvg-id as series ID when available
- build docker with rust 1.95 (project requires rustc >= 1.95.0)

* fix(xtream): serve embedded seasons/episodes for M3U-synthesized SeriesInfo

M3U-synthesized SeriesInfo items carry their series details in
additional_properties but were not recognized by the stream info endpoint
(item_type is not local, no provider URL), so get_series_info returned an
empty array and IPTV clients showed no seasons/episodes.

Route items with embedded details through the local info-document path so
embedded seasons/episodes are serialized by to_info_document.

* fix(parser): normalize series category in M3U series-map key
2026-08-21 19:23:53 +02:00
knylbyteandGitHub a63e6e4ca5 docs: updatet docker templates and added iptv-org-epg template (#790) 2026-07-15 12:52:16 +02:00
euzu f0eae9be53 fixed manual Dockerfile name 2026-07-08 15:28:19 +02:00
knylbyteandGitHub dc49189f63 feat: add shared hls cache sessions (#782)
Shared HLS cache session feature and aligns the runtime, cache, provisioning, recovery, custom-response, and documentation paths with the new shared-session model.
2026-07-08 11:52:22 +02:00
Juanjo PresaandGitHub 15e4857d4c build: remove vendored OpenSSL dependency (#743)
* build: remove vendored OpenSSL dependency
* remvoed unnecessary comments and clippy fixes
2026-05-04 19:07:41 +02:00
euzuandGitHub 5dd7f2dc91 Connection Admission (#710)
* Connection admission
* Fetch assets with version
* Dockerfile udate
2026-04-10 14:56:57 +02:00
euzu 321f6e9357 fixed docker files 2026-03-13 16:12:43 +01:00
Marco FranssenandGitHub 3958ff5f12 Markdownlint (#584)
* Fix all markdownlint errors on README.md

* Add markdownlint to ci and makefile

* Fix all markdownlint errors on CHANGELOG.md

* Fix all markdownlint errors on CONTRIBUTING.md

* Fix all markdownlint errors on TODO.md

* Fix all markdownlint errors on docker/README.md

* Fix all markdownlint errors on docker/debug/HOWTO.md

* Fix all markdownlint errors on .github/ISSUE_TEMPLATE/bug_report.md

* Remove TODO.md
2026-02-14 15:13: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
knylbyteandGitHub 59297a8185 feat: set patch version and create major or minor releases full automatically (#542)
set version automatically during builds
2026-01-27 00:16:40 +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 cc2e50549d Feature/panel api update (#524)
Panel Api update
2026-01-20 18:51:46 +01:00
euzu 2f32f1ece1 Local media library 2025-12-15 17:54:19 +01:00
jochen a42802110b Flexible debugging by adding LLDB and GDB support via configuration. Update examples and howto. 2025-10-26 21:46:04 +01:00
euzu ff8c49c329 try to fix dev build 2025-10-02 12:15:21 +02:00
euzu 04112492a4 try to fix dev build 2025-10-02 11:58:12 +02:00
euzu 63dcaa3bb8 try to fix dev build 2025-10-01 18:45:09 +02:00
euzu ddd84b4518 try to fix dev build 2025-09-30 17:07:24 +02:00
knylbyte 0fa3780965 fix missing headers attribute 2025-08-18 20:40:30 +02:00
knylbyteandGitHub 6a13aae618 Merge branch 'develop' into csp-header 2025-08-18 20:34:16 +02:00
knylbyte 6c9c3b4e35 renamed tuliprox router file for traefik 2025-08-18 20:08:52 +02:00
knylbyte 18d34f34d0 Restructuring of the standard csp header at Traefik level to use customised onces at application level 2025-08-18 19:56:07 +02:00
knylbyte 21ac571070 Fix some typo - because of trailing newline headers were not applied 2025-08-18 15:37:59 +02:00
Goldy 9670e31aca Enhance Docker build workflow and script for improved caching and resource management
- Updated caching strategy in the GitHub Actions workflow to include additional paths and keys for cargo tools, dependencies, and frontend resources.
- Modified the build script to check if resources are already built before executing the build process, improving efficiency.
- Implemented cache handling for frontend builds and cross-compilation tools to optimize build times.
- Adjusted Dockerfile to improve layer caching by copying dependency files first and creating dummy source files for pre-building dependencies.
2025-08-17 18:04:37 +02:00
Goldy 1299d50d1b Refactor Docker build process to support multi-platform images and streamline binary selection
- Introduced a new stage in the Dockerfile to select binaries based on target architecture.
- Updated the build script to copy architecture-specific binaries for multi-platform support.
2025-08-17 17:17:49 +02:00
knylbyteandGitHub b2c239b23d Fix some typo 2025-08-16 11:20:04 +02:00
knylbyteandGitHub 4a40c285b1 Fix some typo 2025-08-16 10:57:44 +02:00
knylbyteandGitHub aff06bc87c Fix some typo 2025-08-16 00:26:54 +02:00
knylbyte 823da7e446 Updatet the proxy test cases 2025-08-16 00:10:23 +02:00
knylbyte b8ec51a8d4 Updated readme for templates 2025-08-16 00:07:22 +02:00
knylbyte 602d85699c Fix some typo 2025-08-16 00:07:22 +02:00
knylbyteandGitHub 732e498690 fixed some typo 2025-08-15 00:17:37 +02:00
knylbyte 644af18c83 fixed some typo 2025-08-15 00:07:33 +02:00
knylbyte 2b5d089ed2 fixed some typo 2025-08-15 00:06:11 +02:00
knylbyte ce846d412a Fixed some typos 2025-08-14 23:49:30 +02:00
knylbyte e740fee31d Add strip forward headers 2025-08-14 23:18:36 +02:00
knylbyte 2cd5b79c82 Change to cloudflare 2025-08-14 23:14:36 +02:00
knylbyte bc64ac0231 Fix some typos 2025-08-14 19:08:45 +02:00
knylbyte ae8df2bdb3 Some fixes and added crowdsec-traefik-plugin 2025-08-14 19:05:15 +02:00
knylbyte ef06fba9e7 Add appsec for crowdsec 2025-08-13 18:30:03 +02:00
knylbyte 48b1e5ac16 Add tuliprox docker-compose with traefik 2025-08-13 18:29:49 +02:00
knylbyte 5a6e86c63b Fixed some typo 2025-08-13 17:05:04 +02:00
knylbyte be0494101b disable debug mode 2025-08-13 16:58:42 +02:00
knylbyte 13c02481a8 Add some security headers 2025-08-13 16:55:50 +02:00
knylbyte 3d7f4470e5 Chang directory docker -> docker/container-templates and fixed some typos 2025-08-13 16:52:12 +02:00