Q&A
Software Error Reporting Issues
Error reporting when starting a task
- If
_pickle.UnpicklingError: invalid load key, '\x00'.
is reported when starting a task, find and delete the folder inside according to the pathC:\Users\<UserName>\AppData\Local\Temp\gen_py\
. If the AppData folder is not found, in the Windows Explorer, click View and check the Hidden Items checkbox. - If
xxx is not a valid path
is reported and SVFI is used in an Internet cafe, some network management systems will map the software folder to different disks, resulting in the inability to start the software. Please copy the entire folder to another drive letter, and then start manually without Steam according to Advanced Explanation of Command Line. - SVFI does not support directly reading files located on network locations (i.e., files whose paths start with
/
). The network location needs to be mounted as a virtual disk to be readable. - If using vspipe (including using the full vspipe workflow), and the task directly enters the task merging stage when starting and reports an error "Chunk not found", it indicates that vapoursynth cannot read this video. The vspipe decoding function must be turned off to try using ffmpeg decoding.
- If an error is reported when starting the task, "Conversion from a high frame rate to a low frame rate cannot be performed yet", and the input frame rate and output frame rate "are set correctly", it indicates that the input video is not a constant frame rate supported by SVFI. It is necessary to use shanaencoder to re-encode the input video to make it a constant frame rate supported by SVFI (such as 24, 24000/1001), etc.
How to solve the problem when the software prompts insufficient video memory or insufficient memory?
Insufficient video memory?
At least 2G of video memory is required for interpolating 1080P videos, and at least 6G of video memory for 4K videos. Please try to enable interlaced frame interpolation to avoid exceeding the video memory limit.
If you are sure that the video memory of your machine is large enough, you can try to restart the machine to see if it solves the problem.
In the output resolution setting, try reducing the video resolution. In the output quality setting, the half-precision mode can be enabled. Also, in the frame interpolation setting, try to reduce the optical flow scale (setting it to 2.0 or above will greatly increase the video memory usage, be sure to check the value of this option).
In some cases, the error reporting shows "encountering occasional CUDA errors", which may also be caused by insufficient video memory, and the settings need to be changed referring to the above instructions.
Insufficient memory?
- For machines with less than 16G of running memory, it is recommended to use the function of Assign RAM Buffer Manually in the output quality setting to specify the memory usage size.
- Recommended minimum: 1G.
Error handling process when the graphics card is enable with ECC mode
Please refer to this post for processing.
What to do with Broken Pipe?
- You can try to reduce the parameter selected for the NVIDIA Encoding Preset in the output quality setting, or turn off this function.
- Use CPU H.265 Fast or ProRes encoding.
- Without changing other settings, check the
Debug
below the advanced settings and restart the task. The software will report an error again, but the output log will contain the error information of the encoders. Please adjust the settings according to the error information (such as when using Anime4K, it is easy to report the error ofUnable to allocate sufficient video memory
) and retry, or contact the developer to solve.
What if the software processing is completed but fails to merge at the end
- Check the project folder and delete the possible
chunk-000-000000-000000
block file, which often appears to be damaged. - Check each block video file to see if it can be played; if not, it means the file is damaged and needs to be restored at this block and then merged.
- If the task is completed but only the merge fails, click
Merge Current Task
in the toolbox. If it still reports an error, please turn off the subtitle and audio merge, and after the video merge is completed, use a third-party tool such as MKVToolNix to manually merge the audio and subtitle tracks. - If the task is not completed, click
Auto Configure
below the basic settings and then click theInterpolate
orEncode
button on the home page to continue the task. - If the merge fails or the output video clip is much shorter than the preset duration, it is necessary to check each chunk video file in the project folder to see if it can be played; if not, it indicates that the file is damaged and needs to be deleted and progress recovery is carried out to regenerate the chunk.
- It is possible that the output path is too long and exceeds the Windows limit, resulting in an error. In this case, please go to Windows official tutorial to resolve the maximum file path length limit of Windows and try again.
Other Error Reporting Issues
Steam cannot open the software, or report garbled characters and pop-up error boxes.
- If Steam cannot open the software, or report garbled characters and pop-up error boxes. Add the white list path of all exes in the SVFI installation folder to the anti-virus software, and restore the files in the quarantine area. Check the file integrity in Steam.
- Do not install irrelevant fonts in the system to prevent potential software failure.
- If
steamworks: None has no App
is reported when starting, please find the SteamworksPy64.dll in the steamworks folder under the SVFI installation directory and add it to the white list. - Close the background anti-virus software, or choose to upload the false positives.
- For other antivirus software, the entire folder needs to be added to the whitelist.
Steam cannot download files, prompting insufficient permissions or disk space.
- Check if there is sufficient space on the installation disk (it is recommended to install on a solid state drive).
- Exit Steam. Enter the file explorer, right-click the installation disk - Security - Grant
Full Control
permission to all users.
Software Settings Issues
If there is only the ncnn model in the frame interpolation algorithm dropdown:
Follow the steps below to correct the error:
- Check if you have an NVIDIA GPU. If not, this situation is normal.
- Exit the software, click
steam-library, SVFI, settings (gear), properties, installed files, check software files integrity
- Check the background anti-virus software, allow the false positive threat from the SVFI installation folder, add the entire SVFI installation folder to the white list
- Delete the
svfi_gpu_info.json
in the software installation folder, and restart the software - If it still doesn't work, manually delete the three files
Installation Folder\torch\lib\cublas64_11.dll
,torch\lib\caffe2_nvrtc.lib
, andtorch\lib\caffe2_nvrtc.dll
and then execute the above steps.
Can the progress be restored if the frame interpolation is exited halfway? Can't find the progress?
- Go to Work Status Recovery and click Auto Configure.
- If the software displays "No work progress found" after clicking the button, please troubleshoot the problem according to the following steps:
- Confirm that the output folder exists
- Confirm that there is a video file named
chunk-xxx-yyyyyy-zzzzzz
in the output folder. If not, it means there is no recoverable work progress - Confirm that the last 10 digits of the output folder are the same as the task id of the input file. If not, please manually change the task id and click the button to try again.
- If the problem still cannot be solved, move the mouse over the option button, read the option description carefully, and fill in the appropriate values in Starting block count and starting input frame count according to the prompts.
Tips
For version 6.x, you can directly drag the output folder/project folder into the input file box to directly restore the project progress
The SVFI window size is abnormal?
- Open the location of SVFI from Steam, and find SVFI.Community for the community version.
- Find SVFI.Professional for professional users.
- Right-click, Properties, Compatibility, Change high DPI settings, override high DPI scaling behavior, System.
Fewer available functions than in the tutorial?
- Not updated to the latest version
- Some functions are in internal or public beta testing and will be made public later
- The purchased version is not the professional version
How to only perform super-resolution without frame interpolation at the same time?
After setting the parameters, change the frame interpolation ratio to one time, and then click Encode (do not click Interpolate)
How to perform slow motion frame interpolation (slow motion, etc.)?
- For live-action shooting, please refer to the time remapping in custom encoding.
- For animation, first try Dedup shots on twos or forward de-duplication, then refer to the time remapping in custom encoding, or use After Effects for variable speed frame interpolation and other post-processing after one shot and three de-duplication frame interpolation.
How to determine the original resolution of the animation
- Please refer to How to determine the original resolution of the animation
Output Effect Issues
warning
Due to operations such as frame interpolation and super-resolution, the output video may have difficulties in decoding by some players due to high resolution or large bitrate, resulting in situations such as stuttering and incorrect resolution. Here, it is recommended to use MPV instead of other players (such as potplayer, VLC, etc.) to play the video to avoid troubles caused by incorrect playback settings.
What to do if the frame interpolation effect is not smooth?
- This situation may be caused by duplicate frames in the original video, or animation (with shots on Ns), you can try to enable duplicate frame removal in the frame interpolation settings and adjust the duplicate removal value.
What to do if the exported video has a lot of noise/graininess/blurriness?
- Before frame interpolation, pull down the Encode quality CRF value in the encoding quality settings, or adjust the render preset.
What to do if the frame interpolated video has distortions, etc.?
- If this situation occurs in animation frame interpolation, it is recommended to turn off duplicate frame removal or reduce the duplicate removal value. You can also try to increase the optical flow scale to reduce the possibility of image jello.
- If you have video editing skills, you can patiently use different parameters to frame interpolate several videos, and take the best results of each segment for splicing.
- If the embedded subtitles (hard subtitles, burned subtitles) are distorted, there is currently no good solution. If it is animation frame interpolation, it is recommended to use subtitle-free resources for frame interpolation, and then find subtitles for embedding.
The output video has color shift
- First, check in the software's task list to see if the video is marked as an unknown color space
- If it is marked as an unknown color space, find the output settings in the advanced settings and manually specify the input color conversion curve
- If you don't know what the color conversion curve is, try the first three in turn until the output video is not color shift
- If the above does not solve the problem, please export
settings.ini
under the advanced settings, and then select a section of the original video and its mediainfo and post it to the steam discussion area
Explanation of a special color shift situation
Background: A user used an unknown encoder to encode a certain bt709 video to yuv 420p 10bit with assigned tv color range (16-255). The output video should be marked as tv color range, but was wrongly marked as pc (full range) by the unknown encoder. The user then processed this video with SVFI and output a color shift and a non-color shift video under two different settings. Now, according to this discussion, the reason for the color shift is analyzed:
In the first setting, the color conversion curve of SVFI is set to auto, then when SVFI processes this video and completes the YUV to RGB conversion process, it will use the wrong color range tag information, that is, parse the 16-255 content with the range of 0-255. Since the black of 16 in the range of 0-255 is not pure black, the final output result shows that the black appears whiter and the white appears darker.
In the second setting, the color conversion curve of SVFI is set to bt709, and SVFI will force to parse the video content using the tv color range, and this setting output will not cause color shift.
The output video HDR metadata is lost
For example, HDR10 static data is lost.
At this time, the output log may have the following records:
2024-04-06 21:45:15,705 - video - 495 - ERROR - Parse Master Display Info Failed: [{'side_data_type': 'SMPTE 12-1 timecode', 'timecodes': [{'value': '01:00:00:00'}]}]
If a similar situation occurs, you need to fill in relevant parameters in the custom compression command line to force assigning HDR10 static metadata, and re-export the video;
Or use the mkvtoolnix packaging tool to repackage the static metadata;
The specific parameters for using the custom compression command line can be obtained through the following:
- Enable the debug mode under the advanced settings
- Click Only Compress to process other normal HDR10 videos
- Observe the parameters about the compression command line in the output log, select the data containing the HDR10 parameter and then fill it in the custom compression command
Video output has bad patterns or green glitches
- First, it is recommended to replace the video player, you can try to use the MPV player
- If the problem persists after replacing the MPV player, consider encoding with the CPU encoder
- If green blocks appear when the video is exported and played, enable VSPipe Decoding
Video output has black screen flickering
- This is caused by the graphics card overload.
- It is necessary to reduce the input resolution or change the algorithm model.
- Refer to this solution to modify the response time setting of the GPU to avoid similar errors
- Using
TruMotion
orForward Dedup
for frame interpolation may also cause this black screen. If this situation still occurs after trying the above methods, please change to another de-duplication method.
Video output audio and video are out of sync
- SVFI does not support variable frame rate video input. If the variable frame rate tag is found in the input video in the task list, please use shanaencoder to re-encode the input video into constant frame rate and then input it into SVFI.
- If it is really impossible to encode the input video, or if the input video is constant frame rate but the output video is still audio and video out of sync, you can try to enable the
Use VSPipe Decoding
option in the advanced settings, but this still cannot guarantee that the output audio and video can be synchronized in the above cases - If the
VSPipe Decoding
option cannot be enabled, you can try to set theuse_minterpolate
key inglobal_advanced_settings
totrue
, specifically refer to here
Scene List from Transition Chooser de-syncs from output when using VFI
- Enable Debug mode under advanced settings,
- The scene that SVFI reads from the transition list will be marked out in the output video with a green mark on the top left corner.
- Adjust the number of shift option in the scene detection settings panel to sort of calibrate the scene detection result
Software Performance Issues
How to determine if the software processing speed is normal? What to do if the graphics card utilization rate is low?
- For NVIDIA GPUs, first click the small triangle next to the
3D
utilization rate on thePerformance
page in the task manager, and change it to CUDA. If this option is not available, you need to turn off the hardware acceleration feature of Windows. If you don't want to turn it off, you can treat the 3D utilization rate as the CUDA utilization rate. For AMD GPUs, you need to change it toCompute0
. - The CUDA/3D/Compute0 utilization rate is generally around 85% or higher for normal, and there is no need to care about the CPU utilization rate. It is recommended that the CPU utilization rate is less than 80%, otherwise it will affect the graphics card scheduling speed.
- If you find that the graphics card utilization rate indicator is low, please check whether the CPU utilization rate has reached 100%; if it has reached 100%, it means that the processing speed has encountered a CPU bottleneck. In this case, you can adjust other options, such as encoding settings, using hardware decoding or hardware encoding, adjusting the encoder preset or changing the encoder to speed up (such as changing
CPU H.265 very slow
tofast
, andCPU H.264 slow
toNVENC H.264 slow
), until the graphics card utilization rate exceeds 80%. - If the CPU is not the bottleneck, it is recommended to use a better encoder preset. Because the number of cores of the graphics card determines the frame interpolation speed, and when using CPU encoding, the CPU determines the encoding speed.
- Under the same settings, to improve the task speed, basically only by replacing the graphics card with more cores and larger bandwidth, but the encoding speed can be considered to be improved by selecting a faster encoder and preset.
Does the software take up a lot of memory?
- Please pay attention to whether the software takes up a very large amount of physical memory.
- Unreasonable settings (such as needlessly performing 8K video super-resolution) will cause the software to consume a very large amount of memory.
- When the physical memory is exhausted, the software will call virtual memory, resulting in a slower speed.
- Therefore, after the physical memory consumption exceeds 70%, please change the manual specified cache memory size in the Advanced Settings - Output Settings to 1G.
- Generally, please allocate more virtual memory to the system disk to avoid memory allocation errors.
Why is the processing speed of high-end NVIDIA GPUs very slow?
- If the frame interpolation or super-resolution function is used, please observe the shared video memory usage in the task manager. If the shared video memory usage exceeds 25% and the graphics card utilization rate is at full load, it means that the current settings exceed the load limit of the graphics card, and you need to refer to the advanced settings to reduce the settings, such as reducing the output resolution.
- The software runs at the fastest speed when the shared video memory usage is 0.
What to do if the video memory is not fully utilized?
- The more video memory is not necessarily occupied, the faster the speed. Even if the SVFI program tries to use all video memory for best performance, it may not be able to improve the speed, because there are a large number of other limiting factors such as the render queue length and the machine power consumption limit.
When a task is forced to end, the video memory and memory cannot be released?
- In the advanced settings, find the toolbox option and click the Terminate Remaining Processes button.
Warning
This will end all tasks, including tasks from other SVFI instances. To avoid this, please manually end all SVFI CLI processes under the current SVFI process in the task manager, or disable the Exit Recklessly option in the preferences. When enabling multi-threading, it is always recommended not to click the end task button easily.
Will long-term frame interpolation damage the graphics card?
- Running SVFI for a long time generally will not affect the life of the graphics card, but if the heat dissipation measures are not done well, the temperature is too high, or the frame interpolation program is run after overclocking, it will still cause damage to the graphics card.
- According to the EULA (Software User Agreement), SVFI is not responsible for hardware damage caused by frame interpolation.