This forum uses cookies
This forum makes use of cookies to store your login information if you are registered, and your last visit if you are not. Cookies are small text documents stored on your computer; the cookies set by this forum can only be used on this website and pose no security risk. Cookies on this forum also track the specific topics you have read and when you last read them. Please confirm whether you accept or reject these cookies being set.

A cookie will be stored in your browser regardless of choice to prevent you being asked this question again. You will be able to change your cookie settings at any time using the link in the footer.

CUDA H.264 was disabled
#1
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.
Reply
#2
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). Smile

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
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
Reply
#3
(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). Smile

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)
Reply
#4
[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
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
Reply
#5
(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
Reply
#6
Okay, then tell Hybrid to clear the tool cache (Config->Tools->Clear all cached tool infos) and it should show 'NVEnc' as encoder. Smile

Cu Selur
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
Reply
#7
(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. Smile

Cu Selur

Success! Many thanks!  I will run a few encodes and see how it goes...
Reply
#8
(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. Smile

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
Reply
#9
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
----
Dev versions are in the 'experimental'-folder of my GoogleDrive, which is linked on the download page.
Reply
#10
(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
Reply


Forum Jump:


Users browsing this thread: 1 Guest(s)