hls

package
v1.46.5 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Jul 9, 2022 License: OSL-3.0 Imports: 8 Imported by: 8

README

HLS

CBC

Why does this:

#EXT-X-KEY:METHOD=AES-128,URI="https://cbsios-vh.akamaihd.net/i/temp_hd_galle...

mean CBC?

An encryption method of AES-128 signals that Media Segments are completely encrypted using the Advanced Encryption Standard (AES) [AES_128] with a 128-bit key, Cipher Block Chaining (CBC)

https://datatracker.ietf.org/doc/html/rfc8216#section-4.3.2.4

EXT-X-KEY

If IV is missing, then use KEY for both.

Padding

Public-Key Cryptography Standards #7 (PKCS7) padding [RFC5652]

Extensions

item format
Apple audio mov,mp4,m4a,3gp,3g2,mj2
Apple video mov,mp4,m4a,3gp,3g2,mj2
CBC audio mpegts
CBC video mpegts
NBC mpegts
Paramount mpegts
Roku mpegts

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Bandwidth

func Bandwidth(v int) func(Stream) int

Types

type Block

type Block struct {
	cipher.Block
	// contains filtered or unexported fields
}

func New_Block

func New_Block(key []byte) (*Block, error)

func (Block) Decrypt

func (b Block) Decrypt(text, iv []byte) []byte

func (Block) Decrypt_Key

func (b Block) Decrypt_Key(text []byte) []byte

type Filter

type Filter[T Mixed] func(T) bool

type Index added in v1.46.5

type Index[T Mixed] func(T, T) bool

type Master

type Master struct {
	Media  Slice[Media]
	Stream Slice[Stream]
}

type Media

type Media struct {
	Characteristics string
	Group_ID        string
	Name            string
	Raw_URI         string
	Type            string
}

func (Media) Ext added in v1.45.7

func (Media) Ext() string

func (Media) String added in v1.45.7

func (m Media) String() string

func (Media) URI added in v1.45.7

func (m Media) URI() string

type Mixed added in v1.46.2

type Mixed interface {
	Ext() string
	URI() string
}

type Scanner

type Scanner struct {
	scanner.Scanner
	// contains filtered or unexported fields
}

func New_Scanner

func New_Scanner(body io.Reader) Scanner

func (Scanner) Master

func (s Scanner) Master() (*Master, error)

func (Scanner) Segment

func (s Scanner) Segment() (*Segment, error)

type Segment

type Segment struct {
	Key    string
	Map    string
	Raw_IV string
	URI    []string
}

func (Segment) IV

func (s Segment) IV() ([]byte, error)

type Slice added in v1.45.6

type Slice[T Mixed] []T

func (Slice[T]) Filter added in v1.45.6

func (s Slice[T]) Filter(callback Filter[T]) Slice[T]

func (Slice[T]) Index added in v1.46.3

func (s Slice[T]) Index(callback Index[T]) int

type Stream

type Stream struct {
	Audio      string
	Bandwidth  int
	Codecs     string
	Resolution string
	Raw_URI    string
}

func (Stream) Ext

func (Stream) Ext() string

func (Stream) String

func (s Stream) String() string

func (Stream) URI

func (s Stream) URI() string

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL