ScaleEngine Blog

The Download Feature Explained

October 31, 2023

The secure content download feature in the control panel, and the API, is a fully featured implementation of Secure Link. We used to call this an "add-on", but it is actually a core part of our VOD service, specifically the HTTPS direct access to your content.

More than just security, it allows our customers to have complete and convenient control over their online VOD storage, generating shareable links, and limiting access to only viewers with that link.

In the control panel, these are clickable, shareable links. A download can also be provided that does not expire, with no IP address limitation. All of this can be automated using the API as well, for designing VOD library apps for Roku.

We expect to provide fully compatible json for Roku soon as a VOD feature, so that libraries can be easily turned into consumable streaming apps.


WebRTC Full Support

April 27, 2023

We are pleased to offer camera capture with this full WebRTC example both here and in our control panel. This is a fully featured browser client for camera capture from either from your webcam or phone. There is also a standalone publisher page that we have deployed for users to give to their streamers.

You will need access to a WebRTC server, not necessarily ours, but if you do need access, we have demo accounts available as always.

Any modern phone or webcam enabled computer will work with this software. You no longer need a standalone encoder like OBS, or external hardware.

WebRTC is available to all demo accounts - providing direct to camera web browser streaming.


New Tutorial Video: Switchboards

March 2, 2023

We are often asked how to effectively keep a stream running "forever". Our switchboard system is designed to automate this.

Live streams "take over" and become the output of the switchboard stream, with a channel loop as the base fallback stream.

Check out the new video tutorial called "How Do I Keep a Stream Always On".


Apple TV Development Support with Roku Direct Publisher Feeds

February 1, 2023

The development shop Tappla can create apps for church streaming.

You can use ScaleEngine for Video Integration as a better, less expensive Vimeo alternative, to generate your live feeds for Roku and Apple.

With our json Direct Publisher urls both your apps can get approved quickly and inexpensively.


WebRTC Support

January 27, 2023

WebRTC in browser streaming from web cameras is now supported for existing accounts. This technology replaces the old Flash camera streaming that was finally discontinued two years ago in January 2021. It is quite similar, in that it simply "grabs" your camera and sends it to our server.

There are some differences, but we have made it transparent and easy to use. There is a secure negotiation, "signalling", that the browser initiates with the server. The audio stream is also modified to be compatible and playable with devices and players which expect AAC audio.

Every user with a -webrtc app on our system will see their streams available and playable in their channel origin. This makes them available for priority in switchboard output streams, as well as for generic live playback.

WebRTC is currently available by request to existing accounts. We will add continuing support for new demos this month, to enable direct to camera web browser streaming from one click in the control panel.


Encoder Support for Aja Helo

December 16, 2022

We are happy to announce ScaleEngine official support for the Aja Helo encoder.

We also will have support news here about in browser camera WebRTC rollout in January.


API Control Panel Integration - VOD Improvements

October 17, 2022

A new version of the VOD file browser is live. This new version supports most API methods in the files object.

Specifically, users have easy access to file metadata (Details). In addition to uploading, users can rename and delete files from the control panel.

We have also connected one click access to embed and player code generator. Base Index Frame generation (for Roku and other player scrub views that use a bif file) is now a single click operation. Similarly, you get instant thumbnail generation, and expirable, protected download link generation.

scaleengine file browser


New clappr version and sunsetting RTMP support

April 27, 2022

A new version of clappr, 0.4.6, is out in our embed generator. The new version comes with improved VAST support, now able to do mid-roll and end-roll ads, whereas the previous plugin could only do pre-roll. If your players are set to use latest or stable versions, they will update automatically. If you are using specific versions, or are using bare embed codes you can now get the new version.

Although it has been dead for a very long time, we have continued to support the RTMP plugin in our embed generator until now. However with flash being removed from most browsers for 2 years now, it's unlikely to be a useful feature for even the most legacy of use cases. Users will no longer see the RTMP option in the embed generator.

A tombstone with the flash logo Permalink

Enhanced Stream Distribution to Asia, Australia and Europe

March 22, 2022

Stream distribution enhancements for clients with intercontinental requirements are now available.

Streams will push to an origin in each non-source geographic region. So if you stream to a US origin, it will go transparently to Japan, and Australia and Europe. Similarly, if you stream from Europe, your stream will push to Toronto as well as Japan and Australia.

Edge nodes in each region will pull streams from these regional origins. This improves viewer experience - network round trips are shortened and HLS chunks are served regionally to these audiences.

This mid-origin system is available on request to accounts with diverse global reach (normal bandwidth rates apply).

Please contact us if you want this enabled on your account.


Enhanced Distribution to Asia, Australia and Europe

March 21, 2022

Stream distribution enhancements for clients with intercontinental requirements are now available.

Streams will push to origins in each non-source region. So if you stream to a US origin, it will go transparently to Japan, Australia and Europe. Similarly, if you stream from Europe, your stream will push to Toronto as well as Japan and Australia.

Edge nodes in each region can now pull streams from these regional origins. This improves viewer experience, as network round trips are shortened and HLS chunks are served regionally to these audiences.

This mid-origin system is available on request to accounts with diverse global reach (normal bandwidth rates apply).

Please contact us if you want this enabled on your account.


Fast Video Cache Priming with SE Prime

March 17, 2022

Milliseconds count in video delivery. Reducing startup time for video playback keeps viewers watching. SE Prime is our new Scale Engine cache priming system. We have rolled out this new feature to speed up live streaming delivery for all clients.

The process works to improve viewer experience, especially for low traffic and "first viewer" scenarios, where the first viewer is often "thrown under the bus" and has to wait for video to reach an edge delivery server.

What we have done is overcome a limitation in the HLS specification, where the server and client wait for responses and requests before an actual video chunk is sent to the client to begin playback. So a client player requested a playlist, the server sent the list of available streams, the client requested the stream chunklist, the server sent the chunklist, and then the client requests the first chunk (ts file). Only then does the server fetch the chunk from the origin (to which you are sending your stream), and delivers it to the client.

SE Prime accelerates the middle part of the negotiation. Once any player requests a chunklist, the edge video server kicks off a request to the origin for the first ts file in the list, without waiting for the client to receive the chunklist, or its subsequent request for the chunk. By the time the player makes the request for the chunk, it is already "hot" in the cache of the edge video server, as the time between the client receiving the chunklist and requesting the first chunk has been usefully occupied by the edge server which has already primed its cache. The request is fulfilled faster.

How much faster? Essentially, the wait time is reduced to the network round trip to the edge system. Before, the wait time was that round trip PLUS waiting for the edge to get the chunk from the origin. For every viewer, streams will now start faster.



May 8, 2021

We have released our new REST API to our users, offering a much easier way to programatically control your streaming services. Compared to our previous API, our new api uses an industry-standard REST model, allowing you to easily construct API calls in a few lines in any major programming language. Generic clients for REST APIs can also be used, eliminating the need for most custom work.

You can see the documentation for our new API in the control panel We are also happy to help our customers with implementation details to help get them up and running.


Ephemeral Players

May 21, 2020

We are now providing ephemeral players, to replace our well-worn, and somewhat aged embed generator system.

The player system still generates a full javascript embeddable player, but also adds a short url that loads settings from the API, so you can make edits and save changes without having to change anything on your apps or website pages.

You also can publish an iframe pointing at your short url, or can just post the url itself, if you want to get a stream player out to social feeds without using a web page.


Roku Direct Publisher Support

March 21, 2020

ScaleEngine users needing to publish their live streams to their Roku apps can now get a fully compatible json feed served by us, pointing at their live stream.

This Direct Publisher Feed support brings users the ability to offer channels and switchboards on Roku, expanding audience and bringing ScaleEngine quality for your church live stream or conference live stream to Roku.


New streamfetch system

January 25, 2020

Our old stream pull system has been replaced by our completely new and improved "streamfetch" system. Streamfetch supports pulling almost any video or audio stream into our system, as if it was sent by an encoder.

Need a security camera rebroadcast, or a funky old mjpeg stream? Not a problem. We can even do on-demand pulls, so we aren't using up bandwidth if no one is watching!


Stats Updated With Graphs

January 24, 2020

Usage and Stats have been rebuilt with per stream data. This has been a long desired feature and we are happy to announce full support for per stream statistics.

Bandwidth usage per stream is available as the last week and month, as well as historical monthly views.

