Commit Graph
2074 Commits
Author SHA1 Message Date
Kálmán „KAMI” SzalaiandClaude Sonnet 5 07211361a2 Fix Hungary channel logos, move Radio section before Regional
Added/fixed logos (sourced from Wikimedia Commons and iptv-org's
curated logo set) for: M4 Sport, TV4, Cool, Spektrum, Galaxy4, Sport1,
Sport2, Film+, Film4, Mozi+, AMC, TV Paprika, Kossuth Rádió, Petőfi
Rádió, Rádió1, Hír FM, Spirit FM. Bartók Rádió, Dankó Rádió, Retró
Rádió, Juventus Rádió and Sláger FM have no verified official logo
file available, left blank rather than guess.

Moved the Radio section to just before Regional, per request.

python3 check_channels.py hungary -> 68 checked, 68 alive.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
2026-10-23 12:27:05 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 cbee893cf4 Restore FEM3/Viasat 6 (sibling IP), add Antena 3 CNN and DPR Korea Sports TV
FEM3 and Viasat 6 (Hungary) were dead on 88.212.15.19; found alive on
the sibling IP 88.212.15.17 (same path/stream names) via iptv-org's
public aggregator, closes the last remaining gap from #1223/#1228.

Antena 3 CNN (Romania) via antenaplay.ro's free CDN endpoint, closes
the Antena 3 part of #1177 (confirmed live, non-tokened, no session
auth needed - unlike the URL in that issue which does expire).

Added Sports Television (DPR Korea) via koryocdn.org, closes #1202.
Note: this channel only broadcasts Sat/Sun 18:00-22:00 KST, so it will
correctly show as unreachable/dead outside those hours - documented
in the channel name.

