Package maya (v1.21.6) [up] [repository]

Index

Functions

func ListDash(body []byte, baseURL *url.URL) error

ListDash parses a DASH manifest and lists the available streams.

func ListHls(body []byte, baseURL *url.URL) error

ListHls parses an HLS playlist and lists the available streams.

func Transport(policy func(*http.Request) string)

Transport configures the default HTTP transport for logging and proxy support.

Types

type Job

Job holds configuration for an unencrypted download.

type Job struct {
	Threads int
}

Methods

func (j *Job) DownloadDash(body []byte, baseURL *url.URL, streamId string) error

DownloadDash parses and downloads a clear DASH stream.

func (j *Job) DownloadHls(body []byte, baseURL *url.URL, streamId string) error

DownloadHls parses and downloads a clear HLS stream.

type PlayReadyJob

PlayReadyJob holds configuration for a PlayReady encrypted download.

type PlayReadyJob struct {
	Threads          int
	CertificateChain string
	EncryptSignKey   string
	Send             func([]byte) ([]byte, error)
}

Methods

func (j *PlayReadyJob) DownloadDash(body []byte, baseURL *url.URL, streamId string) error

DownloadDash parses and downloads a PlayReady-encrypted DASH stream.

func (j *PlayReadyJob) DownloadHls(body []byte, baseURL *url.URL, streamId string) error

DownloadHls parses and downloads a PlayReady-encrypted HLS stream.

type WidevineJob

WidevineJob holds configuration for a Widevine encrypted download.

type WidevineJob struct {
	Threads    int
	ClientId   string
	PrivateKey string
	Send       func([]byte) ([]byte, error)
}

Methods

func (j *WidevineJob) DownloadDash(body []byte, baseURL *url.URL, streamId string) error

DownloadDash parses and downloads a Widevine-encrypted DASH stream.

func (j *WidevineJob) DownloadHls(body []byte, baseURL *url.URL, streamId string) error

DownloadHls parses and downloads a Widevine-encrypted HLS stream.