diff --git a/README.md b/README.md index a5abf66..eef169c 100644 --- a/README.md +++ b/README.md @@ -16,10 +16,19 @@ After that, the server is available on port 8080. The following streams are available: -- `/nporadio2.m3u8` - M3U8 stream with FairPlay DRM (HLS) -- `/nporadio2.mpd` - MPEG-DASH stream with Widevine DRM (DASH) -- `/npo3fm.m3u8` - M3U8 stream with FairPlay DRM (HLS) -- `/npo3fm.mpd` - MPEG-DASH stream with Widevine DRM (DASH) +| URL | Station | Format | DRM Type | +|---------------------|--------------|------------------|---------------------| +| `/nporadio1.m3u8` | NPO Radio 1 | M3U8 stream | FairPlay DRM (HLS) | +| `/nporadio1.mpd` | NPO Radio 1 | MPEG-DASH stream | Widevine DRM (DASH) | +| `/nporadio2.m3u8` | NPO Radio 2 | M3U8 stream | FairPlay DRM (HLS) | +| `/nporadio2.mpd` | NPO Radio 2 | MPEG-DASH stream | Widevine DRM (DASH) | +| `/npo3fm.m3u8` | NPO 3FM | M3U8 stream | FairPlay DRM (HLS) | +| `/npo3fm.mpd` | NPO 3FM | MPEG-DASH stream | Widevine DRM (DASH) | +| `/npoklassiek.m3u8` | NPO Klassiek | M3U8 stream | FairPlay DRM (HLS) | +| `/npoklassiek.mpd` | NPO Klassiek | MPEG-DASH stream | Widevine DRM (DASH) | +| `/funx.m3u8` | FunX | M3U8 stream | FairPlay DRM (HLS) | +| `/funx.mpd` | FunX | MPEG-DASH stream | Widevine DRM (DASH) | + ## Environment variables diff --git a/internal/server/server.go b/internal/server/server.go index 1d2d170..574d36a 100644 --- a/internal/server/server.go +++ b/internal/server/server.go @@ -23,10 +23,16 @@ const ( ) var routeConfigs = map[string]RouteConfig{ - "/nporadio2.m3u8": {DrmType: "fairplay", ProfileName: "hls", URL: "https://www.nporadio2.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, - "/nporadio2.mpd": {DrmType: "widevine", ProfileName: "dash", URL: "https://www.nporadio2.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, - "/npo3fm.m3u8": {DrmType: "fairplay", ProfileName: "hls", URL: "https://www.npo3fm.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, - "/npo3fm.mpd": {DrmType: "widevine", ProfileName: "dash", URL: "https://www.npo3fm.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/nporadio1.m3u8": {DrmType: "fairplay", ProfileName: "hls", URL: "https://www.nporadio1.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/nporadio1.mpd": {DrmType: "widevine", ProfileName: "dash", URL: "https://www.nporadio1.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/nporadio2.m3u8": {DrmType: "fairplay", ProfileName: "hls", URL: "https://www.nporadio2.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/nporadio2.mpd": {DrmType: "widevine", ProfileName: "dash", URL: "https://www.nporadio2.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/npo3fm.m3u8": {DrmType: "fairplay", ProfileName: "hls", URL: "https://www.npo3fm.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/npo3fm.mpd": {DrmType: "widevine", ProfileName: "dash", URL: "https://www.npo3fm.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/npoklassiek.m3u8": {DrmType: "fairplay", ProfileName: "hls", URL: "https://www.nporadio4.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/npoklassiek.mpd": {DrmType: "widevine", ProfileName: "dash", URL: "https://www.nporadio4.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/funx.m3u8": {DrmType: "fairplay", ProfileName: "hls", URL: "https://www.funx.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, + "/funx.mpd": {DrmType: "widevine", ProfileName: "dash", URL: "https://www.funx.nl/live", StreamBuilderURL: "https://prod.npoplayer.nl/stream-link"}, } var cachedUrls = make(map[string]CachedStreamUrl)