Documentation ¶
Index ¶
- func NewProvider(apiHost, clientID, appVersion string) media.Provider
- type APIPublisherMetadata
- type APIResponse
- type APIUser
- type TrackProvider
- func (s *TrackProvider) BasicMediaInfoFromPlayedMedia(playedMedia *types.PlayedMedia) (media.BasicInfo, error)
- func (c *TrackProvider) BeginEnqueueRequest(ctx *transaction.WrappingContext, ...) (media.InitialInfo, media.EnqueueRequestCreationResult, error)
- func (c *TrackProvider) CanHandleRequestType(mediaParameters proto.IsEnqueueMediaRequest_MediaInfo) bool
- func (c *TrackProvider) ContinueEnqueueRequest(ctx *transaction.WrappingContext, genericInfo media.InitialInfo, ...) (media.EnqueueRequest, media.EnqueueRequestCreationResult, error)
- func (s *TrackProvider) SerializePlayedMediaMediaInfo(playedMedia *types.PlayedMedia) (proto.IsPlayedMedia_MediaInfo, error)
- func (s *TrackProvider) SerializeReceivedRewardMediaInfo(playedMedia *types.PlayedMedia) (proto.IsReceivedReward_MediaInfo, error)
- func (s *TrackProvider) SerializeUserProfileResponseFeaturedMedia(playedMedia *types.PlayedMedia) (proto.IsUserProfileResponse_FeaturedMedia, error)
- func (c *TrackProvider) SetMediaQueue(mediaQueue media.MediaQueueStub)
- func (c *TrackProvider) TrackInfo(trackURL string) (*APIResponse, error)
- func (s *TrackProvider) UnmarshalQueueEntryJSON(ctx context.Context, b []byte) (media.QueueEntry, bool, error)
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func NewProvider ¶
NewProvider returns a new SoundCloud track provider
Types ¶
type APIPublisherMetadata ¶
type APIResponse ¶
type APIResponse struct { ArtworkURL string `json:"artwork_url"` Duration int64 `json:"duration"` FullDuration int64 `json:"full_duration"` EmbeddableBy string `json:"embeddable_by"` Kind string `json:"kind"` ID int64 `json:"id"` MonetizationModel string `json:"monetization_model"` PermalinkURL string `json:"permalink_url"` Policy string `json:"policy"` Public bool `json:"public"` PublisherMetadata APIPublisherMetadata `json:"publisher_metadata"` Sharing string `json:"sharing"` Streamable bool `json:"streamable"` Title string `json:"title"` User APIUser `json:"user"` }
type TrackProvider ¶
type TrackProvider struct {
// contains filtered or unexported fields
}
TrackProvider provides SoundCloud track media
func (*TrackProvider) BasicMediaInfoFromPlayedMedia ¶
func (s *TrackProvider) BasicMediaInfoFromPlayedMedia(playedMedia *types.PlayedMedia) (media.BasicInfo, error)
func (*TrackProvider) BeginEnqueueRequest ¶
func (c *TrackProvider) BeginEnqueueRequest(ctx *transaction.WrappingContext, mediaParameters proto.IsEnqueueMediaRequest_MediaInfo) (media.InitialInfo, media.EnqueueRequestCreationResult, error)
func (*TrackProvider) CanHandleRequestType ¶
func (c *TrackProvider) CanHandleRequestType(mediaParameters proto.IsEnqueueMediaRequest_MediaInfo) bool
func (*TrackProvider) ContinueEnqueueRequest ¶
func (c *TrackProvider) ContinueEnqueueRequest(ctx *transaction.WrappingContext, genericInfo media.InitialInfo, unskippable, concealed, anonymous, allowUnpopular, skipLengthChecks, skipDuplicationChecks bool) (media.EnqueueRequest, media.EnqueueRequestCreationResult, error)
func (*TrackProvider) SerializePlayedMediaMediaInfo ¶
func (s *TrackProvider) SerializePlayedMediaMediaInfo(playedMedia *types.PlayedMedia) (proto.IsPlayedMedia_MediaInfo, error)
func (*TrackProvider) SerializeReceivedRewardMediaInfo ¶
func (s *TrackProvider) SerializeReceivedRewardMediaInfo(playedMedia *types.PlayedMedia) (proto.IsReceivedReward_MediaInfo, error)
func (*TrackProvider) SerializeUserProfileResponseFeaturedMedia ¶
func (s *TrackProvider) SerializeUserProfileResponseFeaturedMedia(playedMedia *types.PlayedMedia) (proto.IsUserProfileResponse_FeaturedMedia, error)
func (*TrackProvider) SetMediaQueue ¶
func (c *TrackProvider) SetMediaQueue(mediaQueue media.MediaQueueStub)
func (*TrackProvider) TrackInfo ¶
func (c *TrackProvider) TrackInfo(trackURL string) (*APIResponse, error)
func (*TrackProvider) UnmarshalQueueEntryJSON ¶
func (s *TrackProvider) UnmarshalQueueEntryJSON(ctx context.Context, b []byte) (media.QueueEntry, bool, error)
Click to show internal directories.
Click to hide internal directories.