Skip to main content
June 28, 2013
質問

NVidia GPU-accelerated H264-encoder plugin, ready for public testing

Hi all,

I have written a 'proof-of-concept' GPU-accelerated H264-encoder for Adobe Media Encoder (CS6).  It requires an NVidia 6xx/7xx series "Kepler" GPU (CUDA capability 3.0), and uses the dedicated GPU's builtin hardware-encoder (NVENC) to offload the H264-encoding process from the host-CPU.  This software is "proof-of-concept", so it's missing some critical features (no interlaced-video support, no AAC-audio or Dolby AC-3 audio), and of course, it could be buggy!  But it's free.

!!!! Disclaimer: NVENC-export is third-party software that is not supported by either Adobe or NVidia.  It comes with no warranty -- use at your own risk.

Software/hardware Requirements:

(1)Adobe Premiere Pro CS6 or Media Encoder CS6 (Windows version)

Sorry, MacOSX is not supported. (NVidia NVENC SDK doesn't support MacOSX.)

(1)NVidia Kepler GPU <GKxxx> with 1GB VRAM or more  (GTX650 or above, GT650M or above)

(Sorry, NVidia Fermi <GFxxx> is NOT supported, it doesn't have the NVENC hardware feature)

Note,if you have MPE-acceleration enabled, keep in mind the NVENC-plugin consumes some additional VRAM because it uses your GPU to perform H264-encoding.

Strongly recommend a 2GB card

(2) Microsoft Visual C++ 2010 SP1 x64 redistributables

          (download this from Microsoft's website)

Installation instructions:

     In Adobe Premiere Pro CS6:

     (1)      On your system, locate the installation-directory for Premiere Pro CS6.

               Usually, this is C:/Program Files/Adobe/Adobe Premiere Pro CS6

    (2)     Copy the included file Plug-ins/Common/nvenc_export.prm

               to <installation dir>/Plug-ins/Common/

     -> To choose the NVENC-plugin in Premiere Pro,

          In the format-menu, select <NVENC_export>

     In Adobe Media Encoder CS6:

     (1)    On your system, locate the installation-directory for Media Encoder CS6.

          Usually, this is C:/Program Files/Adobe/Adobe Media Encoder CS6

     (2)     Copy the included file Plug-ins/Common/nvenc_export.prm

          to <installation dir>/Plug-ins/Common/

     -> To choose the NVENC-plugin in Media Encoder,

          in the format-menu, select <NVENC_export>

Performance & quality notes:

(1) How much faster is NVENC-export than Adobe's built-in Mainconcept H264 encoder?

Depends on your PC system.  On my test-system, which is ordinary desktop PC with Intel i5-3570K (4-core 3.4GHz), NVENC-plugin is roughly 4x faster than Mainconcept. On a dual-socket Xeon Ivy Bridge-E system, NVENC would probably only be 2x faster (in Media Encoder.)

(2)How does the video-quality compare?

Comparing similar settings/video-bitrate, Mainconcept performs better at lower-bitrates(less artifacts).  At medium-high bitrates, NVENC is comparable to Mainconcept.

(3) How does NVENC-export encode the video?

The plugin fetches videoFrames from the Adobe application, then converts the frames from YUV420 to NV12 surface-format (using host-CPU.)  Then it passes the converted frames to the NVENC front-end.  From here, NVENC hardware takes over, and handles all aspects of the video compression. When NVENC hardware is done, it calls the plugin to output write the elementary bitstream (to the selected filepath.) NVENC-hardware does NOT encode audio, nor does not multiplex the A/Vbitstreams -- this is still done in software (on the host-CPU)

The NVENC hardware block has very little CPU-overhead.  But since video-encoding is just 1 step in the entire Adobe rendering path, CPU-usage will likely still be quite high when using NVENC-plugin.

(4) What's the maximum-size video NVENC-export can handle?

H264 High-profile @ Level 5.1, which works out to roughly 3840x2160 @ 30fps. (Note the actual encoding-speed will probably be less than 30fps.)

(5) How fast is the NVENC-export hardware in Kepler GPU?

Assuming the Adobe application host is infinitely fast (i.e. can send video to plugin in zero-time), NVENC-hardware will encode High-profile (CABAC, 2 refframes, 1-bframe) 1920x1080p video @ ~100fps. At 3840x2160p (4k video), the hardware encode-speed drops to roughly 20-25fps.  That is still faster than a desktop PC.

NVENC-speed is generally same across the Kepler family - the high-end Geforce GTX Titan (or GTX780) is no faster than the entry-level Geforce GTX650, because all Kepler models share the same NVENC hardware-block, which is totally separate and independent of the GPU's 3D-graphics engine.

In premiere Pro 6, MPE acceleration will greatly affect how quickly Adobe can render video to the exporter.  So a more powerful Kepler GPU will probalby complete projects faster than a less powerful one (up to NVENC's performance ceiling.)  For more info, please refer to NVidia's NVENC whitepaper at their developer website (public)

(6) I have a multi-GPU setup, can I encode with multiple GPUs?

No, NVENC targets and uses only a single physical GPU.  (You can choose which one.)

Known limitations and problems:

NVENC-plugin is a 'proof-of-concept' program -- it is not a finished product.  So it's missing some features, and other things are known to be broken:

    • Interlaced video encdoing does not work at all (not supported in current consumer Geforce drivers)

    • Audio support is very limited: uncompressed PCM)

no AAC or Dolby-Digital

    • Multiplexer support is very limited: MPEG-2 TS only, using an included third-party tool TSMuxer.EXE

no MPEG-4 muxing (*.MP4)

    • When the muxed MPEG-2 TS file in Windows Media Player (WMP), there is no sound.  This is because WMP doesn't recognize PCM-audio in mpeg-2 ts files.  You have 2 choices; you can use a third-party media-player such as MPC-HC or VLC.  Or you can postprocess the audio-WAV file into a compatible format (Dolby Digital/AC-3)

    • in the pop-up plugin User-interface, the <multiplexer> tab is missing or not shown properly.

(To fix: Select a different codec, then re-select NVENC_export.)

    • Doesn't support older NVidia GPUs (GTX5xx and older, GT630 and lower)

Sorry, NVENC hardware was introduced with NVidia's Kepler family (2012)  Anything older than that will NOT work with the plugin.

このトピックへの返信は締め切られました。

返信数 100

MarkWeiss
Inspiring
April 26, 2018

Installed OBS (streaming broadcast software) and had to update my video driver in order to get it working.

Unfortunately, that broke the nvenc install for Adobe. nvenc is no longer on the export CODEC selection menu.

Participant
May 16, 2018

I would recommend to try this new plugin Releases · Vouk/voukoder · GitHub

PECourtejoie
Community Expert
Community Expert
May 16, 2018

Nice name for an encoder!

Participating Frequently
November 21, 2017

Stop nvenc.... And active intel qsv

Video

Known Participant
November 27, 2017

After a format a few days ago and using WSUS Offline's latest version and running the Updater 3 times (Asked for this in order to install most of the WUpdate's updates up to date), somehow the NVENC_Export thing WORKS AGAIN!.. Perhaps it was either a missing update or something wrong

Again, same latest Nvidia drivers etc!

Hope this helps!

Rock_BR
Participant
November 20, 2017

One question, instead of saving the audio in AAC, is it possible to save in AC3 for the file to be compatible with Bluray? I discovered that saving in MKV, when transforming to M2TS with tsMuxerGUI, the file does not interrupt before the end, losing frames, however it would be much easier if it already had the correct audio, however it converts to AAC, which makes it lose a time searching for the correct AC3 audio and encoding it. It would be much better if the program itself converted to AC3 and in the end did MUX in MKV. The mux in TS does not suit me, as it applies two things that make it incompatible with Bluray, which are: 1 - Insert SEI and VUI data if absent 2 - Continualy insert SPS / PPS Two options that I switch OFF in the tsMuxerGUI, and use M2TS and still change the audio through AC3, are many commands to execute, it would be so nice if there was someone who knows programming to make a new version of the Nvenc codec and put these options, file ready for bluray.

Participating Frequently
October 19, 2017

What is the download link? Sorry

Known Participant
November 18, 2017

It seems that any possible patch that was given in the CC 2018 version killed the GPU Patch thing in the youtube vid above... Giving me an error. There were no MS-DOS windows showing the progress of the stuff.

Known Participant
November 18, 2017

This is the error (Btw, even if i set CC App to English North America, Premiere keeps coming in Spanish.. Why?)

There's a small chance that perhaps Nvidia's newest drivers for DESTINY 2 from this week, perhaps, are the cause of this... That, or we need a new patch etc etc...And it just worked 2 days ago!!!!

7DPgClR4T6OMxlQuqaZ28Q.png

Participating Frequently
October 19, 2017

What is the latest version? And works with Adobe CC 2018 application?

Participant
July 15, 2017

is there a way to fix this? worked fine before, changed nothing(not even driver etc) and now it doesnt anymore...

Known Participant
July 24, 2017

I'm also waiting for help for this. Been a time i've uninstalled Pro 2017 because of it's killing update..

sidew98600302
Participating Frequently
June 23, 2017

Anybody know how to fix broken first frame?

Here is url Битва Машин 3 | SDWLK | Снято в 4k on Vimeo

Participant
January 31, 2017

Hi author and everyone!

 

I was got this problem with my card 930M on Dell Vostro 5459 (max option)
CPU: Intel Core i7 6500U (Skylake)
RAM: 8GB
GPU: NVIDIA Geforce 930M

Adobe Premiere Pro CC 2017

 

Please help me solve this!
I do not always online so send me an email:<removed-kgkad>

 

Thanks in advance!

 

FYI

Matt Chandronait11713623
Participating Frequently
February 22, 2017

I've been casually monitoring this thread, but am reluctant to take the dive. I have, however, submitted this to Adobe as a Feature Request: Feature Request/Bug Report Form -- I suggest everyone else that comes across this thread do the same thing! I referenced the thread in my feature request as well. Especially if you're a freelancer or smaller production company like mine, ANYTHING that can help me get my videos out faster to clients is a worthwhile feature that I'd gladly allocate my CC subscription fees to directly if I could :-)

Good to know that this plug works with 2017 and the RE7 drivers. I just built a new GTX1080-based machine for 4K work, and I'd love to make use of all its hardware/firmware.

Participant
February 23, 2017

This problem does not belong to responsibility range of Adobe or NVIDIA because it is a plug-in. I can not submit this to Adobe. That's the reason why I reported to author to get the solution (not Adobe)

QuantumParadoxes
Participant
January 20, 2017

I used the latest november version. No errors when exporting, however, rendered video has full of screenscreens, screen tear and artifacts, using the software rendering has no problems, can anyone help?

Participant
January 7, 2017

Adobe Hire this man already and incorporate this to CC,
its a long overdue feature - why do we need to wait for hours with outdated technology? my 1070 GPU is hardly being used in my i7 laptop.
so much processing power goes to waste and so is our time waiting for the exports!
Adobe - stop ignoring the desktop/laptop crowd - not everyone are working on XEON computers, we want to utilize our strong video cards more then for 2-3 effects.

lk58361083
Participating Frequently
January 7, 2017

adobe gave us a virtual keyboard. why you are unhappy.
shortcut_image.JPG