feat(downloader): Use async execution of ffmpeg - #2099
Merged
Conversation
There was a problem hiding this comment.
Pull Request Overview
This pull request refactors the anime download flow to use FFmpegKit’s async APIs with coroutines and flow for better cancellation support, updates the pause/resume button to a stop/continue label, and adds corresponding string resources.
- Migrates synchronous FFmpeg execution to suspendable, cancellable coroutines and a retryable flow.
- Replaces pause/resume labels with stop/continue in UI and notifications.
- Adds “Stop” and “Continue” to string resources and updates the changelog.
Reviewed Changes
Copilot reviewed 5 out of 5 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| i18n-aniyomi/src/commonMain/moko-resources/base/strings.xml | Added action_stop and action_continue string resources |
| app/src/main/java/eu/kanade/tachiyomi/ui/download/DownloadsTab.kt | Adjusted FAB visibility and swapped anime pause/resume to stop/continue |
| app/src/main/java/eu/kanade/tachiyomi/data/download/anime/AnimeDownloader.kt | Refactored FFmpeg download logic to async coroutines/flow |
| app/src/main/java/eu/kanade/tachiyomi/data/download/anime/AnimeDownloadNotifier.kt | Changed notification action label from pause to stop |
| CHANGELOG.md | Documented the stop/continue button change under Unreleased |
Comments suppressed due to low confidence (2)
CHANGELOG.md:16
- [nitpick] This change introduces a new feature (stop/continue labels) rather than fixing existing behavior; consider moving it under the 'Added' section for clarity.
- Fix stop/continue anime download button ([@Secozzi](https://github.com/Secozzi)) ([#2099](https://github.com/aniyomiorg/aniyomi/pull/2099))
app/src/main/java/eu/kanade/tachiyomi/data/download/anime/AnimeDownloader.kt:559
continuation.resume(it)resumes the coroutine with a session object, but this function returnsUnit; either resume withUnitor update the signature to return the session to match the resumed type.
)
This was referenced Jul 12, 2025
weblate
pushed a commit
to weblate/anikku
that referenced
this pull request
Aug 27, 2026
) (komikku-app#57) * feat(downloader): Use async execution of ffmpeg (aniyomiorg/aniyomi#2099) (cherry picked from commit c66590c) * Fix ".tmp" file checking/deleting * Remove both kinds of temp files --------- Co-authored-by: cuong-tran <cuongtran.tm@gmail.com>
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Closes #2086
Use async execution of ffmpeg for easier handling of cancellations. Adds back pause/resume button, but with a changed name to better reflect what it actually does.