feat(providers): add nine catalogues and the Radio Browser directory
This commit is contained in:
1 parent
a3ad693132
commit
49f7efe0d2
27 files changed
+1695
-22
No files matched your search
@@ -0,0 +1,66 @@
|
||||
"""Rinse FM: London's station family, a proxy mount each."""
|
||||
|
||||
from __future__ import annotations
|
||||
|
||||
from ...models import Station
|
||||
from .base import CommunityProvider
|
||||
|
||||
#: (station id, title, genre, mount, description)
|
||||
_STATIONS: tuple[tuple[str, str, str, str, str], ...] = (
|
||||
(
|
||||
"rinse_uk",
|
||||
"Rinse UK",
|
||||
"electronic|house",
|
||||
"rinse_uk",
|
||||
"London's underground dance station, on air since 1994",
|
||||
),
|
||||
(
|
||||
"kool",
|
||||
"Kool London",
|
||||
"jungle|drum & bass",
|
||||
"kool",
|
||||
"Kool London: jungle, drum & bass and roots",
|
||||
),
|
||||
(
|
||||
"swu",
|
||||
"SWU",
|
||||
"soul|eclectic",
|
||||
"swu",
|
||||
"SWU: soul, funk and everything south west",
|
||||
),
|
||||
)
|
||||
|
||||
|
||||
class RinseProvider(CommunityProvider):
|
||||
id = "rinse"
|
||||
name = "Rinse FM"
|
||||
homepage = "rinse.fm"
|
||||
brand = "RINSE"
|
||||
tagline = "london · since 1994"
|
||||
station_source = "rinse.fm streams"
|
||||
history_source = ""
|
||||
|
||||
station_genre = "electronic"
|
||||
|
||||
wordmark = "RINSE"
|
||||
hero_lines = ("LONDON", "SINCE 1994")
|
||||
|
||||
def stations(self) -> list[Station]:
|
||||
return [
|
||||
Station(
|
||||
id=station_id,
|
||||
title=title,
|
||||
description=description,
|
||||
genre=genre,
|
||||
playlists=[
|
||||
{
|
||||
"url": f"https://admin.stream.rinse.fm/proxy/{mount}/stream",
|
||||
"format": "aacp",
|
||||
"quality": "high",
|
||||
"bitrate": "128",
|
||||
}
|
||||
],
|
||||
provider=self.id,
|
||||
)
|
||||
for station_id, title, genre, mount, description in _STATIONS
|
||||
]
|
||||
Reference in new issue
Block a user