Skip to content

Feature Request: Internal Proxy Server with Custom Headers for External Player Compatibility #1786

Description

@NivinCNC

Describe your suggested feature

Many Cloudstream extensions rely on custom HTTP headers—such as User-Agent, Referer, Authorization, and Cookie—to fetch and stream video content from protected sources. While the internal player supports direct header injection, it is currently limited:

  - Media3 ExoPlayer often fails to handle HLS streams correctly, leading to MediaCodec errors or undetected audio tracks.
  - As a result, many users are forced to use external players.
  - However, external players like VLC, MPV, and MX Player were able to play those files but wont get custom headers.

🧩 Problem Statement

  - Many sources require specific headers for access.
  - Internal player issues (e.g., with HLS or codecs) necessitate external playback.
  - External players do not reliably support header injection, especially for complex headers or cookies.
  - This causes many links to break, even though they are valid and playable with headers.
  - Extensions become harder to maintain, and users have a degraded experience.

🎯 Proposed Solution

  - Introduce a lightweight local HTTP proxy server within Cloudstream that:
  - Runs on a loopback address (e.g., http://127.0.0.1:12345).
  - Accepts a request with:
                  - a video or subtitle URL
                  - extension-defined headers
                  - Performs the request with headers applied.
                  - Streams the content back to the requesting external player.

Other details

No response

Acknowledgements

  • My suggestion is NOT about adding a new provider
  • I have searched the existing issues and this is a new ticket, NOT a duplicate or related to another open issue.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    enhancementNew feature or request

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions