May 132016
 

3dfx logoI had actually meant to post this upon release, but forgot. I’ve now been reminded on the forums that I should maybe do this, even if it isn’t really a match for this weblog, considering the target audience, language-wise. Well, whatever. Somewhere in 2014, a user named [OutOfRange]German flag from the German 3dfx forum [VoodooAlert]German flag had begun to write a German transcript for an interview that the [Computer History Museum] had conducted with the founders of the now-long-gone PC 3D graphics pioneer 3dfx Interactive. This is especially interesting stuff for PC gamers and hardware enthusiasts of the mid-90s to the early 2000s. I allows quite an insight into both the technological and business sides of a now-legendary 90s chip startup company.

Also, those guys are really nice people as well it seems. :)

It had been requested to have some kind of text file-based translation to read while watching the video by some guys who can’t speak English, and OutOfRange had begun to translate the video and write that, with some minor passages done by another user called [Kaitou]German flag. Ultimately, when I picked up the project, I (and others) had the idea of making a German fansub out of that. So together with OutOfRange, who supplied me with the latest versions of his transcript on-the-go, I started to learn about how to do (very) simple ASS/SSA soft subtitling using [Subtitle Workshop] and just got to it. Early on, there was little or no color coding and very little formatting, so working on it looked like this:

The early on of subtitling the 3Dfx Oral History Panel

The early-on of subtitling the 3Dfx Oral History Panel, I translated as I got fed new bits and pieces by OutOfRange…

But it got better and better, colors got assigned to all the guys to differentiate them from each other better when several people were talking at once (you get used to the colors fast!), explanatory information was put to the top of the frame and slowly but surely, the German fansub of that 2½ hour interview started to take shape:

3dfx Oral History Panel Screenshot

The 3dfx founders talking about how the would never do CAD on their first 3D chip for PC gamers, known as the “3Dfx Voodoo Graphics”. From left to right: Gary Tarolli, Scott Sellers, Ross Smith and Gordon Campbell.

So, where are the files? Here they are (thanks fly out once more to OutOfRange, [CryptonNite]German flag and [Hutzeputz]German flag for helping out with download mirrors!):

The 3Dfx Oral History Panel in its german fansub:

Downloads:

Audio & video are © 2013 Computer History Museum
[original English transcript] (This fansub is not based on it!), [original web stream] [http://www.computerhistory.org] [Terms of use] Used with express permission!

The subtitles are licensed under the [CC BY-NC-SA 4.0].
CC BY-NC-SA 4.0

  • Initiator and main translator: OutOfRange
  • Co-translator: Kaitou
  • Editor & fansubber: GrandAdmiralThrawn (that would be myself)
  • [http://www.voodooalert.de]German flag

This release was made possible also because of the friendly help of a legal representative of the Computer History Museum who helped clear up how we can dual-license and re-release this video by ourselves. Note that if you wish to redistribute a modified version (!) of this by yourself, you’d need to get express permission from the Computer History Museum by yourself. If you wish to modify the fansub, you may redistribute the .ass files freely under the CC BY-NC-SA 4.0, but not the whole, remuxed video unless you have permission from the Computer History Museum!

In essence: You may not redistribute modified versions of audio & video without express permission from the creator, as their license is in essence something like the [CC BY-NC-ND].

As a final note, I’m not really a fansubber, so don’t expect any kind of professional quality here. Or something that you’d get from an actual fansubbing group. But for an amateurish sub, it should be quite decent. ;)

Have fun! :)

PS.: If you’re ever anywhere near Silicon Valley, California, and even if you’re just a tiny bit interested in computer technology and history, pay that museum a visit! It’s seriously awesome, they even have mainframes from the 60s, magnetic core memory panels from the 50s and more modern stuff as well. Ah, I remember stuff like that CRAY machine or the “Weapons Director” box,  really nice exhibits there!

Apr 292016
 

The InternetAnd here we go again… Wednesdays. Well, on Wednesday, 2016-05-04 my internet service provider will have to do some undefined maintenance again, and that’s supposed to be happening in between 01:00 – 06:00 am. According to my provider UPC, there will be several short periods of unavailability of service about 15 minutes long. Of course they’ll do everything as quickly and properly as possible as to not to interrupt their customers’ services too much – or so they say. So, once again:

Wed, 2016-05-04, 01:00 am – 06:00 am UTC+1 – Expect several short downtimes in that time frame!

Oh, and in case anyone noticed (nah, I know you didn’t…), sorry for that unannounced downtime on Thu, 2016-04-21. Should’ve been roughly from 03:00 pm – 07:00 pm UTC+1. This was done for two reasons:

  1. The WinSSL layer had broken down permanently (LsaSrv) due to a bug. When that happens, only a reboot can fix it. There is only one service relying on WinSSL instead of OpenSSL or GnuTLS, but it’s an important one that I do not wish to operate without a cryptography option, as it’s endangering the privacy of my users.
  2. The OS hard drive had shown signs of sectors becoming defective. This called for an analysis to see what areas of the file system had taken damage. Luckily, it only got some $I30 index files (deleted files still being referenced) and one unimportant IPCache.dat, which is just a local DNS cache file of a single service. Also, if the state would be recoverable, a full backup was in order.

So, the file system errors have been repaired, and defective blocks have been marked, restoring proper, consistent operation. Since the drive is no longer to be considered reliable enough, I decided to take the extra time to create a fresh full backup / system image of the operating systems’ and services’ current state, so when “C:” does die, I can restore without too much hassle. The last full backup was too old anyway, with a lot of important stuff already missing by now.

Got any flawlessly working U160/U320 68-pin SCSI drives >=36GB that you could part with? ;) If so, post in the comments, let me know how much you want for it. ;) And maybe don’t try to post in the time noted above. :)

Apr 222016
 

Sakura Trick - Haruka×Yuu logoBefore I say anything else or show you any photos; I would like to thank a certain Mr. Isohata, who happens to run [this eBay shop] called “Toys Glory” right here. He might not always provide the cheapest offers, but let me tell you this: That man delivers! Not only did he manage to surprise me by being able to get me a really rare, exclusive (and in the Western World: pretty much unobtainable) [Tokisaki Kurumi] version, no, he also managed to get me todays’ two little gems, which I couldn’t manage to find anywhere else anymore. And it didn’t take him longer than 48 hours to get his hands on them even – in a sealed state! Hell, I don’t know how he does that, but if you’re sitting in the Western world and you’re looking for something rare with no other options left… Just drop him a message, chances are that if anyone can get that rarity for you, it’s probably him! Oh, and his English is pretty good, best I’ve read corresponding with Japanese people, so no worries there!

Now, that I’m a fan of Yuri Anime (=”girls’ love”, sometimes also inappropriately called “shoujo ai”[1] in the West) is probably not exactly a secret anymore, but from my point of view, there just aren’t many good series in that department. Or let’s say… unobstructedly enjoyable ones. I should really prepare my top list for the genre, but it’ll take a while longer I guess. But to cut to the chase: If you’re looking for a really fluffy, kinda innocent/naïve slice-of-life Yuri Anime, look no further: There is only one. And that’s Sakura Trick / 桜Trick.

