Skip to content

Exploring the feasibilty of AI Upscaling. #9523

@sathish-a

Description

@sathish-a

Hello Shaka Player maintainers,

I am exploring the possibility of building (or extending) an open-source web video player to support video upscaling using a super-resolution model, and I am evaluating whether Shaka Player would be a suitable foundation for this work.

At a high level, the idea is to expose user-selectable options (for example, 2× and 4×) within the resolution/quality settings. Based on the selected option, a super-resolution model would be invoked to upscale the decoded video frames. The workflow I am considering involves buffering decoded frames, performing GPU-based inference for upscaling, and then rendering the enhanced frames for playback.

To maintain good startup performance and responsiveness, the player would initially start playback at the native resolution to avoid any cold-start overhead from the model. In parallel, buffered frames could be pre-emptively upscaled in the background. Similarly, during seek operations, the player would temporarily fall back to native resolution playback to ensure low latency and smooth user interaction.

At this stage, I am not looking for implementation details or code. I would greatly appreciate guidance and high-level feedback from the maintainers on:
• Whether Shaka Player’s architecture can accommodate such a workflow
• Which extension points or components would be most relevant for experimenting with decoded-frame processing
• Any known constraints or design considerations I should be aware of before proceeding

I’m hoping to brainstorm and understand the feasibility and best approach before moving forward. Thank you for your time and insights.

Metadata

Metadata

Assignees

No one assigned

    Labels

    status: waiting on responseWaiting on a response from the reporter(s) of the issuetype: questionA question from the community

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions