DSM 5.0: Video Streaming & Transcoding

DSM's multimedia capabilities are brought out by packages installed on the NAS in conjunction with mobile apps / external access. The DLNA ecosystem is served with the Media Server package.

Evansport's transcoding capabilities are utilized in two packages, Video Station and Media Server. The latter enables the DS214play to act as a DLNA DMS (Digital Media Server). The various options available in the Media Server package are made clear in the gallery below.

The important points to note include the fact that folders can be set up for indexing of particular media types only and that video transcoding can be enabled for certain extensions that DLNA DMRs (Digital Media Renderers) don't commonly support (rm, rmvb, mkv). To prove that hardware transcoding works, we have a screenshot below of the resource usage and running processes on the DS214play taken while playing back a VC1 MKV clip using DLNA on a Sony KDL46EX720 TV.

Interesting aspects are pointed out in the above screen capture. Note that transcoding a 1080p VC-1 clip to 1080p H.264 consumes less than 20% CPU resources. The running processes give more insight into how hardware transcoding is utilized. We find that Synology triggers ffmpeg for this purpose. However, the options (such as -prefer_smd and -vcodec h264_smd) indicate that this is a custom build for the DS214play / Evansport platform. Before digging further, a short detour to understand the various streaming profiles is necessary.

Adaptive Bitrate Streaming

The quality of video streaming depends heavily on the network characteristics. Towards this, various adaptive bitrate streaming schemes are used. The MPEG committee's standard is called DASH (Dynamic Adaptive Streaming over HTTP) and it works by dividing the multimedia stream into segments (with each one having a MPD (media presentation description) holding the important data - URL, resolution, bitrate etc.). This scheme doesn't rely on or specify the underlying codecs. There are a number of open source implementations of the standard.

Apple has their own protocol for adaptive bitrate streaming, the HLS (HTTP Live Streaming). It also enjoys widespread software support and is publicly documented, though it is not a standard yet. Operation is similar to DASH in the sense that the stream is divided into multiple chunks, but differences come in the form of how the receiver is made aware of the available underlying streams. In the case of DASH, the MPD holds the URL, but HLS provides the list as a playlist at the start of the streaming session.

Microsoft also has its own solution, Smooth Streaming, for this purpose. High level details are available from Microsoft here. Software support for Smooth Streaming has traditionally come only from Microsoft which provides SDKs for various platforms.

There are other adaptive bitrate streaming techniques, but we chose to talk about the above three because they are amongst the transcoding profiles supported by Synology in the DS214play.

Synology's Transcoding Profiles

Synology stores transcoding aspects in various files under /volume1/@appstore/VideoStation/etc. Interesting contents are brought out in the screenshot below. Depending on the underlying architecture of the NAS, different transcoding profiles may be chosen. DS214play falls under 'evansport_2'. Other profiles (not shown in the screenshot) include x86_1, x86_2, bromolow_2 and cedarview_2.

Roku and AppleTV have special profiles. For the rest, some standard profiles are chosen. Note that anything with the _smd option can be expected to take advantage of Evansport's transcoder engine. Bitrates of the transcoded stream as well as the output audio profile can be gleaned from this data.

All this background information is fine and dandy, but I am sure readers are interested in how well does the transcoding works in practice. We are going to see a sharp polarization in opinions over this aspect. While some people are going to be extremely happy with the transcoding capabilities, others might consider the DS214play to be a disappointment in the same department.

What Works? - iOS Streaming & Compliant Files

iOS users with a library of files from cameras or other sources which don't have any type of DTS audio are most likely to be happy campers. In our tests using the DS Video app on a iPhone 4S, we found that all videos taken with camcorders (AVCHD / MPEG-2) as well as Blu-ray MKV remuxes (H.264 / VC-1) with AC3 / E-AC3 audio played back perfectly. Real Media clips in standard definition were also not a problem (though those used software transcoding). Chromecasting these clips worked without issue too.

What Doesn't? - Inconsistent Android Experience & Chromecasting, No DTS, No Plex

Unfortunately, the situation on the Android side is not that great. Due to the variety of supported formats for hardware-accelerated decode on various platforms, Synology suggests using MX Player as the decoder application for videos played via DS Video. Without the app installed, DS Video tries to play back the stream via the default Android app (Gallery / Photo) and this results in a 'Can't play video' message even on a Nexus 5 with an unaltered factory image. We did cursory testing with a Nexus 5, Samsung Galaxy Tab Pro 8.4, Samsung Galaxy Tab Pro 10.1 and an Asus Transformer TF300T. In-depth testing was done on a Nexus 4.

For our experiments, we chose a 1080p VC-1 clip with E-AC3 audio in a MKV container and DS Video on a Nexus 4. DS Video's settings include an option to select playback quality. Setting it on Auto is expected to provide the best results. However, we observed that within the local network / when external bandwidth is really good, DS Video opts to send out the unmodified VC-1 clip. With MX Player set in H/W+ decoder mode, the clip never starts playing back and we get dumped back to the DS Video interface. With H/W+ mode disabled, MX Player plays back the 1080p VC-1 clip in software mode with plenty of frame drops. In either configuration, casting the clip to a Chromecast simply didn't work. Setting the DS Video quality option to Medium gave better results. We do see transcoding getting activated within the MX Player interface, as shown in the gallery below. Unfortunately, even in this configuration, Chromecasting was a futile exercise.

Chromecasting a remuxed Blu-ray VC1 Clip (MKV) didn't work

Our experience with DS Video on an Android device and Chromecast was a mixed bag. While many media files were 'compliant' enough to be Chromecasted (H.264 (Blu-ray profile) in MKV, SD MPEG-1 / MPEG-2 / Real Media content), others simply failed to cast despite playing back on DS Video / MX Player.

We found that many of our test streams refused to play through DS Video. Synology went through some of those and determined some aspects (such as Real Audio in a HD Real Media stream, or a H.264 video with a 1920x1088 size instead of the standard 1920x1080) that couldn't be supported. We do not have any complaints about these 'difficult files' not playing back, but the bigger issue was that once an attempt to play such a file was made, the transcoder state got messed up. Any further transcoding / video serving became possible only after a restart of the system.

One of the disappointing retrogressions in the multimedia space for DSM 5.0 is the absence of a DTS license. Due to this, streams with DTS audio either don't play back through DS Video at all, or play back without audio. Apparently, Synology has been having some licensing issues with DTS, and there is no resolution in sight.

Another unfortunate aspect of the DS214play is the fact that it currently doesn't support the Plex Media Server package (SPK version 0.9.9.7.429-f80a8d6 downloaded from plex.tv). In any case, Plex has never been one to worry about hardware accelerated transcoding, and the Atom CPUs in the Evansport SoC do not perform as well as dedicated Atom CPUs such as the D270x. Given that Plex releases exist for other Evansport-based NAS units, it is not inconceivable that we will get Plex running on the DS214play in the near future.

Video Transcoding Summary

Since MX Player appears essential for DS Video on Android, it would be better if Synology works with them to make the Pro version available for all Synology NAS users who install DS Video. In addition, DS Video for Android should be smart enough to detect when transcoding is necessary, particularly if the quality settings are set to 'Auto'. In the ideal case, DS Video should be able to check up on the supported hardware codecs (and associated resolutions / bitrates) and ensure that the Video Station package on the NAS transcodes the source stream into the best possible quality in a supported codec.

On the whole, users with 'compliant' files will find the DS214play's transcoder working perfectly (as evidenced in this YouTube video), but those who don't and/or those who use Android devices end up with an inconsistent experience.

DSM 5.0: External Access DSM 5.0: Miscellaneous Multimedia Aspects
POST A COMMENT

45 Comments

