Archive

Posts Tagged ‘video’

Xtream Codes IPTV Panel Review – Part 2: Movie Data Editing, Security, Resellers, Users and Pricing Management

October 4th, 2016 5 comments

Dear readers, after part 1 of Xtream Codes Panel v.2.2.0 EVO review, here is part 2. I tried hard to get all in two parts, but “to be exhaustive” there will also have to be a part 3…

Movie Editing Section

xtream-codes-movie-editing

As we can see, it’s only possible to assign a movie into a single category, a SELECT BOUQUET Option under the Category would be more then useful. So while Movie Editor Section is useful right now, it still needs improvement.

Also taking each movie by hand for editing, after, for example, a Main server crash or changing the Main, is really something, a waste of time. Some of the issues / possible improvements include:

  • No mass edit of movies to bouquets
  • If changing the category of a movie, I found no working method to change in a bulk.. Even if I tried to delete the “content” of a bouquet, it was denied.
  • Left Hand Section, Mass Edit Streams allows only live streams to be edited.
  • Stream Tools! To be able to delete the falsely assigned movies. With the result of the complete addition process later on, and the transcoding process has to be repeated all over again…
  • I strongly advice customers/user’s of the Xtream Codes Panel to name their movies in a kind of unique, retrievable way later on. If not, and if you try to sort them later by assigning them in to a bouquets, you stand in front of all the movies, the way you loaded them up. No kind of Movie editing (re-naming) possible, before you load them to transcode. The mass edit movie section is simply missing.
  • This great piece of Software NEEDS A MOVIE EDITING SECTOR

The options available right now:xtream-codes-movie-editing-options

xtream-codes-movie-editing-subtitles-transcoding

  • Manage Categories has to be more specific to meet the needs of the customer.
  • Right now I was not able to really sort the categories to my preferred sequences. Did I miss here options? I couldn’t find it.
  • Edit Category function is limited to change the name only.

xtream-codes-movie-editing-category

  • Again, if you have already tons of movies assigned to a category there’s no other way to assign them in a bulk right now. A time waster.

General Warnings

To be on the safe side, do not fill your HDD up to the limit. Max 70% should give more stability.

Attention: If you rent a dedicated server, seeing the offer for example, let’s say 2x 2TB, you should know that after a normal install, you’ll only get 2TB. That is because one is mirrored, in case you loose the first partition, it would be fatal, right?

So, better let it this way, do not use the whole size. Agreed?

Having issues with reconnecting interrupted streams, I filled Xtream Codes panel with over 200 streams, and around 500 movies. I checked the stopped streams, and most connected again after manually pressing the “start/restart stream” button. But these are rare cases only, overall I must say the platform is absolutely stable.

I found a few times the ‘Guilty-ONE” for this: It was not Xtream Codes Panel, it was the miserable Streams I got from a friend for testing purposes.

Security settings (Fight the Intruders by blocking them)

Handle this setting carefully! Especially if you give a trial List to a customer, he will zapp through the channels quickly, or VLC crash often, how we all know..

Wrong or too hard settings will block him immediately.

A good setting should be as follows:

  1. General Settings->Security Settings->Flood Limit to 6 or 8
  2. Request Frequency in Seconds to 1.

Security Settings Section

Back to the Security “plugins”

xtream-codes-security-pluginsBLOCK IP/CIDR

xtream-codes-security-block-ip-cidr

We see the IP’s or better, the intruders (hint: After you set-up the Flood Limits in General-Security/Settings)

Here we go, nice to look at… but why not show directly the “customer by name with IP”?. In the end, we have to make the decision whether to unlock the IP or keep him locked. It’s only working if a server with a fixed IP started the attack, dynamic IP’s appear soon then if the IP changed.

And in case no internal customer, let’s say a simple “from outside” or no customer would be a great help. Going through the log files  to find out if it us a customer or instead a competitor trying to slow down your server (we are all nosy, aren’t we?) makes no sense and no fun. Reason: time extensive if dozens or hundreds of logs!

Live Streams-Video on Demand Section

Manage Stream/Add New Stream

xtream-codes-live-streams-vodThere is also one relatively “unique” function; you should handle with care, or best ask the seller of the LEGITIMATE streams, if he allows that you use the “Use Direct Source & don’t restream it”. This means all coming traffics are not on your side, the connected server takes it all. You should be able to see the other side. But I guess you know already.

You can also redirect the Stream to the Original Source, so that your customers connect through your own DNS. Doing so, setting to yes, your URL will show up in the Bouquet List later. But again, be aware, choosing NO, your user will not connect to your server in any case. I tested it by letting the user connect over my DNS. I thought, I would see any client connecting through my DNS, but you will not, in both cases. No matter Client Connection Logs or in Manage Lines, he is simply invisible to you. I guess, after all not the smartest idea.

xtream-codes-dns

Security Section

General settings->Security Settings

xtream-codes-security-settings

Useful if you find the “right” setting. The Flood Limit shows the number of requests specified in “Request Frequency”. I started with 5 requests within 3 seconds, result: I got blocked myself and no idea why. I just watched one channel, no fast channel switching, no nothing. This seems to getting interesting, I thought.

Switched to 8 requests in 3 seconds range. Activated my test users… Result: 2 Android boxes getting blocked.

Mhhhh, I go deeper in this then after, and because of English is not my native language, haha, we “none-english” have sometimes a problem to understand the language. And…I found it! My mistake! Definitely to 90% only, haha! And 10% I give to Xtream Codes back, because they should really be more specific about this classy feature, which is highly useful!

Advice: Give 3 options, or 4, the ordinary customer can use! Like: LOW-Standard-HIGH-HYPER Settings, pre-configured! (Also the option for manual settings).

I know I know…but remember this: Many customers are not common with these terms; they simply do mistakes resulting in blocking customers who do nothing wrong at all, which could lead to losing customers.

Standard should be: 10:1, or 20:1 ((flood limit:request frequency), but hard to say for sure in my opinion. And even this could maybe cause some troubles, if a nervous user zapping the channel’s in a lightspeed and the playlist is huge…

For example: Each zapping under 1 second is 1 evil request, collected and memorized by the panel! 10:1  means, 10 times under 1 second is OK, but then… the 11th try would blocked them! This is a hard decision to make for each panel user, if he has a huge playlist with many customers. Some customers could complain, if they get blocked, and I don’t want to talk about the non-stop checking the Security Settings, and look for blocked IPs.

Recommendation: Invest in a DDOS Protection with your server, every hosting provider is offering this. Also let this setting to OFF (0) in the beginning, and get used to everything first. You can then implement the settings you are comfortable with lateron.

Resellers – Registered Users Section

xtream-codes-users-resellers

Reseller Section

Registered Users and Reseller

When I started to work with the panel and getting used to it, this was the first category I started with. I expected something like: REGISTER RESELLER, or similar. Registered means already already registered, right?

Let’s start with “Register New User”. This feature is mainly used, to create a new RESELLER of yours, a now you want to give him access to a reseller panel. Let’s create one!

xtream-codes-register-new-user

As we can see, you have to provide the follwing details for the new user (reseller in this case):

  • Username (Whatever you want to call the reseller)
  • Password (Please 6 digits minimum, out of security reasons, phrases are also useful)
  • E-Mail (Email address of your reseller, without one you can not create a new reseller)
  • Default Language (right now only English is possible)
  • Group Members (see the next Section, Group Members)
  • Reseller DNS (Reseller Only) – Here you can specify the reseller’s own DNSs
  • Credits (reseller Only) – The amount of money the Reseller payed you, usual is 1 credit = 1 UK pound or other currencies)

Section Manage Group Members

xtream-codes-create-new-group
First of all, a little explanation here on this important part. As we’ve already seen above, we can “register” a new user, reseller in this case with “REGISTER NEW USER” option (I would rather see a “Create new Reseller” button). But here is the point: If you register a new future reseller, you have to assign the payment formalities later (ex: 300 Euro = 300Credits), but also how much for 1 month, 3 months or any other kind of subscription (time frame), and the reseller can create lines for his own customers later, and see his own costs each time.

Assigning them (the resellers) all in one category, named reseller, let you later no choice to give different kind of subscription prices. (ex: Reseller A 1 month =6 Euro, Reseller B 1 month 8 Euro), so that’s why Xtream Codes has a great feature in creating groups.

You can simply create a new “group”, let’s say Group elcap in my case, and assign reseller A to it. Now your Reseller A is a Group Member of “elcap” group. Next step, you want to give him prices and time frames of each line he creates.

xtream-codes-price-options

As you can see, I created the trials , 1 month, 3 months, 6 months and 12 months, and also a VOD package for the reseller part of group elcap.

You start with Resellers -> New Package (Adds a new Package)

xtream-codes-resellersWe see the following options after clicking on New Package:xtream-codes-resellers-new-package-1

xtream-codes-resellers-new-package-2

