Skip to content

Releases: slimture/dopeIPTV

v0.7.0

Choose a tag to compare

@github-actions github-actions released this 14 Jul 04:12

dopeIPTV 0.7.0

The timeshift & catch-up release: scrub back into a channel's archive on a
live timeline, pause live TV, or jump to a specific past programme — plus
a reminders manager, search everywhere, customizable keyboard
shortcuts
, and rock-solid video by default.

Highlights: live timeline to scrub the archive · DVR pause · play a specific past programme · archive-depth learning · reminders manager · category & left-column search · customizable keyboard shortcuts · software decode by default (hardware opt-in) · editable recordings.

Full release notes — click to expand

Timeshift, catch-up & DVR

  • Live timeline on timeshift channels — scrub back into the provider's archive and watch what already aired.
  • DVR-style pause — pause live TV and resume behind live; the player shows how far behind live you are and drops the LIVE tag the moment you pause.
  • Pick a specific past programme from the guide and play just that show, with a seek bar clamped to the programme's own length.
  • Archive-depth learning — the app learns how far back each channel really reaches, adapts the “go back” span to it, and recovers gracefully from over-deep requests instead of dropping the channel.
  • Catch-up from History, a Go-live button, amber timeshift markers, and arrow-key scrubbing (fine-seek inside a segment, Shift+arrow for a coarse step).
  • Per-channel reset — right-click a timeshift channel to clear its learned archive state.

Reminders & guide

  • Reminders manager — find, review and multi-delete programme reminders in one place.
  • Programme search across the whole guide — find a show by name anywhere in the EPG.
  • Configurable “upcoming programmes” in the detail pane (default 5, adjustable), plus a guide Close button and deeper EPG fetches.

Search everywhere

  • Category search — match category names and the channels inside them, with smart ranking.
  • Left-column search in Favorites, Watch Later, Watched, Recordings and History.
  • Jump-to-now-playing also selects the playing channel's category.

Keyboard & navigation

  • Customizable keyboard-shortcuts editor with sensible per-OS defaults.

Video & playback

  • Software decoding is now the default — like standalone mpv. Modern CPUs handle even 4K 10-bit HEVC/HDR comfortably, and it's immune to the GPU/driver render hazards that could black out hardware-decoded video with subtitles (e.g. the nvidia-open stack).
  • Hardware decoding is an opt-in setting (Settings → Playback → Video), with mpv's software fallback as a safety net for genuine decoder failures.
  • Video filters — optional deinterlace, sharpen and HDR tone-mapping, plus a Video menu in the in-player options.
  • Faster channel switching via a light stream probe for live zapping.

Recordings

  • Editable recording title & description, and recording stops cleanly when you switch the channel it's capturing.

Settings & polish

  • Playback settings are grouped and scrollable, and scrolling the page never changes a control.
  • Themed spin boxes (fixes the white-on-white “upcoming count” box) and a tidy Maintenance row.
  • Fixed an exit segfault on newer Python; on macOS, arrow-key scrubbing works and Picture-in-Picture stays floating; audio no longer goes silent after switching a movie to a TV channel.

dopeIPTV 0.6.4

A stability-and-housekeeping release: 4K plays smoothly, the app no longer
bloats or slows down over time
, and live TV recovers from drops on its own
— plus continue watching, EPG reminders, and a discreet update check.

Highlights: smooth 4K playback · caches that can't bloat over time · live auto-reconnect (with a toggle) · double-click to play TV · continue watching & reminders · discreet update badge.

Full release notes — click to expand

Smooth 4K & playback stability

  • Fixed the periodic 4K stutter. The resume-position save was rewriting the whole multi-MB settings file every 12 s — it now lives in its own small file, so playback is never hitched by it.
  • Fixed the video stutter when dragging the volume slider (and other quick settings): the big TMDB/Trakt caches shared that same file, so they've moved to a dedicated cache.ini and small writes are instant.
  • Hardware decoding on by default (hwdec=auto-copy-safe) for smooth 4K across GPUs, with DOPEIPTV_HWDEC / DOPEIPTV_DEMUX_MAX / DOPEIPTV_VIDEO_SYNC escape hatches for tinkerers.
  • Audio no longer goes silent after switching a movie to a TV channel (the audio track is reset per stream).

No bloat or slow-down over time

  • TMDB caches are now capped so months of browsing can't grow them without bound.
  • EPG guides are gzip-compressed on disk (hundreds of MB → tens) — both the raw guide and the parsed index.
  • Orphaned EPG caches are cleaned up at startup — guides for playlists you've removed no longer pile up (this alone can reclaim gigabytes).
  • New Settings → Playback → "Refresh guide now" and "Clear EPG cache".

