[Resolved] Stuttering HEVC output from Vp14 Intel Encoder

Peter_P wrote on 1/12/2017, 6:23 AM

Hi,

when I render a UHDp30 (30/1001) Clip using the Intel HEVC Encoder with this template,

playing the output with MPC-HC or the Windows 10 internal player the clip is stuttering. I just repeated rendering this with the DPI setting to default and the actual Intel HD530 driver from Microsoft (file P3pro_Vp14_NoDPIadj_UHDp30_Intel-HEVC_30Mbps.mov). Rendering the same clip with Vegas pro 13 and Handbrake 1.0.1 using also the Intel H.265 Encoder gives an output that runs as smooth as the original H.264 clip.

I have uploaded these rendered clips to my online storage, that can be downloaded here :

https://www.magentacloud.de/share/od392s20g4

 with the password :  02Jan2017   (without blanks)

 

Any idea what I can change to get a smooth HEVC output directly from Vp14?

Thanks
Peter

Comments

Musicvid wrote on 1/12/2017, 11:10 AM

Your Vegas-created file has 60Mbps burst rate, which will bring many systems to their knees. I am certain that vbv-maxrate in Handbrake is nowhere close to that.

Peter_P wrote on 1/12/2017, 11:42 AM

If I render UHDp30 Material with Intel and QP 20 via handbrake I get up to 159 Mbps in one clip - see media-info:

Overall bit rate mode          : Variable
Overall bit rate               : 159 Mbps

Format                         : HEVC
Format/Info                    : High Efficiency Video Coding
Format profile                 : Main@L5@High
Codec ID                       : hev1
Codec ID/Info                  : High Efficiency Video Coding
Duration                       : 14s 48ms
Bit rate                       : 159 Mbps
Width                          : 3 840 pixels
Height                         : 2 160 pixels
Display aspect ratio           : 16:9
Frame rate mode                : Constant
Frame rate                     : 29.970 fps

and this stream does absolutely not stutter when playing via MPC-HC on my system.

Peter_P wrote on 1/12/2017, 12:08 PM

Your Vegas-created file has 60Mbps burst rate, which will bring many systems to their knees. I am certain that vbv-maxrate in Handbrake is nowhere close to that.


The filesize of the Vp14 created HEVC files is 54,8MB and the Handbrake (30Mbps) file is 56,5MB. So it is even bigger using a slightly higher bitrate.

Now I rendered this clip again with Vp13 + Handbrake using the QP=20 setting. This results in a 237,3MB file that I added to the download folder (P3pro_Vp13_UHDp30_HandBrake-Intel-HEVC_QP20_(119Mbps).mp4). This render output also plays smoothly on my system. Here the media data:

Format                         : HEVC
Format/Info                    : High Efficiency Video Coding
Format profile                 : Main@L5@High
Codec ID                       : hev1
Codec ID/Info                  : High Efficiency Video Coding
Duration                       : 16s 784ms
Bit rate                       : 119 Mbps
Width                          : 3 840 pixels
Height                         : 2 160 pixels
Display aspect ratio           : 16:9
Frame rate mode                : Constant
Frame rate                     : 29.970 fps
Color space                    : YUV
Chroma subsampling             : 4:2:0
Bit depth                      : 8 bits

 

So the bitrate is definitely not the problem.

Musicvid wrote on 1/12/2017, 2:39 PM

File size is not an indicator of peak bitrate. That goes double with hevc. RF encoding is a quality metric that depends not on the number of bits, but the manner in which they are distributed.

Since it is burst bitrates that choke players, it would do you well to at least try lower max bitrates in Vegas. Granted, x265 will probably be more player-friendly.

Peter_P wrote on 1/13/2017, 1:46 AM

Even though I did not expect any change when limiting the bitrate in the Vp14 Intel HEVC encoder to 40Mbps I just rendered it with this modified template

and this output also stutters on playback. Remenber the last file I rendered with Handbrake has an average of 119Mbps and is running smoothly.

The advantage using the Vp14 Intel HEVC encoder is the render time. This short clip (16;22) is rendered with the Vp14 internal encoder in 28s (F=1.67) whereas the external Handbrake need 46s (F=2.75). But when the output is stuttering it is useless.

Jam_One wrote on 1/13/2017, 5:54 AM

OK, now, would you please experiment with setting it to 120 Mbps Constant bitrate?
...For the sake of fundamental science!

 

(I always believed "variable bitrates" are junk designed&destined to squeeze the full-length movie into a CD.)

Last changed by Jam_One on 1/13/2017, 5:59 AM, changed a total of 4 times.

Win 7 Ultimate | Intel i7-4790K @ 4GHz | nVidia GTX 760 4GB * 2

SSD | 32 GB RAM | No Swap file | No Overclock | GPU-in-CPU OFF

t.A.T.u. F.o.R.e.V.e.R.!

 

Peter_P wrote on 1/13/2017, 6:59 AM

OK, now, would you please experiment with setting it to 120 Mbps Constant bitrate?
...For the sake of fundamental science!

I have set it in the Vp14 Intel template to constant 50'000'000 preset value and the result is stuttering as the other outputs rendered with Vp14. By the way, you can experiment with the Handbrake output as an input if you like.

Here the mediadata of the constant bitrate from Vp14:

Format                         : MPEG-4
Format profile                 : Base Media
Codec ID                       : iso4
File size                      : 119 MiB
Duration                       : 16s 750ms
Overall bit rate               : 59.8 Mbps

Format                         : HEVC
Format/Info                    : High Efficiency Video Coding
Format profile                 : Main@L5@High
Codec ID                       : hvc1
Codec ID/Info                  : High Efficiency Video Coding
Duration                       : 16s 750ms
Bit rate                       : 59.8 Mbps
Width                          : 3 840 pixels
Height                         : 2 160 pixels
Display aspect ratio           : 16:9
Frame rate mode                : Constant
Frame rate                     : 29.970 fps
Standard                       : Component
Color space                    : YUV
Chroma subsampling             : 4:2:0
Bit depth                      : 8 bits

 

Jam_One wrote on 1/13/2017, 9:37 AM

So...
The overall best result on my PC is with Sony XAVC-S encoding.
The size of resulting file is 4 times bigger, but I do not care a lot about size in this particular aspect.

Note: I have not tested XAVC Long as a less-consumer container format (namely MXF) since my interest to this topic mostly was (and is) in the sphere of video "distribution" / sharing with "end viewers".

My verdict: It looks like the Intel HEVC is not the go-to format for video sharing at this moment.
Further testing is appropriate for those who happen to perform their encoding by means of Intel hardware chips.

Last changed by Jam_One on 1/13/2017, 9:45 AM, changed a total of 5 times.

Win 7 Ultimate | Intel i7-4790K @ 4GHz | nVidia GTX 760 4GB * 2

SSD | 32 GB RAM | No Swap file | No Overclock | GPU-in-CPU OFF

t.A.T.u. F.o.R.e.V.e.R.!

 

Peter_P wrote on 1/13/2017, 10:08 AM

Thank you for testing.
Unfortunately I can not use this format, because it is not accepted by my UHD-Player that I use for our UHDTV. I definitely need HEVC and for the price of longer render times I get good results from Vp13 + Handbrake. WOuld like to use Vp14 for that task.

Red Prince wrote on 1/13/2017, 11:43 AM

I get good results from Vp13 + Handbrake. WOuld like to use Vp14 for that task.

You should be able to. Handbrake works great with VP 14.

He who knows does not speak; he who speaks does not know.
                    — Lao Tze in Tao Te Ching

Can you imagine the silence if everyone only said what he knows?
                    — Karel Čapek (The guy who gave us the word “robot” in R.U.R.)

Peter_P wrote on 1/13/2017, 12:00 PM

I would like to use the Intel HEVC encoder, that comes with Vp14. This ist one of the new features I was looking for and it is really fast.

NickHope wrote on 1/14/2017, 6:08 AM