You first need to name the package, mark it as Trial or Official Package (1-12 month or else later, you are free in your decision), you can even pair the line with the ISP provider of your client by first connection. (Attn.: need additional plugin to buy).

Useful only if you create a Package for a RESTREAMER (Restreamers are able to put your bouquets/packages on their server(s) and use them as there own streams), as they have a fixed IP in any case.

In this example we give 20 connections to a Restreamer

xtream-codes-resellers-restreamer

Meaning: You can give your whole LEGITIMATE stream list, or assorted ones, like a bouquet you filled with specific streams before. In any case, your Restreamer you are selling to, is only able to open 20 connections on his server. The amount of connections you assign to him is what he pays for.

Settings Prices with Manage Packages

xtream-codes-resellers-manage-package-price

Edit a packagextream-codes-resellers-edit-package

xtream-codes-resellers-edit-package-2

A complete option to edit your before assigned package (Manage Package->Edit Package).

Here’s the output of my own created packages Create them for your own needs, everything is possible!

xtream-codes-subcription-examples

Manage ROOT (Registered Users)

xtream-codes-registered-users

By clicking on Manage Root you get the following options:

xtream-codes-users-manage-root

Here you can change your ROOT username/password given by Xtream Codes for your panel.

You can change both passwords here later, if you do not wish to use the old ones once given from Xtream Codes after you ordered and paid for your panel. Handle this carefully, write it down and copy it to safe locations, just in case of a crash of the main server (see upcoming part 3, with simulated crash of the Main server)

I initially planned to finish this review into two parts, but there are so many options, I have to do at least one more part.

I also have to repeat Options and Features for better understanding later on. See you guys on Part 3 soon, which should include:

  1. Changing the Main Server (through my extended kind of tests, I worked a couple of days on this, and the results should benefit all of us who are using this software and working with it.)
  2. Finishing the features for good, I promise
  3. The “Have’s” and the “Have Not’s
  4. Enumerations of the Top 5 settings to use
  5. Results after a new installation (Simulated Crash of the Main Server)
  6. The Pro’s & the contra’s
  7. The Competitors of Xtreme-Codes Panel
  8. Be aware of some kind of hosting services (Strange experiences with 2 “Big Ones”! Troubleshootings)
  9. The Conclusion
  10. Preparing a little Manual (PDF format, to help you guys)

[Update: During finishing my work on the huge Part 3 of the Review Xtream Codes Panel Version.2.2.0 EVO, there was yesterday, 08th October, an update to Version 2.3.0 EV0, with a lot of new Features and Improvements!

So, I will need a little longer to finish the Part 3, please stay tuned.]

Review of Xtream-Codes IPTV Panel Professional Edition – Part 1: Introduction, Initial Setup, Adding Streams…

September 22nd, 2016 9 comments

Today I’ll start the review of one of the streaming software available on the market, with version 2.2.0 EVO of IPTV Panel Professional Edition developed by Xtream-codes.

The Software is mainly used for the so-called IPTV broadcasting, but also with great potential for all kind of other content delivery applications such as audio and business streaming, cloud video transcoding, and all other kind of global streams.

What is IPTV?

Wikipedia definition:

Internet Protocol television (IPTV) is a system through which television services are delivered using the Internet protocol suite over a packet-switched network such as a LAN or the Internet, instead of being delivered through traditional terrestrial, satellite signal, and cable television formats. Unlike downloaded media, IPTV offers the ability to stream the media in smaller batches, directly from the source. As a result, a client media player can begin playing the data (such as a movie) before the entire file has been transmitted. This is known as streaming media.

IPTV services may be classified into three main groups:

  • Live television, with or without interactivity related to the current TV show;
  • Time-shifted television: catch-up TV (replays a TV show that was broadcast hours or days ago), start-over TV (replays the current TV show from its beginning);
  • Video on demand (VOD): browse a catalogue of videos, not related to TV programming.

IPTV is distinguished from Internet television by its ongoing standardisation process (e.g., European Telecommunications Standards Institute) and preferential deployment scenarios in subscriber-based telecommunications networks with high-speed access channels into end-user premises via set-top boxes or other customer-premises equipment.

This review will contain results mainly for the “end-user” or business owner, who already owns or bought legitimate streams, as Xtream-codes IPTV software does not provide any video streams, and “only” helps distributing your content.

If starting from scratch, producing your self-made streams, it’s already professionally explained in the video below using Xtream-codes IPTV panel on AMD MOI Pro IPTV streaming server.

I would love to do this by myself, but I would be in need of the necessary hardware. TBS can provides future producers of streams with all the required and necessary hardware.

Installation Process

After you registered at https://xtream-codes.com and placed your order, you get access (after payment) to your unique default root username, default root password, and your CMS Address.

You can now login with both credentials, and start adding your server addresses. Your Server IP and SSH Password is required, and the whole process is pretty straightforward.

Click to Enlarge

Click to Enlarge

xtream-codes-iptv-server-success

Click to Enlarge

If necessary, you can add a second Load balancer Server by the same method. If you need more Load balancers (LB’s) in the future, you will have to pay an extra Fee. Xtream-Codes call this “plugins”, but I guess it’s a simple SSH Protocol.

They activate on their server side, like: 2/4/6 LB’s…. Again, the first LB is free of charge.

The Graphical User Interface (GUI): Xtream-Codes Panel

xtream-codes-iptv-guiIf you are confronted the very first time with it, it might be confusing at first with all the available options, but be assured, that after 1 or 2 days you’ll be getting used to it. Many features and possibilities are waiting for you, and it also a few have’s and have not’s. Let’s start with the “have’s!

One of the great features in version 2.2.0 Evo is the Transcoding process. Here a general overview of the 2 Versions: Profesional and Minimal Editions.

xtream-codes-iptv-panel-professional-version-2

Xtream-Codes also offers a Minimal Edition of this software for a cheaper monthly price (19 Euros per month vs 59 Euros per month)

xtream-codes-iptv-panel-minimal-editionAs you might expect, the professional edition adds several features including:

  • Load Balancing by adding servers (1 is free, all others must be bought)
  • Manage all servers in a very simple and powerful interface
  • MAG Devices Support
  • New powerful transcode System supporting almost every function
  • Every stream is playable (more protocols support)
  • Faster zapping time (instant)
  • Powerful Logging & Search System
  • Stream Statistics
  • Http Live Streaming (HLS) Output
  • iOS/Android Client Area Portal
  • More lightweight

The Menus & Options  of the Panel

Click to Enlarge

Click to Enlarge

 

 

The Transcoding or Video-Conversion process

This is one one of the “Highlights” of Xtream-Codes IPTV Panel. I’ve tested over a hundred different kinds of formats, from Blu-ray-MKV, different AVI’s, FLV, MP4, WMV, MOV and OGG. Each time the transcoding process was successful.

I also tested quite a few homemade AVI’s without transcoding, all watchable later on. But for professional hosting, large sized movies should be encoded before transferred to your server, in my opinion. The reason is mainly the later ability for your future customers to watch the movie streams, without any kind of freezings or bufferings. Due to Internet limitations, and nowadays also server bandwidth problems, the movies should be transcoded in 720p maximum and the file size should be around +/- 1GB each. The bitrate should be somewhere around 2 – 3000k maximum. This would later almost guarantee the freeze free availability of the stream, if the user owns a decent Internet connection. Not everybody have an 200 Mbit/s and up broadband connection.

Sure, there are higher bitrates possible and many customers already crying for lossless FHD’s streams. In my eyes often a wishful thinking. Too many components playing a huge role in the Internet world, and last but not least there’s always the question of bandwidth.

encoding-vs-transcoding

“What’s the difference between encoding and transcoding?” was one of the first questions I had when I started working with video’s and IPTV streaming. I had always used them interchangeably and after a quick Internet search I was surprised that I did not find a clear answer.

While encoding and transcoding both represent ways of converting files between formats, there is a distinct difference:

  • Encoding, by definition, takes analog source content and converts it to a digital format. For example – converting a video on a VHS tape to an mpeg file or a video DVD.
  • Transcoding takes an existing digital format and converts it to a different digital format, like taking a sample video and converting it to an adaptive bitrate format such as HTTP-Live-Streaming.

Despite the clear differences by definition, I’ve noticed that only technical experts tend to use the term with distinction. People getting started with video are often left behind and confused between the terms like I was. I hope that with this short note, we were able to shed some light on this myth….

Here you can see the different kinds of VIDEO and AUDIO transcoding codecs available:

Click to Enlarge

Click to Enlarge

Click to Enlarge

Click to Enlarge

The Preset option allows you to select between ultra fast and very slow transcoding options, which should also affect the video quality.

Click to Enlarge

Click to Enlarge

The Video Profile option (in my opinion too many Apple’s…)

Click to Enlarge

Click to Enlarge

Setting the average video bitrate

Click to Enlarge

Click to Enlarge

Other Transcoding Options

Click to Enlarge

