Releases: mhdzumair/mediaflow-proxy
Release list
2.4.9
🚀 MediaFlow 2.4.9 Released
This release introduces a powerful forward proxy for debrid services, a complete overhaul of the Maxstream bypass pipeline, and critical fixes for HLS streaming stability.
✨ New Features & Enhancements
- 🌐 New Forward Proxy Endpoints: Added
/proxy/forwardand/proxy/ip. This allows debrid API calls to originate from MediaFlow's IP, solving "IP binding" issues. Includes SSRF protection, header stripping, and{mediaflow_ip}placeholder substitution. - 🔓 Advanced Maxstream (uprot.net) Bypass: A total rewrite of the Maxstream extractor to support Italian aggregators (CB01, EuroStreaming). It now features a multi-engine OCR ensemble (ddddocr, Tesseract, and opt-in Cloudflare Workers AI) to solve captchas with up to 90% accuracy.
- 📺 New Extractor: Added support for StreamHG (@UrloMythus).
- 🤖 OCR Ensemble: New optional
[maxstream]extra for better captcha solving, including a lazy-loaded persistent URL cache to skip captchas entirely on known links.
🛠️ Bug Fixes
- 🎞️ HLS Multi-Period Trimming: Fixed a critical issue where multi-period MPDs caused stalls and sequence gaps in HLS players. Segments are now correctly merged and trimmed across period boundaries.
- ⚡ Transcode HEAD Request Fix: Resolved 404 errors when upstreams (like AIOStreams) return
405 Method Not Allowedon HEAD requests. The system now correctly falls back to a Range GET to determine file size. - 🔐 Filemoon Decryption: Replaced the broken JS evaluation with a robust API-based AES-256-GCM decryption method (@newman2x).
- 🔄 Doodstream Improvements: Added detection for JS-based redirects and optimized Cloudflare R2 storage shortcuts to bypass unnecessary token suffixing.
- 📡 HLS Transport Routes: Fixed
handle_hls_stream_proxyto properly honorTRANSPORT_ROUTESconfigurations (@spawntty). - 🔍 F16Px & Embeds: Updated F16Px extractor and improved embed ID extraction and request headers (@GLlgGL).
📖 Documentation Updates
- ☁️ Managed Deployment: Added ElfHosted as a standardized managed deployment option in the README (@funkypenguin).
- 📚 Forward Proxy Guide: Added comprehensive documentation for
/proxy/forwardusage, configuration, and environment variables (PUBLIC_IP,FORWARD_ALLOWED_HOSTS, etc.).
🤝 Contributors
A huge thank you to our contributors for this release:
@GLlgGL, @funkypenguin, @newman2x, @Pieropapamonello, @spawntty, @UrloMythus, and @mhdzumair.
📄 Full Changelog
For a detailed list of all changes, visit the Full Comparison
2.4.8
🚀 MediaFlow 2.4.8 Released
This release introduces a high-performance alternative for resource-constrained environments, improves playlist handling flexibility, and streamlines our deployment workflows.
✨ New Features & Enhancements
- 🚀 High-Throughput Alternative: Introduced support and documentation for MediaFlow Proxy Light. This version is optimized for constrained hardware, offering significantly lower memory usage and higher throughput.
- 🛠️ Enhanced Playlist API: Updated
rewrite_m3u_links_streamingandasync_generate_combined_playlistwith new parameters, allowing for more granular control over how streams are processed and handled. - ⚙️ CI/CD Improvements: Added manual trigger support (
workflow_dispatch) to GitHub Actions, enabling more flexible releases with custom tags and improved Docker build automation.
📖 Documentation Updates
- 📊 Performance Benchmarks: Added a new section to the README and official docs comparing performance metrics between the standard MediaFlow Proxy and the new "Light" implementation.
- 📑 API Refinement: Improved documentation for the playlist proxy handler, providing clearer guidance on query parameters and their impact on stream processing.
🤝 Contributors
A huge thank you to our contributors for this release:
@mhdzumair
📄 Full Changelog
For a detailed list of all changes, visit: 2.4.7...2.4.8
2.4.7
🚀 MediaFlow 2.4.7 Released
MediaFlow 2.4.7 introduces significant improvements to streaming efficiency, a new EPG proxy service, and enhanced protection bypass mechanisms for a smoother user experience.
🌟 New Features & Enhancements
- 📺 EPG Proxy with Caching: Introduced a new EPG Proxy endpoint to fetch and cache XMLTV data. Features a configurable TTL (defaulting to 1 hour) to reduce upstream load and improve performance.
- ⚡ Streaming & DRM Efficiency: Enhanced
SegmentBasesupport to allow per-fragment segment requests and improved async streaming for DRM-protected content. This significantly improves seek efficiency and reduces unnecessary large file downloads. - 🏙️ New City Extractor: Added support for the
cityvideo host for expanded content access. - 🛡️ Improved Cloudflare Bypass: Integrated Byparr for DoodStream to bypass Cloudflare protection more reliably.
- 🔑 Persistent API Password: The URL generator and speedtest pages now utilize
localStorageto remember your API password, removing the need to re-enter it across different sessions. - 🔄 Vavoo Extractor Refactor: Updated the VavooExtractor to dynamically resolve endpoints based on URL type for better reliability.
- 🌐 Unified Proxy Handling: Centralized proxy logic in the
BaseExtractorto ensure consistent proxy usage across DoodStream, LuluStream, Supervideo, and Uqload.
🛠️ Bug Fixes
- 🩹 Vixcloud Support: Fixed issues with the Vixcloud extractor to restore functionality.
- 🧹 DLHD Removal: Removed the deprecated DLHD extractor and associated references to streamline the codebase.
- ❗ Clearer Error Messages: Improved error reporting across multiple extractors (City, LuluStream, Uqload) to help users diagnose extraction failures quickly.
📚 Documentation Updates
- 📖 Updated usage guides to include parameters for the new EPG Proxy.
- 📝 Enhanced URL generator documentation to reflect new host options and proxy settings.
🤝 Contributors
A huge thanks to our contributors for their help with this release:
@GLlgGL, @UrloMythus, GSTAR, Urlo30, and mhdzumair.
📄 Full Changelog
For a detailed list of every commit, visit the full changelog.
2.4.6
🚀 MediaFlow 2.4.6 Released
This release brings significant improvements to stream extraction reliability, protocol handling for better seeking, and the launch of our official documentation site.
🛠 Bug Fixes & Improvements
- 📡 Enhanced Sportsonline Reliability: Major overhaul of the Sportsonline extractor to improve domain detection, hostname hardening, and cache safety.
- 🎬 DLHD Extraction Upgrade: Improved support for
dlstreamsflow and relative key proxying, ensuring more resilient playback for DLHD sources. - 🔑 Vavoo Login Fix: Resolved issues with the new Vavoo login requirements to restore access.
- ⏯️ Partial Content (206) Fixes: Optimized streaming headers, including "Accept-Ranges" and "Content-Range" logic, to improve seeking performance and upstream compatibility.
- 🐳 Docker & Deployment Tweaks: Refined Docker and Gunicorn configurations for better stability across environments like Heroku.
📚 Documentation & Developer Experience
- 📖 New Documentation Site: Launched a dedicated documentation portal powered by MkDocs, featuring comprehensive guides for installation, features, and community contribution.
- 🤖 Auto-Deployment: Implemented GitHub Actions for seamless documentation updates.
- ✨ Code Quality: Applied formatting fixes and updated project dependencies for a cleaner codebase.
🤝 Contributors
A huge thank you to everyone who contributed to this release:
@spawntty, @pcarrasqueira, @qwertyuiop8899, and @mhdzumair.
📄 Full Changelog
For a detailed list of every commit in this release, view the Full Changelog.
2.4.5
🚀 MediaFlow 2.4.5 Released
✨ New Features & Enhancements
- 📱 Enhanced Telegram Handling: Major upgrade to Telegram media processing. You can now resolve media using
chat_idanddocument_iddirectly. - ⚡ Performance Caching: Introduced Redis caching for
document_idtomessage_idmappings, significantly speeding up media retrieval. - 🏗️ Expanded Architecture Support: Added official support for
linux/arm/v7platforms in Docker builds, improving compatibility with older hardware and specific IoT devices. - ⚙️ Advanced Configuration: New settings for Telegram document scanning limits and cache TTL (Time To Live) are now available for better fine-tuning.
🐛 Bug Fixes
- 🔤 Unicode Filename Support: Fixed a critical issue to ensure Cyrillic and other Unicode characters are correctly handled within Telegram routes.
- 📺 Vavoo Integration: Updated the Vavoo provider to resolve recent connectivity issues.
- 🛠️ Build Stability: Fixed specific errors occurring during the ARMv7 Docker build process.
🤝 Contributors
A big thank you to the contributors who made this release possible:
@IuraHD, @CKGrafico, @qwertyuiop8899, and @mhdzumair.
📄 Full Changelog:
2.4.4
🚀 MediaFlow 2.4.4 Released
This update focuses on significant performance optimizations, streaming stability for DASH protocols, and critical fixes for HLS authentication.
🚀 New Features & Enhancements
- ⚡ DASH Prebuffering & Live Stability: Major enhancements to DASH streaming, including new configuration options for player lock timeouts and concurrent prefetch downloads. Improved MPD live playlist logic to ensure stable media sequences and better performance during live streams (#87).
- 📉 Optimized Startup & Resource Usage: Implemented lazy loading for optional integrations like Acestream and Telegram. This refactor prevents unnecessary CPU spikes on startup and ensures resources are only used when features are enabled.
- ⚙️ Advanced Streaming Control: Added configurable timeouts and concurrency limits for prebuffering to give users finer control over their streaming experience.
🛠️ Bug Fixes
- 🔒 HLS Authentication Propagation: Fixed a critical issue where authentication headers were not being passed to HLS initialization segments (
EXT-X-MAP), ensuring encrypted or protected streams load correctly (#241). - 🧹 Code Maintenance: Applied formatting improvements and refactored router initialization for better long-term stability.
🤝 Contributors
Special thanks to @mhdzumair and @tiagomatrixd for their contributions to this release!
📄 Full Changelog
For a detailed list of all changes, visit the official comparison link.
2.4.3
🚀 MediaFlow 2.4.3 Released
This update significantly enhances media processing capabilities, introducing real-time transcoding for better browser compatibility and a new high-performance remuxer for seamless streaming.
✨ New Features & Enhancements
- 🎥 On-the-Fly Transcoding: Added support for real-time transcoding to browser-compatible fMP4. Includes GPU acceleration support and a new settings toggle to enable/disable transcoding as needed. (Requires
av>=14.0.0). - 🔄 Pure Python fMP4-to-MPEG-TS Remuxer: New remuxer with ExoPlayer compatibility. It preserves original timestamps for seamless transitions and adds a new
/mpd/segment.tsendpoint for TS segment delivery. - ⚡ Redis Integration: Introduced Redis support for more efficient rate limiting and caching, improving performance for high-traffic environments.
- 🛠️ Enhanced Extractor Logic: Improved handling for Filelions, Streamwish, and Videoza. Videoza now includes exclusive stream handling and better cache logic to prevent 509 errors.
- ⚙️ Optimized DLHD Extractor: Significant performance boost by moving CPU-bound tasks to thread executors and adding fingerprint support.
- 📊 Timeline Refactoring: Updated timeline processing for more accurate time calculations and better MPD duration handling.
🐛 Bug Fixes
- 🔐 DRM Improvements: Fixed multi-key handling issues and resolved
EXT-X-MAP:URIparser errors. Added extracted KID support. - 🌐 Upstream Handling: Fixed a bug related to checking
206 Partial Contentupstream status codes. - 💾 Cache Protection: Fixed potential cache corruption within the DLHD stream extraction process.
- 🚿 Code Cleanup: Resolved linter errors using Ruff and removed redundant code blocks in
dlhd.py.
📄 Documentation & Maintenance
- 📝 README Updates: Added detailed documentation on transcoding capabilities, hardware acceleration, and new configuration options.
- 🌍 Localization: Translated various non-English code comments to improve contributor accessibility.
- 🤖 Automation: Implemented an auto-generator for future release notes.
🤝 Contributors
@GLlgGL, @mhdzumair, @spawntty, @stremio-manager, and Cursor.
📄 Full Changelog
2.4.2
🚀 MediaFlow Proxy 2.4.2 Released
✨ New Features & Enhancements
- 📡 Telegram MTProto Proxy Support — Stream media directly from Telegram channels, groups, and DMs via MTProto proxy. Includes support for
t.melinks, file IDs, and session management. (#223) by @mhdzumair - 👤 Username Rewriting & XC v1 API — Added support for username rewriting in API responses and the XC v1 API endpoint. (#211)
- 📥 GUpload Extractor — New extractor for GUpload-hosted content. (#222) by @GLlgGL
- 📝 Improved Logging & HTTP Method Handling — Enhanced logging across streaming requests for better debugging and diagnostics. (#210)
🐛 Bug Fixes
- 🔧 Fix VidozaExtractor and update HTTP header handling (#215) by @GLlgGL
- 🔧 Fix regex in VidMoly extractor (#217) by @GLlgGL
- 🔧 Fix setting stream offset in VOD m3u8 streams
- 🔧 Fix URL rewriting when
LIVESTREAM_START_OFFSETis enabled (#212) - 🔧 Remove invalid token in Vavoo (#216) by @qwertyuiop8899
- 🔧 Fix various failing extractors with added integration tests
🆕 New Contributors
- @qwertyuiop8899 made their first contribution in #216
🤝 Contributors
@GLlgGL · @mhdzumair · @qwertyuiop8899
📄 Full Changelog: 2.4.1...2.4.2
2.4.1
🚀 MediaFlow 2.4.1 Released
✨ New Features & Enhancements
- 📺 Live Stream Start Offset – New
LIVESTREAM_START_OFFSETsetting to start live streams behind the live edge with#EXT-X-STARTtag injection for better playback control (#209) - 👤 XtreamCode Username Handling – Enhanced username handling for better compatibility
🐛 Bug Fixes
- ⏱️ Stream Timeout – Fixed stream timeout in aiohttp streamer and improved client disconnect handling
- 📺 Acestream HLS – Fixed HLS stream playback with auto cleanup error
- 🔧 Turbovidplay – Fixed extractor 429 rate limit error
🤝 Contributors
📄 Full Changelog
2.4.0
🚀 MediaFlow 2.4.0 Released
✨ New Features & Enhancements
- 📺 Acestream Proxy Support – Proxy P2P Acestream content through MediaFlow with HLS and MPEG-TS output formats, automatic session management, and cross-process coordination.
- 📡 Xtream Codes (XC) API Proxy – Stateless XC API proxy for IPTV players with support for live streams, VOD, series, and catch-up/timeshift functionality.
- ⚡ Migrated to aiohttp – Replaced httpx with aiohttp for HTTP requests, delivering better performance and lower CPU usage.
- 🔄 Stream Transformer – New transformer system for host-specific content manipulation, including automatic stripping of fake PNG wrapper bytes from TS segments.
- ⏭️ Segment Skipping – Skip intros, outros, and unwanted content in HLS/DASH streams using
&skip=start-end,start-end,...parameter. - ⚡ Smart Pre-buffering – Enhanced pre-buffering for HLS and DASH streams with continuous prefetching for live streams.
- 🔐 Multi-Key DRM Support – Handle streams with different decryption keys for video and audio tracks.
- 🎬 Enhanced MP4 Decryption – Added CBC1 and CBCS encryption schemes with pattern handling and multi-track segment support.
- 🎨 New URL Generator UI – Fresh URL generator page with dark mode support and improved Tailwind CSS styling across all pages.
- 📦 SegmentBase MPD Support – Improved handling of SegmentBase profiles with proper byte range initialization (#166).
- 📋 Header Propagation – New
propagate_response_headersoption and enhanced header management across all proxy endpoints. - 🧹 Cache Control – Added
CLEAR_CACHE_ON_STARTUPenvironment variable.
🛠️ Infrastructure
- 📦 Migrated from Poetry to uv – Faster dependency management.
- 🐳 Multi-stage Dockerfile – Smaller image size and improved build process.
- ☁️ Heroku Deployment – Added
heroku.ymlfor container deployment (#205). - 🔍 GitHub Actions + Ruff – Automated linting workflow.
🐛 Bug Fixes
- 🔧 FileMoon – Fixed extraction failures with relative iframe URLs (#188)
- 🔧 Vidoza – Fixed extractor (#207)
- 🔧 Doodstream – Fixed extractor (#206)
- 🔧 Okru – Fixed extractor (#204)
- 🔧 Vidmoly – Fixed headers (#195)
- 🔧 F16Px – Removed hostname verifier (#194)
- 🔧 Sportsonline – Fixed warning message (#202)
- 🔧 Torrentio – Set default user-agent in request headers (#193)
- 🔧 MPD Parsing – Fixed absolute path URL resolution (#115)
- 🔧 Streaming – Enhanced error handling with graceful network error recovery
🗑️ Removed
- Vidguard extractor – Removed dead host (#196)
🤝 Contributors
@mhdzumair, @GLlgGL, @spawntty, @UrloMythus, @vskrch