Hands On With NVIDIA's Shadowplay

Though it’s technically not part of the GeForce GTX 780 Ti launch, before diving into our typical collection of benchmarks we wanted to spend a bit of time looking at NVIDIA’s recently released Shadowplay utility.

Shadowplay was coincidentally enough first announced back at the launch of the GTX 780. Its designed purpose was to offer advanced game recording capabilities beyond what traditional tools like FRAPS could offer by leveraging NVIDIA image capture and video encode hardware. In doing so, Shadowplay would be able to offer similar capabilities with much less overhead, all the while also being able to utilize the NVENC hardware H.264 encoder to encode to space efficient H.264 rather than the bulky uncompressed formats traditional tools offer.

With Shadowplay and NVIDIA’s SHIELD streaming capabilities sharing so much of the underlying technology, the original plan was to launch Shadowplay in beta form shortly after SHIELD launched, however Shadowplay ended up being delayed, ultimately not getting its beta release until last week (October 28th). NVIDIA has never offered a full accounting for the delay, but one of the most significant reasons was because they were unsatisfied with their original video container choice, M2TS. M2TS containers, though industry standard and well suited for this use, have limited compatibility, with Windows Media Player in particular being a thorn in NVIDIA’s side. As such NVIDIA held back Shadowplay in order to convert it over to using MP4 containers, which have a very high compatibility rate at the cost of requiring some additional work on NVIDIA’s part.

In any case with the container issue resolved Shadowplay is finally out in beta, giving us our first chance to try out NVIDIA’s game recording utility. To that end while clearly still a beta and in need of further polishing and some feature refinements, at its most basic level we’ve come away impressed with Shadowplay, with NVIDIA having delivered on all of their earlier core promises for the utility

With regards to functionality, all of Shadowplay’s basic functionality is in. The utility offers two recording modes: a manual mode and a shadow mode, the former being self-explanatory while the latter being an always-active rolling buffer of up to 20 minutes that allows saving the buffer after the fact in a DVR-like fashion. Saving the shadow buffer causes the entirety of the buffer to be saved and a new buffer started, while manual mode can be started and stopped as desired.

Shadowplay Average Bitrates
High Quality 52Mbps
Medium Quality
23Mbps
Low Quality
16Mbps

Next to being able to control the size of the shadow buffer, Shadowplay’s other piece of significant flexibility comes through the ability to set the quality (and therefore file size) of the recordings Shadowplay generates. Since Shadowplay uses lossy H.264 the recording bitrates will scale with the quality, with Shadowplay offering 3 quality levels: high (52Mbps), medium (23Mbps), and low (16Mbps). Choosing between the quality levels will depend on the quality needed and what the recording is intended for, due to the large difference in quality and size. High quality is as close as Shadowplay gets to transparent compression, and with its large file sizes is best suited for further processing/transcoding. Otherwise Medium and Low are low enough bitrates that they’re reasonably suitable for distribution as-is, however there is a distinct quality tradeoff in using these modes.

Moving on, at this moment while Shadowplay offers a range of quality settings for recording it only offers a single resolution and framerate: 1080p at 60fps. Neither the frame rate nor the resolution is currently adjustable, so whenever you record and despite the resolution you record from, it will be resized to 1920x1080 and recorded at 60fps. This unfortunately is an aspect-ratio unaware resize too, so even non-16:9 resolutions such as 1920x1200 or 2560x1600 will be resized to 1080p. Consequently at this time this is really the only weak point for Shadowplay; while the NVENC encoder undoubtedly presents some limitations, the inability to record at just a lower resolution or in an aspect ratio compliant manner is something we’d like to see NVIDIA expand upon in the final version of the utility.

Finally, let’s talk about performance. One of Shadowplay’s promises was that the overhead from recording would be very low – after all, it needs to be low enough to make always-on shadow mode viable – and this is another area where the product lives up to NVIDIA’s claims. To be sure there’s still some performance degradation from enabling Shadowplay, about 5% by our numbers, but this is small enough that it should be tolerable. Furthermore Shadowplay doesn’t require capping the framerate like FRAPS does, so it’s possible to use Shadowplay and still maintain framerates over 60fps. Though as to be expected, this will introduce some frame skipping in the captured video, since Shadowplay will have to skip some frames to keep within its framerate limitations.

