Sources the repo's own check_channels.py (--attempts 4, ffprobe-class
rigor) confirms alive repeatedly, not single-probe guesses:
Japan (#1184) - 5 of 7 terrestrial channels moved from the dead-or-
flaky naori-test.netgenx.site relay to mov3.co mirrors (already the
same provider used for iptv-org/iptv's jp.m3u):
- NHK総合 -> nhk4.mov3.co, テレビ朝日 -> tvasahi.mov3.co,
TBSテレビ -> tbs5.mov3.co, テレビ東京 -> tvtokyo.mov3.co,
フジテレビ -> fujitv4.mov3.co
No public mirror found for NHK Eテレ or 日本テレビ (日テレ) - left on
naori-test, which is flaky rather than confirmed dead so not worth
downgrading to [x] either.
Slovakia (#1153) - 5 of 20 channels moved off the dead-or-flaky
sktv.mxnticek.eu relay:
- Markíza, Klasik -> cdnsk003.panaccess.com (STVR's own CDN, also
serving the already-working MTR.sk entry in iptv-org/iptv's sk.m3u)
- Jednotka, Dvojka -> 88.212.15.19 test streams (from iptv-org/iptv)
- NR SR -> n11.stv.livebox.sk (STVR's own parliament feed)
STVR :24 and Šport have a candidate on 88.212.15.27, but it timed out
repeatedly under check_channels.py despite answering a lone curl, so
it's left unreplaced rather than swapped for an equally unreliable
source. Markíza's JOJ-group siblings (JOJ, Wau, Dajto, Krimi, Doma,
TA3, ...) have no public mirror found - these are commercial
broadcasters whose only known source remains the flaky mxnticek relay.
Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01HnjzQpjtzZkVgRJGZipm44
stream01.willfonk.com has zero "alive" results across 1000+ checks in
the checker history over the last 8 days, and my own multi-attempt
probe (check_channels.py --confirm-dead) confirms it's consistently
unreachable. Part of #1184.
naori-test.netgenx.site and sktv.mxnticek.eu (also reported in #1184
and #1153) are left untouched: the checker history shows both still
returning "alive"/"flaky" results within the last 3 days, so per
check_channels.py's own guidance they're unreliable/geo-sensitive
rather than confirmed dead, and shouldn't be blanket-marked invalid
on a single failed probe.
Co-Authored-By: Claude Sonnet 5 <[email protected]>
Claude-Session: https://claude.ai/code/session_01HnjzQpjtzZkVgRJGZipm44
- Restore TSN Tele Sondrio News (LCN 85, Lombardia) to Regional DVB-T with active Akamai 720p stream
- Upgrade Rtp Tv stream protocol to HTTPS (flash2.xdevel.com)
- Add 29 verified regional DVB-T channels and visual radios in alphabetical order:
* Regional DVB-T: AM Terni Television, Tele Golfo RTG, Tele Granducato, Tele Lacco Ameno, Tele Laser, Tele Ritmo, Tele Stabia / Gigli TV, TGS Telegiornale di Sicilia, TRG Media, TRSP Tele Radio San Pietro
* Visual Radios & Local TVs: Bella e Monella TV, Enjoy Television, Radio Arancia TV, Radio Bianconera TV, Radio Delta 1 TV, Radio Digiesse TV, Radio Iglesias Visual Radio, Radio Juke Box TV, Radio Kiss Kiss Italia TV, Radio Kiss Kiss Napoli TV, Radio Napoli Emme, Radio Number One TV, Radio Padova TV, Radio Punto Zero TV, Radio Ritmo 80 TV, Radio Studio TV, Radio Taormina TV, Radio Televisione Sarda, Radio Tivù Azzurra, RTN Napoli
- All streams verified active on official CDNs (1080p/720p) with on-screen logos
- Only lists/italy.md modified
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
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