KO
|
EN
gitlite — search
Search
#typescript
#ai-agents
#ai
#dsh-plugin
#deepseek-harness
#open-source
#claude-code
#codex
#cli
#developer-tools
#react
#windows
mkv-web
★ 88
Open GitHub ↗
Play MKV files right in your web browser
Download README (.md)
Explore Similar Repositories
datafusion-java
:
Java binding to Apache DataFusion
Convenience
:
.NET Core 5/Angular11/NG-ZORRO 权限管理系统 工作流系统
Titan
:
Titan, Game Engine in .NET 8 C# 11 and DirectX 12
AutoInterface
:
C# interface-to-member source generator
commitlint
:
commitlint checks if your commit messages meets the conventional commit format
// repository documentation
Was this content helpful?
★ 0
(0 ratings)
Select Rating:
★
★
★
★
★
Submit Feedback
Recent Feedback
×
Download README
Do you want to download the
README.md
file for
mkv-web
?
Download (.md)
# mkv-web Play Matroska (MKV) files inside your browser. ## Project description Modern web browsers only support the WebM container format that is based on Matroska, but limited to royalty-free codecs. Even when the MKV file contains media encoded by a codec that the browser is able to decode, most browsers are unable to play media in such a container. This project copies the underlying media streams to containers that are supported by most browsers (e.g. mp4, webm) inside the browser without third-party extensions or programs. This is achieved by remuxing media segments with ffmpeg compiled to webassembly (thanks to [the ffmpeg.wasm project](https://github.com/ilian/ffmpeg.wasm-core)) using [web workers](https://html.spec.whatwg.org/multipage/workers.html). Remuxed chunks are sent from the Web Worker to the main thread and appended to the HTML5 video element using [Media Source Extensions](https://www.w3.org/TR/media-source-2/). ## Notes on deploying This project uses SharedArrayBuffer, for which the following [COOP/COEP](https://www.w3.org/TR/post-spectre-webdev/) HTTP headers need to be returned by the server hosting the web page to enable the JavaScript feature: ``` Cross-Origin-Opener-Policy: same-origin Cross-Origin-Embedder-Policy: require-corp ```