Hardware Accelerated Transcoding for Media Applications

One of the often-requested features from NAS units that act as media servers is the ability to transcode existing videos to better fit the requirements of the playback device. The popularity of Plex Media Server (which uses ffmpeg for transcoding) amongst consumers is an indication of the market demand for this feature. SoC companies as well as NAS vendors have been trying to address this problem in multiple ways.

Back at CES 2012, I saw Applied Micro's PhiPhi transcoding NAS platform, where the NAS SoC talked to a dedicated Zenverge transcoding chip to achieve the requirements. Unfortunately, I believe the reference design was never taken up by any NAS vendor. In the meanwhile, they continued to take efforts to include the Plex Media Server as a package installable on the NAS.

Evansport Makes the First Move

Intel entered into the picture with their Evansport NAS platform in March 2012. Based on their Berryville STB SoC, it also happened to have a H.264 encoder in addition to a multi-format decoder (giving it the capability to act as a transcoder). We have been pretty bullish on Evansport, having reviewed devices from all of Intel's announced partners (Asustor, Synology and Thecus). While Asustor and Thecus focused on the decoder aspects only, Synology was the only one to utilize the unique hardware transcoding feature.


Synology's Custom ffmpeg Build for Transcoding using Evansport

In order to utilize the transcoder block, Synology had to prepare a custom build of ffmpeg. Given that Intel hasn't announced any follow-ups to either Berryville or Evansport, it is not clear what the future of this series would be. In this situation, it was no surprise that the three partners had nothing new to announce in this lineup at either CES or Computex.

Bay Trail-D and Quick Sync Take Over

QNAP was one of the major NAS vendors who opted out of using Evansport. With the introduction of the TS-x51 series, I can clearly see why they decided to pass it up. One of the major reasons for Evansport's existence in addition to the regular Atom-based NAS units was the fact that a SoC configuration would reduce BOM cost for the vendors. With the Silvermont-based Atoms (which are SoCs), this advantage goes away. While Avoton and Rangeley are great for high-end SOHO / SMB NAS units as well as enterprise cold storage applications, certain consumer-focused aspects are absent. The most important amongst them are the multimedia focused features that Evansport provided. Obviously, cost is also a factor.

In our review of the DS214play, we had talked about how it would be better if Intel actually movied QuickSync over to the Berryville / Evansport follow-up. Instead of waiting for Intel to officially launch a storage platform (like they did for previous generation Atoms), QNAP has just gone forward and built a NAS family with the Bay Trail-D platform. At this point, QNAP's decision to skip Evansport in favour of devoting attention to Bay Trail-D seems to be making a lot of sense.

The Celeron J1800 is one of the first Bay Trail parts to come with Quick Sync, Intel's hardware H.264 encoder. QNAP's QTS OS is a Linux variant, and QNAP has decided to utilize the publicly available VA-APIs to access this Quick Sync engine.

Quick Sync Finds its Ideal Application

When Intel introduced its Quick Sync engine back with Sandy Bridge in 2010, it was pitched as a solution for users needing to transcode videos in a fast manner (particularly for mobile devices which couldn't handle the bit-rate or file sizes of the original stream). Support was restricted to paid software (such as CyberLink MediaEspresso) for a long time. It was only last year that HandBrake, the popular open source transcoding application, got Quick Sync support. However, purists and videophiles often were content with spending extra CPU time to get better quality encodes using x264's advanced options (and two-pass feature).

Quick Sync did make other GPU vendors sit up and put in video encoders on their GPUs too. NVIDIA came out with NVENC and AMD put in VCE. While NVIDIA seemed to have found its niche with recording game play in real-time, VCE is yet to gain as much traction. In addition to HandBrake support, integration into open source screen recorders (such as CamStudio) would help drive up adoption of the Quick Sync encoder in the PC space. Currently, even though Quick Sync was originally meant to be used as a transcoder, I wouldn't be surprised if Eric Gur's Quick Sync decoder (which is part of LAV Filters) was found to be used by more consumers. In any case, most of the interesting open source applications utilizing the Quick Sync hardware features have been restricted to Windows.

On Linux, Intel contributes extensively to the VA-API open source library / API specifications for video processing. Despite not being specifically mentioned, the documentation (table reproduced below) suggests that VA-API's H.264 encode capabilities are tied to the presence of the Quick Sync engine in the processor.

Wowza is one of the commercial applications which takes advantage of the Quick Sync engine on Linux. Downloading the driver package makes it clear that VA-API is being utilized. In the TS-x51 series, QNAP takes advantage of Quick Sync in two ways. The user can pre-transcode video files into different resolutions (where the use-case is similar to Handbrake), but the killer method is real-time transcoding for streaming media (using its mobile app or to a DLNA renderer).

Consumers have long been clamouring for Plex to take advantage of the Quick Sync engine, but the developers have been quite hesitant - deciding to focus on being on as many platforms as possible, rather than optimizing for platforms on which Intel Quick Sync is available. The rapid rise in user-generated media and the evolution of the mobile lifestyle has brought to fore the necessity for low power real-time media transcoding. Quick Sync (particularly in low power SoCs such as the Bay Trail-D / -M) perfectly fits the bill and QNAP's efforts to harness this feature deserves recognition.

QNAP Goes Bay Trail Virtualization for Home Users
Comments Locked

49 Comments

View All Comments

  • ganeshts - Sunday, June 22, 2014 - link

    The 'killer app' tag line was written from a HTPC / media-centric perspective. For a long time, users wanted QS to be taken advantage of by Plex. As a media transcoder, QS's potential was pretty much not taken advantage of by non-proprietary applications (OS X - Has Apple even exposed QS functionality to developers? Last I remember seeing, HandBrake on OS X doesn't support QS -- may have changed recently ; Remote Desktop acceleration using QS is not exactly media, but, yes, playback to AppleTV is a valid application wrapped in something proprietary).

    Another major point I wanted to convey in the piece was that Intel's VA-API efforts (making QS accessible through open APIs on Linux) has finally paid off in the consumer market.

    Finally, I couldn't probably tag it as 'Killer App for Media Applications' -- that would just make it too long :)
  • shank15217 - Sunday, June 22, 2014 - link

    Virtualization station is damn useful, imagine a open vpn server or even a samba domain server. If qnap develops this feature a bit more it would essentially make it one of the best soho nas out there.
  • Beany2013 - Wednesday, July 2, 2014 - link

    I'd be concerned about resource usage - VMs are different to apps, in that they host the entire OS, crud and all.

    I'd rather drop the relevant SAMBA domain packages into the NAS, than put it in a full debian VM, chewing resources that it doesn't need; the NAS already emulates the filesystem, why blow (limited) resources making the guest OS also have to do this?

    That said, I can see the benefits for some purposes, but it's pretty niche IMHO, until this class of device comes with a minimum of 4gb of RAM, which is by far the biggest limiter here. I'd never want an unattended full install of Windows 7 in a VM, for example, have you seen how big the WinSXS folder can get and how much disk access it can chew up when it's doing housekeeping tasks? Pretty much every time my scabby old (SSD equipped) Macbook starts dragging, it's because the Windows VM I use for troubleshooting has decided it's time to start pissing about with windows update - and not having a Windows (or any, frankly) unattended VM updated is just asking for trouble....

    I like having the option, but I don't think I'd use it!
  • RoboKaren - Sunday, June 22, 2014 - link

    FreeNAS running on FreeBSD. About the only thing it doesn't have is virtualization (it does have jails). And I trust ZFS (RAIDZ2) more than RAID5/6.
  • ganeshts - Sunday, June 22, 2014 - link

    Mobile apps for on-the-go access? The market segment where that is important is what is being targeted by these types of appliances.
  • tuxRoller - Monday, June 23, 2014 - link

    Not sure why you went with wowza when you could have just grabbed vlc and have it handle the quick syncing:)
  • ganeshts - Monday, June 23, 2014 - link

    Is that available on Linux? I see Windows support was added last year....
  • tuxRoller - Monday, June 23, 2014 - link

    Vaapi has had transcoder support for more than a year, now. The problem has been apps who don't use proper frameworks but their own solutions.
    For instance, you can use the latest transmageddon (which uses gstreamer 1.4.x) to access quick sync functions. If you feel up to it you can even roll your own pipelines for custom accelerated transcoding by using the commandline tools gstreamer provides.
    In the future, go to some of the open source forums and ask for recommendations (don't take what commenters say as gospel). Not trying to lecture you:)
    You'd be amazed at what's available (for instance, I'd disagree with your final page summation that you can't still "throw" Linux onto a nas and get comparable features to what you've shown here).
    For info, irc is usually the best, but even the Ubuntu forums have vast numbers of knowledgeable folks.
    AT might think about asking someone immersed in oss to chime in from time to time.
  • ganeshts - Monday, June 23, 2014 - link

    I am yet to see a Linux-based DIY build which is backed up by a good suite of mobile apps (similar to what Synology and QNAP are providing). All that I see in the various forums are ways to access the mobile interface of the NAS's web UI.

    Is there some way to automatically back up the photos that I am taking on my smartphone to, say, a FreeNAS-based (or some other similar) OS ? Any mobile app which can access content on my DIY NAS and get it to my smartphone or tablet with the appropriate hardware-accelerated transcoding at the NAS end ? For the latter, Plex could potentially be useful, but they are not bringing hardware acceleration into the picture at all.
  • lmcd - Monday, June 23, 2014 - link

    All I know: that's pretty obnoxious that first-stepping Bay Trail didn't get this. All those "Full Windows" tablets could be doing a whole lot better now if Intel shipped the product in its finished state.

    If AMD or Nvidia did this, there'd be a lot more coverage.

Log in

Don't have an account? Sign up now