sounds.streaming

Classes

StreamingService

Base class for other classes to inherit shared session and state

Module Contents

class sounds.streaming.StreamingService(auth_service: sounds.auth.AuthService, schedule_service: sounds.schedules.ScheduleService, **kwargs)

Bases: sounds.base.Base

Base class for other classes to inherit shared session and state

auth_service
schedule_service
async get_postcasts()
async get_podcast(urn=None, pid=None, include_episodes=True) sounds.models.Podcast | sounds.models.RadioSeries
async get_podcast_episodes(pid) List[sounds.models.PodcastEpisode | sounds.models.RadioShow | sounds.models.RadioClip] | None
async get_podcast_episode(pid, include_stream=False) sounds.models.PodcastEpisode
async get_radio_series(urn, include_episodes=True) sounds.models.RadioSeries
async get_radio_show(pid, include_stream=False) sounds.models.RadioShow
async get_live_stream(station_id: str, stream_format: Literal['hls'] | Literal['dash'] = 'hls') str | None
get_best_stream(streams: dict, prefer_type: Literal['hls'] | Literal['dash'] = 'hls') str | None

Looks for the first valid stream with the requested format.

async get_episode_stream(episode_id: str, stream_format: Literal['hls'] | Literal['dash'] = 'hls') str | None

Gets the stream for a specified episode.

Parameters:

episode_id – str

Returns:

Stream object of stream information

Return type:

str | None

async get_by_pid(pid, include_stream=False, stream_format: Literal['hls'] | Literal['dash'] = 'hls') sounds.models.SoundsTypes
async get_pid_container(pid) List[sounds.models.PlayableItem] | None
async get_container(urn)
async get_heartbeat_details(pid)
async update_play_status(pid: str, elapsed_time: int, action: sounds.constants.PlayStatus)
async get_category(category) sounds.models.Category
async get_collection(pid) sounds.models.Collection
async search(query) sounds.models.SearchResults
async get_show_segments(vpid) List[sounds.models.Segment]