Shadowplay Performance (GTX 780 Ti)

On a related note, we did some digging for a technical answer for why Shadowplay performs as well as it does, and found our answer in an excellent summary of Shadowplay by Alexey Nicolaychuk, the author of RivaTuner and its derivatives (MSI Afterburner and EVGA Precision). As it turns out, although the NVENC video encoder plays a part in that – compressing the resulting video and making the resulting stream much easier to send back to the host and store – that’s only part of the story. The rest of Shadowplay’s low overhead comes from the fact that NVIDIA also has specific hardware and API support for the fast capture of frames built into Kepler GPUs. This functionality was originally intended to facilitate GRID and game streaming, which can also be utilized for game recording (after all, what is game recording but game streaming to a file instead of another client?).

This functionality is exposed as Frame Buffer Capture (NVFBC) and Inband Frame Readback (NVIFR). NVFBC allows Shadowplay to pull finished frames straight out of the frame buffer directly at a low level, as opposed to having to traverse the graphics APIs at a high level. Meanwhile NVIFR does have operate at a slightly higher level to inject itself into the graphics API, but in doing so it gains the flexibility to capture images from render targets as opposed to just frame buffers. Based on what we’re seeing we believe that NVIDIA is using NVFBC for Shadowplay, which would be the lowest overhead option while also explaining why Shadowplay can only capture full screen games and not windowed mode games, as frame buffer capturing is only viable when a game has exclusive control over the frame buffer.

Wrapping things up, it’s clear that NVIDIA still has some polishing they can apply to Shadowplay, and while they aren’t talking about the final release this soon, as a point of reference it took about 4 months for NVIDIA’s SHIELD game streaming component to go from beta to a formal, finished release. In the interim however it’s already in a very usable state, and it should be worth keeping an eye on in the future to see what else NVIDIA does to further improve the utility.

The Test

The press drivers for the launch of the GTX 780 Ti are release 331.70, which other than formally adding support for the new card is otherwise identical to the standing 331.65 drivers.

Meanwhile on a housekeeping note, we want to quickly point out that we’ll be deviating a bit from our normal protocol and including the 290X results for both normal (quiet) and uber modes. Typically we’d only include results from the default mode in articles such as these, but since we need to cover SLI/Crossfire performance and since we didn’t have 290X CF quiet mode results for our initial 290X review, we’re throwing in both so that we can compare the GTX 780 Ti to the 290X CF without being inconsistent by suddenly switching to the lower performance quiet mode numbers. Though with that said, for the purposes of our evaluation we will be focusing almost entirely on the quiet mode numbers, given the vast difference in both performance and noise that comes from using it.

CPU: Intel Core i7-4960X @ 4.2GHz
Motherboard: ASRock Fatal1ty X79 Professional
Power Supply: Corsair AX1200i
Hard Disk: Samsung SSD 840 EVO (750GB)
Memory: G.Skill RipjawZ DDR3-1866 4 x 8GB (9-10-9-26)
Case: NZXT Phantom 630 Windowed Edition
Monitor: Asus PQ321
Video Cards: AMD Radeon R9 290X
AMD Radeon R9 290
XFX Radeon R9 280X Double Dissipation
AMD Radeon HD 7990
AMD Radeon HD 7970
NVIDIA GeForce GTX Titan
NVIDIA GeForce GTX 780 Ti
NVIDIA GeForce GTX 780
NVIDIA GeForce GTX 770
Video Drivers: NVIDIA Release 331.58 WHQL
NVIDIA Release 331.70 Beta
AMD Catalyst 13.11 Beta v1
AMD Catalyst 13.11 Beta v5
AMD Catalyst 13.11 Beta v8
OS: Windows 8.1 Pro

 

Meet The GeForce GTX 780 Ti Metro: Last Light
Comments Locked

302 Comments

