S3Media Stream Enterprise – for private streaming video & audio

Plugin to setup private and public videos and audios on WordPress.
Updated 06 February 2019

The plugin is not available anymore. Those who have already a license can continue to use it and active subscriptions continue to get support.
Fr more info, see  the Home page.

Video/audio HTML5  player

With S3Media Stream™ Enterprise you can display HLS adaptive streaming, MPEG-DASH video and audio with signed URLs on your WordPress site using Amazon Web Services. Whether you're a coach, artist or an advanced media professional, S3Media Stream Enterprise makes it easy to serve video and audio with various branding options  via JW Player® 8.x. No need to install JW Player separately, the plugin ships and installs it for you. This plugin works primarily with  CloudFront web distributions via Amazon Web services.
This plugin requires a Starter license from JW Player.

See the demo's here.

Short description

S3Media Stream Enterprise helps protect your video and audio against unauthorized use (leeching, hotlinking) via:

  1. Signed URLs for any file type (including progressive download video/audio). Signed URLs also called Expiring URLs, expire within a short time span, which makes hotlinking or leeching impossible. The plugin generates those links for you and you can determine the length of time before the links expire.
  2. Via domain restricted policies for HLS and MPEG-DASH. This is regulated via AWS and we teach you how with our extensive tutorials.

Both techniques helps protecting your assets on AWS, since they are set to private.
NEW: Call to Action box (at the end of a video or audio)
NEW: Supports 360 VR video (private and public via web distribution).
NEW: HLS adaptive streaming (public streaming via web distribution).
NEW: MPEG-DASH streaming  (public streaming via web distribution, not widely supported yet.)
Obfuscate links to playlists, video/audio links and player to make them unreadable for humans in the source code.
NEW: Up to two fall back options for HLS and MPEG-DASH so that your media can play on most devices.
Easy wizard to insert shortcode directly in posts/pages on WordPress.
Protected links to any file type served via an AWS web distribution.
Brand the player (context menu, watermark).
Responsive player (installs with JW Player 8.x). Shrinks and enlarges according to screen width.
Works fine on most mobiles and tablets.
Multilingual subtitle/caption support.
Create your own Skin with css or use the standard skin.
Set a poster image of your choice on videos and audios.
Social sharing button.

If you have a membership system, you can use the dynamic watermark feature to discourage screen capturing. The name/User name, IP address and date are printed over the video to discourage screen capturing.

Read Full feature Overview for more details (use tab above).

Full feature overview

Full feature overview

Below we listed the Top Twelve of solid benefits you get out of this WordPress plugin:

  1. Easy to use. No coding, yet loads of power
  2. Excellent to serve Video/Audio on the demand for coaches and professionals
  3. Helps protect your media from leeching via signed URLs
  4. Dynamic watermark to prevent screen capturing (Beta)
  5. 360 VR video support
  6. Brand and Monetize Your Video in Effective Ways
  7. Call to Action box
  8. Multilingual subtitles and closed captions
  9. Social sharing button
  10. Ideal Plugin for Your Membership Area to Protect ANY File Type from leeching
  11. Premium Support: literally "Premium".
  12. Peace of mind! We offer a 30 day money back guarantee!

1. Easy of Use. No Coding, yet Loads of Power.

The wizard in the editor of your pages/posts generates the shortcode for you.

Wizard interface
Click to enlarge image

And if you're happy with it, click on Insert code to generate the string to be placed in your post or page. Then check the preview of the post to display the video or audio:


S3Media Stream™ Enterprise comes with 1 wizard

It no longer resides under the S3Media Stream options as is the case with the regular version of S3Media StreamThe shortcode is more user friendly and rebuild from scratch. A code converter is available to convert the S3Media Stream shortcode to the Enterprise version for those of you who wish to migrate.

The wizard enables/disables certain fields automatically depending on the media type you choose. There are 4 types possible options:

  1. Video(HLS, MPEG-DASH, MP4, Webm, playlist)
  2. 360 VR video (HLS, MP4)
  3. Audio(HLS, MPEG-DASH, MP3, M4a, AAC, playlist)
  4. Download link(any document residing on AWS)

2. Excellent to serve Video/Audio on the demand for coaches and professionals

This WordPress plugin for rich media is excellent to use in your membership area because it adds an extra layer of protection, making unauthorized sharing impossible. Not only can you protect video and audio, you can create protected links for ANY file type.
Whether you work with any of the famous WordPress membership plugins, or even work with private pages and posts: adding a video, audio or a protected download link is no problem. As such, S3Media Stream™ Enterprise makes possible to monetize your work.

Practical example: You offer a free report or a paid eBook to subscribers? With this plugin you can create a protected link on a page or post which expires within 10 minutes or any time you like (even years).
Or: you sell a video? Place it in a password protected page and set the expiring time, so that the customer cannot share it with third parties.

3. Protect Your Media from leeching via signed URLs.

Signed URLs are created to  protect your media from unauthorized sharing and theft via the AWS bucket.
Private RTMP streaming support is discontinued because JW Player 8 doesn't support it anymore.
Therefore, for version 7 users, old RTMP embedding code is automatically transformed to progressive download (if you have set a html5 fallback option).

How about downloading videos and audios?

Streaming padlock

Let's not be naive. Once a video is ready to play, it can be downloaded, even when you use AES-encryption or DRM. Therefore, we cannot guarantee at any time that your video or audio cannot be downloaded. We can only discourage the average user and that is what this plugin does: via Expiring URLs, and obfuscated links. If you add your own membership area protection (there are many plugins available), you reduce the risk considerably.

4. Dynamic watermark to discourage screen capturing(Beta)

Dynamic watermark to prevent screen capturing:
The Logo/watermark feature can be used to create a dynamic watermark image that prints the username, IP address and date over the video. It looks like this:

Note: how watermarks show up, is influenced by CSS. Therefore, you can customize size, trasparancy and behaviour.

This is very useful in membership systems where the first name and name of the member are known. If the user hides behind a proxy server, the redirected IP address is shown as well.  In most cases, this will discourage screen capturing as there is clear evidence of theft.
The watermark contains a link to any page you like, and you can set this per video instance.
Note: this feature does not work on all server configurations. For example, while it works on one subdomain, it doesn't work on another subdomain using the same server(ours). We didn't found out yet why.
If you plan to buy this plugin especially for this feature, keep in mind that in might not work in your situation. Therefore, we do not accept requests for a refund when this feature does not work.

Concerned about the cost? No worries!

The marriage with S3 CloudFront and S3Media Stream™ Enterprise makes this very, and we mean VERY cheap. You only pay  for the bandwidth your visitors actually use on Amazon Web Services.
For example: with ±$34, you can stream a video of 50Mb 1,516 times.
Video services are much more expensive.

5. 360 VR video support included

360 VR video is an exciting new feature that will be very useful for 3D artists and 3D camcorder owners.
Although some film directors express their doubt about the usefulness of this technique, it opens a lot of possibilities for creative minds. Have a look at this article and demo for more information:

6. Brand and Monetize Your Video in Effective Ways.

With S3Media Stream™ Enterprise (combined with a JW Player starter  license) you can impose the cover of a book over a video as a watermark, linking it to a sales page or affiliate page like Clickbank, Amazon, etc,. where visitors can buy the book that is discussed in the interview.


Because the product is directly related to the video or audio, you significantly increase the opportunity for a sale because the person watching or listening is much more likely to buy when it can be done with the push of a button. In this way, you can monetize your media.

So, next to making money via memberships explained in point 2: Excellent to serve Video/Audio on the demand for coaches and professionals, you can advertise related products in videos and audios, creating a second income stream.

Also: you can brand the player itself in the context menu. When a visitor right-clicks on a video a context menu pops up, in this example "S3Media Stream 8.0.5 enterprise..." which then links to any site you like. Both the title and the link can be set for the whole site.
Context menu

The Power of Poster Images

Poster images have a big impact. They are often a decisive factor for the visitor to click or not. YouTube generates poster images by indiscriminately taking 3 snapshots, using a mathematical formula. The results are often disastrous.
With your own poster image, you control exactly what the first impression will be and by adding text in the image, you inform your visitor about the content of the video, thus creating a certain expectation.

It doesn't need to look perfect, the purpose is to make it look interesting and inviting. “Inviting” will be different for every audience, of course, and you know that better then anyone.

7. Call to Action box

You can set a Call to Action box which show up when the video ends.

Call to action text box

You can set a text or an image before the link (presented here in white). Very useful to redirect a visitor to a related sales page or to suggest another video or audio. The style of the box can be adapted to your website design using CSS.

8. Multilingual subtitles and closed captions

Since JW Player 6,x it is possible to include multiple subtitle files to one video or audio.
This means you can serve different languages for each media using .vtt or .srt subtitles.
If you have an international audience, this feature may serve you very well.
S3Media Stream Enterprise lists all available subtitles files automatically and feeds them to the player, like this:

Example multi-lingual subtitles

What Are Closed Captions exactly?

Over 20 Million people between the age of 45 and 65 in the US alone have some form of hearing disability. That is a lot of people, right? And the good news is, this huge audience wants to BUY, if you GIVE THEM A CHANCE!
Closed Captions are subtitles that only show up when you click on a button. So, for viewers without hearing problems, the subtitles do not get into the way. Every viewer can decide to show them or not. As opposed to regular subtitles (also available in this plugin), Closed Captions usually describe background noises like closing doors, etc...

What about audios?

Perfectly possible to show subtitles, watermark and poster image in audios!
Example audio player

Using Closed Captions gives two major advantages:

  1. You are positioning yourself as a person or company who cares about the hearing impaired.
  2. You get attention of a group of people that are hungry for rich media but cannot follow it. By providing them with subtitles, they do not only understand videos, but also audios! They will remember you more clearly then the competition who does not use this technique.

9. Social sharing button

You can set a social sharing button and customize the popup heading text.  Ideal to translate the heading in another language or simply customize the text.  In the example below, the text has been set to "Share audio". Standard it is set to "Share video".

Sharing video

10. Ideal Plugin for Your Membership Area to Protect Any File Type from Leeching.

"Leeching" is sharing a file via another website while you pay for the bandwidth. It happens a lot, especially with scraper sites, which basically use robots to "lend" content from good quality sites.

With the Download link option, you can protect any file type from leeching by using expiring URLs which are automatically created for you, provided they reside in a download distribution on AWS. You can place a link to a file within the text content of pages or posts or make it stand out like a button. We provide a css class which you can format in your style sheet:


How does an expiring URL work?

This is an expiring URL to a pdf About S3Media LinkSafe. When you click on this link, it may already be expired because I set it to 10 minutes. But if you refresh the page and scroll down to this spot again, you will be able to download the file.
This means that the link itself cannot be misused on other sites or in e-mails.
Private progressive download uses this technique as well.

11. Premium Support: Literally "Premium" for 6 months*.

Notwithstanding the FAQs and the extensive tutorials we offer, you might bump into a problem you cannot pinpoint and we are here to help.
We want you to be happy with our plugins, so we help you all the way. As a premium support customer, you get priority when it is very busy and instead of shoving you off to a forum in the hope somebody else will help you out, we give you one-to-one support via e-mail. Generally, we respond within 24 hours. If a problem cannot be solved by e-mail, we schedule a Skype meeting with you.
* For customers from 09 December 2019 onward. Older subscriptions with 1 year Premium Support are honored until the subscription expires.

12. Peace of Mind! 30 Day Money Back Guarantee.

We are confident that you will like this plugin. But it might not fit your needs or we may have been unclear about something. Therefore we offer a 30 day money back guarantee. However, we do ask you to read the information carefully before you buy, so that you can make a well informed decision. Contact us if you have pre-sales questions, we respond within 24 hours (except weekends & official holidays) or you can leave a comment below.

If you have a problem or find a hidden shortcoming, contact us in the support section. We are happy to hear your feedback and we will adapt the extension if it contains an error.

JWplayer features

JW Player features - for the technical inclined

This WordPress plugin is based on JW Player ® 8 from jwplayer.com. YouTube started out with JW Player before they developed their own version. It has numerous options, one more useful than the other. This complicates the workflow because you have a clutter of fields and as Jacob Nielsen once said: "One extra option creates its tenfold of problems".
We carefully balanced what is useful and what not and implemented that into S3Media Stream™ Enterprise. Read on to know what we selected and why!

Player Behavioral Options

  1. Set width and aspect ratio for video scales automatically.
    For videos, we opted for the responsive feature by setting the width in percentages. The aspect ratio determines the height of the video.
  2. Set width and height to customize display of audios for use of poster images, subtitles, watermark. Audios can either be a fixed controlbar, or behave like videos(controlbar is sticky unless you hide it).
  3. Allow or disallow autostart.
    When you work with a playlist, it can be useful to set autostart, so that the video or audio starts to play automatically from the start.
  4. Show subtitles automatically or display a button to activate it (Closed Captions).
    As discussed earlier, subtitles show up automatically, Closed Captions are user preference and often contain background noise descriptions. Use a TimedText file for this.
  5. 360 VR video support.
  6. HLS adaptive streaming support (not live streaming)
  7. MPEG-DASH streaming (not widely supported yet)
  8. Multiple sources possible. The player is intelligent enough to switch to another video or audio format if a device cannot play the initial one.
  9. Show a semi-transparent bar behind the subtitles or not.
    Useful if contrast between white subtitles and video is unclear.
  10. Change the About Text and About Link in the context menu.
    Especially useful if you run a Video service or VOD service to brand your business. (Pro/premium license)
  11. Create your own skin using css.
    We left the version 7 skins in the installed skin folder although they are no longer compatible with version 8.  You may want to re-use some of the css code when (re)building your own.
    The plugin automatically lists all skins as an option in the wizard., but you can also create css directly in your theme's stylesheet (which we recommend).
  12. We opted for multilingual subtitles to be found automatically in a designated folder. Therefore, you only need to fill in the folder name and the plugin lists all languages available in that folder.
  13. Social Share button links to your page on Facebook, Twitter and e-mail.

Accepted formats for this player

  • Video in MP4 , Webm, and audio in AAC
  • 360 VR Video (MP4), monoscopic.
  • HLS adaptive streaming m3u8 manifests with ts video segments
  • MPEG-DASH mpd manifests
  • Sounds in MP3 , M4a (iTunes)
  • Images in JPG, GIFPNG, SVG

.SWF is not supported in S3Media Stream 8 Enterprise, nor is RTMP.

Video service support

YouTube is no longer supported. YouTube updates their API and it affects the JW Player user experience. Even today there are issues that are not standard with other media formats in JW Player. Specifically how you pass interactions through the API to our UI does not work the same on all devices.


With this extension, you do not only buy a tool, you get a load of FREE professional advice on top of it.

We regularly publish articles to make the most of your plugin. We love to stretch the limits and that is why we can offer trendsetting solutions. Breaking out of the box is our trademark. Point 6 is a good example of this, using a watermark feature as a point of sales.

The support section also teaches you how to work with Amazon Web Services.


Version 8.5.3
- Ships with JW Player 8.5.3
- Added Call to Action box option
- Works with PHP 7.x
- Tested with WordPress up to 5,2.x

Version 8.3
- Ships with JW Player 8.3
- Added choice between Standard -and Coaching behavior for playlists, where Standard plays all media in a playlist without pause and Coaching stops in between each video, showing thumbnails and titles of the next media. The latter may be interesting for tutorials where proceeding immediately to another video is not desired.

Version 8
- Ships with JW Player 8.0.5 Tested with 4.9 and PHP 7
- Dropped support for RTMP streaming.
- Version 7 skins no longer supported.
- Added support for MPEG-DASH
-Added 2 fallback options for HLS, MPEG-DASH or MP4.

Version 7.12.8
- Ships with JW Player 7.12.8
- Tested with WordPress 4.8.x, 4.9 and PHP 7
- Addressed issue with subtitles not showing automatically when set as such.

Version 7.12.0
- Ships with JW Player 7.12.0
- Tested with WordPress 4.8 and PHP 7
- Added HTML5 mode switch in Default settings.

Version 7.11.2
- Ships with JW Player 7.11.2
- Tested with WordPress 4.8

Version 7.9.3
- Ships with JW Player 7.9.3
- Added support for 360 VR video
- Tested with WordPress 4.7.3

Version 7.8.2
- Ships with JW Player 7.8.2
- Tested with WordPress 4.7.2

Version 7.4.3
- Ships with JW Player 7.4.3
- removed bugs regarding https.
- Watermark can be positioned again into 4 corners.
- Tested with WordPress 4.6

Version 7.2
- Ships with JW Player 7.2.4
- Added support for https. (requires no  special configuration via AWS)
- Removed bug in default settings regarding Media Type Streaming
- Removed a bug private streaming audio links
- Tested with WordPress 3.4 and 4.4

Version 7
- Ships with JW PLayer 7.1.4
- Removed position options for the logo since this is no longer supported by JW Player. Only one fixed position at the top-right.
- Tested with WordPress 3.4 to 3.4.4

Questions moved from the old page:

  1. G.Kim

    I have wordpress e-learning website.
    I want my users not to record my video with a capture software such as Camtasia. I want to make sure that your ‘s3media-stream’ would work on my website.

    • Rudolf Boogerman

      Hi there,

      Thank you for your interest in S3Media Stream. Dynamic watermarks normally work on all servers, except those who do not allow #RewriteRule in .htaccess.
      You need to confirm with your hosting provider before you buy the plugin if this is a breaking point for you. For instance, if you are hosted on GoDaddy, we cannot guarantee it will work.

  2. Tricia Tamkin

    Will it work at wpengine?

    • Rudolf Boogerman

      Hi Tricia,
      This shouldn’t be a problem. But in order for dynamic watermarks to work, you need to set a redirection rule in the dashboard of WPEngine. This is explained in the manual.

  3. Mickey

    Just one question: is the dynamic watermark moving? If not, it is very easy to mask it out. Do you have a sample video?
    I have a 17 hour long video for sale. How much should I pay for playing it in HD quality? ( I mean each time)

    • Rudolf Boogerman

      Hi Mickey,
      Good question: No it does not move. Apart from the fact that with JW Player this is not possible, it is also highly annoying for viewers to watch something moving around that has nothing to do with the shown content.
      I would break up a video of 17 hours because, A: nobody watches a video for that long in one stretch, 2: it will be very heavy, therefore almost impossible to play on a mobile device.
      Regarding the cost: it depends how heavy the video is. Accoding to this calculator https://calculator.s3.amazonaws.com/index.html
      if you have a video of 2Gb, which is fully played 10 times a day, you would pay around $21.00 after a month.
      If you have further questions, let me know.

      • Mickey

        The video is in many parts of course, but if someone buys, he will watch all of them so I have to pay after 17 hours.

  4. Mickey

    Do you plan to move the watermark? If it moves every 5 minutes once or just flash up for a second on other places, on the screen that is quite enough.

    • Rudolf Boogerman

      There is no way to do this with JW Player, I’ve checked that with their programmers. The thing is, whatever you do, people always find a way to get around things if they are determined enough. Therefore I always recommend to calculate a loss of 10% in your pricing, like supermarkets do.
      Notwithstanding they have camera’s and store detectives, people keep stealing. We can only make it difficult to steal.

  5. Rudolf Boogerman

    Ah, Ok. I understand. So, find out how heavy all files combined are, then use the calculator I mentioned above to see how much it would cost you. AWS is the cheapest on the market for streaming video. There is also a free tier of 50GB the first 12 months.

Shame you didn't bought [URL="https://wp21century.footprintaddons.com"]S3Media Stream for WordPress[/URL].  It has so much more to offer and is much easier to use. 😉

Leave a Reply

Your email address will not be published. Required fields are marked *