View All Comments

  • bznotins - Tuesday, May 20, 2014 - link

    Maybe I'm just not the target market for this kind of device, but I am always left scratching my head on the value proposition of something like this.

    For roughly the same price, I could build a micro-ATX rig with twice (or more) the SATA ports, a higher-power CPU, optical drive capability, and more USB/USB3 ports. Plus, the custom build could also be an additional home PC, from which you could run a Plex server, and/or host your mySQL database for XBMC.

    I always find myself reading AT reviews on NAS boxes with the idea that I might want one. Then I look at the price and compare to the functionality of my current W8.1-based home server and the two aren't even in the same league.

    Power consumption can't be it (my W8.1-based home server consumes 31W at long idle).

    Network throughput can't be it (I get 900Mbps over my home network moving files between PCs).

    Redundancy, perhaps?

    /shrug
    Reply
  • ZeDestructor - Tuesday, May 20, 2014 - link

    Don't worry, you're not alone.

    I'm at the other end of the spectrum myself: I have a pile more data, well into the 6/12disk segment, and at the price, dropping a microATX Rangeley (Avoton with more extensive crypto engine) into a backblaze pod looks like a much nicer proposition.
    Reply
  • owan - Tuesday, May 20, 2014 - link

    Completely agreed. $370 for a 2 disk setup seems absolutely absurd unless you are absolutely positive you won't need more than 3 or 4TB of space over the life of the device, and even then its hard to fathom. You can build a custom PC for that much, put a 4-in-3 hotswap bay in, and have double the hot swap space, plus future expansion options. These devices just seem so limited I cant comprehend why you'd bother Reply
  • Spoony - Tuesday, May 20, 2014 - link

    I also don't understand. I want something other than ext4 as well. If I'm going to store lots of data long-term I want reliability to be the name of the game. I ended up building a server around a Xeon E3 with ECC memory and 6x drives. Then installing FreeBSD on it with the storage drives running ZFS. It cost similar to a midrange Synology box, but it is better in every way.

    I think these are for people for which the hassle of setting up and building is significant. They just want to plug it in, flick some switches on the web interface, and easily store data on the network. For that I can certainly see value, it just isn't for me.
    Reply
  • Impulses - Wednesday, May 21, 2014 - link

    The number of people that want that idiot proof NAS experience might outnumber the amount of enthusiasts that will roll their own. I don't have either, still seems unnecessary with just two PC in the house, but I know plenty of non enthusiasts and family guys that have bought a NAS like this and would never or could never go DIY. Seems like beating a dead horse to argue the value if you're an enthusiast, it's there for those that aren't or don't wanna bother just like HP & DELL desktops were for ages... Reply
  • robinthakur - Friday, May 23, 2014 - link

    I bought one because it is easy to setup and near silent in operation and has been designed for its purpose. I previously had another NAS made by Zxyel which was a total hassle to setup and use by comparison. I struggled to justify the cost of this box initially, but I have been blown away by how user friendly Synology's DSM OS and mobile apps are and being able to easily run Drupal sites on it for internal testing is great, as is being able to backup all the Macs in the house to the time machine function. Naturally, you could build your own box, but I've done that before and it costs alot more for decent components, the case will likely be bigger and it will be noisier and it takes ages to configure just right. I actually don't use the media features I just bought it to play with them as I have a mac mini hooked up to the TV for XBMC duties but I've ended up using far more of the features than I'd anticipated, not just for file shares. The only reason I might build a physical server would be to also run AD, Exchange and SharePoint VMs for development and while it would be more capable, it would also be more hassle to maintain and more costly to build (RAM and processing requirements) and most of that can be done in Azure now. The box is really user friendly and to be honest these days, that's what I want rather than spending days of my expensive time assembling a server. Reply
  • DanNeely - Tuesday, May 20, 2014 - link

    The main advantage of small soho NASes is size and idiot proofing. You might not care about having another tower case sitting in your network closet, geek cave; but Joe Mundane would much rather have a really small box than a big one and these sort of systems can offer much better performance than a USB drive hung off a router. They also require much less skill to configure and operate than a full fledged server PC. Reply
  • Solandri - Tuesday, May 20, 2014 - link

    This. These things look bad from a financial aspect if you're thinking of purchasing one as an individual where you undervalue your time.. But in terms of a business, you can burn through $370 in an hour, if not a few minutes. You can spend 5 minutes to buy this and 10 minutes to set it up when it arrives and get it up and running. Or you can spend an hour picking out and ordering the parts for a custom box, then spend an hour assembling it, then 2 more hours installing software, setting it up, and testing it. Usually at that point a business has burned more money on labor than it would've spent on this one-stop solution.

    Case in point, one example where it makes sense as an individual is if I want to set up my parents with a NAS. I don't want to remotely troubleshoot it and have to babysit them through fixes every time something goes wrong. I want it to be dirt simple to set up, and have a proven track record of reliability without continuous monitoring and management. The time it saves me from having to fix or tweak it at my parents' house can easily be worth $370 to me.

    The custom box solution is only cheaper if you put little or no value on your time. (Which isn't necessarily a bad thing. I <i>enjoy</i> tweaking with and trying out new things on my custom NAS. I just wouldn't enjoy it if I had to do it remotely at my parents' house every time they have a weird problem they can't fully explain to me, or if I were paying someone $30/hr to do it.)
    Reply
  • Beany2013 - Tuesday, May 20, 2014 - link

    On a related, and wider note....

    I have the ability to build a seriously nice HP Microserver with encryption, trascoding streaming, and all that good stuff, too - and it'd cost the same, more or less, as one of these devices, if you don't include my time at chargable rates. I'm a multidisciplanary IT admin/troubleshooter - I'm the sort of person who can singlehandedly build an entire office infrastructure including GPO'd domain (or Puppet'd Linux environment) from scratch given the funding and a few days of time. So I'm not niave about this.

    But after a ten hour day of fixing servers and workstations, I wasn't in the mood to build one on any given night of the week or weekend, so just bought the DS214+

    Admittadly, no transcoding (the Play wasn't available at the time, and the DS713+ was a bit much for my needs and budget), but handily, Chromecast and VideoStream do that nicely using my laptop as a proxy.

    Does everything I need to, very nicely, with absolutely sod all maintenance or tweeking required, it'll happily WOL and sleep, can talk to UPS/Wireless/Bluetooth dongles if you get the right ones, and has enough commonality with ARM Linux (it's Debian on ARM) to have a good developer pool for unapproved apps. My next project is to set up Asterix on it and practise with VOIP, too see if I can help reduce the office phone bill.

    You're paying for the convenience, the simplicity and the support (that you'll rarely need with this class of device); I'm finding more and more cases where these devices are 'good enough' for a lot of SOHO and small SMB clients, and also power users such as ourselves. The nice thing about Synos range is that they scale up to monster, gazillion disk, 10GBe rackmount devices, too - all with the same interface; very handy for support purposes.

    Consumer NAS devices are at the stage where they can, in many cases, replace a light use Windows/Linux whitebox/OEM server for a lot of people. Simple as that. They aren't suitable for everything, but they are suitable for a hell of a lot.

    I'm not paid by Synology (or anyone in that respect) but when I find a device or service I think is worth kudos, I'll wax on about it happily. The Syno gear is worth investigating IMHO, it's a cut above the Netgear/WD/QNAP stuff, and unless you require device specific functionality (realtime replication between boxes like what the netgears do) I'd go for Syno stuff every time these days.
    Reply
  • lyeoh - Wednesday, May 21, 2014 - link

    I set up a custom RAID10 NAS at work and it's configured to run SMART tests on the drives, monitor temperatures of the drives etc and send email alerts if there are problems. Took some time to set up but doesn't need any babysitting. Why would it? It's been running year after year. Earlier this year it sent email alerts when the server room air conditioner broke down and the drives started to get warm. Probably the only machine in the entire server room that sends out such alerts ;), I set it up because the crappy WD NASes others set up were slow and kept dying or hanging. Reply

Log in

Don't have an account? Sign up now