Vegas Pro 15 - Is GPU Encoding Worth It?

May 01 2018 · 6 minute read · by NavJack27

On Twitter I saw Dmitry of HardwareCanucks tweet this:

That got me wondering something because I recently switched from Adobe Creative Cloud to buying a copy of Vegas. Vegas 15 added a new functionality for using your Nvidia GPU to do encoding. In the past it was just utilized for effects or something but not direct encoding. I set off on benchmarking this on a similar video to the one he mentioned at least in terms of length and resolution. I just recorded 13 minutes of me messing with my computers on my GoPro and then took it into Vegas Pro 15 and then exported it with the NVENC, CPU and an AVI file that I took into MEGUI to encode on my CPU with x264. Here are the results.

Specs:

Our baseline will be using the CPU encoder of Vegas Pro 15:

This encoder produced:

General
Complete name : E:\13min benchmark cpu.mp4
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42 (isom/mp42)
File size : 5.47 GiB
Duration : 13 min 0 s
Overall bit rate mode : Variable
Overall bit rate : 60.2 Mb/s
Encoded date : UTC 2018-05-01 22:15:21
Tagged date : UTC 2018-05-01 22:15:21
Video
ID : 2
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L5.1
Format settings, CABAC : Yes
Format settings, ReFrames : 3 frames
Format settings, GOP : M=4, N=15
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 13 min 0 s
Bit rate mode : Variable
Bit rate : 60.0 Mb/s
Width : 3 840 pixels
Height : 2 160 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 29.970 (30000/1001) FPS
Standard : NTSC
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.241
Stream size : 5.45 GiB (100%)
Language : English
Encoded date : UTC 2018-05-01 22:15:22
Tagged date : UTC 2018-05-01 22:15:22
Color range : Limited
Color primaries : BT.709
Transfer characteristics : BT.709
Matrix coefficients : BT.709
Audio
ID : 1
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 13 min 0 s
Bit rate mode : Variable
Bit rate : 192 kb/s
Maximum bit rate : 271 kb/s
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 kHz
Frame rate : 46.875 FPS (1024 spf)
Compression mode : Lossy
Stream size : 17.6 MiB (0%)
Language : English
Encoded date : UTC 2018-05-01 22:15:21
Tagged date : UTC 2018-05-01 22:15:21

The GPU encoder did it in

And produced a file with

General
Complete name : E:\13min benchmark gpu.mp4
Format : MPEG-4
Format profile : Base Media / Version 2
Codec ID : mp42 (isom/mp42)
File size : 5.47 GiB
Duration : 13 min 0 s
Overall bit rate mode : Variable
Overall bit rate : 60.2 Mb/s
Encoded date : UTC 2018-05-01 20:46:09
Tagged date : UTC 2018-05-01 20:46:09
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L5.1
Format settings, CABAC : Yes
Format settings, ReFrames : 1 frame
Format settings, GOP : M=1, N=30
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 13 min 0 s
Source duration : 13 min 0 s
Bit rate : 60.0 Mb/s
Width : 3 840 pixels
Height : 2 160 pixels
Display aspect ratio : 16:9
Frame rate mode : Variable
Frame rate : 29.970 (30000/1001) FPS
Minimum frame rate : 29.970 FPS
Maximum frame rate : 30.000 FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.241
Stream size : 5.45 GiB (100%)
Source stream size : 5.45 GiB (100%)
Language : English
Encoded date : UTC 2018-05-01 20:46:11
Tagged date : UTC 2018-05-01 20:46:11
Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 13 min 0 s
Bit rate mode : Variable
Bit rate : 192 kb/s
Maximum bit rate : 271 kb/s
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 kHz
Frame rate : 46.875 FPS (1024 spf)
Compression mode : Lossy
Stream size : 17.6 MiB (0%)
Language : English
Encoded date : UTC 2018-05-01 20:46:11
Tagged date : UTC 2018-05-01 20:46:11

Using MEGUI involves some extra steps like encoding to an AVI file, in which I used the MAGICYUV codec and then taking it into MEGUI by indexing the file and then setting the advanced x264 settings and then encoding it.

Making the MAGICYUV AVI file took

Then MEGUI encode took

Which produced a file like this

General
Complete name : E:\13min benchmark megui x264.mp4
Format : MPEG-4
Format profile : Base Media
Codec ID : isom (isom/avc1)
File size : 3.27 GiB
Duration : 13 min 0 s
Overall bit rate mode : Variable
Overall bit rate : 36.0 Mb/s
Encoded date : UTC 2018-05-01 21:51:28
Tagged date : UTC 2018-05-01 21:51:28
Video
ID : 1
Format : AVC
Format/Info : Advanced Video Codec
Format profile : High@L5.1
Format settings, CABAC : Yes
Format settings, ReFrames : 4 frames
Codec ID : avc1
Codec ID/Info : Advanced Video Coding
Duration : 13 min 0 s
Bit rate : 35.7 Mb/s
Maximum bit rate : 50.5 Mb/s
Width : 3 840 pixels
Height : 2 160 pixels
Display aspect ratio : 16:9
Frame rate mode : Constant
Frame rate : 29.970 (30000/1001) FPS
Color space : YUV
Chroma subsampling : 4:2:0
Bit depth : 8 bits
Scan type : Progressive
Bits/(Pixel*Frame) : 0.144
Stream size : 3.25 GiB (99%)
Writing library : x264 core 155 r2901 7d0ff22
Encoding settings : cabac=1 / ref=3 / deblock=1:0:0 / analyse=0x3:0x113 / me=hex / subme=7 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=1 / me_range=16 / chroma_me=1 / trellis=1 / 8x8dct=1 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=-2 / threads=18 / lookahead_threads=3 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=2 / keyint=300 / keyint_min=29 / scenecut=40 / intra_refresh=0 / rc_lookahead=40 / rc=crf / mbtree=1 / crf=23.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / ip_ratio=1.40 / aq=1:1.00
Encoded date : UTC 2018-05-01 21:51:28
Tagged date : UTC 2018-05-01 21:51:49
Audio
ID : 2
Format : AAC
Format/Info : Advanced Audio Codec
Format profile : LC
Codec ID : 40
Duration : 13 min 0 s
Bit rate mode : Variable
Bit rate : 280 kb/s
Maximum bit rate : 300 kb/s
Channel(s) : 2 channels
Channel positions : Front: L R
Sampling rate : 48.0 kHz
Frame rate : 46.875 FPS (1024 spf)
Compression mode : Lossy
Stream size : 26.0 MiB (1%)
Language : English
Encoded date : UTC 2018-05-01 21:23:32
Tagged date : UTC 2018-05-01 21:51:49

To summarize the results

Encoder Time (minutes) File Size Bitrate
Vegas Pro 15 CPU Encoder 65.0333 5.47 GiB 60.0 Mb/s
Vegas Pro 15 GPU Encoder 12.1 5.47 GiB 60.0 Mb/s
Vegas Pro 15 to AVI 12.2167 68.6 GiB 753 Mb/s
MEGUI x264 CPU Encode 29 3.27 GiB 35.7 - 50.5 Mb/s
MEGUI Method Total 41.2167