April 19, 2013

Speaking your language

Recently WMSPanel team introduced some new interface languages.
Our service now provides these localizations:

We plan introducing Turkish, Arab, German, Dutch and other languages on demand.

Why are we doing this?

First, let's see who uses our solution. It is used by various types of businesses. Many of them are streaming hosters which provide infrastructure which is used by other companies to transfer their content. So these hosters provide Wowza reporting and streaming control to their customers via data slices and white label panel.

Those end-users are located all over the world and they speak a large variety of languages. So if the reporting is provided in plain English, that is fine for someone but most people like very much to browse the web with their native language which is always most favorable.

So what we do is we help our customers improve their services' user experience. Hence, increase the added value of their services.

That's also why we ask our customers to help us translate the interface. They know their clients! And they know their language better than any non-native interpreter we hire.

Now if you don't see your language in the list of supported languages, no problem, just let us know about it. We are either already working on it, or ready to collaborate on the translation with you.

Read more about WMSPanel streaming reporting.

Related documentation

End user reporting for WowzaWhite label branded panelUser permissions managementData slices for statisticsStreamed slices for WowzaScreencast for data slices and white labelSSL white label panel

April 18, 2013

Spanish translation in online now

We are excited to announce that WMSPanel now speaks Español!

So all of our existing and future customers from all over Latin America and of course Spain will now enjoy this beautiful language in our panel de administracion Wowza.

We'd like to thank all of our supporters who translated the prompts and the texts. Here they are, listed in the alphabetical order of company names:
So you can just go to Settings menu and choose Español among others.

Enjoy and let us know if you'd like to see any other languages at WMSPanel.

April 17, 2013

HLS re-streaming mapping setup and usage

In the previous post about new Nimble HTTP Streamer we've got a description of general server functionality for streams re-transmission, or "pseudo-streaming". Now let's see how you can set it up for HLS and Smooth re-streaming.

Installing and operating

All installation steps are described at Nimble Streamer installation page. Basically an admin must do those simple steps:
  1. Install the server software from Debian package.
  2. Register the new installed server in WMSPanel by just 1 command.
  3. Restart the server.
Follow them as described in installation procedure before continuing.

Setting up routes mapping

Once you've installed the server, it will appear in servers list within several seconds:

Now go to server details and click on Edit routes. You can also use Control / Edit Nimble Routes menu.

Here you can see two sets of fields - From, To, Assigned servers and URL for player. See route description below for details.

Nimble Streamer routes list.
To change route settings, click on its name. To create new route click on Add re-streaming route.

Route editing for has 2 field sets.

Where incoming requests are coming. It's "From" column in servers list. Here you need to specify the domain and path where your incoming requests go to. Your server may handle a big number of domains or IPs so the Domain field should have domain or IP with a port number. This field is optional and if you don't fill it in, Nimble will listen to its default port 8081 at all IP addresses available for current server. Path is the path which is requested during the connection. You can set up "/" and it will accept all incoming requests.

Where incoming requests must be redirected. It's "To" column in servers list. Domain is the host where the request from user connection is forwarded to. It's also domain or IP and its port. This is a mandatory field. You must enter some existing host, like "localhost:1935" etc. Path is the path which will be requested at the host which is used for forwarding. All path requests are mapped as /path_from* -> /path_to* so whatever is entered in "Path from", it will be used as is for "Path to".

If your origin stream uses SSL for streaming and your URL has HTTPS in it, you need to check Use SSL checkbox in this dialog.

Enabling SSL support for HLS origins.

Each route may be applied to several servers at the same time. Just use check boxes to select them. You need to select at least one to make it applied. The selected and applied servers name make "Assigned servers" column in servers list.

Applying route to multiple servers.
Adding these simple routes, you will configure the logic you need for you case.

Further usage

Now when mapping is set up, you can start using the server. You may configure your players to request your streams from new server using its IP or domain name and port 8081. You can set up any other port you like in the config here: /etc/nimble/nimble.conf.

For your convenience we show possible base URLs that you can use for your players in "URL for player" column of servers list. Just put your media file after trailing slash and it's ready to go.

For example your Nimble streamer runs on liveshow.nimblestreamer.com and you want it to handle requests for edge.mynetwork.com at port 1935 where you have /live application. So you set the rule as follows.
Domain from: just empty, since Nimble listens to all IPs of your server on port 8081.
Path from: /
Domain to: edge.mynetwork.com:1935
Path to: /live
That's it. Click on Add and several seconds after these rules will be sent to Nimble and processed properly.

OK, so now you can point your players to new URL: http://liveshow.nimblestreamer.com:8081/. Nimble will do everything else.

Nimble Streamer can listen to any other port, check this blog post about running Nimble on privileged ports like port 80.

If you'd like to protect your content on edges from hot-linking you may use hotlinking protection.

You may also use Nimble as origin server for HLS via RTMP to ABR HLS transmuxing,  MPEG-TS UDP conversion to HLS and MP4 transmuxing to HLS VOD streaming.

Contact us if you have any questions regarding this settings procedure or the Nimble Streamer in general. We'll be posting updates on new features and use cases in this blog and Twitter.

Related documentation

Nimble HTTP StreamerTransmuxing RTMP to ABR HLS, MP4 transmuxing to HLS VOD streamingMPEG-TS UDP conversion to HLS with NimbleSmooth Streaming supportNimble configs explainedNimble Streamer HTTP hotlinking protectionNimble Streamer geo-location restriction,  HLS caching for effective re-streamingRunning Nimble on privileged ports

Introducing Nimble Streamer

Today our team is excited to announce a new product. It's called Nimble Streamer and it's a light-weight HTTP edge server.

