Commit Graph

27 Commits

Author SHA1 Message Date
e2249154a5 feat(live): paginate catalog and search server-side (#49)
Load Live channels from a filtered SQLite cursor API, keep navigation and guide consumers working across pages, and retain the QA reproduction coverage.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-10-22 22:43:29 +02:00
53b65b6a0d Cancel superseded Enigma2 startup and select programs throughout playback 2026-10-13 17:56:26 -07:00
700f63da90 Add Enigma2/OpenWebif M3U support: program mapping and zap-before-streaming
- Parse #EXTVLCOPT:program=N from M3U playlists (both full and streaming
  parsers, per channel, strict mode) and store it on playlist items
- Transcode multi-program MPEG-TS streams by mapping only the selected
  program's first video and audio stream (DVB teletext/subtitles in the
  program otherwise make FFmpeg fail to produce HLS)
- Optional per-source "zap before streaming" with configurable delay:
  POST /api/openwebif/zap takes sourceId + streamId, requires an enabled,
  zap-enabled M3U source containing that channel, derives the receiver
  from the configured source URL (never from the client), validates the
  Enigma2 service reference, uses a timeout without redirects and does
  not echo the receiver response
- Live TV: Stop button, and stop playback when leaving the page
- Tests for ordinary and program-tagged playlists and the zap endpoint

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
2026-10-13 23:01:38 +01:00
7006513aaf fix: remove deduplication logic from channel list 2026-01-31 10:59:28 -08:00
d6eda66360 fix: favorites arrow navigation stays in same group, add cross-player stop on new playback 2026-01-18 00:58:57 -08:00
04fcabda84 refactor: use Xtream API endpoints for M3U channel loading 2026-01-12 00:02:16 -08:00
5f24d7e264 perf: collapse groups by default and defer channel rendering in channel list 2026-01-11 16:08:20 -08:00
d96bb7c776 fix: replace spread operators with concat to handle massive M3U playlists 2026-01-11 12:48:03 -08:00
8805ddbc13 Refactored code to use sqlite for channel, epg and vod data 2026-01-03 21:07:18 -08:00
d5ebd270dc Added EPG refresh timer updateVisibleEpgInfo method to ChannelList 2026-01-01 14:20:45 -08:00
d1bfd1b9e7 Added server-side saving for settings 2025-12-31 15:35:37 -08:00
3fffdddf4b Added proxy route for channel icons and other images, updated readme 2025-12-29 23:04:31 -08:00
e4ae0e9b69 prevent null channel names from breaking search filter 2025-12-29 16:26:03 +01:00
9ef9c847fc Updated expand and collapse icons 2025-12-28 22:25:26 -08:00
29a7996ecd Implemented SVG icons 2025-12-28 21:27:21 -08:00
44365c4dad Implemented focus for active channel in channel list 2025-12-28 20:15:26 -08:00
e8bfb56c8b Implemented unique renderId for channel navigation 2025-12-28 19:50:12 -08:00
b504faf909 Implemented cache clearing in channel list 2025-12-28 19:35:10 -08:00
3b460591e0 Updated channel list context menu 2025-12-28 19:01:10 -08:00
15098ad6ed Fixed hidden groups consuming batch slots 2025-12-28 17:52:40 -08:00
2ebe52685f Changed content manager group behavior and added save button 2025-12-28 16:36:58 -08:00
dc15e1f396 Fixed channel ID format mismatch 2025-12-28 16:14:28 -08:00
4e398bbe38 Reduce batch size for channel list, memoize EPG, virtualized source manager 2025-12-28 15:43:45 -08:00
1f81323f16 Fixed placeholder.png fetch error 2025-12-28 04:01:43 -08:00
d251488f5f Added optional chaining (?.) and nullish coalescing (??) to handle cases 2025-12-28 03:33:12 -08:00
762131f939 Fixed issue with favorites list not snycing in some circumstances 2025-12-27 21:49:22 -08:00
4f9ec55874 Initial commit 2025-12-27 14:16:40 -08:00