Author Topic: EEVblog #698 - GPU Video Rendering  (Read 104646 times)

0 Members and 1 Guest are viewing this topic.

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
EEVblog #698 - GPU Video Rendering
« on: January 01, 2015, 11:52:43 pm »
Dave tests a really high end NVIDIA GTX-970 video card for accelerated CUDA GPU video rendering with Sony Movie Studio (Vegas) & also Adobe Premiere.
Will it work for the new high frame rate video ?
Will it work at all?
How about a Radeon HD7850 and OpenCL?
Does the CODEC matter ?
Does hard drive or SSD performance matter ?
This also provides some insight into how Dave edits and renders his videos.

NOTE: This is mostly trying out and real time commentary of testing video rendering speed. If you find this stuff boring then DON'T WATCH IT.
There is no electronics content here, but plenty of main channel viewers might find it interesting.

 

Offline nixfu

  • Supporter
  • ****
  • Posts: 346
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #1 on: January 02, 2015, 12:37:08 am »
I imagine it is a pretty small community of people who are doing 50/60fps right now.   On youtube for instance, I have run into more content producers if they want to 'up the quality' they are instead using 4k @still standard 30fps, than I ever have of anyone doing 50/60fps.


So, you are running into the fact that you are doing something out of the mainstream and probably not even well tested among the companies who produce the drivers/hardware/and editing software toolsets.
 

Offline Methodical

  • Newbie
  • Posts: 5
Re: EEVblog #698 - GPU Video Rendering
« Reply #2 on: January 02, 2015, 12:49:35 am »
I'm sorry the results were disappointing, but I didn't expect anything else.  GPU-accelerated functions require tight integration between the OS and it's APIs, the hardware, and the application.  This is difficult to do.  Somewhat ironically, even though you couldn't get big benefits, Apple re-wrote a lot of it's software to use intel's quick sync video accelerators built into its latest processors.  Ironic that a 10 year old with iMovie and a "slower" computer can do HD iMovie exports faster than your professional software.  It's also used for FaceTime and in-home video streaming (airplay).

If you really want hardware accelerated encoding, your best bet is trying to get Intel Quick Sync working.  It's very fast, but only some applications can use it.  The problem with hardware cores is that the encoders are, well, written in hardware, and limited by that hardware.  Quick Sync doesn't have the same quality as x264, which is by far the best AVC encoder out there, IMHO.  Unfortunately, it's written for x86 with lots of assembler built in, so while some hardware acceleration is being beta'ed, it's not ready for primetime and indeed the benefits aren't that large due to the crazy level of optimization that the x264 team has done.  Handbrake uses x264 as it's encoder, so you're good to go there.

GPU acceleration, at this point, seems mostly focused on real-time recording (for gamers) and large-scale encoding (for broadcasters such as twitch.tv that need to re-encode lots of streams at once, in real time).

I use an AMD graphics card for my gaming PC and they've rolled out some software to do real-time recording.  It really works shockingly well.  I've been able to do 1080p60 h.264 15-20mbit/sec real-time recordings of my games and noticed maybe a 10-20% performance hit to the actual game.

The technology is there.  You just can't access it.  |O
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #3 on: January 02, 2015, 12:53:03 am »
I imagine it is a pretty small community of people who are doing 50/60fps right now.   On youtube for instance, I have run into more content producers if they want to 'up the quality' they are instead using 4k @still standard 30fps, than I ever have of anyone doing 50/60fps.

Yeah, I don't know you'd go 4K/30fps instead of 1080P/60fps
The reaction to my 50/60fps video has been great, and the majority opinion seems to be they's prefer the higher frame rate to the 4K.

Quote
So, you are running into the fact that you are doing something out of the mainstream and probably not even well tested among the companies who produce the drivers/hardware/and editing software toolsets.

Seems like that!
 

Offline selkathguy

  • Supporter
  • ****
  • Posts: 88
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #4 on: January 02, 2015, 12:56:26 am »
Dave, from what I understand there is some sort of firmware/driver limitation of the GeForce series.  I have the exact same card and while it does great for games, word on the street is that the interface for using CUDA from the CPU is gimped.  It's only unlocked in their Tesla/Quadro cards...  I can't verify that personally, but with over a decade of GPU experience that certainly seems consistent with what I've seen.

It seems wasteful to be offering the same extremely powerful silicon (GeForce) at such a lower cost than their workstation cores, but perhaps they save money in the R&D...  :-//
 

Online Psi

  • Super Contributor
  • ***
  • Posts: 9954
  • Country: nz
Re: EEVblog #698 - GPU Video Rendering
« Reply #5 on: January 02, 2015, 01:11:51 am »
I'd only start to suspect drive speed limitations if that 1min test file was like 1.8GB or bigger for a HDD or maybe 5GB for a SSD. (Assuming the same drive for read and write)

That works out to around 60MB/s for the HDD and 160MB/s for the SSD.


For sure HDD speed really does cripple people working in uncompressed video :)
1920x1080 * 4bytes per pixel * 60FPS = 497MB/s  ???
« Last Edit: January 02, 2015, 01:18:04 am by Psi »
Greek letter 'Psi' (not Pounds per Square Inch)
 

Online Psi

  • Super Contributor
  • ***
  • Posts: 9954
  • Country: nz
Re: EEVblog #698 - GPU Video Rendering
« Reply #6 on: January 02, 2015, 01:13:43 am »
Dave, from what I understand there is some sort of firmware/driver limitation of the GeForce series.  I have the exact same card and while it does great for games, word on the street is that the interface for using CUDA from the CPU is gimped.  It's only unlocked in their Tesla/Quadro cards... 

There's a thread on here someone about hacking Geforce cards to Tesla/Quadro cards :)
Greek letter 'Psi' (not Pounds per Square Inch)
 

Online mariush

  • Super Contributor
  • ***
  • Posts: 5030
  • Country: ro
  • .
Re: EEVblog #698 - GPU Video Rendering
« Reply #7 on: January 02, 2015, 01:57:16 am »
It takes a lot of time to "upload" the raw video frames to video card, then analyze them and retrieve the results from the video card... that's why most times cpu is faster, the data is already in ram or in its caches.
Lots of editing software also only use cuda or video card acceleration solutions to decode input video files before they're processed (resized, have stuff overlayed on them etc) so the benefits can be minimal.

My suggestion would be to use a lossless video codec to do the initial rendering, for example MagicYUV ( http://magicyuv.com/ ) or UTVideo. On my eight core fx-8320 the magicyuv codec saves 1080p content at about 140fps so you'd probably be able to export the video at 2-3x realtime speed (if your hdd can also handle the speed).  In the Sony software, you have to select avi or video for windows (or something like that) then select the codec from the list of codecs.

The downside is that for 1080p 50-60fps the result video file will take anything between 2-5GB per minute, it depends on scene complexity.... so a one hour video would give you 150-300 GB file. And the file would be an AVI file. 
But you can easily load the avi file in Handbrake or any other software and do the second encoding and then remove this large file from your system.

Oh... and if you plan to do fast renderings, you should also disable the video preview before rendering... that window with video in the right corner slows renderings.

ps.  it's SOLID state drive ... you said solar state drive several times in the video.
« Last Edit: January 02, 2015, 02:07:49 am by mariush »
 

Offline edy

  • Super Contributor
  • ***
  • Posts: 2385
  • Country: ca
    • DevHackMod Channel
Re: EEVblog #698 - GPU Video Rendering
« Reply #8 on: January 02, 2015, 02:03:24 am »
Nice setup Dave. I'm using some very old equipment myself but squeezing what I can out of it for my YouTube channel (DevHackMod). I shoot either with my old Sony Cam which writes 640x480 video to MPG, or record with a cell phone to MP4. I prefer using the Sony with  MPG because I edit using Womble MPG DVD editor, which allows MPG editing by copying directly the video and audio stream, to avoid recoding during rendering. It only recodes when there is a transition fade or other effects, or audio mixing (but even then only the audio stream). As long as I keep my output format to same as input, Womble will simply copy streams when they are unchanged... So the final render is quick as most of the work is simply stream copying with a few recoded renders for transitions along the way. As I usually do simple cuts and a title slide, the main job is a few seconds of title video being rendered and the rest  pure stream copying with no recoding!

Of course, I also run my videos through Handbrake to convert the MPEG to MP4 while shrinking down the size (using web optimizing option) which makes it easier to upload to YouTube.
YouTube: www.devhackmod.com LBRY: https://lbry.tv/@winegaming:b Bandcamp Music Link
"Ye cannae change the laws of physics, captain" - Scotty
 

Offline lightman

  • Newbie
  • Posts: 8
Re: EEVblog #698 - GPU Video Rendering
« Reply #9 on: January 02, 2015, 02:30:45 am »
Hello Dave

I thought you will show how the mainconcept encoder performs vs the other ones with the 970, since that one DID detected the cuda device, at least in my tests mainconcept usually works well with GPUs (however I have only tested it with openCL but i will love to do it with a maxwell card) :) can you run some tests with it if you have the time?

how about buying a dual or quad cpu, server class, machine, like supermicro?, i know, expensive, but hey you will reeeeaallly use it!.
 

Offline gnif

  • Administrator
  • *****
  • Posts: 1678
  • Country: au
Re: EEVblog #698 - GPU Video Rendering
« Reply #10 on: January 02, 2015, 02:47:55 am »
It's only unlocked in their Tesla/Quadro cards...  I can't verify that personally, but with over a decade of GPU experience that certainly seems consistent with what I've seen.

Confirmed, the card does not do any encoding offloading if you do not have a quadro/tesla, these features are disabled.
 

Offline OilsFan

  • Regular Contributor
  • *
  • Posts: 52
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #11 on: January 02, 2015, 02:57:20 am »
Dave I'm actually more interested in what you are doing with Handbrake to save on upload times. Maybe you can give a quick overview?
 

Offline NiHaoMike

  • Super Contributor
  • ***
  • Posts: 9021
  • Country: us
  • "Don't turn it on - Take it apart!"
    • Facebook Page
Re: EEVblog #698 - GPU Video Rendering
« Reply #12 on: January 02, 2015, 03:25:36 am »
How does Quick Sync fare?
Cryptocurrency has taught me to love math and at the same time be baffled by it.

Cryptocurrency lesson 0: Altcoins and Bitcoin are not the same thing.
 

Offline Razor512

  • Regular Contributor
  • *
  • Posts: 156
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #13 on: January 02, 2015, 04:38:17 am »
For the radeon cards, the openCL video rendering is not used efficiently. You can see this if you run GPUz http://www.techpowerup.com/gpuz/ you will likely see around 20% GPU usage on that card. CUDA is often better optimized as it has had more time to be improved over the years (one of the first uses of cuda), though it is still often poorly implemented, thus if a card is 3-4 time faster at gaming

Other than that, you will have to see if someone will come up with a mod for the application that will unlock the GPU support like with adobe aftereffects and premiere. e.g.,  http://www.studio1productions.com/Articles/PremiereCS5.htm  (this also works on CS6 and CC

Anyway, for the time being overclock the CPU (try to hit around 4.2 - 4.5GHz), and wait for a mod to come out for the video editor to unlock CUDA for the GTX 970. In the meantime, just use the card for gaming.