Bandwidth usage per stream is available as the last week and month, as well as historical monthly views. Usage is further detailed to show Restreaming (Push) data to your various marketing platforms, broken down by destination.

Similarly, viewer stats are available live by total for all of your streams, or by individual stream, broken down hourly (live real-time) or by day, week or month.

These stats not only correlate perfectly with your exact usage bill, but will also cross reference to your google analytics real time and monthly audience numbers.


Instant Replay with ScaleEngine DVR

March 15, 2019

DVR is now available for customers with advanced or professional streaming packages. DVR allows the viewer to rewind the stream, and even watch the DVR buffer after the stream is over. Let latecomers watch from the start, and let people rewind over bits they missed.

Read more about DVR


Update to the SEVU Wordpress Plugin

February 12, 2019

We have updated the SEVU plugin for Wordpress.

The plugin has been simplified. It now simply requests a SEVU ticket and returns the key and password to append to your video URL in your player.

This allows you to use either our supplied clappr player from the control panel, or to keep your existing player. All you do is append [sevu_ticket video="myvideo" app_name="account-live"] to the HLS or RTMP url.

Once the ticket has been requested, your app users will be authorized to view your content by using a player that has their ticket appended to its URL.

By default, the ticket is restricted to the IP address of the viewer and cannot be shared.


Use Live Switcher to Keep Streams Going Forever

February 1, 2019

Every ScaleEngine account now has the new live stream Switchboard feature available. This awesome feature can be quickly used to keep a stream running forever, so let's talk a bit about that.

You will now have three features available: Live, Channel and Switchboard. Live is basic "send a stream". Channel lets you build a loop of content that runs forever. Switchboard combines them. Switchboard lets you create an output stream name and use your Channel loop as an eternal fallback. Define any other incoming stream as priority, and it will take over the stream.

You can add several inputs, and if any of them are present they will take over as the output source. If every stream goes away, the channel loop will play out. This is ideal for events with multiple venues, or conferences where different presenters will send a stream, and there is one stream that switches between different inputs.

The Moogfest festival ran its streams on an early version of our Switchboard. You can find out how cool this is for yourself if you take a free trial.


New Control Panel is Launched

December 3, 2018

Our new control panel is live. We think you'll be pleased with how it works.

In particular, we've designed it so it works on your phone or tablet.

We've rebuilt the live streaming and channel pages so your workflow is simpler and gets you the information you need faster. We've added a new feature called "Switchboard". This allows you to create an output stream, with different input streams as its content. You set ranked priority for your input streams, so that you can "cut in" automatically from a location.

We've also made it easier to upgrade your account, buy more streams and channels, and access our services like transcoding and recording more easily.

If you need to quickly access your list of stream pushes, to add or manage destinations, that is now its own sidebar link. If you are a reseller, you can quickly enumerate your sub-accounts to access stream publish points or get player urls.

Speaking of player urls, the embed code generator is still our familiar easy to use system, but you can now test everything from your phone or tablet too.

Finally, your profile consolidates your business profile details, billing, invoices, and history, as well as allows you to view and purchase features easily.


Icecast Streaming Push Now Available

October 12, 2018

ScaleEngine channel users who want their channel audio available as an icecast feed can now push audio directly to icecast providers.

Setup is simple in the control panel, (use the beta) by selecting Icecast as the Service. You will need to know your provider's details (server/port) and mount (name, user and password).

As always, auto push is available, so you can always be sure your channel audio is running with your icecast provider.


Keeping Your Stream Up

October 5, 2018

We had a request from a customer to see if we could do something about their stream to Facebook dropping. They were having network issues that were causing their encoder to lose connection to the server.

Our solution was simple. Push the ScaleEngine channel output, and not the source stream. When this customer goes live, they are live both on ScaleEngine (for their web/tv apps and website) as well as Facebook (which is a push from ScaleEngine). The simple change, to push the channel output, ensures that if there is a problem with the live stream, the channel will keep going, by playing the next item in the playlist.

Once the live stream is back and stable, it is easy to return to the live stream, using our "Reload at offset" feature, available in the control panel, or programmatically through our API.

If you are streaming for an hour on Facebook (or Periscope or Twitch) it is vital to audience trust and retention, that you do not drop the stream. Viewers will leave for other content if you go dark.

Doing your pushes to these platforms with the ScaleEngine channel system means you know there will always be something streaming out, even if your ISP or cell network lets you down. We will be able to maintain the push for you, showing your prerecorded content, until you can restore your live stream.


Is Free Streaming Free?

October 1, 2018

There is a lot of "free" streaming available if you take a casual look in any search engine. In this post we'd like to evaluate how you can combine using "free" platforms for marketing, with your own web/app infrastructure to minimize the actual cost of giving away your content and viewers to the parasitic "free" platforms.

Why are we using quote marks when we say a "free" platform? Isn't it actually free? You, as the content owner, are indeed paying no money for the ability to give a stream to Youtube or Facebook. However, there's a definite cost to the content owner. You are sending viewers, who were initially interested in your content, into a hostile ecosystem of competing content, which have algorithms designed to lure these viewers away, toward targeted content that will maximize advertising revenue for the platform. This is totally by design. Youtube's related content, that it will offer to anyone who started watching your content, is mercilessly oriented toward popularity, and what it specifically knows about the history and other "Google" knowledge about your viewer. Your clip or live stream will be up against all of the popular history and interest segments designed to attract each individual viewer. The Youtube from ten years ago which simply showed users a history of what they watched, with genuinely related content suggestions, is long gone. Remember now, that every Youtube user is shown a different view of the service, much like Netflix, except that unlike Netflix, Youtube largely relies on showing advertising to its viewers, and so has abandoned any pretense of letting users control what they are shown.

The situation is similarly bad with Facebook. Again, you ostensibly are able to "stream for free" to the mighty social platform. Again, your view of things is very much not what your viewers will see. Your video post will be buried in a giant scrolling feed of memes, related posts, games, advertising and chat. Worse, once a viewer is on Facebook, and not on your website or app, they're gone, probably for good. You've just sent an interested viewer into Facebook's revenue maximizing algorithm. They're probably not coming back today...

Why do Youtube and Facebook do everything they possibly can to get you to stream for them, and then turn around and pull everyone you bring into their own vortex of content, which is specifically targetted to each individual's known viewing and browsing habits? The answer is simple. They must do it. Their robotic algorithms are useless without incoming data, meaning user interactions, and are all ultimately about getting the most money from their true business (selling advertising) by delivering ads over the longest possible duration of time spent on their platforms. Once they get a user on their platform, they will do everything they can to pull them in for as long as possible. That is all these platforms are doing. They exist to exist.

So, we can see why this isn't this "free", because it's costing you, as a content owner. How can you counter this blatant disservice? At a minimum, you could be getting more of your message to your viewers by keeping that message on your website and app, which won't betray you like Youtube and Facebook by stealing a visitor's attention as relentlessly as possible. If you're able to pull in some audience attention on Facebook or Youtube because you have a decent subscriber count, you can do the reverse to them, and show a free segment on those platforms with ScaleEngine's push service, and use a call to action to pull the viewers over to your app/site for the important segments, just before you take down the free stream push.

What about Periscope and Twitch? Periscope does not have an advertising model yet, but it's similarly designed to drag viewers into its world of music and monologues. Twitch has Amazon behind it, and so has somewhat limited advertising (except for Amazon things), but it's still cheerleading for the online retailer, and again, viewers sent there, generally stay there. In an internet that is designed to steal all your viewers' attention as quickly as possible, you need to protect and grow your audience by owning your streaming system, and by doing everything you can to make it less easy for your audience to leave, or get distracted.


Why Control Your Streaming?

July 20, 2018

It's easy to stream for "free" these days. You can stream on any number of social platforms. Youtube will give you a channel, so will Twitch. Periscope has direct linkage to Twitter. Facebook lets you add a live video post. Why would anyone pay for streaming when you can get your message out for nothing?

The arguments come down to control, context and independence. The major social platforms are dominated by an all consuming need to funnel their audiences to the most popular, advertising revenue generating content. You can, and possibly should, use them judiciously to promote your content, but ultimately, by giving everything all away you are diluting your impact and message, as it becomes lost in the vast commercial echo chambers of Big Social.

