Skip to content

bluenviron/gohlslib

Repository files navigation

gohlslib

Test Lint Go Report Card CodeCov PkgGoDev

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

Go ≥ 1.20 is required.

Features:

  • Client

    • Read streams in MPEG-TS, fMP4 or Low-latency format
    • Read tracks encoded with AV1, VP9, H265, H264, Opus, MPEG-4 Audio (AAC)
    • Get absolute timestamp of incoming data
  • Muxer

    • Generate streams in MPEG-TS, fMP4 or Low-latency format
    • 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
HTTP Live Streaming by Apple protocol
Codec specifications codecs
Golang project layout project layout

Related projects