08.02.2025, 12:16
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
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:
- ref_merge should only be set if "ex_model != 2 && ex_model != 5" :
ref_merge cannot be set if method == 2. The ref_merge cannot be used if the reference frames are different from the source video. The method == 2 is the only one that states explicitly that the RF are different from video. But now the thing are still more complex. So this is my proposal:
- Restrict the list of available methods to: 0 = HAVC simple, 1 = HAVC + external RF, 2 = external RF only, 3 = HAVC video restore
- 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)
- otherwise is necessary to extend the list of available methods as: 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
- ref_weight and ref_freq should only be set if ref_merge > 0 ( and "ex_model != 2 && ex_model != 5")? ref_merge and ref_freq must always provided, they can be initialized with the following logic:
- if ref_merge > 0: sc_min_freq = 1 (-> HAVC_ddeoldify), sc_min_freq = GUI value (-> HAVC_deepex, HAVC_restore_video)
- if sc_min_freq > 1: ref_freq = GUI value , else: ref_freq = 0 (the functions will assign eventually a default value if necessary)
- if 0 < sc_threshold < 1: ref_tresh = sc_threshold, else: ref_tresh = 0.10
- max_memory_frames should only be set for ex_model "ColorMNet" and "Deep-Remaster" ? YES
- encode_mode is only set for ex_model "ColorMNet"? YES
HAVC_deepex
Is it correct, that:
- ref_merge should only be set if "ex_model != 2 && ex_model != 5" ? see explanation above. It will depends on what solution you prefer to adopt
- ref_weight and ref_freq should only be set if ref_merge > 0 ( and "ex_model != 2 && ex_model != 5")? see explanation above
- max_memory_frames should only be set for ex_model "ColorMNet" and "Deep-Remaster" ? YES
- encode_mode is only set for ex_model "ColorMNet"? YES
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:
- HAVC_ddeoldify is always assigned to clipRef when deepEx is used. When DeepEX is enabled in the GUI and method in (0,1,2)
- deoldify_p is only used when method != 1 YES
- ddcolor_p is only used when method != 0 YES
- ddtweak is only used when method != 0 YES
- ddtweak_p is only used when method != 0 and ddtweak = true YES
- cmc_tresh is only used when method = 3 YES
- lmm_p is only used when method = 4 YES
- alm_p is only used when method = 5 YES
- cmb_sw is only used when method > 1 YES
- sc_threshold, sc_tht_offset, sc_min_freq, sc_min_int, sc_tht_ssim, sc_normalize are only used when deepEx is used YES
Thanks,
Dan