Commit Graph
1942 Commits
Author SHA1 Message Date
ChannelCheckerBot 62e17f7e2e Channel check (fast) - 2026-09-11T12:18:52Z 2026-09-11 12:18:52 +00:00
Alessio ad3d2ccedf Add Telecolore Salerno (closes #1185) 2026-09-11 13:48:12 +02:00
Alessio 05a69691a2 Move broken K2 and Frisbee streams to Invalid (lists/italy.md)
- Video chunks (.ts segments) return HTTP 403 Forbidden due to DRM/auth restrictions.
- Moved entries to ## Invalid and changed markers to [x].
2026-09-11 13:30:27 +02:00
ChannelCheckerBot cd3f488e40 Channel check (deep) - 2026-09-11T06:42:47Z 2026-09-11 06:42:47 +00:00
ChannelCheckerBot 8a5ab3cba7 Channel check (fast) - 2026-09-11T06:20:16Z 2026-09-11 06:20:17 +00:00
ChannelCheckerBot 1e650261a1 Channel check (fast) - 2026-09-11T00:25:34Z 2026-09-11 00:25:34 +00:00
ChannelCheckerBot 4522b038d9 Channel check (fast) - 2026-09-10T18:18:15Z 2026-09-10 18:18:15 +00:00
ChannelCheckerBot 42364c20ce Channel check (fast) - 2026-09-10T12:19:21Z 2026-09-10 12:19:21 +00:00
ChannelCheckerBot e9d9bc4b55 Channel check (fast) - 2026-09-10T06:20:45Z 2026-09-10 06:20:45 +00:00
ChannelCheckerBot 04e4f2f881 Channel check (fast) - 2026-09-10T00:24:59Z 2026-09-10 00:24:59 +00:00
ChannelCheckerBot 0a89a69f3b Channel check (fast) - 2026-09-09T18:18:06Z 2026-09-09 18:18:06 +00:00
ChannelCheckerBot 8829525d69 Channel check (fast) - 2026-09-09T12:18:47Z 2026-09-09 12:18:47 +00:00
ChannelCheckerBot faac9941e2 Channel check (deep) - 2026-09-09T06:44:33Z 2026-09-09 06:44:33 +00:00
ChannelCheckerBot efaef2b59a Channel check (fast) - 2026-09-09T06:23:11Z 2026-09-09 06:23:11 +00:00
ChannelCheckerBot 03a4ac1563 Channel check (fast) - 2026-09-08T18:18:10Z 2026-09-08 18:18:10 +00:00
ChannelCheckerBot abfe32e5a9 Channel check (fast) - 2026-09-08T12:19:26Z 2026-09-08 12:19:26 +00:00
ChannelCheckerBot 832ad962e8 Channel check (fast) - 2026-09-08T06:19:48Z 2026-09-08 06:19:48 +00:00
ChannelCheckerBot 7e100328c3 Channel check (fast) - 2026-09-08T00:24:59Z 2026-09-08 00:24:59 +00:00
ChannelCheckerBot e862e957e2 Channel check (fast) - 2026-09-07T18:17:35Z 2026-09-07 18:17:35 +00:00
ChannelCheckerBot 16306fdde8 Channel check (fast) - 2026-09-07T12:19:29Z 2026-09-07 12:19:29 +00:00
ChannelCheckerBot 23ca802ae0 Channel check (deep) - 2026-09-07T06:53:46Z 2026-09-07 06:53:46 +00:00
ChannelCheckerBot 42d0f8e67f Channel check (fast) - 2026-09-07T06:22:45Z 2026-09-07 06:22:45 +00:00
ChannelCheckerBot 325ad0352e Channel check (fast) - 2026-09-07T00:26:16Z 2026-09-07 00:26:16 +00:00
KAMI 8b0d46cee1 Merge pull request #1183 from KAMI911/fix-rai-add-official-geoblocked-alt
Restore official geo-blocked RAI streams alongside the CloudFront mirror (fixes #1179)
2026-09-06 21:11:21 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 72b7c7e076 Restore official geo-blocked RAI streams alongside the CloudFront mirror
Fixes #1179.

PR #1166 moved Rai 1, Rai 2, Rai 3, Rai Premium, Rai Storia and Rai
Scuola from the official mediapolis.rai.it relinker to a third-party
CloudFront mirror, because the relinker had become Italy-IP-gated and
was failing for everyone else (including the CI checker). That mirror
works for casual viewing, but as #1179 reports, it goes black during
broadcasts where RAI only holds domestic rights (e.g. EuroVolley) -
the official stream keeps working correctly for Italian-IP viewers
through exactly those broadcasts, because it's RAI's own domestic
feed, not a re-mirror of it.

Rather than trade one gap for the other, add the official mediapolis
URL back as a second, Ⓖ-marked entry for each of the six channels -
the same "CDN mirror as the general-access entry, official relinker
as the geo-gated alternative" split this file already uses for every
other Rai channel (Rai 4, Rai 5, Rai Movie, Rai Sport, etc., all still
on mediapolis.rai.it + Ⓖ). Viewers with an Italian IP get the more
correct source; everyone else keeps the mirror that already works for
them.

Also fixes a real gap in check_channels.py found while verifying this:
mediapolis.rai.it's relinker doesn't refuse an out-of-territory request
with an HTTP error - it answers 200 with a real MP4, but the file is
always the same "video_no_available.mp4" decoy regardless of which
channel was asked for. The checker had no way to tell that apart from
a working stream failing its playlist-header check, so every
mediapolis.rai.it entry (the pre-existing Rai 4/5/Movie/Sport ones
included) was scored `dead` instead of `blocked`, right down to the
newly-fixed pr_check.yml workflow that now hard-fails a PR over a
`dead`-scored touched channel. Added a check for this specific decoy
redirect target, classified as `blocked` like any other geo-refusal.

Regenerated playlist.m3u8 and playlists/playlist_italy.m3u8 via
make_playlist.py. pylint check_channels.py: 10.00/10.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 21:09:12 +02:00
ChannelCheckerBot d9bb826b0b Channel check (fast) - 2026-09-06T18:17:10Z 2026-09-06 18:17:10 +00:00
KAMI e96b3e2d8c Merge pull request #1182 from KAMI911/fix-china-cctv15
Fix dead CCTV-15 link (China)
2026-09-06 20:00:00 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 c3da8585b2 Fix dead CCTV-15 link (China)
CCTV-15 音乐 had no URL. Found it on the same aggregator IP
(74.91.26.218:82) already used successfully for every other CCTV-1
through CCTV-17 entry in this file - just needed the matching
cctv15hd path. Verified alive via check_channels.py (3/3 ok), real
HLS content with sequential live .ts segments.

Researched but left unchanged (no viable replacement found):
- China: FZTV-2 (sibling IDs on the same host work, this one 404s;
  no alternate ID discoverable without brute-forcing); CCTV-5, CCTV-5+,
  CETV-1 through 4 (Invalid section) - the same aggregator serves
  geo-block placeholders or "no server configured" errors for these,
  not real streams.
- Israel: Channel 12, Makan 33 - confirmed geo-blocked to Israel by
  the broadcaster's own API response, not fixable from outside.
- Azerbaijan: Topaz 2 - no discoverable public web presence, likely
  defunct. CBC Sport, İctimai TV newly found dead, no replacement.
- United Arab Emirates: Fujairah TV has a real official stream, but
  it's a signed URL that expires the same day - not usable as a
  static entry. MBC 2/Action/Max, Al Aan TV, Baynounah TV, Abu Dhabi
  Sports 1/2 newly found dead, no replacement. Notably, Abu Dhabi TV,
  National Geographic Abu Dhabi, Dubai TV, Dubai One, Dubai Sports
  1-3, Dubai Racing 1-3, Dubai Zaman, Sama Dubai, and Noor Dubai (12
  channels) all point to CDN subdomains that no longer resolve at all
  (confirmed NXDOMAIN) - both Abu Dhabi Media and Dubai Media Inc.
  appear to have discontinued free public live streaming entirely
  (Abu Dhabi Media moved behind the paid StarzPlay platform, Dubai
  Media Inc's rebuilt site has no live section) - a wholesale
  infrastructure change worth flagging to maintainers rather than 12
  isolated link rots, but not something a replacement URL can fix.
- Somalia: Codka Bariga Afrika, Dacwa TV, Puntland TV - no
  discoverable public stream. Somali Cable TV and SBC Somalia have
  official YouTube channels, but neither was live at verification
  time.

Regenerated playlist.m3u8 and playlists/playlist_china.m3u8 via
make_playlist.py.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 19:59:07 +02:00
KAMI 7cff570c76 Merge pull request #1181 from KAMI911/fix-malta-nk-smash-ryongnamsan
Fix dead Smash TV and Ryongnamsan TV links
2026-09-06 19:50:27 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 45c5f4b018 Fix dead Smash TV and Ryongnamsan TV links
Malta:
- Smash TV: a3.smashmalta.com no longer resolves. Found the current
  stream on the station's own official homepage embed. Verified alive
  via check_channels.py (3/3 ok), real HLS media playlist with .ts
  segments.

North Korea:
- Ryongnamsan TV: had no URL. Found it on the same reputable
  koryofront.org aggregator already used successfully for this file's
  existing KCTV entry - it explicitly lists a Ryongnamsan TV stream at
  a sibling path. Verified alive via check_channels.py (3/3 ok), real
  HLS media playlist with live PROGRAM-DATE-TIME tags.

Researched but left unchanged (no durable fix available):
- Malta: TVM2 and NET TV have real official live streams, but both
  require session-bound/time-limited signed tokens (a JWT tied to the
  requester's IP with a ~24h expiry, and a 12h start/end token window
  respectively) - not usable as a static playlist entry. F Living: no
  official web presence found.
- North Korea: Mansudae TV - not offered by the koryofront.org
  aggregator or any other source found.
- Taiwan: CTV Classic, CTV Bravo - official site has no live player,
  only a program schedule.
- Poland: 4fun Dance - official live player is a third-party embed
  with no discoverable static stream URL.
- Latvia: TV24 - official site has no live/tiešraide page, only a
  VOD archive.

Regenerated playlist.m3u8 and the per-country playlists via
make_playlist.py.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 19:49:43 +02:00
KAMI ca76d18267 Merge pull request #1180 from KAMI911/fix-australia-sbs-nine-c31
Fix dead SBS family, 9Now family, and C31 Melbourne links (Australia)
2026-09-06 18:38:52 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 1cde3355d6 Fix dead SBS family, 9Now family, and C31 Melbourne links (Australia)
- SBS, SBS Viceland, SBS World Movies, SBS Food, NITV: had no URL at
  all. Found the correct current channel keys behind the i.mjh.nz
  redirector already used successfully by other entries in this file
  (Seven, Nine, 7two, etc). The redirector mints a fresh token and
  forwards to SBS's real Akamai edge, which explicitly declines
  non-Australian requests (X-Error-Reason: geo-blocked) - real,
  correctly-functioning access control, not a broken link - so marked
  Ⓖ like the file's other geo-blocked entries (9Gem, 9Go!, etc).
- 9Gem, 9Go!, 9Life, 9Rush: the old direct 9now-livestreams.akamaized.net
  URLs now 400 (stale signed paths). Replaced with the same i.mjh.nz
  redirector mechanism, which mints a fresh token per request instead
  of embedding a static one. Verified alive via check_channels.py
  (3/3 ok), real HLS master + variant playlists.
- C31 Melbourne: had no URL. The station now operates under the CTV
  Plus community-TV platform after a 2016 licensing change; found its
  current CloudFront-backed stream via ctvplus.org.au. Verified alive
  via check_channels.py (3/3 ok), real HLS content with live segments.

Researched but left unchanged (no viable replacement found):
- Spree TV, M4TV: official domains parked or unresolvable, stations
  appear defunct.
- 10 Shake, Racing.com: newly found dead (stale CDN paths), but their
  official platforms are JS SPAs with no static stream discoverable.

Regenerated playlist.m3u8 and playlists/playlist_australia.m3u8 via
make_playlist.py.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 18:37:33 +02:00
KAMI ec279efc61 Merge pull request #1178 from KAMI911/fix-zz-news-serbia
Fix dead LiveNOW from FOX and RTS 3 links
2026-09-06 15:29:23 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 ecfc0bd2a3 Fix dead LiveNOW from FOX and RTS 3 links
zz_news_en:
- LiveNOW from FOX: lnc-fox-live-now.tubi.video no longer resolves.
  Replaced with the Amagi-hosted feed already used for the same
  channel under lists/usa.md's "FOX Live Now" entry. Verified alive
  via check_channels.py (3/3 ok).

Serbia:
- RTS 3: the old udp-multicast-proxy URL (185.81.240.65:15000) is
  unreachable. Found the current feed on the same official bhtelecom.ba
  CDN already used for RTS 1 and RTS 2 in this file. Verified alive via
  check_channels.py (3/3 ok), real HLS master playlist with two
  variants.

Researched but left unchanged (no fix available):
- zz_news_en: The Guardian, CBC News Network, Sky News Now (AU), i24
  News, CNBC Europe, CNBC Indonesia, Pluto TV News - official
  infrastructure down, geo/paywall-gated, or no public stream exists.
  CNN (line 36) was not touched - the only replacement found is the
  exact same feed already used by the "CNN International" row in this
  file, which would just be a duplicate entry, not a distinct fix.
- Moldova: Publika TV group and Balti TV - official domains gone, no
  replacement found.
- Serbia: Euronews Serbia has a real working stream, but it requires a
  custom Referer header this repo's plain-URL playlist format can't
  carry - not usable as a drop-in fix. Red TV - no replacement found.
- Slovakia: every channel points at a domain (sktv.mxnticek.eu) that is
  completely down. Found working replacements for 3 channels via
  STVR's own JSON endpoint, but those URLs embed a short-lived signed
  token that expires - not usable as a static playlist entry (same
  reasoning as the Sweden Solidtango tokens rejected earlier). No
  durable fix currently available for this file.
- Montenegro: no dead channels found.
- Bosnia and Herzegovina: BHT 1's URL times out, but it's confirmed to
  be the exact URL BHRT's own official site uses internally - looks
  like a genuine infra/geo outage at the source, not a stale link, so
  left unchanged. No fix found for Federalna TV, TV BPK, Kanal 6, TNT
  Kids, Sevdah, RTV Glas Drine, TVSA, RTV TK.

Regenerated playlist.m3u8 and the per-country playlists via
make_playlist.py.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 15:28:16 +02:00
KAMI 96ba870af5 Merge pull request #1176 from KAMI911/fix-pr-check-exit-code
Only fail the PR channel check on channels the PR itself broke
2026-09-06 14:57:45 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 e054b0afbb Only fail the PR channel check on channels the PR itself broke
check_channels.py's exit code reflects every dead channel across the
whole list file it was pointed at, not just the ones a PR added or
changed. Since pr_check.yml ran the checker directly and let its exit
code decide the job's pass/fail, any PR touching a list that already
had pre-existing dead entries (which is most of them - dozens of
already-known-broken channels exist across these lists) got a red X
for something it never caused, even though the workflow's own summary
step already computed the right "touched vs already broken" split.

Fixes this by:
- letting the check step run to completion regardless of its exit
  code (the checker's own verdict on the whole file isn't this job's
  call to make)
- moving pass/fail into the summarize step, which already has the
  touched/others split: the job now fails only when a channel this PR
  itself added or changed comes back `dead`
- deliberately not failing on `blocked`/`unreachable`/`flaky` for
  touched channels either - these have real false-positive rates from
  the runner's own network (geo-blocks, a datacenter IP some providers
  reject, one slow probe), which is exactly why the *Channel check
  (deep)* workflow exists to give `dead`-looking channels a second
  opinion before anyone acts on them

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 14:24:16 +02:00
KAMI 206483f281 Merge pull request #1175 from KAMI911/fix-kenya-cyprus-argentina
Fix dead NTV Kenya, Kibris TV, TV 2020, and Telefe links
2026-09-06 14:21:29 +02:00
KAMI bc7a1aec28 Merge pull request #1174 from KAMI911/fix-albania-tv7-apollon
Fix dead TV 7 Albania and TV Apollon links
2026-09-06 14:21:26 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 0907483c63 Fix dead NTV Kenya, Kibris TV, TV 2020, and Telefe links
Kenya:
- NTV Kenya: nation.africa/kenya/tv/live 404s. Their live simulcast is on
  the station's own official YouTube channel (linked from ntvkenya.co.ke
  itself); confirmed actually live at verification time (canonical URL
  resolved to a /watch?v= page, not the channel page).

Cyprus:
- Kibris TV: the shared sc-kuzeykibrissmarttv.ercdn.net CDN is gone
  (DNS NXDOMAIN) for all 6 TRNC channels in this section. Found Kibris
  TV's current feed via a Northern Cyprus web-TV aggregator
  (old.kuzeykibris.tv), a real rolling HLS media playlist. Verified
  alive via check_channels.py (3/3 ok).
- TV 2020: same dead CDN. Its official YouTube channel is confirmed
  live now. BRT 1, BRT 2, and Kibris Genc TV/Kanal T were also
  researched, but their YouTube channels were NOT live at verification
  time (canonical stayed on the channel page) - left unchanged rather
  than adding an unreliable "channel not live" link.

Argentina:
- Telefe: the old telefe.com API endpoint is deprecated (redirects to
  mitelefe.com, whose live-stream URL is now fetched client-side by JS
  and not extractable via curl). Replaced with a verified-alive
  third-party restream, the same pattern already used for other
  channels in this file (e.g. El Nueve's raw-IP entry). Flagged here
  as a fallback, not an official source.
- Aunar, Cine.AR, Tec TV, DeporTV: researched, all confirmed genuinely
  dead at their own official infrastructure (squatted/parked domains,
  VOD-only platforms, abandoned servers) with no live YouTube
  simulcast either - left unchanged, no fix available.

Regenerated playlist.m3u8 and the per-country playlists via
make_playlist.py.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 14:19:21 +02:00
ChannelCheckerBot 8b7392dde6 Channel check (fast) - 2026-09-06T12:18:15Z 2026-09-06 12:18:15 +00:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 f7bb6da763 Fix dead TV 7 Albania and TV Apollon links
- TV 7 Albania: vs.sednastream.com:1936 returns HTTP 403. Found the
  station's current feed via its official site's live embed (tv7.al ->
  swf.tulix.tv iframe), backed by bozztv.com. Verified alive via
  check_channels.py (3/3 ok), real HLS media playlist with rolling segments.
- TV Apollon: the stored token in the old URL is stale (404, wrong path
  casing). Found the current token+path hardcoded in the station's own
  live player JS on apollon.tv. Verified alive via check_channels.py
  (3/3 ok), real live playlist with current-timestamped segments.

Researched but left unchanged (genuinely unfixable within reasonable
effort - documented for future reference):
- Albania: Kanali 7, Alpo TV, Panorama TV, Report TV - official sites
  either have no public video stream, are behind a Cloudflare JS
  challenge, or the stream host itself is unreachable.
- Bulgaria (bTV, Nova TV, Bulgaria On Air, Nova News, BNT1-4): official
  infrastructure appears to be Bulgaria-ISP-local or geo-blocked; Nova's
  own embed uses a per-request, IP-bound, time-limited signed URL, not
  usable as a static playlist entry.
- Georgia (Adjara TV, Maestro TV, Mtavari Arkhi, GDS, Pos TV, Obieqtivi):
  official domains are down, parked/expired, or return gateway errors
  even on the broadcaster's own site.

Regenerated playlist.m3u8 and playlists/playlist_albania.m3u8 via
make_playlist.py.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 14:14:09 +02:00
KAMI ae00f25964 Merge pull request #1173 from KAMI911/fix-croatia-czech-links
Fix dead HRT 1/2/3 and Praha TV links (Croatia, Czech Republic)
2026-09-06 09:24:54 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 e0efb27c2e Mark HRT 1/2/3 as geo-blocked (Ⓖ), matching existing HRT 4
Same nexttv.ht.hr CDN as the already-marked HRT 4: reachable and serving
real DASH content from an EU/Croatian vantage point, but geo-restricted
for other regions (confirmed by the CI runner's own check run on this PR
reporting all four HRT channels, including the unchanged HRT 4, as dead).
Adds the existing Ⓖ convention to the three new URLs for consistency.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 09:24:40 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 c0f7e788f7 Fix dead HRT 1/2/3 and Praha TV links in Croatia and Czech lists
Croatia:
- HRT 1, HRT 2, HRT 3: the bhtelecom.ba mirror (webtvstream.bhtelecom.ba)
  no longer serves these streams. Switched to HRT's own official CDN
  (bpcdnmanprod.nexttv.ht.hr/bpk-tv/<channel>/default/index.mpd), the same
  origin already used successfully for the existing HRT 4 entry. Verified
  alive via check_channels.py (3/3 ok) before committing.
- Diadora: researched, confirmed genuinely dead at its own stream origin;
  no working alternative found, left unchanged.

Czech Republic:
- Praha TV: stream.polar.cz/prahatv no longer resolves/serves; found the
  station's current stream on Praha TV's own site, backed by CDN77
  (1977134029.rsc.cdn77.org). Verified alive via check_channels.py.
- CNN Prima News, Prima MAX, CS Film, Šlágr Muzika: researched, confirmed
  DRM-gated or dead at source with no viable public alternative; left
  unchanged.

Regenerated playlist.m3u8 and per-country playlists via make_playlist.py.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01Enus8N247jHM5r5Som5JuU
2026-09-06 08:30:29 +02:00
ChannelCheckerBot 9f3d7cc9ef Channel check (fast) - 2026-09-06T06:18:44Z 2026-09-06 06:18:44 +00:00
ChannelCheckerBot 7892bb2b3c Channel check (fast) - 2026-09-06T00:26:49Z 2026-09-06 00:26:49 +00:00
KAMI 8e8f38ecb3 Merge pull request #1172 from KAMI911/fix-sweden-svt-links
Update SVT to current (still geo-blocked) URLs, mark 2 Öppna Kanalen dead
2026-09-05 23:34:18 +02:00
KAMI f21c1234c3 Merge pull request #1171 from KAMI911/fix-russia-links
Fix 5 dead Russian channel links, VGTRK/Smotrim redesign
2026-09-05 23:34:15 +02:00
KAMI 84f25db594 Merge pull request #1170 from KAMI911/fix-ireland-radio-links
Fix 7 dead Irish radio stream URLs
2026-09-05 23:34:11 +02:00
KAMI 6a964b1e5b Merge pull request #1169 from KAMI911/fix-checker-raw-audio-streams
Recognize raw audio/video streams, not just playlists, as alive
2026-09-05 23:34:08 +02:00