Let's look at control first. Your message is yours. Your content is yours. But it's not if you are exclusively putting it on Big Social. Facebook has multitudinous rules about monetization limits, self-promotion, and what you can and cannot say or show. You are at risk of losing your account altogether if you run afoul of their constantly changing rule landscape. Youtube and Twitch are similarly onerous in their policing of content. Whether you are monetizing with advertising or pay per view, you'll realize much greater returns by promoting a short taste of your content with a call to action back to your website and providing full access there, rather than attempting to get revenue share from Social. Unless you are a page one result on Twitch or Youtube, you're going to be buried under the avalanche of promoted and semi-famous streamers there, and giving away your stuff at that point for a few cents does not make sense.

The issue of context is even larger when you are streaming on social media. Their algorithms are marvels of AI engineering designed to keep their users on their sites. They don't care about your content. They care about the users you will bring to their site, that they can use to make money by showing them advertising and promoted content. Think about the last time you used Facebook or Youtube. You might have gone to look up an old post, or watch a tuturial, but you ended up spending additional time there looking at the content they wanted you to see to keep you there as long as possible. Every second you are there, they are making money showing you ads and promoted posts. Contextually, your content will be surrounded by dozens of other items designed to take the viewer away from your content, and over to the high revenue heavily promoted and advertising rich content. This isn't good for your message, or for your image as the owner of this content. With very few exceptions, Big Social has become about itself, it's advertisers, and the content it wants you to see. You can use its reach, occasionally, for promotion, but your content will get lost in an ocean of car ads, political posts, memes and jokes.

Finally, independence from social networks is more important than ever. Yes, they can promote your message to your followers. They can also ban your account without notice or reasons. Facebook's terms mean you give away what you post there. Youtube will take you down in a heartbeat if you have the wrong background music, or for any DMCA complaint for that matter. You won't have access to your audience, or your archives. You don't own your Facebook account, or your Google account. They do. When you pay for a service, you get control. You set the context. You become independent from the social account vulnerability that these automated copyright/complaint algorithms impose on social content creators.


Control Panel Feature Updates

July 6, 2018

Your streams page now displays all active streams with links to players and management. This list of streams is being used everywhere in the control panel now, so you can define a social network stream push on any stream at all, to as many platforms as you want. You can also add any of your live streams to a channel with this feature.

Clappr is updated to version 0.2.97, which provides better viewer prompting when a stream has ended or is not present. We are also adding Google IMA vast tags support for clappr. We expect to roll that out by the end of the month, along with a layout update, and better stream logging history.


New Pricing

May 2, 2018

We've updated our pricing structure! The $25 basic account now includes VOD and recording, and we now offer bundle accounts. The bundle accounts include a reduced bandwidth and storage price, and are stuffed with features.

You can check them out on our pricing page.


New Feature: Stream Hijack

March 14, 2018

We are rolling out a new feature we call "stream hijack". It allows you to play out several inputs on one output, with priority set for your various inputs. You can have a placeholder encoder running your content, and anytime your connect an encoder with a higher priority stream name (perhaps at a convention or conference), that stream hijacks the output. Once it disconnects, the placeholder stream resumes. You can always contact us to discuss how this feature can work for your requirements.


New Features

March 2, 2018

Some of you have noticed the new website look. We would like to point out some new features that we have added.

On the Live Streams page, you will now see a complete list of any stream you have running, channel, encoder, or transcoded output, with complete encoding details, and a player. You can also use these streams to assemble a playlist of live streams for switching.

We have easy to use push services available for all your live streams. You can push channels, transcodes and full resolution input streams to all marketing platforms (FB, Scope, YT, Twitch, etc), with no limits, simultaneously (normal bandwidth rates apply). Please contact us if you want this enabled on your account.

In our embed generator, along with the responsive clappr player, we have added a feature to limit stream resolution to player size, if you need to reduce mobile viewer's data usage. As always, your ScaleEngine urls are end-to-end standard from demo account to production, to facilitate migration and development.


Clappr Updated Again

February 20, 2018

We have updated clappr to version 0.2.85. This version has improved support for audio at slightly less than optimal bitrates and sample frequencies.The control panel also will be getting support for the hls.js feature to Cap Level to player size. This will save data for mobile users if that is a requirement for you.


New Player: clappr, and new URLs