HTTP adaptive streaming becomes the mainstream these days. Latest pike of interest was made thanks to Apple's HLS which is currently supported by iOS and Android devices. Also, growing support at PCs has been recently extended with latest JWPlayer 6 which brings HLS capabilities via Flash application.

Wowza does a great job for serving all HTTP protocols and it's a perfect choice for a wide variety of customers. However some customers face the need for installing Wowza on edge servers for load balancing purposes and the cost of ownership becomes a dilemma because of server hardware requirements. That is why people are looking for light-weight solutions based on popular HTTP servers like Apache and nginx. These web servers work great for serving traditional content like text or images, while media content (primarily video) needs special treatment as video/audio transmission has different nature in compare with other static binaries. Thus web servers are not properly handling some of corner cases such as pre-loading of content chunks, sessions priority settings for premium vs. free content, bit-rate smooth switching, protecting against DDoS, rippers protection etc. All these things along with protocol-specific optimizations and tuning are nearly to impossible to implement based on traditional HTTP servers.

So knowing of this kind of problem WMSPanel team implemented a light-weight HTTP edge server which would work in a tandem with Wowza for live streams to perform HTTP adaptive streaming efficiently.

Take a look at this SlideShare to get a general overview.

How does it work?

You set up a number of Nimble edge servers and set up your load balancer to send HLS HTTP requests to them. Those requests will be processed by respective Nimble edge to decide whether to give cached chunks or forward request to Wowza.

Nimble streamer can work easily on a small virtual server being installed via a Debian package. You'll pay a small server monthly fee and a traffic expenses. So the cost of ownership will be relatively less than in case of using other solutions.

HLS streaming features

Right now it does the following:
  • HLS re-transmission. Simply set up mapping rules and start transmission via new edge server.
  • HLS chunks caching. HLS chunks can be cached on out side  off-load origin server and increase transmission speed.
  • High performance and low resources usage because it's a native Linux application.
Later on more actions will be allowed on each edge. It's going to be pre-roll advertising, QoS control, DDoS attacks prevention, geo- and IP-based restriction etc.

What about control and reporting?

Nimble Streamer is brought to you by WMSPanel team. So as you might expect, WMSPanel completely supports this server.
  • Full control via WMSPanel to set up server settings for re-transmission mapping.
  • WMSPanel reporting which includes real-time and retrospective charts, daily reporting for connections, traffic, bandwidth, duration and geo-location. Check this post and screen cast for details: http://blog.wmspanel.com/2013/02/wowza-daily-statistics-review.html
  • Shared data slices and white label for reporting to your customers. Check this screencast to see it in action.
  • Hot-linking protection and domain lock.
  • Geo-location restrictions.
So regardless of server type you use - Wowza or its Nimble edges, you will get the same great reports.

Progressive download / pseudo-streaming

Progressive download is a very popular and simple way of data transmission. Now Nimble Streamer will be able to process progressive download (AKA pseudo streaming) without any extra software required. This is a streaming, not the re-transmission. Of course, the same control and reporting capabilities are available out of the box so Nimble is a complete progressive download solution. It works both as an origin and as an edge server making it possible to make complete progressive download infrastructure.

Why not just use nginx or Apache modules?

nginx is a great product as well as Apache, no doubts. They've made revolution in web industry. But even though they are handling most of aspects of HTTP standard, there are still cases which do not allow making them as complete solutions for media delivery. Just because media streaming is more than simply handling HTTP requests. Of course, there's a number of modules out there. But they are missing the following points:

  • weak configurability - e.g. for nginx you need to re-build the server in order to install any module and to go through configs to set it up properly;
  • weak reporting - yes, you can parse logs, but it still needs some processing and it misses points like bandwdth or duration;
  • no features that are out of scope of handling HTTP requests, like pre-roll ads insertion or pay-per-view, or streams hot-linking protection etc. It's just an "alien" functionality for traditional HTTP server.

So basically is you just need to stream a bunch of files, then nginx with mp4 module could do the right thing for pseudo-streaming or even HLS re-transmission. But looking for some advanced things would lead to a complete media-specific solution like WMSPanel Nimble Streamer.

Now, sign up and follow installation instructions from Download page. Contact us if you have questions or comments regarding this new product of ours.

Related documentation

Nimble HTTP StreamerNimble configs explained, Transmuxing RTMP to ABR HLSHLS re-streaming set upSmooth Streaming supportGeo load balancing with Nimble StreamerRAM caching for effective re-streamingNimble disk cache usageNimble Streamer HTTP hotlinking protectionNimble Streamer geo-location restriction,

April 16, 2013

WMSPanel nominated for Streaming Media European Readers Choice Awards


We're glad to announce that WMSPanel is now the nominee of 2013 Streaming Media European Readers' Choice Awards.

Take a minute to sign up and vote for WMSPanel here:

You can vote for one nominee in each category, but you're not required to vote in all categories.

Voting will remain open until May 24th, and then the finalists - the top three vote-getters in each category - will be announced on June, 18th. After the voting closes on May 24th, you will receive an email asking you to confirm your vote. Please note that duplicate votes and fake email addresses will be discarded. Only confirmed votes will be counted.  Winners will be revealed at this year's Streaming Forum Event in London on 18 June.

So now have a minute to cast your vote for WMSPanel.

April 11, 2013

Italian translation is available


We're glad to announce that WMSPanel administration and reporting panel is now available in Italiano! Now all of our customers from Italy can view our friendly UI with their native language.

So you can just go to Settings menu and choose Italiano among others.

This translation is available thanks to a great contribution of Andrea Brulicchio from Bitstaff LLC, New York. Thanks, Andrea!