tidl

package module
v0.0.0-...-2941887 Latest Latest
Warning

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

Go to latest
Published: Jul 10, 2020 License: MIT Imports: 22 Imported by: 0

README

tidl

Golang Tidal downloader

Documentation

Index

Constants

View Source
const (
	AQ_LOSSLESS int = iota
	AQ_HI_RES
)

Variables

This section is empty.

Functions

This section is empty.

Types

type Album

type Album struct {
	Artists              []Artist    `json:"artists,omitempty"`
	Title                string      `json:"title"`
	ID                   json.Number `json:"id"`
	NumberOfTracks       json.Number `json:"numberOfTracks"`
	Explicit             bool        `json:"explicit,omitempty"`
	Copyright            string      `json:"copyright,omitempty"`
	AudioQuality         string      `json:"audioQuality"`
	ReleaseDate          string      `json:"releaseDate"`
	Duration             float64     `json:"duration"`
	PremiumStreamingOnly bool        `json:"premiumStreamingOnly"`
	Popularity           float64     `json:"popularity,omitempty"`
	Artist               Artist      `json:"artist"`
	Cover                string      `json:"cover"`
	// contains filtered or unexported fields
}

Album struct

func (*Album) GetArt

func (al *Album) GetArt() ([]byte, error)

type Artist

type Artist struct {
	ID   json.Number `json:"id"`
	Name string      `json:"name"`
	Type string      `json:"type"`
}

Artist struct

type Playlist

type Playlist struct {
	Creator struct {
		ID int
	}

	ID string

	Description     string
	Created         cTime
	URL             string
	SquareImage     string
	LastItemAddedAt cTime
	Image           string
	Popularity      float64
	LastUpdated     cTime
	NumberOfTracks  int
	Duration        int
	Type            string
	PublicPlaylist  bool
	Title           string

	Tracks []Track `json:"-"`
	// contains filtered or unexported fields
}

func (*Playlist) GetArt

func (p *Playlist) GetArt() ([]byte, error)
type Search struct {
	Items  []Album `json:"items"`
	Albums struct {
		Items []Album `json:"items"`
	} `json:"albums"`
	Artists struct {
		Items []Artist `json:"items"`
	} `json:"artists"`
	Tracks struct {
		Items []Track `json:"items"`
	} `json:"tracks"`
}

Search struct

type Tidal

type Tidal struct {
	SessionID   string      `json:"sessionID"`
	CountryCode string      `json:"countryCode"`
	UserID      json.Number `json:"userId"`
	// contains filtered or unexported fields
}

Tidal api struct

func New

func New(user, pass string) (*Tidal, error)

New func

func (*Tidal) CheckSession

func (t *Tidal) CheckSession() (bool, error)

func (*Tidal) DownloadAlbum

func (t *Tidal) DownloadAlbum(al Album) error

func (*Tidal) DownloadPlaylist

func (t *Tidal) DownloadPlaylist(p Playlist) error

func (Tidal) DownloadTrack

func (t Tidal) DownloadTrack(root string, tr Track) error

func (*Tidal) GetAlbum

func (t *Tidal) GetAlbum(id string) (Album, error)

func (*Tidal) GetAlbumTracks

func (t *Tidal) GetAlbumTracks(id string) ([]Track, error)

GetAlbumTracks func

func (*Tidal) GetArtist

func (t *Tidal) GetArtist(artist string) (Artist, error)

func (*Tidal) GetArtistAlbums

func (t *Tidal) GetArtistAlbums(artist string, l int) ([]Album, error)

GetArtistAlbums func

func (*Tidal) GetArtistEP

func (t *Tidal) GetArtistEP(artist string, l int) ([]Album, error)

func (*Tidal) GetFavoriteAlbums

func (t *Tidal) GetFavoriteAlbums() ([]string, error)

func (*Tidal) GetPlaylist

func (t *Tidal) GetPlaylist(id string) (Playlist, error)

GetPlaylist func

func (*Tidal) GetPlaylistTracks

func (t *Tidal) GetPlaylistTracks(id string) ([]Track, error)

GetPlaylistTracks func

func (*Tidal) GetStreamURL

func (t *Tidal) GetStreamURL(id, q string) (string, error)

GetStreamURL func

func (*Tidal) SearchAlbums

func (t *Tidal) SearchAlbums(d string, l int) ([]Album, error)

SearchAlbums func

func (*Tidal) SearchArtists

func (t *Tidal) SearchArtists(d string, l int) ([]Artist, error)

SearchArtists func

func (*Tidal) SearchTracks

func (t *Tidal) SearchTracks(d string, l int) ([]Track, error)

SearchTracks func

type TidalError

type TidalError struct {
	Status      int
	SubStatus   int
	UserMessage string
}

type Track

type Track struct {
	Artists      []Artist    `json:"artists"`
	Artist       Artist      `json:"artist"`
	Album        Album       `json:"album"`
	Playlist     Playlist    `json:"-"`
	Title        string      `json:"title"`
	ID           json.Number `json:"id"`
	Explicit     bool        `json:"explicit"`
	Copyright    string      `json:"copyright"`
	Popularity   int         `json:"popularity"`
	TrackNumber  json.Number `json:"trackNumber"`
	Duration     json.Number `json:"duration"`
	AudioQuality string      `json:"audioQuality"`
}

Track struct

func (Track) DoExists

func (tr Track) DoExists(root string) bool

func (Track) GetPath

func (tr Track) GetPath(root string) string

Directories

Path Synopsis
cmd

Jump to

Keyboard shortcuts

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