Documentation ¶
Index ¶
- Constants
- func NewContentID(contentIDString string) (contentID, error)
- func NewContentType(cTypeString string) (contentType, error)
- func NewGenericMediaDataBuilder(contentID contentID, contentType contentType, sType streamType) (genericMediaDataBuilder, error)
- type ContentIDLengthError
- type InvalidArgumentError
- type LoadCommand
- type MediaCommand
- type MediaData
- type MediaDataBuilder
- type MediaStatus
- type MediaStatusResponse
- type MovieMediaMetadata
- type MusicTrackMediaMetadata
- type PhotoTrackMediaDataBuilder
- func (builder *PhotoTrackMediaDataBuilder) Build() (MediaData, error)
- func (builder *PhotoTrackMediaDataBuilder) SetArtist(artist string)
- func (builder *PhotoTrackMediaDataBuilder) SetContentID(id contentID)
- func (builder *PhotoTrackMediaDataBuilder) SetContentType(contentType contentType)
- func (builder *PhotoTrackMediaDataBuilder) SetCreationTime(creationTime time.Time)
- func (builder *PhotoTrackMediaDataBuilder) SetCustomData(customData map[string]interface{})
- func (builder *PhotoTrackMediaDataBuilder) SetDuration(duration *float64)
- func (builder *PhotoTrackMediaDataBuilder) SetHeight(height int64)
- func (builder *PhotoTrackMediaDataBuilder) SetLatitude(latitude float64)
- func (builder *PhotoTrackMediaDataBuilder) SetLocation(location string)
- func (builder *PhotoTrackMediaDataBuilder) SetLongitude(longitude float64)
- func (builder *PhotoTrackMediaDataBuilder) SetStreamType(sType streamType)
- func (builder *PhotoTrackMediaDataBuilder) SetTitle(title string)
- func (builder *PhotoTrackMediaDataBuilder) SetWidth(width int64)
- type PhotoTrackMediaMetadata
- type SeekCommand
- type StandardMediaMetadata
- type TvShowMediaMetadata
- type Volume
Constants ¶
const BufferedStreamType streamType = "BUFFERED"
BufferedStreamType is for a stream that should be buffered/loaded.
const LiveStreamType streamType = "LIVE"
LiveStreamType is for videos that are livestreaming. (Twitch/Youtube livestreams, etc)
const MovieMetadataType int = 1
const MusicTrackMetadataType int = 3
const NoneStreamType streamType = "NONE"
NoneStreamType is for when you don't want to define a stream type.
const PhotoMediaMetadataType int = 4
const TvShowMetadataType int = 2
Variables ¶
This section is empty.
Functions ¶
func NewContentID ¶
NewContentID creates a new contentID object from some string.
func NewContentType ¶
NewContentType creates a new contentType object from some string.
func NewGenericMediaDataBuilder ¶
func NewGenericMediaDataBuilder(contentID contentID, contentType contentType, sType streamType) (genericMediaDataBuilder, error)
NewGenericMediaDataBuilder is a constructor for the media data builder class
Types ¶
type ContentIDLengthError ¶
type ContentIDLengthError struct {
// contains filtered or unexported fields
}
ContentIDLengthError is error caused by input string for contentID constructor being longer than max.
func (*ContentIDLengthError) Error ¶
func (er *ContentIDLengthError) Error() string
type InvalidArgumentError ¶
type InvalidArgumentError struct {
// contains filtered or unexported fields
}
func (*InvalidArgumentError) Error ¶
func (er *InvalidArgumentError) Error() string
type LoadCommand ¶
type LoadCommand struct { primitives.PayloadHeaders Media MediaData `json:"media"` Autoplay bool `json:"autoplay,omitempty"` CurrentTime float64 `json:"currentTime,omitempty"` CustomData map[string]interface{} `json:"customData,omitempty"` }
type MediaCommand ¶
type MediaCommand struct { primitives.PayloadHeaders MediaSessionID int `json:"mediaSessionId"` }
type MediaData ¶
type MediaData struct { //ContentID is the identifier for the content to be loaded by the current receiver application in the chromecast. //Usually this is just the URL. //ContentType is the MIME type of the media ContentID string `json:"contentId"` ContentType string `json:"contentType"` //data MIME StreamType string `json:"streamType"` // (NONE, BUFFERED, or LIVE) Duration *float64 `json:"duration,omitempty"` Metadata map[string]interface{} `json:"metadata,omitempty"` //stores a mediadata CustomData map[string]interface{} `json:"customData,omitempty"` }
MediaData is data format for message to send to chromecast to play a (vid/image/tvshow/music video/etc) via generic media player. https://developers.google.com/cast/docs/reference/messages#MediaData is the general info.
type MediaDataBuilder ¶
type MediaDataBuilder interface { SetContentID(string) SetContentType(string) SetStreamType(string) SetDuration(float64) SetCustomData(map[string]interface{}) Build() (MediaData, error) }
MediaDataBuilder interface for generic media player media data messages to pass to chromecast.
type MediaStatus ¶
type MediaStatus struct { primitives.PayloadHeaders MediaSessionID int `json:"mediaSessionId"` PlaybackRate float64 `json:"playbackRate"` PlayerState string `json:"playerState"` CurrentTime float64 `json:"currentTime"` SupportedMediaCommands int `json:"supportedMediaCommands"` Volume *Volume `json:"volume,omitempty"` CustomData map[string]interface{} `json:"customData"` IdleReason string `json:"idleReason"` Media MediaData `json:"media,omitempty"` }
type MediaStatusResponse ¶
type MediaStatusResponse struct { primitives.PayloadHeaders Status []*MediaStatus `json:"status,omitempty"` }
type MovieMediaMetadata ¶
type MovieMediaMetadata struct { StandardMediaMetadata Studio string Subtitle string Images []string ReleaseDate string }
TODO
type MusicTrackMediaMetadata ¶
type MusicTrackMediaMetadata struct { StandardMediaMetadata Images []string AlbumName string AlbumArtist string Artist string Composer string TrackNumber int DiscNumber int ReleaseDate string }
TODO
type PhotoTrackMediaDataBuilder ¶
type PhotoTrackMediaDataBuilder struct {
// contains filtered or unexported fields
}
GenericMediaDataBuilder component for building up mediadatabuilders
func (*PhotoTrackMediaDataBuilder) Build ¶
func (builder *PhotoTrackMediaDataBuilder) Build() (MediaData, error)
Build returns a standard mediadata object from its current data.
func (*PhotoTrackMediaDataBuilder) SetArtist ¶
func (builder *PhotoTrackMediaDataBuilder) SetArtist(artist string)
SetArtist sets the builder's artist
func (*PhotoTrackMediaDataBuilder) SetContentID ¶
func (builder *PhotoTrackMediaDataBuilder) SetContentID(id contentID)
SetContentID sets the contentID field
func (*PhotoTrackMediaDataBuilder) SetContentType ¶
func (builder *PhotoTrackMediaDataBuilder) SetContentType(contentType contentType)
func (*PhotoTrackMediaDataBuilder) SetCreationTime ¶
func (builder *PhotoTrackMediaDataBuilder) SetCreationTime(creationTime time.Time)
TODO
func (*PhotoTrackMediaDataBuilder) SetCustomData ¶
func (builder *PhotoTrackMediaDataBuilder) SetCustomData(customData map[string]interface{})
SetCustomData sets the custom data field
func (*PhotoTrackMediaDataBuilder) SetDuration ¶
func (builder *PhotoTrackMediaDataBuilder) SetDuration(duration *float64)
SetDuration sets the contentType field
func (*PhotoTrackMediaDataBuilder) SetHeight ¶
func (builder *PhotoTrackMediaDataBuilder) SetHeight(height int64)
SetArtist sets the builder's artist
func (*PhotoTrackMediaDataBuilder) SetLatitude ¶
func (builder *PhotoTrackMediaDataBuilder) SetLatitude(latitude float64)
TODO
func (*PhotoTrackMediaDataBuilder) SetLocation ¶
func (builder *PhotoTrackMediaDataBuilder) SetLocation(location string)
TODO
func (*PhotoTrackMediaDataBuilder) SetLongitude ¶
func (builder *PhotoTrackMediaDataBuilder) SetLongitude(longitude float64)
TODO
func (*PhotoTrackMediaDataBuilder) SetStreamType ¶
func (builder *PhotoTrackMediaDataBuilder) SetStreamType(sType streamType)
SetStreamType sets the streamType field
func (*PhotoTrackMediaDataBuilder) SetTitle ¶
func (builder *PhotoTrackMediaDataBuilder) SetTitle(title string)
SetTitle sets the builder's title
func (*PhotoTrackMediaDataBuilder) SetWidth ¶
func (builder *PhotoTrackMediaDataBuilder) SetWidth(width int64)
SetArtist sets the builder's artist
type PhotoTrackMediaMetadata ¶
type PhotoTrackMediaMetadata struct { StandardMediaMetadata Artist string Location string Latitude float64 Longitude float64 Width int64 Height int64 CreationDateTime string }
TODO
type SeekCommand ¶
type SeekCommand struct { primitives.PayloadHeaders CurrentTime float64 `json:"currentTime"` ResumeState string `json:"resumeState"` }
SeekCommand is a type of command payload to be passed along the media channel.
func CreateSeekCommand ¶
func CreateSeekCommand(position float64) SeekCommand
CreateSeekCommand creates a seekcommand object.
type StandardMediaMetadata ¶
type StandardMediaMetadata struct { MetadataType int `json:"metadataType"` Title *string `json:"title,omitempty"` }
StandardMediaMetadata is standard part for all metadata objects parts for mediadata objects.
type TvShowMediaMetadata ¶
type TvShowMediaMetadata struct { StandardMediaMetadata Images []string SeriesTitle string Season int Episode int OriginalAirDate string }
TODO