Click to Enlarge

Main server and load balancer monitoring

Click to Enlarge

Click to Enlarge

3rd Load balancer

xtream-codes-multiple-load-balancer

Load Balancer Settings

Load balancing Chart? What this feature is doing exactly? As stated before, IPTV Panel Pro has load-balancing mode that will redirect your users automatically to other servers in a case of huge load. The load-balancing chart is being used to control the SOURCE flow or how the stream source will be transferred to your servers.

You can draw any flow you want depending on your needs.

iptv-load-balancerBoth servers will take the stream from the source in the configuration above.

iptv-load-balancer-proxy

In this case, the server “Load balancer 1” will read the stream from the source and at the same time he will transfer the same stream to the second server.

Implementing LEGITIMATE Streams in your Panel and Managing Streams

Attention: Many customers make here a major mistake, with the result of missing audio and other misbehaviors in the stream later. What Video & Audio Codec should I use if I transcode later?

Xtream Codes has added many video & audio codecs but not all of these codecs are supported for IPTV use. To be on the safe side, you should always use the H.264 as video codec and AAC as audio codec for IPTV use.

iptv-panel-live-stream

As we can see, importing a live stream, a movie or a radio broadcast stream was never that easy. We start by adding a live stream.

Two options here: One single stream, or multiple streams! If you import multiple streams, you need the file/stream list containing all of your streams.

Click to Enlarge

Click to Enlarge

We have several options later, how the streams can act. For better understanding, it’s theoretically possible that you “restream” your legitimate bought streams later. In other words…in some cases, you may want to sell these streams to other resellers.

Through this setting you can block your streams to be “restreamed” later on, if you really try to sell some of your streams in time by choosing a category or bouquet later for your customer. Streams marked here as “yes” will not work for your customer.xtream-codes-restream-block

xtream-codes-stream-control Very useful are the “Quicktools” in the Manage-Streams Section:

xtream-codes-quicktools-menu

xtream-codes-quicktools

xtream-codes-quicktools-streams-options

Adding a New Movie

You can also add a movie you uploaded to your server previously, or even from a remote source.

Click to Enlarge

Click to Enlarge

xtream-codes-file-server

If you add a movie from your own server, it works over the integrated file browser, while if you want to stream from a remote location, simply type in the location.

Click to Enlarge

Click to Enlarge

You can set read “Input Source in Native Frames”, and  if you are transcoding, set it to YES.xtream-codes-imdb-database

You like to have a picon for your Movie? Here you can add a IMDB ID.

But here we go…Movies! It is common in this business, that once a while a server is having issues, and most times the load balancer also gives up. If this happens, and no matter the backup of your data bank, you are in troubles. You may have tons of movies in backup, and must re-assign them all again to a server manually.

This feature is definitely missing in the editing movies section. There are only 3 parts: Add New Movie, Import Multiple Movies and Manage Movies.

The scenario: You transfer in an emergency case over ssh protocol sftp-wise all your movies to an other server. You set up a new OS or reinstall one, and you get a new root password. After making a new server with Xtream Codes Panel, so far, so good. But you have to assign them later, all of them! A mass-edit regarding assigning movies to the main server or one of the load balancers would do it! Saving a dramatic amount of time for a customer. I repeat myself here, I mentioned that above already, regarding “add a new stream”. No reason for me to think of right now, that it should not be possible to assign this stream to a bouquet, and not only in to a category.

Adding a New Radio

It’s the same procedure as adding a video stream. You can import a single or multiple Streams from a file.

Creating new Client/Customer Lines xtream-code-user-details-2

Creating a new customer line is a piece of cake; just fill up the necessary fields. Like user, a unique password if you wish so, you even can use the created line in a stalker portal, but watch out then, please read:

xtream-codes-iptv-panel-mag-devices

If a customer has a MagBox for example, the better option is to bind the box over the MAC address. It is even possible to bind a before created simple m3u Playlist to a newly created MAC address. Simply go to “Add New Mag Device” and associate the existing line to it.

xtream-codes-iptv-panel-mag-stbPortals for Mag-Devices are like “http://yoursite.com:port/c/”

Features, Options, Security

xtream-codes-security

Restreamers Finder

Another useful feature is the so-called Restreamers Finder. In these days there are many restream software’s for ordinary users on the market, like Hola addons for Android Systems and many more.

Block User Agent

Not absolutely clear about this feature. What is a “User Agent”? A User Agent is normally a short string that web browsers and other applications send to identify themselves to web servers. Unfortunately, most browsers falsify part of their User-Agent header in an attempt to be compatible with more web servers. Useful, but I find that the manual assigning of each single user agent is a hell of a work. There are preconfigured block lists already in the Internet and it would be from great help, if Xtream Codes would allow loading a whole list.

Block IP/CIDR

IP blocking is clear, but what is a CIDR? Classless inter-domain routing (CIDR) is a set of Internet protocol (IP) standards that is used to create unique identifiers for networks and individual devices.

The IP addresses allow particular information packets to be sent to specific computers. Shortly after the introduction of CIDR, technicians found it difficult to track and label IP addresses, so a notation system was developed to make the process more efficient and standardized. That system is known as CIDR notation.

Resume? Absolutely useful!

There is still some work to do specially in the editing sector, one of the most important parts of streaming software:

  • Searching for Bad Movies (a dog’s work if hundreds/thousands of movies)
  • Adding a new stream and assign it direct into a bouquet, would be more then useful.
  • Mass edit Movies features (ex:Assign Movies to a server in bulk)

Part 2 (…coming soon)

  1. Finishing the part of the most important features
  2. Comparison the “Have’s” and “Have Not’s”
  3. Results after a new installation (Simulated Crash of the Main Server)
  4. The Pro’s
  5. The Contra’s
  6. The Competitors of Xtreme-Codes Panel
  7. Be aware of some kind of hoster (Strange experiences with 2 “Big Ones”! Troubleshootings)
  8. The Conclusion and resume

Ending the first part, I want to say thanks to Xtream-Codes for giving me the tools and the necessary “LB Plugins” (Naaaa, not a plugin, Xtream-Codes! Call it a Addon better!) to start.

[Update: Part 2 is up @ Xtream Codes IPTV Panel Review – Part 2: Movie Data Editing, Security, Resellers, Users and Pricing Management ]

AOMedia AV1 is a Royalty-free, Open Source Video Codec Aiming to Replace VP9 and Compete with H.265

July 3rd, 2016 22 comments

The Alliance for Open Media, or AOMedia, is a new non-profit organization founded in 2015 by Amazon, Cisco, Google, Intel Corporation, Microsoft, Mozilla, and Netflix, and more recently joined by AMD, ARM, and NVIDIA, whose first project is to develop AV1 royalty-free and open video codec and format to provide an alternative to H.265 / HEVC, and a successor to VP9.

Alliance_For_Open_Media_AOMedia

The project is a team effort combining teams working on Daala, Thor, and VP10 video codecs, and while AFAIK, AV1 specifications have not been released yet (target: Q1 2017), the organization has already released an early implementation of AV1 video decoder and encoder under the combination of an BSD-2 clause license and the Alliance for Open Media Patent License 1.0 , which can be found on googlesource.com.

So I’ve had a quick my myself following the instructions, by first downloading one uncompressed YUV4MPEG sample:

and the source code:

before building it:

The last command will install the headers, and aomdec video decoder and aomenc encoder.

We also need some scripts to be placed in the path:

Now we can run the script in the directory for the sample(s):

The command will encode all y4m files in the directory at 200 kbps up to 500 kbps at a 50 kbps increment. Encoding only uses one core, my machine is powered by AMD FX8350 processor, and you can see encoding is currently very slow well under 0.5 fps for a CIF video (352 x 288 resolution), but that should be expected because VP9 encoding is already slow (its successor is expected to require even more processing power), and first software implementations are usually not optimized for speed, they are just meant to show the encoding works.

The test scripts will create a bunch of AV1 video files in baseline directory: husky_cif.y4m-200.av1.webm, husky_cif.y4m-250.av1.webm, etc… as well as husky_cif.y4m.stt with some statistics.

Decoding is much faster as it should be:

You can play back the videos with mpv using aomdec for decoding. For example:

AOmedia_AV1_Video_MPV

New video codecs normally take years to replace old ones, but if it gains traction AV1 will likely be used along side VP9, H.265 and H.264 for several years. Considering software and silicon vendors, and content providers (Google/YouTube, Amazon, and Netflix) are involved in the project, I’m quite confident the AOMedia AV1 codec will become popular, and hardware decoder are likely to be implemented in ARM, Intel and  AMD SoCs in a few years.

Thanks to Ohmohm for the tip.

ProView S3 Affordable 3-Axis Smartphone Stabilizer Helps Shooting Better Videos (Crowdfunding)

February 5th, 2016 No comments