April 2, 2017

A fairly big change is rolling out this week. We have successfully integrated the clappr player into the control panel, and are pleased to support HLS in the browser for all devices with this player. Full multi-bitrate and DASH support is part of its feature set. We also provide RTMP, and HLS over SSL.

As a part of this new player system, with enhanced ease of use for HLS streaming, we are rolling out our new CDN domain, For many years, we have used, but as a part of automating things better, we are dynamically building domains for all of our users. From demo account to your production account, you will have the same urls going forward.


Scrolling Overlay System

October 18, 2016

We will have a dynamic scrolling overlay system to get scrolling text across the bottom of the screen in your live streams shortly. Users will be able to set a default message, or update the message dynamically in the control panel or with the API.


JW Player 7.7.0 Bug

October 17, 2016

Earlier this month we started getting reports that users who use jw's "cloud" player were seeing HLS streams stop working. They've just announced 7.7.1 to fix the problem. This is why we only serve "known good" player versions, from our CDN servers, for our users. I keep saying this, but player companies are not CDNs; it's not their core business to provide scale and stability.


New Channel Feature: Reload Playlist at Offset

September 29, 2016

Feature: Reload playlist at offset is documented and tested, and will ship next week. Channel users will now see the currently playing clip as the default reload starting point in the control panel interface. Users will be able to click to select any list item to be the reload starting point for their stream. To maintain backwards compatibility, with no reload offset defined, lists will start to play out at the beginning, as always. API users simply add "start_on" as an optional parameter to the channel.reload call.


New Channel Feature: Clone Playlist

July 21, 2016

Feature: Clone playlist has been documented and added. Users can now copy an existing list to another list. This should greatly simplify weekly management for users with rotating daily lists that play on a single stream.


Streaming on Twitter with a Player Card

June 17, 2016

We are supporting twitter player cards now, so you can stream inline in a tweet (works nicely on mobile). If you'd like us to set this up for a stream, let us know.


SEAnalytics Google Analytics feature

April 28, 2016

We have a Google Analytics plugin ready which sends all of your stream hits to GA, providing number of sessions, average time watched per stream (by country and city), as well populating the real-time map view location stats that GA made famous. This view correlates well with our real-time viewer counter and graph.

Note that this is different from either JW Player Analytics or Wowza's Analytics. Specifically, we can pass real-time viewer activity data from every edge node worldwide, on every stream, including viewer IP address. Because we are able to report in real time on Live Streams, (which JW Player's analytics cannot do), you get a live heat map of your streaming event in GA. It's also a lot better than Wowza's Analytics module, which does not pass viewer IP address, and only reports the server IP address to GA.


New Channel feature - Reload

March 2, 2016

We have now completed upgrades to support instant startup and reloading of your playlists. Basically you don't have to wait for a transition time anymore, you can just control it yourself in the control panel. Channels now start as soon as you create them. Happy streaming!

In other news, we have a way to pass through labels for jw player users, so your smil file can show your text and not just the bitrate.

Also, wanted to announce that we now support DASH streaming for both VOD and Live.


Pausing a stream after a few seconds with JW player

October 9, 2014

To pause your jw player stream after some time (maybe you don't want people leaving a stream on all night?), add this to your ScaleEngine embed code.

		jwplayer('se_video').onTime(function(event) {
			if (event.position > 900 && event.position < 900.4) {
		} });

You can use this.stop(); also, but it doesn't keep the last frame on screen for you. Adjust the timer number you want, I've shown 15 minutes in this example.


VMix support

May 6, 2014

We are pleased to announce that we are a VMix partner.

Permalink launches Pay Per View with SE-VU

October 11, 2011 has started implementation of the SE-VU Virtual Usher ticketing system, allowing instant pay per view access to their content for those who don't want to torrent (and wait) for episodes of Pioneer One and other premium content.


API release 0.8 Announcement

August 11, 2011

SeeView (SE-VU) Virtual Usher

Video CDN customers can now access the Scale Engine API to build a pay per view theatre for Transaction Video on Demand. Developers should refer to the documentation. We have also posted example php code for creating a SE-VU Ticket (See View), our virtual usher system allowing content owners to manage pay per view video on demand for subscription VOD and transaction VOD.