Documentation ¶
Index ¶
- Constants
- Variables
- func RunServer(displayUpdates chan PlaylistEntry)
- func YoutubeDl(url string, result chan string)
- type Media
- func (media *Media) Add(w rest.ResponseWriter, r *rest.Request)
- func (media *Media) GetPlaylist(w rest.ResponseWriter, r *rest.Request)
- func (media *Media) Init()
- func (media *Media) Play(w rest.ResponseWriter, r *rest.Request)
- func (media *Media) PlayAll()
- func (media *Media) Status(w rest.ResponseWriter, r *rest.Request)
- func (media *Media) StatusBuilder() *ServerStatus
- func (media *Media) Stop(w rest.ResponseWriter, r *rest.Request)
- func (media *Media) TogglePause(w rest.ResponseWriter, r *rest.Request)
- type MediaPlayer
- type MyCorsMiddleware
- type OmxPlayer
- type PlaylistEntry
- type ServerObject
- type ServerStatus
- type SpotifyPlayer
Constants ¶
View Source
const ( STOPPED = 0 LOADING = 1 PAUSED = 2 PLAYING = 3 )
Variables ¶
View Source
var (
OmxProcess *exec.Cmd
)
View Source
var (
SpotifyLogin spotify.Credentials
)
Functions ¶
func RunServer ¶
func RunServer(displayUpdates chan PlaylistEntry)
Types ¶
type Media ¶
type Media struct { Metadata *PlaylistEntry Player MediaPlayer // Eventually change to anonymous interface MediaChanged chan bool MediaAdded chan bool Playlist []PlaylistEntry CurrentIndex int }
var (
MainMedia Media
)
func (*Media) GetPlaylist ¶
func (media *Media) GetPlaylist(w rest.ResponseWriter, r *rest.Request)
func (*Media) TogglePause ¶
func (media *Media) TogglePause(w rest.ResponseWriter, r *rest.Request)
type MediaPlayer ¶
type MyCorsMiddleware ¶
type MyCorsMiddleware struct{}
func (*MyCorsMiddleware) MiddlewareFunc ¶
func (mw *MyCorsMiddleware) MiddlewareFunc(handler rest.HandlerFunc) rest.HandlerFunc
type OmxPlayer ¶
type OmxPlayer struct { Outfile string Status int Duration time.Duration Position time.Duration KillSwitch chan int // Signal to break out of WatchPosition and clear struct }
func (*OmxPlayer) ReturnCode ¶
func (*OmxPlayer) StatusCode ¶
func (*OmxPlayer) Stop ¶
Stop method can be called internally from WatchPosition with kill signal 1 on normal video end OR externally from Api or Media methods with kill signal -1
func (*OmxPlayer) TogglePause ¶
func (video *OmxPlayer) TogglePause()
type PlaylistEntry ¶
Matches database schema
type ServerObject ¶
type ServerObject struct { Url string Data interface{} }
type ServerStatus ¶
type SpotifyPlayer ¶
type SpotifyPlayer struct { Outfile string Status int Duration time.Duration Position time.Duration KillSwitch chan int // Signal to break out of WatchPosition and clear struct ChangeTrack chan bool StopTrack chan bool PauseTrack chan bool ResumeTrack chan bool }
func (*SpotifyPlayer) Play ¶
func (spotty *SpotifyPlayer) Play()
func (*SpotifyPlayer) ReturnCode ¶
func (spotty *SpotifyPlayer) ReturnCode() int
func (*SpotifyPlayer) SpotifyThread ¶
func (spotty *SpotifyPlayer) SpotifyThread()
func (*SpotifyPlayer) StatusCode ¶
func (spotty *SpotifyPlayer) StatusCode() int
func (*SpotifyPlayer) Stop ¶
func (spotty *SpotifyPlayer) Stop(signal int)
func (*SpotifyPlayer) TogglePause ¶
func (spotty *SpotifyPlayer) TogglePause()
Source Files ¶
Click to show internal directories.
Click to hide internal directories.