Potential of Quality-Adaptive Streaming of Layer-Encoded Video over a Wireless Network : Master Thesis

v List of Figures. vi Chapter 1: Introduction . 1 1.1 Streaming . 1 1.2 Problems Related to Streaming. 2 1.3 The Goal of this Thesis . 3 1.4 Thesis Structure . 5 Chapter 2: Background Materials . 6 2.1 Streaming in Practice . 6 2.1.1 Streaming with UDP. 7 2.1.2 Streaming with TCP. 9 2.2 Wireless Network. 11 2.2.1 IEEE 802.11 WLAN. 11 2.2.2 Simulation of a Wireless Network. 14 2.3 Scalable Video Format. 15 2.3.1 The MPEG Video Format. 15 2.3.2 Scalable Video . 16 2.3. 3 SPEG – A Modification to MPEG. 18 2.4 Priority-Progress Streaming (PPS) . 18 2.5 Priority Mapping. 21 2.6 Overview of Qstream. 23 2.6.1 Collaboration of the Three Programs. 23 2.6.2 GAIO and QSF . 26 Chapter 3: The Analysis. 28 3.1 Part I – A Closer Look at Qstream. 28 3.1.1 Naming Conventions . 28 3.1.2 Data Structures. 29 3.1.3 Phase I – The Setup. 33 3.1.4 Phase II – The File Request . 34 3.1. 5 Phase III – The File Fetching and Window Preparation. 36 3.1. 6 Phase IV – The Transmission . 38 3.1. 7 Work Conserving Strategy. 42 3.1. 8 Window Scaling. 43 3.2 Part II Ways of Improvement . 45 3.2.1 A Way to Confront the Wireless Network. 45 3.2.2 Prediction of the Network Bandwidth . 46 The Department of Informatics Potential of Quality-Adaptive Streaming of Layer-Encoded Video over a Wireless Network ii 3.2.3 The Trade-Off between Quality and Workahead. 47 3.2.4 Proposal of Improvement Code . 48 Chapter 4: The Implementation. 52 4.1 Additions to the Data Structures . 52 4.2 Threshold Variables . 54 4.3 The Functions. 58 4.3.1 The Bandwidth Prediction Function . 58 4.3.2 The Written Bytes Update Function . 59 4.3. 3 The Layer Update Function . 59 4.3. 4 The Workahead Update Function . 62 4.3. 5 The Transmission Crisis Check Function. 62 4.3. 6 The Adaptation Function . 63 4.3. 7 The Workahead Transmission Function . 64 4.3. 8 The Initiation Function . 65 4.4 An Illustration of the Improvement Code. 67 4.4.1 Part I – Initiation . 68 4.4.2 Part II – Quality Adaptation. 69 Chapter 5: Testing the Improvement Code. 71 5.1 Bandwidth Scenarios . 72 5.2 Using the Original Qstream Code. 75 5.3 The Addition of the Improvement Code. 78 5.4 An Objective Metric to Represent the Perceived Quality. 82 5.5 An Objective Assessment of the Improvement Code . 87 5.5.1 Objective Quality when Connectivity is Getting Bad. 87 5.5.2 Objective Quality when Connectivity is Getting Good . 93 5.5.3 An Objective Quality Comparison Between The Original Qstream Code and The Improvement Code. 97 5.6 Evaluation of the Improvement Code . 102 Chapter 6: Conclusion. 104 6.1 The Achievement of this Thesis . 104 6.2 Future Work . 106 Appendix A. 107 A.1 The Bandwidth Prediction Function . 107 A.2 The Written Bytes Update Function . 108 A.3 The Layer Update Function . 109 A.4 The Workahead Update Function . 111 A.5 The Transmission Crisis Check Function. 112 A.6 The Adaptation Function . 112 A.7 The Workahead Transmission Function . 113 A.8 The Initiation Function . 114 The Department of Informatics Potential of Quality-Adaptive Streaming of Layer-Encoded Video over a Wireless Network iii A.9 Registering the Number of Bytes Written to TCP. 115 Appendix B . 118 B.1 Sample of a Bandwidth Scenario Script . 118 B.2 The Code for Computing the Spectrum2 Value . 118 Bibliography . 121 The Department of Informatics Potential of Quality-Adaptive Streaming of Layer-Encoded Video over a Wireless Network