I tested playback of Peter's files and also some I encoded myself from his P3pro_Vp14_UHDp30_Intel-HEVC_30Mbps.mov file.

Players:

  • VLC Player 2.2.1/2.2.4
  • Windows Media Player 12.0.1 (it says it decodes these files with the LAV encoder)
  • Vegas Pro 14/0 build 211 at "Preview (auto)" preview quality with GPU off

Results from Peter's Files:

P3pro_Vp14_UHDp30_Intel-HEVC_30Mbps.mov
VLC - Smooth
WMP - Regular skipping (approx 4 "pulses" per second)
VP14 - Regular skipping (approx 2 "pulses" per second)

P3pro_Vp14_NoDPIadj_UHDp30_Intel-HEVC_30Mbps.mov
VLC - Smooth
WMP - Regular skipping (approx 4 "pulses" per second)
VP14 - Regular skipping (approx 2 "pulses" per second)

P3pro_Vp13_UHDp30_HandBrake-Intel-HEVC_QP20_(119Mbps).mp4
VLC - Catastrophic failure. Display all messed up. Nearly frozen
WMP - Smooth
VP14 - Mostly regular skipping (approx 2 "pulses" per second)(& decodes 6 audio tracks)

P3pro_Vp13_UHDp30_HandBrake-Intel-HEVC_30000kbps.mp4
VLC - Very slight jumps towards end
WMP - Smooth
VP14 - Regular skipping (approx 2 "pulses" per second)

Results from my files:

VP14 VBR 80/40 render
VLC - Smooth
WMP - Regular skipping (approx 4 "pulses" per second)
VP14 - Regular skipping (approx 2 "pulses" per second)

VP14 VBR 60/30 render
VLC - Smooth
WMP - Regular skipping (approx 4 "pulses" per second)
VP14 - Regular skipping (approx 2 "pulses" per second)

VP14 CBR render
VLC - Slight skipping
WMP - Regular skipping (approx 4 "pulses" per second)
VP14 - Regular skipping (approx 2 "pulses" per second)

Handbrake 1.0.1 Constant Quality CRF20 (average 48Mbps)
VLC - Catastrophic failure. Display all messed up. Nearly frozen
WMP - Smooth
VP14 - Very stuttery

Handbrake 1.0.1 Avg Bitrate 30000kbps
VLC - Slight skipping
WMP - Smooth
VP14 - Regular skipping (approx 2 "pulses" per second)

Observations:

  • All the CBR bitrates in VP14 encode with the same CBR. The setting does nothing! In my case it's always 79.7 to 79.8 Mbps (different from Peter's 59.8 Mbps). Can someone please confirm this and I'll submit it as a bug?
  • I tried changing the codec ID of a couple of Vegas renders from hvc1 to hev1 (in FFmpeg) but it didn't help WMP playback.
  • GPU acceleration of video processing (AMD HD6970) did not help the VP14 playback.
  • All files decode in VP14 with the 2nd frame skipped and the last frame not quantized as discussed here.
  • It would be interesting to see if the ffdshow decoder helps the WMP or MPC-HC playback.

Conclusions:

  • VLC likes playing Vegas renders but not Handbrake renders
  • WMP likes playing Handbrake renders but not Vegas renders
  • VP14 doesn't like playing any renders including it's own
Peter_P wrote on 1/14/2017, 6:51 AM

Nick, thank you very much for the detailed testing. I normally use the MPC-HC as my standard player on the PC, because it allows my to use chapters set as markers in Vegas pro. The bitrates I normally use for these projects is mostly below 60Mbps.

I will install the VLC for test purpose.

Thanks again
Peter

GJeffrey wrote on 1/14/2017, 7:34 AM

I also use MPC HC. HEVC files created by Vegas are stuttering but those created using an external x265 encoder (Staxrip) play very smoothly.

MPC HC uses lav filter version 0.66 on my system.