The card may have some with a few game codes. (try some far cry 4, and if needed, also play some warframe, and if you need something that is less twitch based, and thus better suited for remote streaming, you can try path of exile (interesting game, and is rated for all ages).

PS, I am 100% fine with the show going back to 25/30FPS, as firefox is my main browser and i doesn't support 60FPS on youtube anyway.
« Last Edit: January 02, 2015, 04:39:50 am by Razor512 »
 

Offline justanothercanuck

  • Frequent Contributor
  • **
  • Posts: 391
  • Country: ca
  • Doing retro repairs...
Re: EEVblog #698 - GPU Video Rendering
« Reply #14 on: January 02, 2015, 04:40:07 am »
I am still struggling with grasping the benefit of 60fps for a mailbag video. Please, someone from this majority tell me what I should be looking for. Because I see NO difference.

Are you actually getting 60fps?  I still can't get any higher than 30fps on my machines.  Maybe firefox still can't support all the HTML5 stuff yet.  :-//

Confirmed, the card does not do any encoding offloading if you do not have a quadro/tesla, these features are disabled.

That's sucky.  I knew they did it for 3d modelling apps (3dsmax, etc), but I figured they'd let people use it for video encoding.  I feel bad for anybody who bought 980's for bitcoin mining to find out that it doesn't work.
Maintain your old electronics!  If you don't preserve it, it could be lost forever!
 

Offline FrankBuss

  • Supporter
  • ****
  • Posts: 2365
  • Country: de
    • Frank Buss
Re: EEVblog #698 - GPU Video Rendering
« Reply #15 on: January 02, 2015, 04:53:35 am »
Would be interesting to see the details how they implemented the CUDA rendering. Some time ago I wrote programs with CUDA suppport (see this page, sorry in German) and depending on the graphics card it improved the speed about a factor from 20 to 100 compared to CPU calculation. But the problem was very easy to parallelize. Maybe it is not that easy to parallelize video rendering?

Did you ask Sony, Adobe or NVIDIA about the problem? CUDA should work always, the developer side the interface is simple and doesn't have many parameters which could prevent that the code works, if you code carefully.

But I think it doesn't matter anyway, because you can start the rendering in the evening and it will be done the next morning, unless you want to produce 8 hours video each day :)
So Long, and Thanks for All the Fish
Electronics, hiking, retro-computing, electronic music etc.: https://www.youtube.com/c/FrankBussProgrammer
 

Offline Razor512

  • Regular Contributor
  • *
  • Posts: 156
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #16 on: January 02, 2015, 04:58:15 am »
GPU mining died long ago. it was also a good time to get cheap radeon r290x cards. overall the mining rate stays constant, and thus as more people upgrade to ASIC's, you end up with the mining difficulty increasing exponentially. A GPU can no longer hope to even generate enough income the cover its power use.


For 60FPS, you need to use google chrome.

I personally can't use chrome as it doesn't have the addons that I need. (I need classic compact (gives as much screen space as possible without burying anything behind a menu or slider), mouse control, the weather in the title bar.

The quadro limitations are purely software imposed. the difference between a gaming card and the quadro, is that the quadro does not have the vast majority the components for double precision calculations disabled, this is why the GPU unlock mods for some of those applications are so popular. They allow you to use features that would otherwise be restricted  to quadro for no reason, especially when they lock a feature that does not need double precision calculations.

The GTX titan is a fully unlocked GPU, thus no difference between it and the quadro, it can even be modded to be a quadro card fairly easily.
this is why you see the massive boost in double precision calculations (not used very often, and not be many 3D modeling applications or video editors)
http://en.wikipedia.org/wiki/List_of_Nvidia_graphics_processing_units#GeForce_700_Series
« Last Edit: January 02, 2015, 05:03:44 am by Razor512 »
 

Edgar Amalyan

  • Guest
Re: EEVblog #698 - GPU Video Rendering
« Reply #17 on: January 02, 2015, 06:18:17 am »
4k at 30fps would no doubt provide better quality for your videos compared to higher frame rate at 1080p. Most of the time you are just zoomed in and the camera/object isn't moving, it's just wasting bandwidth. Also for mobile users, you can get a YouTube app that supports resolutions higher than 1080p, but not higher frame rates.
 

Offline mpl

  • Newbie
  • Posts: 1
Re: EEVblog #698 - GPU Video Rendering
« Reply #18 on: January 02, 2015, 06:45:26 am »
Video encoding is multicore CPU operation.
Here you have some benchmarks with modern CPUs

http://www.anandtech.com/bench/CPU/1052
http://www.anandtech.com/bench/CPU/28

If you want to still use GTX970 you should wait for update from Sony.

Keep in mind that nvidia removed nvcuvenc.dll in drivers newer then 340.43, fix for that: http://www.bandicam.com/support/tips/nvidia-cuda/
 

Offline nitro2k01

  • Frequent Contributor
  • **
  • Posts: 843
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #19 on: January 02, 2015, 06:45:44 am »
A question that goes unanswered is, how long does the second rendering pass in HandBrake take? How does exporting AVC directly from Movie Studio take compared to the total time of the two step process?
Whoa! How the hell did Dave know that Bob is my uncle? Amazing!
 

Offline ThaHandy

  • Newbie
  • Posts: 7
Re: EEVblog #698 - GPU Video Rendering
« Reply #20 on: January 02, 2015, 06:49:40 am »
As far i can tell there is none to tiny benefits encoding by a GPU.  Its what a CPU can do and a GPU can't, if it comes to encoding. It all depends on the profile your using.

You want more faster encoding, get more cores! (dual Xeon hexa/octa CPU's  8) )

I assume you use XDCAM (lossless codec) to create your video and handbrake to encode in 264.

Few things you can try.

Install x264vfw codec so you might (not sure Movie studio can use vfw codec's) encode straight to 264 from Movie studio.

and if you didn't know HandBrake v0.10 is now supporting H265 codec and Intel QuickSync Video encoding.

Btw, HandBrake can encode in 10fps to 200fps depending on the used profile. The "slower" the profile the better the the quality

« Last Edit: January 02, 2015, 06:53:56 am by ThaHandy »
 

Offline wilhelm

  • Contributor
  • Posts: 14
  • Country: se
Re: EEVblog #698 - GPU Video Rendering
« Reply #21 on: January 02, 2015, 07:58:01 am »
In premiere pro you need to "hack" cuda_supported_cards.txt by adding your card to it. After that Mercury Playback Engine GPU Acceleration is avalible under Project Settings.
 

Offline firewalker

  • Super Contributor
  • ***
  • Posts: 2450
  • Country: gr
Re: EEVblog #698 - GPU Video Rendering
« Reply #22 on: January 02, 2015, 08:22:24 am »
Is there any software that can encode using multiple PCs?

Alexander.
Become a realist, stay a dreamer.

 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #23 on: January 02, 2015, 08:51:42 am »
I assume you use XDCAM (lossless codec) to create your video and handbrake to encode in 264.

As explained in the video, I used to use XDCAM, but Sony does not allow 50 or 60fps using that.

 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #24 on: January 02, 2015, 08:52:54 am »
Keep in mind that nvidia removed nvcuvenc.dll in drivers newer then 340.43, fix for that: http://www.bandicam.com/support/tips/nvidia-cuda/

Thanks, I might try that before I get rid of the card.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #25 on: January 02, 2015, 08:54:36 am »
Video encoding is multicore CPU operation.
Here you have some benchmarks with modern CPUs
http://www.anandtech.com/bench/CPU/1052
http://www.anandtech.com/bench/CPU/28

Yes, it's all CPU.
How much would one of the latest high end Xeon machines cost me?
 

Offline SeanB

  • Super Contributor
  • ***
  • Posts: 16284
  • Country: za
Re: EEVblog #698 - GPU Video Rendering
« Reply #26 on: January 02, 2015, 09:52:43 am »
Is there any software that can encode using multiple PCs?

Alexander.

Yes, it is from Silicon Graphics, used by Pixar a lot to do movies. Do you have a small Beowulf cluster to use it on, or a small supercomputer cluster with spare time.
 

Offline george graves

  • Super Contributor
  • ***
  • Posts: 1257
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #27 on: January 02, 2015, 09:56:15 am »
As I mentioned on youtube....

http://www.videoguys.com/Guide/E/Videoguys+DIY+10+++Our+wait+for+Thunderbolt+is+over/0x86959ff2ee4098c3eef68b2070f368dd.aspx

They know what they are doing - off the top of my head, I know one of there clients is a Academy Award winner for Editing, and guys on the AVID forum follow their lead on system set up.  Avid (you most likely have never heard of it), is the Altium of editing software.  That's what I've edited on since 1997(myself and a few other wrote the guide on how to set up a real editing system - now totally out of date - but I digress).  I think it would be wise to switch to a real editing program.  Premiere is so affordable now,  it's kinda hard not to go that way.   Plus, do you have the right drivers?  Why no SSD? That's just penny wise and pound foolish.  It's literally $2-3k for a kick ass editing rig. Stop being a cheap ass, and then complaining why things don't work!  Isn't that what you would say about someone buying a cheap scope?
« Last Edit: January 02, 2015, 10:00:08 am by george graves »
 

Offline nitro2k01

  • Frequent Contributor
  • **
  • Posts: 843
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #28 on: January 02, 2015, 10:49:56 am »
Why no SSD?
How would an SSD help Dave in this case? An SSD is good for random access, and for high throughput. Dave would be editing one stream at a time, as opposed to a typical video director who might have a lot of different layers with special effect or whatever it might be. The encoding is a sequential access operation, and the CPU/GPU would likely be the bottleneck even if the encoding was 5 or even 10 times faster. An SSD is nice overall, but would hardly be a make or break for the work Dave is doing.
Whoa! How the hell did Dave know that Bob is my uncle? Amazing!
 

Offline sleemanj

  • Super Contributor
  • ***
  • Posts: 3025
  • Country: nz
  • Professional tightwad.
    • The electronics hobby components I sell.
Re: EEVblog #698 - GPU Video Rendering
« Reply #29 on: January 02, 2015, 10:53:59 am »
You're spending quite a lot of time, energy, and money trying to get 60 fps rendering in a reasonable rate. 

One might ask, does any increased viewer numbers (and thus income) that you can attribute to 60fps really justify this?
~~~
EEVBlog Members - get yourself 10% discount off all my electronic components for sale just use the Buy Direct links and use Coupon Code "eevblog" during checkout.  Shipping from New Zealand, international orders welcome :-)
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #30 on: January 02, 2015, 10:57:33 am »
In a lot of ways, this is the same situation I found five years ago when I last did any significant transcoding, when I spent many days converting a large HD-DVD and BluRay collection to 1080p streamable content. Spent a very long time fannying around with lots of different software options including offloading to a seriously high end GPU, and was dissapointed with the results in terms of performance.

Regarding hard drives, and back then SSD wasn't financially viable, spindle management did have a marked effect, particularly if no transcoding was required (ie, merging audio and video tracks in their native formats).

Sad that it still appears to be an immature technology, in that it doesn't "just work".
 

Offline rollatorwieltje

  • Supporter
  • ****
  • Posts: 571
  • Country: nl
  • I brick your boards.
Re: EEVblog #698 - GPU Video Rendering
« Reply #31 on: January 02, 2015, 11:10:26 am »
I did some testing on my system as well, for me using the MainConcept AVC codec in 1080p50 using the GPU is several times faster.
Core i5 2500k, 8GB ram, HD6970, rendering to SSD, source video is on a raid0 array.
Over 8 minutes for CPU, and about 1:30 for the GPU. Source video is a 50FPS mJPEG screen capture of about 1 minute 7 seconds.

edit:
Not sure why, but I can't open the generated .avc file with anything. VLC shows nothing and Handbrake doesn't seem to like it either.

edit2:
Funny, Youtube can actually read it properly.
« Last Edit: January 02, 2015, 12:17:26 pm by rollatorwieltje »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #32 on: January 02, 2015, 11:29:48 am »
One might ask, does any increased viewer numbers (and thus income) that you can attribute to 60fps really justify this?

They same could have been said when I switched cameras, or switched to HD, or *insert any other change* I've made over the years.
Many people do like it, so it's not wasted effort.
You can't in any way accurately attribute increased quality of content to increased viewership, it ain't that easy.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #33 on: January 02, 2015, 11:33:44 am »
Why no SSD?
How would an SSD help Dave in this case?

It doesn't. George is our resident pedant when it comes to this stuff, he keeps harping on and harping without taking circumstances into account.
I do have a SSD for my main drive. I do not have it for my secondary drive, and as you and I have explained, it doesn't make a difference in my case.
 

Offline SeanB

  • Super Contributor
  • ***
  • Posts: 16284
  • Country: za
Re: EEVblog #698 - GPU Video Rendering
« Reply #34 on: January 02, 2015, 11:39:42 am »
Max out the RAM rather than the SSD. RAM is going to have a larger influence on the speed than the tertiary storage used. Large RAM makes it possible to use cache to smooth the data into and out of the conversion, and then it will make little difference as to the speed of the storage media.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #35 on: January 02, 2015, 11:45:22 am »
They know what they are doing

So I'm just supposed to blindly follow them?
My machine is almost equal to the highest end editing rig in your 3rd party recommendation!
The 4770K offers sub 10% improvement over my current 3770K.
The GPU card almost certainly won't work, and nothing else in there is going to matter.

The ONLY thing that really matters for my application is the CPU. Everything else is faffing around the edges.

Quote
Avid (you most likely have never heard of it)

I have, and I have tried it. It wasn't right for me in several ways, had several issues, and at the time was slower to render then Sony.

Quote
That's what I've edited on since 1997(myself and a few other wrote the guide on how to set up a real editing system - now totally out of date - but I digress).

The machine I have now was perfectly adequate and speced for the task at the time I bought it, which you of course got wrong last time we discussed this.
You bitched that I didn't have good enough machine, and gave me a spec for good one, only to embarrassingly find out my machine exceeded your recommended spec.

Quote
  I think it would be wise to switch to a real editing program.  Premiere is so affordable now,  it's kinda hard not to go that way.   

I have tried it and I don't like it for my purposes. And it is slower than Sony.
Switching to Premiere is not going to solve my problem, it will just create more where no change is needed.

Quote
Plus, do you have the right drivers?

Of course I do.

Quote
  Why no SSD? That's just penny wise and pound foolish.

a) I do have an SSD for my OS
b) It makes no real difference for my needs, I have measured this.

Quote
  It's literally $2-3k for a kick ass editing rig. Stop being a cheap ass, and then complaining why things don't work!  Isn't that what you would say about someone buying a cheap scope?

Why don't you stop harping on about this?
I'm trying to learn how GPU can make a difference, and it turns out I learned a lot for my effort.
This applies to my current rig and any future rig.
Only very recently have my needs changed, so I'm trying to figure out the best way to proceed.
« Last Edit: January 02, 2015, 11:59:34 am by EEVblog »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #36 on: January 02, 2015, 11:46:07 am »
Max out the RAM rather than the SSD. RAM is going to have a larger influence on the speed than the tertiary storage used.

Not in my case. I hardly use any of my 16GB.
 

Offline s55

  • Newbie
  • Posts: 5
Re: EEVblog #698 - GPU Video Rendering
« Reply #37 on: January 02, 2015, 11:57:21 am »
You mentioned at the end of the video that QuickSync isn't that great.  It's actually not bad if you have a Haswell Core i7. Intel has made significant improvements going from Sandy Bridge to Ivy Bridge to Haswell.  It doesn't match up with what most consider the leader, x264 but it's certainly more than sufficient for many usage scenarios.  Whether it fits yours I can't say, but worth a look, even on Ivy Bridge CPU that you have.

We added QuickSync support to HandBrake last year and from the results we've seen, you can achieve a similar quality but at a 10~20% increase in file size. So, you'd save time encoding, but increase upload time.

The problem with video encoding is, the algorithms that are currently used on the CPU, don't scale on the GPU and infact are very often thousands of times slower.  They do all sorts of tricks to get around this, including just not running some of the algorithms that x264 will run. GPU's are massively parallel beasts, so you need to be able to do lots of different units of work at once, which is not easy with Video. Atleast, not at the scale you need to get good performance gains.

QuickSync is a bit different to CUDA. It's dedicated ASIC like hardware so gets around a lot of the limitations of the GPU hardware. 
Nvidia has been working on replacing CUDA with a much improved NVEnc.  Again, I believe NVEnc is ASIC based so in theory, you'd get the same performance on a low end GPU as a high end, assuming they don't cripple it deliberately in some way.

It is a bit of a minefield and as the developer of HandBrake myself, I can tell you it's a bit of a pain at the best of times.

Anyway, If you ever need any help with HandBrake (or anyone else in the community for that matter), feel free to drop me a line. (I'm one of the crazy people that actually develops it)

« Last Edit: January 02, 2015, 12:06:13 pm by s55 »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #38 on: January 02, 2015, 12:01:32 pm »
Anyway, If you ever need any help with HandBrake (or anyone else in the community for that matter), feel free to drop me a line. (I'm one of the crazy people that actually develops it)

Thanks, appreciated.
Good to have someone on this topic who actually has a clue what they are talking about!  ;D
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #39 on: January 02, 2015, 12:13:46 pm »
12 core Xeon E5 2697 costs over $3K alone, yikes!
8 core Core i7 5960X is about $1400, that would give me maybe double the speed I have now and likely bring it back down to real-time rendering.
http://www.anandtech.com/bench/CPU/1052
 

Offline s55

  • Newbie
  • Posts: 5
Re: EEVblog #698 - GPU Video Rendering
« Reply #40 on: January 02, 2015, 12:27:54 pm »
Dave,

While HandBrake side of the conversion should get faster with more cores. (It typically scales well to 6~8 cores depending on settings), you'll also want to check if the Sony side scales as well. For example, if it's not maxing out the CPU when your converting to your intermediate format, it probably won't see much benefit from more cores.  In this case, you may be better with a higher clocked 6 core than a slower clocked 8 core.

If you want, throw me an encode log over from HandBrake and I can check over your settings. Your video's don't have an awful lot of motion in them, so you might be able to relax some of the settings to improve performance without any noticeable quality loss or increase in filesize. Depends really what settings your using at the moment.
 

Offline s55

  • Newbie
  • Posts: 5
Re: EEVblog #698 - GPU Video Rendering
« Reply #41 on: January 02, 2015, 12:30:07 pm »
@wilfred - Video encoding is very much personal preference. Different people have different eyes, different monitors, different playback software. Depending on your setup, your eyesight, you may or may not get any benefit from 60fps.  Personally, I'm not fussed either way, but it's nice to have the option.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #42 on: January 02, 2015, 12:45:16 pm »
While HandBrake side of the conversion should get faster with more cores. (It typically scales well to 6~8 cores depending on settings), you'll also want to check if the Sony side scales as well. For example, if it's not maxing out the CPU when your converting to your intermediate format, it probably won't see much benefit from more cores.  In this case, you may be better with a higher clocked 6 core than a slower clocked 8 core.

Sony maxes out all 8 cores (4 physical, 4 virtual) when rendering, so very likely more cores = better.
I can check with other Sony users just to make sure though.

Quote
If you want, throw me an encode log over from HandBrake and I can check over your settings. Your video's don't have an awful lot of motion in them, so you might be able to relax some of the settings to improve performance without any noticeable quality loss or increase in filesize. Depends really what settings your using at the moment.

PM on it's way, thanks.
Oops, latest script not on my home machine, will send tomorrow.
« Last Edit: January 02, 2015, 12:48:39 pm by EEVblog »
 

Offline poorchava

  • Super Contributor
  • ***
  • Posts: 1672
  • Country: pl
  • Troll Cave Electronics!
Re: EEVblog #698 - GPU Video Rendering
« Reply #43 on: January 02, 2015, 01:25:08 pm »
I've done similar test on my machine with i5-4570 and Radeon R7 200 with 1GB GDDR5.

One minute 720p video @ 25fps took about 40-45 seconds to render both in case of CPU-only operation and with GPU acceleration via OpenCL.

One thing I've noticed was that when GPU acceleration was enabled I was still getting serious usage of all the CPU cores and the GPU load was only around 25-30% according to my system monitor.

Perhaps the usage of GPU is not optimal, as only part of its processing power seems to be utilized.
I love the smell of FR4 in the morning!
 

Offline s55

  • Newbie
  • Posts: 5
Re: EEVblog #698 - GPU Video Rendering
« Reply #44 on: January 02, 2015, 01:35:42 pm »
@poorchava -> What software are you using?

It's not uncommon for OpenCL to augment video encoding but not fully replace it.  For example, x264 has OpenCL offload of Lookahead, but the rest of the encoder is CPU based.
 

Offline IanJ

  • Supporter
  • ****
  • Posts: 1609
  • Country: scotland
  • Full time EE & Youtuber
    • IanJohnston.com
Re: EEVblog #698 - GPU Video Rendering
« Reply #45 on: January 02, 2015, 01:53:17 pm »
Hi Dave et al,

I have a very similar setup to Dave.....thought I'd offer my findings:-

i7-4770@3.4GHz, 8gig ram, GeForceGT640, Win7_64bit.
Test rendering of a 1min15sec clip using Movie Studio 13 Platinum.

Most codecs etc worked out at 3min26sec to render (1080p50), the GPU rendering a few secs more!.......but then I tried XDCAM EX .mp4 file = 1min1sec
The caveat is that you can only get 720p50 at the fast rendering rate.
The rendered file size is just slightly bigger than the original footage.

Note: You will need to purchase the codec pack before you can play the rendered file locally, but YouTube does support it without of course.

Ian.
Ian Johnston - Original designer of the PDVS2mini || Author of the free WinGPIB app.
Website - www.ianjohnston.com
YT Channel (electronics repairs & projects): www.youtube.com/user/IanScottJohnston, Twitter (X): https://twitter.com/IanSJohnston
 

Offline dentaku

  • Frequent Contributor
  • **
  • Posts: 881
  • Country: ca
Re: EEVblog #698 - GPU Video Rendering
« Reply #46 on: January 02, 2015, 02:04:06 pm »
Since 50/60 fps doesn't work for everyone is it even worth bothering with? If you were walking around at a tradeshow then it would be useful but it's not for static shots inside your office.
If I play a video fullscreen, Youtube will figure out that I have the bandwidth to play in 1080p and automatically switches but then the audio and video go out of sync so I have to manually switch to 720, rewind a few seconds and then everything syncs up again. This is in IE 11.
30fps 1080p videos have always played fine on this setup.
Your latest mailbag seems to work in 50 fps 1080p on my mother's inexpensive laptop in Firefox though.

It's a good learning experience I guess (in video encoding and GPU computing) and at least I know how to change my settings to get it working so i's not a terrible inconvenience but this shows what it's like experimenting with brand new technology that nobody's settled on a standard for yet.
« Last Edit: January 02, 2015, 02:06:05 pm by dentaku »
 

Offline Razor512

  • Regular Contributor
  • *
  • Posts: 156
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #47 on: January 02, 2015, 02:06:07 pm »
How far has he pushed his 3770K?

It is a good overclocker and it will be painful to run it at 3.5GHz instead of something more reasonable like 4.2 to 4.5 GHz

The dedicated nvidia encoder will encode directly to h.264 at up to 1440p at 60FPS.

It is an ASIC designed for the nvidia shadow play, thus it has no noticeable performance impact when gaming.
 

Offline edy

  • Super Contributor
  • ***
  • Posts: 2385
  • Country: ca
    • DevHackMod Channel
Re: EEVblog #698 - GPU Video Rendering
« Reply #48 on: January 02, 2015, 02:16:50 pm »
Dave, here is a suggestion... perhaps others can chime in.

I record and edit everything in MPEG which is what my camera records. I use Womble (although other editors probably exist) which edit MPEG without any recoding when I set my output to the same as my input. Basically just stream copying. That is extremely FAST and there is no "loss" from decompression and compression which may introduce artifacts, and also no CPU work involved.

Once I have a complete final edited MPEG output, I apply Handbrake to it and it recodes and compresses to a nice MP4 which I upload to YouTube. Why? Because it is faster to use Handbrake and upload the smaller file compared to just uploading the bigger file.

So my suggestion is to not worry about any compression or decompression during editing if you are simply doing mostly straight cuts, and use software which can handle direct stream copying like Womble does with MPEG. Then your limitation is not so much the CPU but how fast your machine can copy a file. Let Handbrake do the heavy work to produce a file you can upload.

What do you think? Is anyone using "lossless" editors? Do they have it available for other formats or only MPEG?

Perhaps I will do a video showing my setup and how fast it works on my crappy old ASUS M51a laptop.
« Last Edit: January 02, 2015, 02:40:09 pm by edy »
YouTube: www.devhackmod.com LBRY: https://lbry.tv/@winegaming:b Bandcamp Music Link
"Ye cannae change the laws of physics, captain" - Scotty
 

Offline poorchava

  • Super Contributor
  • ***
  • Posts: 1672
  • Country: pl
  • Troll Cave Electronics!
Re: EEVblog #698 - GPU Video Rendering
« Reply #49 on: January 02, 2015, 02:21:03 pm »
@poorchava -> What software are you using?

It's not uncommon for OpenCL to augment video encoding but not fully replace it.  For example, x264 has OpenCL offload of Lookahead, but the rest of the encoder is CPU based.

Same as Dave did, a relative of mine happened to have a license for the Sony software which they are not using at the moment. I use different video editing software though.

Btw, the Youtube bandwidth sensign doesn't work very well for me. It tends to set itself to 720p/25fps while my connection is this:
I love the smell of FR4 in the morning!
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8517
  • Country: us
    • SiliconValleyGarage
Re: EEVblog #698 - GPU Video Rendering
« Reply #50 on: January 02, 2015, 03:07:07 pm »
Stuff to ponder about

How much transcoding do you do ?
'Rendering' is the terminology used when you create animated overlays like tickerbars, greenscreen effects , crossfades etc. you don't seem to be doing any of that in your movies. Render operations are doing pixel operations for which the gpukicks in.

What you are doing is transcoding. Take a chunk of video recorded in format x, and spit it out in format y.

Your camera films in format x. Your output is a different format ? What if you keep the format the same (input and output for,at identical) then the encoding only happens at the intersection of two clips. Most of the other data is simply copied over. Like merging two files.  There may be a tweak where you can tell the editing tool to adjust your cut points so they always coincide with an i frame. In that case there is no rendering involved at the handover point as a frame sequence always has to start with an i frame.

Do you know what the gop format looks like for your input format and output format ? If the gop lengths are different then encoding becomes time consuming.

What other effects are you running ? Color correction ? Audio leveling ?

Here's another thing to think about. If you watch commercial broadcast in HD. Let's say a news channel. They have the live studio feed, overlay a titlebar, have an animated scroller at the bottom , may inject an animated background and when interviewing a live reporter do picture in picture.
This is all done by a single computer , in realtime.

How do they pull that off ? By skipping decoding/encoding.

The live video comes in as an uncompressed format so the computer does not have to waste time expanding the stream and then re compressing it. The datarates are not that high for a modern computer. Overlays (tickerbar etc )are run on the gpu. Assembling the output video is a chunk of or operations using masks take live feed, apply mask (set certain areas to black). Then take overlay anything that is not black in overlay gets copied over to anything that is black in stream. Done.
Very simp,e bitswap operations.

When the final video is ready , then does it get encoded , once in the desired transmit format.

You may be able to do such thing also. Your camera has a live video output over usb ?  Meaning if you plug it in and launch a video capture tool it sees the live feed ?   You may want to try to capture, using a laptop , directly in an uncompressed format , or a format that only uses i frames. As opposed to usng the in camera encoding. You will have very large files but there is no deco pression step anymore. You have raw uncompressed video and audio.

That may edit much faster than the native format from the camera. Edit in vegas, save as uncompressed , and let handbrake do the encoding .

Something worth a try.

My gut says the computer is spending al its time decoding/reencoding.

« Last Edit: January 02, 2015, 03:30:40 pm by free_electron »
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Offline JoeO

  • Frequent Contributor
  • **
  • Posts: 527
  • Country: us
  • I admit to being deplorable
Re: EEVblog #698 - GPU Video Rendering
« Reply #51 on: January 02, 2015, 03:12:39 pm »
Dave:

Why don't you post a video that readers can download and specify what you want as an output.  Also post your rendering time.

Then let the EEVBlog users experiment with their own systems and software with a goal of the least amount of time to render.

They can then post their results here along with their software/hardware/settings.
The day Al Gore was born there were 7,000 polar bears on Earth.
Today, only 26,000 remain.
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #52 on: January 02, 2015, 03:15:21 pm »
Why don't you do 4k at 60fps?*





(*=joke)
 

Offline rw

  • Newbie
  • Posts: 2
Re: EEVblog #698 - GPU Video Rendering
« Reply #53 on: January 02, 2015, 03:29:10 pm »
I have had similar issues with NVidia GTX-970 card and several pieces of software not seeing CUDA as available. An interesting bit of information, which might possibly be gleaned from the DVDFAB DeCrypter forums: it was suggested that the new Maxwell architecture used in the current NVidia products also came with a change in the driver architecture. It was suggested that after some rewriting, CUDA can again be used. The people at DVDFab have said that in current versions they do support the newest NVidia chipsets. Unfortuantly for other reasons, I have not been able to test this statement, but my take away, is that if you are willing to wait, perhaps for quite a long time (based on the face that Maxwell GPUs were relased in the GTX 870 and 880 as well), the newer chips will be supported.
 

Offline hikariuk

  • Supporter
  • ****
  • Posts: 206
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #54 on: January 02, 2015, 03:46:37 pm »
I imagine it is a pretty small community of people who are doing 50/60fps right now.   On youtube for instance, I have run into more content producers if they want to 'up the quality' they are instead using 4k @still standard 30fps, than I ever have of anyone doing 50/60fps.

60 fps recordings are pretty common place in the PC gaming crowd and their associated YouTube channels.  PC gamers, at least, prefer higher frame rates to higher resolutions.
I write software.  I'd far rather be doing something else.
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #55 on: January 02, 2015, 04:50:08 pm »
Given the choice, and knowing how long the transcoding and rendering can take, personally I'd prefer the time to be spent on content rather than fannying around producing a 60fps rate. The frame rates on broadcast full HD TV is still 1080i at 25/30 frames/sec, perhaps I'm living under a rock, but I don't see many complaints about that.
 

Offline Flump

  • Frequent Contributor
  • **
  • Posts: 520
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #56 on: January 02, 2015, 04:55:15 pm »
should have left things as they were dave, all you have done is create problems for yourself,
increased rendering time and bigger file sizes and such.
And there are people that cant watch 1080p60 anyway (like myself) as it just jerks and stutters,
and when i swap between 720p60 and 1080p60 i cant see any difference at all
(apart from the stuttering)

hope you get it sorted out without spending anymore money

 

Offline ovnr

  • Frequent Contributor
  • **
  • Posts: 658
  • Country: no
  • Lurker
Re: EEVblog #698 - GPU Video Rendering
« Reply #57 on: January 02, 2015, 04:57:01 pm »
PC gamers, at least, prefer higher frame rates to higher resolutions.

Some of them anyway; I decided I was happier with Nvidia's DSR rendering at ~4k and downsampling to 2560x1440 @ 30fps than 1080p @ 60fps.
 

Offline IanJ

  • Supporter
  • ****
  • Posts: 1609
  • Country: scotland
  • Full time EE & Youtuber
    • IanJohnston.com
Re: EEVblog #698 - GPU Video Rendering
« Reply #58 on: January 02, 2015, 06:23:29 pm »
and when i swap between 720p60 and 1080p60 i cant see any difference at all
(apart from the stuttering)

That's one reason why I mentioned it in my post below, but don't get me wrong......IMO it still needs some testing to see if 720p50/60 is acceptable, and/or whether 1080p50/60 is worth the extra time to encode. Personally, at the moment I don't watch YT vids full screen, so 1080 has no real advantage over 720, and I'd prefer the 50/60fps all day over 25/30.

https://www.eevblog.com/forum/blog/eevblog-698-gpu-video-rendering/msg579014/#msg579014

Ian.
Ian Johnston - Original designer of the PDVS2mini || Author of the free WinGPIB app.
Website - www.ianjohnston.com
YT Channel (electronics repairs & projects): www.youtube.com/user/IanScottJohnston, Twitter (X): https://twitter.com/IanSJohnston
 

Offline cmpxchg

  • Contributor
  • Posts: 13
  • Country: de
Re: EEVblog #698 - GPU Video Rendering
« Reply #59 on: January 02, 2015, 06:45:36 pm »
Frankly, it seems like we are missing the point here. Dave said that he does his actual encoding in Handbrake. So ideally, you would not want that Sony tool to do any *coding* whatsoever! Doing two separate lossy encoding steps is a no-no for quality, and as shown here, it hurts encoding time, too.

Is there a lossless codec available in Sony, ideally with no time-consuming compression at all? Sure, the resulting file will be massive, but that's only an intermediate step for Handbrake to work on. Then you have Sony do the *composition* and Handbrake do the *encoding*. These are separate processes. With a proper lossless codec on low compression, you'll probably be limited by hard disk throughput for encoding, so it'll be much faster than realtime.
 

Offline lightman

  • Newbie
  • Posts: 8
Re: EEVblog #698 - GPU Video Rendering
« Reply #60 on: January 02, 2015, 07:35:40 pm »
This thread is priceless, it has so much info!.

So far, in my experience encoding video (15 yrs), the most important thing are:
1- Number of CPU cores / Number of processors
2- L3 cache

Usually you will not notice much difference between i7 top of the line and Xeon processors.

I think the best thing you can do is to purchase a dual or quad processor eATX board, but not sure if there is such a solution for i7 , i used a couple of dual processor boards for AMD processors in the past.

I have a couple of servers here with single and dual xeons so I can do some tests if you like, they are not the most newer ones, but enough to see the difference between single and dual processor.

BTW: someone comment about the results of using mainconcepts encoder with cuda!, VERY interesting! I will test it as soon as I can free a maxwell card.
« Last Edit: January 02, 2015, 07:58:10 pm by lightman »
 

Offline rollatorwieltje

  • Supporter
  • ****
  • Posts: 571
  • Country: nl
  • I brick your boards.
Re: EEVblog #698 - GPU Video Rendering
« Reply #61 on: January 02, 2015, 08:00:53 pm »
Frankly, it seems like we are missing the point here. Dave said that he does his actual encoding in Handbrake. So ideally, you would not want that Sony tool to do any *coding* whatsoever! Doing two separate lossy encoding steps is a no-no for quality, and as shown here, it hurts encoding time, too.

Is there a lossless codec available in Sony, ideally with no time-consuming compression at all? Sure, the resulting file will be massive, but that's only an intermediate step for Handbrake to work on. Then you have Sony do the *composition* and Handbrake do the *encoding*. These are separate processes. With a proper lossless codec on low compression, you'll probably be limited by hard disk throughput for encoding, so it'll be much faster than realtime.
It can do lossless as in no compression at all, but it still takes quite long and the file will be like 12GB per minute or so (using Video for Windows -> create a lossless template). There doesn't seem to be some useful intermediate codec with at least a minimal amount of compression.

I don't get the extra Handbrake step either, but I have no real experience in this. Youtube accepts the output AVC from Movie Studio directly. If that file is too big, why not lower the bitrate in Movie Studio instead of compressing it again?
 

Offline Rutger

  • Regular Contributor
  • *
  • Posts: 210
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #62 on: January 02, 2015, 08:28:56 pm »
If you aren't using an SSD you are not going to be able to write at 25MB/s.
 

Online Marco

  • Super Contributor
  • ***
  • Posts: 6723
  • Country: nl
Re: EEVblog #698 - GPU Video Rendering
« Reply #63 on: January 02, 2015, 08:43:43 pm »
By and large encoding is not an embarrassingly parallel problem ... everything is super-branchy and interconnected, not suited to GPUs at all. For a few limited parts of the encoder (motion estimation foremost) you could do a GPU version which eekes out a bit more compression, but that's about it.
 

Offline rollatorwieltje

  • Supporter
  • ****
  • Posts: 571
  • Country: nl
  • I brick your boards.
Re: EEVblog #698 - GPU Video Rendering
« Reply #64 on: January 02, 2015, 08:49:36 pm »
If you aren't using an SSD you are not going to be able to write at 25MB/s.

That would be quite a poor harddrive... Even to my NAS I can write with more than twice that speed.
It has a WD Green 2TB, not even a performance disk.
 

Online mariush

  • Super Contributor
  • ***
  • Posts: 5030
  • Country: ro
  • .
Re: EEVblog #698 - GPU Video Rendering
« Reply #65 on: January 02, 2015, 08:51:03 pm »
My 4 TB Hitachi NAS series drive can do 80 MB/s sustained at any point on the surface... starts at around 160 MB/s and goes down as the heads move towards the other side of the platters. Saving videos encoded with lossless codecs like MagicYUV is really not a problem.

No need for a SSD unless you work with multiple video and audio tracks and you do a lot of cuts and add lots of effects/transitions

Dave only has one video track and his video consists mostly of sticking segments together and cutting out parts he doesn't want anymore.  So Sony software buffers a whole bunch of data from the input video file, then writes data from video codec to disc.
There's minimum read/write access so the negative points of regular hard drives (long access time, having to move heads between read and write operations) are not causing any issues here.

 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #66 on: January 02, 2015, 10:24:35 pm »
Even five years ago when I last did HD video my sustained bulk (ie not cached) hard drive throughput was 80MB/s. Not sure where 25MB/s comes from, maybe an order or magnitude out?
« Last Edit: January 02, 2015, 11:39:07 pm by Howardlong »
 

Offline cmpxchg

  • Contributor
  • Posts: 13
  • Country: de
Re: EEVblog #698 - GPU Video Rendering
« Reply #67 on: January 02, 2015, 11:08:52 pm »
Frankly, it seems like we are missing the point here. Dave said that he does his actual encoding in Handbrake. So ideally, you would not want that Sony tool to do any *coding* whatsoever! Doing two separate lossy encoding steps is a no-no for quality, and as shown here, it hurts encoding time, too.

Is there a lossless codec available in Sony, ideally with no time-consuming compression at all? Sure, the resulting file will be massive, but that's only an intermediate step for Handbrake to work on. Then you have Sony do the *composition* and Handbrake do the *encoding*. These are separate processes. With a proper lossless codec on low compression, you'll probably be limited by hard disk throughput for encoding, so it'll be much faster than realtime.
It can do lossless as in no compression at all, but it still takes quite long and the file will be like 12GB per minute or so (using Video for Windows -> create a lossless template). There doesn't seem to be some useful intermediate codec with at least a minimal amount of compression.

I don't get the extra Handbrake step either, but I have no real experience in this. Youtube accepts the output AVC from Movie Studio directly. If that file is too big, why not lower the bitrate in Movie Studio instead of compressing it again?

At 12GiB/minute, Daves camera must be a real monster to sustain 200MiB/s and do all the video camera stuff simultaneously. You can of course do lossless and have compression; that's what WinRAR and ZIP are for, and I'm sure video codecs exist for "lossless, but compressed" too, there are certainly audio codecs for that. So the output size of such a codec would either be the same as the original camera data, and clearly the i7 has the camera beat on performance, or most likely, it would be considerably less as you can use the i7 to do compression.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #68 on: January 02, 2015, 11:25:59 pm »
Frankly, it seems like we are missing the point here. Dave said that he does his actual encoding in Handbrake. So ideally, you would not want that Sony tool to do any *coding* whatsoever! Doing two separate lossy encoding steps is a no-no for quality, and as shown here, it hurts encoding time, too.
Is there a lossless codec available in Sony, ideally with no time-consuming compression at all?

Not that supports 50/60fps that I am aware of. Unless there is a plugin one of some sort.
Yes, Sony is only used to produce an intermediate file that goes to Handbrake and is then deleted.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #69 on: January 02, 2015, 11:32:33 pm »
I don't get the extra Handbrake step either, but I have no real experience in this. Youtube accepts the output AVC from Movie Studio directly. If that file is too big, why not lower the bitrate in Movie Studio instead of compressing it again?

Because Handbrake (actually x264 codec, Handbrake is just the shell) is superb at what it does. It has a single pass "constant quality" mode that ensures optimal picture quality for every frame. Instead of picking a target bit rate you pick a target "quality" rate.
So no matter what type of video I produce, be it outdoors motion with tons of detail, a talking head, or a screen capture tutorial, Handbrake does the best job every time without me having to think about and dick around with it.
An outdoor motion video will be huge in file, and screen capture will be insanely small in size, all with the same consistent quality.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #70 on: January 02, 2015, 11:33:51 pm »
I think the best thing you can do is to purchase a dual or quad processor eATX board, but not sure if there is such a solution for i7 , i used a couple of dual processor boards for AMD processors in the past.

I thought only Xeon allowed multiple processors?
 

Offline wholder

  • Regular Contributor
  • *
  • Posts: 72
  • Country: us
    • Wayne's Tinkering Page
Re: EEVblog #698 - GPU Video Rendering
« Reply #71 on: January 02, 2015, 11:35:03 pm »
I'm wondering if a bit of crowd sourcing could help, here.  Perhaps you could post a RAW, one minute clip in the same 60fps format you tested and see what results your viewers can get.  Perhaps not every solution would be useful to you, but it would give an idea as to what is possible.

Wayne
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #72 on: January 02, 2015, 11:40:44 pm »
'Rendering' is the terminology used when you create animated overlays like tickerbars, greenscreen effects , crossfades etc. you don't seem to be doing any of that in your movies. Render operations are doing pixel operations for which the gpukicks in.
What you are doing is transcoding.

I'm not fussed with the exact terminology. It is common to call anything your video editor spits out to be "rendering".
And then anything after that "transcoding".
And that is what what I call them.

Quote
Your camera films in format x. Your output is a different format ? What if you keep the format the same (input and output for,at identical) then the encoding only happens at the intersection of two clips. Most of the other data is simply copied over. Like merging two files.  There may be a tweak where you can tell the editing tool to adjust your cut points so they always coincide with an i frame. In that case there is no rendering involved at the handover point as a frame sequence always has to start with an i frame.

If you can tell me how that's possible in Sony I'm all ears.

Quote
What other effects are you running ? Color correction ? Audio leveling ?

None. Just some fades, text and occasional dual video overlays.

Quote
The live video comes in as an uncompressed format so the computer does not have to waste time expanding the stream and then re compressing it. The datarates are not that high for a modern computer. Overlays (tickerbar etc )are run on the gpu. Assembling the output video is a chunk of or operations using masks take live feed, apply mask (set certain areas to black). Then take overlay anything that is not black in overlay gets copied over to anything that is black in stream. Done.
Very simp,e bitswap operations.

It's all well and good to say all this and show how studios us it etc, but it's not really relevant to my situation I'm afraid.

Quote
You may be able to do such thing also. Your camera has a live video output over usb ?  Meaning if you plug it in and launch a video capture tool it sees the live feed ?   You may want to try to capture, using a laptop , directly in an uncompressed format , or a format that only uses i frames. As opposed to usng the in camera encoding. You will have very large files but there is no deco pression step anymore. You have raw uncompressed video and audio.

I couldn't think of anything more horrendous that would kill my productivity than to live capture from the camera to a PC. (could be done via HDMI)
Just the logistics of it would be a nightmare.

Quote
My gut says the computer is spending al its time decoding/reencoding.

Of course it is.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #73 on: January 02, 2015, 11:44:40 pm »
I'm wondering if a bit of crowd sourcing could help, here.

I know the result. I'd end up with a 1000 different opinions on why their way/program is the best.

This is pretty simple really. I either need a faster processor, or I need a codec available on Sony that can be rendered too faster.
I did try Frameserver at one point, which in theory is supposed to render the quickest because it's a raw output, but it was messy and didn't work right.
 

Offline warp_foo

  • Supporter
  • ****
  • Posts: 117
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #74 on: January 03, 2015, 12:02:12 am »
I have had similar issues with NVidia GTX-970 card and several pieces of software not seeing CUDA as available. An interesting bit of information, which might possibly be gleaned from the DVDFAB DeCrypter forums: it was suggested that the new Maxwell architecture used in the current NVidia products also came with a change in the driver architecture. It was suggested that after some rewriting, CUDA can again be used. The people at DVDFab have said that in current versions they do support the newest NVidia chipsets. Unfortuantly for other reasons, I have not been able to test this statement, but my take away, is that if you are willing to wait, perhaps for quite a long time (based on the face that Maxwell GPUs were relased in the GTX 870 and 880 as well), the newer chips will be supported.

If the above is correct - Maxwell architecture impacts CUDA processing - if possible, try borrowing a GTX 770. It's a Kepler based GPU.

m

ETA: If you want to, that is.  :)
« Last Edit: January 03, 2015, 12:05:16 am by warp_foo »
Where are we going, and why are we in a handbasket?
 

Offline wholder

  • Regular Contributor
  • *
  • Posts: 72
  • Country: us
    • Wayne's Tinkering Page
Re: EEVblog #698 - GPU Video Rendering
« Reply #75 on: January 03, 2015, 12:03:32 am »
I'm wondering if a bit of crowd sourcing could help, here.
This is pretty simple really. I either need a faster processor, or I need a codec available on Sony that can be rendered too faster.

Have you considered a solution that uses a rendering farm of multiple computers to handle the encoding?  In the Mac world we use Compressor (http://www.apple.com/final-cut-pro/compressor/#distributed-encoding) to use an array of shared computers to distribute the task.  Perhaps you could use some of those "dumpster" computers you're always finding to build something similar using Windows.

Wayne
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #76 on: January 03, 2015, 12:14:50 am »
I think I might get back into trying x264vfw and see if I can get it working. Never had success before, but that should allow the skipping of the Handbrake step. At least for the main part. Still have to transcode for the podcast version using my existing script.
 

Offline Corporate666

  • Supporter
  • ****
  • Posts: 2009
  • Country: us
  • Remember, you are unique, just like everybody else
Re: EEVblog #698 - GPU Video Rendering
« Reply #77 on: January 03, 2015, 12:52:21 am »
I don't get why everyone insists that it must be things that Dave has already tried (memory, drives) that is slowing him down... it's only 2 things, the CPU and the software.

Dave, how tied are you to Sony Vegas?  You say it suits your workflow... is it that you know the software well and don't want to change, or does Vegas do something that other software doesn't do?  On the other hand, I don't think offloading to a GPU is going to make all that much difference at all, even if the software did support it.

Depending on what you want to spend and how much tinkering you're willing to do, I think you should look at

1) Overclocking your machine as much as possible.  Water cooling, etc.  You can probably increase speeds quite significantly this way.
2) Can you automate your process with scripts/macros/software such that you just dump a file into a folder, hit "go" and the next morning it's rendered/converted and uploaded to Youtube?
3) Possible to find a camera that outputs in a format that eliminates one of your steps?
4) A Xeon processor will be a fair bit faster, but nowhere near the bang for the buck of an i7.  But if you need speed more than you need to control costs, a Xeon (or dual Xeons) will help a LOT
5) There are numerous cloud computing services available.  You could pay-by-the-hour with Amazon AWS and render your stuff faster than you can imagine, but you may be limited then by bandwidth getting the data to/from them?  https://aws.amazon.com/ec2/  and there are other services that cater specifically to video rendering that can give you massive computing power at the drop of a hat.
It's not always the most popular person who gets the job done.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #78 on: January 03, 2015, 01:24:40 am »
I think I might get back into trying x264vfw and see if I can get it working. Never had success before, but that should allow the skipping of the Handbrake step. At least for the main part. Still have to transcode for the podcast version using my existing script.

Turns out that x264vfw  finally worked.
Rendered 1:00 file in 2:20 whcih is not bad considering I don't need the 2nd Handbrake step.
Audio is way out of sync though, so more experimentation required.
And there is the ability to add my existing Handbrake command line options manually too.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #79 on: January 03, 2015, 01:30:08 am »
1) Overclocking your machine as much as possible.  Water cooling, etc.  You can probably increase speeds quite significantly this way.

Of course. But it's pretty linear.

Quote
2) Can you automate your process with scripts/macros/software such that you just dump a file into a folder, hit "go" and the next morning it's rendered/converted and uploaded to Youtube?

I already do that with handbrake, it's drag'n'drop onto desktop icons.
I have different scripts for different tasks I need.

Quote
3) Possible to find a camera that outputs in a format that eliminates one of your steps?

You wouldn't buy a camera based on that. And it's either H.264, AVCHD, both of which I use presently, or some form of raw.
Raw video provides a nightmare in transfer and storage.
Only the craziest pixel peepers, or people who need documentary film quality do that.

Quote
4) A Xeon processor will be a fair bit faster, but nowhere near the bang for the buck of an i7.  But if you need speed more than you need to control costs, a Xeon (or dual Xeons) will help a LOT

Of course it will, it's simply a matter of cost.

Quote
5) There are numerous cloud computing services available.  You could pay-by-the-hour with Amazon AWS and render your stuff faster than you can imagine, but you may be limited then by bandwidth getting the data to/from them?  https://aws.amazon.com/ec2/  and there are other services that cater specifically to video rendering that can give you massive computing power at the drop of a hat.

Not an option due to bandwidth caps and upload/download speeds. Pointless to even consider, will always be faster to render locally.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #80 on: January 03, 2015, 01:32:33 am »
Dave, how tied are you to Sony Vegas?  You say it suits your workflow... is it that you know the software well and don't want to change, or does Vegas do something that other software doesn't do?

Don't mention the war, or editing software.
I've spent years investigating other packages and have settled on Sony for various reasons.
Changing to another package will not solve the problem to hand, only create new ones.
 

Offline gildasd

  • Frequent Contributor
  • **
  • Posts: 935
  • Country: be
  • Engineering watch officer - Apprentice Officer
    • Sci-fi Meanderings
Re: EEVblog #698 - GPU Video Rendering
« Reply #81 on: January 03, 2015, 01:48:16 am »
I saw the server farm thing done a few years back by a company that does events for the medical sector.
They also did the video of the blablablanosideeffectsoncowsblablabla and their typical client NEEDED the finished edit in 24h for global release/denial.
The finished vids were hellish long, 3 to 8 hours.
They had a guy on a motorbike bringing in the rushes during the event to start derushing the thing.
There were like 4 minions doing that, and the head honcho in an edit room with a wall of screens yelling with interns grabbing notes of x time on y screen...
Then other people would patch the thing together.
10 people in the office.
4 or 5 at the event...

The one event I did had 1 wide shot (safety cam).
2 or 3 fixed shot.
1 mobile on the person speaking.
All on non stop (2cams in each spot, when a cam was on the last 5 min of a tape they would start the parallel cam).

Won't name names because I nearly had to sue them to get paid something they had had signed etc.

The "farm" was a room of DELL's (10/12) with onboard graphics with 2 drives (RAID set for safety), 8gig of ram and the biggest CPU that could be ordered standard on the cheapest model...
They would literally run them till they burnt, but had boxes of new units to swap in when they did.
All were all on ethernet and run from a Mac where the edit was done.

Can't tell you more, this not my domain.


Edit: added more memories...
« Last Edit: January 03, 2015, 02:01:37 am by gildasd »
I'm electronically illiterate
 

Offline PinheadBE

  • Regular Contributor
  • *
  • Posts: 176
  • Country: be
  • Pinball Freak
Re: EEVblog #698 - GPU Video Rendering
« Reply #82 on: January 03, 2015, 02:36:33 am »
Gosh  :palm:
Everyone seems obsessed by HDD, CPU or GPU performances, and no one even mentionned the link between all of them: your system bus!

All in all, you'll only get the performance of the weakest (= slowest) link in your system.   You may increase your CPU or GPU power as much as you can, but in the end, if your bus, for somewhat reason, cannot deal with the higher throuput, you'll stay exactly where you are.  :blah:

(btw, for what it's worth, I don't give it a kopeck to 60 fps or over-the-rainbow-superb-HD definition....  We are not talking National Geographic here !  We just look at the guts of some electronic trash....  I personnally always download the videos at 480p to my tablet to watch them in the train while I commute... So.... AFAIC, this is all a waste of time....  just my 2c  ;) )
Please keep our planet clean
 

Offline free_electron

  • Super Contributor
  • ***
  • Posts: 8517
  • Country: us
    • SiliconValleyGarage
Re: EEVblog #698 - GPU Video Rendering
« Reply #83 on: January 03, 2015, 02:51:53 am »

I'm not fussed with the exact terminology. It is common to call anything your video editor spits out to be "rendering".
And then anything after that "transcoding".
And that is what what I call them.

i gave the terminology to make sure we are talking about the same thing. So we have established your problem is decoding, encoding. Encoding as this takes a long time but can be run as last step in handbrake. Even then, we want to skip all the intermediate decoding/ encoding steps to speed up the creation of the input file for handbrake.

Rendering is for crossfades. Transcoding is converting one video format to another. You dont do a lot of renders. Splices arent reallly renders unless they need to be done on non i frames.

Quote
If you can tell me how that's possible in Sony I'm all ears.

There should be a setting for that in the editing preferences. Lok for so ething called 'adjust cut point to gop end' or something to that terms.

Found it : http://www.sonycreativesoftware.com/webhelp/vegaspro/12/ENU/Content/Render.htm
Play with that checkbox and see what happens.


Quote
It's all well and good to say all this and show how studios us it etc, but it's not really relevant to my situation I'm afraid.

I gave that as an example that the bottleneck is not the video manipulation in itself, it's the deco press-recompress stuff that eats your time. That is why studios stream a n uncompressed format.
You may be able to do such thing also. Your camera has a live video output over usb ?  Meaning if you plug it in and launch a video capture tool it sees the live feed ?   You may want to try to capture, using a laptop , directly in an uncompressed format , or a format that only uses i frames. As opposed to usng the in camera encoding. You will have very large files but there is no deco pression step anymore. You have raw uncompressed video and audio.
[/quote]