Sakura Kiss

You can probably guess where this is going…

I was always kinda disappointed by different figures from different Yuri Anime, because essentially, they’re never posable. And what good are they, if you can’t… uhm… combine them.

Also, it seems Anime released by the infamous [Studio Deen] aren’t seeing a lot of love from figure sculptors (because most of Deens’ series are really low quality), but recently they’ve been improving quite some. And Sakura Trick? Hell, it’s freaking beautiful. Especially if you own a pair of Yuri goggles. :roll:

But there ARE two figures from Sakura Trick after all – the two main characters – which fit the bill. Unfortunately they’re from Waves’ Beach Queens series (“Premium” branch in this case though), which surely aren’t my favorites. Reason? Well, dressing up any and every girl from random Anime in Bikinis just to show them off with as little fabric on their bodies as possible isn’t exactly my thing. But ok, in this case, it’s forgiven and forgotten! We’re talking about Sonoda Yuu × Takayama Haruka after all. ;)

Wave went through the trouble of making the heads on these exchangeable for posing purposes. That means they had to integrate plastic sockets into the heads to be able to connect the ball joint, because the two are made of quite hard polystone, not PVC. The material’s a kind of artificial stone made from polyurethane resin and stone aggregates to give it a porcelain-like feel to the touch. It doesn’t smell like PVC does, it’s supposed to allow for more refined detail in sculpting and you need to be careful – because it can shatter easily.

The scale on these is 1/10, not 1/8, so they’re rather tiny. Let’s have a look, now shall we?

As said, the sockets are pretty heavy and feel well made and all, but… they’re in the way as well. Because if you want to pose the two figures, eh, properly, the sockets won’t let you because they put too much distance between the two. But first things first, let’s change those heads:

Theeere we go. Yuu sure sports some nice sculpting around her belly! Well, there is a small flaw on her hand, but to the naked eye this is not too noticeable, so I’m fine with that. And now, as for the actual posing:

Aw, adorable.

Now, as for the detail level, it may not seem overly great, but consider the scale! 1/10 is quite a bit smaller than 1/8 after all. Ah, just see for yourself:

Sakura Trick - Haruka×Yuu size comparison

This is how a 1/10 scale figure compares to a Nendoroid and a 1/8 scale, both of which are Hirasawa Yui from K-On! Not counting the baseplates, the heights are (from left to right): 15.2cm / 5.98″, 9.8cm / 3.86″ and 18.5cm / 7.28″.

Well, in the end, those two were pretty expensive. They weren’t cheap at launch already, probably because they’re pretty niche after all, and I had to pay roughly twice the original price. It wasn’t breaking the bank or anything, but no matter the quality – rarity costs money. If you’re willing to go (and pay for) the extra mile when it comes to harder-to-get stuff, see paragraph 1. ;) If you’re actually in Japan, this should be much easier I guess, but from Europe or the US, options are limited after all.

Now, let me schedule that third rewatch of Sakura Trick… Because there’s no Yuri like this one…

[1] Shoujo/Shōjo (jap. 少女) mostly means “little girl” or “young girl”. The term “shoujo ai” was meant to just mean “girls love” in the western world, but this is easily mistakable, as the term is being understood as “pedophilia” in Japan. My personal assumption being that it just means something like “love for really young girls”. Saying that you like “shoujo ai” to the wrong person is one mistake you don’t wanna make, ever!

Apr 192016
 

H.265/HEVC logoLike I said, I’ll keep doing these. Following version [1.9+108], here comes another build of the x265 encoder for Windows XP+ and Windows XP x64/Server 2003 x64+, this time it’s version 1.9+141. I’m not sure for how long the developers at Multicoreware are going to keep up support for NT 5.1/5.2 based operating systems, but for as long as they do, I’ll keep releasing builds for the old MS operating systems. Just keep in mind that I’m not running automated build & test systems, so I’m going to release selected binaries every 1-2 months or so. If you need a specific version, please just request it (or try and build it yourself, see previous posts).

Whenever Multicoreware does drop support I’ll still continue as long as it’s easily patchable. We can’t be sure of anything though, they’ve dropped deep color support (10-bit/12-bit per color channel) on 32-bit x86 platforms before, so…

Well, here is 1.9+141:

Once more, this has been built with Microsofts’ VisualStudio 2010 SP1 + yasm 1.3.0, and tested doing a 2-pass encode & quick output video verification for all color depths. Requires the MS VC++ 2010 runtime, you can get it here: [32-bit version], [64-bit version].

Apr 192016
 

Banpresto: Hanayamata Kyun-charas - logoAnd while I’m waiting for a real rarity, here we are with more Anime Chibi figures in the meantime! You want more, right? Yeah, chances are pretty high you don’t, but here they are anyway. Amongst Moeblob Anime series (“cute girls doing cute things” as they say in the US), there are a few with either no or less high-profile merchandise available, and the Anime Hanayamata is one example of them. Not the worst of all (think Gochuumon), but yeah.

Not that the series should be that good actually, it’s extremely formulaic in nature and is comprised of characters made from 100% standard templates. Some of those shows are really uninteresting, but some I still like a lot for no apparent reason other than… Moe infection? Or maybe it’s really just well made somehow.

Well, whatever, I wanted some small chibis of the main cast, but alas, good old Goodsmile Company hasn’t made any Nendoroids of them, so what now?

Luckily those ‘roids have been so ridiculously successful, that several companies started to try and come up with competitive products – one of them being Banpresto with their “Kyun-Chara” series. Besides wanting the Hanayamata characters in PVC form, it’s also an opportunity to compare them with the current top dog in the market. Let’s see (CTRL+click to enlarge, as always)…

Banpresto: Hanayamata Kyun-charas - whole group

The main cast, from left to right: Machi, Naru, Hana, Yaya and Tami – The names alone already radiate Moe.

So what’s this even about? Aside from the typical coming-of-age and all-girls friendship/bonding stuff, it’s focused on some kind of modern freestyle dance called [Yosakoi], which combines classical Japanese dance movements with modern music, mostly JPop stuff I guess. I found that intriguing as I’d never heard of it before, and it wasn’t the typical school band or Idol stuff. Being artistically interesting (animation, drawing style etc.) I got kind of hooked. “Kind of” probably being an understatement… :roll:

Let’s look at the individual characters before the quick Kyun-Chara vs. Nendoroid comparison:

Cutesy, flowery stuff it is. Hana’s one of the two main characters, and by far the more lively one. Also: The classic “Western, Aryan exchange student” (yeah, I used that word just now, you know why, Japan!). I’m not going to comment on my impressions regarding quality before the Nendoroid comparison, but let’s just say, there’s good and bad stuff. Let’s continue for now:

And there we have our wallflower, Sekiya Naru. If you’re vaguely familiar with this type of show, I won’t need to say much more than that, just one thing: Her name is also a part of “Naruko”, the wooden clappers they’re holding. Originally used to chase away birds from fields, it’s now a musical accessory. Next girl:

Now if there ever was a run-of-the-mill Tsundere (Search for it on the web, if you don’t know the lingo, and if you really want to know), here she is. The rose theme probably fits with her being the jealous type as well, even if the color doesn’t match perfectly. But we already got a girl with a yellow theme, she’ll come last… First comes Miss Princess:

Despite the Lily (=Yuri) sometimes being a symbol for love between girls, this is not the case here. Nishimikado Tami is just the groups’ typical well-mannered, calm and introverted rich girl. Like all five of them, she’ll have to overcome one “drama” in the course of the series. That’s, if you can even call it that. It’s an 98% lighthearted show after all. And now, for the last one:

Tokiwa Machis’ the most stiff and stern of the five, and she’s late to the game as well, so not much time for her to soften up. She doesn’t all turn fluffy even at the end, which is probably a good thing. While she’s another Tsundere, her character is slightly less formulaic than Yaya.

How Hanayamata managed to take all this run-of-the-mill stuff that has been done to death for hundreds of times and still make it unbelievably enjoyable is still beyond me. Maybe it’s really the artwork. Or the music. Or the writing (nah, can’t be, lol). Whatever, it’s absolutely nice feel-good stuff. If you can take several kilograms of pink sugar per episode that is. ;)

Ah, I wanted to compare the little figures to the #1 in the field, GSCs’ Nendoroids, right? Let’s pick two pairs and have a quick look:

First of all, I thought the Kyun-Charas would be smaller. 7cm they said, but it’s more like 8.5cm (3.35″). They’re more petite however, having slimmer legs, slimmer waists etc, so in essence the are deformed more strongly. Also, they’re not posable like Nendoroids, so what you see here is all you get. Legs can be removed, but they don’t all have the same joints, so exchanging anything but heads is impossible. They’re not made for that.

Now, let’s talk quality: There are two things where Banpresto is still clearly behind. First, the deburring of the plastic. Parts of the Kyun-Charas will lack proper deburring and thus have slightly frayed edges. That just looks a bit cheap, so well-rounded, smooth edges are a must to achieve a flawless look.

The second are the color gradients when it comes to hair. Naru doesn’t seem to even have any. Machi does, but as you can see it’s pretty inferior to the Nendoroids, even the early ones.

The faces are ok however, definitely up to the level of GSC. And the clothes even surpass the Nendoroids I own, that’s a really good level of detail. So… it’s a mixed bag. Some parts are top-notch, while others are still a bit lacking, even if we don’t consider the non-posable character of Kyun-Charas.

So, if there were ‘roids, I’d probably have bought those instead. But the Kyun-Charas aren’t too shabby either. Just don’t expect them to use up less space than Nendoroids like I did, they’re almost equal in that department.

Aaand the next ones to appear on stage are some really hard-to-get specimens, think “Yuri”. If you like that, you may wish to check back…

Apr 082016
 

H.265/HEVC logoPreviously, I have shown you [how to compile x265 on Windows] using Microsoft Visual Studio 2010 in a way that results in binaries compatible with Windows NT 5.1/5.2, or in other words: Windows XP, XP x64 and Windows Server 2003. And while that works for most purposes, today I’d like to show you how to build an actual multilib binary, that can handle all three color bit depths supported by x265, the standardized 8- and 10-bit (MAIN and MAIN10 profiles) as well as 12-bit (MAIN12 profile). With that, it’s all in one exe instead of three. As before though, multilib x265 is only supported on 64-Bit Windows. But first, once again…

1.) Giving you the binaries

There were a lot of improvements since the last version I published back in February of course, also performance-wise. So here’s the current version from Multicoreware for both 32-bit and 64-bit Windows, compiled with MSVC 2010 SP1 and yasm 1.3.0. This requires the Microsoft Visual C++ 2010 runtime to work, see previous article:

This time around, the binaries have been tested as well! On regular 32-bit Windows XP, only fundamental binary compatibility was tested. However, all versions, so the 32-Bit one and the 64-Bit multilib ones have been ran through a 2-pass ABR encoding test with output verification for 8-bit color depth (32- & 64-bit) as well as 10- and 12-bit color depths (64-bit only) on Windows XP Professional x64 Edition using the following command line (see previous post for details):

avconv -r 24000/1001 -i input.h264 -f yuv4mpegpipe -pix_fmt yuv420p -r 24000/1001 - 2>NUL^ 
 | .\x265.exe - --y4m -D 10 --fps 24000/1001 -p veryslow^
 --open-gop --ref 6 --bframes 16 --b-pyramid --bitrate 2500 --rect --amp --aq-mode 3^
 --no-sao --qcomp 0.75 --no-strong-intra-smoothing --psy-rd 1.6 --psy-rdoq 5.0^
 --rdoq-level 1 --tu-inter-depth 4 --tu-intra-depth 4 --ctu 32 --max-tu-size 16 --pass 1^
 --slow-firstpass --stats v.stats --sar 1 --range full -o pass1.h265 & avconv^
 -r 24000/1001 -i input.h264 -f yuv4mpegpipe -pix_fmt yuv420p -r 24000/1001 - 2>NUL^
 | .\x265.exe - --y4m -D 10 --fps 24000/1001 -p veryslow --open-gop --ref 6^
 --bframes 16 --b-pyramid --bitrate 2500 --rect --amp --aq-mode 3 --no-sao --qcomp 0.75^
 --no-strong-intra-smoothing --psy-rd 1.6 --psy-rdoq 5.0 --rdoq-level 1^
 --tu-inter-depth 4 --tu-intra-depth 4 --ctu 32 --max-tu-size 16 --pass 2^
 --stats v.stats --sar 1 --range full -o pass2.h265

Needless to say, they should work fine on Windows Vista/7/8/8.1/10/Server 2008/Server 2012/HS 2007/HS 2011 as well.

From time to time, I’ll release new binaries, so you might wanna check back every few months or so, if you’re interested. You can also request a build in the comments if you’re growing impatient and need a specific version more quickly because of some bugfix / feature improvement in x265.

2.) Compiling an XP/2003-compatible x265 multilib binary yourself

First, please look at the previous article I linked to in the beginning, point 2. You need the software prerequisites listed in 2a and you might still wish to read through 2b to understand some of the stuff better. You don’t need to actually run any of the commands shown there though.

Now, the multilib build is done a bit differently from the rest, as everything is scripted, so this is 100% command line work, no graphical cmake, no running the full Visual Studio IDE. Usually, with all software in place, sitting in the root directory of the x265 source tree, all you need to do is to go to build\vc10-x86_64\ and run ./multilib.bat. This won’t give us an XP/2003-compatible binary however, and the reason lies within the build script multilib.bat, here is the stock version:

expand/collapse source code (multilib.bat)
  1. @echo off
  2. if "%VS100COMNTOOLS%" == "" (
  3.   msg "%username%" "Visual Studio 10 not detected"
  4.   exit 1
  5. )
  6.  
  7. call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat"
  8.  
  9. @mkdir 12bit
  10. @mkdir 10bit
  11. @mkdir 8bit
  12.  
  13. @cd 12bit
  14. cmake -G "Visual Studio 10 Win64" ../../../source -DHIGH_BIT_DEPTH=ON -DEXPORT_C_API=OFF -DENABLE_SHARED=OFF -DENABLE_CLI=OFF -DMAIN12=ON
  15. if exist x265.sln (
  16.   MSBuild /property:Configuration="Release" x265.sln
  17.   copy/y Release\x265-static.lib ..\8bit\x265-static-main12.lib
  18. )
  19.  
  20. @cd ..\10bit
  21. cmake -G "Visual Studio 10 Win64" ../../../source -DHIGH_BIT_DEPTH=ON -DEXPORT_C_API=OFF -DENABLE_SHARED=OFF -DENABLE_CLI=OFF
  22. if exist x265.sln (
  23.   MSBuild /property:Configuration="Release" x265.sln
  24.   copy/y Release\x265-static.lib ..\8bit\x265-static-main10.lib
  25. )
  26.  
  27. @cd ..\8bit
  28. if not exist x265-static-main10.lib (
  29.   msg "%username%" "10bit build failed"
  30.   exit 1
  31. )
  32. if not exist x265-static-main12.lib (
  33.   msg "%username%" "12bit build failed"
  34.   exit 1
  35. )
  36. cmake -G "Visual Studio 10 Win64" ../../../source -DEXTRA_LIB="x265-static-main10.lib;x265-static-main12.lib" -DLINKED_10BIT=ON -DLINKED_12BIT=ON
  37. if exist x265.sln (
  38.   MSBuild /property:Configuration="Release" x265.sln
  39.   :: combine static libraries (ignore warnings caused by winxp.cpp hacks)
  40.   move Release\x265-static.lib x265-static-main.lib
  41.   LIB.EXE /ignore:4006 /ignore:4221 /OUT:Release\x265-static.lib x265-static-main.lib x265-static-main10.lib x265-static-main12.lib
  42. )
  43.  
  44. pause

So I took all the options from the files generated by the original cmake when doing the normal build, and added them to the script to ensure our output binaries would be XP-compatible. This is the fixed build script:

expand/collapse source code (multilib.bat, patched for XP/2003)
  1. @echo off
  2. if "%VS100COMNTOOLS%" == "" (
  3.   msg "%username%" "Visual Studio 10 not detected"
  4.   exit 1
  5. )
  6.  
  7. call "%VS100COMNTOOLS%\..\..\VC\vcvarsall.bat"
  8.  
  9. @mkdir 12bit
  10. @mkdir 10bit
  11. @mkdir 8bit
  12.  
  13. @cd 12bit
  14. cmake -DCMAKE_BUILD_TYPE="Release" -DCMAKE_CONFIGURATION_TYPES="Release" -G "Visual Studio 10 Win64" ../../../source -DHIGH_BIT_DEPTH=ON -DEXPORT_C_API=OFF -DWINXP_SUPPORT=ON -DENABLE_SHARED=OFF -DENABLE_CLI=OFF -DMAIN12=ON
  15. if exist x265.sln (
  16.   MSBuild /property:Configuration="Release" x265.sln
  17.   copy/y Release\x265-static.lib ..\8bit\x265-static-main12.lib
  18. )
  19.  
  20. @cd ..\10bit
  21. cmake -DCMAKE_BUILD_TYPE="Release" -DCMAKE_CONFIGURATION_TYPES="Release" -G "Visual Studio 10 Win64" ../../../source -DHIGH_BIT_DEPTH=ON -DEXPORT_C_API=OFF -DWINXP_SUPPORT=ON -DENABLE_SHARED=OFF -DENABLE_CLI=OFF
  22. if exist x265.sln (
  23.   MSBuild /property:Configuration="Release" x265.sln
  24.   copy/y Release\x265-static.lib ..\8bit\x265-static-main10.lib
  25. )
  26.  
  27. @cd ..\8bit
  28. if not exist x265-static-main10.lib (
  29.   msg "%username%" "10bit build failed"
  30.   exit 1
  31. )
  32. if not exist x265-static-main12.lib (
  33.   msg "%username%" "12bit build failed"
  34.   exit 1
  35. )
  36. cmake -DCMAKE_BUILD_TYPE="Release" -DCMAKE_CONFIGURATION_TYPES="Release" -G "Visual Studio 10 Win64" ../../../source -DWINXP_SUPPORT=ON -DEXTRA_LIB="x265-static-main10.lib;x265-static-main12.lib" -DLINKED_10BIT=ON -DLINKED_12BIT=ON
  37. if exist x265.sln (
  38.   MSBuild /property:Configuration="Release" x265.sln
  39.   :: combine static libraries (ignore warnings caused by winxp.cpp hacks)
  40.   move Release\x265-static.lib x265-static-main.lib
  41.   LIB.EXE /ignore:4006 /ignore:4221 /OUT:Release\x265-static.lib x265-static-main.lib x265-static-main10.lib x265-static-main12.lib
  42. )
  43.  
  44. pause

You can just rename your original script for backup and put the fixed code in its place, build\vc10-x86_64\multilib.bat, then run it on the command line. If all the required tools are present, it will compile a 12-bit library, then a 10-bit library (both static) and finally an 8-bit binary that will have the other two libraries statically linked in. The final x265.exe can then be found in build\vc10-x86_64\8bit\Release\. To check whether it’s the real thing, look for the bitness by running .\x265.exe --version while sitting in that folder on the command line. You should see something like this:

x265 multilib binary

A x265 multilib binary shows that it’s “8-bit+10-bit+12-bit”

Per-color-channel bitness can be defined with x265s’ command line option -D. So that’d be -D 8, -D 10 or -D 12. Note that only 8- and 10-bit are part of the official Blu-Ray UHD/4k specification however.

3.) A side note

In case you’re new to this, you might not get why “8-bit” and “10-bit” etc. Aren’t color spaces supposed to be 16-bit, 24-bit, 32-bit etc.? Well, it seems that in the world of video processing, people don’t refer to whole color space bitness, but rather individual color channel bitness. So with three channels (red, green, blue for instance), you’d have 8/10/12 bits per channel, so that’s 24-, 30- and 36-bit total, or 16.7 million, 1 billion and 64 billion colors.

The more important part – and the reason why nobody encodes to 12-bit – is the internal arithmetic precision of x265 though (same applies to x264). At 8-bit color depth, arithmetic precision is also at 8-bits. When you hop over to 10-bit, you can’t use 8-bit operations and data types any longer, so everything is done at 16-bit precision. This makes the code slower, but also more efficient in preserving color gradients. Since 10-bit H.265/HEVC is officially a part of Blu-Ray UHD/4k, this would be the sweet spot, unless you’re dealing with devices too slow to play it.

