PET Quick Access Page

==================================== ====================================

What PET does

PET can be used with any packet-switched-network hardware or protocol. It operates as a layer above the transmission of packets (ATM cells, etc.). Using coding techniques, PET improves the quality of transmission over packet networks that have unpredictable losses. PET uses a unique multilevel forward-error-correction scheme which introduces a minimum increase in the transmission rate.

PET makes possible MPEG transmission over the INTERNET, which has not been practical due to bursty losses. The data communication industry has been forced to broadcast video in the form of motion JPEG, which in our tests can sometimes require eight times the transmission speed of MPEG.

We have applied PET to the transmission of video over the INTERNET. In a particular sample stream, a side-by-side comparison of MPEG stream encoding with and without PET demonstrates the dramatic improvement of picture quality due to PET, using only 24% redundancy on top of the standard MPEG data. For this particular group of pictures and frame sizes, this represents a more than five fold reduction in transmission rate over the JPEG mode to achieve comparable quality.

PET also makes it possible to broadcast to heterogeneous networks and to receivers of widely different capabilities. This allows the network and receiving workstations to discard arbitrary packets which cannot be handled due to limited bandwidth or processing power.

Return to table of contents

How PET works

The key idea is an encoding scheme that will recover the most important information of a message no matter which packets are lost or intentionally deleted in a transmission. By the judicious application of erasure coding, PET achieves greatly improved performance by enabling statistical multiplexing of video images. This is done without adding excessive overhead in terms of network capacity or delay, thus effectively decreasing transmission cost per channel.

While PET can take advantage of special purpose encoding/decoding hardware, the implemented examples, e.g. real-time video transmission, have demonstrated effective operation without such hardware, i.e. with software implementations using conventional computers.

Return to table of contents

Implementation of PET

MPEG encoded video uses three different frame formats:

A lost I frame affects at least a whole group of pictures (GOP) and B frames require an additional P frame to be correctly decoded.

For our particular example stream, we assigned priorities in a way that header information can be recovered from any 10% of the encoded packets, I frames from any 60%, P frames from any 75% and B frames from any 90%. Computing the redundancy distribution, we see that a total overhead of 23% enables the I frame to sustain losses of 40%. P frames can sustain losses up to 25%, and B frames, losses up to 10% and important header information up to 90%.

In the following two demonstration MPEG streams, encoded packets were randomly thrown away in order to simulate a lossy medium . On the destination side the received packets were decoded and missing frames were substituted by "dummy" B frames which repeat the last correctly decoded frame. The approximate size of each stream is indicated, so that you can estimate the downloading time. Note that the stream with PET protection is smaller than that without PET protection because we had simulated greater losses for that stream. The original stream is obviously bigger than both, due to the simulated losses in each of them.

Red's Nightmare

Hockey sequence

If you would like to see what packet errors can do to an MPEG stream without downloading the complete stream, we have a few GIF snapshots that were taken during playback:

Red's Nightmare

Hockey sequence

Return to table of contents
Back to PET Home Page