Zhetao Li Fei Gui Xiangtan University

Slides:



Advertisements
Similar presentations
Jung-Hwan Low Redundancy Layered Multiple Description Scalable Coding Using The Subband Extension Of H.264/AVC Department of Electrical.
Advertisements

Fountain Coding-based Video Transmission System over Heterogeneous Wireless Networks Presented by Hyunchul Joo POSTECH
Streaming Video over the Internet
Improving Communication Quality with Reed Solomon Code in Internet Voice Broadcasting System Shingo Kashima Kyushu University, Japan Asia-Pacific Advanced.
Doc.: IEEE /0604r1 Submission May 2014 Slide 1 Modeling and Evaluating Variable Bit rate Video Steaming for ax Date: Authors:
Streaming Video over the Internet: Approaches and Directions Dapeng Wu, Yiwei Thomas Hou et al. Presented by: Abhishek Gupta
Adaptive Video Streaming in Vertical Handoff: A Case Study Ling-Jyh Chen, Guang Yang, Tony Sun, M. Y. Sanadidi, Mario Gerla Computer Science Department,
A Layered Hybrid ARQ Scheme for Scalable Video Multicast over Wireless Networks Zhengye Liu, Joint work with Zhenyu Wu.
End-to-End TCP-Friendly Streaming Protocol and Bit Allocation for Scalable Video Over Wireless Internet Fan Yang, Qian Zhang, Wenwu Zhu, and Ya-Qin Zhang.
An Integrated Source Transcoding and Congestion Control Paradigm for Video Streaming in the Internet Proposed by R. Puri, K.W. Lee, K. Ramchandran and.
1 A Comparison of Mechanisms for Improving TCP Performance over Wireless Links Course : CS898T Instructor : Dr.Chang - Swapna Sunkara.
Using Redundancy and Interleaving to Ameliorate the Effects of Packet Loss in a Video Stream Yali Zhu, Mark Claypool and Yanlin Liu Department of Computer.
Multi-Path Transport of FGS Video Jian Zhou, Huai-Rong Shao, Chia Shen and Ming-Ting Sun ICME 2003.
Multiple Sender Distributed Video Streaming Nguyen, Zakhor IEEE Transactions on Multimedia April 2004.
Physical Layer Informed Adaptive Video Streaming Over LTE Xiufeng Xie, Xinyu Zhang Unviersity of Winscosin-Madison Swarun KumarLi Erran Li MIT Bell Labs.
Distribution of Multimedia Data Over a Wireless Network (DMDoWN): An Introduction Presented By: Rafidah Md Noor Faculty of Computer Science & Information.
CprE 545 project proposal Long.  Introduction  Random linear code  LT-code  Application  Future work.
Multicast and Unicast Real-Time Video Streaming Over Wireless LANS April. 27 th, 2005 Presented by, Kang Eui Lee.
報告人:林祐沁 學生 指導教授:童曉儒 老師 March 2, Wireless Video Surveillance Server Based on CDMA1x and H.264.
Scalable Video Coding and Transport Over Broad-band wireless networks Authors: D. Wu, Y. Hou, and Y.-Q. Zhang Source: Proceedings of the IEEE, Volume:
Selective Retransmission of MPEG Video Streams over IP Networks Árpád Huszák, Sándor Imre Budapest University of Technology and Economics Department of.
Analysis of TCP Latency over Wireless Links Supporting FEC/ARQ-SR for Error Recovery Raja Abdelmoumen, Mohammad Malli, Chadi Barakat PLANETE group, INRIA.
TCP-Cognizant Adaptive Forward Error Correction in Wireless Networks
PROTEUS: Network Performance Forecast for Real- Time, Interactive Mobile Applications Qiang Xu* Sanjeev Mehrotra# Z. Morley Mao* Jin Li# *University of.
3GPP2 Evolution Workshop Multimedia Codecs and Protocols 3GPP2 TSG-C SWG1.2.
Adaptive QoS Control of Multimedia Transmission Over Band-limited Networks Presenter: Hu Huang Nov G.Y.Hong 1, Member, IEEE, A.C.M.Fong 1, Member,
RTP Functionalities for RTCWEB A combined view from the authors of draft-cbran-rtcweb-media-00 draft-cbran-rtcweb-media-00 draft-perkins-rtcweb-rtp-usage-02.
Technical Seminar Presentation Presented by : SARAT KUMAR BEHERA NATIONAL INSTITUTE OF SCIENCE AND TECHNOLOGY [1] Presented By SARAT KUMAR BEHERA Roll.
Networked Multimedia Basics. Network Characteristics.
Coding for Multipath TCP: Opportunities and Challenges Øyvind Ytrehus University of Bergen and Simula Res. Lab. NNUW-2, August 29, 2014.
Presenter: Kuei-Yu Hsu Advisor: Dr. Kai-Wei Ke 2013/9/30 Performance analysis of video streaming on different hybrid CDN & P2P infrastructure.
Chapter 9: Transport Layer
Authors: Jiang Xie, Ian F. Akyildiz
Instructor Materials Chapter 9: Transport Layer
Klara Nahrstedt Spring 2009
UNIT-V Transport Layer protocols for Ad Hoc Wireless Networks
IETF#67 – 5-10 November 2006 FECFRAME requirements (draft-ietf-fecframe-req-01) Mark Watson.
H.264/SVC Video Transmission Over P2P Networks
Error Recovery.
MDC METHOD FOR HDTV TRANSMISSION OVER EXISTING IP NETWORK
Mohammad Malli Chadi Barakat, Walid Dabbous Alcatel meeting
Wenyu Jiang Henning Schulzrinne Columbia University
Rate Adaptations.
Injong Rhee ICMCS’98 Presented by Wenyu Ren
3 | Analyzing Server, Network, and Client Health
Introduction to Networking
Ad-hoc Transport Layer Protocol (ATCP)
Video On Demand.
Streaming digital video over wireless link
Quick UDP Internet Connections
Congestion Control, Internet transport protocols: udp
CSE679: Multimedia and Networking
Overlay Networking Overview.
Dr. John P. Abraham Professor UTPA
Provision of Multimedia Services in based Networks
TCP in Mobile Ad-hoc Networks
CIS679: MPEG-2 Review of MPEG-1 MPEG-2 Multimedia and networking.
Dr. John P. Abraham Professor UTPA
IT351: Mobile & Wireless Computing
TCP in Wireless Ad-hoc Networks
Streaming MPEG video over wireless link
Dr. John P. Abraham Professor UTPA
Dr. John P. Abraham Professor UTPA
Qingwen Liu, Student Member, IEEE Xin Wang, Member, IEEE,
Yiannis Andreopoulos et al. IEEE JSAC’06 November 2006
Kyoungwoo Lee, Minyoung Kim, Nikil Dutt, and Nalini Venkatasubramanian
Computer Networks Protocols
Modeling and Evaluating Variable Bit rate Video Steaming for ax
Impact of transmission errors on TCP performance
Presentation transcript:

Dante: Enabling FOV-Aware Adaptive FEC Coding for 360-Degree Video Streaming Zhetao Li Fei Gui Xiangtan University Jinkun Geng Dan Li Tsinghua University Zhibo Wang Wuhan University Junfeng Li Yang Cheng Tsinghua University Usama Zafar Hello, I am Fei Gui from Xiangtan University. The topic I would like to share with you is Dante: Enabling FOV-Aware Adaptive FEC Coding for 360-Degree Video Streaming. This work is supervised by Prof. Dan Li and Prof. Zhetao Li and it is cooperated with Jinkun Geng, Junfeng Li, Yang Cheng, Usama Zafar,

Background 360-degree videos are coming to age largely driven by content providers and HMD(Head-mounted display) device vendors 360-degree video is currently served by more and more major platforms, like Facebook, Youtube, NBC. 360-degree video is coming to age, largely driven by these content providers and Head-mounted display (HMD) device vendors

Background Watching 360-degree videos wearing wirelessly connected devices provides users with unprecedented immersive experience.

Background The demanding requirements of low latency and high bandwidth of 360°videos pose a challenge to current network architecture However, to offer true immersive experience, 360-degree videos must be streamed in high resolution and within a small, bounded delay. That render current network architecture insufficient.

How to achieve good video quality ? ! Background 360-degree videos Stringent low delay High bandwidth Wireless networks Limited bandwidth Prone to packet loss (high packet loss rate) How to achieve good video quality ? ! * 360-degree videos is featured by Stringent low delay and High bandwidth requirement * But wireless networks are characterized as limited bandwidth and high packet loss rate * So, How to achieve good video quality in wireless networks is a challenging problem