All the CBR bitrates in VP14 encode with the same CBR. The setting does nothing! In my case it's always 79.7 to 79.8 Mbps (different from Peter's 59.8 Mbps). Can someone please confirm this and I'll submit it as a bug?

I render 2 uhd hevc files from Vegas: 30p and 60p. The bitrates matches 40mbps and 60 mbps respectively.

Playing hevc files on Vegas timeline is not smooth anymore on b211 compare to previous build.

Peter_P wrote on 1/14/2017, 7:48 AM

HEVC files created by Vegas are stuttering

...

Playing hevc files on Vegas timeline is not smooth anymore on b211 compare to previous build.

Did you notice any better HEVC output from Vegas before B211?

By the way. I have another clip, where waves splash against some rocks. When I render this with Handbrake 1.0.1 QP20 the bitrate goes up to 159Mbps and it is still smoothly played by MPC-HC. So I’ll stick with that player on my PC.

GJeffrey wrote on 1/14/2017, 7:59 AM

Did you notice any better HEVC output from Vegas before B211?

No, Actually when I put back the rendered file on Vegas v14b211 timeline, it doesn't play as well as with the previous built.

it is still smoothly played by MPC-HC. So I’ll stick with that player on my PC

Agree with you. MPC HC is a very good and simple player.

I notice that it's possible to use hardware acceleration for decoding in MPC HC ( under option/render settings menu). Have you tried? You can choose Intel quicksync or gpu.

I can't test myself because both my cpu and gpu are too old. It might help with Vegas s hevc files, worth trying anyway

Peter_P wrote on 1/14/2017, 8:46 AM
I notice that it's possible to use hardware acceleration for decoding in MPC HC ( under option/render settings menu). Have you tried? You can choose Intel quicksync or gpu.

Thank you for this hint. I did not use it before and since the i7-6700k CPU played the ~160Mbps HEVC clip already smoothly, I can not see any difference when activated :

It also does not bring an improvement on the Vegas created HEVC files.

Peter_P wrote on 1/14/2017, 9:10 AM

The HEVC option to select this codec can not be activated when QSV is activated.

only the UHD resolution.

NickHope wrote on 1/14/2017, 9:14 PM

I've used MPC-HC in the past and just installed it again to try this. The results I'm seeing are the same as with WMP 12 on my system.

I tried a render with much lower resolution (720p) and bit rate (6Mbps average) and no audio:

Result is the same 4-per-second "pulsing" as the other renders. This is definitely not a bit rate issue. It seems to be a fundamental disagreement between the Vegas encoder and the LAV decoder.

Peter_P wrote on 1/15/2017, 1:56 AM

I've used MPC-HC in the past and just installed it again to try this. The results I'm seeing are the same as with WMP 12 on my system.

....

It seems to be a fundamental disagreement between the Vegas encoder and the LAV decoder.

I'm running Windows 10 and the windows internal player 'Filme & TV' also stutters with the Vegas pro 14 Intel HEVC output, regardless of the bitrate. I agree that the bitrate (constant or variable) is not the issue.

All other HEVC files for example from the NX1, NX500 etc are playing smoothly with MPC-HC on my system.

GJeffrey wrote on 1/15/2017, 2:31 AM

It seems to be a fundamental disagreement between the Vegas encoder and the LAV decoder.

I also try to update the internal MPC-HC LAV decoder from v0.66 to 0.69 but the result is the same.

Peter_P wrote on 1/15/2017, 3:29 AM

I think the problem is not in any player but the Vegas pro 14 B211 Intel HEVC encoder and this should be fixed.

Peter_P wrote on 4/2/2017, 9:20 AM

Unfortunately Vp14 B244 does not solve my stuttering problem. After little struggle I could change a new B244 template to my 29.97 fps needs (the previously personalized templates did no longer work) but the HEVC output is still not as smooth as rendered via Handbrake.

Peter_P wrote on 4/3/2017, 12:58 AM

I have uploaded the newly rendered file 'P3pro_Vp14_B244_UHDp30_Intel-HEVC_30-40Mbps.mov' to the location linked in the first post of this thread.