I couldn't think of anything more horrendous that would kill my productivity than to live capture from the camera to a PC. (could be done via HDMI)
Just the logistics of it would be a nightmare.

Why ? Now you capture to sdcard right ? You would simply capture to a harddisk. It would still be drag n drop to get the files over to your editing station.

You would use a pc instead to grab uncompressed video. Speeding up the backend.

Read that link. They explain which formats allow gop passthrough meaning there is no decoding encoding sedning data from an input to ouput.
Play with that re-encode option. Turn that off. That will symply copy over bytes from file to file.
Professional Electron Wrangler.
Any comments, or points of view expressed, are my own and not endorsed , induced or compensated by my employer(s).
 

Offline Lightages

  • Supporter
  • ****
  • Posts: 4314
  • Country: ca
  • Canadian po
Re: EEVblog #698 - GPU Video Rendering
« Reply #84 on: January 03, 2015, 03:21:28 am »
For reference:

I have an MSI GT70 laptop with an i7-3610QM at 2.3GHz 16GB ram, 2x 128SSD in RAID0, 1TB 7200 secondary, NVidia GT675M 4GB, Sony Vegas Pro 13, Win7 x64 Pro.  I get basically no difference using the Sony AVC, that Dave demonstrated, between just CPU or with GPU, around 30 seconds to render the windows video ample file to 1080 30P. When I use the Main Concept codec instead it goes to around 2:00 to render with only CPU but drops to under 30 seconds with CUDA enabled.
 

Offline edy

  • Super Contributor
  • ***
  • Posts: 2385
  • Country: ca
    • DevHackMod Channel
Re: EEVblog #698 - GPU Video Rendering
« Reply #85 on: January 03, 2015, 03:38:27 am »
I looked up your camera models... I am assuming that you were using a Canon HFG30 and now you are using the Sony NEX-VG30. The Sony video format is not universal yet (I saw a few forums in which Mac users are complaining of not having codecs for some of their software) and nobody has created a video editor which does "direct stream copy" with this format (or have they?) when editing simple CUT edits in videos. Perhaps looking for an MP4 "lossless" editor for simple cut edits is the key?

When software is not optimized for lossless, even if you are just going from and to the same exact format, it will STILL go through the usual method of having a decompression and recompression. Software written for "lossless" stream copying for edits (whenever possible) are much faster by avoiding the re-encoding when they see the input/output will be identical.

So with my antique Sony DCR-SR200, it outputs vanilla MPEG-2 files at 720x480 resolution, 29 fps, 9100 kbps video and 448 kbps 6 channel (5.1) audio at 48 khz sample rate. This is much smaller and lower resolution than what you are using, but because this format has been around forever, there are lots of tools available (like Womble MPEG Video Wizard DVD) that allow "lossless" cut edits. It even shows me how much of the copying will be "re-encoded" and how much is "stream copy". See here:




With this in mind, my basic video cut edits are done in seconds for videos that are many minutes long. The only bottle-neck is how fast my hard-drive can read and write the exact same data pretty much. The CPU does nothing and the software can do this because it knows how to properly cut and regenerate "keyframes" with the proper "inter" frames so that cuts work properly (so you don't get those strange inter-frame artifacts when you try to simply concatenate or "fix" corrupt files that are missing keyframes and the inter-frames are working on the wrong data until another keyframe pops up in the stream).

Once my edit is done, Handbrake takes it up to the proper level.

What you may wish to do (not sure how the quality will be) is convert the Sony video output to a format that you can get a "lossless" editor for.... Look for them and see what options are available to handle your high resolution and frame rate. It may be faster to just convert it to this intermediate format and then work with the intermediate format in your lossless video editor... output the edited video to your intermediate format. The cut edits would be mostly stream-copied and it should output in a matter of seconds. Then just Handbrake it back to MP4 for YouTube.

That's essentially what I do now except my camera outputs MPEG-2 already. When I wish to edit MP4 videos I am usually converting it to MPEG-2 with WinFF but keeping high quality bitrate settings, doing all my editing in MPEG-2 within Womble and then back to MP4. Otherwise if I try to edit MP4 directly in Womble (which it will accept) it is very SLUGGISH.... especially when I try to SEEK back and forth to certain parts of my video, do splits and drags, etc. It is impossible to use MP4 on my system because of my slow CPU. But MPEG-2 at high bitrates so it is relatively uncompressed is fast and easy to work with. Then I just delete the huge files when I am done. It is just intermediate format to help the workflow go faster.
YouTube: www.devhackmod.com LBRY: https://lbry.tv/@winegaming:b Bandcamp Music Link
"Ye cannae change the laws of physics, captain" - Scotty
 

Offline JoeO

  • Frequent Contributor
  • **
  • Posts: 527
  • Country: us
  • I admit to being deplorable
Re: EEVblog #698 - GPU Video Rendering
« Reply #86 on: January 03, 2015, 03:47:48 am »
I'm wondering if a bit of crowd sourcing could help, here.  Perhaps you could post a RAW, one minute clip in the same 60fps format you tested and see what results your viewers can get.  Perhaps not every solution would be useful to you, but it would give an idea as to what is possible.

Wayne
I proposed the exact same idea in post #54.
The day Al Gore was born there were 7,000 polar bears on Earth.
Today, only 26,000 remain.
 

Offline Richard Crowley

  • Super Contributor
  • ***
  • Posts: 4317
  • Country: us
  • KJ7YLK
Re: EEVblog #698 - GPU Video Rendering
« Reply #87 on: January 03, 2015, 08:19:03 am »
The ONLY "benefit" from 50 or 60 FPS appears to be the geek wow factor. "Just because we can do it."
If there is any actual significant benefit to viewing talking head videos in 60 FPS, I would certainly like to hear it.
Now, people who do video blogs about how to improve your golf swing or something may benefit from 60 FPS (or even higher).
Don't get me wrong. Dave's content is top-drawer and there is no doubt that thousands of people all around the planet are entertained and educated by watching the EEVblog videos. But I just don't get what is the fascination with high frame rate. Surely people aren't confusing spatial resolution with temporal resolution (which are two independent functions).
 

Offline george graves

  • Super Contributor
  • ***
  • Posts: 1257
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #88 on: January 03, 2015, 11:16:51 am »
Well said Richard.  60FPS for a "long form" "talking head" video blog is just playing with tools - having fun - and showing off.   Yes it is cool! And smooth playback, blah, blah, blah.  But sooooo not needed.   I was going to bring that up, but Dave currently is having an aneurysm already when ever I mention video workflow.

The smart choice might actually be 24 FPS, and with the reduce frame rate, give the bandwith to image fidelity/quality, smaller file size, and quicker upload times.  The EEVBLOG is not a F1 race, or a football match.  It's a freaking video blog!  It's cool you can do it.  But it's the video production equivalent of blinking an LED with an arduino.

 |O

So I'm just supposed to blindly follow them?

Yes, they know more then you.  But you know more then they do in other areas.  So....what's the issue?  Why is this a pissing contest?

Dave, I'll give you one last piece of advice, is that the pro editing software (and only in the last few years Premiere could be put in that camp) has a much better intergration with video cards.  (You're using consumer crap.)  I don't use Premiere, so I'm not on top of what they are doing, but I know they work closely with Nivida to make thing works right.  Look into their Mercury engine.  It not only accelerate previews, but renders as well. The real time smooth playback is nice.  Scaling, and mixing multiple resolutions on the same time line.  Not to mention some cool things like stabilization, and stuff.  You do have to pay for it, so that might be a deal breaker for you.

You're using a consumer editing software, then complaining why it doesn't work with a beading edge video card.  Waaa! 

That's like me using a $50 scope, and then ranting why I can't measure fast rise times.  You got to pay to play.  No?

Don't get me wrong. Dave's content is top-drawer and there is no doubt that thousands of people all around the planet are entertained and educated by watching the EEVblog videos.

Ditto.  Make electronics videos - that's what we love you for.  :-+  Who cares?!?!?  Lets get back to basics!



« Last Edit: January 03, 2015, 12:19:03 pm by george graves »
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #89 on: January 03, 2015, 11:37:38 am »
Dave, I'll give you one last piece of advice, is that the pro editing software (and only in the last few years Premiere could be put in that camp) has a much better intergration with video cards.  I don't use Premiere, so I'm not on top of what they are doing, but I know they work closely with Nivida to make thing works right.  Look into their Mercury engine.  It not only accelerate previews, but renders as well. The real time smooth playback is nice.  Scaling, and mixing multiple resolutions on the same time line.  Not to mention some cool things like stabilization, and stuff.  You do have to pay for it, so that might be a deal breaker for you.

Your using a consumer editing software, then complaining why it doesn't work with a beading edge video card.

I think he mentioned the war, not sure if he got away with it though.
 

Offline george graves

  • Super Contributor
  • ***
  • Posts: 1257
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #90 on: January 03, 2015, 12:12:45 pm »
There's no war with video editors.  If you own a OSX machine, your war is with Apple for ending FCP.  That's about the end of it.  If you have a PC, or want to boot camp your OSX to win 7, you have more options now then ever.  Ask any disgruntled FCP editor, and they will talk your ear off.   But maybe on the consumer side there is.  It;s like eagle vs kicad.  It's an argument that will work it's self out eventually.



« Last Edit: January 03, 2015, 12:20:21 pm by george graves »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #91 on: January 03, 2015, 12:30:12 pm »
Well said Richard.  60FPS for a "long form" "talking head" video blog is just playing with tools - having fun - and showing off.   Yes it is cool! And smooth playback, blah, blah, blah.  But sooooo not needed.

So, it's cool, and it's smooth playback. Those sound like benefits to me, or at least one anyway.

Quote
The smart choice might actually be 24 FPS

I think I can safely guess no on that one.

Quote
Yes, they know more then you.  But you know more then they do in other areas.  So....what's the issue?  Why is this a pissing contest?

No pissing contest. You are simply wrong, as seems to be usual when it comes to this stuff. You pointed me to what you think is the best option and I should listen to them/you, blah blah, but the demonstrable fact this the best system on that list is hardly any better than what I have now for the purposes I need it for.

Quote
Dave, I'll give you one last piece of advice, is that the pro editing software (and only in the last few years Premiere could be put in that camp) has a much better intergration with video cards.

You don't get it do you?, it doesn't matter. It's all about CPU power. GPU's are a crock unless you have a serious editing workflow that can take very specific use of it. I don't have those requirements.

 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #92 on: January 03, 2015, 12:34:58 pm »
Ditto.  Make electronics videos - that's what we love you for.  :-+  Who cares?!?!?  Lets get back to basics!

I am getting back to basics, and forgetting all this GPU crap that basically will never work for my requirements.
But if I want to produce HFR video, I'll produce it, and don't forget that I've had a lot of people say they really like it. That is reason enough to keep doing it.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #93 on: January 03, 2015, 12:37:28 pm »
The ONLY "benefit" from 50 or 60 FPS appears to be the geek wow factor. "Just because we can do it."
If there is any actual significant benefit to viewing talking head videos in 60 FPS, I would certainly like to hear it.

All the people who say they like it can't be wrong.
 

Online Marco

  • Super Contributor
  • ***
  • Posts: 6723
  • Country: nl
Re: EEVblog #698 - GPU Video Rendering
« Reply #94 on: January 03, 2015, 12:43:09 pm »
The smart choice might actually be 24 FPS, and with the reduce frame rate, give the bandwith to image fidelity/quality, smaller file size, and quicker upload times.

24 FPS gets you cinematic judder, which some people associate with quality I guess ... but with a modern codec the image quality won't improve significantly and the motion smoothness will decrease significantly for the majority of people (who are on 60 FPS displays) compared to 30 FPS.
« Last Edit: January 03, 2015, 12:46:15 pm by Marco »
 

Offline george graves

  • Super Contributor
  • ***
  • Posts: 1257
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #95 on: January 03, 2015, 12:46:36 pm »
All the people who say they like it can't be wrong.

 :-DD

Again, you're blinking an LED with an arduino.  Sorry Dave.  Again, I'm a huge fan of yours, but you're beating a dead horse here.  Good luck in your video render times - but ever single piece of advice given to you here is falling on deaf ears. It's kinda pointless.  No good deed goes un-punished I guess.  :-//
« Last Edit: January 03, 2015, 12:53:44 pm by george graves »
 

Online Marco

  • Super Contributor
  • ***
  • Posts: 6723
  • Country: nl
Re: EEVblog #698 - GPU Video Rendering
« Reply #96 on: January 03, 2015, 12:46:56 pm »
How did you establish that the majority of people are on 60fps displays?

Common sense ... I only replaced my CRT monitor with a LCD last year, but I was the last of a dying breed years before. If you are still a member of that breed that's okay, but you are in the minority. Most LCD monitors are 60 Hz.
« Last Edit: January 03, 2015, 12:53:48 pm by Marco »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #97 on: January 03, 2015, 12:50:49 pm »
Can you just remind me why you bought a high end graphics card. Somewhere I have gotten lost. I thought it was to speed up your rendering.

It was. It didn't work, and ultimately really never stood a chance of working.

Quote
I just want to remind you that us technology laggards have less smoothness in 60fps playback.

There are ways to play back without the 60fps.
 

Offline metacollin

  • Contributor
  • Posts: 35
  • Country: us
  • Ocelloscopes. You know, for ocelots.
    • Electropimp
Re: EEVblog #698 - GPU Video Rendering
« Reply #98 on: January 03, 2015, 01:46:57 pm »
You need a Quadro/Tesla card for accelerating encoding.  The stream processors on gaming GPUs cannot usefully encode better than a CPU using OpenCL or CUDA due to architectural limitations.  Basically, you bought the wrong card. 

