Releases: NevermindNilas/TheAnimeScripter
The Anime Scripter - Release [2.0.1]
The Anime Scripter:
New
- Added
rtmosr-directml
andrtmosr-tensorrt
upscaling method by @umzi2. - Added
slow_nvenc_av1
encoding preset.
Improved
- TensorRT and DirectML based depth maps have been significantly improved.
- Changed
TAS.log
->TAS-Log.log
for easier debugging. - Changed
ffmpeg.log
->FFmpeg-Log.log
for easier debugging. - Generalized some logs.
- Removed unwanted terminal prints generated by ffmpeg when encoding with x265
- Imense improvements in the realtime playback, with the amazing tool from mpv realtime preview of the content is now plausible.
- Switched from
FFmpeg
toMPV
playback for--realtime
- If
--realtime
is active encoding will no longer take place in order to save on system resources. - Improved the TRT Shape printing when building engines to be a bit more compact.
- Improved the handling of the ffmpeg encode command.
- Improved reusability of repeated calls, specifically logging and printing.
- Added a forced
sys.exit()
if FFMPEG crashes during encoding for any reason in order to avoid deadlocks. - Changed sub from
srt
->copy
, which should retain metadata from the base input.
Removed
--depth_quality
has been deprecated for directml and tensorrt, now all models will run internally at 518x518 to better match the model resolution and quality.
Fixed
- Shape issues with Segment Anime TensorRT
- Issues with
rawvideo
andcelux
- Issues with
16bit
workflow andnvenc_h264
Adobe Edition
New
- Added
Take a Screenshot
to the Toolbox. - Added an
About
Panel which replaces the previous dialog on the top right with more info regarding TAS. - Added
System Requirements
in the About panel.
Improved
- Improved the
Extracting TAS...
indicator, the...
should now 'progress' just so that users know it's not actually stuck. - Slight adjustment to the backend for ease of reusability, more work needs to be done in order to make TAS slightly more manageable.
- Defaulted depth quality to
low
- Added error handling when the desired input was an image, TAS should now generate a toast alert letting the user know that it only works with images.
- More tweaks to how UI elements get generated.
- Improved descriptions of many features available in TAS.
- Significant improvements to the UI/UX, adding labels, icons and descriptions.
- Added direct credits to the
Anipy-CLI
team in thedownload an anime
section. - Added direct credits to the
ytdlp
team in theyoutube downloader
section. - Changed the update functionality from a dialog to a
toast
. - Refactored even more code.
Fixed
- The
Remove Background
segment would not update upon selection of different elements. - Fixed a repeated unncessary task which will now happen only on the initial mount of the UI.
Full Changelog: v2.0.0...v2.0.1
The Anime Scripter - Release [2.0.0]
TheAnimeScripter Version 2.0.0 - 2024-12-29
Discord: https://discord.gg/GVHrTQRMNq
New
- Partially ported TAS to Adobe Premiere and some of the core functionality should now take place.
- Added Full CUDA Graph Acceleration for all TensorRT workflows and some CUDA workflows, this should bring an uplift of up to
25%
in performance depending on the input resolution. - Reverted back to threaded decode / encode due to extremely high CPU usages. This change will imply significantly improved start up times ( up to 1.5s on my system ), significantly less CPU usage ( seen drops of up to 40% on my 13700k ).
- Switch entire decode backend to Celux-CPU ( soon Celux-Cuda )
- Added Rife
4.25 Lite
and4.25 Lite TensorRT
- Added Rife
4.25 Heavy
and4.25 Heavy TensorRT
- Added variable
--decode_threads
for more granularity. - Added
anime1080fixer-directml
support for restoration. - Added
slow_nvenc_h264
&slow_nvenc_h265
- New
--restore_method
,fastlinedarken
andfastlinedarken-tensorrt
which is losely inspired by the original Vapoursynth version. - Added support for dynamic
upscale_factor
, only works with CUDA workflows. - Experimental new feature
--realtime
which will allow real time playback of the output, this is a superset of--preview
. - Thanks to TNTWise,
GMFSS
has been added back to TAS. - Added
Dynamic Flow Scale
, use the command--dynamic_scale
, this only works with CUDA for now and is experimental. - Added temporary metadata collection of the video input.
- Added Flow based deduplication with
FlownetS
( experimental )
Improved
- Replaced the existing progress bar with Rich Progress for faster start-up times and more accurate FPS, closer to the ground truth.
- Improved inferrence speed for
16bit
specific workloads by up to 50% - Improved error handling when the
totalFrames
count was off. - Improved norm efficiency through removal of repeated operations.
- Upgraded to TensorRT
10.7.0
- Refactored
TRT Handler
Backend for more granularity and better prints / logging. - Depth Quality
Low
will now produce better quality outputs. - Multithreadded the Encode.
- Simplified some cuda related logs and calls.
- Removed redundant code.
- Changed resizing logic from ffmpeg to Celux ( ffmpeg )
- Improved robustness of
--half
argument and converted it from boolean to str using the default True; choices [True, False] - Segmentation ( CUDA ) is now 50% more efficient than before.
- Bump Pytorch
2.5.0
->2.5.1
- Error handling for Spandrel.
Total Frames
will now dynamically adjust based on the total amount of decoded items on forced exit.- Changed logging from Python Based stdout to FFMPEG based stdout.
- Updated Python from
3.12.7
->3.12.8
- Added PyMediaInfo fallback if Celux can't detect the metadata.
- Added OpenCV fallback if Celux can't decode.
- Robustness of the I/O handler.
- Added a
torch.fx
model optimization backend which should improve CUDA inference speeds by up to20%
in certain workloads. - Upgraded numpy version to
2.2.1
Notes
- Due to the TensorRT Upgrade, all engines will need to be regenerated.
Removed
- Polygraphy in favor of built in TensorRT API.
--sample_size
command.pre-compilation
of TAS' bytecode.- removed image support.
Alive-Progress
in favor of Rich-Progress.
Fixed
- Fixed Issues with Rife NCNN.
- Fixed Cuda Race Conditions when interpolating with TRT at higher than
2x
factor. - Fix audio copying to and from
.webm
inputs. - Fixed an issue where Depth TensorRT would cause flickering using
low
depth quality mode. - Fixed black outputs with Upscale NCNN.
- Fixed an issue where the first frame was black in DirectML workflows.
- Fixed Rife Elexor issues.
- Couple of import issues for
--restore
- Fixed an issue where the script would attempt to use an incompatible
--encode_method
with the.webm
container. - Fixed a bug where if
--output
was declared and no other processing method was declared tas would only output the temp file.
Adobe Edition
Notes
- This version of TAS is now built against AE 2025, with official support provided. The overall UI and feel have been adjusted to match AE 2025. This may cause mismatches with older versions of AE, and some core functionalities may not work as well or at all.
- The new update checking system does not automatically download TAS Adobe Edition, the end user will still have to manually download it but eventually a fully automated process is planned.
Toasts
do not fully replace alerts, they just serve as a partial replacement to the annoying alerts.
New
- Added an auto Update Cheking system which prompts the user if a new version has been released.
- Added proper
Pre-Comp
support through internal checks in order to avoid user errors. - Added new interpolation methods.
- Added new encoding methods.
- Added quick action buttons for
Add adjustment layer
&Add Solid Layer
- Added
Arrange Layers
function to quickly sort layers based on user requirements. - A bunch of tooltips for the end user.
- Added an full path indicators where TAS' backend will be downloaded.
- Added
Toasts
as an alternative toalerts
, this should be less intrusive and less annoying than alerts. - Added
Open Changelogs
button.
Improved
- Some naming schemes
- Improved error handling.
- Improved the look and feel of the UI.
- Overall performance and snappiness.
- Upgraded some backend dependencies for extra goodies.
- Improved the
preview windows
responsiveness. - Added the new AI options into the dropdowns.
Removed
- Rife 4.18 Cuda and TensorRT.
Fixed
- An issue where TAS would delete files if
delete pre-rendered
file was turned on butpre-render
was not. - Fixed a bug where there was a 404 image not found error when using
preview window
What's Changed
- deps: bump tensorrt from 10.6.0 to 10.7.0 by @dependabot in #62
- deps: bump tensorrt-cu12-libs from 10.6.0 to 10.7.0 by @dependabot in #59
- deps: bump numpy from 1.26.4 to 2.2.1 by @dependabot in #63
New Contributors
- @dependabot made their first contribution in #62
Full Changelog: v1.9.11...TAS_2.0.0
Release [1.9.11]
The Anime Scripter
New
- Added
H266
encoding support using command--encode_method h266
. - Added
slow_x264
,slow_x265
&slow_av1
encode methods. - Added
rife_elexor
andrife_elexor-tensorrt
- Renamed
--denoise
to--restore
in order to have a more fitting umbrella term. - Added
Anime1080Fixer
by @Zarxrax to--restore
- Added early TRT backend to
--restore
includinganime1080fixer-tensorrt
- Added support for
yuv420p10le
inputs. - Added anipy support, use keyword
--input "anime"
- Added support for
yuv422p8le
inputs.
Improvements
- A serious restructure to TAS' backend and I/O handling.
- Upgraded Github Actions runner from Python
3.12.4
->3.12.7
- Avoid unnecessary memalocs for decode.
--upscale_skip
will now default to CUDA SSIM or CPU SSIM based on the selected--upscale_method
--upscale_skip
should now be significantly more reliable than before.- Removed redunant calculations in MSE deduplication improving the performance by
~5%
- Improved RIFE TRT reliability.
- Upgraded Pytorch from
2.4.0
->2.5.0
- Improved
Input/Output
handling which should result in a much more dynamic encoding selection for batch processes. - Slight adjustment to chained processes should yield in a small performance boost.
- Lazifying TAS has improved start up times by up to
1s
in certain workloads, this should improve the responsiveness of TAS by a margin of30%
on average. - Improved and streamlined TAS benchmarking.
- Upgraded ONNX Opset version
19
->20
- Improved Rife Model / Arch Handling.
- Removed unneeded code from
decode options
. - Upgraded TensorRT from
10.3.0
->10.5.0
Removals:
- Vidgear package
- Video Stabilization.
- TAS Banner, might be reimplemented back in the future.
- Command
--hide_banner
Fixed
16bit
workflow wouldn't work due to undeclared variable.- Fixed an issue where RIFE TRT would produce unwanted results on the 2nd frame of the output video when CPU usage was high.
- Fixed an issue where RIFE TRT would display duplicated frames past
2x
interpolation. - Fixed
benchmark.py
issues caused by backend changes. - Models weights wouldn't be properly loaded for flow caching when using Rife TRT
- Fixed an issue where 16bit workflow would downsample to 8bit then upsample back to 16bit.
- Fixed
.mov
input issues
Breaking Changes:
- If you are upgrading from an older version of TAS, all engines will need to be rebuilt due to the TensorRT Upgrade.
Notes
H266
encoding requires FFMPEG version7.1
, if you have FFMPEG in System Path make sure the versions matches, otherwise if you downloaded it using TAS, make sure you delete theffmpeg
folder located at%appdata%\Roaming\TheAnimeScripter\
and allow TAS to re-download the latest build.
Adobe Edition
New
- Added
Slow X264
&Slow X265
Encoding options. - Added
Purge Cache
button in the Extra Tab which will automatically purge all of AE's cache. - Added
Open TAS Folder
button which will open TAS' Backend folder for faster debugging purposes. - Added
Rife Elexor
andAnimeFixer
to the option list. - Added
Delete Pre-Rendered File
Checkbox. - Added
Get Anime Clip
button.
Improved
- Restructured some of the code to be more resource efficient, all relevant calls will now only happen once on UI Mount reducing overall CPU usage.
- Some small UI adjustments.
- Improved descriptions.
- Renamed denoise -> restore.
Pre-Render
now dynamically adjusts the cut-off point for the selected layer(s). If the layers extend beyond the bounds of the composition, the part that isn't in the composition will be excluded from processing.
Fixed
- 'Unable to set
workareadDuration
. Value x out of range y and z. - Some options were not saved.
Notes
- Temporarely disabled " Remove Background " until some fixes take place.
Release [1.9.10] - Day 0 Patch
The Anime Scripter
Fixed
- Issues where if
--inpoint
and--outpoint
wasn't declared, FFMPEG would self-destruct. - Issues where sharpening would go out of bounds relative to the max allowed sharpness from FFMPEG.
Release 1.9.9 - Improvements
The Anime Scripter
New
- Enhanced encoding within TAS now allows real-time video processing and viewing with adequate hardware.
- Added
Rife 4.25
andRife 4.25-TensorRT
. - Reintroduced
VP9
andQSV_VP9
encoding methods to support.webm
inputs. - More accurate progress information post-process for comparison purposes.
- All executables now include precompiled
.pyc
code to improve startup times. - Restructured interpolation pipeline for TensorRT, yielding up to
25%
performance gains. - Full CUDA workflow now uses
Cuda Pinned Memory Workflow
to increase data transfer efficiency. - Upgraded
Span
andSpan-TensorRT
models toSpanimation-V2
- special thanks to @TNTwise.
Improved
- Rife TensorRT changes significantly reduce the
weights
folder size. It's recommended to delete the folder at%appdata%\Roaming\TheAnimeScripter\weights
and let TAS regenerate all Rife Engines. - Enhanced metadata retrieval powered by
pymediainfo
. - Benchmarking now provides significantly more accurate results.
- Audio & Subtitle Merging now occurs during the encoding phase, reducing overall render time.
- Encoding is now fully parallel to inference, minimizing bottlenecks in the inference thread.
- Improved logging from FFMPEG.
- Enhanced CUDA and encoding handling results in a
30%
performance boost for NVIDIA users. - TAS now attempts to create the folder automatically if
--output
is specified and the path doesn't exist. - More robust Try/Except statements reduce code initialization time.
- Improved CUDA synchronization for better reliability.
- Renamed
ffmpegLog.txt
toffmpeg.log
. - Renamed
log.txt
toTAS.log
. - System checks are now more minimal and log less information.
- System checks are now conditional based on the
--benchmark
flag. - Slight adjustments to
getFFMPEG.py
. - Improved
Upscale-Cuda
Code. - Improved Initial loading times by up to
25%
Removed
- Removed
--audio
and related features in favor ofpymediainfo
's automated detection.
Fixed
- Corrected exaggerated performance reports from TAS.
- Fixed a regression from 1.9.8 that significantly impacted encoding performance for low end systems.
- Fixed an issue where the first frame of a processed video was black when upscaling.
- Fixed a regression from 1.9.8 where frames were not properly processed.
Adobe Edition
New
- Added
Manual Method
button for a step-by-step tutorial on manually installing TAS' backend in case of download errors. - Added
Rife4.25
andRife 4.25-TensorRT
Options
Improved
- Enhanced backend download functionality.
Fixed
- Fixed backend download for TAS (Counter: N/A).
Improvements
- Slight code adjustments for better memory efficiency, though benefits are likely minimal.
- UI adjustments to the preview when URL request would 404/500.
- View Border has been defaulted to different style to match the overall UI Theme
- Preview Image should no longer overlap with the border.
Full Changelog: v1.9.8...v1.9.9
Release 1.9.8 - Optimization
The Anime Scripter
NEW
-
--input
will now support:.txt
files with a list of videos- A full string with multiple videos:
"G:\TheAnimeScripter\input\input.mp4;G:\TheAnimeScripter\input\input.mp4"
-
Interpolation will now work prior to upscaling in order to increase the output's quality and to be more VRAM friendly.
-
TAS now has proper multi subtitle and audio support.
-
--preset
&--preset_list
: A new and semi-baked in preset configuration system with reusability in mind.Usage:
--preset {name}
will allow for all of the arguments declared within the initial system arguments to be saved inside a JSON file and then reused multiple times.Note: This lacks an updating/removal system for now, so it's a one-off.
Preset list: Simply prints the available presets with their enabled options.
-
TAS should now have proper
CTRL + C
support which extends to a graceful exit of the whole operation.
Improvements
- Upscale TRT should now be up to
10%
faster - New coroutines for CUDA detection to improve performance.
- Decoupling of STDOUT from the main loop will now result in up to 50% performance gains for decoding. This should benefit all processes.
- Overall total model size is now significantly lower.
- TensorRT Handler functionality has been improved tremendously and is now significantly more robust and feature-rich than before (this will come in handy in the future).
- Rewrote some of the chain loop backend.
- Dedup with SSIM-CUDA is now significantly faster.
- SSIM CPU is now up to
2x
faster ( decode limited ) - MSE CPU is now
15%
faster. - Upgraded Torch:
2.3.1
->2.4.1
for the added performance benefits. - Linux lite builds should be significantly smaller now ( looking for testers & debuggers )
- Encoding should now be up to
50%
more efficient than before, internal results showdedup ssim
speeds with encode going from~280FPS
all the way to~460-480FPS
at1080P
with a 13700k.
Notes
- Currently TAS is slightly limited by STDOUT and STDIN from FFMPEG. I will look to further improve this down the line.
- With the current changes in encoding, I can reasonable argue that CPU and subprocessing are starting to become decent bottlenecks.
Regressions
- With the new changes in Decode/Encode, RAM usage will see a hit, I've seen up to
~500mb
more usage in RAM, though that's whilst considering that TAS uses roughly2.5GB
during a reasonable workload.
Removals
Scikit-Image
package.
TAS - Adobe Edition
New
Enable Preview Window
checkbox:- This will utilize the
--preview
functionality within TAS to display a live preview of the progress, note this comes with a tax in performance.
- This will utilize the
- New Options for
Remove Background
:TensorRT
acceleration has been added to segmentation for further boost in performance.
Pre-Render
will be even more flexible:- The
Pre-Render
functionality within TAS was and still is fairly limited, but with this release you will have a bit more control over the desired output. You will now be able to choose between two baked in functionalities,Lossless
( the current default ) andQuicktime
. For most usecasesQuicktime
is plenty good and there's no need to choose Lossless but feel free to mess around with it.
- The
Improvements
- Some UI Cleanup of features that are no longer planed to be added in the near future.
- Improved some background blur related things.
- Since TAS now comes with proper
CTRL + C
support, you can now exit the process gracefully and not worry about annoying alerts and errors.
Notes
- Preview is still under active development and I am planning to further improve on it in the near future, but attention will now shift towards the Standalone edition which is about 80-90% of the way done.
FULL: Is for NVIDIA users.
LITE: IS for AMD / Intel users.
Full Changelog: v1.9.7...v1.9.8
Release [1.9.7] - Hotfix
The Anime Scripter
NEW
- Added Rife4.20-NCNN, 4.21-NCNN, 4.22-NCNN, 4.22-Lite-NCNN
Fixes
- CUDA errors seen in the Lite Edition of TAS for Windows.
Regressions:
- Some performance gains found in 1.9.6 have been lost due to errors in dependency handling.
Adobe Edition
New
- Added new NCNN Models
Improvements:
- TAS backend downloads will now be up to
2300%
faster. - Fix some race condition issues found in the backend.
- Made sure for 7z to overwrite existing TAS installations
- Improve path handling
- Better error handling.
- In case of download errors TAS should now attempt to redownload the backend.
Removals
- Removed some old 4.15-lite & 4.17 models in favor of newer and more performant options.
NOTES:
- TAS Full is meant for NVIDIA users who want to benefit from CUDA and TensorRT Accelerations.
- TAS Lite is meant for AMD / Intel users only.
Release [1.9.6] - Linux Edition
The Anime Scripter
NEW
- Added
Rife4.22-Lite
andRife4.22-Lite-Tensorrt
- Added
--static
flag to force static engine generation for Upscale TensorRT. - Temp state for downloaded models will now ensure file integrity in case of internet loss.
- Added
--depth_quality
flag with optionslow, high
( default high ). For the users with lower end system to benefit of higher inference speeds. ( Not reliable for TensorRT ) - Added testing builds for linux-full and linux-lite ( Full is WIP but should be functional with the build-linux.py script )
Improvements
- Upgraded base polygraphy from 0.49.12 -> 0.49.13
- Removed unnecessary clamps.
- The metadata, progress bar and everything else related to video details should be MUCH more accurate now, including logging.
- Log.txt should now be more compact with
Arguments
no longer having unused arguments. - Rife TRT will only build Static Engines in order to improve stability and versatility.
- Rife CUDA is now up to 15% faster than before.
- Rife TRT is now up to 15% faster than before.
- Chained Processes with Upscaling and Interpolation TRT / CUDA will now be more memory efficient and performant.
- Benchmarks are now going to be more accurate for interpolation.
- Upgraded ONNXRuntime-DirectML to 1.19.1
- Improved the progress bar with more information and less unnecessary eye candy.
- Improved stability of image inputs.
- More video metadata requests.
- The download progress bar will now also tell the download speed in MB/s
- Some slight adjustments to the building methodology of TAS.
Fixes:
- Some CUDA Race conditions could be met in extremely High FPS workflows ( 500+ FPS ).
- Fix some oversights in Rife 4.22 and Rife 4.22-lite that were reducing the output quality.
Adobe Edition
NEW
- Added
Rife4.22-Lite
andRife4.22-Lite-Tensorrt
options to the dropdowns. - Added Depth Quality options ( low and high )
Fixes
- Fixed issues when paths had spaces in them.
Release [1.9.5] - Hotfix Release
This should fix issues with TAS Lite or Full download in mGPU cases.
Release [1.9.4] - Preview
The Anime Scripter
New
- A new 3D like Banner :)
- Added OpenProteus and AniScale2 by Sirosky
- New lite version of TAS.
- Support for multi audio and multi subtitle extraction and addition.
- Added
Differential
|Differential-TensorRT
( My own attempts ) at a scenechange method ( WIP ) - Added
Shift_LPIPS-TensorRT
Scenechange Methods by Sudo. - New
--hide_banner
flag to Hide TAS' banner when processing. - Preview functionality with the command
--preview
, use port127.0.0.1:5050/frame
in order to check the results of TAS.
Improvements
- Improved parameters and examples.
- Upgraded to nightly ONNXRuntime DirectML in order to avoid IR issues.
- Added recursive checks for Model Downloads.
- Significantly better I/O folder handling, this should result in better edge case handling.
Fixes
- Fixed a bug with 16bit workflow and x264_animation_10bit
- Issue #44
- Fixes issues with input folder and output folder cases.
- Issue #46 - Fixed concurrency issues associated with Rife TensorRT and high cpu usages.
- Fixed an issues with span-directml where it would point to a different host.
Regressions
- Temporarely reverted back to pytorch 2.2.2 and cuda 12.1 until .dll issues are fixed, this may result in slight performance losses.
Removals
- Updater.exe
Adobe Edition
New
- TAS will now dynamically switch between "Full" or "Lite" mode depending on your available GPU.
Improved
- Improved Error handling.
- The terminal ( command prompt ) will now start minimized in order to not disrupt your workflow.
- Immense improvements on output handling, TAS will now selectively create and choose specific types of folders based on your current process. This also comes with nice text formatting for the output with keywords like "_DE" for Deduplication and "_SH" for Sharpen.
- Better download functionality with a possibility in increased max download speed.
Bug Fixes
- For some users the download would often hang, this should now have been remedied or at least improved and TAS should now attempt to reconnect in case of a error connection.