1f665dcb11
Authenticate browser media with durable HttpOnly login cookies
...
Adapted cookie, origin, URL validation and secret handling from MikaelKW/nodecast-tv-plus. Protect API roles, revoke logins across restart, preserve existing accounts, and isolate transcode sessions by account.
Co-authored-by: Mikael <mikaelkwessel@gmail.com >
2026-10-12 16:53:15 -07:00
bd8365efc8
Add container readiness checks and exclude local state from images
...
Adapted from MikaelKW/nodecast-tv-plus readiness and container context work.
Co-authored-by: MikaelKW <87399352+MikaelKW@users.noreply.github.com >
2026-10-12 16:39:31 -07:00
4ed22af9e5
Preserve the guide until a complete EPG refresh can activate
...
Adapted from MikaelKW/nodecast-tv-plus commits c267d98d734753a09b08d267c8ec2c3fa11c33f5, b761690bac7626a3cc5ddf754d96b14a02f506fe, and 5524fdaffed5c6a44ae69474e7eaa2f18d428c75. Preserve every parser batch, decode gzip once, and retain live channel metadata.
Co-authored-by: Mikael <mikaelkwessel@gmail.com >
2026-10-12 16:16:48 -07:00
788d43a4cb
Apply AAC remux filters only to matching audio tracks
...
Adapted from MikaelKW/nodecast-tv-plus commit 25f7cb636a07a3efb2c409ff182920ae0fbe01bd.
Co-authored-by: Mikael <mikaelkwessel@gmail.com >
2026-10-12 16:11:34 -07:00
e646e36869
fix(proxy): stream binary media with cancellation and bounded HLS buffers
...
Adapted from MikaelKW/nodecast-tv-plus commit 011b634417b2ecd2a2844df9808b42de831ba194. Use awaited pipeline, abort upstream on disconnect, avoid retries after headers, preserve real range support, and rewrite bounded manifests using relative proxy paths. Cover interrupted streams, first-byte delivery, ranges, redirects, split signatures, and invalid inputs.
Co-authored-by: Mikael <mikaelkwessel@gmail.com >
2026-10-12 16:06:52 -07:00
9fff0474e1
fix(remux): preserve encrypted HLS and test protocol restrictions
...
Allow nested crypto for encrypted HTTP HLS while rejecting top-level protocol wrappers and local-file access. Replace the HLS-only http_persistent option with HTTP multiple_requests across probe/remux/transcode paths, fixing the raw HTTP regression introduced by #124 . Add real FFmpeg regression tests and PR CI.
2026-10-12 15:41:13 -07:00
f5e2c77d25
Fix ffmpeg redirects. Fix max resolution setting.
2026-04-24 15:19:19 -06:00
72e14dca57
feat: enhance plugin system with async support and lifecycle hooks & reverted PR #79 due to Node.js v24 stream compatibility issues
2026-02-05 01:42:40 -08:00
bfc80738f4
Refactor parseStreaming to use pendingBatches array
...
Was running into an issue where epg wouldn't process passed the first batch. Refactored the batching to use an array and added backpressure to keep memory usage low.
2026-01-31 19:31:03 -05:00
3272b19177
fix: updated hardware scale filters to explicitly output 8-bit format (nv12), removed conflicting -pix_fmt flag
2026-01-19 15:13:39 -08:00
056555c7b4
fix: hardware transcoding 10-bit error and EPG navigation bug (Issues #61 , #63 )
2026-01-19 14:36:53 -08:00
059cfecdcc
feat: implement 4k upscaling
2026-01-19 01:45:44 -08:00
237d11cf00
feat: implement hardware and software upscaling
2026-01-19 01:34:45 -08:00
b890d30253
feat: add home page with favorites, resume playback, recently added VOD
2026-01-18 14:04:40 -08:00
bf111e1fca
feat: add home page with resume functionality and recently added VOD
2026-01-18 03:08:08 -08:00
c4cc8ef63c
fix: added format=nv12 to scale_vaapi filter and -profile:v main to ensure encoder compatibility
2026-01-17 18:57:51 -08:00
8304e7abe1
build: simplified the dockerfile to install ffmpeg via apt
2026-01-17 18:38:15 -08:00
d85ed753ab
fix: resolve 'auto' encoder to detected hardware and add VAAPI drivers to Dockerfile
2026-01-17 17:54:50 -08:00
c1f8077438
feat: add smart audio copy and audio mix presets for configurable 5.1 downmixing
2026-01-17 13:31:13 -08:00
9919975663
Refine audio downmix to ITU standards
2026-01-17 03:31:33 -08:00
2c34359b2c
feat: Implement hardware-accelerated HLS transcoding with granular controls, smart stereo downmixing, and robust support for MKV and 10-bit HEVC playback.
2026-01-17 03:07:16 -08:00
efcf14a545
feat: implement GPU encoder pipelines
2026-01-17 01:39:26 -08:00
f0c1393ce0
feat: add hardware detection service for GPU-accelerated transcoding (NVIDIA/AMD/Intel/VAAPI)
2026-01-17 01:00:37 -08:00
196b9520b7
feat: add large M3U playlist warning (50K+ channels)
2026-01-16 17:00:57 -08:00
aa0fb7b956
fix: m3u sync stale purge bug
2026-01-14 17:32:19 -08:00
60010cc734
fix: race condition where race condition where loadMovies/loadSeries was called before
...
hiddenCategoryIds was populated
2026-01-14 15:25:04 -08:00
0a013ec05f
fix: handle null stream names during Xtream sync ( #50 )
2026-01-14 14:48:31 -08:00
6834849cad
chore: updated readme nginx example
2026-01-12 16:50:12 -08:00
b81ce4856e
fix: store tvgId during M3U sync process for EPG matching ( #44 )
2026-01-12 14:26:54 -08:00
a86f9ca878
feat: add M3uXtreamAdapter service for unified API handling
2026-01-11 23:52:45 -08:00
e8e6ba27d7
Implemented streaming parsers for M3U and EPG to reduce memory usage
2026-01-07 23:09:23 -08:00
b119b37b87
Updated sync timer logging
2026-01-04 02:01:08 -08:00
a00082b0ef
Implemented virutal scrolling for epg, optimized database batching, moved sync timer to server
2026-01-04 00:46:51 -08:00
ca87a5f143
Misc fixes for syncService, remux and proxy
2026-01-04 00:18:58 -08:00
1193e07017
Updated readme
2026-01-03 21:28:36 -08:00
8805ddbc13
Refactored code to use sqlite for channel, epg and vod data
2026-01-03 21:07:18 -08:00
d63c9c37d7
Refactored server/db.js and all routes to use asynchronous fs operations, refactored m3uParser and epgParser to use streaming (via readline and sax) to prevent errors with large files, updated server/routes/proxy.js to use native stream piping for images and video, reducing latency and memory overhead
2025-12-30 00:34:55 -08:00
57b0f7ba81
CORS error detection expansion, binary segment handling, EPG magic byte detection
2025-12-28 03:21:27 -08:00
79d84aa64b
Added xml.gx support for EPG
2025-12-27 23:22:37 -08:00
bb5dc89311
Updated cacheing to use persistent json cache
2025-12-27 21:16:17 -08:00
4f9ec55874
Initial commit
2025-12-27 14:16:40 -08:00