September 25, 2013

Running Nimble Streamer on ports lower than 1024

Nimble Streamer is designed to handle HTTP streaming of any kind. To make it happen, it binds on non-privileged port 8081 by default and listens to it waiting for incoming requests.
You can change the port number to make it fit your network infrastructure. It can be done via configuration file.

Simply change the "port" parameter to required number (e.g. 80) and re-start Nimble Streamer.

September 19, 2013

WMSPanel users management

We get requests from media hosting companies which want their clients to have more control over the service functionality.

That's why we make some steps forward. First one is to enable account admins to allow end-users to have full control over the servers. This is reasonable because a client may rent server at hosting company's server farm. So he wants to have full control over it.

We got a section called Users management. It's located in Control top menu. This is a place where all account's users from all data slices are listed. For each user you can see it's name and email, user role (admin or user) default data slice name and number of assigned slice, and then links to actions - Edit, Delete and Abilities that allow enabling extra capabilities.

Account's users management page.

You can also add new user by selecting its default slice, email for login and a password. A new user will be created with non-admin permissions so please do not select Full data slice for this user.

You may change user details any time by clicking on Edit link. You will see a dialog like show below.



Read more about WMSPanel streaming reporting for end-users.

Creating slices by non-admin user


As you see from the screenshot above, an admin user may allow any specific non-admin user to create custom data slice. An admin just needs to edit user details and check the "Can create data slice" check box.
This option is good for the companies which prefer giving their clients more flexibility and control over Wowza and its reporting.

Server control


Another option for this kind of flexible companies is server control. A user may be allowed to see selected servers' internals and ability to control them.
A user will be able to perform control of both Nimble Streamer and Wowza media server available in WMSPanel. For designated user, click on Abilities link to see the dialog shown below.

Assigning servers for user control

Just choose which servers to allow your user to control and manage and then click Save.

After that the end-user may choose Servers menu, then click on server name to find control capabilities.

Data slice also provides a mechanism for assigning non-admin users to control certain features of Nimble Streamer. Read this page for more details.


Slice relations


Each user has a name of the slice which he is assigned to and a number of data slices which he or she is assigned. Clicking on the data slice number link you will see the slices' list in a separate dialog. This dialog will allow following to each slice' details and un-assigning user from the slices.

Use data slices operations.

If you have any ideas for more end-user features, just let us know about it.


Read more about slice-related features in on the dedicated Slices & Branding page.


Secure your account in 3 easy steps
 article gives more ideas about working securely in WMSPanel.


Related documentation


End user reporting for WowzaData slices for statistics,

September 12, 2013

Lite slice cost reduction

In WMSPanel statistics are collected and accessed via data slices. It's a point of view at the data collected by all customer servers. They may be applications-based or streams-based. Our pricing is also based on slices - just because we need to pay for data processing and storage.

While data slice provides full variety of reporting, many customers want to get just a very basic statistics. Like, they don't need streams real-time reports, they just need daily statistics with geo and duration details. So we came to the option that would allow to reduce the reporting functionality of data slices in exchange to reduction of the price.

We call this option a "lite slice". Let's see what is the difference.




Full
Lite
# of non-admin users per slice
Unlimited
1
Streams real-time chart
Yes
No
Deep statistics
Yes
No
Custom slice cost
$20
$10

Here are some details.

No streams' real-time and retrospective charts


If you go to "Streams report" for the full slice you can see the list of active streams which currently have connections. Each name is the link to the stream dashboard where you can see real-time chart with connections, bandwidth and top-20 countries of visitors, as well as retrospective charts for last 24 hours.

For lite slice, there will be no link to the page and no stream dashboard page itself. Just list of streams with number of current connections.

One non-admin user per slice


Lite slices are targeted for those small clients of our customers who check their simple stats on a periodical basis and don't need complicated workflow. That's why this kind of slices should be seen by just 1 user besides admin users.

In-depth statistics


Since lite slice has not streams data, the Deep stats are also not available for this slice type, sorry.


Default "Full data slice"


When account is created, a default Full data slice is created to collect all incoming data. You cannot convert it to lite slice due to that reason. So whatever custom slices you create, you can convert them between lite and full while default slice remains full.

Usage and Pricing


The limitations mentioned above are the only ones applicable for lite slices. All other reports and capabilities, including white label, billing or streams control, are used the same way as for full slices.

Stream-based slice
 is the best case for using this limitation because there an admin may set the streams name and so real-time chart for a slice will be the same as real-time chart for the stream. Application-based slices are also fine being lite, of course.

Reduced functionality allows reducing the price. It's cut by half. and it starts from 10 USD per month and goes down as you create more slices.

Create lite slices


Existing full slices may be converted to lite ones by following these steps:

  1. Click on Manage link in top menu for slices.
  2. For designated slice, click on Edit link
  3. In the new dialog box, un-check the "Show streams real-time and retrospective reports" check-box.
  4. Save changes

For new slice, this would be the same - just use the same check box.

If you want to switch back from lite slice to full slice then check the "Show streams real-time and retrospective reports" check-box and click the "Save" button.

Before your next billing period starts, our team representative will contact you regarding subscription price changes.

Read more about slice-related features in on the dedicated Slices & Branding page.

Read more about WMSPanel streaming reporting.

Related documentation


Nimble StreamerEnd user reportingDaily statisticsGeo location reportingData slices for statisticsStreamed slicesUser permissions managementStatistics import API, Paywall,

September 4, 2013

Hotlinking and domain lock WMSAuth protection

Protection and restriction against the un-authorized access to the media is crucial for streaming business. WMSPanel team originally started its path by creating WMSAuth hotlink protection for Windows Media. Later on when we switched to Wowza Media Server, one of the first things we did there was WMSAuth hotlink protection. BTW, you can read a brief history of our solution in Dan Rayburn's blog post.

Now about 1/3 of our subscribed customers use WMSAuth hot-linking protection or connections limitation capabilities.

Hot-linking re-streaming protection has simple yet powerful architecture. A customer signs up links to available media with a hash and WMSPanel agent checks the signature when a viewer tries to connect.

WMSAuth mechanics in action. 

One interesting use case which obviously follows from described links protection is that the link may be presented via designated domains and websites only.

Here's how it works if a regular user tries to play media and if some grabber tries to do the same.

  1. Customer changes his media web pages which show video. Each video has a hash signature which is based on several parameters, including IP and secret password known to a customer only.
  2. If an authorized user opens a page, the link gets signed with signature where his IP is hashed among other parameters.
  3. When the viewer connects to media, the WMSPanel agent checks the hash considering user IP and allows connection.
  4. If the some grabber opens the page, the grabber's IP is used to access so the media is signed respectively.
  5. When the grabbed page is shown somewhere else, the unauthorized viewer tries to open it with his own IP - the new IP which is not hashed in the media signature. The agent checks new IP with IP from the signature and denies connection.
Here's the flow chart for this scenario.

Hotlinking protection with WMSPanel Wowza agent.
This functionality is more reliable than domain lock solutions which are based on Referrer header check. An abuser may easily fake any headers and get these streams while WMSAuth simply cannot be faked at all.

User IP might not be enough for this kind of media protection just because some users may watch the media from behind the proxy or firewall. In this case you can go beyond that and use pay-per-view framework for Wowza. It uses the same principle but it embeds user unique ID into the signature instead of an IP. It also brings wide variety of possibilities for building your own paywall.

To try these hotlink protection mechanics you can sign up for free trial and use it free of charge during first 2 weeks.

Notice that hotlinkng protection is available for Nimble Streamer. With Nimble, you can make unique signature for each individual streamNimble Streamer is the light-weight HTTP streaming server for HLS, Smooth and progressive download. WMSPanel is an official GUI for Nimble Streamer.

Related documentation


Paywall for WowzaGeo and IP range restriction for WowzaWowza hotlinking re-publishing and re-streaming protectionNimble Streamer HTTP hotlinking protectionHotlinking protection with stream-based signatureNimble Streamer geo-location restrictionIntegrating WMSAuth to your websitePay-per-view for Wowza Media ServerBandwidth limitation for Wowzagithub code samples

September 3, 2013

mpeg2ts analysis tool update

Working on Nimble Streamer and also on support of HLS statistics for Wowza, our team is continuously making researches regarding HLS, MPEG2TS, MPEG4. As a result we have several tools that help us building great solutions.

Today we've made an update for the mpeg2ts analysis tool. It analyses HLS *.ts files and gets containing streams' info. You can find some examples in this Wiki page.

Now we've added more info info the output, like Adaptation field info.
It is also now able to get and save PES packets info. This info includes all PES packets for all streams of current transport stream.

BTW, during the analysis we found that when ffmpeg tool makes MP4 to HLS transmuxing, it adds too many PAT and PMT tables into *.ts chunks. This doesn't comply with Apple recommendations and makes about 8% additional traffic overhead.
To compare, Wowza follows Apple's comments and makes perfect *.ts chunks.

You can use mpeg2ts analysis tool and make your own comparisons. This tool is part of our open source contribution, check our github repositories for more code.

You may also consider Nimble server tasks remote management via web console for convenient control of server-side commands. Launch any command, like ffmpeg process, with no need to log in via SSH, just an easy-to-use web interface.

Related documentation


Nimble StreamerHLS statistics for Wowza, Softvelum github

September 1, 2013

Custom CSS for white label WMSPanel

WMSPanel is a web service so providing it as a white label branded panel fits web paradigm perfectly. About 1/3 of our customers has set up a white label for their clients and about a dozen of the have set up multiple domains and logos to show their stats under different labeling.

We decided to go further and implemented customizable CSS capabilities. This means that in additional ti having custom domain and logo you can make your white label panel look exactly the same as your main web site.

Here's how it works. WMSPanel has a layout which uses layers. Their position and "decoration" is described via styles in a solid CSS file. So to change the look of the panel an administrator needs a way to re-define CSS styles. This is done by setting up a link to a new CSS which is located on existing web site.

If you want to use customized CSS, you need to follow these steps.

Create custom stylesheets


If you open any WMSPanel page you will see all elements having their IDs. Now using Chrome development tool or Firebug of Firefox, you can check the styles applied to each ID. Once you make changes to the styles you need to save them in a separate CSS file. It will have new stylesheets which override default behavior.

Now upload this file to any place where it will be publicly available.

Create a branded panel


The next step is to create a branded panel using white label capabilities. Read this post to learn how to set up custom domain and company logo.

Use new CSS location


Now being in the same Settings / Branding menu, go to the line for the designated custom domain. It has CSS column - just click on "Set" link to see the following dialog.


Here you just need to point to the location of CSS file you created previously and click on Save. That's it - your branded panel will look according to default CSS with the styles overridden by your custom CSS.

Cautions


The described CSS approach may turn to be not very flexible in some cases. Current CSS is based on current layout with pre-defined IDs. Those IDs may change over time as our service is continuously improved and reworked. So you need to track the new features released by our team and make sure your custom CSS is compliant to recent changes. The risk or breakage is very low but it still exists.

Examples


You may find some examples in our github account repo. E.g. you may use this CSS file to hide all panel menus leaving plain charts.


Read more about WMSPanel streaming reporting.

Related documentation


White label branded panelSSL white label panel

August 14, 2013

Re-selling WMSPanel by independent Wowza consultants

Wowza Media Systems uses a industry-proven approach of building its partners ecosystem. This includes approving streaming and product partners as well as encouraging software consultants to build a variety of Wowza-based applications.

When consultants builds some customer product, they often need to provide some reporting tool in addition to a general functionality. They either build their own custom applications or search for existing solutions. Let's see how WMSPanel can help Wowza consultants.

Let's take a look at the picture showing a consultant who has two clients that need reporting for their Wowza servers.

Wowza consultants re-selling WMSPanel.

August 13, 2013

Wowza statistics for clients of CDN services

Content Delivery Networks became the key element of today's streaming infrastructure. So lots of businesses use CDNs for bringing their content to users' devices.

However not everyone is happy about the statistics they get within CDN reporting. The main concerns are:

  • Not sure about data accuracy;
  • Need more reports;
  • Need more flexibility in accessing stats.

So people need to compare their reports with some other source of information and have the data being accessible in a convenient way.

WMSPanel can help in case your CDN uses Wowza for delivery at the edges. Here is what a CDN needs to do to have WMSPanel reporting experience help the CDN users.

  1. Sign up in WMSPanel. They can try it 2 weeks free of charge, just as any other newcomer.
  2. Install WMSPanel agent on its edge servers, at least on the servers that are used for delivery of your content.
  3. Create data slice for the servers and applications that are used by you and create user accounts for you.

If you want some other people to watch your statistics you may ask your CDN to set up an access via white label panel to show your stats via custom URL and logo. This gives some reporting flexibility. You may also get reports that are not available at some of the CDNs. Like, duration report, high precision report or lost traffic stats.

Needless to say that a CDN may use WMSPanel as an extra service either to make some money on it or to create some added value on top of traditional services.

Now demand your CDN to use WMSPanel as the reporting solution!

Read more use cases in our Case study section.


Also read more about WMSPanel streaming reporting.

Related documentation


August 11, 2013

Nimble Smooth re-streaming

Our team is continuously expanding Nimble Streamer capabilities. One of major use cases for Nimble is HTTP re-streaming. The first step was handling HLS and now we've done the next step and implemented Microsoft Smooth Streaming support for edge servers.

Now if you have an origin that streams with Smooth, all you need to do is the following steps:

  1. Install Nimble Streamer. Small Ubuntu virtual server would be fine for this purpose. You can set it up either close to your viewers or just next to your server to make a smart proxy.
  2. Set up re-streaming routes using WMSPanel web interface. You specify where your requests will come to (which domain or IP used by Nimble Streamer) and where those requests should be redirected (like, your Wowza origin).
  3. Change your player settings in order to point to a new server.
  4. You can also install Nimble as load balancer to forward your users' requests to the best re-streaming location.

Small Nimble executable is optimized for streaming while smart RAM caching and disk caching off-loads your origin, whether it's Wowza, IIS or any other media streaming server. This makes a truly transparent streaming so you'll be all set for new Smooth re-streaming experience.

Notice that you can also use HTTP hotlinking protection and geo-location restriction to protect your media while building paywalls for mobile media. Take a look at this SlideShare to learn more about other Nimble Streamer features.



If you have any questions or special use cases you'd like to cover, feel free to contact Nimble Streamer development team.

Related documentation


Nimble HTTP StreamerHLS re-streaming set upHDS re-streamingGeo load balancing with Nimble StreamerRAM caching for effective re-streamingNimble disk cache usageProgressive download re-streamingNimble Streamer HTTP hotlinking protectionNimble Streamer geo-location restriction

August 7, 2013

Support for Wowza GoCoder

Some time ago Wowza Media Systems released a promising product called GoCoder. It's an application available for both iOS (iPhone and iPad) and for Android, it allows making live streaming from anywhere anytime delivering to any screen via pre-configured Wowza server.

This application requires some configuration on Wowza side. Specifically you need to create a application with certain settings. Traditionally you should have done this via manual config files editing. WMSPanel allow creating and controlling apps via simple web interface. Let's see what you can do with our service.

Enable Server management for Wowza by going to Control / Server management menu. You'll need to load server configuration first, but that's a single time operation.

Click on Create an application and choose GoCoder template from templates list.

Create Wowza GoCoder application from a template.
After the application is created, click on its name to make user and password settings, here's a brief screen shots instruction.

Go to server's management page and click on application name.

Click on Config application button.


Clicking on this button you will go to application settings page. Click on Set password button to see dialog for setting user and password.


Enter user and password with the format shown in the dialog.  Select servers and click on Apply to apply user/password settings to selected servers.

Setting password for Wowza application or instance.
In GoCoder application settings enter your Wowza server IP address and application name (ipad_live for this example).

That's it


You can start publishing your GoCoder streaming. You can also allow your end-users to set up GoCoder application via user permissions management.

You may also consider WMSPanel server tasks remote management via web console for convenient control of server-side commands. Launch any command, like ffmpeg process, with no need to log in via SSH, just an easy-to-use web interface.

Let us know if there are some specific settings you make to Wowza app to make GoCoder work smoothly so we could make them easier to manage.

Related documentation


Server management for WowzaApplication templatesLive streaming application templateMediaCaster and LiveStreamRecord streams control, Wowza application authenticationUser permissions managementPaywall for WowzaServer tasks remote management via web UI