Smartphone stabilizers (aka gimbals) for smartphones allow you take much better videos while on the move, as they smooth the shaking that occurs when you walk, run, or bike. Stabilizers are currently available, such as KumbaCam or other white brand stabilizers, are sold for $250 to $400, but Navin, a Taiwanese company, has designed a cheap video stabilizer for smartphones with ProView S3 that starts at $125 + shipping via Indiegogo.

Proview_S3_Smartphone_Stabilizer

ProView S3 3-axis stabilizer can handle larger size smartphones, features orientation sensors, precision motors, and stabilization algorithms to provide smooth video recording.

Some of ProView S3 specifications and features include:

  • Adjustable mount from 67mm to 78 mm width
  • Wind resistant thanks to algorithms and mechanical design
  • Connectivity – Bluetooth 4.0 for wireless firmware updates
  • Dual IMU sensors with tilt, roll, and pan motors.
  • Underslung shot- You can take videos upside down too…
  • 4 operational modes – Full Lock (no motor active), follow pan (pan motor active), follow tilt (tilt motor active), or full follow ()pan and tilt motors actives)
  • Single joystick for control: On/Off, mode switching, angle control.

The best way to see how well this works are video samples. They shot videos while running with two smartphones, one without the stabilizer (first video), an one with ProView S3 (second video) that the difference is clear. The second video reminds me of first person shooting games.


The crowdfunding campaign has a fixed $300,000 funding targer, so the project will only go ahead if they reach that amount. Only the first 500 gimbals (battery and charger included) are listed for $125, with the price going up as more rewards are claimed up to $160. Shipping is not included and varies from $5 (Taiwan) to between $25 and $75 to the rest of the world for the few countries I checked. Delivery is scheduled for July 2016. Beside the Indiegogo page, you can also ask questions on the company’s Facebook or Twitter pages.

K1 Plus Amlogic S905 TV Box Review

November 28th, 2015 63 comments

Videostrong KI Plus is one of the first Amlogic S905 TV boxes to be launched on the market, and it also happens to be one of cheapest model selling for around $45 on various sites, and it’s even available for $39.99 on GearBest for Black Friday / Cyber Monday. I’ve posted the specifications and pictures of the device previously, and after updating the firmware, I’ve finally completed the review.

First Boot, Settings and First Impressions

As usual, I’ve connected a whole bunch of cables and peripherals to the device to make the power supply can handle it, including a USB hard drive, a USB webcam, a USB keyboard, a USB hub with two RF dongles for Tronsmart Mars G01 gamepad and MeLE F10 Deluxe air mouse, as well as a HDMI, optical audio and Ethernet cables, and a speaker connected to the 3.5mm AV jack and powered by one of the USB port of the device. Turn on the power, and the device will boot automatically (no need to press the power button), with a typical boot taking around 48 seconds.

Click for Original Size

Click for Original Size

The launcher is quite basic, which can be advantage for a TV interface, with the time, a list of customizable shortcuts which including IPFox and Private Live TV by default, and 5 icons on the bottom for Kodi 15.2, Explorer file manager, the list of apps, settings, and a web browser. There are also some icon on the bottom right for networking and storage. IPFox asks you to scan a QR code to buy something, and Private Live TV will download an IPTV plugin and work out of the box with various TV channels including Sky Sports F1…

Click for Original Size

Click for Original Size

I quickly tried one of the streams and it worked OK.

The settings’ user interface is basically the same as found as on Android 5.1 Amlogic S812 TV boxes such as WeTek Core, minus some features like automatic frame rate switching.

Click to Enlarge

Click to Enlarge

The most interesting settings include:

  • Network – WiFi, Ethernet, and VPN configuration
  • Display
    • Screen resolution: Auto, 480p-60Hz, 576p-50Hz, 720p 50/60Hz, 1080i 50/60Hz, 1080p 24/50/60Hz, 4K2K 24/25/30/50/60Hz or SMPTE
    • Screen position
    • Screen rotation (middle port, force land, original)
  • Sound – System sound (On/Off), and Digital sounds (Auto detection, PCM, HDMI or SPDIF)
  • Preferences – HDMI CEC (But not working: “This remote device does not support CEC”), and Play back settings with “HDMI self-adaption” On/Off. I don’t really understand what that means…

I had no problem to connect to my WiFi router, and setting video to 4k2k 60Hz also worked perfectly via Onkyo TX-NR636 AV receiver or LG UHD TV. However, the box did not always keep my video output settings, often falling back to 1080p50. I only tested the AV port by connecting it to my speakers, and it worked fine with both HDMI audio and stereo audio outputted at the same time.

About_Mediabox_K1_PlusYou can get to Lollipop Android settings by selecting More Settings. Bluetooth is not built-in into the device, and is completely missing from the settings, so even if you decided to connect a Bluetooth USB dongle it would not work. All other usual settings appear to be here including Printing, Language & input, accessibility and so on. A single 4.66GB partition is used for both app and data with around 4.21GB free space.

The “About Mediabox” section reports KI Plus model running Android 5.1.1 on top of Linux kernel 3.14.29. There’s also a link to the Update&Backup app in this section, but OTA firmware update is not enabled. The sample was sent to my by a manufacturer (Videostrong), and they probably rely on their customers to handle this. This firmware is not rooted by default.

The IR remote control work pretty well, and I could use it reliably as far as 10 meters. The IR learning function is also doing its job and I could program with TV’s remote control Volume, power, and TV input keys. I have no used the remote that much since I prefer using MeLE F10 Deluxe remote control in Android that’s much more user friendly that IR remotes. Since the status and notification bars are missing, I had to use the Home key on the IR remote during testing…

Google Play Store did not work well at all the first time, with most application being incompatible with this device. That’s why I delayed the review, and after installing a new firmware, everything works pretty well. Applications that require telephony, Bluetooth, and GPS can’t be installed, but that’s fine, as well as the ones which can’t be installed where I live (country limitations). Finally I installed Amazon Underground to load and play Riptide GP2 3D racing game.

Power handling has been implemented correctly as I could cleanly power off the device with either the power button on the unit and the remote control. The remote control can also be used to power on the device. There’s no standby mode, so the device will fully boot each time you turn it on.

For those interested in power consumption, I’ve done some measurements both without USB devices, and one USB hard drive in two modes:

  • Power off – 1.3 Watt
  • Idle – 3.2 ~ 3.4 Watts
  • Power off + HDD – 1.3 Watt
  • Idle + HDD – 6.1 ~ 7.4 Watts

There’s still some residual power used in power off mode, but at least the USB ports are turned off.

Temperature is under control most of the time, except possibly when playing games. I measured 42°C and 53°C on the top and bottom of the enclosure after running Antutu 5.7, but after playing Riptide GP2 for about 15 minutes the temperature went up to 50°C and 62°C, and I noticed a lower frame rate in the game.

After updating the firmware, the first impressions were quite good, as despite its low cost, the system was responsive, and stable, which everything from networking to video output working fine, except for video output changing randomly? after a power on.

Video Playback on KI Plus

I usually playing videos from a network share over Ethernet and using whatever Kodi version is pre-installed on the device. So far none of manufacturers have used Kodi from Google Play, and Videostrong is no exception. So I have some Kodi 15.2 app in the device with various add-ons.

Amlogic_S905_Kodi_15.2

For some reasons, the resolution is shown as 1280×720 @ 60Hz in the System information when the video output is set to 4k2k-60Hz, and despite the framebuffer being set to 1920×1080 as we’ve seen with some of the screenshots above.

Kodi_1280x720But when I went ahead with testing videos samples found on linaro website, I realized something was clearly wrong:

  • H.264 codec / MP4 container (Big Buck Bunny) – 480p/720p/1080p – Letterboxed
  • MPEG2 codec / MPG container –  1080p – Letterboxed
  • MPEG4 codec, AVI container 1080p – Letterboxed
  • VC1 codec (WMV) – 1080p – Letterboxed
  • Real Media (RMVB), 720p / 5Mbps – OK
  • WebM / VP8 – OK
  • H.265 codec / MPEG TS container (1080p) – Letterboxed
  • WebM / VP9 (no audio in video) – OK

So while all videos could play, most of them would be letterboxed.

Kodi_Letterbox_Amlogic_S905
So with this bug in mind, and my contacts telling me either Amlogic had not spent much resources on Kodi this time, or that many patchsets were still submitted to Kodi to fix Amlogic S905 support, I decided to give up on Kodi on this device, and instead do all my testing with Video Player app in Android. That means you’ll either need to wait for Kodi 16, or go with the daily builds.

Later, I still decided to give Kodi a try with the “reliability” test, playing a 2-hour 1080p movie… and I worked just fine, with a some 3800 skipped frame reported by Kodi’s log overlay maybe because the mismatch between video output and video frame rate. So I was confused, until I saw the video output bug kicked in to force video out to 1080p50, and the System info reported 1920×1080 @ 50Hz…

