Friday, June 14, 2013

Wowza Transcoder add-on support

Wowza Media Server has rich capabilities for extending its feature set. As a result both Wowza and third-party developers provide a number of add-ons for multiple media streaming use cases.

Wowza Transcoder add-on is a highly demanded add-on which allows a variety of media transformations. Hence it's very popular among Wowza users. So WMSPanel team decided to support it as well as we previously added support for MediaCaster and LiveStreamRecord add-ons.

To see it in action, just go to "Control" menu and select "Transcoder management".


Accessing management page.
You will see the list of transcoders which are available with Wowza server. Clicking on the transcoder name will bring up transcoder management page.

In this list you can also reset or shutdown any transcoder in a single click.

As everywhere in WMSPanel management pages, there's transaction log, or just history, on this page.

Wowza transcoders list with actions history.
In the "Transcoder info" page there are two major areas - the various transcoder info itself and the list of streams which are currently handled.

Wowza transcoder information and streams details.
Codec information.
General transcoder information contain all parameters available for it including input stream details.
Streams list has existing streams grouped by name and each stream has its video and audio info shown. If you point to a particular codec, you will get a tool tip with extended info.

Later on we plan extending transcoder control capabilities so this post will be updated as long as we make improvements. All features will be covered sooner or later. If you have any inputs for what it should do, or if you have some special cases, please contact us to share your thoughts.

To see functionality this in action, take 2 weeks free trial by signing up and installing our Wowza agent.

Sunday, June 2, 2013

Geo load balancing with Nimble Streamer


Nimble HTTP Streamer is taking more features on board.

Nimble is designed to handle HTTP-based protocols so we primarily focus on their "natural abilities". This is why when customers requested geo-location load balancing we thought of simple HTTP "302 Found" response redirecting the client to designated location. So we just needed to find a convenient way for our users to define redirecting rules, and we found it.

If you need to make the balancing of your HTTP streams based on any combination of HLSHDSSmooth or progressive download, you need to take 2 steps:
  1. Install Nimble Streamer as described in simple installation instruction;
  2. Set up geo redirect routes as described in this post below.
Go to "Control" -> "Edit Nimble Routes", or simply click here if you're already logged in as WMSPanel user.

This page is the main control board for manipulating media streams in Nimble. Here you can define progressive download routes for both origin service and edge pseudo-streaming. Besides you can define HLS re-streaming routes in case you'd like to make simple balancing of those streams.

Nimble Streamer HTTP streaming and load balancing routes.
Here you can now define geo-based balancing in addition to other routes. Click on "Add geo redirect" to enter the geo dialog.

Here you can see the following areas:
  • geo selection fields for choosing country and IP-range;
  • fields for entering servers names;
  • available Nimble Streamers list;
Adding load balancing route.
We used the same geo selection fields as were previously used in Wowza geo-restriction WMSAuth feature set. So for each route you can select a country or an IP range to track. Of course, you can set up any number of routes you might need for your users' distributed geography. IP ranges are also shared between WMSAuth and Nimble routes, so once defined within the system, they can be re-used.

Server names are basically URLs where the incoming requests will be re-directed. You can dynamically add or remove any of those just by clicking on "+ add server" or "- remove". If you add several URLs, then the exact one for handling each request will be selected via round robin.

To make the route work you need to specify which servers will handle this new redirection. Just check the boxes near the names of Streamers for that.

Not all routes are created equal so routes' order does matter. You might have some IP ranges be more primary than some countries routes, and re-streaming routes have higher priority than IP ranges. In this case just drag and drop more important rule to the top and click on "Save routes order" button which will appear right after you complete the drop.

Route starts working within a minute after you've created it.

Having Nimble streamers properly set up, you can have a combination of geo-location load balancing servers, progressive download streamers and HLS re-streamers, connected to HLS streams sources like Wowza, all perfectly fit for your media streaming infrastructure.

