francetv

package
v0.12.0 Latest Latest
Warning

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

Go to latest
Published: Jun 7, 2020 License: MIT Imports: 18 Imported by: 0

Documentation

Index

Constants

View Source
const (
	ProviderName = "francetv"
)

Provider constants

Variables

This section is empty.

Functions

func WithGetter

func WithGetter(g getter) func(ftv *FranceTV)

WithGetter inject a getter in FranceTV object instead of normal one

Types

type FranceTV

type FranceTV struct {
	// contains filtered or unexported fields
}

FranceTV structure handles france-tv catalog of shows

func New

func New() (*FranceTV, error)

New setup a Show provider for France Télévisions

func (*FranceTV) Configure added in v0.8.0

func (p *FranceTV) Configure(c providers.Config)

func (*FranceTV) GetMediaDetails added in v0.7.0

func (p *FranceTV) GetMediaDetails(ctx context.Context, m *providers.Media) error

GetMediaDetails download more details when available especially the stream URL. The player webservice returns some metadata and an URL named Token. The must been acquired right before the actual download. It has a limited validity In the structure returned by token URL, another URL is provided. The request is then redirected to the actual video stream. This url has also a limited validity.

But for some reason FFMPEG doesn't follow the redirection. So, we have to get the final URL before calling FFMPEG // FranceTV provides a subtitle tracks that isn't decoded by FFMPEG. And FFMPEG doesn't get always the best video resolution

The video stream is in fact a MPD manifest files. We can edit this manifest for removing unwanted tracks.

func (*FranceTV) MediaList added in v0.7.0

func (p *FranceTV) MediaList(ctx context.Context, mm []*providers.MatchRequest) chan *providers.Media

MediaList return media that match with matching list.

func (FranceTV) Name

func (FranceTV) Name() string

Name return the name of the provider

type Options added in v0.12.0

type Options struct {
	ContentsLimit   int    `json:"contentsLimit,omitempty"`
	TaxonomiesLimit int    `json:"taxonomiesLimit,omitempty"`
	Types           string `json:"types"`
}

type RequestPayLoad added in v0.12.0

type RequestPayLoad struct {
	Term    string  `json:"term"`
	Signal  Signal  `json:"signal"`
	Options Options `json:"options"`
}

type Signal added in v0.12.0

type Signal struct {
}

Directories

Path Synopsis

Jump to

Keyboard shortcuts

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