This is not a software problem - OpenCL and CUDA are very mature and well supported.  It's simply the stream and shader processors on GPUs cannot branch well (perform logical operations) and are pipelined like mofos.   There are custom encoding algorithms that work on GPUs, but they are sacrifice quality, though it's only noticeable at lower bitrates (like youtube :(. ).

If you want realtime performance without changing encoder settings, you really only have one option IMO, and that's a true Xeon Workstation, 12 cores minimum. 

I can say, don't waste anymore time with that card, I would return it if you can.  There are cards that can accelerate encoding of very specific codecs, but video encoding algorithms are still very much the domain of general purpose cpus. 
"Violence is the last refuge of the incompetent." - Isaac Asimov
 

Offline kikr4000

  • Newbie
  • Posts: 1
Re: EEVblog #698 - GPU Video Rendering
« Reply #99 on: January 03, 2015, 03:13:38 pm »
Hi Dave,

The same problem using CUDA goes a long for most video products these days.

I am having the same issue with NERO.

Apparently NVIDIA has removed some stuff in the drivers to support video encoding. Older driver versions can be used to solve this problem on older gfx cards. My guess is that you are however f..... since these older drivers will properly not support your new card.

Some Nero users have been in contact with NVidia, this is one of the answer thet got:

Response from nvidia:
Development investigated the bug and concluded that this is expected behavior due to recent changes in the recent drivers. NVIDIA support for CUDA based encoding (NVCUVENC) has been deprecated starting with the 340.xx driver release. The application will not be able to use NVIDIA CUDA for the purpose. We are no longer exposing the CUDA interface for encoding so the Nero application shouldn't list the CUDA device at all. It appears the application may be falsely detecting the CUDA interface despite the required library is no longer exposed by our drivers. They will need to update their applications to correct this and not expose the CUDA device. We are making arrangement to notify Nero that we are no longer exposing the CUDA interface so they can update their applications to reflect that. Let me know if you have any further questions.

Full thread at:
http://forum.nero.com/nero_eng/topics/nero_recode_graphics_accelerator
http://forum.nero.com/nero_eng/topics/nero_video_12_cuda_video_driver_outdated

/Kim
 

Offline edy

  • Super Contributor
  • ***
  • Posts: 2385
  • Country: ca
    • DevHackMod Channel
Re: EEVblog #698 - GPU Video Rendering
« Reply #100 on: January 03, 2015, 03:33:00 pm »
I think the point Dave is trying to make is that even a high end GPU card that seems to promise faster rendering does little to improve things. Seems the GPU is one-way... faster decoding for playback but broken (as far as drivers, support, etc.) for encoding. Just not delivering what it promises. The solution is unlikely to be in just using faster hardware to brute-force the video editing and rendering. The solution is in working with "smarter" software and/or an intermediate format that allows quick editing (without doing so much encoding) and just applying the encoding on the final edited video cut... which will be best on a very fast CPU and software made to support the full power of it... not really anything to do with GPU.

Running poorly designed software on a faster machine will be less likely to improve the situation. What you need is smart software and settings to reduce the work needed.
« Last Edit: January 03, 2015, 04:14:54 pm by edy »
YouTube: www.devhackmod.com LBRY: https://lbry.tv/@winegaming:b Bandcamp Music Link
"Ye cannae change the laws of physics, captain" - Scotty
 

Online mariush

  • Super Contributor
  • ***
  • Posts: 5030
  • Country: ro
  • .
Re: EEVblog #698 - GPU Video Rendering
« Reply #101 on: January 03, 2015, 04:23:41 pm »
Dave, you can render the video and audio separately (in two steps) and then merge the video and audio using MKVToolsnix ( https://www.bunkus.org/videotools/mkvtoolnix/ ) if Handbrake doesn't have that functionality already.  That should take care of the sync-ing issues you noticed.

Just throwing it out there....  another way to improve the encoding speed would be to use several computers.  (since you have those computers from trash)

* Render the video in Vegas and save it to a intermediary format that's supported by x264 codec. AVI with lossless codecs (as long as that codec is installed on all computers x264 runs on) works great.
* Make the video available to several computers (put it on Windows share or NAS with good network card).. or just copy that big file to each computer so that it's available locally before starting to encode... with gigabit network cards copying at 100 MB/s it only takes minutes to copy tens of GB to computers.
* start several computers and run x264 on each computer to encode a part of the big video file
* merge the segments together at the end.

An example of command line x264 to encode a video that's 90000 frames long ( 60 minutes @ 25fps) :

pc1  : x264.exe  --profile high --tune film --crf 20 --seek 1 --frames 45000 --output segment0.264  c:\path\to\input.avi   
pc2  : x264.exe  --profile high --tune film --crf 20 --seek 45001 --frames 45000 --output segment1.264  network_drive:\\path\to\input.avi

--seek and --frames are the magic parameters. seek means start from frame x , --frames means how many frames to encode.  --crf tells the quality preset, same meaning as the one in Handbrake.

The number after --frames is just informative, it's the maximum frames to encode, if there's only 15000 frames to encode for example x264 will encode that many and won't complain or stop with error messages, so you can basically script everything (write a .bat file on each computer or something like that) and everything will work fine.
 
note: first frame may be 0 actually, not sure, anyway it doesn't matter.

So one part can be run on one computer, the other part can be run on another computer, then put together the two (or several) segments.

Separately, you can render the audio to an ac3 or aac file directly in sony software or render to lossless WAV file and use Handbrake to encode to ac3 or aac..

With elementary streams (the .264 extension), it's possible to just copy one file to the end of another and basically you have one continuous .264 file...

With Total Commander ( windows explorer replacement) I simply select the first video segment (segment0.264) and then go in File > Combine files...  and Total commander automatically finds segment1.264 and segment2.264 and so on and combines all segments into a single .264 file.

Then you can use MKVToolnix or maybe Handbrake to mux the .264 file and the ac3/aac file together into a mp4 or mkv video file.
« Last Edit: January 03, 2015, 04:37:02 pm by mariush »
 

Offline Razor512

  • Regular Contributor
  • *
  • Posts: 156
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #102 on: January 03, 2015, 05:23:48 pm »
Wanted to add a few comments that will show the benefits of 60FPS.

When you record video, to maintain motion quality, you use a shutter speed that is double your output frame rate, so if you do 24 FPS, then you have a shutter speed of 1/48 second, and that remains constant and exposure is controlled using ISO and ND filters (aperture can also be used but that will negatively impact your cinematography.

Due to the shutter speeds used, at 24FPS, you get a lot of blur, and thus with a detail oriented show, if something moves, you will lose a significant amount of detail while it is in motion.
While you can avoid that by boosting the shutter speed, but if you do so, the the video will look choppy, as at less than 60FPS, your eyes can clearly see every single individual frame, and your brain will register every single individual frame (if one frame is not blending into the next), which is why many gamers fine 60FPS to be the minimum for a good gaming experience.

Once you get past the point where your eyes and brain can easily notice and examine individually every single frame, then you no longer have to worry about the shutter speed rules for motion quality. you can do 60FPS at 1/1000s shutter speed, and it will look as smooth as 1/120s shutter speed. With this, depending on the available light, you can use higher shutter speeds which will preserve the full 1080p detail of the object, even while it is motion. If there is little to no movement then is will not matter much, but if the camera is moving, even if it is just do to some vibration, then the higher shutter speeds help keep the detail.

While it is possible to tell the difference between 60FPS and 120FPS on a 120Hz display, you have to look very closely and have to have a side by side view of the 2 frame rates, or have a game repeatedly jump between 60 and 120FPS, e.g., enabling vertical sync, and then using an overclocking tool that allows for remote control of the overclock settings, repeatedly adjust the clock speed enough to cause the card to jump from 60FPS and 120FPS.

You can try this using msi afterburner, and a easy to run game, (I recommend left 4 dead 2, or team fortress 2, or half life 2 deathmatch, as you can easily hit 200-300FPS, and thus can easily use vertical sync and clock speed adjustments to get the game to jump between 60 and 120 FPS, even on an entry level gaming PC.


« Last Edit: January 03, 2015, 05:29:20 pm by Razor512 »
 

Offline Richard Crowley

  • Super Contributor
  • ***
  • Posts: 4317
  • Country: us
  • KJ7YLK
Re: EEVblog #698 - GPU Video Rendering
« Reply #103 on: January 03, 2015, 06:06:53 pm »
Wanted to add a few comments that will show the benefits of 60FPS.
While that is all true, it fails to address the question: what practical benefit is high frame-rate for a talking-head informal video blog?
 

Offline gildasd

  • Frequent Contributor
  • **
  • Posts: 935
  • Country: be
  • Engineering watch officer - Apprentice Officer
    • Sci-fi Meanderings
Re: EEVblog #698 - GPU Video Rendering
« Reply #104 on: January 03, 2015, 06:39:00 pm »
Wanted to add a few comments that will show the benefits of 60FPS.
While that is all true, it fails to address the question: what practical benefit is high frame-rate for a talking-head informal video blog?
Because it gives Dave his nerd-on. You want to take away Dave's nerd-on? You won't like Dave if he can't get his nerd-on...
It's his choice, it's his vlog. Much the same way that if he so chooses to wear a tutu and asks us about the best way to dry clean it, he not asking about the validity of wearing a tutu.
Let Dave wear his bloody tutu.
I'm electronically illiterate
 

Offline Richard Crowley

  • Super Contributor
  • ***
  • Posts: 4317
  • Country: us
  • KJ7YLK
Re: EEVblog #698 - GPU Video Rendering
« Reply #105 on: January 03, 2015, 06:46:34 pm »
Because it gives Dave his nerd-on. You want to take away Dave's nerd-on? You won't like Dave if he can't get his nerd-on...
It's his choice, it's his vlog. Much the same way that if he so chooses to wear a tutu and asks us about the best way to dry clean it, he not asking about the validity of wearing a tutu.
Let Dave wear his bloody tutu.
Interesting you should mention that.  I discovered Fran Blanche via the cross-promotion here on EEVblog. She has some interesting videos. But I was rather put off by discussions of corsets, etc.    :-//
 

Offline rizzy

  • Contributor
  • Posts: 13
Re: EEVblog #698 - GPU Video Rendering
« Reply #106 on: January 03, 2015, 06:56:42 pm »
Hey Dave,

it looks as if Nvidia cards are not the best option for Sony Movie Studio.
Here is a link to a benchmark done by Sony http://www.anandtech.com/show/7481/the-amd-radeon-r9-290-review/14

The benchmark shows that even the (early 2010) Radeon 5870  beats the GTX Titan in XDCAM EX rendering and it's a fact that Nvidia cripples its "consumer" cards like the GTX 970 in respect of GPU computing performance.

In my opinion all the gpu acceleration thing is a matter of compatibility and optimization of software and hardware and even though AMD cards seem better supported they won't work (well) with Catalyst 11.3 but will do with Catalyst 11.2 according to the release notes of Movie Studio 12 (see "Known issues"): http://dspcdn.sonycreativesoftware.com/releasenotes/moviestudiope12_readme_enu.htm

I'd write Sony an email and ask for advice for your specific use (1080p-60i) and maybe give a Radeon card a try. Would be really good press for Sony if they could help you with this one.
 

Offline thmjpr

  • Regular Contributor
  • *
  • Posts: 175
  • Country: ca
Re: EEVblog #698 - GPU Video Rendering
« Reply #107 on: January 03, 2015, 08:23:11 pm »
Did you guys did watch the video, he used an ATI HD7850.
That anandtech benchmark does not seem useful in this case as it does not compare to CPU only rendering. It is also likely using the sample clip with heavy special effects.

If you check this one out: http://www.tweaktown.com/articles/6489/exploring-sony-vegas-pro-13-rendering-with-a-visiontek-radeon-r9-290/index5.html

For their custom video (without special effects, ignore the other ones), the difference between onboard video and a 290 is 20%. So the difference between an HD7850 and a 290 should be minimal.
« Last Edit: January 03, 2015, 08:28:46 pm by thmjpr »
 

Offline 3roomlab

  • Frequent Contributor
  • **
  • Posts: 825
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #108 on: January 03, 2015, 08:40:34 pm »
Did you guys did watch the video, he used an ATI HD7850.
That anandtech benchmark does not seem useful in this case as it does not compare to CPU only rendering. It is also likely using the sample clip with heavy special effects.

If you check this one out: http://www.tweaktown.com/articles/6489/exploring-sony-vegas-pro-13-rendering-with-a-visiontek-radeon-r9-290/index5.html

For their custom video (without special effects, ignore the other ones), the difference between onboard video and a 290 is 20%. So the difference between an HD7850 and a 290 should be minimal.

well it seems there is more (or better) optimizations in vegas v13 + ATI ... but i suppose it would also be codec specific ... then again, it does show that the v13 is biasing toward GPU handling, so if the GPU driver is somewhat incomplete (likely in CUDA case. or even ATI depending on which codec) ... then biasing encoding toward GPU resources would be wasted. (v13 being optimized for GPU, is now slower in CPU only mode  :-//)

**edit ... aha ... they are rendering some string of sony specific efx (a sony benchmarking file vp11.zip ... a 2.5Gb file) etc ... but what dave is doing is mostly re-encoding of video codecs ... quite likely a different comparison no? in that aspect of purposely encoding, it is likely more streamlined specifics is required in the GPU driver (specifically for x264 yes?no?), just like how major game titles with some unique special GFX features require even GPU driver updates (or so i think)

possibly for backward compatibility, that test file 2.5gB seems to be a vegas 11 test file
« Last Edit: January 03, 2015, 08:58:46 pm by 3roomlab »
 

Edgar Amalyan

  • Guest
Re: EEVblog #698 - GPU Video Rendering
« Reply #109 on: January 03, 2015, 08:49:27 pm »
I don't think GPU acceleration has ever lowered encoding times. I remember when I had two gtx 690s, and the 6000 cuda cores slowed down an i7. It only works through their own implementations like shadowplay, but the quality is trash compared to x264. I'm fairly sure GPUs will actually do something only if the project has a lot of GPU related tasks, which is near zero in Dave's case.

Anyway, can you output a lossless but compressed file from Sony? I've never tried it so I don't know, but lossless compressed files encode much faster as no work is needed to be done other than compression. Lagarith codec for example. You will get a larger file obviously, and might run into HDD bottlenecks but the quality will be untouched going into handbrake, and will probably be faster.
 

Offline Corporate666

  • Supporter
  • ****
  • Posts: 2009
  • Country: us
  • Remember, you are unique, just like everybody else
Re: EEVblog #698 - GPU Video Rendering
« Reply #110 on: January 03, 2015, 09:12:57 pm »

Of course. But it's pretty linear.

Sure, but how much of a performance increase are you looking for?  Or, a better question is... how critical is getting more performance?  Is it just to minimize the time of a tedious task, or is it that you're not producing content you otherwise would without more speed?   There is no magic bullet like a video card or piece of software that is going to turn a 3 hour task into a 1 hour task.  A dual processor 18-core Xeon setup will do that, but it will cost thousands.  None of us know your financial situation so nobody can tell you what the best solution is... but since you're close to the top of the consumer CPU speed rankings, the options are squeeze the most out of what you have (overclock), invest in higher power gear (Xeons), or outsource it (cloud computing).  I don't think there's any other way.



Quote
Of course it will, it's simply a matter of cost.
.
.
.

Not an option due to bandwidth caps and upload/download speeds. Pointless to even consider, will always be faster to render locally.

And based on this, your only option is to suck it up and pay the cost of a Xeon machine, or deal with the consumer i7 chips, then.

I personally like 60fps content and disagree with folks that it's pointless.  One could argue that HD isn't needed, or >720p isn't needed... but being at the bleeding edge is always valuable, especially when people can choose to watch it in that format or not.

Another channel I watch is Linus Tech Tips.  They did a funds drive to contribute to them upgrading to a new office.  Maybe you could do that for a new PC to let you produce more 60fps 1080p content?  I would be happy to chip in for that, I am sure hundreds of other EEVBloggers would be too.

Then you can do an old-school 1 or 2 hour video on the build (in 60fps) and it will be money very well spent for the users, and you get a machine that will chew up and spit out your videos in record time.
It's not always the most popular person who gets the job done.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #111 on: January 03, 2015, 09:48:32 pm »
Wanted to add a few comments that will show the benefits of 60FPS.
While that is all true, it fails to address the question: what practical benefit is high frame-rate for a talking-head informal video blog?

Because it looks better to many people. It's smoother and gives a more detailed image.
Many people have said they instantly knew it was a higher frame rate without even knowing I had switched to 60fps.
The difference is real and tangible.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #112 on: January 03, 2015, 09:53:43 pm »
but since you're close to the top of the consumer CPU speed rankings, the options are squeeze the most out of what you have (overclock), invest in higher power gear (Xeons), or outsource it (cloud computing).  I don't think there's any other way.

Correct, there is no other way than a faster CPU. cloud computing is not an option.

Quote
And based on this, your only option is to suck it up and pay the cost of a Xeon machine, or deal with the consumer i7 chips, then.

The current top end consumer i7 should double my speed.

Quote
Another channel I watch is Linus Tech Tips.  They did a funds drive to contribute to them upgrading to a new office.  Maybe you could do that for a new PC to let you produce more 60fps 1080p content?  I would be happy to chip in for that, I am sure hundreds of other EEVBloggers would be too.

Only problem with that is I would have hundreds of people invested in it telling me I'm doing it wrong  ::)
 

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #113 on: January 03, 2015, 09:57:55 pm »
Wanted to add a few comments that will show the benefits of 60FPS.
While that is all true, it fails to address the question: what practical benefit is high frame-rate for a talking-head informal video blog?
Because it gives Dave his nerd-on. You want to take away Dave's nerd-on? You won't like Dave if he can't get his nerd-on...
It's his choice, it's his vlog. Much the same way that if he so chooses to wear a tutu and asks us about the best way to dry clean it, he not asking about the validity of wearing a tutu.
Let Dave wear his bloody tutu.

Hallelujah, well now I understand. How could I ever have doubted the value of the nerd-on? Thank you!

Dave, wear that tutu as much as you want, dear. But be careful of getting your twisted pair stuck in the elastic.
 

Offline codeboy2k

  • Super Contributor
  • ***
  • Posts: 1836
  • Country: ca
Re: EEVblog #698 - GPU Video Rendering
« Reply #114 on: January 03, 2015, 10:02:43 pm »
Correct, there is no other way than a faster CPU. cloud computing is not an option.

Two faster CPUs.  That's a cloud of two. 

You will definitely get the most bang for your buck with a faster CPU.  After that, add more hosts and farm it out, but it's a local farm. I think that's what people mean when they say cloud computing.  You certainly don't want to send it to Amazon AWS or Google App Engine or Microsoft Azure, and I think your reply indicates you know that already.

 

Offline DanielS

  • Frequent Contributor
  • **
  • Posts: 798
Re: EEVblog #698 - GPU Video Rendering
« Reply #115 on: January 03, 2015, 10:43:07 pm »
Correct, there is no other way than a faster CPU. cloud computing is not an option.
Two faster CPUs.  That's a cloud of two. 
Or just an i7-5960X - eight cores, sixteen threads in a single CPU with quad-channel memory controller. Overclocked to a conservative 4GHz, that should be about twice as fast as the 3770K is ever going to be. More expensive than two PCs but far more convenient.
 

Offline pickle9000

  • Super Contributor
  • ***
  • Posts: 2439
  • Country: ca
Re: EEVblog #698 - GPU Video Rendering
« Reply #116 on: January 04, 2015, 12:07:07 am »

The current top end consumer i7 should double my speed.

Quote
Another channel I watch is Linus Tech Tips.  They did a funds drive to contribute to them upgrading to a new office.  Maybe you could do that for a new PC to let you produce more 60fps 1080p content?  I would be happy to chip in for that, I am sure hundreds of other EEVBloggers would be too.

Only problem with that is I would have hundreds of people invested in it telling me I'm doing it wrong  ::)

To which you reply dickheads.

In this case you end up with two pc's, great for screw ups and downtime. Work on one while rendering on another or having a helper editing at the same time you are.
 

Offline tru

  • Regular Contributor
  • *
  • Posts: 107
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #117 on: January 04, 2015, 12:44:39 am »
A problem that I see with overclocking is the immense wattage for peak CPU usage vs non-clocked, for example:

http://www.bit-tech.net/hardware/cpus/2012/05/01/intel-core-i5-3570k-cpu-review/7

i7, 3930k peak usage:
stock = 252watts
overclocked = a whopping 525 watts!!
 

Offline rizzy

  • Contributor
  • Posts: 13
Re: EEVblog #698 - GPU Video Rendering
« Reply #118 on: January 04, 2015, 12:59:18 am »
Did you guys did watch the video, he used an ATI HD7850.
That anandtech benchmark does not seem useful in this case as it does not compare to CPU only rendering. It is also likely using the sample clip with heavy special effects.

If you check this one out: http://www.tweaktown.com/articles/6489/exploring-sony-vegas-pro-13-rendering-with-a-visiontek-radeon-r9-290/index5.html

For their custom video (without special effects, ignore the other ones), the difference between onboard video and a 290 is 20%. So the difference between an HD7850 and a 290 should be minimal.

Yes of course I did watch the video but I thought a 290 is a factor of eight more performant (DP FP) than a 7850 or a GTX 970. To be honest I don't know how video encoding works and what type of calculations are needed but as you can see from the benchmark you should get a significant performance improvement with OpenCL, either with the Intel HD graphics or with a dedicated ATI (although Dave did not).

What I wanted to say is, that there might be a way to speed things up, just by using the right codec with the right driver and maybe with a different piece of hardware. Just ask Sony what they can recommend or if they have any more benchmarks.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #119 on: January 04, 2015, 01:22:21 am »
FYI someone has kindly offer two Xeon E5 2630 v2 2011 processors, so along with a new dual CPU motherboard that should work very nicely!
And it seems the R9 290 card can offer some decent GPU advantages on Sony Vegas and has been proven to work with Sony it seems, if it comes to that.

So I'd need one of these dual CPU motherboards to support the CPU's :
http://www.asus.com/au/Motherboards/Z9PED8_WS/
And presumably an "EEB" case?
« Last Edit: January 04, 2015, 02:52:04 am by EEVblog »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #120 on: January 04, 2015, 01:29:19 am »
For their custom video (without special effects, ignore the other ones), the difference between onboard video and a 290 is 20%. So the difference between an HD7850 and a 290 should be minimal.

Well that's the thing, you just don't know until you whack down $600 and try it on your codec with your raw image files, your edits, your transcoder etc..
GPU is just so very pot luck.
CPU on the other hand just works
 

Offline DanielS

  • Frequent Contributor
  • **
  • Posts: 798
Re: EEVblog #698 - GPU Video Rendering
« Reply #121 on: January 04, 2015, 04:50:44 am »
A problem that I see with overclocking is the immense wattage for peak CPU usage vs non-clocked, for example:

i7, 3930k peak usage:
stock = 252watts
overclocked = a whopping 525 watts!!
The CPU itself is not going to use anywhere near 500W. That figure is for the whole system including any accessories drawing power from it and the PSU's own losses as well.

An i7-5960X overclocked to 4.5GHz uses less than 200W but total power over the EPS12V cable(s) may have instantaneous peaks close to 300W due to VRM and copper losses.
http://www.tomshardware.com/reviews/intel-core-i7-5960x-haswell-e-cpu,3918-11.html

 

Offline justanothercanuck

  • Frequent Contributor
  • **
  • Posts: 391
  • Country: ca
  • Doing retro repairs...
Re: EEVblog #698 - GPU Video Rendering
« Reply #122 on: January 04, 2015, 05:14:47 am »
So I was looking around and it does seem that Nvidia removed "nvcuenc" from their drivers...  but I've also heard that they replaced it with "nvenc".  Maybe Sony needs to update their program?  I've heard you can unpack an older driver and put the file into the windows directory somewhere in the meantime...  Might be something worth looking into.

Edit: I have a 980 sitting in a box at home, waiting on more parts to put the machine together.  Once I get it set up, I'll fire up premiere and see what it'll give me in terms of encoding options.
« Last Edit: January 04, 2015, 05:16:47 am by justanothercanuck »
Maintain your old electronics!  If you don't preserve it, it could be lost forever!
 

Offline tru

  • Regular Contributor
  • *
  • Posts: 107
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #123 on: January 04, 2015, 05:56:02 am »
A problem that I see with overclocking is the immense wattage for peak CPU usage vs non-clocked, for example:

i7, 3930k peak usage:
stock = 252watts
overclocked = a whopping 525 watts!!
The CPU itself is not going to use anywhere near 500W. That figure is for the whole system including any accessories drawing power from it and the PSU's own losses as well.

An i7-5960X overclocked to 4.5GHz uses less than 200W but total power over the EPS12V cable(s) may have instantaneous peaks close to 300W due to VRM and copper losses.
http://www.tomshardware.com/reviews/intel-core-i7-5960x-haswell-e-cpu,3918-11.html
Well, yes but the difference (delta) in my example would be:
i7, 3930k @4.7GHz peak usage:
525 - 252 = 273 watts  (extra wattage due to cpu overclock vs stock)

If you look at the url again:
http://www.bit-tech.net/hardware/cpus/2012/05/01/intel-core-i5-3570k-cpu-review/7

You can see the extreme edition seems to be the exception:
i7, 3960x @4.7GHz
210 - 179 = 31 watts

Perhaps the CPU voltage settings also impact the results, but trying to keep stock voltage with overclocking won't always work - I remember that it is pot luck, and most require an increase to keep it stable which means increase in wattage in peak usage.

And you've cheated by simply showing us the result of the extreme editions, but those cost $$$.
« Last Edit: January 04, 2015, 06:03:34 am by tru »
 

Offline Corporate666

  • Supporter
  • ****
  • Posts: 2009
  • Country: us
  • Remember, you are unique, just like everybody else
Re: EEVblog #698 - GPU Video Rendering
« Reply #124 on: January 04, 2015, 10:17:25 am »
The current top end consumer i7 should double my speed.

EDIT:

Just saw that someone has offered up a pair of E5 Xeon's.  That is the way to go moreso than any i7 chip.  Will be very interested in the results.
« Last Edit: January 04, 2015, 10:20:24 am by Corporate666 »
It's not always the most popular person who gets the job done.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #125 on: January 04, 2015, 11:56:05 am »
Just saw that someone has offered up a pair of E5 Xeon's.  That is the way to go moreso than any i7 chip.  Will be very interested in the results.

Should be.
Two 2630 v2's aren't a lot behind the 2650 v3's
http://www.anandtech.com/bench/CPU/1052
So should at least be close to the fastest i7 available for handbrake.
A new top end i7 is $1300 for the CPU alone + new MB
A new dual CPU Xeon MB is about $800
And I'm betting the 12 cores in the dual Xeons will beat the single 8 core i7 in some tasks.
 

Offline DanielS

  • Frequent Contributor
  • **
  • Posts: 798
Re: EEVblog #698 - GPU Video Rendering
« Reply #126 on: January 04, 2015, 03:06:03 pm »
And I'm betting the 12 cores in the dual Xeons will beat the single 8 core i7 in some tasks.
One disadvantage of a multi-socket system is you end up with extra latency from cache snooping between CPUs and a bandwidth bottleneck between CPUs when one needs to access the other's memory. Applications can work around that by duplicating the working set across each CPU's local memory but that requires explicit software support.

In terms of raw processing power, if you overclock the i7-5960X to 4GHz (being conservative), you end up about even and the i7 should beat the Xeons most of the time.
 

Offline rizzy

  • Contributor
  • Posts: 13
Re: EEVblog #698 - GPU Video Rendering
« Reply #127 on: January 04, 2015, 11:54:01 pm »
A new top end i7 is $1300 for the CPU alone + new MB
A new dual CPU Xeon MB is about $800
And I'm betting the 12 cores in the dual Xeons will beat the single 8 core i7 in some tasks.

But you don't even know if it will benefit from eight cores. From the video I remember a slider for "slices" which was about 3/4 to the right and was at six. So if this is the number of parallel threads, the maximum might be at eight so the i7 might be the better choice then the dual Xeons.

If you do not ask anyone who actually runs this setup or at least a similar one it is only a guess but you may be spending another couple hundred bucks without an improvement.

Well, at least you can play modern ego shooters in full hd and highest details with 60fps on your machine :P
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #128 on: January 05, 2015, 12:05:39 am »
But you don't even know if it will benefit from eight cores. From the video I remember a slider for "slices" which was about 3/4 to the right and was at six. So if this is the number of parallel threads, the maximum might be at eight so the i7 might be the better choice then the dual Xeons.

That was very codec specific, and in any case, no, setting it to 1 "slice" does not use only one core, it still uses all my 8 cores.
From the help:
"Drag the slider to adjust the number of slices that are created in your rendered file.
A slice is a portion of the video frame, and some hardware decoders require specific numbers of slices. Choose the setting that matches your destination playback device. "
I plan on using either x264vfw or frameserve direct to Handbrake both of which can use as many cores as you can give it.


If you do not ask anyone who actually runs this setup or at least a similar one it is only a guess but you may be spending another couple hundred bucks without an improvement.

Well, at least you can play modern ego shooters in full hd and highest details with 60fps on your machine :P
[/quote]
 

Online Marco

  • Super Contributor
  • ***
  • Posts: 6723
  • Country: nl
Re: EEVblog #698 - GPU Video Rendering
« Reply #129 on: January 05, 2015, 12:34:06 am »
The refresh rate of the monitor is NOT the same as the playback frames per second.

FPS is simply a unit and it's used as a unit for refresh rate relatively frequently. Language is not math, a little good will and reading the context is necessary to understand natural language ... when I say "60 fps displays" I think you're smart enough to understand what I mean, since I simply can't be talking about the video content being played back in that context.
 

Offline steves

  • Contributor
  • Posts: 19
  • Country: au
    • Telecnatron
Re: EEVblog #698 - GPU Video Rendering
« Reply #130 on: January 05, 2015, 01:24:44 am »
Generally, I'm happy watching with Youtube 240p resolution option. Occasionally, I'll put it up to 360/480 when I want to see some detail. Alternatively, if it's mostly just talking, or my available bandwidth is low, I'll go to 144.

The discussion here has been interesting, thanks, but seems that I'm the exception in terms of not demanding resolution/quality, or then again, perhaps just a part of a silent majority?
 

Online mariush

  • Super Contributor
  • ***
  • Posts: 5030
  • Country: ro
  • .
Re: EEVblog #698 - GPU Video Rendering
« Reply #131 on: January 05, 2015, 03:10:53 am »
The number of slices is not in relation with the number of threads x264 uses to encode stuff.

Unless you select otherwise (using command line parameters), x264 will default to physical cores count + 20% or something like that - for my fx-8320 (8 core cpu), x264 defaults to 10 encoding threads. There's some other threads that do less work so i don't mention those.

I'm not sure if it's still valid, but if I remember correctly there was a note on developer's blog or on Doom9 forum where developer was saying more than 20-24 threads isn't recommended. Something to do with quality or efficiency dropping when there's more than one thread for a 64 pixels stripe of image or something like that  ( for a 1080p video, you'd have 17 stripes of pixels)

Anyway, it's kind of pointless when encoding to constant quality per frame, as the encoder won't "work hard" to analyze the video frames and do all kinds of things it would normally do to achieve highest quality per bitrate, so over a threshold increasing the number of threads won't make much of a difference. 
 

Offline justanothercanuck

  • Frequent Contributor
  • **
  • Posts: 391
  • Country: ca
  • Doing retro repairs...
Re: EEVblog #698 - GPU Video Rendering
« Reply #132 on: January 05, 2015, 05:13:32 am »
I have LCD monitor. The refresh rate of the monitor is NOT the same as the playback frames per second. If that were the case then there would be no noticible difference between playback of a source filmed at 24fps, 30fps or 60fps.

Nvidia has something new called G-sync, it's a dynamic refresh rate that adapts to your GPU's FPS output.  Kindof expensive at the moment though.
Maintain your old electronics!  If you don't preserve it, it could be lost forever!
 

Offline PinheadBE

  • Regular Contributor
  • *
  • Posts: 176
  • Country: be
  • Pinball Freak
Re: EEVblog #698 - GPU Video Rendering
« Reply #133 on: January 05, 2015, 09:01:18 am »
Because it looks better to many people. It's smoother and gives a more detailed image.

Nope!  It could appear smoother when you increase the FRAME RATE, but a more detailed image will be given by a higher DEFINITION.

Btw, ask Peter Jackson why he'd chosen to satisfy himself with a crappy 48 fps for his giant 600 M$ budget 3D blockbuster trilogy when Dave Jones can do his 2D talking head show in 60 fps.   I think I'll suit WingNut Films and New Line Cinema for a refund....  :-DD

Come on: I love your videos, but if I want something spectacular, I'll go to the cinema!
Please keep our planet clean
 

Offline Monkeh

  • Super Contributor
  • ***
  • Posts: 7995
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #134 on: January 05, 2015, 09:12:30 am »
Btw, ask Peter Jackson why he'd chosen to satisfy himself with a crappy 48 fps for his giant 600 M$ budget 3D blockbuster trilogy when Dave Jones can do his 2D talking head show in 60 fps.   I think I'll suit WingNut Films and New Line Cinema for a refund....  :-DD

He's not doing it in 60fps, it's 50fps. 48fps is used because it's a multiple of 24, 24fps is used because.. well, no actual technical reasons exist for modern usage that I know of. Lots of reasons not to use 24fps, let alone the moronic NTSC framerates, but they still persist.

People really should stop whining about how there's no point in using higher frame rates for this sort of video and just deal with it.
 

Offline Monkeh

  • Super Contributor
  • ***
  • Posts: 7995
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #135 on: January 05, 2015, 09:50:37 am »

He's not doing it in 60fps, it's 50fps. 48fps is used because it's a multiple of 24, 24fps is used because.. well, no actual technical reasons exist for modern usage that I know of. Lots of reasons not to use 24fps, let alone the moronic NTSC framerates, but they still persist.

People really should stop whining about how there's no point in using higher frame rates for this sort of video and just deal with it.

Between 9:15 and 9:50 Dave shows he is using 60fps.

Yeah. People should stop whining. What is the point of having a 60fps camera if you're not going to use it? If I had the free bandwidth and a fast computer I'd watch in 60fps. People will be watching the EEVBlog videos in years to come so future proofing the content is forward thinking. Just like the move from SD to HD.
I thought it was pointless at first but I have come around.

I'm sure he said before the camera only records at 50. Also, I just checked several of his previous videos, and they're 50. I have not, however, watched the video, because I have less than no interest in watching him play with encoder settings.
« Last Edit: January 05, 2015, 09:52:13 am by Monkeh »
 

Online Marco

  • Super Contributor
  • ***
  • Posts: 6723
  • Country: nl
Re: EEVblog #698 - GPU Video Rendering
« Reply #136 on: January 05, 2015, 09:56:08 am »
Nope!  It could appear smoother when you increase the FRAME RATE, but a more detailed image will be given by a higher DEFINITION.

That's only true statically and in motion with a true strobed display ... which even cinema hasn't been in a long long time. Cinema is tripple flashed and LCDs hold the frames in between refreshes. When your eye follows motion the extra flashes in cinema and the held frame on a LCD will smear out the detail.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #137 on: January 05, 2015, 09:58:01 am »
People will be watching the EEVBlog videos in years to come so future proofing the content is forward thinking. Just like the move from SD to HD.
I thought it was pointless at first but I have come around.

This is the whole point of it, and why I went to HD to begin with. HD was a very painful move, but I kner I should future proof my content sooner rather than later.
And if people don't know how youtube works, they keep the original content you upload and as they improve their technology they continue to re-transcode videos in the background to suit whatever the latest technology is to display it, codecs, etc, and produce whatever the viewer chooses to watch.
It is in every youtubers best interest to upload the best quality content they can.
 

Offline wilhe_jo

  • Regular Contributor
  • *
  • Posts: 175
  • Country: at
Re: EEVblog #698 - GPU Video Rendering
« Reply #138 on: January 05, 2015, 10:24:56 am »
Hi there!

Back in the days when dual-CPU (not core!) systems where the very top of the roof I did some video-editing...

I'm using linux so maybe you cannot do it the same way...

As you're doing I used a 2 step aproach ... rendering and after everything looked fine transcode it to VCD ;)

At the very beginning the raw-data was mjpeg... When I set up my rendering software to produce exactly the same format for the rendered video, every part which was not changed by overlays, ... was just copied. So basically my old IDE RAID was the bottleneck... damn I really woud have liked a bunch of those fancy SCSI disks :)

Some years later I used to cut and transcode movies captured from my DVB-S (some german stations gave 30(!)mbit mpeg2) card... If nothing was changed during 2 key-frames, the part was just copied as it was with the old MJPEG vids. Transcoding was a over-night job to get a 2 hour movie transcoded to xvid...

So maybe you can do similarly and save at least some rendering-time but I'm not sure if you could get this working (bloody directshow... never liked this as a programmer...).

I've some experience in GPU programming and found that using them efficiently is not very easy. The major problem is that you load your input data to your RAM, then everything is copied to the RAM of the card. After everything is computed you need to copy it back to the system RAM and save it to you HDD. Including the syncing of your "threads" on the card and the CPU this results in a huge overhead...

Actually it seems that you need special GPU codecs like the NVENC from Nvida in order to get video transcoding of mpg4 faster on a GPU than on a CPU... but that was just quick google since I was curious how this progressed the last years....

I'm sure you already checked some generic benchmarks if your system is configured correctly (dual channel ram-access, pci-e speeds correctly set, ...) ... that could also push down your rendering speed (had that on my laptop...) but I think you have to use your GPUs special rendering cores instead of some generic gpu-implementation... at least on paper the performance of your geforce sounds massive!

Cheers from Austria,
  Hans
 

Offline FrankBuss

  • Supporter
  • ****
  • Posts: 2365
  • Country: de
    • Frank Buss
Re: EEVblog #698 - GPU Video Rendering
« Reply #139 on: January 05, 2015, 02:44:09 pm »
Dave, another idea if you really care about speed would be to use professional broadcast equipment. For example this device supports two parallel streams, up to 2048x2048 and 1920x1200 @ 60 fps video input (SDI input, which is used in broadcasting, or HDMI), and encodes it in realtime to H.264 for streaming and for recording to a harddisk. It's really expensive for EUR 4,220, but maybe there are similar cheaper special H264 encoder PCI cards or other devices with just the encoder chips, or you can get some second hand hardware.

Maybe the TV team which will visit you can tell you something about it, or they let you visit the studio to take a look at their equipment and to talk to the technicians. This would be cool for an EEVblog episode.
So Long, and Thanks for All the Fish
Electronics, hiking, retro-computing, electronic music etc.: https://www.youtube.com/c/FrankBussProgrammer
 

Offline DanielS

  • Frequent Contributor
  • **
  • Posts: 798
Re: EEVblog #698 - GPU Video Rendering
« Reply #140 on: January 05, 2015, 04:12:07 pm »
I've some experience in GPU programming and found that using them efficiently is not very easy. The major problem is that you load your input data to your RAM, then everything is copied to the RAM of the card. After everything is computed you need to copy it back to the system RAM and save it to you HDD. Including the syncing of your "threads" on the card and the CPU this results in a huge overhead...
Copying the source data to the GPU for decoding, processing and encoding is not the bottleneck: the source data is less than 50Mbps while PCIe bandwidth is 128Gbps, a whole three orders of magnitude faster, full-duplex.

The problem with GPU encoding is that while the GPU may excel at streaming computations like convolution, modern CPUs with AVX/AVX2/HNI instruction sets are no slouches at it either. Also, this neatly serializable and parallelizable part of encode processing accounts for only a small fraction of total processing. The really tricky part is motion search and this does not scale well to hundreds of threads short of splitting the video into multiple segments for parallel processing: you can only partition screen space into so many regions before all your threads start tripping over each other and do excessive duplicate work along boundaries.
 

Offline s55

  • Newbie
  • Posts: 5
Re: EEVblog #698 - GPU Video Rendering
« Reply #141 on: January 05, 2015, 07:54:20 pm »
@DanielS   You forgetting that you must first decode the video into a RAW format like NV12 before you and work with it on the GPU. This is orders of magnitude larger. So the actual data volume going back and forth is huge compared to the original stream. A lot will depend on the architecture of the app, how well it fits in and how much copying back and forth is required. May be easier for some apps to implement that others just due to their feature sets and what can run on the GPU and what can't. (i.e filters)  Some apps may be able to decode and encode all in the GPU and avoid a lot of copying, but may not be as feature packed as apps that can use the CPU also.

Your right though, Instructions such as AVX are beneficial and infact used in x264. I don't recall the exact number, but I seem to recall an 8~10% performance increase in certain x264 functions when AVX2 was implemented, but I'd need to go check that.

 

Offline Michael Rempel

  • Contributor
  • Posts: 14
Re: EEVblog #698 - GPU Video Rendering
« Reply #142 on: January 05, 2015, 11:26:18 pm »
I can add a few observations Dave and others.

GPU render is for high complexity. If it is only doing some simple interpolation which there is with codec manipulation, the pipeline cost is hardly worth it. In animation rendering we sometimes run into 20mins per frame render times, so count your lucky stars.

The best answer is a NAS backing a render farm of cheap machines. I can recommend http://www.thinkboxsoftware.com/deadline/ as the best tool for the job. It will automate your entire workflow with no issues.

But seriously, why the high frame rates? Just because you can? Most people I know shoot 24fps at 1080p despite having 2k or even 4k available at higher rates. It produces as cinematic look that they love. Past 1080p you are really looking at diminishing returns, especially for a run and gun shoot like yours. Obviously you can do what you like but the investment in HFR is not giving you a lot in the end. I would invest in colour grading software (DXO Labs), perhaps a jib, and the best damn camera I can afford. Focus on colour depth most of all, not so much on frame rates or pixel counts. That might be a Nikon D810 with a Zeiss lens or two (small fortune), or a Red Dragon with a Canon Cinema lens. (big fortune. Dont choke if you look up the prices, that is what they go for. Your house might cost more, but not by much)

If you try deadline rendering and like it say Hi to Ryan for me when you buy your license. He has been coding it for years, and really knows his job.
 

Offline DanielS

  • Frequent Contributor
  • **
  • Posts: 798
Re: EEVblog #698 - GPU Video Rendering
« Reply #143 on: January 06, 2015, 02:05:40 am »
@DanielS   You forgetting that you must first decode the video into a RAW format like NV12 before you and work with it on the GPU. This is orders of magnitude larger.
Logically, you would also use the GPU for decode if the GPU supports decode acceleration for your preferred CODECs - the GPU is going grossly under-used anyway.

Even full-frame raw 4k video at 60fps at 32 bits per pixel is only 17Gbps, so x16 PCIe is fast enough for 7X real-time if the GPU and CODEC were capable of handling video encoding that fast. Dave scored less than half of real-time and we are only talking 1080p50... about 4Gbps worth of raw video.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #144 on: January 06, 2015, 03:27:27 am »
But seriously, why the high frame rates? Just because you can?

I've explained that before/

Quote
Most people I know shoot 24fps at 1080p despite having 2k or even 4k available at higher rates. It produces as cinematic look that they love.

Great for them, not for me.

Quote
Past 1080p you are really looking at diminishing returns, especially for a run and gun shoot like yours. Obviously you can do what you like but the investment in HFR is not giving you a lot in the end.

A lot of people like it.

Quote
I would invest in colour grading software (DXO Labs)

No thanks. Last thing I want or need is another production step.

Quote
perhaps a jib

Totally inappropriate for my needs.

Quote
and the best damn camera I can afford.

The best camera is not the most expensive. It's the one that allows you to be the most productive in your environment.
There are very good reasons why I don't use my Sony NEX VG30 and prime lens as my main blogging camera, and it's the most expensive camera I have by far.

Quote
Focus on colour depth most of all, not so much on frame rates or pixel counts. That might be a Nikon D810 with a Zeiss lens or two (small fortune), or a Red Dragon with a Canon Cinema lens. (big fortune. Dont choke if you look up the prices, that is what they go for. Your house might cost more, but not by much)

FYI, I can get a RED camera (seriously I've been offered one), but I'd be a fool to use it for blogging.
Houses in my area cost $1M+ FYI
« Last Edit: January 06, 2015, 03:29:04 am by EEVblog »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #145 on: January 06, 2015, 03:31:20 am »
FYI, this is some info directly from the Director of Technology at Sony Creature Software (who make Vegas/Movie Studio)

Quote
There are actually three places in Movie Studio that have GPU acceleration. The first is in the video engine, using OpenCL, and includes color conversions, interlace handling, scaling, pan/crop, track motion, compositing, transitions, and effects (any of them in the “GPU Accelerated” folder in the effect chooser). This is also the GPU selected in the Preferences page that you showed in your video.
 
The second is for MainConcept AVC rendering, which you touched on briefly, using CUDA or OpenCL.
 
The third is for Sony AVC rendering, using CUDA or OpenCL. This is the area giving you trouble. The latest Maxwell-based GPUs are not being detected in that module, and we’re looking into that. Even if they were, I wouldn’t expect a massive speed-up compared to your very nice CPU since AVC compression is not one of those areas that gets amazing faster on the GPU. The machines where we saw good improvements using GPU acceleration for AVC rendering were using smaller CPUs.
 

Offline eripaha

  • Contributor
  • Posts: 23
Re: EEVblog #698 - GPU Video Rendering
« Reply #146 on: January 06, 2015, 06:26:34 am »
This episode felt like terrible disaster to me. Dave you should stick to what you know best.  :--
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #147 on: January 06, 2015, 06:33:58 am »
This episode felt like terrible disaster to me. Dave you should stick to what you know best.  :--

You should quit complaining about video you don't like, that's twice in as many posts, no one is forcing you to watch them, they are clearly titled.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #148 on: January 06, 2015, 06:35:24 am »
Uh Oh. Dave's just noticed the new Panasonic 4K or 1080p/120fps HD  HC-WX970 and HC-VX870. Now he can up the ante on quality AND create a wifi connected smartphone picture-in-picture for mailbag close-ups.
Anyone want to participate in  a sweep on when he sucumbs to temptation?

That WiFi connected PiP feature sounds neat, gotta be useful for something. I did consider Panasonics previous dual camera head camcorder.
 

Offline levinite

  • Newbie
  • Posts: 9
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #149 on: January 06, 2015, 08:14:28 am »
According to the Nvidia the Maxwell GPU should be able to do 1080p at 480 fps with the proper software. This does not appear to be cuda driven but uses Nvenc, Nvidia's hardware encoder. There may not be direct support in Sony's software but an intermediate step saving into another format might be all that is needed. :-+

See the pdf here: https://www.google.com/url?sa=t&rct=j&q=&esrc=s&source=web&cd=2&cad=rja&uact=8&ved=0CCUQFjAB&url=http%3A%2F%2Fdeveloper.download.nvidia.com%2Fcompute%2Fnvenc%2Fv4.0%2FNVENC_AppNote.pdf&ei=dparVJTWN4XegwSrjYKgAw&usg=AFQjCNG2UMxFeZcSOUWyrXKtE0K9zQwvQg
 

Offline eripaha

  • Contributor
  • Posts: 23
Re: EEVblog #698 - GPU Video Rendering
« Reply #150 on: January 06, 2015, 08:25:36 am »
This episode felt like terrible disaster to me. Dave you should stick to what you know best.  :--

You should quit complaining about video you don't like, that's twice in as many posts, no one is forcing you to watch them, they are clearly titled.
Sorry dave if i offended you. You just always ask people to tell you what they think of your videos so i did.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #151 on: January 06, 2015, 08:53:31 am »
Sorry dave if i offended you. You just always ask people to tell you what they think of your videos so i did.

Bitching about the subject of clearly one-off opportunistic videos does not offer any valuable feedback at all.
Now if I was to start making regular train videos, you'd have something to complain about.
 

Offline george graves

  • Super Contributor
  • ***
  • Posts: 1257
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #152 on: January 06, 2015, 10:28:18 am »
In this tread I learned.  That...

a.) Don't ask the internet full of engineers/IT guys about video production. It will devolve into read/write hard drive debates
b.) If you're being cheap, and expect pro results.... you're going to have a bad time. 
c.) Dave is always right.  How dare you question our supreme leader!
d.) 60FPS is a novility.  Yes people like it cause it's new.  So then why not shoot in 3d?  Come on dave - you're future proofing!
e.) Dave's head has swelled. He's now a Diva!  Go on with your bad self!

 :-DD :-DD :-DD :-DD :-DD :-DD :-DD

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #153 on: January 06, 2015, 10:49:19 am »
c.) Dave is always right.  How dare you question our supreme leader!

