Introduction to AMD Xilinx acceleration with Wowza Streaming Engine transcoding flow

With Wowza Streaming Engine 4.8.22, the transcoder in Wowza Streaming Engine™ media server software supports accelerated video transcoding with an AMD Xilinx Alveo U30 data center accelerator card.

This integrated flow allows users to seamlessly leverage the hardware-accelerated features of Xilinx video codec units, enabling high-density real-time transcoding for live-streaming video. Hardware accelerated features comprise various elements, including a decoder, a scaler, an encoder, and a lookahead.

The important feature highlights of the Wowza Streaming Engine 4.8.22 and AMD Xilinx Alveo U30 integrated flow are listed in this article. For a complete list of supported features, see the Xilinx Video SDK documentation. To better understand limitations when using the Alveo U30 card, see Limitations of AMD Xilinx Acceleration with Wowza Streaming Engine Transcoding.

Video Codec Unit 

  • Progressive support for H.264 and H.265 video codecs.
  • Simultaneous encoding and decoding up to 2 times 4K UHD resolution at 60 Hz per card.
  • Resolution support from 128x128 to 3840x2160.
  • Simultaneous encoding and decoding of up to 48 streams with a maximum aggregated bandwidth of two 3840x2160@60 fps per card, etc.

Adaptive Bitrate Scaler

For streaming applications, video is distributed in different resolutions and bitrates to adapt to varying network bandwidth conditions. All adaptive bitrate (ABR) transcoding systems require an ABR scaler that downscales an input video stream to several different smaller resolutions that are then re-encoded. These smaller resolutions are referred to as an image pyramid or an ABR ladder.

An ABR ladder supports the following features:

  • High-quality polyphase scaling with 64 phases and up to 12 taps in both horizontal and vertical directions per stage.
  • 1080p 60 real-time or equivalent distributed between up to eight outputs.
  • Resolutions from 128x128 to 3840x2160 in multiples of four.
  • Aggregate bandwidth of 2160p120 per device, which can create multiple ABR ladder renditions from a 2160p 60 input.

The following are the transcoding configurations that are tested using Alveo U30:

Transcoding configurations

Input resolution Output resolution
4Kp60 4Kp60
4Kp30 4Kp30
1080p60 1080p60
1080p30 1080p30

Transcoding with scaling configurations (first output must match incoming frame rate)

Input resolution Output resolution
4Kp30 4Kp30, 1080p30, 720p30, 480p30
1080p60 720p60, 480p60, 360p60, 240p60
1080p30 720p30, 480p30, 360p30, 240p30
1080p60 1080p60, 720p60, 480p60, 360p60, 240p60
1080p30 1080p30, 720p30, 480p30, 360p30, 240p30

Note: You can test other configurations in addition to the ones listed in the previous tables.

Support for WebRTC sources

In Wowza Streaming Engine 4.8.25, support was added for WebRTC input transcoding using the AMD Xilinx Alveo U30 card. This feature is available as a preview since it presents some limitations. For related configuration options, see Allocate resources to use WebRTC with U30.

More resources