/gohlslib

HLS client and muxer library for the Go programming language

Primary LanguageGoMIT LicenseMIT

gohlslib

Test Lint Go Report Card CodeCov PkgGoDev

HLS client and muxer library for the Go programming language, written for MediaMTX.

Go ≥ 1.19 is required.

Features:

  • Client

    • Read MPEG-TS or fMP4 streams
    • Read tracks encoded with AV1, VP9, H265, H264, Opus, MPEG-4 Audio (AAC)
  • Muxer

    • Generate MPEG-TS, fMP4, Low-latency streams
    • Write tracks encoded with AV1, VP9, H265, H264, Opus, MPEG-4 audio (AAC)
    • Save generated segments on disk
  • General

    • Parse and produce M3U8 playlists
    • Examples

Table of contents

Examples

API Documentation

Click to open the API Documentation

Specifications

name area
RFC2616, HTTP 1.1 protocol
RFC8216, HLS protocol
HLS v2 protocol
Codec specifications codecs
Golang project layout project layout

Related projects