Amlogic_S905_1080p_kodiSo that means Kodi 15.2 pre-loaded in the box works at 1080p resolution, but has a bug at 4K. VideoStrong should provide a 4K TV to their developers…

I did not re-test the videos at 1080p in Kodi 15.2, as I’m expecting 2 to 3 more Amlogic S905 TV boxes, and I’ll ahve plenty of opportunities to test Kodi on Amlogic S905, so instead I’ll report results in Video Player, using Ethernet, unless otherwise stated.

Linaro samples, plus Elecard H.265, and a low res VP9 video:

  • H.264 codec / MP4 container (Big Buck Bunny) – 1080p – OK
  • MPEG2 codec / MPG container –  1080p – OK
  • MPEG4 codec, AVI container 1080p – OK
  • VC1 codec (WMV) – 1080p – OK
  • Real Media (RMVB), 720p / 5Mbps – OK
  • WebM / VP8 – OK
  • H.265 codec / MPEG TS container (1080p) – OK
  • WebM / VP9 (no audio in video) – OK

I started to see some issues, when I switched to some higher bitrate videos :

  • ED_HD.avi – Blackscreen
  • big_buck_bunny_1080p_surround.avi (1080p H.264 – 12 Mbps) – Video OK, but no audio
  • h264_1080p_hp_4.1_40mbps_birds.mkv (40 Mbps) – OK
  • hddvd_demo_17.5Mbps_1080p_VC1.mkv (17.5Mbps) – Could be smoother, and no audio
  • Jellyfish-120-Mbps.mkv (120 Mbps video without audio) – Not very smooth (played from USB hard drive, as Fast Ethernet could not handle this file).

The audio issues are probably due of the lack of DTS and Dolby licenses, and I could confirm it in the audio test below.

Video PCM Output HDMI Pass-through S/PDIF Pass-through
AC3 / Dolby Digital 5.1 No audio OK (Dolby D 5.1) OK (Dolby D 5.1)
E-AC-3 / Dolby Digital+ 5.1 No audio OK (Dolby D 5.1) OK (Dolby D 5.1)
Dolby Digital+ 7.1 No audio No audio Audio Formats Not Supported over S/PDIF
TrueHD 5.1 No audio OK (TrueHD 5.1)
TrueHD 7.1 No audio  OK (TrueHD 7.1)
Dolby Atmos 7.1 No audio Continuous beep and Dolby D 5.1 shows in AVR
DTS HD Master No audio DTS 5.1 only DTS 5.1
DTS HD High Resolution No audio DTS 5.1 only DTS 5.1

So if you don’t have AV receiver you are out of luck to get any audio, unless you use Kodi, which may not work that well right now, or some other app that also decoded DTS and Dolby by software.

One of the main selling point of Amlogic S905 SoC is support for 4K video including 10-bit HEVC, and it’s doing a pretty good job, as long as you play from a USB hard drive:

  • HD.Club-4K-Chimei-inn-60mbps.mp4 – OK from USB HDD, but buffering a lot from network.
  • sintel-2010-4k.mkv – OK, but no audio.
  • Beauty_3840x2160_120fps_420_8bit_HEVC_MP4.mp4 (H.265) –  OK
  • Bosphorus_3840x2160_120fps_420_8bit_HEVC_MP4.mp4 (H.265) – OK
  • Jockey_3840x2160_120fps_420_8bit_HEVC_TS.ts (H.265) – OK from USB HDD, but buffering often from network
  • MHD_2013_2160p_ShowReel_R_9000f_24fps_RMN_QP23_10b.mkv (10-bit HEVC) – OK
  • phfx_4KHD_VP9TestFootage.webm (VP9) – 3 to 4 fps
  • BT.2020.20140602.ts (Rec.2020 compliant video) – OK from USB HDD (first time ever!), but buffering from network, or even stopping in some instances.
  • big_buck_bunny_4k_H264_30fps.mp4 – OK
  • big_buck_bunny_4k_H264_60fps.mp4 – Audio/video synchronization issues, and the video could be a little smoother
  • Fifa_WorldCup2014_Uruguay-Colombia_4K-x265.mp4 (4K, H.265, 60 fps) – Excellent video decoding, but no audio…
  • Samsung_UHD_Dubai_10-bit_HEVC_51.4Mbps.ts (10-bit HEVC / MPEG-4 AAC) – Perfect from HHD, but buffering a lot from SAMBA share.
  • Astra-11479_V_22000-Canal+ UHD Demo 42.6 Mbps bitrate.ts (10-bit H.265 from DVB-S2 stream) – Most of the time OK, but it will freeze and the same exact point every time for several seconds. (tested on USB drive only)

You can watch a demo with most of these files via the post entitled “H.264 & H.265 4K Video Playback on Amlogic S905 Android TV Box“. While VP9 and H.264 @ 60 fps are not supported by current revision of S905 processor, I understand a new revision of the silicon should support VP9.

Video Player reports “can’t play this video” when I try to play Blu-ray ISO files such as Sintel-Bluray.iso and amay.iso, so I think it’s just not supported by the app. 1080i MPEG2 video samples (GridHD.mpg & Pastel1080i25HD.mpg) played OK, but Hi10p had the same artifacts issues as on Kodi on Amlogic S812, and lacked the subtitles.

I’ve played some stereoscopic 3D videos to see if the system could decode them (my TV does not support 3D):

  • bbb_sunflower_1080p_60fps_stereo_abl.mp4 (1080p Over/Under) – OK
  • bbb_sunflower_2160p_60fps_stereo_abl.mp4 (2160p Over/Under) – Audio only (Would require a dual 4K decoder)
  • Turbo_Film-DreamWorks_trailer_VO_3D.mp4 (1080p SBS) – OK

Lack of DTS/Dolby support was the main issue when I played several H.264, DViX/XVid, VOB, MKV, and MP4 movies, as many did not play audio at all, and Video Player app can not handle FLV videos, nor IFO files (although VOB is OK).

I installed Antutu Video Tester 3.0 manually, and the score (906 point) is pretty good, although not quite as high as on Amlogic S812 devices (1,000+ points).

Click to Enlarge

Click to Enlarge

If you are using premium video streaming applications such as Netflix, it might be important to check whether the level of DRM support, or whether any DRM is actually installed. This could easily be checked thanks to DRM Info app.

DRM_info_K1_PlusAnd sadly, even the basic Widewine security Level 3 is not installed. As a reminder, Widewine Level 1 is required for HD and UHD video playback.

Visit “Where to get video, audio and images samples” post and comments section for links to video samples.

Network Performance (Wi-Fi and Ethernet)

A 278MB file is transferred between a SAMBA share and the internal storage three times using ES File Explorer in order to test WiFi and Fast Ethernet performance. But during the first test,  I only did it twice because the transfer rate was stable but stuck at 130 KB/s during the whole transfer, and it took over 30 minutes for each transfer. Clearly the worst result ever, and at the time my phone could transfer the same file at over 2MB/s. But I tried again, before publishing the results, and the results are much better @ 3.45 MB/s , but I can’t explain what happened…

Performance in MB/s (Click to Enlarge)

Throughput in MB/s (Click to Enlarge)

Amlogic S905 SoC can support Gigabit Ethernet, but K1 Plus is only fitted with Fast Ethernet components, and file transfer performance is under average at about 6MB/s (48 Mbps).

Performance in MB/s

Throughput in MB/s

It looks better while using iperf with “-t 60 -c 192.168.0.104 -d” to test dual duplex transfer for 60 seconds, with a very good Fast Ethernet performance.

Throughput in Mbps

Throughput in Mbps

iperf output:

Miscellaneous Tests

Bluetooth

Bluetooth is not support by KI Plus.

Storage

FAT32 (micro SD card), NTFS, & exFAT (USB hard drive) partitions could all be mounted, but the same bug as on Amlogic S812’s Android 5.1 firmware meant the free space was wrongly reported as 10MB, making the NTFS and exFAT partition basically read-only.

File System Read Write
NTFS OK Not really (10 MB free space)
EXT-4 Not mounted Not mounted
exFAT OK Not really (10 MB free space)
BTRFS Not mounted Not mounted
FAT32 OK OK

I had to skip USB storage benchmarks, but I could still check out the internal storage with A1 SD bench app, which reported 22.71MB/s read speed and 8.67 MB/s write speed.

Read and Write Speeds in MB/s (Click to Enlarge)

Read and Write Speeds in MB/s (Click to Enlarge)

Clearly not the best performance, but it was to be expected for a $40 products, and I have not found it to affect the performance of the device much.

Gaming

I have never seen Candy Crush Saga on device expect when using SoC with Mali-400 GPU, and it played without issue on K1 Plus ising an air mouse. Beach Buggy Racing felt a little sluggish, and once I boosted the graphics settings to “high resolution” it started to become choppy, and at time the game seems to be slow to respond to gamepad inputs. Riptide GP2 was about the same story, but it started pretty well, then set the graphics setting to high resolution, and the game was quite not as smooth, and the game even exited/crashed once. Furthermote, I noticed the frame rate to get worse, the more I played, so the GPU must be throttling when the SoC gets hot, leading to performance degradations. So Amlogic S905 does not seem the best platform for gaming, and better stick with the more powerful Amlogic S812 or Rockchip RK3288 SoCs.