Current solutions Key observation User only watch a small portion of the frame in the direction of user’s view anytime. FOV-aware tile-based streaming Mainly adapt the video bitrate to optimize the quality of time-varying FOV The bitrate of the region in and around FOV prioritized over non-FOV region Let’s first have a glance at the current solutions. Generally, current schemes are based on the key observation that users only watch a small portion of the frame in the direction of user’s view anytime. The small portion of video is usually in the FOV region. That means that the small portion of video should be underscored and prioritized. So, many of efforts have been devoted to FOV-aware tile-based streaming. They try to prioritize the video bitrate of FOV region over non-FOV region to optimize the video quality of FOV region thus boosting whole video quality.

+ + Current solutions FOV-aware tile-based streaming Split into multiple files In these schemes, * spherical videos are split into multiple regions, for example, FOV region and non-FOV regions. When choosing video bitrate, * highest video bitrate is preferentially chosen for FOV, * medium video bitrate for cushion region and * lowest video bitrate for outmost region. + + Highest video bitrate Medium video bitrate Lowest video bitrate

Current solutions FOV-aware tile-based streaming FOV-aware bitrate adaptation Application level strategy ! Application control Application protocol DASH(HTTP) Transport layer TCP * Essentially, these schemes are application level solution IP IP layer

However, these schemes fail to directly optimize the streaming delay. Current solutions FOV-aware tile-based streaming To some extent, the scheme mitigate the requirement of high bandwidth However, these schemes fail to directly optimize the streaming delay. To some extent, these schemes mitigate the requirement of high bandwidth However, these schemes fail to directly optimize the streaming delay.

FOV-aware bitrate adaptation Deficiencies of FOV-aware tile-based streaming Run on top of retransmission-based transport mechanisms (like TCP) Absolute reliability usually means bad performance for real time video application playback interruptions frequently Worse performance in lossy wireless networks FOV-aware bitrate adaptation Application control Application protocol DASH(HTTP) Transport layer TCP IP layer IP * Because they run top of retransmission-based transport mechanisms; As we know, TCP is a reliable protocol, absolute reliability usually means bad performance, especially for real time video applications; So, playback interruptions may happen frequently; Furthermore, worse performance will be achieved in lossy wireless network.

How to optimize the latency of 360-degree videos Latency problem Low delay requirement of 360 videos User’s FOV is time-varying and predictable in short term To guarantee quality of user’s FOV, FOV of downloaded video segment should be consistent with the FOV of video users actually watch Therefore, buffer level should be always so shallow, for example 1s, 2s. How to optimize the latency of 360-degree videos The 360 video latency problem is unsolved; Because User’s FOV is time-varying and predictable in short term; To guarantee quality of user’s FOV, FOV of downloaded video should be consistent with the FOV of video users actually watch. Therefore, buffer level should be shallow, for example 1s, 2s.

Alternative solution Transport level solution to reduce latency If no retransmission ? * If can we remove the retransmission?

Alternative solution Transport level solution to reduce latency UDP + FEC Sounds great! FOV-aware bitrate adaptation FOV-aware bitrate adaptation Application control FEC (Forward Error Correction) can be used to recover data losses within transmission to mitigate the re-transmission and has potential to meet the delay requirement of 360 videos. To replace retransmission-based TCP, **a alternative scheme is to use FEC coding over UDP to reduce video streaming delay Application protocol DASH(HTTP) FEC + real-time streaming Transport layer TCP UDP IP layer IP IP

Deficiencies of current transport level solution There exists some state-of-the-art custom transport protocols for streaming delay-sensitive videos Only focus on traditional video content, as opposed to 360-degree videos. Non-FOV-aware Can’t achieve good performance in lossy and limited-bandwidth wireless networks! There exists some state-of-the-art custom transport protocols for streaming delay-sensitive videos. But they Only focus on traditional video content, as opposed to 360-degree videos and can’t achieve good performance in lossy and limited-bandwidth wireless networks!

Our Solution Rather than application-level adapting bitrate we proposed an FOV-aware FEC coding scheme, Dante: A custom underlying transport solution for 360-degree videos FOV-aware FEC adaptation Dynamically choosing FEC redundancy level based on how close the video content is to the FOV region FOV-aware bitrate adaptation FOV-aware bitrate adaptation And next I will introduce our solution. Rather than application-level adapting bitrate, * we explore the opportunities of a custom underlying transport solution for 360-degree videos and use FEC coding over UDP to reduce video streaming delay. We present Dante, an FOV-aware FEC adaptation that adapts to changing network conditions by dynamically choosing FEC redundancy level based on how close the video content is to the FOV region. Application control Application protocol FEC + real-time streaming FOV-aware FEC + real-time streaming Transport layer UDP UDP IP layer IP IP

Our Solution Quick primer on FEC Why FOV-aware FEC How to adjust FEC redundancy rate The remaining presentation falls into three main aspects: we first have a quick primer on FEC; Then I will give an example explaining why FOV-aware FEC; Lastly, I will present how to adjust FEC redundancy rate .

Quick primer on FEC Redundancy = r/(k+r) = 2/7, Take in k data packets (symbols) and creates r repair packets (symbols), According to specified redundancy rate, Any k of the (k+r) packets received are sufficient to completely decode the original k data packets Data packets Repair packets packet loss k = 5 r = 2 P1 P2 P3 P4 P5 R1 R1 Transmission let’s firstly take a quick primer on FEC scheme: At the first step, according to a determined redundancy rate, codec encodes to get a certain number of repair packets * , forming a coded block and send the whole block **. At the second step, the original data would be completely recovered if enough number of packets are received. As seen in this slide, Any k of the (k+r) packets received are sufficient to completely decode the original k data packets *** Redundancy is equal to r divided by r plus k; Obviously, more redundancy can counter more packet loss Redundancy = r/(k+r) = 2/7, More redundancy can counter more packet loss P1 P2 P3 P4 R1 R1 decode P1 P2 P3 P4 P5

FEC redundancy should be carefully allocated Quick primer on FEC The FEC-enabled scheme achieves better delay and throughput performance by mitigating retransmission FEC redundancy should be carefully allocated But, redundancy level can’t be set too high The figure gives an example and shows the impact of the FEC redundancy on the video streaming goodput. * Suitable FEC redundancy can mitigate the retransmission to improve goodput, but, * overprovisioning of redundancy will cause the self-conflicted congestion, exacerbating the goodput performance. * So, we should carefully adjust the value of FEC redundancy.*

Why FOV-aware FEC FOV region is given more FEC redundancy than non-FOV region That is, packets in FOV regions is given more bandwidth, higher reliability, and more chance to meet the streaming delay constraint. Given more bandwidth, higher reliability, and more chance to be received completely with delay constraint The next issue is why FOV-aware FEC; * It’s our expected thing that the FOV region is given more FEC redundancy than non-FOV region;* That is to say, data in FOV region is given more bandwidth, higher reliability, and more chance to meet the streaming delay constraint.

Why FOV-aware FEC FOV-aware FEC VS Non-FOV-aware FEC As the example in this slide shown, * * * * the case where the FOV region is given more redundancy than non-FOV region can result in better video quality than another case where equal redundancy is allocated for both FOV and non-FOV regions.

Why FOV-aware FEC FOV-aware FEC VS Non-FOV-aware FEC FOV-aware FEC achieves significant performance gain! ** FOV-aware FEC achieves significant performance gain!