View All Comments

  • yuko - Monday, November 11, 2013 - link

    for me neither of them is gamechanger ... gsync, shield ... nice stuff i don't need
    mantle: another nice approach to create an semi-closed-standard .. it's not that directX or opengl is allready existing and working quite good, no , we need another low level standard where amd creates the api (and to be honest, they would be quite stupid not optimizing it for their hardware).

    I cannot believe and hope that mantle will flop, it does no favor to customers and the industry. It's just good for the marketing but has no real world use.
  • Kamus - Thursday, November 7, 2013 - link

    Nope, it's confirmed for every frostbite 3 game coming out, that's at least a dozen so far, not to mention it's also officially coming to starcitizen, which runs on cryengine 3 I believe.
    But yes, even with those titles it's still a huge difference, obviously.

    That said, you can expect that any engine optimized for GCN on consoles could wind up with mantle support, since the hard work is already done. And in the case of star citizen... Well, that's a PC exclusive, and it's still getting mantle.
  • StevoLincolnite - Thursday, November 7, 2013 - link

    Mantle is confirmed for all Frostbite powered games.
    That is, Battlefield 4, Dragon Age 3, Mirrors Edge 2, Need for Speed, Mass Effect, StarWars Battlefront, Plant's vs Zombies: Garden Warfare and probably others that haven't been announced yet by EA.
    Star Citizen and Thief will also support Mantle.

    So that's EA, Cloud Imperium Games, Square Enix that will support the API and it hasn't even released yet.
  • ahlan - Thursday, November 7, 2013 - link

    And for Gsync you will need a new monitor with Gsync support. I won't buy a new monitor only for that.
  • jnad32 - Thursday, November 7, 2013 - link

    http://ir.amd.com/phoenix.zhtml?c=74093&p=irol...
    BOOM!
  • Creig - Friday, November 8, 2013 - link

    Gsync will only work on Kepler and above video cards.

    So if you have an older card, not only do you have to buy an expensive gsync capable monitor, you also need a new Kepler based video card as well. Even if you already own a Kepler video card, you still have to purchase a new gsync monitor which will cost you $100 more than an identical non-gsync monitor.

    Whereas Mantle is a free performance boost for all GCN video cards.

    Summary:
    Gsync cost - Purchase new computer monitor +$100 for gsync module.
    Mantle cost - Free performance increase for all GCN equipped video cards.

    Pretty easy to see which one offers the better value.
  • neils58 - Sunday, November 10, 2013 - link

    As you say Mantle is very exciting, but we don't know how much performance we are talking about yet. My thinking on saying that crossfire was AMD's only answer is that in order to avoid the stuttering effect of dropping below the Vsync rate, you have to ensure that the minimum framerate is much higher, which means adding more cards or turning down quality settings. If Mantle turns out to be a huge performance increase things might work out, but we just don't know.

    Sure, TN isn't ideal, but people with gaming priorities will already be looking for monitors with low input lag, fast refresh rates and features like backlight strobing for motion blur reduction, G-Sync will basically become a standard feature on a brands lineup of gaming oriented monitors. I think it'll come down in price a fair bit too once there are a few competing brands.

    It's all made things tricky for me, I'm currently on a 1920x1200 'VA monitor on a 5850 and was considering going up to a 1440p 27" screen (which would have required a new GPU purchase anyway) G-Sync adds enough value to Gaming TN's to push me over to them.
  • jcollett - Monday, November 11, 2013 - link

    I've got a large 27" IPS panel so I understand the concern. However, a good high refresh panel need not cost very much and still look great. Check out the ASUS VG248QE; been hearing good things about the panel and it is relatively cheap at about $270. I assume it would work with the G-Sync but I haven't confirmed that myself. I'll be looking for reviews of Battlefield 4 using Mantle this December as that could makeup a big part of the decision on my next card coming from Team Green or Red.
  • misfit410 - Thursday, November 7, 2013 - link

    I don't buy that it's a game changer, I have no intention of replacing my three Dell Ultrasharp monitors anytime soon, and even if I did I have no intention of dealing with buggy displayport as my only option to hook up a synced monitor.
  • Mr Majestyk - Thursday, November 7, 2013 - link

    +1

    I've got two high end Dell 27" monitors and it's a joke to think I'd swap them out for garbage TN monitors just to get G Sync.

    I don't see the 780 Ti as being any skin off AMD's nose. It's much dearer for very small gains and we haven't seen the custom AMD boards yet. For now I'd probably get the R9 290, assuming custom boards can greatly improve on cooling and heat.

Log in

Don't have an account? Sign up now