The new RC3 removed and added some file, maybe is better to replace completely the vs-deoldify folder with the new RC3 (keep the models stuff like *.pth and related files).
The error on colorizer it is normal at the first run because of order on witch are compiled the python scripts.
If you run again the second time should work.
In the attachment are provided 2 sample script, that you can use to test the method=5 in RC3.
06.02.2025, 21:11 (This post was last modified: 06.02.2025, 21:12 by Selur.)
Quote:please re-enable the "custom" section
Not until the non-custom section is working completely.
Quote:DeepExMethod=havc.HAVC_RESTORE_VIDEO
Where did that come from? I thought DeepExMethod was an integer?
:param DeepExMethod: Method to use to generate reference frames.
0 = HAVC same as video (default)
1 = HAVC + RF same as video
2 = HAVC + RF different from video
3 = external RF same as video
4 = external RF different from video
5 = HAVC video restore
ahh,.. you defined some constants,...
Quote: The new RC3 removed and added some file, maybe is better to replace completely the vs-deoldify folder with the new RC3 (keep the models stuff like *.pth and related files).
I'll look at it over the weekend.
Cu Selur
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
Quote:you can use these constants inside the script.
I know, maybe I'll do that at some point, atm. I don't want to add another change.
First, the existing stuff needs to work.
Then I can look into things one at a time.
Atm. I spend an hour coding, just to see that you changed stuff and I can start rewriting again since there are changes everywhere.
Your RCs are basically alphas, normally RC implies a feature&interface freeze.
After a RC, there should only be bug fixes, no new features an interface changes.
=> until non-custom HAVC works, 'custom' stays removed.
Then I look at method 0, 1, 2, 4, 5, if the interface&co until custom works complete, custom gets disabled and I go back to first testing non-custom.
Cu Selur
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
Dear Selur, Please continue to support DeepRemaster. Your work on HAVC is already remarkable, and what you're doing with it is truly impressive. Thank you for your dedication and for moving things forward with such precision. A big thank you also to Dan for all his efforts and incredible ideas with HAVC! Yours sincerely
Sometime I forgot that python is not a true language.
I spent 3 hours to understand that ColorMNet was broken because I called a constant ColorMNet and python was calling the constant instead to call the function, obviously without issue any message that made sense. Also the debugger was unable to recognize that was called a constant instead of a function. It simple refuse to step-in, even in this case without issue any message that made sense.
Attached the new RC4.
Removed:
havc_constants.py
havc_filters.py
Added:
havc_utils.py
vsslib\constants.py
Removed all the parameters constants.
Included new sample test, with the parameters constants removed.
Sorry for the inconvenience, I had to rollback a lot of code before find the reason of ColorMNet failure.
# adjusting color space from YUV420P8 to RGB24 for vsDeOldify
clip = core.resize.Bicubic(clip=clip, format=vs.RGB24, matrix_in_s="709", range_s="full")
# adding colors using DeOldify
clipRef = HAVC_read_video(source="G:/TestClips&Co/files/test_ref.avi")
clip = HAVC_restore_video(clip=clip, clip_ref=clipRef, ex_model=2, ref_merge=0, max_memory_frames=0)
# internally changing color matrix for YUV<>RGB to '470bg' undoing color matrix change for vsDeOldify
# changing range from full to limited range for vsDeOldify
clip = core.resize.Bicubic(clip, range_in_s="full", range_s="limited")
Seems like HAVC_read_video doesn't work.
Failed to evaluate the script:
Python exception: SetFrameProp: one of 'intval', 'floatval', or 'data' must be passed->
Traceback (most recent call last):
File "src\\cython\\vapoursynth.pyx", line 3387, in vapoursynth._vpy_evaluate
File "src\\cython\\vapoursynth.pyx", line 3388, in vapoursynth._vpy_evaluate
File "J:\tmp\tempPreviewVapoursynthFile14_38_37_430.vpy", line 48, in
clip = HAVC_restore_video(clip=clip, clip_ref=clipRef, ex_model=2, ref_merge=0, max_memory_frames=0)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\Hybrid\64bit\Vapoursynth\Lib\site-packages\vsdeoldify\__init__.py", line 831, in HAVC_restore_video
clip_ref = SceneDetect(clip_ref, threshold=ref_thresh, frequency=ref_freq)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "F:\Hybrid\64bit\Vapoursynth\Lib\site-packages\vsdeoldify\vsslib\vsscdect.py", line 46, in SceneDetect
clip = clip.std.SetFrameProp(prop="sc_threshold", floatval=threshold)
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
File "src\\cython\\vapoursynth.pyx", line 3123, in vapoursynth.Function.__call__
vapoursynth.Error: SetFrameProp: one of 'intval', 'floatval', or 'data' must be passed->
No clue whether Hybrid isn't setting something wrong or missed to set something or whether it's a bug in your code.
Updated Hybrid_deoldify. (did not write code when FilterQueue is used, so this is limited to FilterOrder)
Cu Selur
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
the clip_ref can have different frame size or number of frames, but must have the same fps of clip to be colored, so it is necessary to pass clip.fps_num, fpsden=clip.fps_den
HolyWu is deeply involved in the development of torch.
I think that he is using his projects to test and develop new features for torch.
Unfortunately torch is not stable and is still under strong development.