Glossary

A B C D E F G H I J K L M N O P Q R S T U V W X Y Z

A

AAC

Advanced Audio Coding (AAC) is the standard compression format used for audio tracks in live streams and multimedia files that are recorded to an MP4 container.

AC-3

Dolby Digital (AC-3) and Dolby Digital Plus (E-AC-3) are audio compression technologies that support up to six channels of sound.

Adaptive bitrate

Adaptive bitrate (ABR) streaming lets players switch between bitrate renditions of a stream to accommodate changing network conditions, CPU constraints, and display capabilities. Players control switching based on client-side factors, and Wowza Streaming Engine or Wowza Streaming Cloud perform the server-side switching transparently to viewers.

ABR streaming requires multiple versions, or renditions, of a file or live stream, each encoded at a different bitrate. Keyframes must be aligned across renditions in order for switching to work.

B

Bitrate

Bitrate is a measure of the throughput of streaming bits, typically measured in kilobits per second, or Kbps.

Higher-quality streams (with better resolution and larger frame sizes) have a higher bitrate than lower-quality streams. However, client bandwidth may limit the bitrate at which streams can play smoothly.

C

CDN

A content delivery network (CDN) is a distribution system that scales the delivery of content such as streaming media across the Internet. CDNs replicate content in caching servers located in geographically dispersed data centers, and deliver content to clients from the nearest server.

Codec

A codec (compression-decompression) is a hardware or software algorithm that encodes audio and video into a file format that can be transmitted, stored, encrypted, and played efficiently.

Lossy codecs are typically used in streaming because they produce smaller files that use less bandwidth. Lossy video codecs include H.264 / MPEG-4 AVC, H.263, and H.265. Lossy audio codecs include Dolby AC3, AAC, and MP3.

Lossless codecs, in contrast, are mostly used to store or archive media, because they retain all of the information in the original stream. Lossless video codecs include FFV1, JPEG 2000, H.264 Lossless, and PNG. Lossless audio codecs include MPEG4-ALS, FFMPEG, and QuickTime.

D

DRM

Digital rights management (DRM) refers to technology that protects copyrighted content from unauthorized distribution. Some streaming video DRM key management systems include BuyDRM KeyOS, EZDRM, and Verimatrix VCAS.

DVR

Digital video recording (DVR) is the capability to pause, rewind, and resume playing live streaming content. The nDVR feature in Wowza Streaming Engine brings DVR capabilities to live streaming.

E

Embedded player

An embedded player is an application that uses a browser plug-in as its runtime environment to play streaming media. An HTML page includes Embed and/or Object tags that load the player file (an SWF file for a Flash application or a XAP file for a Silverlight application).

Encoding

Encoding is the process of converting digital audio and video files into a different format. Encoding is performed by a codec.

F

Flash

Adobe Flash is a multimedia platform for producing and playing rich media content. Flash has been deprecated and will end-of-life by 2020.

Adobe Flash Player is a browser plug-in that can play live and VOD streams. Third-party players may also support Flash video playback.

Frame rate

The number of frames in 1 second of video. The slower the frame rate, the lower the video quality. High-definition devices typically capture video at 30 or 60 frames per second (fps). The standard for video streaming is 29.97 fps in the United States and Japan, and 25 fps in the rest of the world.

G

GOP

Group of pictures. Refers to the successive frames in an encoded stream from one keyframe interval to the next. For example, if the keyframe interval at frames 1 and 30, the GOP consists of frames 1 through 29.

H

H.263

H.263 is a video compression standard that was developed for low-bitrate videoconferencing but also supports Flash and RTSP streaming. It has been largely superceded by H.264.

H.264

H.264 is a video compression format that provides higher-quality video with lower bitrates than earlier formats such as H.263. The terms H.264, AVC (advanced video encoding), and MPEG-4 Part 10 are equivalent and interchangeable. H.264 is the current standard for video streaming and is the most commonly used format for encoding live streams and multimedia files for on-demand streaming. It is the default format used by Wowza Transcoder (in Wowza Streaming Engine) and by Wowza Streaming Cloud.