K1 Plus Benchmarks

Before running any benchmarks, let’s see what CPU-Z detects…

Click to Enlarge

Click to Enlarge

The app does not know Amlogic S905 processor, but it probably detects an ARM Cortex A53 quad core processor clocked between 100 MHz and 2.02 GHz, coupled with an ARM Mali-450MP GPU. The model is called KI Plus (p20x), the board p20x, the UI resolution is set to 1920×1080, there’s 807MB total RAM in the system, and 4.66GB internal storage. It’s running an aarch64 Linux kernel version 3.14.29 as reported previously.

K1_Plus_Antutu_5.7.3
I had already run Antutu 5.7.3 to compare Amlogic S905 and Rockchip RK3368 performance, but following the firmware update, I ran it again, and it yielded a marginally higher score of 29,167 points.

Please also find Vellamo 3.0 and 3DMark Ice Storm Extreme results below for reference.

K1_Plus_Vellamo_3.0

Click to Enlarge

Click to Enlarge

Conclusion

It’s quite amazing that you can now get an Android TV box with 4K video playback and HDMI 2.0 support for about $40. However, there’s still work to be done, as while their a good based with a reasonably good user interface, and surprisingly smooth video playback at 2160p resolution using Video Player app, the pre-installed Kodi 15.2 version was unusable at 4K resolution with most videos letterboxed, DTS and Dolby licenses are missing, there’s no DRM installed at all, and various other bugs need to be fixed.

PROS

  • Recent Android 5.1 OS firmware that is both responsive and stable
  • Video Output – HDMI 2.0 up to 2160p 60Hz; 24/25/30/50/60 Hz refresh rates supported; AV port (tested with speakers)
  • Impressive 4K H.265 (10-bit) and H.264 video playback in Video Player app
  • Dolby 5.1, DTS and TrueHD audio pass-through is working.
  • Proper power handling
  • IR remote support IR learning function, and has a good range (>10 meters)
  • 4x USB ports
  • Very good value for money (once issues can be resolved)

CONS

  • Pre-installed Kodi 15.2 version does not work well for 2160p video output is selected (1080p output looks better); automatic frame rate switching is not working either.
  • HDMI – Dolby Digital 7.1+, DTS HD and Atmos pass-through not working; CEC not working; Video output resolution set in settings is not always used at next power on.
  • Missing DTS and Dolby support for PCM output
  • No DRM installed, even Widewine Level 3 required for SD playback on relevant apps.
  • WiFi performance may be erratic (TBC), very good sometimes, and near stall speed at others.
  • 3D games such as Beach Buggy Racing and Riptide GP2 are not playing very smoothly, and performance may degrade with play time (and higher heat).
  • No option to show status and notification bars, no Download icon in app list.
  • Lacks Bluetooth support
  • USB hard drive partitions (NTFS / exFAT) reported as having 10MB free only, basically rendering the partitions read-only.

There are also IPTV apps that depending on your point of view can be PROS or CONS, and OTA firmware update is missing, but this may be due to Videostrong being a manufacturer, and not a brand, so they rely on their customer to handle firmware updates with their own servers and branding.

Videostrong was kind enough to send this first Amlogic S905 box sample for review, and if you are a distributor or resellers, you could contact the company via their Alibaba product page. Individual can purchase K1 Plus (aka Ki Plus) on retail sites starting at $39.99 including shipping on GearBest, GeekBuying, eBay, Amazon US, Aliexpress and others.

How to Take Screenshots and Record Videos in Android mini PCs without Root Access

January 6th, 2015 No comments

I’ve started to test BFS 4KH Android TB box featuring HiSilicon HI3798M processor. I’m also the first things I normally do is to check for built-in screenshot support, and if not, I simply install a screenshot app like Screenshot Ultimate. This normally works pretty well, but the firmware is not rooted, and the usual root method for HiSilicon devices does not work, as it fails at the adb root stage with the message: “aabd cannot run as root in production builds”. So I was out of luck, and people who sent the sample for review do not seem to check / answer their email in a timely manner. ScreenShot Ultimate provides “No Capture Method Help“, but I found the instructions long, and it required me to install download and install something extra. So instead I check if I could do something with adb instead.

adb can connect via USB or Wi-Fi, and for most device you’ll have a USB OTG port to connect it to your computer. If developers options are not enabled in Android Settings, go to “About Device”, and click on the build number of 7 times. You should now be able to go to “Developers Options”, and enable USB debugging, something I had to do even though I had to use Wi-Fi since my box does not come with a USB OTG port.

You’ll also need to install adb. In Linux, at least Ubuntu / Debian, it’s easy to install, and I already had this:

For other OS, you may need to install the Android SDK.

If you are using USB, the setup is done. If you need to use Wi-Fi instead, you’ll need to find your Ethernet or Wi-Fi IP address. After enabling USB debugging, port 5555 should be open:

and try to connection with adb.

The rest of the instructions are the same whether you connect via USB or Wi-Fi, For a screenshot, I followed the instructions here to capture an image in a single command:

The sed part is to get rid of the end of line character sent via adb. The image can be found in your PC as screen.png. In my case, the image capture and transfer over Wi-Fi is a little slow, as it usually take around 5 seconds. But at least it works, and it’s even more convenient than using a Screenshot app, at least for my use case.

Scrrenshot Taken with adb (Click for Original Size)

Scrrenshot Taken with adb (Click for Original Size)

While I was at it, I also checked about screen recording, and found some instructions on CNET which should work for Android 4.4 and greater.. Basically, you just have to run:

I have not tried to use the redirection as with screencap command line, because I believe it would have been too slow. So once you are done with recording, press Ctrl+C, get back the video to your PC and optionally delete it on the device to reclaim storage space.

That’s the result I got.

No too bad. At first, I thought “Hey, it might be possible to record online video that way!”, but a closer inspection of the file property quickly changed my mind.

adb_video_property

It recorded at 12 frames per second (maybe a limitation of the hardware), and more importantly there’s no audio, so even if you could record a video at a decent framerate, you’d still have to record audio separately, and mix video and audio at a latter stage, not the most convenient way….

More options for screenrecord command can be found on Android Developers’ ADB page, or by running:

Review of Kimdecent CS868 mini PC Powered by AllWinner A31

May 18th, 2013 8 comments

Kimdecent sells some cheap RK3188 mini PCs such as QC802 for $76, but instead of sending me yet another RK3188 device, they agreed to send CS868, an HDMI TV dongle powered by AllWinner A31 quad core processor, so that I could review it. This mini PC comes with 2GB RAM and 16GB Flash, the latter being larger than the 8GB flash found in most other devices, and is available for $95 on Kimdecent Aliexpress store. More details about the specifications are available on Unuiga U28 post since the hardware is the same. In theory, AllWinner A31 has a much slower CPU than Rockchip RK3188, but its PowerVR 544MP2 GPU should outperform the Mali-400 MP4 found it the Rockchip processor, and A31 supports 4K2K video decoding. In this post, I’ll show some unboxing picture, give my first impressions, test Wi-Fi performance, video playback capabilities, and run some benchmarks.

CS868 Unboxing Pictures

I received the device in a parcel with lot of bubble wraps, so the package was not damaged,  but there’s not much to say about the package as it’s just a no name “mini PC for Android OS” without specifications, or other useful information.

CS868 mini PC and its Accessories (Click to Enlarge)

CS868 mini PC and its Accessories (Click to Enlarge)

Inside the package, we’ll find CS868 mini-PC with a metallic casing, a short HDMI cable, a 5V/2A power supply, a microUSB to USB cable for power, and microUSB to USB female cable for the microUSB OTG port of the device, and a not-so-useful user’s manual in English and Chinese explaining how to use Android on mini PCs.

CS868_mini_PC

A closer look at the device reveals a fully metallic casing, HDMI male connector, a micro USB OTG port, a micro SD card slot, another micro USB port for power, and a full USB host port. There are lots of ventilation hole on both side for cooling the device.

You can also watch the unboxing video.

First Boot, Settings, and First Impressions

Since Cortex A7 is supposed to have a lower power consumption, I’ve tried to power the device directly from the USB port of my TV, unfortunately it won’t go further than the boot animation. So I’ve connected the RF adapter for the Mele F10 to the USB port, and used the provided power adapter to power the device, and after a few seconds, the device will boot and you’ll have to choose between 2 launchers:

  • Standard Android Home Screen
    CS868_Android_Home_Screen
  • A 3D launcher designed for TV
    CS868_3D_Launcher

