Topaz Video AI v3.0.5

I’m beginning to wish I hadn’t paid again to be a beta tester for this. It’s been a waste of loads of time since v3 came out. Had enough frustration now so I’m giving up and sticking with the old one that still works better and faster.

4 Likes

Additional review of ddv3 for v3.0.5

About output
There seems to be a problem when outputting MPEG2-TS files
I had no problems with other MPEG2 and MP4

Image quality of ddv3
MPEG2 file is v2.6.4 and image quality matches
And some parts were better in v3.0.5

MPEG2-TS cannot be output due to AI error
On the contrary, the preview image is degraded

RTX 3080 with minor OC. Latest Studio drivers and I do not at any point see usage above maybe 20%, and that comes in slow spikes. Current FPS is 0.3.
A video that would take 1-2 days max in 2.6.4 is looking to be about 7.5 days in 3.05.

nvidia has released another driver yesterday.

But is not the Studio version! :smiley:

Hi,
after an update to the v.3.0.5. my Topaz Video AI crash everytime at the beginning of starting “Run Model”. I´ve tried a several different files and formats, different export settings, but nothing helped. Is it possible to downgrade your software to previous versions pls? This update doesnt work on my workstation :frowning:

Preview images are desynced which effectively makes them more or less useless.

If you purchased v3, you should be able to download and use any previous version. You can find download links on this forum.

What is studio drivers? Better than WHQL releases? (Windows Hardware Quality Labs)

Hi, could you make sure you have detailed logging enabled in advanced settings and then send us logs from a session where this occurs?

Previous versions (e.g. 3.0.4) listed “Quality mismatch between 2.6.4. and 3.0.x for some models.” under “Known Issues”. This line, along with my own comparisons between 2.6.4 and earlier versions of 3.0, indicated to me that the models in 3.0 were—at least in some cases—of worse quality than those in 2.6.4.

So 3.0.5 has gotten model quality back up to where it was before.

1 Like

It’s the same driver as the game ready, but released less often and supposed to be more stable.

1 Like

I’m using the FFMPEG cli.

  • This worked in 3.0.4
  • This is the current nvidia studio driver, I also downgraded to the previous with no change (I’m back on current)
  • h264_nvenc works fine

Command Line (some bits redacted just to keep it shorter)

(FFMPEG command line was largely generated by 3.0.5 GUI with some hand edits to try to troubleshoot and enable debug messaging.)

ffmpeg -v debug "-hide_banner" "-nostdin" "-y" -strict 2 -hwaccel auto "-i" "{inputfile}" "-avoid_negative_ts" "1" "-sws_flags" "spline+accurate_rnd+full_chroma_int" "-color_trc" "2" "-colorspace" "2" "-color_primaries" "2" "-filter_complex" "veai_up=model=prob-3:scale=0:w=1280:h=960:preblur=-0.48:noise=0.24:details=0.32:halo=0.48:blur=0:compression=0.96:device=0:vram=0.9:instances=1,noise=c0s=20:allf=t:all_seed=0,scale=w=1280:h=960:flags=lanczos:threads=0" -c:v hevc_nvenc -profile:v main -preset medium -pix_fmt yuv420p -global_quality 19 "-b:v" "0" "-map_metadata" "0" "-movflags" "frag_keyframe+empty_moov+delay_moov+use_metadata_tags+write_colr " "-map_metadata:s:v" "0:s:v" "-map_metadata:s:a" "0:s:a" "-c:a" "aac" "-metadata" "videoai={removed}" "{outputfile}"

Relevant Debug FFMPEG STDERR
(from first [hevc_nvenc] to the end)