Going to 12-bit won’t boost the precision further, it just gives you more colors, that most of today’s displays won’t be able to show anyway. Not much benefit.

So that’s that.

Have fun! :)

Mar 232016
 

Logo for the Akaza Akari and Hirasawa Yui Nendoroids as well as the Strike Witches Perrine Clostermann and Francesca LucchiniYeah, more PVC incoming; It’s getting a bit cramped in my display cabinet, as it wasn’t really made for displaying 1/8 scale figures anyway, but there is still a little bit of room, so here are some figures I’ve had sitting on my wishlist for quite a few months. And in best tradition, some of them are a bit “borderline acceptable”. Or all of them, depending on your stance. Ah, and my apologies for the license stamps on the images. I forgot to keep processed copies without the stamps for the weblog… Meh.

The first two are Nendoroids, once more some Hirasawa Yui from K-On! (’cause there is no such thing as enough Yui! But this one is going to be modified for a special purpose.), and Akaza Akari from Yuru Yuri, and then two figures from Strike Witches – needless to say my two favorites – Perrine Clostermann and Francesca Lucchini, both made by Alter. Here are the boxes:

1.) The Nendoroids

Now as I said, Yui is supposed to become more special, as I had an idea to get myself a bobblehead for my car based on her quite long ago. Thing is, bobbleheads seem to be something pretty US American, so there simply are none based on Anime characters, despite Nendoroids having the perfect dimensions for it. Thus, I’d need to build my own:

My first attempt was to just drive some nails into Yuis’ feet and legs, but while that works for a static application, it’s nowhere near stable enough for putting her in an actual car, so I’m probably going to switch to screws. The legs can be twisted a bit so she won’t bend over due to inertia, but the thing is that the legs are partially hollow, reducing the amount of material the screw can safely sit in. I’ll need to get longer ones that go all the way up and into the hip joints as well to stand a chance of this being stable enough. Otherwise some hole/bump in the road or some violent breaking maneuver might send her flying off the baseplate.

The bobbleheads’ neck itself will be solved by replacing the plastic joint with either a tension spring or a pressure spring with optional stiffening material. I have briefly tested this already with another roid and it works well enough. All I need is a solid enough mount.

Further progress will be reported on this blog, but I can’t say when, as that depends on the intensity of my typically pretty severe laziness. ;)

Now, Akari:

Strangely, I got the limited preorder version with the additional parquet-style baseplate, as you can see on the photos. I’m not sure whether this was just luck, or whether it wasn’t limited after all. Maybe they just had some in stock still, although that’d be weird, given the age of the figure. The “Akariiin!~” plate is also included, but I forgot to take a picture of it. Ehm, probably better that way anyhow.

2.) The Alter 1/8 scale figures

Alter’s known to produce some high quality stuff, and I got to see that for myself with the [K-On! complete set], and hell, that’s some pretty decent stuff! So how about the Strike Witches? While the series is basically just about cute girls fighting aliens (or whatever the “Neroi” really are) with magically empowered guns and rocket launchers while presenting the curious viewer a distinct lack of apparel, the series’ military advisers seem to have ensured a certain amount of details regarding the Witches’ array of weaponry. Not to the extent of Girls und Panzer maybe, but still. Let’s look at the cool and well-mannered Tsundere character first, this is Perrine Clostermann:

Not exceptional it seems, besides a pretty spacious setup for a 1/8 figure. Surely not bad either though. Let’s zoom in a bit:

The Bren gun doesn’t boast too much detail, but it looks good enough. Same goes for her propeller striker units (there is a “in motion disc version” of the rotors as well, but I put the still ones on). The nicest part is probably her face, featuring metal wire frame glasses, which do look pretty good, surely better than some thicker and more flimsy plastic would. The downside is, that there is no actual glass, just the frame. Also, her front bangs could’ve been done a bit better!

Now, let’s look at the Strike Witches’ resident Loli character, Francesca Lucchini:

Now, believe it or not, the most important part for me about her was the gun, an American Browning M1919A6 MG. Now I’m not really that much of a WW2 infantry weapons nerd, but I got the impression that Alter got that piece done really well, so let’s take a closer look:

Now that’s really Alter-level quality right there. It’s a bit of a shame that the ammo box isn’t opened up a bit wider so we can catch a better glimpse of the belt-feed, but it’s still awesome. The shoulder belt looks like she’s truly in motion as well, and while it’s not easy to put the weapon in her hands properly, it looks perfect when done right.

And now, since this series is totally not about panty shots and won’t have the girls flash them at you like several times per minute or anything….

Francesca Lucchinis pantsu

You’re totally not gonna see this like all the time in the series!!!!111 Actually, this is probably barely legal by European standards, given her Loli status, but ya know, Japan… Click to enlarge if you really have to!

In my defense: It’s pretty hard to take any kind of picture of hers while not having her flash her panties at least at some angle. :roll: But there you go, serving the classic “blue white stripes”pantsu fetish that seems to exist amongst certain viewers in Japan. Not that I’m complaining or anything. ;)

And now, there is barely any room left to put any more scale figures… Hmmm…

Mar 152016
 

H.265/HEVC logoJust recently, I’ve tested the computational cost of decoding 10-bit H.265/HEVC on older PCs as well as Android devices – with some external help. See [here]. The result was, that a reasonable Core 2 Quad can do 1080p @ 23.976fps @ 3MBit/s in software without issues, while a Core 2 Duo at 1.6GHz will fail. Also, it has been shown that Android devices – even when using seriously fast quad- and octa-core CPUs can’t do it fluently without a hardware decoder capable of accelerating 10-bit H.265. To my knowledge there is a hack for Tegra K1- and X1-based devices used by MX Player, utilizing the CUDA cores to do the decoding, but all others are being left behind for at least a few more months until Snapdragon 820 comes out.

Today, I’m going to show the results of my tests on Intel Skylake hardware to see whether Intels’ claims are true, for Intel has said that some of their most modern integrated GPUs can indeed accelerate 10-bit video, at least when it comes to the expensive H.265/HEVC. They didn’t claim this for all of their hardware however, so I’d like to look at some lower-end integrated GPUs today, the Intel HD Graphics 520 and the Intel HD Graphics 515. Here are the test systems, both running the latest Windows 10 Pro x64:

  • HP Elitebook 820 G3 (tiny)
  • HP Elitebook 820 G3
  • CPU: Intel [Core i5-6200U]
  • GPU: Intel HD Graphics 520
  • RAM: 8GB DDR4/2133 9-9-9-28-1T
  • Cooling: Active
  • HP Elite X2 1012 G1 (tiny)
  • HP Elite X2 1012 G1 Convertible
  • CPU: Intel [Core m5-6Y54]
  • GPU: Intel HD Graphics 515
  • RAM: 8GB LPDDR3/1866 14-17-17-40-1T
  • Cooling: Passive

Let’s look at the more powerful machine first, which would clearly be the actively cooled Elitebook 820 G3. First, let’s inspect the basic H.265/HEVC capabilities of the GPU with [DXVAChecker]:

DXVAChecker on an Intel HD Graphics 520

DXVAChecker looks good with the latest Intel drivers provided by HP (version 4331): 10-Bit H.264/HEVC is being supported all the way up to 8K!

And this is the ultra-low-voltage CPU housing the graphics core:

Intel Core i5-6200U

Intel Core i5-6200U

So let’s launch the Windows media player of my choice, [MPC-HC], and look at the video decoder options we have:

In any case, both HEVC and UHD decoding have to be enabled manually. On top of that, it seems that either Intels’ proprietary QuickSync can’t handle H.265/HEVC yet, or MPC-HC simply can’t make use of it. The standard Microsoft DXVA2 API however supports it just fine.

Once again, I’m testing with the Anime “Garden of Words” in 1920×1080 at ~23.976fps, but this time with a smaller slice at a higher bitrate of 5Mbit. The encoding options were as follows for pass 1 and pass 2:

--y4m -D 10 --fps 24000/1001 -p veryslow --open-gop --bframes 16 --b-pyramid --bitrate 5000 --rect
--amp --aq-mode 3 --no-sao --qcomp 0.75 --no-strong-intra-smoothing --psy-rd 1.6 --psy-rdoq 5.0
--rdoq-level 1 --tu-inter-depth 4 --tu-intra-depth 4 --ctu 32 --max-tu-size 16 --pass 1
--slow-firstpass --stats v.stats --sar 1 --range full

--y4m -D 10 --fps 24000/1001 -p veryslow --open-gop --bframes 16 --b-pyramid --bitrate 5000 --rect
--amp --aq-mode 3 --no-sao --qcomp 0.75 --no-strong-intra-smoothing --psy-rd 1.6 --psy-rdoq 5.0
--rdoq-level 1 --tu-inter-depth 4 --tu-intra-depth 4 --ctu 32 --max-tu-size 16 --pass 2
--stats v.stats --sar 1 --range full

Let’s look at the performance during some intense scenes with lots of rain at the beginning and some less taxing indoor scenes later:

There is clearly some difference, but it doesn’t appear to be overly dramatic. Let’s do a combined graph, putting the CPU loads for GPU-assisted decoding over the regular one as an overlay:

CPU load with software decoding in blue and DXVA2 GPU-accelerated hardware decoding in red

Blue = software decoding, magenta (cause I messed up with the red color) = GPU-assisted hardware decoding

Well, using DXVA2 does improve the situation here, even if it’s not by too much. It’s just that I would’ve expected a bit more here, but I guess that we’d still need to rely on proprietary APIs like nVidia CUVID or Intel QuickSync to get some really drastic results.

Let’s take a look at the Elite X2 1012 G1 convertible/tablet with its slightly lower CPU and GPU clock rates next:

Its processor:

Core m5-6Y54

Core m5-6Y54

And this is, what DXVAChecker has to say about its integrated GPU:

DXVAChecker on an Intel HD Graphics 515

Whoops… Something important seems to be missing here…

Now what do we have here?! Both HD Graphics 520 and 515 should be [architecturally identical]. Both are GT2 cores with 192 shader cores distributed over 24 clusters, 24 texture mapping units as well as 3 rasterizers. Both support the same QuickSync generation. The only marginal difference seems to be the maximum boost clock of 1.05GHz vs. 1GHz, and yet HD Graphics 515 shows no sign of supporting the Main10 profile for H.264/HEVC (“HEVC_VLD_Main10”), so no GPU-assisted 10-bit decoding! Why? Who knows. At the very least they could just scratch 8K support, and implement it for SD, HD, FHD and UHD 4K resolutions. But nope… Only 8-bit is supported here.

I even tried the latest beta driver version 4380 to see whether anything has changed in the meantime, but no; It behaves in the same way.

Let’s look at what that means for CPU load on the slower platform:

CPU load with software decoding

The small Core m5-6Y54 has to do all the work!

We can see that we get close to hitting the ceiling with the CPUs’ boost clock going up all the way. This is problematic for thermally constrained systems like this one. During a >4 hour [x264 benchmark run], the Elite X2 1012 G1 has shown that its 4.5W CPU can’t hold boost clocks this high for a long time, given the passive cooling solution. Instead, it sat somehwere in between 1.7-2.0GHz, mostly in the 1.8-1.9GHz area. This might still be enough with bigger decoding buffers, but DXVA2 would help a bit here in making this slightly less taxing on the CPU, especially considering higher bitrates or even 4K content. Also, when upping the ambient temperature, the runtime could be pushed back by almost an hour, pushing the CPU clock rate further down by 100-200MHz. So it might just not play that movie on the beach in summer at 36°C. ;)

So, what can we learn from that? If you’re going for an Intel/PC-based tablet, convertible or Ultrabook, you need to pick your Intel CPU+graphics solution wisely, and optimally not without testing it for yourself first! Who knows what other GPUs might be missing certain GPU video decoding features like HD Graphics 515 does. Given that there is no actual compatibility matrix for this as of yet (I have asked Intel to publish one, but they said they can’t promise anything), you need to be extra careful!

For stuff like my 10-bit H.265/HEVC videos at reasonably “low” bitrates, it’s likely ok even with the smallest Core m3-6Y30 + HD Graphics 515 that you can find in devices like Microsofts’ own Surface Pro 4. But considering modern tablets’ WiDi (Wireless Display) tech with UHD/4K resolutions, you might want to be careful when choosing that Windows (or Linux) playback device for your big screens!

Feb 252016
 

SlySoft logoIt’s over – after 13 years of being almost constantly under pressure by US-based companies, SlySoft finally had to close its doors. Most notably known for software such as CloneCD or AnyDVD, the Antiguan-based company has provided people all over the world with ways to quickly and easily circumvent disc-based copy protection mechanisms such as Sony ArcCos, CSS, ACSS or BD+ and many others for years.

The companys’ founder, a certain Mr. Giancarla Bettini had already been sued – and successfully so – before an Antiguan court. While it was strictly up to Antiguan Authorities to actually sue SlySoft (because the AACS-LA could not do so themselves due to some legal constraints), this did finally happen in 2012, fining Mr. Bettini for a sum of USD $30.000. That didn’t result in SlySoft closing down however.

What it was that happened exactly a few days ago is unclear, as SlySoft seems to be under NDA or maybe legal pressure as to not release any statement regarding the reasons for the shutdown, quote, “We were not allowed to respond to any request nor to post any statement”. The only thing that we have besides a forum thread with next to zero information is the statement on the official website, which is rather concise as well:

“Due to recent regulatory requirements we have had to cease all activities relating to SlySoft Inc.
We wish to thank our loyal customers/clients for their patronage over the years.”

It should be relatively clear however, that this has to have something to do with the AACS-LA and several movie studios as well as software and hardware companies “reminding” the United States government of SlySofts illicit activities just recently. This would’ve resulted in Antigua being put onto the US priority [watchlist] of countries violating US/international copyright laws. Ultimately, being put onto that list can result in trade barriers being put up within a short time, hurting a countrys’ economy, thus escalating the whole SlySoft thing to an international incident. More information [here].

