dash

package module
v1.25.0 Latest Latest
Warning

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

Go to latest
Published: Oct 5, 2024 License: OSL-3.0 Imports: 8 Imported by: 0

README

DASH

Some things are hidden for a reason, and if you see them, you'll be changed forever, but I wanted to be changed forever.

Miranda July

ISO/IEC 23009-1

contact

email
srpen6@gmail.com
Discord
srpen6
https://discord.com/invite/WWq6rFb8Rf

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

This section is empty.

Types

type AdaptationSet

type AdaptationSet struct {
	Codecs            string `xml:"codecs,attr"`
	ContentProtection []ContentProtection
	Height            uint64 `xml:"height,attr"`
	Lang              string `xml:"lang,attr"`
	MaxHeight         int    `xml:"maxHeight,attr"`
	MaxWidth          int    `xml:"maxWidth,attr"`
	MimeType          string `xml:"mimeType,attr"`
	Representation    []Representation
	Role              *struct {
		Value string `xml:"value,attr"`
	}
	SegmentTemplate *SegmentTemplate
	Width           uint64 `xml:"width,attr"`
	// contains filtered or unexported fields
}

func (*AdaptationSet) GetPeriod added in v1.22.6

func (a *AdaptationSet) GetPeriod() *Period

type BaseUrl added in v1.24.0

type BaseUrl struct {
	Url *url.URL
}

func (*BaseUrl) UnmarshalText added in v1.24.0

func (b *BaseUrl) UnmarshalText(text []byte) error

type ContentProtection

type ContentProtection struct {
	Pssh        Pssh   `xml:"pssh"`
	SchemeIdUri string `xml:"schemeIdUri,attr"`
}

type Duration added in v1.23.0

type Duration struct {
	Duration time.Duration
}

func (*Duration) UnmarshalText added in v1.23.0

func (d *Duration) UnmarshalText(text []byte) error

type Mpd added in v1.23.0

type Mpd struct {
	BaseUrl                   *BaseUrl  `xml:"BaseURL"`
	MediaPresentationDuration *Duration `xml:"mediaPresentationDuration,attr"`
	Period                    []Period
}

type Period added in v1.22.6

type Period struct {
	AdaptationSet []AdaptationSet
	BaseUrl       *BaseUrl  `xml:"BaseURL"`
	Duration      *Duration `xml:"duration,attr"`
	Id            string    `xml:"id,attr"`
	// contains filtered or unexported fields
}

type Pssh added in v1.23.0

type Pssh []byte

func (*Pssh) UnmarshalText added in v1.23.0

func (p *Pssh) UnmarshalText(src []byte) error

type Range added in v1.22.6

type Range struct {
	Start uint64
	End   uint64
}

SegmentIndexBox uses: unsigned int(32) subsegment_duration; but range values can exceed 32 bits

func (*Range) MarshalText added in v1.22.6

func (r *Range) MarshalText() ([]byte, error)

func (*Range) UnmarshalText added in v1.22.6

func (r *Range) UnmarshalText(text []byte) error

type Representation

type Representation struct {
	Bandwidth         uint64   `xml:"bandwidth,attr"`
	BaseUrl           *BaseUrl `xml:"BaseURL"`
	Codecs            string   `xml:"codecs,attr"`
	ContentProtection []ContentProtection
	Height            uint64 `xml:"height,attr"`
	Id                string `xml:"id,attr"`
	MimeType          string `xml:"mimeType,attr"`
	SegmentBase       *SegmentBase
	SegmentTemplate   *SegmentTemplate
	Width             uint64 `xml:"width,attr"`
	// contains filtered or unexported fields
}

func Unmarshal added in v1.23.6

func Unmarshal(text []byte, base *url.URL) ([]Representation, error)

func (*Representation) Ext

func (r *Representation) Ext() (string, bool)

func (*Representation) GetAdaptationSet added in v1.22.6

func (r *Representation) GetAdaptationSet() *AdaptationSet

func (*Representation) GetBaseUrl added in v1.24.0

func (r *Representation) GetBaseUrl() (*BaseUrl, bool)

func (*Representation) Initialization

func (r *Representation) Initialization() (string, bool)

func (*Representation) Media

func (r *Representation) Media() []string

func (*Representation) String

func (r *Representation) String() string

func (*Representation) Widevine added in v1.22.9

func (r *Representation) Widevine() (Pssh, bool)

type SegmentBase added in v1.22.6

type SegmentBase struct {
	Initialization struct {
		Range Range `xml:"range,attr"`
	}
	IndexRange Range `xml:"indexRange,attr"`
}

type SegmentTemplate

type SegmentTemplate struct {
	Duration               uint64 `xml:"duration,attr"`
	Initialization         string `xml:"initialization,attr"`
	Media                  string `xml:"media,attr"`
	PresentationTimeOffset uint   `xml:"presentationTimeOffset,attr"`
	SegmentTimeline        *struct {
		S []struct {
			D uint `xml:"d,attr"` // duration
			R uint `xml:"r,attr"` // repeat
		}
	}
	Timescale   uint64 `xml:"timescale,attr"`
	StartNumber *uint  `xml:"startNumber,attr"`
}

Directories

Path Synopsis
internal

Jump to

Keyboard shortcuts

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