Feature Request: MPEG-DASH Streaming Extension (Draft)
Summary
Define an optional arkA extension for MPEG-DASH (Dynamic Adaptive Streaming over HTTP), allowing creators and clients to use .mpd manifests and segmented video for adaptive streaming.
This mirrors the HLS extension but supports the DASH ecosystem commonly used outside Apple environments.
Motivation
DASH is widely used in modern video infrastructure because it provides:
- adaptive bitrate switching
- excellent CDN performance
- flexible container formats
- broad cross-platform compatibility (Android, Smart TVs, etc.)
arkA’s core intentionally avoids forcing any one streaming method.
But offering DASH as an extension gives advanced creators and client developers more choices.
This extension stays optional, keeping the protocol simple for beginners.
Proposed Design
Add a new source type:
{
"type": "dash",
"manifest": "https://example.com/video/manifest.mpd",
"profiles": ["full", "on-demand"],
"codecs": ["h264", "aac"]
}
Clients that support DASH:
- load the
.mpd manifest
- use adaptive bitrate based on network conditions
- ignore direct file sources unless needed
Clients that don’t support DASH:
A full draft spec will live in:
/docs/extensions/dash.md
Tasks
Protocol Definition
Documentation & Examples
Optional Client Work
Open Questions
- Should DASH and HLS share a common extension schema structure?
- Do we support low-latency DASH in v1 or wait until v1.1?
- Are IPFS/Arweave-hosted manifests practical for DASH?
Goal
A simple, optional DASH extension that advanced creators can use and client developers can implement without adding complexity to arkA’s core.
Status: Open for contributors
Labels: extension, video, protocol, streaming, help wanted
Feature Request: MPEG-DASH Streaming Extension (Draft)
Summary
Define an optional arkA extension for MPEG-DASH (Dynamic Adaptive Streaming over HTTP), allowing creators and clients to use
.mpdmanifests and segmented video for adaptive streaming.This mirrors the HLS extension but supports the DASH ecosystem commonly used outside Apple environments.
Motivation
DASH is widely used in modern video infrastructure because it provides:
arkA’s core intentionally avoids forcing any one streaming method.
But offering DASH as an extension gives advanced creators and client developers more choices.
This extension stays optional, keeping the protocol simple for beginners.
Proposed Design
Add a new
sourcetype:{ "type": "dash", "manifest": "https://example.com/video/manifest.mpd", "profiles": ["full", "on-demand"], "codecs": ["h264", "aac"] }Clients that support DASH:
.mpdmanifestClients that don’t support DASH:
A full draft spec will live in:
/docs/extensions/dash.mdTasks
Protocol Definition
type: "dash"source formatDocumentation & Examples
/docs/extensions/dash.md/examples/video-dash.jsonOptional Client Work
dash.jsOpen Questions
Goal
A simple, optional DASH extension that advanced creators can use and client developers can implement without adding complexity to arkA’s core.
Status: Open for contributors
Labels:
extension,video,protocol,streaming,help wanted