The main challenge in wireless video multicast, is to serve multiple receivers who have different channel characteristics. These receivers differ in the bit rate they can support, the throughput they
obtain, and the packet loss they experience, but are all interested in the same video. The currently wide-spread design exhibits a cliff effect in video performance. This is due to decisions both at the PHY and the video codec. First, packets are transmitted by the PHY at a particular 802.11 bitrate (modulation and code), and hence receivers that have low-SNR channels that cannot support this bitrate are unable to receive these packets, and decode the video. Thus, broadcasting a video stream to all receivers requires transmitting at the lowest bit-rate. This restriction then forces the video codec to encode the stream at a low quality, and hence receivers that have channels that can support higher qualities do not experience any advantage. Thus, all receivers are essentially reduced to the performance of the worst receiver in a multicast group.
SoftCast is an alternative design for wireless video multicast, in which a sender broadcasts a single stream and each receiver watches a video quality that matches its channel quality. In SoftCast, channel noise directly translates to a small perturbation in pixel values, allowing graceful degradation with increasing noise.
Although, we have implemented SoftCast in a physical testbed, we have also created a simulator that can predict the performance of SoftCast against MPEG. Below are the results of our simulations for several videos.
The source video format is grayscale SIF (352×240 30fps), i.e., around 2.5Mpix/sec.
The simulated channel SNR drops from 12dB to 4dB. Both MPEG and SoftCast are using approximately 12% of the bandwidth of an 802.11 channel. For MPEG we use x264 codec encapsulated in MPEG-TS, as implemented in the ffmpeg software.
We encode MPEG at two different bitrates:
MPEG HQ at 2200kbps using QPSK and 3/4-rate code (equivalent to 802.11g at 18Mbps)
MPEG LQ at 1440kbps using QPSK and 1/2-rate code (equivalent to 802.11g at 12Mbps)
The choice of bitrate+modulation for MPEG is a tradeoff between fidelity (lossiness of compression) and robustness (resilience to noise).
The HQ encoding offers higher quality of image at high channel SNR (low noise) but breaks quickly as the SNR drops.
LQ lasts longer, but cannot benefit from high SNR near the transmitter.
In contrast, in SoftCast, there is no choice of bitrate or modulation. The benefit is that video quality can degrade gracefully with channel quality.
The demo application might take some time to download the uncompressed videos over slow links! Please, exercise patience.
-
MPEG HQ vs.
SoftCast Link
-
MPEG HQ vs.
SoftCast Link
-
MPEG HQ vs.
SoftCast Link
For reference on SoftCast, please see the
technical report. Below we answer some of the questions we received regarding the report.
Q: What exactly is the modulation that SoftCast uses over OFDM?
A: Technically speaking, the modulation is a very high density QAM, i.e., every point attainable by the D/A converter is part of the constellation. However, unlike typical QAM, there is no special mapping of codewords to constellation points (e.g., Gray code). Instead, each dimension of the constellation is mapped via direct PAM. Specifically, each data subcarrier in a symbol carries two fixed-precision (e.g., 8-bit) real values. The value corresponds directly to the amplitude in the particular dimension. Another way to think about this is that SoftCast transmitter does not use the standard PHY mapping, but instead, the output of the encoder is fed directly to the IFFT:
Q: Is SoftCast using regular OFDM coding (minus the FEC)? Could channel impairments affect the high order bits of the encoded values, thus resulting in disproportionate errors?
A: As stated in the answer above, SoftCast uses directly mapped PAM. Therefore, the error in the decoded real value is always directly proportional to the error in the received constellation point. This is in contrast to standard mapped QPSK, where each bit is equally likely to become flipped on error.
Q: What is power allocation scaling? What does it have to do with power? How is scaling used? Doesn't the PHY decide what power to use on each subcarrier?
A: In SoftCast, the PHY feeds the encoder's output directly into the IFFT. This signal is then converted to analog, to RF and amplified. Thus overall power is determined by the PHY. However, how much power is used by one subcarrier in comparison to another depends on the encoder. When it comes to channel subcarriers, the encoder will actually ensure that they all carry equal power via whitening. Where scaling is important is how the power is allocated to the subbands of the source image. I.e., for best noise resilience high DCT frequencies should receive a slightly higher gain than the low frequencies; for details refer to the report.
Q: How does the decoder operate if the metadata including the subband variances is lost? Can the decoder still operate?
A: Indeed, if the metadata about the image is completely lost then the decoder cannot derive the decoding matrices. However, this metadata is quite easy to recover, because the statistical properties of the image do not change dramatically from one to the other, and the decoder is very robust to inaccuracies in these parameters. Thus, the SoftCast's decoder simply reuses the last correctly decoded metadata if the current is not available. (The other metadata is the random seed used for whitening, but that can also be derived from previous frames.)
Q: What sort of latency does SoftCast's video codec exhibit? And what is its computational cost in comparison with MPEG codecs?
A: We expect the comptational cost of SoftCast to be smaller than
MPEG + coded PHY. Conceptually, the operations needed by SoftCast are comparable to
MPEG's DCT. In contrast to
MPEG, there is no computationally expensive motion compensation, and the receiver PHY does not need a Viterbi decoder.
Q: What if the uncompressed source rate (i.e., pixels per second) is larger than the available channel bandwidth?
A: The natural thing to do would be to reduce the source rate, e.g., by subsampling spatially or temporally. For instance, the encoder could be instructed to drop some of the least significant subbands after DCT (equivalent to spatial subsampling). Since SoftCast perform competitively with
MPEG given the same bandwidth of 1 channel dimension per pixel, we believe that it would remain competitive at lower rates. This is an interesting issue for further research.
Q: Would it be possible to use some of the components of SoftCast (such as LLSE, whitening) in an unmodified PHY? Could standard PHY benefit from these features?
A: All features of the SoftCast encoder are designed to work on top of a
raw OFDM PHY. While it would be possible to use SoftCast's power allocation and LLSE with a standard entropy coder, it would probably perform worse than the quantization currently employed by
MPEG.
Q: SoftCast's design requires PHY changes. Doesn't requiring non-standard design changes seriously impede adoption, since the cost of 802.11 chips is so low these days?
A: The PHY required by SoftCast is actually a simplification of 802.11 OFDM, and with little effort SoftCast can be adopted to most common software radio platforms. Furthermore, new non-trivial features are regularly rolled out as part of the 802.11 standards, and SoftCast-like PHY might be one in near future.