hls

package
v1.44.3 Latest Latest
Warning

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

Go to latest
Published: Jul 1, 2022 License: OSL-3.0 Imports: 9 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) Mode

func (b Block) Mode(r io.Reader, iv []byte) *Block_Mode

func (Block) Mode_Key

func (b Block) Mode_Key(r io.Reader) *Block_Mode

type Block_Mode

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

func (*Block_Mode) Read

func (b *Block_Mode) Read(p []byte) (int, error)

type Master

type Master struct {
	Media   Media
	Streams Streams
}

type Media

type Media []Medium

func (Media) Ext

func (m Media) Ext(b []byte) string

func (Media) Get_Group_ID

func (m Media) Get_Group_ID(value string) *Medium

func (Media) Get_Name

func (m Media) Get_Name(value string) *Medium

func (Media) Group_ID

func (m Media) Group_ID(value string) Media

func (Media) Name

func (m Media) Name(value string) Media

func (Media) Type

func (m Media) Type(value string) Media

type Medium

type Medium struct {
	Group_ID string
	Name     string
	Type     string
	URI      string
}

func (Medium) String

func (m Medium) String() 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 {
	Clear     []string
	Key       string
	Protected []string
	Raw_IV    string
}

func (Segment) IV

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

type Stream

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

func (Stream) Ext

func (s Stream) Ext(b []byte) string

func (Stream) String

func (s Stream) String() string

type Streams

type Streams []Stream

func (Streams) Audio

func (s Streams) Audio(value string) Streams

func (Streams) Codecs

func (s Streams) Codecs(value string) Streams

func (Streams) Get_Bandwidth

func (s Streams) Get_Bandwidth(value int64) *Stream

Jump to

Keyboard shortcuts

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