All three sources found via iptv-org/iptv's public aggregator
(iptv-org.github.io/iptv/countries/*.m3u), not hand-guessed.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
2026-10-23 12:05:44 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 ca0d866700 Fix radio station name: Youventus -> Juventus Rádió
Co-Authored-By: Claude Sonnet 5 <[email protected]>
2026-10-23 12:04:07 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5 4ec30e22db Add Hungarian extras and radio stations (#1247, #1248)
Confirmed live on the same 141.94.193.53 mirror used for M1/M2/M5/Duna/
RTL/TV2/ATV/TV4/Cool/Film+: Spektrum, Spektrum Home, Galaxy4, Sport1,
Sport2, Izaura TV, Film4, Mozi+, AMC, TV Paprika. Fixed M4 Sport with
the same mirror (old connectmedia.hu URL was dead).

DTV is finally live again via cloudfront44.lexanetwork.com relay002
(closes the long-standing gap from #1223/#1228 - FEM3 and Viasat 6
still have no working source and remain in Invalid).

Spektrum Home and Izaura TV were actually fixed once already in a
follow-up commit on the #1244 branch, but that commit landed after
the PR had already been merged, so it never reached master - this
restores that work with fresh URLs.

Replaced the Euronews Hungarian YouTube embed with euronews's own
direct HLS feed (more stable, confirmed live).

Added a new Radio section with 11 Hungarian radio stations from
#1248 (Kossuth, Petőfi, Bartók, Dankó, Rádió1, Retró, Jazzy FM,
Youventus, Hír FM, Spirit FM, Sláger FM), replacing the old YouTube
Radio 1 entry in Music with the direct stream in the new section.

All 66 Hungary entries confirmed alive via check_channels.py.

Co-Authored-By: Claude Sonnet 5 <[email protected]>
2026-10-23 12:02:56 +02:00
KAMI 6245e97f85 Merge pull request #1246 from Free-TV/fix/triage-dead-channels
Triage: mark confirmed-dead channels Invalid, flag geo-blocked Japan feeds
2026-10-23 11:57:44 +02:00
Kálmán „KAMI” Szalai df7787500d Triage: mark confirmed-dead channels Invalid, clarify geo-blocked Japan feeds
Went through the open issue backlog and verified each claim against
the live streams with check_channels.py / curl before touching
anything, rather than acting on the reports alone.

Moved to Invalid (2 attempts, both `gone`, re-verified by hand):
- Greece: Start, Thraki Net TV
- Slovakia: Doma, Dajto, Krimi, Markíza TN Live, Jojko (joining the
  JOJ-family channels already Invalid - same upstream host, same
  missing-channel pattern)
- Bosnia and Herzegovina: Sevdah
- Spain: Nova, La 7 CYLTV, Canal TE24
- USA: NASA TV Public
- USA + zz_news_en: CNN / CNN International - both point at
  turnerlive.warnermediacdn.com/.../cnn_slate/..., which returns a
  permanently frozen manifest (#EXT-X-PUBLISHED-TIME and
  MEDIA-SEQUENCE identical across two fetches 8s apart, dated several
  months in the past) - a live-looking HTTP 200 that check_channels.py
  currently has no way to catch, since it never compares a URL against
  its own earlier response. Also moved the alternate CNN entry in
  zz_news_en.md (a raw.githubusercontent.com link that 404s outright).
- Not moved: N1 Bosna i Hercegovina (`disputed` - ffprobe found a real
  stream behind the dead-looking HTTP response, needs a human) and
  everything reported merely `unreachable`/`blocked` across these
  lists - neither is strong enough evidence on its own, see
  check_channels.py's own docstring.

Japan: added the Ⓖ marker to the 6 terrestrial channels on mov3.co
(NHK総合, 日本テレビ, テレビ朝日, TBSテレビ, テレビ東京, フジテレビ) -
confirmed HTTP 403 from here on all six, consistent with the
geo-restriction every other Ⓖ-marked channel in this repo already
documents. They were working `[>]` entries with no Ⓖ, which reads as
"this should work from anywhere" when it does not.

Left alone after checking (false alarms / already resolved, not a
list-file problem):
- Croatia HRT 1-4: already Ⓖ-marked and alive.
- Mongolia TenGer TV/TV5/TV9: all 40 Mongolia channels alive.
- Japan Willfonk/naori-test links: already Invalid on master.
- Several `unreachable` entries (Greece ART TV/Epirus TV 1, Croatia's
  RTL family, half of Spain, Bosnia's BHT/Glas Drine/etc.) -
  `unreachable` means "every attempt timed out or failed to connect
  from here", not "confirmed gone" - too weak to act on without a
  second opinion, and these didn't get one in this pass.

ran: python3 make_playlist.py (clean regen) + check_channels.py on
every touched list afterward to confirm nothing newly broke and the
moved channels no longer show up as working.
2026-10-23 09:32:08 +02:00
KAMI a7018ab33d Merge pull request #1245 from Free-TV/feat/check-invalid-channels
check_channels.py: add --invalid/--include-invalid to re-check Invalid rows
2026-10-23 09:15:21 +02:00
Kálmán „KAMI” Szalai f444da3b2a Add --invalid/--include-invalid to check_channels.py (closes #1226)
Per #1226: once a channel is marked Invalid ([x]), nothing ever probes
it again, so a source that comes back online stays listed as dead
forever, and the scheduled fast/deep runs plus the PR check only ever
look at [>] rows.

- ROW now captures which marker (`>` or `x`) a row carries.
- --invalid probes only the Invalid-flagged rows; anything that now
  answers alive/flaky is printed as "RECOVERED?" instead of being
  judged dead/unreachable (the expected, uninteresting outcome for a
  row that's supposed to be broken).
- --include-invalid runs both passes together in one worker pool.
- The exit code still only reflects dead [>] channels - a dead [x]
  channel is the status quo, not a regression - so --invalid alone
  always exits 0 and is safe to add to any workflow without risking a
  spurious failure.
- --json records now carry the row's marker too.

Deliberately not wired into check_channels_deep.yml yet: the history
file and generate_dashboard.py's "most recent row per (list, channel)"
view assume every row is a working channel. Mixing in hundreds of
Invalid rows per run would bloat the dashboard's "not currently alive"
table with already-known-dead noise, and - worse - an Invalid channel
that comes back alive wouldn't show there either, since that table
only lists rows that are *not* alive. That's a second, separate change
to generate_dashboard.py; flagging it here rather than shipping it
half-done.

Tried --invalid on bulgaria/latvia (channels this account's own PR
moved to Invalid days ago, confirmed dead at the time) - correctly
reported dead/blocked, not recovered. Tried --include-invalid on
hungary and it immediately surfaced 4 real recovery candidates
(AlföldTV, Lóverseny közvetítés, Bajai TV, Tisza TV); re-checked those
4 by hand afterwards with a longer timeout and they went straight back
to unreachable, which is itself a useful data point - exactly the kind
of flaky intermittent case the tool is supposed to hand to a human
rather than silently act on, so none were restored. pylint: 10.00/10.
2026-10-23 09:13:24 +02:00
KAMI 1db3cc0553 Merge pull request #1244 from Free-TV/fix/restore-working-channels
Restore working channels flagged Invalid, fix dead Hungarian streams
2026-10-23 09:06:27 +02:00
Kálmán „KAMI” Szalai 3e6687424c Add TV4, Cool and Film+ to Hungary from the same confirmed-live mirror
Same 141.94.193.53 host as the M1/M2/M5/Duna/RTL/TV2/ATV fixes in this
branch, per #1228. Re-tested all three live just now. TV4 is a genuine
free-to-air DVB-T2 channel; Cool and Film+ are RTL Group's
subscription-tier channels in official distribution, included here
since this mirror serves them without auth (same basis other
already-listed subscription channels in this repo are included on).
2026-10-23 09:04:47 +02:00
Kálmán „KAMI” Szalai ef189b70f3 Restore working channels flagged Invalid, fix dead Hungarian streams
Re-tested every URL below just now (curl + real HLS manifest body check)
before restoring, per issue #1226's finding that some Invalid rows have
working streams again:

- Italy: K2, Frisbee, Canale 58 — live again (closes #1205)
- Lebanon: ALWifak News TV, Arabica TV — live again
- Hungary: Hír TV — old onlinestream.live link now serves a player error;
  replaced with the working videa.hu relay
- Hungary: M1, M2/Petőfi TV, M5, Duna TV, RTL Klub, TV2, ATV — old
  88.212.15.19 links are dead; replaced with the 141.94.193.53 mirror
  URLs reported working in #1228 (verified live here too), moved back
  out of Invalid

Regenerated playlist.m3u8 and the per-country playlists via
make_playlist.py.
2026-10-23 08:52:44 +02:00
PlaylistBot 64b29cf593 Update Playlist (GitHub Actions) 2026-10-23 06:38:05 +00:00
KAMI fb104bb268 Merge pull request #1233 from jmartini89/fix-italy_epg_la5_hgtv
Hotfix: EPG ID for italian channels La5 and HGTV
2026-10-23 08:37:55 +02:00
PlaylistBot 41a3f7e5cc Update Playlist (GitHub Actions) 2026-10-23 06:37:31 +00:00
KAMI 1a2d10503b Merge pull request #1236 from jshaivitz-sys/patch-1
Add Botflix TV and Botflix Radioo official HLS streams
2026-10-23 08:37:19 +02:00
KAMI 94d61af506 Merge pull request #1237 from SoulmatelynchVFX/fix/bulgaria-dead-streams
Move dead Bulgaria streams to Invalid
2026-10-23 08:37:15 +02:00
KAMI fb400a4d6f Merge pull request #1242 from UnfocusedSpectator/fix-chile
chile.md Rearrangement
2026-10-23 08:37:12 +02:00
KAMI a043860a76 Merge pull request #1243 from antipopov/master
Add Ministerstvo Idey stream
2026-10-23 08:37:08 +02:00
UnfocusedSpectator 5bd9b3b9d1 Added the Geo-block checkmark to CHV Deportes 2026-10-23 01:53:37 -03:00
UnfocusedSpectator 79b3f58a2d Rearranged channels.
Added: CHV Deportes, Mega 2, Meganoticias.
Removed: UCL is an uruguayan channel so I removed it.
2026-10-23 01:41:41 -03:00
antipopov de72e78a45 Update russia.md Add Ministerstvo Idey stream
Added official educational live stream for channel "Министерство Идей" (Russia).
2026-10-22 17:05:45 +05:00
PlaylistBot a766b37104 Update Playlist (GitHub Actions) 2026-10-19 15:18:32 +00:00
KAMI 3fb13eb666 Merge pull request #1230 from Liquidrocks/patch-2
Added Nippon TV link - Update japan.md
2026-10-19 17:18:18 +02:00
Seal Wang 4d677a61e2 Move dead Bulgaria streams to Invalid 2026-10-19 10:29:06 +08:00
jshaivitz-sys 70caa4826f Add Botflix TV and Botflix Radioo official HLS streams 2026-10-18 19:01:29 -07:00
jmartini 4e217ae724 fixed epg id for italian channels la5 and hgtv 2026-10-18 12:33:25 +02:00
Liquidrocks bb1dd303d0 Update japan.md 2026-10-18 09:21:20 +02:00
Liquidrocks f9f30dff92 Added Nippon TV link - Update japan.md 2026-10-17 12:17:47 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5.5 73d61f8df0 Move dead Japan, Slovakia, Poland and Czech streams to Invalid
Addresses #1184, #1199, #1190, #1153.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-15 01:15:44 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5.5 0fe4f090b5 Finland: update MTV Uutiset Live stream URL (#1194)
Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-15 01:05:28 +02:00
Kálmán „KAMI” SzalaiandClaude Sonnet 5.5 f7223e6d37 Merge verified community fixes; regenerate playlists
Restore Pannon RTV and Putnok Városi TV, which are still live.

Co-Authored-By: Claude Sonnet 5.5 <[email protected]>
2026-10-15 00:57:45 +02:00
Kálmán „KAMI” Szalai 027b7d52fc Merge branch 'pr-1204' 2026-10-15 00:56:09 +02:00
Kálmán „KAMI” Szalai 108918f69e Merge branch 'pr-1219' 2026-10-15 00:56:09 +02:00
Kálmán „KAMI” Szalai c78a998e7a Merge branch 'pr-1201' 2026-10-15 00:56:09 +02:00
Kálmán „KAMI” Szalai 6eebe07312 Merge branch 'pr-1207' 2026-10-15 00:56:09 +02:00
Kálmán „KAMI” Szalai b15bf6aa0c Merge branch 'pr-1213' 2026-10-15 00:56:09 +02:00
Kálmán „KAMI” Szalai 68184aa6fe Merge branch 'pr-1217' 2026-10-15 00:56:09 +02:00
Kálmán „KAMI” Szalai ad72dda279 Merge branch 'pr-1221' 2026-10-15 00:56:09 +02:00
Seal Wang d3196d9010 Move broken Hungarian streams to Invalid 2026-10-13 10:03:15 +08:00
Seal Wang e25c4cdf29 Move broken CCTV-16 and FZTV-2 to Invalid (China) 2026-10-12 17:10:13 +08:00
Gerardo Zinno 62c5db50d4 Replace if check with mkdir exist_ok 2026-10-11 18:40:28 +02:00
Gerardo Zinno 48406cea03 Filter suffixes in list generator 2026-10-11 18:35:48 +02:00
Gerardo Zinno 091f40530a Use f-string instead of concat 2026-10-11 18:30:18 +02:00
Gerardo Zinno e4569f68bc Use Path instead of os.path 2026-10-11 18:25:00 +02:00
samethernet 7bbf8f0085 Fix NHK World Japan Link
Fix NHK World Japan Link, old link broken.
2026-10-11 14:50:32 +11:00
PlaylistBot 2efc0e64ea Update Playlist (GitHub Actions) 2026-10-10 02:09:41 +00:00
KAMI ff4a008e6f Merge pull request #1212 from telluroid/patch-4
Update hr channel url in germany.md
2026-10-10 04:09:31 +02:00
jmartini 1e8c2a69bd fixed italy 27 twentyseven EPG id 2026-10-09 22:36:18 +02:00
telluroid 73fd992d82 Update germany.md
Replacing the HR url with one that actually shows the program all day instead of just displaying a legal note.
2026-10-09 15:31:14 +02:00
ChannelCheckerBot f1cd57867c Channel check (fast) - 2026-10-06T18:18:29Z 2026-10-06 18:18:29 +00:00