And George is always demonstrably and embarrassingly wrong or off the mark about this stuff, even though he touts himself as an expert  :palm:
 

Offline westcovinadodge

  • Newbie
  • Posts: 1
Re: EEVblog #698 - GPU Video Rendering
« Reply #154 on: January 06, 2015, 12:55:36 pm »
I suggest a lease return dual socket 1366 system. In America, with cheap shipping the best bang for the buck right now is a Lenovo d20. 139.95
http://www.ebay.com/itm/Lenovo-ThinkStation-D20-Barebones-Add-your-own-CPU-Memory-HDD-Video-/111486648261?pt=Desktop_PCs&hash=item19f51f3fc5

oops that one needs fans
how about
http://www.ebay.com/itm/Lenovo-ThinkStation-D20-4158-WKG-Dual-Xeon-Dual-Core-1-87-24GB-RAM-NVIDIA-FX1300-/390981977014?pt=Desktop_PCs&hash=item5b085783b6

Then you can get a couple of xeon x5650s 150.00
http://www.ebay.com/itm/Lot-of-2-MATCH-PAIR-SLBV3-INTEL-XEON-X5650-6-CORE-2-66GHz-12MB-6-40GT-s-95W-PROC-/351092507948?pt=US_Server_CPUs_Processors&hash=item51bebe852c

for another 100 you could get a pair of x5670s
http://www.ebay.com/itm/Matched-pair-dual-INTEL-XEON-2-X5670-2-93GHz-Hex-6-Core-12MB-LGA1366-SLBV7-/151484221598?pt=LH_DefaultDomain_0&hash=item234529c89e

I have a d30, my d20 is much better. bang for the buck wise
Oh, and you get 2 16 lane pcie slots if the gpu offload thing works out

Cheers and keep up the good work
 

Offline Corporate666

  • Supporter
  • ****
  • Posts: 2009
  • Country: us
  • Remember, you are unique, just like everybody else
Re: EEVblog #698 - GPU Video Rendering
« Reply #155 on: January 06, 2015, 08:18:23 pm »
In this tread I learned.  That...

a.) Don't ask the internet full of engineers/IT guys about video production. It will devolve into read/write hard drive debates
b.) If you're being cheap, and expect pro results.... you're going to have a bad time. 
c.) Dave is always right.  How dare you question our supreme leader!
d.) 60FPS is a novility.  Yes people like it cause it's new.  So then why not shoot in 3d?  Come on dave - you're future proofing!
e.) Dave's head has swelled. He's now a Diva!  Go on with your bad self!

 :-DD :-DD :-DD :-DD :-DD :-DD :-DD