Live TV

  • Live streams reconnect on drop instead of freezing on the last frame.
  • "Auto-reconnect live streams" toggle — turn it off on a single-connection/shared account so the app doesn't grab the connection back from another device.
  • Zap conveniences: a "last channel" key and type-a-number to jump.
  • Double-click to play a channel by default (single-click / arrow-key zapping is now an opt-in setting).
  • Account status panel: expiry, days left, and connections for the selected provider.

Continue watching & Recently added

  • Continue watching for partly-watched movies and episodes, with the series' artwork + name on episode rows — shown under both Movies and Series.
  • Recently added — newest Movies and Series first.

EPG & reminders

  • Programme reminders — get notified when a show starts, then tune straight in.
  • Clearer loading: a centred spinner and a label that names exactly what's loading.

Player extras

  • Next-episode button and auto-play the next episode at the end.
  • Sleep timer — stop playback after a chosen number of minutes (presets or a custom value).
  • Stats-for-nerds fixes (no more blank rows).

Trakt & Settings

  • Simpler Trakt connect (connect via browser).
  • Watched rows are named from Trakt's own title when TMDB has no match.

Polish & fixes

  • Discreet update badge on the Settings button when a newer release is out (once-a-day background check; opt out in Settings → Interface).
  • Sidebar rail collapses/expands smoothly within a single drag and snaps clean on release.
  • Version numbers realigned, a latent startup crash fixed, and debug scaffolding removed.

Full changelog: v0.6.3...v0.6.4

v0.6.4

Choose a tag to compare

@github-actions github-actions released this 11 Jul 21:48
75cd242

dopeIPTV 0.6.4

A stability-and-housekeeping release: 4K plays smoothly, the app no longer
bloats or slows down over time
, and live TV recovers from drops on its own
— plus continue watching, EPG reminders, and a discreet update check.

Highlights: smooth 4K playback · caches that can't bloat over time · live auto-reconnect (with a toggle) · double-click to play TV · continue watching & reminders · discreet update badge.

Full release notes — click to expand

Smooth 4K & playback stability

  • Fixed the periodic 4K stutter. The resume-position save was rewriting the whole multi-MB settings file every 12 s — it now lives in its own small file, so playback is never hitched by it.
  • Fixed the video stutter when dragging the volume slider (and other quick settings): the big TMDB/Trakt caches shared that same file, so they've moved to a dedicated cache.ini and small writes are instant.
  • Hardware decoding on by default (hwdec=auto-copy-safe) for smooth 4K across GPUs, with DOPEIPTV_HWDEC / DOPEIPTV_DEMUX_MAX / DOPEIPTV_VIDEO_SYNC escape hatches for tinkerers.
  • Audio no longer goes silent after switching a movie to a TV channel (the audio track is reset per stream).

No bloat or slow-down over time

  • TMDB caches are now capped so months of browsing can't grow them without bound.
  • EPG guides are gzip-compressed on disk (hundreds of MB → tens) — both the raw guide and the parsed index.
  • Orphaned EPG caches are cleaned up at startup — guides for playlists you've removed no longer pile up (this alone can reclaim gigabytes).
  • New Settings → Playback → "Refresh guide now" and "Clear EPG cache".

Live TV

  • Live streams reconnect on drop instead of freezing on the last frame.
  • "Auto-reconnect live streams" toggle — turn it off on a single-connection/shared account so the app doesn't grab the connection back from another device.
  • Zap conveniences: a "last channel" key and type-a-number to jump.
  • Double-click to play a channel by default (single-click / arrow-key zapping is now an opt-in setting).
  • Account status panel: expiry, days left, and connections for the selected provider.

Continue watching & Recently added

  • Continue watching for partly-watched movies and episodes, with the series' artwork + name on episode rows — shown under both Movies and Series.
  • Recently added — newest Movies and Series first.

EPG & reminders

  • Programme reminders — get notified when a show starts, then tune straight in.
  • Clearer loading: a centred spinner and a label that names exactly what's loading.

Player extras

  • Next-episode button and auto-play the next episode at the end.
  • Sleep timer — stop playback after a chosen number of minutes (presets or a custom value).
  • Stats-for-nerds fixes (no more blank rows).

Trakt & Settings

  • Simpler Trakt connect (connect via browser).
  • Watched rows are named from Trakt's own title when TMDB has no match.