I’ll keep using the standard Home Screen since I find it a bit more convenient with the input device I use.  We have the Volume buttons, and a power button in the status bar, but no option to go to full screen. You’ll also notice a 4K widget, which is an interesting media player I’ll describe in more details in the video section.

CS868_About_TabletI’ve gone to the setup menu to configure Wi-Fi. The device also supports Wi-Fi direct, but not Bluetooth, nor Ethernet, ven with external USB dongles. You can also  setup to device for VPN access, as a hotspot, and add a 3G USB dongle.  The screen section lets you select 720p, 1080i, and 1080p modes at either 50 or 60 Hz, and you can also choose 1080p24. A slider is also available to let you zoom in/out to adjust your screen overscan if needed. There’s an option for Audio output, but clicking on it, just exits the Settings, so audio pass-through is not available. Screen Lock option is available in the System Settings, so if you require your device to be lock this should be possible (I haven’t tried). Developer options all seem available including USB debugging, CPU usage, GPU usage and more.  In the “About tablet” section, we find out CS868 is indeed the model, and this device runs Android 4.1.1 on top of Linux 3.3.0. The firmware is dated 2013/05/06, it’s rooted, and can be downloaded via Kimdecent website.

Google Play worked fine, and I could install most apps I tried such as Antutu, Angry Birds Star Wars, MX Player, YouTube, Dead Trigger, and more. The only exception was Sixaxis Controller, but this is normal behaviour, as the device does not support Bluetooth.

The system is pretty responsive, although It does not feel as fast as RK3188 devices,  and I can experience slowdowns just after boot, give it one or two minutes to be fully responsive, and while installing many apps via Google Play. The device did not hang during use, but there are still some annoying issues. I lost audio 3 times during my few hours of testing (reboot required), Wi-Fi failed to initialize once (reboot again), and at one point the device was stuck in the boot animation “AllWinner Tech A31 Quad Core” forever. Restarting the device did not help, so I had to flash the firmware via PhoenixUSBPro.

Wi-Fi Performance

Contrary to my habits where I have one and only section for Wi-Fi and video testing, today I’ll reserve a full section to Wi-Fi, as I have a story to tell…

As I started to test video playback, and noticed very similar problem to what I experienced with Tronsmart T428, that is 1080p video would just no play smoothly. So I stopped video playback testing, and went straight to my “transfer a file from SAMBA to flash over Wi-Fi” test. The result was catastrophic, as a 278MB file took 7m 46s to transfer, at an average rate of about 600KB/s, by far the worst result I’ve ever seen (Other devices usually take 3 to 4 minutes to transfer this file). Real-time transfer speed shown in ES File Explorer fluctuated greatly but never went over 1MB/s. Two consecutive devices with terrible Wi-Fi performance? Impossible!

I remember once I had a USB Wi-Fi dongle that was extremely slow using mixed 802.11b/g/n setting in my router, and the performance improved massively by setting the router to use 802.11g only. So I did that, and the performance improved, but not enough to my taste: 5m 45s (~800KB/s) , and the transfer started very fast at 1.60M/s until 80%, to collapse at the end around 200KB/s.

Then I had an unthinkable idea, what if my router (TP-LINK WR940N v1) , or rather its firmware, was the cause of my Wi-Fi misery?

I went to the router setup interface and found some information about the firmware:

  • Hardware version WR940N v1/WR941N v4 00000000
  • Firmware: 3.9.18 Build 100104 Rel.36350n.

A Google search quickly directed me to the firmware download page of my router, with a more recent firmware: 3.13.9 Build 120201 Rel.54965n. So it looked like my firmware was just over 2 years older than the latest available version, I downloaded the file, and upgraded it.

Let’s try that file transfer test again: 1m 30s, or 3.09MB/s. That’s the fastest speed I’ve ever seen with any of the little devices I tested. Of course, I can’t use that number to compare to other devices without repeating the test for the earlier devices (which I may do), but at least Wi-Fi transfer speed won’t be the limitation for the video playback tests.

The moral of the story is that if one of your Android mini PC has poor Wi-Fi performance, don’t start to open the case and try to add an external antenna, check your router has the latest firmware revision first.  I’ll have to check the effect this new router firmware has on T428 as well.

CS868 Video Playback

I’ve installed MX Player for this purpose, and made sure the hardware decoder is used, or mention it if software decode is used instead.

Let’s started with samplemedia.linaro.org videos from a CIFS/SAMBA share in Ubuntu 13.04:

  • H.264 codec / MP4 container (Big Buck Bunny), 480p/720p/1080p – OK
  • MPEG2 codec / MPG container, 480p/720p/1080p – OK
  • MPEG4 codec, AVI container 480p/720p/1080p – OK
  • VC1 codec (WMV) – Video OK, but audio suffers from short static noise (<1 second) from time to time
  • Real Media (RMVB) 720p – OK for RV8/RV9/RV10, but MX Player switched to SW decode
  • WebM 480p/720p/1080p – OK

I’ve also played several movies in AVI, VOB and MKV container formats, and they could all play, although for some files buffering at the start was pretty long (20 to 30 seconds), and some, but not all, appeared to suffer from audio/video sync issues. MOV videos from my Canon point and shoot camera will buffer as with all other devices I’ve tried (over Wi-Fi). The status bar will automatically hide when playing videos.

I’ve also tried higher bitrate videos:

  • ED_HD.avi (1080p MPEG-4 – 10Mbps) – The start is OK, but in some scenes where the bitrate must increase a lot, the video is very choppy.
  • big_buck_bunny_1080p_surround.avi (1080p H.264 – 12 Mbps) – OK
  • hddvd_demo_1080p.mkv (1080p VC1 – 17.5 Mbps) – The video can’t play smoothly most of the time.

There’s very good support for different audio codecs on the device:

  • AC3 – OK
  • Dolby Digital 5.1 and Digital+ 7.1 – OK
  • Dolby TrueHD 5.1 & 7.1 – OK
  • DTS-MA and DTS-HR – OK

I’ve also tried with one of my 4K2K video samples: HD.Club-4K-Chimei-inn-60mbps.mp4. At 60Mbps, it’s impossible to play over Wi-Fi, so I copied to the flash, and played it with MX Player. The only problem is that is uses software decode on that file, so I had to revert to using 4K Video Player included with the device, and it played perfectly.

4K VideoPlayer really showcases the power of AllWinner A31 VPU, as you can see your video file lists in thumbnail, and all 15 thumbnails are playing your videos. You can also open several videos and arrange them in different windows. I tried with 4, and they all seemed to play simultaneously smoothly. Watch the video below to see what it looks like. It may not be that useful, but I find it’s pretty neat.

CS868 Benchmarks

I’ve installed both Antutu 3.3, and Quadrant, but the latter refused to run.

CS868_Antutu

T428 got about 15200 points, and as expected CS868 gets a lower score with 10,559 points. The RK3188 device is almost twice as fast when it comes with RAM, and CPU integer and floating point scores, which is due both because of the difference architecture (Cortex A7 vs Cortex A9), and frequency (1.0 GHz vs 1.6 GHz). The GPU scores are about the same, although I expected A31 to outperform RK3188 in this particular test. The flash write speed seems much better in CS868 compared to T428 (35.8MB/s vs 7.1 MB/s), but I’m not sure how reliable this test is.

Quadrant and Antutu system information show the CPU frequency ranges between 120 and 1008 MHz, the screen resolution is 1280×720, there’s a total of 1660 MB RAM available to the system, the rest being probably reserved for the VPU, and about 1200 MB are available.  The 16GB NAND flash is partitioned into 2 partitions: a 1GB partition for apps with 746MB available, and a 12.24 GB partition that is basically empty.

Inside CS868

CS868 looks like a pain to open, so I skipped that part. Luckily, Linuxium did it before me, and we can still have a look inside.

(Click to Enlarge)

Click to Enlarge

The board is fitted with a largish heatsink.

(Click to Enlarge)

(Click to Enlarge)

Once we removed it we can see AllWinner A31, the 16GB flash, and 4 RAM chipsets, but the pictures are quite not clear enough the see the name of the components. [Update: Better pictures are now available on G+ Mini PCs’ Community]

(Click to Enlarge)

(Click to Enlarge)

On the other side, we’ve got four more RAM chipsets, and flash, as well as what looks like a Realtek Wi-Fi module. There are also 6 pads (LED, 3V3, D-, D+, GND, and WPS), but none of those should be useful for serial access. Maybe it’s now possible to debug using D-/D+ pins (USB), I don’t know.

Conclusion

CS868 mini PC has potential, but as it stands the firmware need some improvements, as HDMI audio may cut, and once Wi-Fi failed to initialize. I also had to re-install firmware since the device refused to boot, however I may be partially at fault here, as several times I just disconnected and reconnect power to reboot the device without using the power button first. Performance wise, CPU performance is much slower than RK3188 based devices, and 3D GPU tests appear to be roughly equal according to Antutu, so A31 devices may have to be priced lower than RK3188 to become more interesting. Video playback is where CS868 stands out, it managed almost all files I threw at it, with the only issue being WMA audio, and some long buffering time with a few videos. HDMI pass-though could be a nice feature to have for some.

