overview - what OxygenTV's all about
resources - links for player, encoders, etc.
papers - OxygenTV documents
talks - talks and posters
screenshots - some eye-candy
people - who are we?
links - related work


Streaming media is becoming increasingly prominent on the Internet. At present, many end users settle for inflexible and suboptimal proprietary streaming solutions such as Windows Media Player and RealPlayer that are proprietary and do not solve the fundamental problems associated with Internet video and thus have a very low resulting quality. While today's streaming applications are closed and proprietary, the emerging MPEG-4 standard is gaining increasing acceptance as the standard for Internet video and has great promise to change this.

However, before this can happen, many issues with regard to streaming video over the Internet must be solved. The Internet imposes packet loss on data, which can severely hamper the quality of a compressed bitstream with interdependencies. Available bandwidth varies with time, and a streaming system should adjust its sending rate and the quality of the transmitted bitstream in accordance with these changes. Delays on the Internet are variable, which causes problems for an application that wants to play out received data at a constant rate.

A successful streaming media solution requires a framework that is adaptive to:

The OxygenTV project is developing an implementation of the adaptive video streaming framework that uses CM to adapt to variable bandwidth and delay and SR-RTP to perform selective retransmission for packet loss.

Currently, the OxygenTV video server uses the ffmpeg library to perform realtime encoding of video streams in multiple layers. The client requests some subset of these layers (according to the available bandwidth) and decodes and displays the stream using the ffmpeg libraries.

The client also has a plugin that provides interaction with Cricket, which allows the client to discover its the location, and an INS plugin, which retrieves the resources associated with that location (such as a larger display screen). Using this information and the Migrate plugin, a user viewing a video stream on a PDA (e.g., an Ipaq) can migrate the stream to other available displays. The client then uses SR-RTP to provide feedback to the server that display and bandwidth characteristics have changed.


Implementation of the general framework is under development, so there is no official release yet. Currently, only SR-RTP is available.

In the meantime, you can watch this video (31.8MB) showing OxygenTV in action.


Talks and Posters



Faculty: Hari Balakrishnan
Staff: Michel Goraczko
Nick Feamster
Allen K. Miu


Some links for related work can be found here.

NMS HomeProjectsPeoplePapersSoftware


M. I. T. Computer Science and Artificial Intelligence Laboratory · 32 Vassar Street · Cambridge, MA 02139 · USA