- m3u8_downloader: replace the ineffective -allowed_extensions ALL with
-extension_picky 0 so the ffmpeg fallback accepts CDNs that serve HLS
segments with a non-media extension (e.g. watching.onl's .jpg segments),
which previously failed every variant with "Output file does not contain
any stream".
- anivexa: swap the allmanga provider for mkissa (PROVIDER_PRIORITY,
nicknames, docstring, watch.js provider list, stream test, README) to
match the sidecar's v2.2.1 update.
🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
Fix FFmpeg HLS download to handle non-standard segment extensions
- Add -allowed_extensions ALL to allow processing of HLS playlists with non-standard file extensions (e.g., .xls)
- Add -ignore_unknown and -err_detect ignore_err to handle corrupted/unknown stream types gracefully
- Add --ignore-errors and --no-check-certificates to yt-dlp for more resilient downloads
- Fix FFmpeg command structure to ensure headers are placed before input file
- Improve error logging with return codes and command details for debugging
Generated with [Devin](https://devin.ai)
Co-Authored-By: Devin <158243242+devin-ai-integration[bot]@users.noreply.github.com>
Wire up episode downloads with live progress, quality picker, and cancel
Implements the previously documented but never-wired M3U8 download flow:
server-side stitching to a single MP4 via yt-dlp/ffmpeg with a background
worker, token-based status polling, and file serving with cleanup. The watch
page download button now supports direct provider links, a quality picker fed
by probing the HLS master playlist, a live progress percentage during
stitching, a completion summary card, and mid-download cancellation that
kills the subprocess.
🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>
Anime details pages now get their info from AniList GraphQL (characters,
voice actors, relations, recommendations, trailer) with Jikan as fallback,
so they keep working when Jikan/MAL is down. Watch-page server pills get
fun nicknames (Zenith, Kaiju, Tenka, Maki, ...) rendered server-side and
in the client display-name map.
🤖 Generated with Codebuff
Co-Authored-By: Codebuff <noreply@codebuff.com>