Comments (2)
Sorry for the late response!
I've thought about and looked into the possibilities, and it's still on the table. I'll leave this open as a suggestion, but my main priority is rolling out bugs and getting a 'dandere2x' out of beta, and then after I can start looking into creating it into a plugin
from dandere2x.
The only problem with this is the interaction between the Python, Waifu2x and Dandere2x_cpp. It's really tricky to explain here but let's try:
For the cpp part of dandere2x, it waits on three files AFAIK-And-Remember, the compressed_static, compressed_moving and the inputs folders on the workspace directory. Then it reads those files progressively and writes the vectors of the block matching algorithm into the pframe_data.
This is basically the CPP part of the code in a nutshell.
Then comes Python, it takes the pframes files and creates a residual file (the block differences between frame N and N+1) based on that pframe and inputs files and saves them into residual_images.
Waifu2x now upscales the residual_images dir and saves to residual_upscaled.
Python again, take the residual_upscaled and with the frame N in hands make a N+1 frame based on the blocks that were changed.
As you can see this process is very reliable on interactions between three different programs and you can probably tell it'll be easy to pipe everything from a program to another with ease.
Well that's technically true but it'll be some hard work since we would need to "port" Waifu2x and really remake the I/O structure of Dandere2x_cpp to accept pipes.
To be honest I haven't understood much about Vapoursynth and/or found it usefull (not the best word here) for current dandere2x structure or how it really works. I'm probably so wrong here but let's move on.
I thought about making temporary ramdisks to make the workspace dir "on the fly" directly into RAM but setting some limits in N frames ahead of the waifu2x process.
I did got ffmpeg piping working only on the merged content because it's being "processed" with Python and it's the final step in dandere2x.
It's on my experimental branch right now however this will be a feature of a future dandere2x pull request since it worked flawlessly, just needs some more research from aka and me into it.
Someday sometime I'll take another look at Vapoursynth when things get less nightly on d2x development.
Ah, if we could only pipe things to Waifu2x (preferably ncnn-vulkan) or / and d2x_cpp this will be solved forever!!
from dandere2x.
Related Issues (20)
- Ignored :c
- The 5 Errors of Dandere2x 3.7.2 (3.3.1 is better?) HOT 39
- Running dandere2x on CPU HOT 19
- End-user documentation for waifu2x "type" choices
- PyQt6 is not a supported wheel on this platform HOT 1
- ImportError: /lib/x86_64-linux-gnu/libc.so.6: version `GLIBC_2.25' not found HOT 1
- Acussing Trojan
- error running dandere2x
- there is a proplem i can't upscale video?
- There's a problem? HOT 1
- dandere2x fixes for linux install and youtube guide
- Multiprocess mode consecutive file issue 3.7.6
- Pyyaml 5.4 caused building wheels error - Linux
- Docker image does not seem to work anymore HOT 2
- PIL - BrokenPipeError: [Errno 32] Broken pipe on Linux HOT 1
- Dandere2x isn't using GPU ram in google colab
- The license_file parameter is deprecated, use license_files instead. HOT 1
- Program taking a long time every few frames HOT 1
- Incompatible Dependencies HOT 1
- Support for Intel Arc 380
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from dandere2x.