Polish & fixes

  • Discreet update badge on the Settings button when a newer release is out (once-a-day background check; opt out in Settings → Interface).
  • Sidebar rail collapses/expands smoothly within a single drag and snaps clean on release.
  • Version numbers realigned, a latent startup crash fixed, and debug scaffolding removed.

Full changelog: v0.6.3...v0.6.4

v0.6.3

Choose a tag to compare

@github-actions github-actions released this 11 Jul 06:08
431b65e

dopeIPTV 0.6.3

A stability-and-polish release: keyboard shortcuts across the player and
EPG guide, a calmer progress indicator, and a batch of playback
stability
fixes — live streams reconnect on their own, a frozen picture
recovers, and moving the window no longer drops the stream. Behind the scenes
the app is now Flathub-ready (fully offline build) with fresh store
screenshots.

Highlights: keyboard shortcuts (player + EPG) · steadier progress indicator · auto-reconnect & stall recovery for live streams · no stream drop when moving the window · Flathub offline packaging.

Full release notes — click to expand

Keyboard shortcuts

  • Global: Ctrl+G opens the EPG guide, Ctrl+B toggles the sidebar rail, Ctrl+Shift+M toggles focus mode.
  • While the player is up: M mute, P Picture-in-Picture, R record, I stream stats, / zap channels, / nudge the volume. Shortcuts stand down while you're typing in a search box.
  • In the EPG grid: N jumps to now, P to the playing channel, Enter plays the selected programme.
  • The full list lives in the Keyboard shortcuts section of the README.

Progress indicator

  • The loading strip is now a steady indeterminate indicator instead of a percentage bar that could stick at "100%" or hang around after a load finished.
  • A watchdog clears it automatically if a background job never reports back, so it can't get stuck on screen.

Playback stability

  • Auto-reconnect — a live stream that drops on a network hiccup now retries quietly and keeps playing, instead of failing with "loading failed".
  • Stall recovery — a watchdog notices a frozen picture (mpv idling mid-stream) and recovers it.
  • No drop on window move — moving or reparenting the window (e.g. dragging between monitors) no longer tears down and rebuilds the video, which previously showed up as a stream failure.
  • Longer network timeouts and mpv reconnect options for flakier providers.

Packaging

  • Flathub-ready — the Flatpak manifest now builds fully offline from pinned, vendored Python wheels (only the running app needs the network, for streaming), plus a submission guide in packaging/flatpak/FLATHUB.md.
  • Fresh store screenshots and an updated capture guide.

Full changelog: v0.6.2...v0.6.3

v0.6.2

Choose a tag to compare

@github-actions github-actions released this 10 Jul 14:57
e6a4f2d

dopeIPTV 0.6.2

A polish release: a collapsible sidebar, custom colours across the app, a
smarter M3U/EPG setup, and a batch of fixes — Picture-in-Picture no longer
quits the app, the colour picker no longer freezes, and the mini player keeps
its size after fullscreen.

Highlights: collapsible icon-rail sidebar · focus mode · custom colours for nav, categories, items & favourite folders · M3U auto-EPG · EPG grid marks timeshift channels & flags the playing one · click the logo to jump to what's playing.

Full release notes — click to expand

Sidebar & layout

  • Collapsible sidebar — fold it down to a slim icon rail with the button or Ctrl+B, or just drag its divider: inward collapses to the rail, outward expands it again. You keep the TV/Movies/Series navigation as icons and reclaim the width for the content — handy on small screens.
  • Solo category — a small disclosure arrow next to "Categories" collapses the list to only the active category (tidy for screenshots), without touching the navigation.
  • Focus mode — the button (or Ctrl+Shift+M) hides the whole content list for a rail-plus-player layout. A slim arrow strip on the player's edge brings the list straight back, so it can never get lost.
  • The content list now has a minimum width, so dragging a divider can't accidentally hide it.
  • Click the logo at the top of the sidebar to jump straight to whatever's playing — it switches section, opens "All", and selects the row.

Colours

  • Left-column entries (TV … History) can each be given their own text and background colour — right-click an entry.
  • Categories can be coloured too; a category's colour tints its own row in the left column.
  • Individual channels, movies and series can be given a personal text/background colour from their right-click menu.
  • Favourite folders can be coloured, and that colour applies to every favourite in the folder — a quick way to colour-code a whole group.
  • Every colour choice has a Reset, and colours persist between sessions.

