• Global community
    • Language:
      • Deutsch
      • English
      • Español
      • Français
      • Português
  • 日本語コミュニティ
    Dedicated community for Japanese speakers
  • 한국 커뮤니티
    Dedicated community for Korean speakers
Exit
10

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

Guest
Jun 27, 2013 Jun 27, 2013

Copy link to clipboard

Copied

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.

TOPICS
Hardware or GPU

Views

366.5K

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
replies 421 Replies 421
New Here ,
Dec 28, 2015 Dec 28, 2015

Copy link to clipboard

Copied

I have the same when I start exporting to AME...

9f154e801f.jpg

as you can see, Error: GPU does not support NVENC encoding...

2a10b3c14e.png

Using:

Windows 10 Pro (x64)

GTX 980

Premier Pro CC

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Dec 28, 2015 Dec 28, 2015

Copy link to clipboard

Copied

Same problem with the MP4Box crash but even when I revert back to the old NVENC it crashes. Probably the graphics driver. Rolling back to the old 355.82 driver that worked..

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 29, 2015 Dec 29, 2015

Copy link to clipboard

Copied

Same problems here with latest version (v1.11) of the Plug-in.
After disabling output of the the MediaInfo string at all places in the code - nothing else has been changed - the Plug-in works as before.
You can download the revised plugin - the Adobe namestring is "NVENC-export 1.11Wa" - here; and please give some feedback:

https://drive.google.com/open?id=0BwViiZKy_eFpLU5xUjdVbG4weWM

If your system refuses the download because of a virus warning, you have to temporarily disable your scanner for the time of the download. Its a fake warning and I also get it on some systems. Do then a virus scan of the downloaded item - i do this with the tool "virustotal".

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 29, 2015 Dec 29, 2015

Copy link to clipboard

Copied

Plugin Loading.log:
Loading C:\Program Files\Adobe\Common\Plug-ins\7.0\MediaCore\nvenc_export.prm

The registry tells us not to cache so the plugin will be loaded from disk.

Loading from disk...

This plugin was recognized by loader d3092dcf-904a-4a97-b4ca-66aed7540d57.

but:

00.JPG

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Dec 29, 2015 Dec 29, 2015

Copy link to clipboard

Copied

I reverted back to the old video driver. the old NVENC works as it did before, but Premiere can't play back anything without dropping a ton of frames and the playback stutters now.

I tried a system restore to a point 2 months ago, but that didn't fix the problem.

Now I'm doing a full hard drive image recovery, thinking system restore isn't working. The recovery is taking 19 hours though, so I have to wait that long to find out if that fixed the problem.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Dec 29, 2015 Dec 29, 2015

Copy link to clipboard

Copied

If you are at that point then I would suggest clean Windows installation.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Contributor ,
Jan 01, 2016 Jan 01, 2016

Copy link to clipboard

Copied

The current environment took from June to October to tweak and perfect to usability.

Restoring the image got us back to a functioning system in under 20 hours. A little odd that an image that took 45 seconds to write to disc took so long to restore, but we've back to productivity again.

Messing with video drivers can really disrupt the delicate balance required to make Adobe work with 4K video.

The new NVENC offers nothing that we need (Blu-ray compatibility) but breaks MP4Box due to the new Nvidia driver. So the good drivers are from October and newer ones break MP4Box so the whole thing becomes useless.

Just leaving it as is. Not perfect, but we get productive work out of it the way it is.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 01, 2016 Jan 01, 2016

Copy link to clipboard

Copied

this problem seems solved

MarkWeiss написал(а):

The new NVENC offers nothing that we need (Blu-ray compatibility)

00.JPG

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Jan 02, 2016 Jan 02, 2016

Copy link to clipboard

Copied

