Skip to content

Support EBML Stream / Matroska Livestreaming #1

@nerg4l

Description

@nerg4l

To make this work the library has to handle elements with Unknown Data Size and multiple Documents (or continuous Header and Segment elements).

  • Support for Unknown Data Size
  • Support for reading more than one EBML Document

EBML Stream

An EBML Stream is a file that consists of one or more EBML Documents that are concatenated together. An occurrence of an EBML Header at the Root Level marks the beginning of an EBML Document.

Source: https://www.rfc-editor.org/rfc/rfc8794#name-ebml-stream

Matroska Livestreaming

Livestreaming

[...]

A live Matroska stream is different from a file because it usually has no known end (only ending when the client disconnects). For this, all bits of the “size” portion of the Segment Element MUST be set to 1. Another option is to concatenate Segment Elements with known sizes, one after the other. This solution allows a change of codec/resolution between each segment. For example, this allows for a switch between 4:3 and 16:9 in a television program.

[...]

Source: https://www.matroska.org/technical/streaming.html

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions