Software vs. Hardware Compression: Striking the Perfect Balance

The compression of high-quality video has traditionally been a compute-intensive operation requiring dedicated hardware. But the steady progression in computational power of commercial-off-the-shelf (COTS) equipment has enabled the gradual transition of some video processing operations to software-based environments. A software-based approach can offer significant flexibility and agility improvements over purpose-built hardware, but at a potential cost to video quality or density.

Introduction

Modern video delivery systems rely on some form of compression, whether it’s a traditional broadcast TV, cable service to a set-top box, or a streaming service that terminates on a gaming console, smartphone, or tablet device. Though several compression types have preceded it, MPEG is one of the most widely used compression standards. This compression type has predominantly required hardware encoding, but high-quality software-based solutions have become more prevalent due to the steady increase of computational capabilities in general purpose compute platforms.

Another influential factor in determining when to utilize hardware-assisted or software-based compression is recent shifts in the way video content is distributed and consumed. Media companies are now confronted by the need to produce more content than ever before and to distribute it to an ever-growing diversity of receiving devices. These demands require media companies to support a growing assortment of protocols, formats, and resolutions, which can require frequent upgrades and code revisions.

Despite the flexibility and cost-efficiency benefits of moving compression operations to software, media companies must consider an assortment of variables. Any shift from hardware-based encoding to software-based encoding will depend upon a number of factors, including:

  • Replacement equipment cost, includes one-time purchase plus licensing and support
  • Existing infrastructure, what can be reused, how complex will conversion be?
  • Distribution requirements, what distribution formats and resolutions are needed?
  • Technical factors, such as video quality and latency

Compression Options

Now let’s compare the two basic solutions – hardware encoding and software encoding.

Hardware

Dedicated hardware encoding has, in general, been regarded as the better option for high video quality compression platforms because these encoders use processors that are specifically designed for the job at hand — they only process the algorithms required.

Hardware compression uses ASICs (Application Specific Integrated Circuits) for encoding processing and FPGAs (Field Programmable Gate Arrays) to support any additional Transport Stream (TS) processing or video analysis. But the higher processing performance and power efficiency comes at a cost.

Additional benefits of hardware encoding include lower latency. In hardware compression, latency depends on the encoding type and profile. Figure 1 lists the contribution encoding latencies of several hardware encoding types. Distribution encoding latencies are typically higher, but deliver better bitrate efficiency. Hardware encoders are often used in more static, point-to-point systems that are reconfigured rarely or not at all during their operation.

Figure 1.  Hardware Encoding Latency

Figure 1. Hardware Encoding Latency

Advances in compression technologies, such as H.264 and HEVC (High-Efficiency Video Coding), have enabled the delivery of more and higher-quality services over existing infrastructures like terrestrial, satellite and cable. (H.264 delivers the same quality as MPEG-2 at approximately half the bandwidth. HEVC is roughly twice as efficient as H.264).

While dedicated ASICs tend to be lower cost for the performance they provide and require less power – two key components in the selection process for any encoding solution – a significant disadvantage is the lack of flexibility, and the fact that many key functions cannot be re-programmed. Every time a new codec is introduced, new hardware is needed. An alternative solution for hardware encoding is an FPGA-based encoder, which provides the flexibility of being reprogrammable and has a faster time to market. One key drawback, however, is their lower level of density and a greater cost tradeoff when compared to an ASIC-only implementation – not just in expense but in power consumption.

Hardware-based encoding often has higher upfront costs but lower running costs, such as maintenance and power consumption, than a service based software approach. The costs for a software-based approach, however, depend on whether the encoder is local or virtualized in the cloud. Outside of a cloud model, the upfront costs can be comparable to hardware only– in order to purchase the servers needed – as well as ongoing operational costs. A cloud model offers low initial costs but higher operating costs.

One easy way to do the expense analysis is to think about it as an OPEX versus an on-premise hardware model. In the on-premise model, you have to buy a certain number of encoders upfront whether you use them or not, which increases upfront costs. A service provider offers the same equipment at a fraction of the cost upfront, but over a few years, you might end up paying more due to higher running costs.

Software Compression

The main difference between hardware and software encoding is that software encoding uses standard commercial-off-the-shelf (COTS) server platforms that are widely available through major IT providers – such as Hewlett Packard Enterprise and Microsoft – and can simultaneously process a multitude of computations.

Software-based encoders have historically been regarded as not delivering the same quality as hardware encoders in real time. But those deficiencies are disappearing. Video quality deficiencies in the past were not due to the software itself, but to the compute and processing power in the servers, which did not meet the needs for real-time performance. The processing power in IT servers is rising dramatically, meaning software can do more and more in real-time that couldn’t be done in the past. We are now reaching a point where software is becoming cost effective and is meeting the required level of channels and quality and performance targets that service providers need.

Running compression operations on generic server platforms offers significant flexibility and versatility. Software-based encoding is also well tailored to cloud-based and OTT applications, which require the transcoding of multiple ABR (Adaptive Bit Rate) streams of the same content to accommodate changes in transmission bandwidth and/or for differing receiving devices.

Hybrid Software and Hardware Compression

Combining software and hardware compression solutions in a hybrid approach often provides media professionals with the ability to customize a compression strategy that most efficiently balances video quality, flexibility and costs. A hybrid approach, for example, may rely on ASICs-based hardware to manage the complexities of encoding and software to manage other requirements, including TS (transport stream) processing or video analysis, removing the need for FPGAs. A hybrid solution often gives media companies the ability to provide denser solutions while at the same time, simplifying the process of adding new features — all while retaining video quality due to the advanced computational power of the hardware used. The hybrid approach allows for fast application of the right tools for a given requirement at any time.

While moving to software-based systems on standardized IT platforms allows for a more flexible and cost-effective approach for the distribution of content, the cost and operational disruption of a wholesale move to an all-IP environment is not feasible for most media companies. The move to an IP-based infrastructure, with rare exception, will be gradual.

Putting it all Together

Achieving a compression strategy that strikes the perfect balance between hardware and software depends on a number of variables (See Figure 2.)

  • Broadcasters, content distributors and others will need to prioritize the importance of flexibility, density, video quality, and price-performance on a service-by-service basis.
  • Media companies will need to closely monitor additional factors and market drivers, including codec maturity, advances in the computational power of generic platforms and shifts in video consumption practices.
Figure 2.  Compression Comparison

Figure 2. Compression Comparison

In today’s dynamic market, a well-tuned compression strategy is a competitive imperative. The ability to flexibly and cost-efficiently repurpose existing content to OTT and ABR platforms can increase revenue and market share for both content owners and distributors. Achieving a balanced compression strategy depends on a number of factors, including technical and business requirements, as well as all-important budgetary considerations.

Whether to provide high-quality linear service over cable and satellite or to provide hundreds of thousands of services to multiple devices, means a comprehensive and optimized compression strategy has never been more important.

You might also like...

Essential Guide:  Hybrid CDN

OTT delivery continues to expand to meet the relentless growing consumer demand. This trend shows no chance of abating and technologists are continually looking to innovation to scale infrastructures accordingly. But what does it mean to scale OTT? Where is…

Bonded Cellular At The 2020 NAB Show

Need a live shot from inside an unmarked moving rental sedan during a thunderstorm? No problem.

Data Recording and Transmission: Error Correction II - Part 17

Here we look at one of the first practical error-correcting codes to find wide usage. Richard Hamming worked with early computers and became frustrated when errors made them crash. The rest is history.

Data Recording: Error Correction - Part 16

Error correction is fascinating not least because it involves concepts that are not much used elsewhere, along with some idiomatic terminology that needs careful definition.

Data Recording: Error Handling II - Part 15

Errors are handled in real channels by a combination of techniques and it is the overall result that matters. This means that different media and channels can have completely different approaches to the problem, yet still deliver reliable data.