How to Adjust FEC redundancy Given limited bandwidth and high packet loss rate, our goal is to minimize the total loss of video data users actually watch after FEC recovery Every region in any frame as an FEC block, Given the m-th frame, the region, FEC redundancy of which is 𝑅 𝑚 𝛼 Compute the redundancy  threshold value T, according to estimated packet loss rate and overdue loss rate Upon determining the redundancy  threshold value T, data is thought to be recovered completely if 𝑅 𝑚 𝛼 is not less than T 𝛼 The last issue is how to adjust FEC redundancy: Firstly, Given limited bandwidth and high packet loss rate, our goal is to minimize the total loss of video data users actually watch. Every region in any frame is considered as an FEC block, Given the m-th frame, the alpha region, FEC redundancy of which is 𝑅 𝑚 𝛼 Compute the redundancy  threshold value T, according to estimated packet loss rate and overdue loss rate Upon determining the redundancy  threshold value T, data is thought to be Recovered completely if 𝑅 𝑚 𝛼 is not less than T

How to Adjust FEC redundancy 360°video is spatially split into 3 regions, FOV region, cushion region and outmost region Firstly, removing original data size from the available sending rate, the remaining bandwidth is budget of redundancy packet for a GOP Then, allocate them into every region, from FOV, through cushion, to outmost region, in order. T In this slide, I will briefly describe the procedure of redundancy adaptation. 360°video is spatially split into 3 regions, FOV region, cushion region and outmost region. Firstly, removing original data size from the available sending rate, the remaining bandwidth is budget of redundancy packet for a GOP Then, allocate them into every region, from FOV, through cushion, to outmost region, in order. Original data FOV region Cushion region Outmost region

How to Adjust FEC redundancy Total redundancy packets T * First preferentially allocate for FOV region Original data FOV region Cushion region Outmost region

How to Adjust FEC redundancy Total redundancy packets T ** Original data FOV region Cushion region Outmost region

How to Adjust FEC redundancy Total redundancy packets T * Then allocate for cushion region Original data FOV region Cushion region Outmost region

How to Adjust FEC redundancy Total redundancy packets T *lastly, the remain redundancy packets are allocated into outmost region Original data FOV region Cushion region Outmost region

How to Adjust FEC redundancy Total redundancy packets T Original data FOV region Cushion region Outmost region

More bandwidth and reliability is given more important data How to Adjust FEC redundancy More bandwidth and reliability is given more important data T * In this way, when bandwidth is not sufficient, although non-FOV regions can not be allocated enough redundancy, FOV region still can be allocated sufficient redundancy to likely be recovered completely. The quality of video which is watched by users can be guaranteed. Original data FOV region Cushion region Outmost region

Performance evaluation Metric of Video quality PSNR( Peak Signal to Noise Ratio ) Baseline DASH (TCP-based streaming protocol). two state-of-the-art FEC-enabled streaming protocols Main takeaways are two-fold FEC enabled streaming protocols in general lead to higher PSNR than the TCP-based solution. By making FEC coding FOV-aware, one can further improve PSNR by giving FOV regions more redundancy Next, we present the performance evaluation. We take PSNR, a kind of standard metric of video quality, to evaluate the performance of Dante. And the greater PSNR means better video quality. The baseline we choose are DASH (TCP-based streaming protocol) and two state-of-art FEC-enabled streaming protocols Main takeaway are two-fold: 见PPT

Instantaneous PSNR in relatively good network condition Performance evaluation Instantaneous PSNR in relatively good network condition Dante This figure present the Instantaneous PSNR which Dane achieved in relatively good network condition

Instantaneous PSNR in relatively bad network condition Performance evaluation Instantaneous PSNR in relatively bad network condition Dante This figure presents the Instantaneous PSNR which Dane achieved in relatively bad network condition

Conclusion Performance gain Dante improves 360-degree video quality over non FOV-aware UDP-based schemes and TCP-based scheme by 20% to 40%; Relationship to Relationship to bitrate adaptation Dante and bitrate adaptation are functionally complementary, Dante is a transport-level scheme while bitrate adaptation is an application-level scheme; Compatibility Dante is compatible with classic streaming stacks like RTP, which supports FEC and have been deployed in many legacy services. Lastly, let’s get down to the conclusion: (1) Performance gain (2) Dante’s relationship to bitrate adaptation: (3) compatibility

https://nasp.cs.tsinghua.edu.cn/ Thanks! Question? NASP Research Group https://nasp.cs.tsinghua.edu.cn/