July 1st, 2024

Examining the Nintendo Switch (Tegra X1) Video Engine

The article analyzes Nintendo Switch's Tegra X1 SoC video engine, comparing its performance with desktop Maxwell's. Tegra X1 excels in HEVC support and efficiency, showcasing advancements in video quality and compression.

Read original articleLink Icon
Examining the Nintendo Switch (Tegra X1) Video Engine

The article examines the video engine of the Nintendo Switch, powered by the Tegra X1 SoC. The Tegra X1 chip supports hardware video encode and decode for H264 and HEVC, with differences from desktop Maxwell's video engine. The article compares Tegra X1's video engine performance to Maxwell's, highlighting decode capabilities and H264 VBR transcoding. It discusses HEVC VBR transcoding, noting the efficiency and speed of Tegra X1 compared to desktop Maxwell. The article also touches on VMAF scores for quality comparison and provides visual comparisons of encoded frames. Tegra X1's video engine is praised for its HEVC support and efficiency, outperforming desktop Maxwell in some aspects. Despite some trade-offs in decode throughput and encoding features, Tegra X1 showcases advancements in HEVC support and video output quality. The article concludes by commending Nvidia's engineering efforts in developing a distinct video block for Tegra X1, emphasizing its competitive compression efficiency and quality against other encoders.

Link Icon 5 comments
By @averne_ - 5 months
Self-plug, but I wrote an open-source NVDEC driver for the Tegra X1, working on both the Switch OS and NVidia's Linux distro (L4T): https://github.com/averne/FFmpeg.

It currently integrates all the low-level bits into FFmpeg directly, though I am looking at moving those to a separate library. Eventually, I hope to support desktop cards as well with minimal code changes.

By @mlsu - 5 months
> Hardware accelerated video blocks often see plenty of reuse across a GPU lineup. I’m surprised that Nvidia spent extra engineering resources to make a completely different video engine for Tegra X1, rather than reusing the one in mainstream Maxwell GPUs. Perhaps Maxwell’s video engine was too power hungry to go into a mobile chip targeting 10W of power consumption.

It makes sense that the tested Tegra differs from a mainstream GTX 980. My understanding is that Tegra is basically a separate product line born from an early 2010s (somewhat) failed automotive/mobile play. I think those engineering resources were an already spent sunk cost in need of recouping. Maybe someone on the inside would know better.

By @nubinetwork - 5 months
By @metadat - 5 months
> Desktop Maxwell’s video engine undershot bitrate targets while the Tegra X1’s got closer. For example, the GTX 980 Ti averaged 12.13 mbps with a 15 mbps target, while the Tegra X1 averaged 14.16 mbps. Intel’s QuickSync on Skylake CPUs can also do HEVC encoding, and massively undershot bitrates. With the same requested 15 mbps, QuickSync averaged just 10.2 mbps.

I wonder how Nvidia 3XXXGT and 4XXXGT cards would perform at the HEVC encoding task.

By @resource_waste - 5 months
Cool, but the reality is that if a Switch game looks good, its because the developers put in the effort to deal with the low performance GPU.

Any close-up of view a switch game looks a bit 'yikes'. I'm still a bit unforgiving of Gorons looking worse than in N64 era.