What's wrong with 60fps?

I don't see any downside for the user at all.  I can see downside for Dave, since he's the one that needs to do the processing... but since he's clearly willing to do that, why on earth would we complain about it?  Unless I'm missing something, he's not saying 60fps content will be at the expense of quantity of content. 

Some of you guys sound like luddites complaining to the cable company that you don't want HDTV.
It's not always the most popular person who gets the job done.
 

Offline Lightages

  • Supporter
  • ****
  • Posts: 4314
  • Country: ca
  • Canadian po
Re: EEVblog #698 - GPU Video Rendering
« Reply #156 on: January 06, 2015, 09:09:46 pm »
60fps is good if people want it and it increases views and makes more money. It is also fine with me if Dave wants the extra burden. It makes no difference to me if there is more work on the other end. I enjoy the videos in 30fps but if Dave wants to and his other audience wants it, who cares??!!

I am also a tech geek and Dave's investigations and tribulations are fun to watch. If you don't like the content then don't watch it!
« Last Edit: January 07, 2015, 04:38:58 am by Lightages »
 

Offline yym

  • Contributor
  • !
  • Posts: 23
Re: EEVblog #698 - GPU Video Rendering
« Reply #157 on: January 07, 2015, 07:42:53 pm »
You should give QuickSync a try.
It is true that the quality is somewhat lower then software encoder (X264), but the difference is not that obvious.
I can barely tell the difference between them.

Regarding speed, QuickSync is lightning fast, in my tests it was at least 3..6 times faster than CPU only or CUDA (CUDA for video encoding is a joke really)

I think for eevblog videos quicksync is more than enough, you know .. video quality (or framerate) is not something one values in a eevblog video  ;D
 

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #158 on: January 07, 2015, 08:07:26 pm »
What's wrong with 60fps?

Wrong question.

I don't see any downside for the user at all. 

The correct question is: What's the upside?

It's a video of somebody opening parcels, not a low-level flight over a landscape. No high motion at all.

There might be more advantage in switching to 30fps than switching to 50fps. If there is a visible difference between 25fps and 50fps it will be because there's slightly less frame sync issues  when it's viewed on 60Hz monitors.

(maybe people could watch the 25fps videos with their monitors set to 75Hz and see how they like it...)
 

Offline george graves

  • Super Contributor
  • ***
  • Posts: 1257
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #159 on: January 08, 2015, 08:09:42 am »
c.) Dave is always right.  How dare you question our supreme leader!

And George is always demonstrably and embarrassingly wrong or off the mark about this stuff, even though he touts himself as an expert 

Recap: So you post "I have a problem rendering at 60 fps"
And I say, "Upgrade your PC, here are some spec, and BTW - you're not a football broadcast, auto racing, so you don't even need 60FPS  - that's silly..."

I never claimed to be an expert.  But...I pointed you to a link of some people who are.  That's all.  You may know electronics, but your video production complexity is minimal - and so is your background in it.  And that's fine.  The EEVblog doesn't need it.  It's a "talking heads" video - it doesn't get easier then that!  Do I need to see you point a stick at a capacitor at 60FPS?  Again, it's blinking a LED with an arduino.  You're doing it cause you can.

You can do what ever you want.  Just if you ask the interwebs for advice, and someone gives you some you disagree with, just ignore it.

And I still stand by my claim that 24P would be more appropriate for your work. Higher quality, and/or faster upload times.

You keep saying that people *love* the 60FPS - why do they love it?  To see you tun a knob at 60fps?  Enlighten me...I simply don't get it.

(ducks before Dave gets sick of my calling him out on his BS and bans me!)

You have been hounding and trolling me about video production for years, and quite frankly I'm sick of hearing about it from you, please don't post in here again, I no longer want to hear your opinion on the matter.

No - not a year - only a month - silly rabbit.   You "I'm awesome, and my need for 60 fps is backed up by others" is crazy
« Last Edit: January 08, 2015, 10:49:24 am by george graves »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #160 on: January 08, 2015, 08:32:49 am »
(ducks before Dave gets sick of my calling him out on his BS and bans me!)

You have been hounding and trolling me about video production for years, and quite frankly I'm sick of hearing about it from you, please don't post in here again, I no longer want to hear your opinion on the matter.
 

Offline Corporate666

  • Supporter
  • ****
  • Posts: 2009
  • Country: us
  • Remember, you are unique, just like everybody else
Re: EEVblog #698 - GPU Video Rendering
« Reply #161 on: January 08, 2015, 11:26:40 am »
What's wrong with 60fps?

Wrong question.

The correct question is: What's the upside?

It's a video of somebody opening parcels, not a low-level flight over a landscape. No high motion at all.

There might be more advantage in switching to 30fps than switching to 50fps. If there is a visible difference between 25fps and 50fps it will be because there's slightly less frame sync issues  when it's viewed on 60Hz monitors.

(maybe people could watch the 25fps videos with their monitors set to 75Hz and see how they like it...)

There is no 'question' to Dave at all.  What on earth makes non-paying viewers think they are entitled to any sort of explanation from the content creator in the first place, let alone one that satisfies their objections?  It's much simpler than that... Dave doesn't owe you or me or anyone else an explanation.  Nevertheless, he gave one, which was futureproofing and some people like 60fps (me included).  I hope you're not arrogant enough to think you know what people like better than they do?  ::)

The fact that some want it and that Dave is willing to do it is all the explanation/justification that is needed.  Given that, it seems a lot of folks have opinions on what the best course of action is... but from the testing we've seen, the answer is clear.  It's a straight CPU horsepower problem.  There is no way around that, so short of outsourcing rendering (Dave says not an option) or more automation (also not an option), there is no other choice but a faster machine.

It's a curious characteristic of the Internet that people aren't able to just answer a question without also needing to evaluate the process that led to the question and attempting to overlay their opinion on the matter to the question asker and get upset if they don't conform.  Do people do that in real life also?  :-DD
It's not always the most popular person who gets the job done.
 

Offline Corporate666

  • Supporter
  • ****
  • Posts: 2009
  • Country: us
  • Remember, you are unique, just like everybody else
Re: EEVblog #698 - GPU Video Rendering
« Reply #162 on: January 08, 2015, 11:37:27 am »

Recap: So you post "I have a problem rendering at 60 fps"
And I say, "Upgrade your PC, here are some spec, and BTW - you're not a football broadcast, auto racing, so you don't even need 60FPS  - that's silly..."

That's simply not true.  You said he should switch to an SSD, upgrade to a higher end editing package with better GPU intergration, and check his drivers.  The reality is that NONE of those things are correct.  When called out on that, you changed track to "well why do you need 60fps anyway". 


Quote
I never claimed to be an expert.  But...I pointed you to a link of some people who are.  That's all.  You may know electronics, but your video production complexity is minimal - and so is your background in it.  And that's fine.  The EEVblog doesn't need it.  It's a "talking heads" video - it doesn't get easier then that!  Do I need to see you point a stick at a capacitor at 60FPS?  Again, it's blinking a LED with an arduino.  You're doing it cause you can.

Doesn't matter what you claim, it's what you do and say that show your intention.  You're telling the guy that built a very successful blog that you know better than him what to give to the consumers.  And you're telling the consumers that what they want isn't really what they need.  Classic case of "detached egghead syndrome" - the type that don't get why people buy things or do things and just gripe that they should do something else instead.  Meanwhile, people who DO "get it" are out there making money and creating satisfied customers. 


Quote
You can do what ever you want.  Just if you ask the interwebs for advice, and someone gives you some you disagree with, just ignore it.

It's always a good idea to ignore bad advice, isn't it?  Whether it's someone saying an SSD and Avid are the solution to a CPU speed problem or a homeopath telling a cancer patient that they need to align their Chi.  Bullshit is bullshit in any field.

Quote
And I still stand by my claim that 24P would be more appropriate for your work. Higher quality, and/or faster upload times.

Except massive swaths of Youtubers are moving to 60fps because consumers like it.  Perhaps all those dopey consumers just need a "Supreme leader" to think for them and tell them what they really like, since they don't really know what's good for them?  Someone who knows better than them what they want.  Someone like... you!  If only you were the supreme leader, everything would make sense!    :-DD  The irony!

Quote
You keep saying that people *love* the 60FPS - why do they love it?  To see you tun a knob at 60fps?  Enlighten me...I simply don't get it.

Detached egghead syndrome... "I don't love it, so anyone else who does is wrong, because I am the authority by which all things are judged".  Good luck with that.

« Last Edit: January 08, 2015, 11:39:07 am by Corporate666 »
It's not always the most popular person who gets the job done.
 

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #163 on: January 08, 2015, 11:50:43 am »
Dave doesn't owe you or me or anyone else an explanation.

Never said he did.

Nevertheless, he gave one, which was futureproofing and some people like 60fps (me included).  I hope you're not arrogant enough to think you know what people like better than they do?  ::)

I could understand moving to 4k resolution as "futureproofing".

Increased frame rate? Not so much.