Concerning Linux support, the main advantage of AllWinner A31 devices such as CS868 is that the source code for Linux and U-boot is already available, and this may take a few more months before RK3188 source shows up. However, performance in Linux is likely to be poor for a quad core devices, and GPU acceleration won’t be available due to the PowerVR GPU. Ian Morrison ran a subset of Phoronix Suite tests in a chroot in Android, and found that for some tests results are about the same or even lower than Rockchip RK3066 devices, mostly those relying on single core performance.

Tronsmart MK908 Quad Core HDMI TV Stick Review

April 27th, 2013 14 comments

Yesterday, I published some pictures of MK908, and this morning I updated it to the latest firmware, so it’s time to review this mini PC powered by Rockchip RK3188 quad core Cortex A9 SoC.

First Boot, Settings, and First Impressions

First of all, the firmware update has not changed the Home Screen, and we still get a standard Android Home Screen with an animated wallpaper. Screenshot and volume buttons are shown in the status bar, but there’s no soft power button, and no full screen button. Hopefully the power button can be added in next firmware update, and as we’ll see later the lack of full screen button is not really an issue.

MK809 Android Home Screen (Click to Enlarge)

MK809 Android Home Screen (Click to Enlarge)

As usual, About_TV_MK908I’ve gone to the settings menu to configure Wi-Fi, and I had no problem to connect. The device also supports Bluetooth (built-in), and you can setup to device with VPN, as a hotspot, and add an Ethernet or 3G USB dongle. So connectivity options look pretty good although I’ve only tested Wi-Fi. There’s an HDMI section that let you chosee between 1080p, 720p, 576p or 480p at either 50 or 60 Hz, and you can also zoom in/out to adjust the UI to your screen. However, there’s no option for HDMI audio output, so the audio will just be downmixed, and HDMI audio pass-through is not available. There are plenty of options available in Developer options including USB debugging, CPU usage, GPU usage and many more.  In the “About TV” section, we’ll find the model number (MK908), and the device is running Android 4.1.1 with Linux kernel 3.0.36+.

I’ve installed about 20 applications with Google Play including Antutu, ES File Explorer, MX Player, Temple Run 2, YouTube, Facebook.., and I had not problem here, which is quite rare. The firmware is already rooted, so you can install applications requiring root access such as Titanium backup.

All applications could run smoothly, except some games are not playable with a keyboard and mouse (Note to self: Buy some Bluetooth game controller… Done!). I could play Angry Birds Star Wars, and TurboFly HD demo, but other games such as Subway Surfers and Shadow Guns requires some other input device. I could seldom see the CPU use the full 4 cores, except with benchmarks. But to push the device a bit, I installed a large game and run Video to MP3 app in the background while playing TurboFly HD (3D games), and the device could handle the load without issues.

The device feel very snappy, everything is very smooth and responsive, and it did not hang, crash or suddenly reboot during my few hours of testing, so the firmware is stable too. For those of you who worry about overheating, you don’t need to be, as MK908 does not get hot, just a little warm, thanks to the internal heatsink.

MK908 Video Playback and Wi-Fi Performance

There are 4 media players pre-installed:

  • ES Media Player
  • Video Player
  • PPTV Phone
  • Video

But I just install MX Player, as this is one of the best player available,. If the codec is not supported by hardware, it will switch to software mode, so I made sure that H/W decoding is enabled for the video I tested.

I started testing with samplemedia.linaro.org videos from a CIFS/SAMBA share in Ubuntu:

  • H.264 codec / MP4 container (Big Buck Bunny), 480p/720p/1080p – OK, but for 1080p, the video plays for 1 or 2 seconds, then freezes to buffer a few seconds, then plays normally until the end. So this issue is minor.
  • MPEG2 codec / MPG container, 480p/720p/1080p –  OK
  • MPEG4 codec, AVI container 480p/720p/1080p – OK, but same buffering issue for 1080p as H.264/1080p
  • VC1 codec (WMV) – Fail (buffering forever)
  • Real Media (RMVB) 720p – OK for RV8/RV9/RV10, but same buffering issue as H.264/1080p
  • WebM 480p/720p/1080p – OK

I’ve also played several full movies (AVI and MKV), and they could all play flawlessly. FLV videos also played fine, but MX Player switched to software decode for most videos. However, .MOV videos from my Canon camera will buffer, but none of the mini PCs or set-top boxes I own can play those files over Wi-Fi smoothly. I did not the play 1-2s, buffer, and play again issues I experienced on samples with any of the movies I tried.

One a side note, when you play videos on this system, the status bar will automatically hide, so you can enjoy the movie full screen.

Since Wi-Fi performance seems quite good, I’ve also tried higher bitrate videos:

  • ED_HD.avi (1080p MPEG-4 – 10Mbps) – Starts out pretty good, but after a while the audio starts to cut intermittently, and in some scenes the bitrate must be too high, and video playback is affected as well.
  • big_buck_bunny_1080p_surround.avi (1080p H.264 – 12 Mbps) – Very choppy, and audio cuts though the full videos.
  • hddvd_demo_1080p.mkv (1080p VC1 – 17.5 Mbps) – It plays, but it just have to buffer the video every 10 seconds or so.
Again, I haven’t seen any Android devices pass this test over Wi-Fi, and it’s the only devices that nearly managed to play Elephant Dream smoothly.

I’ve also tested some videos and one audio filewith common Audio codecs:

  • DTS (Audio file) – Only static noise
  • AC3 – OK
  • Dolby Digital 5.1- OK
  • Dolby Digital+ 7.1 – No audio
  • Dolby TrueHD 5.1 & 7.1 – OK
  • DTS-MA- OK
  • DTS-HR – TBD, as the video fails to play.

So it seems there may be more work to be done for proper audio support.

It did not try XBMC, but Liliputing did test it, and it does not work very well for now. XBMC 12.1 won’t run at all. XBMC 13 Alpha 2 will run, but there’s no hardware video decoding support, and many playback issues.

Finally, I’ve copied one video (278 MB) between the network share and the NAND flash to test Wi-Fi performance and it  took exactly 3 minutes (1.54MB/s), and it’s one of the fastest devies, but still slower than Measy U2C which only took 2m46s (1.67MB/s).

MK908 Antutu and Quadrant Benchmarks

Both Antutu 3.3 and Quandrant Standard Edition could run in the device, which is quite rare for the latter.

MK908_Antutu

Without surprise the Antutu score (14,464) is excellent, although below the scores achieved on RK3188 tablets (18,000), but this also seems to be the case Antutu score are lower on mini PCs than tablets. As a comparison, Antutu gets up to 10,000 on MK808 (Finless ROM), but Finless ROM will also be available with MK908, and some others RK3188 mini PCs, so I’m pretty sure the score will increase with time. You’ll also notice this score puts MK908 on par with Google Nexus 10 and just a bit lower than HTC One X or Samsung Galaxy S3.

MK908_Quadrant

Quadrant Score for MK908 (Click to Enlarge)

The Quandrant score (4307) also shows the great performance of the device.

For some 2D and 3D tests looked choppy on both benchmark, although I could see most GPU tests were rendered at 50 to 60 fps. I’m not sure what causes this, and I cannot experience this issue with standard applications and games.

Rockchip RK3188 can support 1.8GHz in theory, but is clocked at 1.6GHz here, and I think it’s the same for tablets currently sold. I don’t know if it is a limitation due to the silicon, or overheating.  When I look at the system information section of the device, I can see the CPU frequency ranges between 312 and 1608 MHz, the screen resolution is 1280×672, there’s a total of of 2048 MB RAM, and 1432.80 MB are available (after running Task Killer). The 8GB NAND flash is partitioned with a 1GB partition called “Memory” in Antutu (660 MB free) and a 5818 MB partition called “SD card” (5798 MB free).

Conclusion

MK908 is the fastest mini PCs I’ve ever used, it just feels blasting fast, and the firmware is also stable, which to be honest, I did not expect since this is based on a new processor. Wi-Fi performance is excellent, and the status bar hides automatically when playing videos either with MX Player or YouTube. Video playback is pretty good too, but there’s still need to be some improvements, mainly because some VC-1 videos fail to play, and some audio codecs does not seems to be support DTS and DD+ 7.1. I’m a bit confused to why DTS-MA works however. The lack of soft power button is also a negative.

But overall, the positives far outweigh the negatives, which can all be fixed by firmware update. Speaking of which, I’ve been told the device would get a new firmware with Android 4.2 within one week.

Geekbuying sells the device for $89.99 including shipping, and it’s also available on some Aliexpress stores for the same price. It’s nearly double the price of RK3066 based device with similar features, albeit with less memory and processing power, but if you run many applications it’s definitely worth it.