Containing Costs: How Publishers Can Save Money on ABR Encoding
One company using Wowza Streaming Engine for both live and VOD distribution with dynamic packaging is TourGigs, a concert film technology company specializing in live streaming and concert videos. I spoke with Casey Charvet, director of technology for the company. According to Charvet, TourGigs switched to Wowza from an RTMP-based system that didn’t offer ABR streaming. The company chose Wowza because of the combination of live transcoding and dynamic packaging, starting off creating ABR packages for HDS for computer playback on its Flash-based player, and HLS for mobile.
At the time, TourGigs delivered its VOD files via progressive download, which increased CDN costs and also lacked ABR. Once Tour Gigs created the new live workflow with Wowza, it converted its VOD delivery system to the same schema. Rather than use the MP4 files created during the live event, TourGigs remixes the original camcorder videos, which lets the company fix any glitches in the live production and encode the multiple bitrate MP4 files using higher quality encoding techniques, such as two-pass encoding, and more advanced x264 settings.
Interestingly, as TourGigs migrated its player from Flash to HTML5, it standardized on HLS as the universal delivery format. Charvet continued with the Wowza system for single format delivery because it was so “simple and elegant” and because he wants the ability to service customers who may want to deliver in other formats, like DASH, HDS, or Smooth Streaming. TourGigs’ Wowza-based schema is shown in Figure 5, with live feeds processed in the cloud and VOD clips encoded and originated from gear located in a co-location facility. The ControlPlane layer is a proprietary server-side layer that provides redundancy, access to multiple CDNs, and security.
Figure 5. The Wowza-based TourGigs distribution architecture
Several other Wowza customers weighed in on the benefits of dynamic packaging. For example, Endavo Media, which provides media management and distribution platform technology and services, deployed Wowza when it transitioned to an HLS delivery of live and VOD streams, with fallback to RTMP-based Dynamic Streaming. In both cases, Endavo creates a single set of MP4 files and hands it off to the Wowza Streaming Engine, which transmuxes as needed.
According to Endavo CEO Paul Hamm, the Wowza-based solution delivers up to 1080p streams, some with encryption, with no latency or decreased throughput. For VOD delivery, Endavo didn’t even have to re-encode the files originally used for RTMP Dynamic Streaming. According to Hamm, “We really did not find any drawbacks with dynamic HLS from Wowza as we had the infrastructure in place along with suitable mezzanine files. Choosing dynamic saved the time and storage space which would have been required to chunk the entire library.”
Similarly, Panda O.S., a software development company specializing in online video solutions, previously used static packaging for its products and services. According to CEO and co-founder Leon Gordin, the many small files associated with static packaging created problems during upload and complicated experimentation with segment size and other configuration options. Panda O.S. did have to convert its MPEG-2 transport stream content to the MP4 format to make the switch to dynamic packaging. However, after the switch, Panda O.S. delivers live and VOD streams at 1080p resolution and above, many with DRM, and reports no latency or decreased throughput resulting from dynamic packaging.
Dynamic packaging has also proved useful in the enterprise. For example, I spoke with a streaming technology expert from a household name-technology company who could not speak on the record. The company is using Wowza as the video distribution hub for its internal webinar system, inputting a single RTMP stream, transcoding that stream to multiple resolutions, and distributing the streams via multiple protocols and formats, including multicast for internal distribution and HLS for most other endpoints. He reported that converting over to dynamic packaging cut storage costs by over 70 percent.
Want actual numbers? Well, in early 2016, I worked with a consulting client who was converting a large existing library over to ABR streaming, as well as producing significant hours of new videos. During the transition year, dynamic packaging reduced the encoding costs of the library transcode and ongoing encodes by close to $90,000 and cut storage costs by around $34,000. Add back the $20,000 or so it would cost to run Wowza Streaming Engine, and total savings slightly exceeded $100,000.
Note that Wowza and Azure are not the only dynamic packaging solutions available. For example, Panda O.S.’s Gordin reported that the company also uses open-source solution NGINX to dynamically package for some customers. In addition, Elemental Delta is a video delivery platform that can perform what the company calls “just-in-time (JIT) video packaging,” as well as many other features.
Akamai and Throughput Concerns
Though dynamic packaging works well for hundreds or even thousands of simultaneous users, Will Law, chief architect of media cloud engineering at Akamai, points out that when streaming gets to a truly massive scale, like tens of millions of connections, the extra work associated with dynamic packaging is magnified. According to Law, this reduces the throughput of Akamai’s edge servers, and the extra complexity associated with dynamic packaging increases the opportunity for workflow issues to arise.
Though Akamai has supported dynamic packaging for more than 6 years, and continues to do so, Law notes that Apple’s adoption of the fragmented MP4 format may enable static packaging without the associated storage costs, providing the best of both worlds. At a high level, the common media application format (CMAF) support makes HLS compatible with fragmented MP4 files, enabling one set of media files that can be deployed via HLS and DASH simply by creating unique text-based manifest files for each format. At present, however, though HLS and DASH can share a common media file format, the Apple ecosystem uses a different encryption technique, so until this is resolved, producers will still need two sets of CMAF media files, one for content encrypted with cipher block chaining (CBC), and the other for other content encrypted with common encryption (CENC).
I asked Netflix director of encoding technologies David Ronca about the potential for CMAF, and he commented, “Our primary packaging model is ... DASH-CENC with AES-CTR (advance encryption counter mode) encryption. CMAF is shaping up to be compatible with our streaming format, and if that compatibility is achieved, it is valuable to us because it encourages wider support of the existing, and broadly deployed, DASH model. If CMAF fails to provide compatibility with the existing DASH model including requiring support for AES-CTR encryption, then all CMAF will have achieved is to add yet another format, and thus the value would be low.”
The bottom line is that though CMAF provides a common media format, until the DRM issues are ironed out, which may be complicated by the installed base of HLS-compatible devices, it won’t resolve the storage issues related to static packaging.
Creating the MP4 Files
In most instances, for live event streaming, the simplest, least expensive approach is to send a single input stream from the event into your encoding facility where it can be transcoded into multiple MP4s and then dynamically packaged as appropriate. What about creating multiple bitrate MP4 files for VOD?
Though the gap is closing, on-premises encoders still tend to be the least expensive alternative. As an example, in Figure 5, TourGigs deployed an “offline encoding cluster,” which is its own homegrown encoder developed precisely for this reason. In my own experience, in early 2016, I compared cloud and on-premises encoders for a client implementing dynamic packaging. I verified my estimates with all the various providers, who will go unnamed. Prices for producing MP4 files in the cloud ranged from $82,000 to $178,000 for 2016–2019. Alternatively, the client could buy a single appliance for a 4-year cost of just under $32,000 to handle the same load.
While certainly there are some storage and operating costs associated with an appliance, these seem less than the $50K difference between the appliance and the cheapest cloud solution. However, as cloud prices drop, the gap will obviously narrow. Still, if you’re searching for the cheapest way to produce your MP4 files for VOD, start with an appliance.
When pricing cloud options, try to find alternatives to per-gigabyte or per-minute pricing, like the reserved cloud instances that you can rent from Encoding.com, or Elemental’s platform as a service approach, which is priced similarly. Also consider new service provider Hybrik, which charges a flat fee based upon the number of cloud machines you can run simultaneously with its software. (Full disclosure: I have done some consulting projects with Hybrik.)
[This article appears in the November/December 2016 issue of Streaming Media magazine as "How to Save Money on Your ABR Encoding."]
Netflix's compact mobile download files look surprisingly great. Here's how video creators make their own low-bitrate files look just as impressive.
Use a single adaptive group, packaged differently for different targets, to keep encoding and storage costs down.
Multicast-assisted ABR (M-ABR) is a low cost and easy-to-deploy solution that allows operators to see multicast gains on all in-home devices leveraging their TV Everywhere infrastructure.
Companies and Suppliers Mentioned