Asus Tinker Board

Asus Tinker Board – Chromium YouTube Performance

One of the many strengths of the Asus Tinker Board is its multimedia support. This 4K video capable machine is a mouthwatering prospect for the multimedia enthusiast. The machine has a respectable 1.8GHz ARM Cortex-A17 quad-core processor. It’s only 32-bit (unlike the Raspberry Pi 3) but has a higher clock speed. The Tinker Board also sports an integrated ARM-based Mali T764 graphics processor (GPU).

Multimedia enthusiasts will appreciate the Tinker Board’s H.264 and H.265 playback support, including playback of HD and UHD video, but this requires a video player using hardware acceleration. A Rockchip video player is in development which will offer hardware accelerated playback of videos. But its release date is some way off.

The Tinker Board runs the TinkerOS, a customized version of the Debian distribution. The latest release of TinkerOS (v1.4) includes hardware acceleration for the Chromium web browser. As the Rockchip video player is not ready, let’s put the Chromium web browser through its paces. I’ll start with a quick benchmark test.

Octane 2.0 benchmark

Octane 2.0 is a benchmark that measures a JavaScript engine’s performance by running 17 tests representative of certain use cases in JavaScript applications. Octane aims to be representative of actual workloads and execution profiles of real web applications. Octane measures the time a test takes to complete and then assigns a score that is inversely proportional to the run time. Octane 2.0 adds tests for latency and asm.js-like code.

Running Octane 2.0 multiple times, the screenshot below is indicative of the Tinker Board’s results.

Octane 2.0 - Asus Tinker Board

An impressive result with the overall score getting close to many Chromebooks. To put the result into a little more perspective, let’s run the benchmark multiple times on a Raspberry Pi 3. As you can see from the screenshot below, the benchmark score is significantly lower on the Pi 3. The bigger the score the better.

Octane 2.0 - Raspberry Pi 3

Hardware accelerated

One of the enhancements of TinkerOS v1.4 is hardware acceleration in Chromium. You can see if it’s working properly by typing chrome://gpu in Chromium’s address field and press Enter.

Chromium - Hardware Acceleration

Hardware acceleration is therefore enabled for most of the graphics features. Users can enable more hardware accelerated features by accessing Chromium’s hidden experimental options. Type chrome://flags in Chromium’s address field and press Enter. You’ll see a page containing a wash of experimental options, some which affect browser performance. You may run into issues with these experimental options; there’s the risk you can lose data, or compromise security and privacy. I experienced a few stability issues when enabling hardware acceleration for Rasterization and Video Decode.

Chromium - More Hardware Acceleration

h264ify

YouTube is an extremely popular video-sharing website. It was acquired by Google in 2006 who subsequently released VP8 and VP9, open and royalty free video coding formats, to stream videos on YouTube. Unfortunately VP8 and VP9 videos can stutter on low-spec machines. Another popular codec is H.264. Like VP8/9, it’s an industry-wide standard but its underlying technologies are covered by many patents. To use this technology in a commercial product requires paying license fees to the H.264 patent portfolio.

Asus recommends you install the h264ify extension for Chrome (and Chromium) to obtain optimal performance. The extension forces YouTube to stream H.264 videos instead of VP8/VP9 videos. So why does Asus advocate a format which is not an open standard? It’s because the Tinker Board offers H.264 hardware acceleration. On a weaker CPU this acceleration is important as playback of the video stream is offloaded to the GPU in a more efficient way. The end result should be fewer dropped frames (i.e. smoother playback).

Download h264ify from Chrome or visit the developers’ GitHub project page.

VP9 codec

To check which codec YouTube is serving to Chromium, right-click the video during playback and choose “Stats for nerds”. To the right of “Mime Type”, you’ll see the video above has the entry “video/webm” and the VP9 codec. So no hardware acceleration is used; the burden of playback falls squarely on the CPU.

H.264 codec

After installing the h264ify extension, YouTube is forced to serve “video/mp4” and the “avc” codec for H.264/MP4 video. The same YouTube video is now using H.264 video instead, and is offloading work to the GPU.

Playback of YouTube videos

I’ve watched a lot of videos on the Tinker Board. There’s good and bad news to report. Even using H.264 hardware-accelerated streams on TinkerOS 1.4, playback of 720p or 1080p videos are unwatchable. There’s far too many dropped frames. But playback at 480p or less is very good with smooth playback.

For now, I can wait for the release of the Rockchip video player to enjoy HD and UHD video playback. Kodi is another option to experiment with.

This blog was written on the Asus Tinker Board. Check out my review.

10 Comments

  • Greg says:

    Hello,
    have you had any luck setting up Netflix, would you sharing if it works as it says in asus tinker board FAQ?
    Kind regards

  • jelabarre says:

    Asus, huh? Is the CEO going to have to stand up and publicly apologize in a couple months because the board doesn’t run MSWindows?? Yeah, we haven’t forgotten about that.

  • remo williams says:

    The board keeps crashing on me….Steer clear of it……..

    • Steve Emms says:

      Why would we do that? I suggest you reinstall TinkerOS, as with no logs, there’s nothing to check out what might be wrong.

    • Just my own results – I had this problem when connecting to my 50-inch LCD. It happened less often with smaller LCD (Still 1080P, but an actual monitor). The other thing that helped is playing with the power supply. I found the best is an external battery that outputs 2.4amp. For some reason, it is more stable. However, the last thing is the most important. After logging in, switch to a Virtual Terminal – CTRL-ALT-F1, etc. I logged in and did apt-get update and apt-get upgrade. It has a much better chance of succeeding in a real terminal than in Xterm. After the updates, it is now very stable on my 24-inch monitor, and external battery. I’ll give the 50-inch TV a second chance later. I’m just happy to finally have it stable. Before it would reset after a few seconds of a desktop session. As for Youtube, I have no problem watching in a window. I just avoid full-screen.

      • Steve Emms says:

        That’s good advice. I’ve tried a few external batteries, but prefer the official Raspberry Pi Universal Power Supply. Ideally, Asus should sell a beginners kit for the Tinker Board with a quality power supply included.

  • Matt says:

    YouTube performance on TinkerOS 1.6 seems to be a bit better, with only a few dropped frames at 720p. 1080p is still choppy though. Hopefully this will continue to improve.

Leave a Reply