M3U & EPG

  • Automatic EPG for M3U playlists — dopeIPTV now reads the url-tvg / x-tvg-url guide URL from a playlist's #EXTM3U header, so a plain M3U URL brings its programme guide with nothing extra to configure (an explicit per-playlist EPG URL still wins).
  • Gzipped XMLTV guides (.xml.gz) are now decompressed transparently.
  • The EPG timeline grid flags the channel you're watching (with a "Playing" button to jump back to it), marks channels that have catch-up with a ⏪, outlines the programme you pick, and offers "Play this programme" for a finished slot on a timeshift channel.

Convenience

  • Refresh playlist is now one right-click away on the TV / Movies / Series entries in the left column.

Fixes

  • Picture-in-Picture — pressing the window's close button while in PiP now drops back to the normal mini player instead of quitting the whole app.
  • Fullscreen / PiP — the panel widths are restored on the way out, so the mini player no longer comes back stretched wider than before.
  • Colour picker — no longer freezes the app on some Linux setups (it now always uses the in-app dialog).
  • Keep your place — opening Manage categories, or recolouring a category, no longer snaps the category list back to the top; your selection and scroll position stay put.
  • The version shown in About (and in the artifact filenames) is correct again.

Full changelog: v0.6.0...v0.6.2

v0.6.1

Choose a tag to compare

@github-actions github-actions released this 10 Jul 14:28
878872c

dopeIPTV 0.6.1

A polish release: a collapsible sidebar, custom colours across the app, a
smarter M3U/EPG setup, and some important fixes (Picture-in-Picture no longer
quits the app, the colour picker no longer freezes).

Highlights: collapsible icon-rail sidebar · focus mode · custom colours for nav, categories, items & favourite folders · M3U auto-EPG · EPG grid flags the playing channel · PiP-close & colour-picker fixes.

Full release notes — click to expand

Sidebar & layout

  • Collapsible sidebar — fold it down to a slim icon rail with the button or Ctrl+B, or just drag its divider: inward collapses to the rail, outward expands it again. You keep the TV/Movies/Series navigation as icons and reclaim the width for the content — handy on small screens.
  • Solo category — a small disclosure arrow next to "Categories" collapses the list to only the active category (tidy for screenshots), without touching the navigation.
  • Focus mode — the button (or Ctrl+Shift+M) hides the whole content list for a rail-plus-player layout. A slim arrow strip on the player's edge brings the list straight back, so it can never get lost.
  • The content list now has a minimum width, so dragging a divider can't accidentally hide it.

Colours

  • Left-column entries (TV … History) can each be given their own text and background colour — right-click an entry.
  • Categories can be coloured too; a category's colour tints its own row in the left column.
  • Individual channels, movies and series can be given a personal text/background colour from their right-click menu.
  • Favourite folders can be coloured, and that colour applies to every favourite in the folder — a quick way to colour-code a whole group.
  • Every colour choice has a Reset, and colours persist between sessions.

M3U & EPG

  • Automatic EPG for M3U playlists — dopeIPTV now reads the url-tvg / x-tvg-url guide URL from a playlist's #EXTM3U header, so a plain M3U URL brings its programme guide with nothing extra to configure (an explicit per-playlist EPG URL still wins).
  • Gzipped XMLTV guides (.xml.gz) are now decompressed transparently.
  • The EPG timeline grid flags the channel you're currently watching, and a "Playing" button jumps the board back to it after you've scrolled down a long line-up.

Convenience

  • Refresh playlist is now one right-click away on the TV / Movies / Series entries in the left column.

Fixes

  • Picture-in-Picture — pressing the window's close button while in PiP now drops back to the normal mini player instead of quitting the whole app.
  • Colour picker — no longer freezes the app on some Linux setups (it now always uses the in-app dialog).
  • Keep your place — opening Manage categories, or recolouring a category, no longer snaps the category list back to the top; your selection and scroll position stay put.

Full changelog: v0.6.0...v0.6.1

v0.6.0

Choose a tag to compare

@github-actions github-actions released this 10 Jul 11:37
2202e8a

dopeIPTV 0.6.0

A big feature release focused on getting started, Trakt, the EPG, and polish.

Getting started

  • Try it without a provider — a "🎬 Demo channels" button on the welcome
    screen loads a few free public test streams so you can exercise the whole
    app before entering any credentials.
  • M3U playlists — alongside Xtream Codes you can now add any free/legal
    .m3u playlist URL (e.g. iptv-org). Pick the type in the playlist dialog or
    the onboarding wizard.
  • Onboarding wizard — full in-window welcome with language pick, a short
    feature tour, and Esc to dismiss.

Trakt — one click, zero setup

  • Sign in with Trakt now opens your browser, you click "Yes", and you're
    connected — no codes, no manual API keys (dopeIPTV ships its own registered
    app; power users can still bring their own in Settings).