yes, vbvBufferSize - last problem for Blue-Ray compatibility (see my previous post with the deception's trick for vbvBufferSize).

But latest problem for me - unavailability of v1.11

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Dec 29, 2015 Dec 29, 2015

Copy link to clipboard

Copied

In my case Premiere CC 2014 played with strong freezing, but Premiere's last version 9.1.0 (174) works well.

I don't mean that NVENC may be this problem's reason.

For example: I have external soundcard and when it isn't connected Premiere don't plays nothing absolutely as button "play" is broken

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Jan 02, 2016 Jan 02, 2016

Copy link to clipboard

Copied

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 02, 2016 Jan 02, 2016

Copy link to clipboard

Copied

Thank you irisb50359875‌! I've downloaded your file and replace the original version. It still says "Error GPU encode..." but it works! The video file is good!

I don't mind reading its message "Error GPU.." anymore! Thanks a lot!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 04, 2016 Jan 04, 2016

Copy link to clipboard

Copied

The Plug-in has been rebuild with NVIDIA's and ADOBE's latest libraries - the Adobe namestring of the Plug-in is "NVENC_export 1.11Wb" - no other changes compared to 1.11Wa.
The Plug-in has been tested with H.264- (with GTX 670 and GTX 960) and HEVC/H.265- (with GTX 960) footage under Windows 10 with ADOBE CS6 (Premiere and Media Encoder) and there it works flawlessly.

This Plug-in can be downloaded from Google Drive:

                             https://drive.google.com/file/d/0BwViiZKy_eFpeEE4dl9PZGRYVFk/view?usp=sharing

If your system refuses the download because of a virus warning, you have to temporarily disable your scanner for the time of the download. Its a fake warning and I also get it on some systems. Do then a virus scan of the downloaded item.

All the previous outdated versions of my compilations of the Plug-in will eventually be removed from Google Drive; those references will no longer be accessible - please use always the newest one.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 04, 2016 Jan 04, 2016

Copy link to clipboard

Copied

00.JPG

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Jan 04, 2016 Jan 04, 2016

Copy link to clipboard

Copied

Similarly for me (Win7 Premiere cc 2015). Plugin's Settings don't displayed (are visible from the previous export to AAC)

NVENC_export 1.11Wb.jpg

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Participant ,
Jan 04, 2016 Jan 04, 2016

Copy link to clipboard

Copied

I have similar yet more tiny-er problems like that but those are things i might not need to use...for now... Ofcourse using the 1st fix , the WA one

Still, my thanks from here!

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 04, 2016 Jan 04, 2016

Copy link to clipboard

Copied

Well, I have to investigate this problem.

The Plug-in has been build with newest libraries for Windows 10 - maybe some libraries are not backwards compatible with Windows 7?

Is anybody also having problems with Premiere CC on Windows 10?

Is the previous Plug-in "1.11Wa" from entry 246 working with Premiere CC on Windows 7?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 04, 2016 Jan 04, 2016

Copy link to clipboard

Copied

irisb50359875 написал(а):

Is the previous Plug-in "1.11Wa" from entry 246 working with Premiere CC on Windows 7?

1.11 is did not loaded
1.11Wa is did not work with CC (any version)

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 08, 2016 Jan 08, 2016

Copy link to clipboard

Copied


The Plug-in definitely works on Premiere CC. The problems seen with the settings interface (missing content of the dialog-boxes) may be caused by not having deleted  ALL NVENC_export user settings after the upgrade to version 1.11. To do that, you have to navigate to:

                  C:\Users\nn\AppData\Roaming\Adobe\Common\AME\xx\Presets

nd there delete ALL NVENC_export presets.

Alternatively, you can run Adobe Media Encoder, and from there, delete ALL NVENC_export presets.
The next time you open the NVENC_export plugin, Adobe will rebuild a default-preset from scratch.  And hopefully, all of the missing dialog-boxes/options should there. After that the settings can be customized to your need.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Guest
Jan 08, 2016 Jan 08, 2016

Copy link to clipboard

Copied

No folder "Presets" in whole environment C:\Users\nn\AppData\Roaming\Adobe\Common\...

There are in C:\Users\nn\Documents\Adobe\Adobe Media Encoder\nn\Presets

But it is the same: in Win 7 and Premiere CC plugin NVENC_11 doesn't work even without preset

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Explorer ,
Jan 08, 2016 Jan 08, 2016

Copy link to clipboard

Copied

irisb50359875 написал(а):

delete ALL NVENC_export presets.

Alternatively, you can run Adobe Media Encoder, and from there, delete ALL NVENC_export presets.

Preset do not affect to functioning of plug-in.

The behavior of the plug-in 1.11 is similar to work with videoboard without NVENC.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jan 18, 2016 Jan 18, 2016

Copy link to clipboard

Copied

It works fine and decoding fast, but I have one issue: audio and video are two separate files, making it impossible to upload to youtube.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Advocate ,
Jan 18, 2016 Jan 18, 2016

Copy link to clipboard

Copied

Justaway wrote:

It works fine and decoding fast, but I have one issue: audio and video are two separate files, making it impossible to upload to youtube.

That's why you need MP4Box and NeroAacEnc installed, to mux the streams back together.

I have to wonder if Adobe has an API call to mux streams back together.  If you export an MP4 from Premiere or AME, it does the same thing: creates and audio and video stream in separate files, and then muxes them back together automatically for you.  It really would be more convenient if this plugin could somehow make use of the built-in functions for that.

But for now, make sure those two apps are installed.

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
New Here ,
Jan 18, 2016 Jan 18, 2016

Copy link to clipboard

Copied

Yeah, I'm so stupid, there's even tab Multiplexer

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines
Community Beginner ,
May 13, 2016 May 13, 2016

Copy link to clipboard

Copied

I'm also having similar problems - I see the same error message in AME when encoding from AE and exporting from Premiere fails right off the bat.

I'm using latest Nvidia drivers v365.19, GTX 9080Ti, a fresh install of Win 10, whatever latest version of Visual Studio is required and have tried all available versions of the Nvenc plug-in and just get that same message "Error: GPU does not support NVENC encoding."

Has anybody been able to pin this down to one plug-in version and one driver version that works and is steady and reliable as all hell?

Votes

Translate

Translate

Report

Report
Community guidelines
Be kind and respectful, give credit to the original source of content, and search for duplicates before posting. Learn more
community guidelines