H.265

H.265, also called High Efficiency Video Coding (HEVC), is a video compression standard that delivers much higher-resolution video at the same bitrate as H.264. Its data compression ratio standard is double that of H.264.

HDS

Adobe HTTP Dynamic Streaming (HDS) is a streaming media protocol for use with Adobe Flash player applications. OSMF (Open Source Media Framework) is used in Flash players that play HDS streams.

Adobe HDS streams are used by Flash clients to play segmented video and audio files that have been downloaded to a player over HTTP. Wowza media servers segment live streams and multimedia files into small files (chunks) for delivery to requesting HTTP playback clients. HTTP clients use a manifest file generated by the media server to order requests for the chunks. Wowza Streaming Engine software breaks chunks on keyframes, although not usually on every keyframe; however, each chunk will contain at least one keyframe. The chunks created by the media server for HTTP streaming are kept in memory and not written to disk.

HTTP Live Streaming avoids the network problems sometimes associated with RTMP streaming, which can be blocked in some networks and may require port configuration on the delivery side. HTTP streams are also easier to cache and they work with proxy servers. (You can't proxy RTMP).

Adaptive bitrate (ABR) streaming is better supported in HTTP clients than in Flash RTMP clients. ABR is built into the HTTP streaming protocols. HTTP clients can constantly measure client-side bandwidth calculated by chunk size and download time, whereas RTMP must employ a separate process to measure bandwidth and requires a custom player to implement ABR streaming.

HLS

Apple HTTP Live Streaming (HLS) is a streaming media protocol for use in Apple iOS devices. Despite the name 'HTTP Live Streaming', both live and on-demand streaming is supported with HLS. Many set-top boxes, recent Android devices, VLC, and other players support HLS playback.

Apple HLS streams are used by iOS clients to play segmented video and audio files that have been downloaded to a player over HTTP. Wowza media servers segment live streams and multimedia files into small files (chunks) for delivery to requesting HTTP playback clients. HTTP clients use a manifest file generated by the media server to order requests for the chunks. Wowza Streaming Engine software breaks chunks on keyframes, although not usually on every keyframe; however, each chunk will contain at least one keyframe. The chunks created by the media server for HTTP streaming are kept in memory and not written to disk.

HTTP Live Streaming avoids the network problems sometimes associated with RTMP streaming, which can be blocked in some networks and may require port configuration on the delivery side. HTTP streams are also easier to cache and they work with proxy servers. (You can't proxy RTMP).

Adaptive bitrate (ABR) streaming is better supported in HTTP clients than in Flash RTMP clients. ABR is built into the HTTP streaming protocols. HTTP clients can constantly measure client-side bandwidth calculated by chunk size and download time, whereas RTMP must employ a separate process to measure bandwidth and requires a custom player to implement ABR streaming.

HTTP Streaming

See HLS.

I

IPTV

Internet Protocol Television (IPTV) comprises television services that are delivered by a video stream (encoded as a series of IP packets) instead of by more traditional television formats such as cable. This technology breaks the video and audio data into packets to enable transmission over the Internet. IPTV devices can be Wowza playback clients.

K

Keyframe

Keyframes mark the interval used to compress a group of video frames. Keyframe intervals, also called i-frame intervals, are also used as seek points in players. A seek point indicates where an adaptive bitrate rendition can be switched in a stream. Note that too many keyframes can result in poor (stuttered) playback.

L

Live streaming

Live streaming is the broadcasting and playing of video and/or audio content in real time. A live stream is always in progress and doesn't support pause, seek, or rewind functions. Live streams can originate from an encoder or from a static file.

Load balancing

Load balancing is the distribution of workloads across computers and networks. In streaming, load balancing is used to distribute playback client connections among edge servers to scale live and on-demand streaming.

M

Manifest

In streaming, a manifest is a file that lists the information that HTTP playback clients require to play a stream. When an HTTP playback client requests a stream, Wowza media server software responds with a manifest. HTTP clients use a manifest file generated by the media server to order requests for the chunks of a stream, and to get metadata, bitrate, and codec information.

Metadata

The metadata of a file or stream describes its contents. In streaming, an encoder adds metadata to the live stream or file during encoding. Playback clients use this metadata to display the stream properly. For example, a file will include duration information in the metadata that's used to configure a Seek bar for on-demand playback. Metadata that contains width and height information is commonly used to determine and display the correct aspect ratio for live streams on playback clients. The Wowza Transcoder, a live encoder, adds metadata to transcoded renditions.

MPEG

Moving Pictures Expert Group (MPEG) is a body of industry experts that sets standards in the field of audio and video. Working together since 1988, they have defined many of the codec and container formats that are used in video production and the streaming products and processes that Wowza Media Systems supports. Examples include H.264 (MPEG-4 Part 10), MPEG-TS, and more recently the H.265 and the MPEG-DASH standards.

MPEG-DASH

Dynamic Adaptive Streaming over HTTP (DASH), or MPEG-DASH, is an international standard for HTTP-based adaptive bitrate streaming. Like the proprietary HTTP-based technologies Apple HLS, Adobe HDS, and Microsoft Smooth Streaming, it delivers sequenced chunks of media content. In MPEG-DASH terminology, chunks are called segments.

MPEG-DASH serves clients a list of the available media chunk URLs in a Media Presentation Description (MPD) manifest. The manifest describes chunk information such as timing, language, timed text, and media characteristics such as video resolution and bitrate. Clients request media chunks sequentially based on network conditions, device capabilities, and other factors to enable uninterrupted playback of the adaptive bitrate stream.

MPEG-TS

MPEG Transport Stream (MPEG-TS) is a transport stream container format that's used for streaming and storage of streams.

Wowza Streaming Engine software can ingest MPEG-TS live streams, which can be re-streamed from live MPEG-TS encoders over UDP. The Stream Targets feature in the media server software supports publishing of MPEG-TS streams.

Wowza media server software writes .ts files to support playback of live Apple HLS streams and CDN caching infrastructures that support Wowza HTTP Origin features. These .ts files are kept in memory, not written to disk and so they're not easily portable for other purposes.

Multicast

Multicast is a process that lets a server send a stream to multiple recipients simultaneously in a single transmission. In this one-to-many distribution architecture, a single IP router creates optimal one-to-many distribution paths to a multicast destination address. A multicast stream is published to a multicast address in a VLAN. A live encoder publishes one stream to the multicast address; then playback clients stream from the multicast address, not directly from the source. The VLAN replicates multicast streams for each playback client. It's important to note that multicast streaming isn't supported over the public Internet.

Wowza Streaming Engine media server software can re-stream from a multicast address, allowing the stream to be played by any supported client. The software also includes the Stream Targets feature that supports multicast publishing.

When used as a multicast source, the media server doesn't log playback statistics because the playback clients stream from the multicast destination IP from which the stream is being published, not directly from the Wowza media server.

R

RTCP

RTP Control Protocol (RTCP) works with Real-time Transport Protocol (RTP) in RTSP streaming. While RTP carries audio and video streams, RTCP is the data channel in an RTSP stream. It's used primarily to send quality of service (QoS) data to the source.

RTMP

Real-Time Messaging Protocol (RTMP) is a protocol used by Flash Player to play on-demand and live streams. The Flash player can stream on-demand content from a web server (as a progressive download) or both on-demand and live streams by using a streaming media server, such as Wowza Streaming Engine. RTMP can contain multiple channels of video, audio, and data. RTMP provides low-latency streaming.

RTMP is also used for server-to-server streaming between edge servers and an origin server in a Wowza live stream repeater configuration.

RTMP is a TCP-based stateful protocol, which means it maintains persistent connections so that audio, video, and data can move in both directions in an RTMP connection. For example, media content can move between a Streaming Engine software client and a Flash client, and either client can play or publish audio and video and send and receive commands and data. Using a Flash RTMP application as a client enables a wide variety of applications, including audio/video/text chat, ad insertion (pre-roll), pay-per-view and pay-per-minute (PPV,PPM), and rich user experience applications synchronized with stream content.

By default, RTMP uses TCP port number 1935.

RTMP defines several virtual channels (tracks) on which packets are sent and received, and which operate independently of each other. These tracks can contain audio, video, or data. Typically, at least one audio, video, and data track exists in an RTMP stream. The data track can have cue points (timed text) and RTMP clients can be designed with callback functions that listen for cue points. These client-side callback functions might display captions, subscribe to new streams, or change the user interface.

During a typical RTMP session, packets are interleaved and multiplexed across different active channels to ensure that each channel meets its bandwidth, latency, and other quality of service (QoS) requirements.

There are a number of RTMP protocol sub types: RTMPE, RTMPS, and RTMPT.

RTMPE

RTMPE is an encryption variant of Real-Time Messaging Protocol (RTMP) that uses Adobe's security mechanism for encryption. Because RTMPE is known to have security issues, we recommend that the RTMPS protocol, an encryption variant that transmits data over a secure SSL connection, be used instead.

RTMPS

RTMPS is an encryption variant of Real-Time Messaging Protocol (RTMP) that transmits data over a secure TLS/SSL connection. This prevents security breaches such as "man in the middle" from succeeding during transmission. RTMPS is recommended rather than RTMPE for stream encryption.

RTMPS requires you to install an SSL certificate on the Wowza media sever. Users with Subscription and Perpetual licenses for Wowza Streaming Engine software can use Wowza StreamLock AddOn to get and install free 256-bit SSL certificates for use with RTMP (RTMPS) and HTTP (HTTPS).

RTMPT

RTMPT (HTTP Tunneling) is a tunneling variant of Real-Time Messaging Protocol (RTMP) that's encapsulated within HTTP requests. This allows RTMPT packets to traverse firewalls. RTMPT often uses cleartext requests on TCP ports 80 and 443, which allows it to bypass most corporate traffic filtering. Such an encapsulated session can pass RTMP, RTMPS, or RTMPE packets within the HTTP tunnel.

RTP

Real-time Transport Protocol (RTP) is a streaming protocol that defines a standardized packet format for delivering audio and video over IP networks. RTP is used with RTP Control Protocol (RTCP) in RTSP streaming. RTP protocol provides:
  - Jitter compensation and detection of out-of-sequence arrival of data, which is common during transmissions on IP networks.
  - Data transfer to multiple destinations through IP multicast.
  - Audio smoothing: packet loss that results in less than a second of lost audio data can be made unnoticeable with suitable error-concealment algorithms.

RTSP

Real Time Streaming Protocol (RTSP) is a network protocol created to control streaming media servers. It's used to establish and maintain streaming sessions between a stream source or playback client and a media server. RTSP uses RTP and RTCP for the delivery of the media.

RTSP maintains session state by using control sequences. These are commands that are sent over RTCP with session identifiers used to track concurrent sessions. Most RTSP control messages are sent by the client to the server, but some RTSP commands are initiated by the server and sent to the client. The default RTSP transport layer port number is 554.

S

Silverlight

Microsoft Silverlight is an application framework for writing and running rich Internet applications. The run-time environment for Silverlight is available as a plug-in for web browsers that run under Microsoft Windows and Apple OS X operating systems.

Smooth Streaming

Microsoft Smooth Streaming is a streaming media protocol for use with Microsoft Silverlight player applications. Smooth streams are used by Silverlight clients to play segmented video and audio files that have been downloaded to a player over HTTP. Wowza media servers segment live streams and multimedia files into small files (chunks) for delivery to requesting HTTP playback clients. HTTP clients use a manifest file generated by the media server to order requests for the chunks. Wowza Streaming Engine software breaks chunks on keyframes, although not usually on every keyframe; however, each chunk will contain at least one keyframe. The chunks created by the media server for HTTP streaming are kept in memory and not written to disk.

HTTP Live Streaming avoids the network problems sometimes associated with RTMP streaming, which can be blocked in some networks and may require port configuration on the delivery side. HTTP streams are also easier to cache and they work with proxy servers. (You can't proxy RTMP).

Adaptive bitrate (ABR) streaming is better supported in HTTP clients than in Flash RTMP clients. ABR is built into the HTTP streaming protocols. HTTP clients can constantly measure client-side bandwidth calculated by chunk size and download time, whereas RTMP must employ a separate process to measure bandwidth and requires a custom player to implement ABR streaming.

Streaming

Streaming is the process of sending compressed audio and video files or live broadcasts across a network without downloading the content or saving it locally. Clients play the stream as it's received or from a client-side buffer.

T

Transcoding

Transcoding is the process of converting digital audio or video from one encoded file format to another. Transcoding allows files that were originally encoded in one format to be played by a client in another format. It's a critical component of live streaming because it enables content to be played on a multitude of devices and screens.

By default, Wowza Streaming Engine reflects incoming streams and only transcodes them when the Wowza Transcoder is specifically invoked. Wowza Transcoder can also transrate streams to lower bitrate versions of the same format.

The transcoding technology used in Wowza Streaming Engine is also used by Wowza Streaming Cloud and Wowza ClearCaster.

The key advantage to using Wowza to perform server-side transcoding for adaptive bitrate streaming is to guarantee aligned keyframes of the bitrate renditions, which is necessary for switching during playback. Moreover, not having to produce each rendition on the encoder saves upload bandwidth. This enables higher-quality source streams where bandwidth is limited.

Transmuxing

Transcode-multiplexing (transmuxing) is a process that changes the format of an audio or video file while keeping some or all of the stream information from the original. In other words, transmuxing converts to a different container format without changing the file contents.

Transrating

Transrating is the process of changing a video or audio file from one bitrate to another without changing the file format. Transrating is often performed by an encoder to create the different renditions of the video for adaptive bitrate streaming. Transrating can also be performed by Wowza Transcoder (in Wowza Streaming Engine), Wowza Streaming Cloud, and Wowza ClearCaster to create lower bitrate renditions of the source stream.

Trick play

Trick play is the ability fast forward and rewind on-demand streams. Wowza Streaming Engine supports trick play for Flash RTMP clients and for FLV (.flv) files that contain Sorenson Spark or VP6 video. Trick play is not supported in Wowza Streaming Engine for H.264 video or in other client types.

U

UDP

User Datagram Protocol (UDP) is a connectionless protocol that's widely used in streaming. Unlike TCP, it doesn't perform error checking, which makes it more efficient but also more prone to network issues, packet loss, and packets arriving out of order. Wowza Streaming Engine can publish and re-stream MPEG-TS and multicast streams over UDP.

Unicast streaming

In unicast streaming, each playback client is served its own stream. With unicast streaming, server and network utilization increase linearly as playback load increases, so it's critical to be aware of the stream bitrate, the peak concurrent load, and the server-side network capacity.

For live streams, Wowza Streaming Engine can be configured for unicast streaming using an origin/edge repeater. For VOD, Wowza Streaming Engine supports unicast delivery using its Media Cache feature. When using these architectures, playback clients stream from edge servers that either repeat live streams from an origin server, or cache on-demand assets that are stored on a web server or network drive.

V

VOD

Video-on-demand (VOD) streaming uses a multimedia file as the source. It's always accessible, always plays from the beginning (or other specified start point), and it has a duration (which is usually included in the file's metadata). By comparison, a live stream is always played in progress, is only available while it's live, and has an unknown duration.

W

WOWZ

WOWZ is a TCP-based messaging protocol developed by Wowza and built in to Wowza Streaming Engine that allows server-to-server communications. The WOWZ protocol is also supported by Wowza Streaming Cloud ultra low latency stream targets, the Wowza GoCoder SDK, the Wowza GoCoder app, and Wowza Player. WOWZ supports SSL, so a WOWZ URL may begin with wowz:// or wowzs://.