Posts: 9
Threads: 1
Joined: Nov 2017
Dear Selur, forum users,
I have done much research and forum searching, but cannot find the solution to my problem. For some reason, Hybrid is disabling the Cuda x.264 options. I updated the NVIDIA driver to 347.09 since that seems to be the earliest version needed to run CUDA and NVENC. However, I did not include the 3D and PhysX options since I don't game, and prefer to use an older driver since it is half the size of the new gaming optimized drivers.
Can you take a look at this log and see if the problem is easily solved? Thanks in advance for your help.
Brad
Debug excerpts:
: Ignore tools list: Cuda
: Checking version for: cuda -> Skipping cuda since it has no version info
: ->removing CUDA H.264 support,...
: -> removing NVEnc support,...
: Detected graphic cards:
Standard VGA Graphics Adapter
RDP Encoder Mirror Driver
NVIDIA GeForce GTX 770
RDPDD Chained DD
RDP Reflector Display Driver
: Detected NVIDIA PureVideo compatible cards:
GeForce GTX 770
: Found the following NVIDIA PureVideo compatibile card:
GeForce GTX 770
Please, read the 'Infos needed to fix&reproduce bugs,..'-sticky before you post about a problem.
Posts: 10.985
Threads: 57
Joined: May 2017
20.11.2017, 19:06
(This post was last modified: 20.11.2017, 19:12 by Selur.)
That is support for the old cuda encoder.
NVEnvC is the new encoder which also supports H.264.
Support of old encoder is disabled since you lack the required '.dll's (NDIDIA removed them).
Also to tell Hybrid to look for the old CUDA dlls you need to enable 'supportNVCUEncCuda=true' in you misc.ini, see: [INFO] *hidden* Hybrid options,....
In case your card supports NVEncC, use that instead of the old Cuda encoder. Quality is better with NVEnc.
Cu Selur
Posts: 9
Threads: 1
Joined: Nov 2017
(20.11.2017, 19:06)Selur Wrote: That is support for the old cuda encoder.
NVEnvC is the new encoder which also supports H.264.
Support of old encoder is disabled since you lack the required '.dll's (NDIDIA removed them).
Also to tell Hybrid to look for the old CUDA dlls you need to enable 'supportNVCUEncCuda=true' in you misc.ini, see: [INFO] *hidden* Hybrid options,....
In case your card supports NVEncC, use that instead of the old Cuda encoder. Quality is better with NVEnc.
Cu Selur
Ah...now that makes sense. However, there is this message in the log:
-> removing NVEnc support,...
Does this mean that my installation has reduced or disabled NVEnc functions?
If no, how do I enable encoding with NVEnc? There is a video handling option on the Base tab called "NVEnc (ffmpg)" but it doesn't look like the right one...
EDIT:
I used the NVEnc tab and now get another error:
Any ideas on the cause and solution?
ERROR: C:\Users\BRADMI~1\AppData\Local\Temp\test_12_43_35_1210_05.mkv is too small! (byteSize: 0byte)
Posts: 10.985
Threads: 57
Joined: May 2017
[quote]]-> removing NVEnc support,...[quote]
Happens, when Hybrid determines that your system doesn't support NVEnc.
This happens by calling:
NVEncC.exe --check-features
That "NVEnc (ffmpg)" wasn't removed is a bug. (fixed locally for next release)
If the nvcuvenc.dll is installed in your system (or resides in the Hybrid folder) and 'supportNVCUEncCuda=true' is set the video selection should show 'CUDA H.264' (<- this is the old encoder).
My guess it that nvenc simply isn't supported by your graphic card or the drivers you use. (see 'check-features' output)
Cu Selur
Posts: 9
Threads: 1
Joined: Nov 2017
(20.11.2017, 20:34)Selur Wrote: Quote:]-> removing NVEnc support,...
Quote:Happens, when Hybrid determines that your system doesn't support NVEnc.
This happens by calling:
NVEncC.exe --check-features
That "NVEnc (ffmpg)" wasn't removed is a bug. (fixed locally for next release)
If the nvcuvenc.dll is installed in your system (or resides in the Hybrid folder) and 'supportNVCUEncCuda=true' is set the video selection should show 'CUDA H.264' (<- this is the old encoder).
My guess it that nvenc simply isn't supported by your graphic card or the drivers you use. (see 'check-features' output)
Cu Selur
OK... I installed the latest drivers and got this message running "--check-features."
There is an error "GPU: Unknown (error on OpenCL clGetDeviceInfo)"
and I don't see NVEnc in the returned list.
However, the EVGA GTX 770 is NVEnc capable (Kepler architecture). Any ideas?
C:\Program Files\Hybrid>NVEncC.exe --check-features
Environment Info
OS : Windows 7 (x64)
CPU: Intel Core i7-2600K @ 3.40GHz [TB: 3.59GHz] (4C/8T)
RAM: Used 4483 MB, Total 16358 MB
GPU: Unknown (error on OpenCL clGetDeviceInfo)
List of available features.
Codec: H.264/AVC
Max Bframes 4
RC Modes 63
Field Encoding 1
MonoChrome 0
FMO 0
Quater-Pel MV 1
B Direct Mode 1
CABAC 1
Adaptive Transform 1
Max Temporal Layers 0
Hierarchial P Frames 0
Hierarchial B Frames 0
Max Level 51
Min Level 1
4:4:4 0
Max Width 4096
Max Height 4096
Dynamic Resolution Change 1
Dynamic Bitrate Change 1
Forced constant QP 1
Dynamic RC Mode Change 0
Subframe Readback 0
Constrained Encoding 1
Intra Refresh 1
Custom VBV Bufsize 1
Dynamic Slice Mode 1
Ref Pic Invalidiation 1
PreProcess 0
Async Encoding 1
Max MBs 65536
MAX MB per sec 983040
Lossless 0
SAO 0
Me Only Mode 0
Lookahead 0
AQ (temporal) 0
10bit depth 0
Posts: 10.985
Threads: 57
Joined: May 2017
Okay, then tell Hybrid to clear the tool cache (Config->Tools->Clear all cached tool infos) and it should show 'NVEnc' as encoder.
Cu Selur
Posts: 9
Threads: 1
Joined: Nov 2017
(20.11.2017, 21:35)Selur Wrote: Okay, then tell Hybrid to clear the tool cache (Config->Tools->Clear all cached tool infos) and it should show 'NVEnc' as encoder.
Cu Selur
Success! Many thanks! I will run a few encodes and see how it goes...
Posts: 9
Threads: 1
Joined: Nov 2017
(20.11.2017, 21:35)Selur Wrote: Okay, then tell Hybrid to clear the tool cache (Config->Tools->Clear all cached tool infos) and it should show 'NVEnc' as encoder.
Cu Selur
OK...Hybrid has now become a great way to encode two files simultaneously with Handbrake and utilize all CPU & GPU resources when in a hurry to get out of town with good media!
However, if Hybrid is left unattended, my current method requires user input after subtitles have been demuxed. Is there a way to define the desired subs, then execute a program chain that does not require another step to create the output? To clarify, I am executing Hybrid with subtitle commands that require another step to encode video and remux with the audio. Is there a way to start both and walk away without interface?
Thanks,
Brad
Posts: 10.985
Threads: 57
Joined: May 2017
Quote:OK...Hybrid has now become a great way to encode two files simultaneously with Handbrake and utilize all CPU & GPU resources when in a hurry to get out of town with good media!
OK ... you can encode multiple files in Hybrid in parallel (Jobs->Queue->Parallel jobs) btw..
Quote:However, if Hybrid is left unattended, my current method requires user input after subtitles have been demuxed. Is there a way to define the desired subs, then execute a program chain that does not require another step to create the output? To clarify, I am executing Hybrid with subtitle commands that require another step to encode video and remux with the audio. Is there a way to start both and walk away without interface?
What do you do with the subtitles after demuxing? (You can tell Hybrid to automatically queue subtitles of a specific language,...)
Cu Selur
Posts: 9
Threads: 1
Joined: Nov 2017
(21.11.2017, 06:10)Selur Wrote: Quote:OK...Hybrid has now become a great way to encode two files simultaneously with Handbrake and utilize all CPU & GPU resources when in a hurry to get out of town with good media!
OK ... you can encode multiple files in Hybrid in parallel (Jobs->Queue->Parallel jobs) btw..
Quote:However, if Hybrid is left unattended, my current method requires user input after subtitles have been demuxed. Is there a way to define the desired subs, then execute a program chain that does not require another step to create the output? To clarify, I am executing Hybrid with subtitle commands that require another step to encode video and remux with the audio. Is there a way to start both and walk away without interface?
What do you do with the subtitles after demuxing? (You can tell Hybrid to automatically queue subtitles of a specific language,...)
Cu Selur
Selur,
I found the parallel thread option you suggested, and NVEnc on the (older) Kepler GPU is 2-3 times faster than x.264 on the Quad Core CPU. Thanks for tips.
For subtitles, I want to automate merging the English subtitle into the mkv container for selection upon playback. However, my settings cause Hybrid to analyze and extract the subtitle upon selecting a video file, often taking quite a while for a BD movie. Then it stops for user input to create the job cue and then execute the conversion. In my configuration, there are several steps for the desired output, with much time in between.
Is there a way to select the source file and make the conversion in one operation, without waiting for the subtitle extraction? The idea is to configure the settings, select a source file for conversion and walk away, then come back later to a converted video file with subs;-)
My Settings:
Config>Automate>Passthrough>Subtitles (checked), All Subtitles (checked, English)
Base>Subtitles (checked), All Subtitles (checked)
Disabling the All Subtitles option would be ok since most of my movies only have one subtitle. However, there may be an additional forced subtitle on some sources that would either need a forced flag or embedding.
Thanks,
Brad
|