hls

package
v1.9.7 Latest Latest
Warning

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

Go to latest
Published: Jul 27, 2023 License: OSL-3.0 Imports: 8 Imported by: 0

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

This section is empty.

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 Master

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

type Media

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

func (Media) Ext

func (Media) Ext() string

func (Media) String

func (m Media) String() string

func (Media) URI

func (m Media) URI() string

type Mixed

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 Stream

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

func (Stream) Ext

func (Stream) Ext() string

func (Stream) String

func (m Stream) String() string

func (Stream) URI

func (m Stream) URI() string

Jump to

Keyboard shortcuts

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