AnyDVD HD

This little program and its little brothers made it all the way to the top and became an international incident! Quite the career…

It seems – and here is where my pure speculations start – that there was some kind of agreement found between SlySofts’ founder and the AACS-LA and/or the Antiguan and US governments resulting in the immediate shutdown of SlySoft without further consequences for either its founder or other members of the company. If true then SlySoft will surely also have to break their promise of releasing a “final” version of AnyDVD HD including all the decryption keys from the online database in case they have to close their doors forever. This is, what “[…] we have had to cease all activities relating to SlySoft Inc. […]” means after all.

So what are the consequences, technically?

I can only say for AnyDVD HD as according to the forums over at SlySoft, but the latest version 7.6.9.0 supposedly includes some 130.000 AACS keys and should still be able to decrypt a lot of Blu-Rays, even if not all of them.

In the end however, the situation can only deteriorate as time passes and new versions of AACS keys and BD+ certificates are being released, even if you bypass the removed DNS A-Records of key.slysoft.com and access one of the key servers by resolving the IP address locally (via your hosts file). Thing is, nobody can tell when SlySoft will be forced to implement more effective methods of making their services inaccessible, like by just switching off the machines themselves.

But even if they stay online for years to come, no new keys or certificates are going to be added, so it’s probably safe to say that the red fox is truly dead.

AddendumJust to be clear for those of you who are scared of even accessing any SlySoft machines with their real IPs any longer; According to a SlySoft employee (you can read it in their forums), all of the servers are still 100% under SlySofts physical control, and their storage backends are encrypted. They were not raided or anything. So it seems you do not have to fear “somebody else listening” on SlySofts key servers.

PS.: A sad day if you ask me, a victorious one if you ask the movie industry. Maybe somebody should just walk over and tell them, that cheaper, DRM-free media actually work a lot better on the market, when compared to jailing users into some “trusted” (by them) black boxes with forced software updates and closed software. Yeah, I actually want to play my BD movies on the PC (legally!!), and on systems based on free software like Linux and BSD UNIX as well, not on some blackboxed HW player, so go suck it down, Hollywood. I mean, I’m even BUYING your shit, for Christs’ sake…

Oh, by the way, China is actually sitting on that copyright watchlist (I mean, obviously), and they gave us DVDFab. Also, there are MakeMKV and [others as well]. We’ll see whether the AACS-LA can hunt them all down… And even if they can… Will it really make them more money? Debatable at best…

Red Fox logoUpdate: Those guys work fast! While SlySoft is gone, several of the developers have grabbed the software and moved the servers to Belize, the discussion forums have already been migrated and a new version 7.6.9.1 of AnyDVD HD has been released, including new keys and reconfigured to access the new key servers as well. The company is now called “Red Fox” and the forums can be accessed via [forum.redfox.bz].

By now, AnyDVD HD respects the old licenses as well, and this will stay this way for the transition period. Ultimately however, according to posts on the forums, people will have to buy new licenses, even if they had a lifetime license before. They also said they’ll cook up “something nice” for people who bought licenses just recently. Probably some kind of discount I presume.

Still, if I may quote one of the developers: “SlySoft is dead, long live RedFox!”

Feb 232016
 

H.265/HEVC logoAfter [compiling] and running the x265 HEVC encoder, and after [looking at its quality] for animated content, here’s another little piece of information about my experiments with H.265/HEVC. And this time it’s the decoding part. Playing H.265-encoded videos on the PC is relatively easy. On Windows I tend to use [MPC-HC] for this, and on Linux/UNIX you can use [mplayer] or [VLC]. The newest versions of those players are all linked against a modern libav or ffmpeg library collection, so they can decode anything any H.265 encoder can throw at them.

The questions are: At what price? And: What about mobile devices?

H.265/HEVC is costly in terms of computation, and not just in the encoding stage. Decoding this stuff is hard as well. So I looked at two older Core 2 processors to see how they fare when decoding regular 10-bit H.264/AVC and the same content encoded as 10-bit H.265/HEVC, both times at the same bitrate of 3Mbit/s ABR. Again, the marvelous Anime movie “The Garden of Words” was used for this. The video player of my choice for playback was [MPC-HC] v1.7.10, rendering to a VMR9 surface.

On top of that, I can also provide some insight on how relatively modern Android devices will handle this (devices partly without a H.265 hardware decoder chip however!), all thanks to [Umlüx], who’s been willing to install the necessary Apps and run some tests! On Android, [MX Player] was used.

For the record, the encoding settings were like this for x264 (pass 1 & pass 2), …

--fps 24000/1001 --preset veryslow --tune animation --open-gop --b-adapt 2 --b-pyramid normal -f -2:0
--bitrate 3000 --aq-mode 1 -p 1 --slow-firstpass --stats v.stats -t 2 --no-fast-pskip --cqm flat
--non-deterministic

--fps 24000/1001 --preset veryslow --tune animation --open-gop --b-adapt 2 --b-pyramid normal -f -2:0
--bitrate 3000 --aq-mode 1 -p 2 --stats v.stats -t 2 --no-fast-pskip --cqm flat --non-deterministic

…and this for x265:

--y4m -D 10 --fps 24000/1001 -p veryslow --open-gop --bframes 16 --b-pyramid --bitrate 3000 --rect
--amp --aq-mode 3 --no-sao --qcomp 0.75 --no-strong-intra-smoothing --psy-rd 1.6 --psy-rdoq 5.0
--rdoq-level 1 --tu-inter-depth 4 --tu-intra-depth 4 --ctu 32 --max-tu-size 16 --pass 1
--slow-firstpass --stats v.stats --sar 1 --range full

--y4m -D 10 --fps 24000/1001 -p veryslow --open-gop --bframes 16 --b-pyramid --bitrate 3000 --rect
--amp --aq-mode 3 --no-sao --qcomp 0.75 --no-strong-intra-smoothing --psy-rd 1.6 --psy-rdoq 5.0
--rdoq-level 1 --tu-inter-depth 4 --tu-intra-depth 4 --ctu 32 --max-tu-size 16 --pass 2
--stats v.stats --sar 1 --range full

PC first:

Contender #1 is my old Sony TT45X subnotebook, and this is the processor inside:

CPU-Z on a Core 2 Duo SU9600

A Core 2 Duo SU9600 Penryn, which is an ULV processor at 1.6GHz, shown under all-core load, where it doesn’t boost to 1.83GHz any longer (And yeah, this is still WinXP+POSReady2009).

Contender #2 is my secondary workstation at work, that I recently upgraded with an SSD and a better processor we had lying around. It’s using this chip now:

CPU-Z on a Core 2 Quad Q9505

A Core 2 Quad Q9505 Yorkfield, which has been overclocked to a rock solid 3.4GHz.