(it's a guy opening parcels, removing screws and and turning knobs, not some high-movement video...)

If higher frame rates are going to cause any production problems/delays at all then I say it's not worth it.

 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #164 on: January 08, 2015, 12:41:58 pm »
I could understand moving to 4k resolution as "futureproofing".

It's not juts about that, it's also about experimenting with and making do with what you have to hand.
I don't have any 4K capable cameras, but 50/60fps is available to me with the gear I already use. So I tried it and a lot of people like it.

Quote
(it's a guy opening parcels, removing screws and and turning knobs, not some high-movement video...)

So a few say. Shame about all those people who like it provides an increased viewing quality for them.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #165 on: January 08, 2015, 12:45:11 pm »
Corporate666 nailed it  :clap:
 

Offline coppice

  • Super Contributor
  • ***
  • Posts: 8654
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #166 on: January 08, 2015, 12:57:30 pm »
I could understand moving to 4k resolution as "futureproofing".
It's not just about that, it's also about experimenting with and making do with what you have to hand.
I don't have any 4K capable cameras, but 50/60fps is available to me with the gear I already use. So I tried it and a lot of people like it.
The 50P/60P doesn't add much to your studio videos, but it really improves things when you are out and about and hand holding.

I think another year and there will be a rich choice of 4k cameras. Its quite impressive what a Samsung Galaxy S5 can do at 4k, with its nasty little lens, but there aren't many reasonably priced options right now.
« Last Edit: January 09, 2015, 07:58:31 am by coppice »
 

Offline DanielS

  • Frequent Contributor
  • **
  • Posts: 798
Re: EEVblog #698 - GPU Video Rendering
« Reply #167 on: January 08, 2015, 02:56:41 pm »
There might be more advantage in switching to 30fps than switching to 50fps. If there is a visible difference between 25fps and 50fps it will be because there's slightly less frame sync issues  when it's viewed on 60Hz monitors.
I agree that 25/50p seems like a silly choice for a web-based platform where the vast majority of viewers will be watching on a 60Hz display. Eliminating the unnecessary pull-up/down conversion would likely help almost just as much.
 

Offline Corporate666

  • Supporter
  • ****
  • Posts: 2009
  • Country: us
  • Remember, you are unique, just like everybody else
Re: EEVblog #698 - GPU Video Rendering
« Reply #168 on: January 09, 2015, 01:24:56 pm »

I could understand moving to 4k resolution as "futureproofing".

Increased frame rate? Not so much.

(it's a guy opening parcels, removing screws and and turning knobs, not some high-movement video...)

If higher frame rates are going to cause any production problems/delays at all then I say it's not worth it.

Again, not to sound like a total dick but why is it that the users need to understand (aka - agree with it)?  If Mercedes puts 19" wheels on their car and I object because it's more rotating mass... I don't think they owe me an explanation that satisfied my objections.  Why would it be different for Dave?

But I can speculate... I just bought a new motherboard with a heat sink that includes glowing red LED's shining through plastic slots.  It looks cool... totally and completely useless for heat disspiation (worse, if anything) and adds nothing but expense.  But it does look nice.  There's nothing wrong with indulging the consumers desire for a sexy product, whether it's high frame rates or cool illuminated logos.  If we all consumed based on just what we need - we could all live in mobile trailers in lots near our workplace, have crew cuts and eat Soylent Green every day. 

As for Dave's videos...I imagine that having a single process is better than having different ones based on what he's shooting, and standardizing on the best is easier.  Also, he does some outdoor videos and I can imagine that waveforms on a 'scope screen or color changing lights or other such things could benefit from 60fps.

But at the end of the day, it goes back to cornering a Mercedes engineer and demanding to know why they are using 19" wheels when you have reams of data showing that 17" wheels are superior for performance... the guy doesn't owe you (or me) an explanation that suits our thought process.
It's not always the most popular person who gets the job done.
 

Offline joeyjr

  • Newbie
  • Posts: 2
  • Country: us
  • If we could only control time.
Re: EEVblog #698 - GPU Video Rendering
« Reply #169 on: January 09, 2015, 07:36:48 pm »
While veiwing the build you did for your new video PC using a 3770K I noticed  the location where you placed the memory was in the first two connectors. This seemed odd, if I'm not mistaken, since the 1155 socket supports duel channel memory and are color coded.  Hopefully this was just an oversite during the video. If not, for the best performance you may need to check your manual for the correct location using two dimms. Upgrading your system maybe the cheaper way in the long run than expensive GPU's to improve rendering times. Anyway, this is my first post and hope this will be of some use. Thanks Dave, this was a good one and for all your hard work!  :-+
« Last Edit: January 09, 2015, 07:45:54 pm by joeyjr »
AAS in Computer and Electronic Engineering with a computer backround and work in the industry.
 

Offline george graves

  • Super Contributor
  • ***
  • Posts: 1257
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #170 on: January 10, 2015, 09:30:16 am »
But at the end of the day, it goes back to cornering a Mercedes engineer and demanding to know why they are using 19" wheels when you have reams of data showing that 17" wheels are superior for performance... the guy doesn't owe you (or me) an explanation that suits our thought process.

The Mercedes engineer isn't on youtube, with a forum, that encourages debates on the mater.

Welcome to the internet.  If you can't handle someone calling you out of your complete and obvious BS, it's not the place for you.

« Last Edit: January 10, 2015, 09:36:15 am by george graves »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #171 on: January 10, 2015, 11:41:04 am »
Welcome to the internet.  If you can't handle someone calling you out of your complete and obvious BS, it's not the place for you.

Perhaps you didn't understand me the first time George, please don't post in this thread again.
 

Offline cpuerror

  • Regular Contributor
  • *
  • Posts: 82
  • Country: ca
Re: EEVblog #698 - GPU Video Rendering
« Reply #172 on: January 10, 2015, 04:49:42 pm »
I think the high frame rate is great for certain applications like a tour of a factory with high speed machinery, but I don't understand the benefit of watching Dave open parcels or looking at a data sheet at 60fps.

 Nonetheless, the only beef I have with 60 fps is that my connection can stream 1080p/30 but not at 60 so I am down to only 720p streaming but at 50/60 fps.

 

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #173 on: January 10, 2015, 07:55:10 pm »
(it's a guy opening parcels, removing screws and and turning knobs, not some high-movement video...)

If higher frame rates are going to cause any production problems/delays at all then I say it's not worth it.

Again, not to sound like a total dick but why is it that the users need to understand
[/quote]

They don't, but Dave seems to like feedback.

It seems the best (only?) way to speed up video rendering is to get more CPU cores. Intel does an i7 with 8 cores+hyperthreading - 16 cores altogether. Maybe that's the one to go for.

Not exactly cheap though...  ::)

 

Offline gildasd

  • Frequent Contributor
  • **
  • Posts: 935
  • Country: be
  • Engineering watch officer - Apprentice Officer
    • Sci-fi Meanderings
Re: EEVblog #698 - GPU Video Rendering
« Reply #174 on: January 10, 2015, 08:44:48 pm »
Stupid question (probably):
If a dual Xeon board is out of reach price wise, would a dual Opteron be an option?
I tried to find information about their use for video, to no avail...


(that, or an ACPISB: Analogue Converter Powered by an Iintern on a Stationary Bicycle)
« Last Edit: January 10, 2015, 08:48:19 pm by gildasd »
I'm electronically illiterate
 

Online wraper

  • Supporter
  • ****
  • Posts: 16868
  • Country: lv
Re: EEVblog #698 - GPU Video Rendering
« Reply #175 on: January 10, 2015, 09:00:34 pm »
For me it feels that video quality is actually dropped since 60 fps. As I'm using big 30" 2560x1600 monitors where I can see all the detail, it feels like movement became smoother but picture is somewhat blurry. Like resolution/overall quality of video seriously degraded.
 

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #176 on: January 10, 2015, 09:25:48 pm »
it feels like movement became smoother but picture is somewhat blurry. Like resolution/overall quality of video seriously degraded.

That could be Youtube doing that...

 

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #177 on: January 10, 2015, 09:27:40 pm »
PS: What about a different codec?

This one claims to be able to encode four 1080p streams in real time on a PC: http://www.videolan.org/developers/x264.html

(nb. I haven't tried it, I just saw that page...)

 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #178 on: January 10, 2015, 10:56:37 pm »
For me it feels that video quality is actually dropped since 60 fps. As I'm using big 30" 2560x1600 monitors where I can see all the detail, it feels like movement became smoother but picture is somewhat blurry. Like resolution/overall quality of video seriously degraded.

No one else has mentioned that at all  :-//
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #179 on: January 10, 2015, 10:58:11 pm »
PS: What about a different codec?
This one claims to be able to encode four 1080p streams in real time on a PC: http://www.videolan.org/developers/x264.html

I do use x264 (Handbrake), have done so for years.
It's not as easy as it sounds to integrate with editors directly.
 

Online wraper

  • Supporter
  • ****
  • Posts: 16868
  • Country: lv
Re: EEVblog #698 - GPU Video Rendering
« Reply #180 on: January 11, 2015, 03:12:43 am »
For me it feels that video quality is actually dropped since 60 fps. As I'm using big 30" 2560x1600 monitors where I can see all the detail, it feels like movement became smoother but picture is somewhat blurry. Like resolution/overall quality of video seriously degraded.

No one else has mentioned that at all  :-//
Was not completely sure if it just subjectively felt because of FPS or was a real deal. So to be sure now I compared mailbag 697 and 680 which are shot in similar conditions.  Now completely sure that quality really degraded. Stopped both videos so there is no movement blur, and I can compare details. In episode 680 I can more or less distinguish body hair on your hands  :-DD. In episode 697 it's just a mess. Also 60 fps smooths out the wrinkles on your forehead a bit. Don't know if it is your camera or youtube crippling details to save bandwidth. I don't have camcorder, therefore cannot say anything about them. However on my Sony SLT-A77 camera which is by no means cheap, 1080p 50 FPS setting severely degrades details compared to 25 FPS. Images are of different size because I made screenshots with a snipping tool.
ep. 680


ep. 697
« Last Edit: January 11, 2015, 04:03:23 am by wraper »
 

Online wraper

  • Supporter
  • ****
  • Posts: 16868
  • Country: lv
Re: EEVblog #698 - GPU Video Rendering
« Reply #181 on: January 11, 2015, 03:43:56 am »
Background is much clearer too on older video. Of course might be focus/focal ratio or different camera used but in newer videos overall background is very blurry. There is some yellowish tint in episode 697 too. Colors in episode 680 look more natural and blue ESD mat looks blue, not yellowish. Have not calibrated my monitors with calibrator, however they are factory calibrated with calibration certificate including actual data and are not too old. Therefore should be much more accurate in color reproduction than average ones in the wild.
680:


697:
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #182 on: January 11, 2015, 03:47:43 am »
Those are likely to be focus issues. I usually have auto face tracking focus on so it can hunt.
Need to do proper controlled tests with fixed focus and upload test videos to see the difference.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #183 on: January 11, 2015, 04:37:19 am »
Here you go, controlled tests.

50fps video using my usual process:


25fps video using my old process:


Original 60fps footage direct form camera:
! Private video
 

Offline justanothercanuck

  • Frequent Contributor
  • **
  • Posts: 391
  • Country: ca
  • Doing retro repairs...
Re: EEVblog #698 - GPU Video Rendering
« Reply #184 on: January 11, 2015, 04:48:35 am »
So I got my i7 4790k + GTX980 system set up...

... and nuts.  It seems my copy of Premiere is too old to support CUDA without using some $300 plugin...  (something called rapiHD?)

I'll have to find a new copy to test.  |O
Maintain your old electronics!  If you don't preserve it, it could be lost forever!
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #185 on: January 11, 2015, 06:40:03 am »
Videos on YT filmed outdoors often appear sharper.

Of course they do. Outside lighting is an order of magnitude brighter than indoors, even on a dark overcast day.
This is why you get every twit thinking Gopro cameras have supurb sensors and optics. Take them indoors and they become a joke.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #186 on: January 11, 2015, 06:42:28 am »
The only other thing that occurs to me is you have quite diffuse lighting. Which is obviously important for many aspects of benchtop photography. I wonder if experimenting with a spotlight for your head shots to see if more defined shadows and highlights gives an impression of increased sharpness.

Have tried it and people didn't like it. It's also very fiddly to get right.
The last thing you want is to dick around with lighting every time you shoot a video.
Sure I could put up huge studio lights in front of me but they would be a complete PITA and just get in the way every day, believe me, I've tried.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #187 on: January 11, 2015, 06:44:33 am »
I think the biggest improvement may be in optimising bit rate and encoding setting.

No, I'm already using high bit rate and a high constant quality encoding rate.
 

Offline gildasd

  • Frequent Contributor
  • **
  • Posts: 935
  • Country: be
  • Engineering watch officer - Apprentice Officer
    • Sci-fi Meanderings
Re: EEVblog #698 - GPU Video Rendering
« Reply #188 on: January 11, 2015, 11:22:24 am »
The only other thing that occurs to me is you have quite diffuse lighting. Which is obviously important for many aspects of benchtop photography. I wonder if experimenting with a spotlight for your head shots to see if more defined shadows and highlights gives an impression of increased sharpness.

Have tried it and people didn't like it. It's also very fiddly to get right.
The last thing you want is to dick around with lighting every time you shoot a video.
Sure I could put up huge studio lights in front of me but they would be a complete PITA and just get in the way every day, believe me, I've tried.

I agree with you.
I've done stage/event lighting, so I see minor stuff that could improve a bit your quality...
But improving your setup would reduce your flexibility, increase your set-up time and cost a bunch (you would need a light mixing table and then faff around with a light-meter)
I really don't think it's worth your effort.
At most, I would put custom contrast curves and fiddle with clarity in your post process.  That would make it more pleasing to the eye, but less realistic.
Personally I come here to learn stuff, so I'd rather have somewhat realistic colours and contrast to finding Dave very pretty.
Quite frankly, for you being a confessed "non arty guy", I think your general sense of light, colour and composition is pretty good.
(for example, your skin tones are nice and you don't have a big reflection on your nose)
« Last Edit: January 11, 2015, 11:28:12 am by gildasd »
I'm electronically illiterate
 

Offline Corporate666

  • Supporter
  • ****
  • Posts: 2009
  • Country: us
  • Remember, you are unique, just like everybody else
Re: EEVblog #698 - GPU Video Rendering
« Reply #189 on: January 11, 2015, 11:41:56 am »
But at the end of the day, it goes back to cornering a Mercedes engineer and demanding to know why they are using 19" wheels when you have reams of data showing that 17" wheels are superior for performance... the guy doesn't owe you (or me) an explanation that suits our thought process.

The Mercedes engineer isn't on youtube, with a forum, that encourages debates on the mater.

Welcome to the internet.  If you can't handle someone calling you out of your complete and obvious BS, it's not the place for you.

It was clear from the video that it was a CPU horsepower problem, and we had the author of Handbrake posting here as well as Dave posting the communication from the guy @ Sony which illustrated it was not a GPU, software or driver issue.

So claiming that the solution was software, an SSD and drivers was the BS.  And when confronted with that, rather than "handle it" you lashed out at the unwashed masses for being silly enough to even want 60fps when you knew it wasn't what they really needed.

I think that pretty well matches your statement "If you can't handle someone calling you out of your complete and obvious BS, it's not the place for you" pretty well.
« Last Edit: January 11, 2015, 11:47:43 am by Corporate666 »
It's not always the most popular person who gets the job done.
 

Offline Corporate666

  • Supporter
  • ****
  • Posts: 2009
  • Country: us
  • Remember, you are unique, just like everybody else
Re: EEVblog #698 - GPU Video Rendering
« Reply #190 on: January 11, 2015, 11:43:55 am »
For me it feels that video quality is actually dropped since 60 fps. As I'm using big 30" 2560x1600 monitors where I can see all the detail, it feels like movement became smoother but picture is somewhat blurry. Like resolution/overall quality of video seriously degraded.

I'd check bandwidth... I haven't noticed a degradation in quality from 60fps, and I watch some gaming channels where people would notice if there was a quality drop when the content creators moved from 30 to 60fps.

Youtube obviously adjusts their data stream based on what you have available (as well as caching), because I've noticed drops in quality when - for example - I am downloading a huge file in the background.
It's not always the most popular person who gets the job done.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #191 on: January 11, 2015, 11:47:29 am »
Quite frankly, for you being a confessed "non arty guy", I think your general sense of light, colour and composition is pretty good.
(for example, your skin tones are nice and you don't have a big reflection on your nose)

My Sony camera is not white balanced, just auto everything.
My main Canon camera is however properly white balanced and I fiddle with manual exposure a lot for many shots, plus manual DOF.
I like to think my composition is pretty good.
Nothing ever gets touched in editing in terms of the image, it's 100% straight from the camera.
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #192 on: January 11, 2015, 11:51:17 am »
Youtube obviously adjusts their data stream based on what you have available (as well as caching), because I've noticed drops in quality when - for example - I am downloading a huge file in the background.

Youtube is a mysterious beast. they can and do change video quality on a whim it seems.
They always keep the original uploaded footage, so they can automagically re-transcode at any time for any codec or bandwidth changes they want to make this week.
 

Offline SeanB

  • Super Contributor
  • ***
  • Posts: 16284
  • Country: za
Re: EEVblog #698 - GPU Video Rendering
« Reply #193 on: January 11, 2015, 12:05:47 pm »
The latest changes from them are causing stuttering audio for me. Can be a bit annoying, and is not present on all video, just a good portion of them. Really annoying that, though it might also be due to upstream traffic shaping or jittery servers locally.
 

Offline hikariuk

  • Supporter
  • ****
  • Posts: 206
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #194 on: January 11, 2015, 12:30:18 pm »
Here you go, controlled tests.

50fps video using my usual process:

25fps video using my old process:

Original 60fps footage direct form camera:

I only see differences in quality I see are the normal switching from the initial low quality stream to the high quality stream jump in crispness I get with basically every channel I follow on YouTube.  And I see that on all three of those videos.
I write software.  I'd far rather be doing something else.
 

Online wraper

  • Supporter
  • ****
  • Posts: 16868
  • Country: lv
Re: EEVblog #698 - GPU Video Rendering
« Reply #195 on: January 11, 2015, 01:37:11 pm »
25  FPS is definitely better, but it is noticeably worse than ep. 680 compared previously. Therefore, youtube definitely reduces quality to save bandwidth, however your camera might be at fault too. As I see, all videos were shot at 60 FPS originally. For proper test 25 FPS original shot would be great, of course if your previous workflow included shooting at such FPS. [EDIT: I would say that there is more difference in quality between 25 FPS Test and ep 680 rather than between all those different FPS test videos]. And they all have yellowish tint too. If your camera has function where to set white balance automatically against white object, you could set it to ideal value in just a few seconds against sheet of white paper.  Here is upscaled (magnified) comparison.

25


50


60 original
« Last Edit: January 12, 2015, 02:08:18 am by wraper »
 

Online wraper

  • Supporter
  • ****
  • Posts: 16868
  • Country: lv
Re: EEVblog #698 - GPU Video Rendering
« Reply #196 on: January 11, 2015, 02:42:24 pm »
Difference will be more noticeable if you download them in a one folder and cycle through with Windows Photo Viewer or any other program.
 

Offline dexters_lab

  • Supporter
  • ****
  • Posts: 1890
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #197 on: February 03, 2015, 09:09:25 am »
just wanted to bump this briefly, i had not seen Dave's original episode before i started a thread about the same rendering problems in Movie Studio.

We seem to have very similar setups.

I have done a little more testing and digging and it seems that simply, Movie Studio does not use CUDA at all... it's basically not supported any more, Sony stopped supporting it after the GTX 5xx series of GPUs

 :palm: :wtf:

from the sony website:
"NVIDIA recommends NVIDIA Quadro for professional applications and recommends use of the latest boards based on the Fermi architecture."

the 500 series was the last to use the Fermi architecture
« Last Edit: February 03, 2015, 10:15:02 am by dexters_lab »
 

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #198 on: February 03, 2015, 11:38:21 am »
Sony stopped supporting it after the GTX 5xx series of GPUs

 :palm: :wtf:

So? Maybe they abandoned it because they figured out it wasn't actually speeding anything up.

It sounds like a good idea on paper but maybe it simply doesn't work in practice.





 

Offline dexters_lab

  • Supporter
  • ****
  • Posts: 1890
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #199 on: February 03, 2015, 12:15:59 pm »
Sony stopped supporting it after the GTX 5xx series of GPUs

 :palm: :wtf:

So? Maybe they abandoned it because they figured out it wasn't actually speeding anything up.

It sounds like a good idea on paper but maybe it simply doesn't work in practice.

no i think it did work, the reason why i got all interested in it was i just upgraded my video card, i went from a GTX-550Ti to a GTX-750Ti so it would better support my dual monitor setup... but lost the gpu rendering in the process. The old card was significantly faster at rendering than my (slightly faster, on paper) new one.

maybe sony dropped it so they can redevelop it to use OpenCL better, which is cross platform unlike CUDA

Offline senso

  • Frequent Contributor
  • **
  • Posts: 951
  • Country: pt
    • My AVR tutorials
Re: EEVblog #698 - GPU Video Rendering
« Reply #200 on: February 03, 2015, 08:55:36 pm »
Not wanting to be another crying poster, and I know Dave's opinion is in the mood of dont like don't watch..
But, this 50 frames crap is really stupid, but I have crap internet connection, the older 720p 25 frames played fine, but now, its buffering time, A LOT.
And the image quality is down the drain, don't know if its because of the frame-rate, stupid compression by youtube, crap camera lenses, but look at this, there is nothing in focus in that scene, in fact, almost all the last teardown video is out of focus, how is that possible for someone that claims that he sees no difference in image quality  ::)
480 looks almost the same and at least there is no buffering and stuttering.

http://s14.postimg.org/6vbkyu9ps/quality.jpg

 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #201 on: February 03, 2015, 10:00:05 pm »
And the image quality is down the drain, don't know if its because of the frame-rate, stupid compression by youtube, crap camera lenses, but look at this, there is nothing in focus in that scene, in fact, almost all the last teardown video is out of focus, how is that possible for someone that claims that he sees no difference in image quality  ::)

The latest mailbag I shot at a constant iris setting, and yes, it was slightly out of focus, nothing at all to do with the 50fps or anything else. It was an error on my part.
And the image quality is not "down the drain" and not single person has proven it is. Two are now one of two or maybe three people out of 200,000 thousand subscribers who claim this is a problem.
Yes, youtube changes quality and compression and streaming all the time on a whim, I am not in control of that. The quality of video I am uploading is generally excellent and better than I ever have.
« Last Edit: February 03, 2015, 10:04:01 pm by EEVblog »
 

Offline gildasd

  • Frequent Contributor
  • **
  • Posts: 935
  • Country: be
  • Engineering watch officer - Apprentice Officer
    • Sci-fi Meanderings
Re: EEVblog #698 - GPU Video Rendering
« Reply #202 on: February 04, 2015, 08:04:12 am »
I don't want to state the obvious, but the exemples above are down to artifacts due to Bayer matrix, anti alias filter, lens alignment...
So not much Dave can do apart from getting studio quality equipment, the time needed to process it and the marriage counseling if he was stupid enough to waste so much money on said toys.
And it's silly, Dave is simply future proofing (so that his present videos don't look like his first one 3 years down the line) not trying to do a sequel to "The Hobbit"... For that he would need to be from NZ and find ewe's attractive and improve his cricketing.
Quite frankly, the arguments are down to the level of pixel peeping that remind me of audio foolery - same shit, different part of the spectrum.
I'm electronically illiterate
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #203 on: February 04, 2015, 10:33:18 am »
Dave is simply future proofing (so that his present videos don't look like his first one 3 years down the line) not trying to do a sequel to "The Hobbit"

Correct.
I can remember when Youtube switched to HD (first 720p, then 1080p), the playback quality was awful, but eventually got better as technology progressed, and Youtube simply re-encoded the original uploaded content without anyone knowing.
So it is in every content producers interest to upload the best quality footage they can.
 

Offline codeboy2k

  • Super Contributor
  • ***
  • Posts: 1836
  • Country: ca
Re: EEVblog #698 - GPU Video Rendering
« Reply #204 on: February 04, 2015, 11:32:15 am »
Dave, you used to make the mp4 video available.  That video would be raw, untouched by youtube.

Are you still doing that?  People should be looking at that, not what youtube mashes it into.

 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #205 on: February 04, 2015, 11:34:49 am »
Dave, you used to make the mp4 video available.  That video would be raw, untouched by youtube.

No, I never have, only the 640x360 podcast version.
 

Offline codeboy2k

  • Super Contributor
  • ***
  • Posts: 1836
  • Country: ca
Re: EEVblog #698 - GPU Video Rendering
« Reply #206 on: February 04, 2015, 11:37:13 am »
Dave, you used to make the mp4 video available.  That video would be raw, untouched by youtube.

No, I never have, only the 640x360 podcast version.

Ah, I was mistaken then, I thought it was the youtube version.
 

Offline george graves

  • Super Contributor
  • ***
  • Posts: 1257
  • Country: us
Re: EEVblog #698 - GPU Video Rendering
« Reply #207 on: February 04, 2015, 12:53:08 pm »
There is a good video that youtube produced in-house, that explains their encoding and archiving method.  It also goes into some detail about serving up different size streams, and how they load balance the servers across regions, popularity, and how they have to store about 10 different versions of ever video up loaded.

I spent the last 10 mins looking for it.

Never mind - found it.   ~3:00 is the fun facts.   

And it's not as informative as I remembered.  I think there was another video from google talking about load balancing.  That's magic to me.
« Last Edit: February 04, 2015, 12:58:54 pm by george graves »
 

Offline dexters_lab

  • Supporter
  • ****
  • Posts: 1890
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #208 on: February 07, 2015, 09:40:07 am »
some more testing done today.

i dropped back in my old GTX-550Ti so see the difference between a setup using CUDA and one not.

i7 CPU rendering alone i rendered 769 frames in 60 seconds

GTX-550Ti CUDA enabled rendered 1920 frames in 60 seconds

so, unlike Dave i'm not going to build some expensive Zeon setup, i'm off to buy a GTX-580 or GTX-590

Online mariush

  • Super Contributor
  • ***
  • Posts: 5030
  • Country: ro
  • .
Re: EEVblog #698 - GPU Video Rendering
« Reply #209 on: February 07, 2015, 12:54:30 pm »
Drop the quality settings in the configuration and you'll have 3000 frames in 60 seconds on the i7 cpu. 

Cuda profile is more relaxed, you don't get the same quality as the cpu encoding with default preset.
 

Offline dexters_lab

  • Supporter
  • ****
  • Posts: 1890
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #210 on: February 07, 2015, 01:28:41 pm »
Drop the quality settings in the configuration and you'll have 3000 frames in 60 seconds on the i7 cpu. 

Cuda profile is more relaxed, you don't get the same quality as the cpu encoding with default preset.

just changed to baseline profile, 1 slice, draft video quality at 4mbps... rendered 1451 frames in 60 seconds CPU only

i dont want to decrease quality to improve rendering speed

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #211 on: February 11, 2015, 02:58:34 pm »
I was just evaluating Cyberlink PowerDirector for editing blog videos.

From a quick test it encodes video over six times faster than Premiere Pro when you tick the "Hardware Encoding" box.

I don't know how Premiere Pro speed compares to SONY Vegas speed but it might be worth looking into.

notes:
a) Even without the "Hardware Encoding" box checked it was still 2.5 times faster than Premiere Pro.
b) I think it's way easier to use for making this sort of video.
c) It has a killer feature - match up the volume levels of all the video clips with a single mouse click.

 

Offline dexters_lab

  • Supporter
  • ****
  • Posts: 1890
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #212 on: February 12, 2015, 12:03:28 pm »
thanks for the tip, i'm sticking with Movie Studio

i'm bidding on a GTX570 card right now which should give me back my GPU rendering with a decent boost over my old 550Ti, i would have had a 580 or 590 but i would also have to change my PC case to fit it in!

Offline dexters_lab

  • Supporter
  • ****
  • Posts: 1890
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #213 on: February 19, 2015, 12:53:28 pm »
update:

now with my GTX570 card i'm rendering the same test as before at 2630 frames in 60 seconds, a 37% speed increase.

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #214 on: March 22, 2015, 06:34:47 am »
UPDATE:
Assembled my Dual 2.6GHz Xeon E5-2630 v2 24 core machine and first tests show it's SLOWER than my i7 3770 machine at rendering using all the codecs I would normally use :wtf:
Passmark benchmark shows it is a much faster machine as you'd expect, and all 24 cores seem to be operating 100% during rendering.
Something seems horribly wrong  :palm:  :-[
 

Offline Monkeh

  • Super Contributor
  • ***
  • Posts: 7995
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #215 on: March 22, 2015, 06:52:23 am »
The assumption that the codecs in question scale linearly to x number of cores could easily be faulty.

It is only 12 cores.
« Last Edit: March 22, 2015, 06:54:20 am by Monkeh »
 

Offline EEVblogTopic starter

  • Administrator
  • *****
  • Posts: 37750
  • Country: au
    • EEVblog
Re: EEVblog #698 - GPU Video Rendering
« Reply #216 on: March 22, 2015, 07:58:03 am »
The assumption that the codecs in question scale linearly to x number of cores could easily be faulty.
It is only 12 cores.

vs 4 cores in the i7 machine.
The info I could find indicated that the multi-core Xeon machine would do the business.
 >:(
 

Offline Monkeh

  • Super Contributor
  • ***
  • Posts: 7995
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #217 on: March 22, 2015, 08:02:24 am »
Well, what codecs (very, very specifically, if you please) are you using?
 

Offline dexters_lab

  • Supporter
  • ****
  • Posts: 1890
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #218 on: March 22, 2015, 09:00:42 am »
Damd, thats a shame after all the effort from you and the hardware donations from viewers.

I am still happy with my reverse upgrade to the gtx-570.

The 570/580/590 cards are getting cheaper all the time so still room to upgrade even more.

Offline Howardlong

  • Super Contributor
  • ***
  • Posts: 5319
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #219 on: March 22, 2015, 09:03:48 am »
It appears little has changed in this respect in the intervening 5/6 years since I last battled to get transcoding performing in a predictable manner.

It would be useful if the codecs provided some indication of requirements for their various algorithm choices depending on processor, cores, cache and GPU rather than being a black box.

Back then, I must've blown a fair few quid on hardware in a largely fruitless attempt to improve performance, it turned into an expensive game of pinning the tail on the donkey.
 

Offline gildasd

  • Frequent Contributor
  • **
  • Posts: 935
  • Country: be
  • Engineering watch officer - Apprentice Officer
    • Sci-fi Meanderings
Re: EEVblog #698 - GPU Video Rendering
« Reply #220 on: March 22, 2015, 09:44:21 am »
The assumption that the codecs in question scale linearly to x number of cores could easily be faulty.
It is only 12 cores.

vs 4 cores in the i7 machine.
The info I could find indicated that the multi-core Xeon machine would do the business.
 >:(
Is your codec XEON optimised?
In totally other uses (3D rendering) I've seen major differences in versions of render engines or simply finding the "good" set-up in the vast amount of options that 3D max and the optional 3rd party plug-ins.
- I would redo a complete check of all CPU related options in your software, there might be a "slap on the forehead" misplaced thing to click somewhere.
- Use your Xeon machine as a slave. This is worthless for small efforts, but I've had success using it to render long "flythrough" 3D sequences that would crash either my first or my secondary PC used singly.
- Yell at the intern to make it work.
I'm electronically illiterate
 

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #221 on: March 22, 2015, 10:59:10 am »
- I would redo a complete check of all CPU related options in your software, there might be a "slap on the forehead" misplaced thing to click somewhere.

He's got 3 times as much CPU power (at least!)

If all CPUs are busy and the codec is running slower then it's probably not because of a hidden check box.


I believe the i7 has QuickSync video but that Xeon doesn't (correct me if I'm wrong...)

http://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding

Maybe the codecs have been using that without telling anybody.

(It would also explain why using the GPU for encoding didn't make much difference)
« Last Edit: March 22, 2015, 11:02:43 am by Fungus »
 

Offline dexters_lab

  • Supporter
  • ****
  • Posts: 1890
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #222 on: March 22, 2015, 11:19:20 am »
- I would redo a complete check of all CPU related options in your software, there might be a "slap on the forehead" misplaced thing to click somewhere.

He's got 3 times as much CPU power (at least!)

If all CPUs are busy and the codec is running slower then it's probably not because of a hidden check box.


I believe the i7 has QuickSync video but that Xeon doesn't (correct me if I'm wrong...)

http://en.wikipedia.org/wiki/Intel_Quick_Sync_Video#Hardware_decoding_and_encoding

Maybe the codecs have been using that without telling anybody.

(It would also explain why using the GPU for encoding didn't make much difference)

No, gpu rendering made a massive difference to me, 37% faster than an i7. you just have to use specific cards for it to work

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #223 on: March 22, 2015, 12:29:55 pm »
(It would also explain why using the GPU for encoding didn't make much difference)

No, gpu rendering made a massive difference to me, 37% faster than an i7. you just have to use specific cards for it to work

OK, I should have said: "GPU rendering with Dave's graphics card". My bad.

PS: The important point was that an i7 might be much better at H264 video than a Xeon.
« Last Edit: March 22, 2015, 12:31:34 pm by Fungus »
 

Offline Monkeh

  • Super Contributor
  • ***
  • Posts: 7995
  • Country: gb
Re: EEVblog #698 - GPU Video Rendering
« Reply #224 on: March 22, 2015, 04:04:51 pm »
If all CPUs are busy and the codec is running slower then it's probably not because of a hidden check box.

Not if he's stuck with a single threaded decoder or filter bottlenecking things.
 

Offline Fungus

  • Super Contributor
  • ***
  • Posts: 16682
  • Country: 00
Re: EEVblog #698 - GPU Video Rendering
« Reply #225 on: March 22, 2015, 05:15:13 pm »
If all CPUs are busy and the codec is running slower then it's probably not because of a hidden check box.

Not if he's stuck with a single threaded decoder or filter bottlenecking things.

If Windows' task manager shows 100% CPU then that's not the case.

(I assume this is what Dave looked at...)
 


Share me

Digg  Facebook  SlashDot  Delicious  Technorati  Twitter  Google  Yahoo
Smf