Watched

  • Movies and episodes are auto-marked watched once you've seen ~90%, in
    the local layer — the badge appears without Trakt, and syncs up to Trakt
    when connected.

Favorites

  • Unified folders across Channels, Movies and Series: a plain
    "Add to favorites", an "Add to folder" submenu, and create/rename/remove
    folders from the sidebar's right-click menu.

EPG

  • New horizontal timeline grid: colour-coded channel rows, programmes as
    blocks, a live "now" line, and pinned time header + channel column. Click to
    select, double-click to play, right-click to record a programme.
  • Timeshift channels open the board up to 48h into the past with catch-up
    playback
    of finished programmes; a "Now" button jumps back to the present.
  • From Favorites the guide is scoped to your favorite channels.

Player & windows

  • Adaptive first-run window sizing to your actual display; a larger,
    letterbox-free mini player that scales with the screen.
  • Picture-in-Picture always-on-top on Wayland (via the title-bar menu),
    plus an opt-in "Run via X11 backend" for a frameless, always-on-top PiP with
    right-click-on-video.
  • Opening an external player (mpv/VLC) now asks first if the mini player is
    busy, so it won't trip single-connection accounts.

Other

  • About dialog: version, an automatic update check that shows the newest
    release's notes and a download link, and TMDB attribution.
  • Recordings: a total recordings-folder size cap that refuses new
    recordings once reached.
  • Tighter section headers, clearer EPG scrollbars, and lower memory use
    (bounded metadata/artwork caches).

Full Changelog: v0.5.0...v0.6.0

v0.5.0

Choose a tag to compare

@github-actions github-actions released this 09 Jul 22:56
b5ed8ed
Docs: move supplementary docs under docs/

Keep README.md, LICENSE and AGENTS.md at the repo root (the conventional
landing/licence/agent-tool locations) and move the rest of the developer
documentation into docs/:

  docs/ARCHITECTURE.md
  docs/DEVELOPER_NOTES.md
  docs/FEATURES.md
  docs/THIRD-PARTY-LICENSES.md

Update the README and AGENTS cross-links to the new paths. No build or
packaging file referenced these docs, so nothing else changes.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Pa1PFo7EpSA5A3brHTPmEs

v0.4.4

Choose a tag to compare

@github-actions github-actions released this 09 Jul 22:09
7a09526
Bump to 0.4.4

Ship the improvements that landed after the v0.4.3 tag: the EPG-index /
image-cache memory cuts, the ARM64 Linux builds, and the main-window
refactor. Move the memory notes from the 0.4.3 release entry (which shipped
without them) to a new 0.4.4 entry.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01Pa1PFo7EpSA5A3brHTPmEs

v0.4.3

Choose a tag to compare

@github-actions github-actions released this 09 Jul 19:28
86341dc

First public release

DopeIPTV pre-release 0.0.1-alpha

Pre-release

Choose a tag to compare

@slimture slimture released this 05 Jul 09:37
cbd6bb5

Follow-up features on top of the threading fixes from PR #1.
Key Changes

Movie & series details in the detail panel (previously empty outside live mode):

Movies: fetches get_vod_info and shows plot, genre, cast, director, release date, duration, and rating
Series: same via get_series_info; episodes show their own plot directly
Responses are cached per title; the EPG area always shows a loading note, a "no EPG" message, or an error message instead of empty space

EPG fallback chain and skewed-timestamp tolerance:

get_short_epg → get_simple_data_table → the provider's XMLTV guide (xmltv.php)
New XmltvGuide downloads and indexes the XMLTV feed once per session in a background thread, matching channels by epg_channel_id with a normalized-name fallback; only entries newer than 3 hours back are kept to bound memory
XMLTV entries are delivered in the Xtream entry format but flagged _plain so titles aren't mistakenly base64-decoded
If all EPG entries lie in the past (server-side timezone bug), the latest entries are shown anyway with dates and a note; upcoming programs are sorted by start time

Favorites in user-defined groups:

New ⭐ Favoriter tab; groups appear in the category list, "Alla" shows the deduplicated union
Right-click a channel → "Lägg till i favoritgrupp" (existing group or a new one via dialog); in the favorites view, right-click to remove a channel or a whole group
Stored as JSON in QSettings; playback and EPG work exactly like live mode

Verification

Exercised headless (offscreen QPA) against a mock Xtream server covering: movie info rendering, all three EPG fallback steps, past-only timestamps, a channel with no EPG anywhere, and the favorites flow (add, dedupe, group view, stream URL, removal, persistence).