Let’s throw some video at them! First, we’ll try some good old H.264 on the slow-clocked Core 2 Duo mobile chip:

Core 2 Duo playing the beginning of "The Garden of Words" as 3Mbit H.264/AVC

The Core 2 Duo SU9600 playing the beginning of “The Garden of Words” as 3Mbit H.264/AVC (on a German version of Windows).

We can see some high load there. Mind you, since this is 10-bit H.264, there is no GPU acceleration whatsoever, minus maybe the bicubic scaler, which is implemented as Pixel Shader 2.0 code. Everything else has to be done by the CPU and its SSE extensions. Let’s take a look at the new H.265 then:

Core 2 Duo playing the beginning of "The Garden of Words" as 3Mbit H.265/HEVC

Same thing as before, but with 3Mbit H.265/HEVC.

The beginning of the movie, which shows only some moving logo on mostly uniform background and then some static text does just fine. You can really see what’s happening on screen when looking at the usage curve above. As soon as the first serious video frame with lots of movement starts to fade in, the machine just falls on its face, as the bitrate is rising. Realtime playback can no longer be achieved, A/V synchronization is being lost and a ton of frames are being dropped, resulting in a horrible experience.

Thing is, even with all the frame drops, it’s still losing sync even and falling short of delivering those frames which are still being decoded with the proper timing. It’s just abysmal.

So let’s change our environment to a CPU with twice the cores and roughly twice the clock speed, while staying with the same architecture / instruction set, H.264 first:

Core 2 Quad playing the beginning of "The Garden of Words" as 3Mbit H.264/AVC

The quad-core Q9505 hardly has any trouble with H.264 at all. It’s completely smooth sailing.

And with the harder stuff:

Core 2 Quad playing the beginning of "The Garden of Words" as 3Mbit H.265/HEVC

We can see that the load has roughly doubled with H.265.

Now, H.265 is clearly putting some load even on the quad-core. I’m assuming that with higher bitrates as we would use for 4K/UHD material, this processor might be in trouble. For 1080p and bitrates up to maybe 6Mbit/s it should still be ok however. Of course, with the most modern graphics cards you can give even a Core 2 a companion device which can do H.265 decoding in hardware, like an NVidia GPU that can provide you with [PureVideo] feature sets E or even F, or maybe an AMD Radeon with  [UVD] level 6. But even then, 10-bit content might not be accelerated, so you need to be careful when choosing your GPU. Intel has recently added 10-bit support to some of their onboard GPUs (HD Graphics 5500 & 6000, Iris Graphics 6100) with driver v15.36.14.4080, nVidia added it starting with the Maxwell generation and AMD Radeons still don’t have it as far as I know.

Now, what about mobile devices? A fast enough PC can do H.265/HEVC even without hardware assist, at the very least in 1080p, and likely 4K as well, when we look at modern Core i3/i5/i7 and somewhat comparable AMD Athlon FX chips. How about multicore ARMv7/v8 chips with NEON instruction set extensions?

Let’s look at two Android devices, a Sony Xperia Tablet Z2 (without a H.265 hardware decoder) and a Sony Xperia Z5 phone:

The Tablet features the following CPU:

The Xperia Tablet Z2 uses a Qualcomm Snapdragon 801

The Xperia Tablet Z2 uses a Qualcomm Snapdragon 801 quad-core.[1]

That’s not exactly a slow chip, but an out-of-order execution pipeline with NEON extensions at a decent clock rate. And the phone:

The Xperia Z5 has a Qualcomm Snapdragon 810

The Xperia Z5 has a Qualcomm Snapdragon 810 in big.LITTLE configuration.[1]

So the phone has a very modern 64-bit ARMv8 big.LITTLE CPU setup with four faster out-of-order cores, and four slower, energy-efficient in-order cores. Optimally, all of them should be used as much as possible when throwing a seriously demanding task at the device. Let’s look at how it goes, but first on the older tablet with H.264 for starters:

The Xperia Tablet Z2 playing H.264/AVC.

The Z2 manages to play the H.264/AVC version without any stuttering, but just barely. It has to boost its clock speed all the way to the top to manage.[1]

You’re probably thinking “There’s no way this can work with H.265”, right? Well, you’d be correct:

With H.265, the Xperia Tablet Z2 stumbles.

With 3-Mbit H.265, the Xperia Tablet Z2 stumbles. Full clock speed, all cores under load, no chance to play demanding scenes without massive problems.[1]

It just bombs. Frame drops and stuttering, no way you’d want to watch anything when it goes like that. Some of the calmer scenes (=lower bitrate) still work, but lots of rain all over the frame and the Z2 is done for. So let’s move to the more modern hybrid-core processor of the Sony Xperia Z5 smartphone:

The Z5 playing the 10-bit H.264 on CPU only

The Z5 playing the 10-bit H.264 on CPU only. The octa-core big.LITTLE processor seems to load its fat cores mostly, which makes sense with demanding workloads.[1]

The big Cortex-A57 cores seem to be doing most of the work here, clocking at their maximum speed. Given we’re over 50% load with the most difficult scenes however, some threads seem to be pushed over to the smaller Cortex-A53 cores as well. In any case, the end result is that H.264 works smoothly throughout the movie. But still, load is high, and our only headroom left are some free, slow in-order cores… So, H.265?

The Z5 fails with 10-bit H.264 too. Where is my hardware decoder?!

The Z5 fails as well. While it can cope a little better, scenes like the above are just too much. Where is my hardware decoder?![1]

Something strange is happening now: H.265/HEVC hardware decoders should support this 10-bit H.265 file just fine. But for some reason, MX Player still falls back to software decoding, despite the player being up-to-date – something even a CPU as powerful as a Snapdragon 810 cannot handle for all parts of “The Garden of Words” at the given settings. The really demanding scenes will still fail to play back decently. CPU clock is also lowered a bit now, probably because of power and/or heat management.

My assumption would be that MX Player simply doesn’t support the HW decoder in this phone yet, which is a shame if it’s true. Another reason might be that I used some parameters and/or features of H.265 in this encode, that are not implemented in this chip. Whichever the case may be, the Snapdragon 810 alone cannot handle it either!

Update: After further research it turns out that almost no hardware accelerator supports Hi10p or Main-10 for H.265. In other words: No 10-bit decoding for H.265! It’s possible on NVidias Tegra K1 & X1 due to some CUDA hacks in MX Player, but nowhere else it seems. The upcoming Snapdragon 820 should however support it, and devices based on it should become available around March 2016:

Snapdragon 820s' Advancements

This is what Snapdragon 820 (MSM8996) should give us over Snapdragon 810 (MSM8994), including 10-bit H.265/HEVC decoding in hardware ([source]Russian flag)!

And this concludes my little performance analysis, after which I can say that either you need a relatively ok PC to use H.265, or a hardware decoder chip that works with your files and your software, if you’re targeting other platforms like hardware players or smartphones and tablets!

PS.: Thanks fly out to Umlüx for doing the Android tests!

[1] Images are © 2016 Umlüx, used with express permission.