![]() |
|
Deoldify Vapoursynth filter - Printable Version +- Selur's Little Message Board (https://forum.selur.net) +-- Forum: Talk, Talk, Talk (https://forum.selur.net/forum-5.html) +--- Forum: Small Talk (https://forum.selur.net/forum-7.html) +--- Thread: Deoldify Vapoursynth filter (/thread-3595.html) Pages:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
RE: Deoldify Vapoursynth filter - Selur - 07.02.2025 Using: # changing color matrix from '470bg' to '709' for vsDeOldify
clip = core.resize.Bicubic(clip, matrix_in_s="470bg", matrix_s="709")
# changing range from limited to full range for vsDeOldify
clip = core.resize.Bicubic(clip, range_in_s="limited", range_s="full")
# setting color range to PC (full) range.
clip = core.std.SetFrameProps(clip=clip, _ColorRange=vs.RANGE_FULL)
# 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
# loading reference clip for Remaster
clipRef = HAVC_read_video(source="G:/TestClips&Co/files/test_ref.avi", fpsnum=clip.fps_num, fpsden=clip.fps_den)
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")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\tempPreviewVapoursynthFile20_26_11_983.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->Cu Selur RE: Deoldify Vapoursynth filter - Dan64 - 07.02.2025 I was expecting that the threshold and frequency to be provided in input. Released new RC5 where now I manage the situation where threshold and frequency are both missing. Included also a test sample using the avi format. Dan RE: Deoldify Vapoursynth filter - Selur - 07.02.2025 will look at it tomorrow RE: Deoldify Vapoursynth filter - Selur - 08.02.2025 Before looking into implementing the code for the FilterQueue. Let's go through each of the functions: (Aside note: if the values are the default value, they might not be set either.) HAVC_restore_video Is it correct, that:
HAVC_deepex Is it correct, that:
HAVC_DeepRemaster Is it correct, that:
HAVC_ddeoldify Is it correct, that:
Cu Selur Ps.: updated Hybrid_deoldify RE: Deoldify Vapoursynth filter - Dan64 - 08.02.2025 The HAVC filters are able to use the necessary parameters to perform the selected action. I think that ithe simpler approach is to provide to the called functions the parameters available on the GUI. Please find below the answers to your questions: HAVC_restore_video Is it correct, that:
HAVC_deepex Is it correct, that:
HAVC_DeepRemaster This function has been added for internal use only. It is called only if method in (3, 4) and ex_model = 2. This version of DeepRemaster is able to read directly the images folder (mode=0) and should be a little faster respect to the version the include the external ref images in a video clip. HAVC_ddeoldify Is it correct, that:
Thanks, Dan RE: Deoldify Vapoursynth filter - Selur - 08.02.2025 Okay, 'custom'-mode is gone again. => I'll delete all the code related to 'custom' now and simplify the gui accordingly. I might add a 'custom' option back when it's not a constantly changing target at some later point in time. Quote:HAVC_ddeoldify is always assigned to clipRef when deepEx is used. When DeepEX is enabled in the GUI and method in (0,1,2)Are you referring to 'Combine Method' or 'Exemplar Models->Method' ? Cu Selur Ps.: While at it, I'll also rename the whole filter and variables to HAVC in Hybrid RE: Deoldify Vapoursynth filter - Dan64 - 08.02.2025 I don't understand what was gone in custom mode, and what was changed recently for you. As wrote previously custom mode was working with the only exception of method = 5. Regarding the method = 5, I can apply a merge only if the reference frames are the same as video. If they are different, the merge is still possible but the result will be very bad. So I need to know when the reference frames are the same as video also for the method = 5. To do that are available 2 options: 1) extended the list of exemplar-based methods in: 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 restore same as video 6 = HAVC restore different from video 2) It also possible to simplify the list in: 0 = HAVC simple 1 = HAVC + external RF 2 = external RF only 3 = HAVC video restore and to add a check box in the GUI, near ref_merge, with the name "RF same as video" (you could replace in GUI sc_debug that is not used) to let me know if the ref_merge can be applied. Please let me know what of 2 options do you prefer. Regarding your question: HAVC_ddeoldify is always assigned to clipRef when deepEx is used The answer is: when is enabled the check box "Exemplar Models" and method in: 0 = HAVC same as video (default) 1 = HAVC + RF same as video 2 = HAVC + RF different from video Dan RE: Deoldify Vapoursynth filter - Selur - 08.02.2025 Custom is dropped, no need to talk about it anymore. RE: Deoldify Vapoursynth filter - Dan64 - 08.02.2025 But the exemplar methods: 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 restore same as video [new] 6 = HAVC restore different from video [new] Are not part of custom, I will release the new RC the list of methods extended to 7 items (0-6). Dan RE: Deoldify Vapoursynth filter - Selur - 08.02.2025 Yes, and I will apply non-custom at some time. Atm. I'm busy renaming variables and deleting a few thousand lines of code. Once stuff compiles again, I will try to adjust things so that non-custom works. |