Now install Nimble Streamer and try it within your own infrastructure to see it in action.

Thursday, May 30, 2013

WMSAuth Wowza bandwidth limitation

Since the introduction of WMSAuth for Wowza, we've been receiving various customers requests about new features. Some of them has already been implemented and recently we've added bandwidth limitation capabilities.

Now for WMSAuth group containing designated servers any WMSAuth rule may have bandwidth restriction. It's defined as decimal number of Gbps.

Setting bandwidth limit.
As any other restriction with WMSAuth the bandwidth limit may be set for any combination of

  • server;
  • virtual host;
  • application;
  • application instance;
  • stream.

Limitation is being checked and applied when someone tries to connect. Currently consumed bandwidth is compared to the limit. If the limit is higher than current consumption then connection is allowed else connection is rejected.

Before using this feature please install the latest available agent by following the upgrade procedure.

Wednesday, May 29, 2013

Improving Wowza end-user reporting experience


A lot of our customers are streaming hosting providers and they use Wowza Media Server to provide quality services for their clients. So obviously those clients need to see what they pay for, and hosting providers do their best trying to give proper reporting user experience. They find it at WMSPanel.

Let's go through basic features which may be useful for Wowza customers from end-user perspective.

Slicing statistics and user permissions


There's a wide flow of statistical data coming to the panel from Wowza agents. So what an individual user might want from it, is a subset of his own data. One of panel's key concepts is a data slice, which is basically a filter which gets information relevant to client media. This filter shows the same reports as available for admin - real-time, daily stats with connections, traffic and bandwidth, geo and duration, high precision reports, streams reports etc.

Data slice is defined by account admin for any subset of available servers. Each slice may have a list of Wowza application names patterns to be used as a filter for incoming info. So setting servers and applications will set slicing parameters. Check detailed description in this data slicing blog post.

The end users may see the data slices which they are assigned to. Account admin may create any number of user logins and give those people permissions for entering the panel and switching among slices. Read user control details in this post.

Assigning servers to a slice.

Defining details of a slice.

Billing by slices


Wowza traffic billing is a feature based on data slicing. For each data slice, the account admin sets the basic price, included limit and overage price, which is enough more billing in most cases. So as soon as data is gathered into daily stats, the calculated numbers appear in the billing page.

If the admin wants this data to be accessible for slice' end-users, he just enables this capability and people see their billing data right away. The same data is used across daily stats and billing so users are confident about the charges.

Entering Wowza slice billing  details.

White label camouflage


Forcing your clients to go to some third-party resource (even though it's WMSPanel) to show your billing data might be inappropriate for some clients. That's why you might want to equate the panel to your website and make proper branding.

That's where a white label reporting might be the right thing to do. You can assign any number of domains to your account by setting up DNS and adding their names into the branding settings. Each domain, as well as the entire account, may have its logo which appear in the login screen and on the dashboard.

So after white label set up your reporting will look like an internal resource of your main website. Later on we plan allowing customized CSS and favicon so the panel will not be looking much different from any of your own pages.
Nice branded control panel.

Languages adoption, or simply "i18n"


Only 8% of world population speaks English as their native tongue. Another 16% use it as a second or foreign language. So even though most advanced technologies are targeted for people with proper educational level, most non-English speakers prefer getting the information using their language. So we asked our customers to help their clients (hence help us as well) and to contribute translations of panel interface. Our customers know their audience and they know the industry so the translation is adequate.

So far we have Spanish, Portuguese, Italian and Russian full localisations in our bucket. A couple of more to come up soon. UI language can be easily set up via individual user's settings.
Your user will browse his reports naturally.

See it in action


We've made a couple of screen casts about data slices, white label and the daily reports available via the panel. Check them out in our YouTube channel or simply watch here.



Summary

All of the mentioned above gives better user experience hence customer satisfaction. Giving more reporting capabilities leads to good return of investments either by direct re-selling of reporting feature set to your clients or by increasing their involvement and loyalty.

But that's now all features available for your users. Our streams control feature set is also capable of giving a bit of power to their hands. But that's a topic to another story.

Now, if you haven't tried it this all yet, sign up for WMSPanel to try it during 2 weeks of free trial.

Monday, May 27, 2013

Streaming Media East conference notes

Hi!

Now when I'm finally got back home and have won the jet lag battle, it's time to make some summary of my experience from Streaming Media East 2013 conference.

First, I'd like to thank Dan Rayburn, the Conference Chairman and Executive Vice President for StreamingMedia.com, who made it possible for me to get an invitation to the event. WMSPanel team appreciates this very much!

Meeting people, listening to their stories and experience, learn industry's best practices - that's what the conference is all about. There were too many sessions, workshops and exhibits to visit for a single person, so I'll talk about events which I've been part of. I also took a few pictures while listening to the sessions.

I'll be referring to this conference program during my story.

Conference survival kit :)
One of conference halls.