[hevc_nvenc @ 00000218E3601780] Loaded lib: nvcuda.dll
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuInit
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDeviceGetCount
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDeviceGet
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDeviceGetAttribute
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDeviceGetName
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDeviceComputeCapability
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuCtxCreate_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuCtxSetLimit
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuCtxPushCurrent_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuCtxPopCurrent_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuCtxDestroy_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemAlloc_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemAllocPitch_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemAllocManaged
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemsetD8Async
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemFree_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpy
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpyAsync
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpy2D_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpy2DAsync_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpyHtoD_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpyHtoDAsync_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpyDtoH_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpyDtoHAsync_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpyDtoD_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMemcpyDtoDAsync_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGetErrorName
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGetErrorString
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuCtxGetDevice
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDevicePrimaryCtxRetain
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDevicePrimaryCtxRelease
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDevicePrimaryCtxSetFlags
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDevicePrimaryCtxGetState
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDevicePrimaryCtxReset
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuStreamCreate
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuStreamQuery
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuStreamSynchronize
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuStreamDestroy_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuStreamAddCallback
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuEventCreate
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuEventDestroy_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuEventSynchronize
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuEventQuery
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuEventRecord
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuLaunchKernel
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuLinkCreate
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuLinkAddData
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuLinkComplete
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuLinkDestroy
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuModuleLoadData
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuModuleUnload
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuModuleGetFunction
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuModuleGetGlobal
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuTexObjectCreate
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuTexObjectDestroy
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGLGetDevices_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGraphicsGLRegisterImage
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGraphicsUnregisterResource
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGraphicsMapResources
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGraphicsUnmapResources
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGraphicsSubResourceGetMappedArray
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGraphicsResourceGetMappedPointer_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDeviceGetUuid
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuImportExternalMemory
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDestroyExternalMemory
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuExternalMemoryGetMappedBuffer
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuExternalMemoryGetMappedMipmappedArray
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMipmappedArrayGetLevel
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuMipmappedArrayDestroy
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuImportExternalSemaphore
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuDestroyExternalSemaphore
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuSignalExternalSemaphoresAsync
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuWaitExternalSemaphoresAsync
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuArray3DCreate_v2
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuArrayDestroy
[hevc_nvenc @ 00000218E3601780] Cannot load optional cuEGLStreamProducerConnect
[hevc_nvenc @ 00000218E3601780] Cannot load optional cuEGLStreamProducerDisconnect
[hevc_nvenc @ 00000218E3601780] Cannot load optional cuEGLStreamConsumerDisconnect
[hevc_nvenc @ 00000218E3601780] Cannot load optional cuEGLStreamProducerPresentFrame
[hevc_nvenc @ 00000218E3601780] Cannot load optional cuEGLStreamProducerReturnFrame
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuD3D11GetDevice
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuD3D11GetDevices
[hevc_nvenc @ 00000218E3601780] Loaded sym: cuGraphicsD3D11RegisterResource
[hevc_nvenc @ 00000218E3601780] Loaded lib: nvEncodeAPI64.dll
[hevc_nvenc @ 00000218E3601780] Loaded sym: NvEncodeAPICreateInstance
[hevc_nvenc @ 00000218E3601780] Loaded sym: NvEncodeAPIGetMaxSupportedVersion
[hevc_nvenc @ 00000218E3601780] Loaded Nvenc version 12.0
[hevc_nvenc @ 00000218E3601780] Nvenc initialized successfully
[hevc_nvenc @ 00000218E3601780] 1 CUDA capable devices found
[hevc_nvenc @ 00000218E3601780] [ GPU #0 - < NVIDIA GeForce GTX 1080 > has Compute SM 6.1 ]
[hevc_nvenc @ 00000218E3601780] B frames as references are not supported
[hevc_nvenc @ 00000218E3601780] No capable devices found
[hevc_nvenc @ 00000218E3601780] Nvenc unloaded
Error initializing output stream 0:0 -- Error while opening encoder for output stream #0:0 - maybe incorrect parameters such as bit_rate, rate, width or height
[Parsed_veai_up_0 @ 00000218E3635BC0] Uninit called for prob-3 0
[aac @ 00000218E36025C0] Qavg: 53113.934
[aac @ 00000218E36025C0] 2 frames left in the queue on closing
[AVIOContext @ 00000218E12AB500] Statistics: 0 bytes written, 0 seeks, 0 writeouts
Terminating demuxer thread 0
[AVIOContext @ 00000218E129F380] Statistics: 32768 bytes read, 0 seeks
Conversion failed!

Might be a GTX issue then with 3.0.5. I have machines with RTX 20 and 30 but they don’t have Video AI installed.

I have a feeling this is similar to what I posted about here: https://community.topazlabs.com/t/topaz-video-ai-3-0-5-0-b/37094/27?u=david.123

Try adding “-b_ref_mode disabled” in the video encoder section on the command line (after -c:v) and see if that fixes it.

Yes, it is unfortunately an issue with that particular card. The NVENC encoders in FFmpeg were updated to a newer version that has support for HEVC B frames, and it appears that setting defaults to enabled on all cards even if they don’t support it.

HEVC B frames are only supported in hardware from 7th gen (1650 Super) onwards. For older cards, you’ll need to provide -b_ref_mode disabled as the other poster suggested.

1 Like

If this is the case, NVENC HEVC will be broken for anyone trying to use a GTX series card. Not everyone is capable or willing to edit their encoders.json file, so some sort of fix will need to be added to the application.

4 Likes

The most outstanding thing the 3.0 (up to 3.05) doesn’t let me log in, and I spent my money for nothing. Same nothing as topaz tech support.

It’s gone from something that was fun to tinker with, to a complete waste of time. It’s truly frustrating, and making things worse, is all the technobabble in this forum, which makes absolutely no sense to me and is totally unhelpful. No offense to those who know all this video technical stuff, but I thought this software was for the novice to, but it no longer appears that way. It would be like me coming into this forum and talking about a recent mast moment exceedance, that occurred in an Airbus H145 helicopter. I’m sure I’d get a blank stare from just about everybody in this forum, which is how I feel while reading though most of these forum messages.

2 Likes

That did fix it.

EDIT: I updated my encoders.json but it would be nice if Video AI did that for people in 3.0.6.

2 Likes