Dept. of Computer Science and Engineering
Oregon Health & Science University
This dissertation presents a general design strategy for streaming media applications in best effort computing and networking environments. Our target application scenario is video streaming using commodity computers and the Internet. In this scenario, where resource reservations and admission control mechanisms are generally not available, effective streaming should be able to adapt to variations in bandwidth in a responsive and graceful manner. The design strategy we propose is based on a single simple idea, adaptation by priority data dropping, or priority drop for short. We evaluate the efficacy of priority drop in the video and networking domains. For video, we show how common compression formats can be extended to support priority drop, thereby becoming streaming friendly. In particular, we demonstrate that priority-drop video allows adaptation over a wide range of rates and with fine granularity, and that the adaptation is tailorable through declarative adaptation-policy specifications. Our main technical contribution is to show how to express adaptation policies and how to do priority-mapping, an automatic translation from adaptation policies to priority assignments on the basic units of video. In the networking component of this thesis, we present two versions of Priority-Progress Streaming, a real-time best-effort streaming protocol. The basic version does classic unicast streaming for video on demand style streaming applications. The extended version supports efficient broadcast style streaming, through a multi-rate multicast overlay. We have implemented a prototype video streaming system that combines priority-drop video, priority mapping, and the Priority-Progress Streaming protocols. The system demonstrates the following advantages of our approach: a) it maintains timeliness of the stream in the face of rate fluctuations in the network, b) it utilizes available bandwidth fully thereby maximizing the average video quality, c) it starts video display quickly after the user initiates the stream, and d) it limits the number of quality changes that occur. In summary, we will show that priority-drop is very effective: a single video source can be streamed across a wide range of network bandwidths, and on networks saturated with competing traffic, all the while maintaining real-time performance and gracefully adapting quality.
OGI School of Science and Engineering
Krasic, Charles, "A framework for quality-adaptive media streaming--encode once, stream anywhere" (2004). Scholar Archive. 311.