Monday, May 13, 2013

Progressive download re-streaming

Recently we've introduced progressive download support for Nimble HTTP Streamer. It already allowed pseudo-streaming via HTTP partial content delivery. It works via Range header for HTML5 video and Flash player. You can see it in action at this demo.

So now we did the next step and added progressive re-streaming support just as we did for HLS edge re-streaming. What you can do now is to set an origin server containing the content for the progressive download and then set up a number of edges to re-stream it. Needless to say that Nimble streamer can be used as progressive download origin.

Why would you need this whole thing of "origin-edge" for progressive download pseudo-streaming? As always, the primary use cases are load balancing and content delivery speed improvement.

Example of Nimble-based progressive download infrastructure.

How would it work for these cases and how would Nimble help with that?

Friday, May 3, 2013

Nimble pseudo-streaming available

WMSPanel team is excited to announce that Nimble Streamer now supports pseudo-streaming, or progressive download.

Nimble Streamer supports progressive download with "Range" HTTP header. This means that you can scroll to any fragment of the video and it will proceed with downloading from the selected place.

The VOD content may be viewed from Nimble Streamer by means of HTML5, by your end-users mobile players as well as by any Flash player at your users' PCs. Check our demo to see Nimble Streamer in action.

No third-party software is needed. You create a small and cheap Ubuntu virtual server using your favorite cloud hosting, or just use your Ubuntu desktop for trying. It doesn't matter what virtual or physical hardware you use, since the Streamer is very light-weight.

To start using Nimble Streamer, you need to follow simple installation instructions. Currently we distribute the Streamer via Debian packages available in our Ubuntu repository. They are easy to follow so once you bring up Ubuntu, just do a few steps and see a new server appear in Servers page list.

Now you may proceed to configuring server routes. Those are the rules that describe where the Streamer will take the files. It's done similar to HLS re-transmission setup, but it's even a bit more simple.

To start the progressive download setup go to "Control" menu -> "Edit Nimble routes" item.

Nimble Streamer pseudo-streaming and HLS routes.
Here just click "Add route" to set up a new route.

Setting up progressive download VOD content route.
The "file://" prefix in "Domain to" indicated that this file must be taken directly from the file system. The rest of the line is a local path to your content.

Now if your Nimble Streamer server has its own name like "edge01.yourdomain.com", you may set up your favorite player with new connection string like "http://edge01.yourdomain.com:8081/vod/somefile.mp4" and start watching the video served by the Streamer. Port 8081 is the default one for Nimble but you can change it in the server config file. Check our demo web page source to see how we make the URL for our own installation of Nimble Streamer progressive download.

Nimble streamer works both as an origin and as an edge server for progressive download. You can re-stream the pseudo-streaming as an edge server. This will allow building a scalable and flexible load-balancing schemes. This feature is soon to arrive, stay tuned for our updates.

Now try Nimble Streamer by signing up at WMSPanel and installing the Nimble Streamer