A Survey on MPEG-4 Streaming using Network ...

2 downloads 0 Views 169KB Size Report
MPEG-4 traffic over Wireless Network using Random Linear. Network Coding (RLNC) with Multi Generation Mixing. (MGM). Using Multi Generation Mixing, ...
2012 NIRMA UNIVERSITY INTERNATIONAL CONFERENCE ON ENGINEERING, NUiCONE-2012, 06-08DECEMBER, 2012

1

A Survey on MPEG-4 Streaming using Network Coding in Wireless Networks 1

R. Shrimali, 2 Z. Narmawala, Institute of Technology Nirma University

Abstract The streaming of real-time audio/video data is very challenging because of the time-varying and unreliable wireless channels, video content characteristics, limited bandwidth, dynamic topology, heterogeneous and distributed environment and high packet loss rate because of wireless interference and channel fading. Because of such open issues present in wireless networks, it is very difficult to satisfy the requirements of audio/video streaming applications such as low delay, low packet loss, jitter control etc. In such scenarios of opportunistic networks where real time data is being streamed from server node to client node, Network Coding and its variants can be used by such nodes to meet different requirements. Network coding changes the role of such multimedia nodes from store and forward to encode data packets. Encoding process includes mathematical operations on data packets. This survey paper has considered number of speculative and practical approaches and cases where network coding or its variant applied either fully or partially on multimedia traffic with the aim to improve performance and to provide protection against packet losses. This review has mainly focused on the opportunity of performance enhancement of MPEG-4 traffic over Wireless Network using Random Linear Network Coding (RLNC) with Multi Generation Mixing (MGM). Using Multi Generation Mixing, packets of greater importance has got more protection, less loss, more reconstruction and recovery of real time data. Key words: Wireless Networks, Network coding, Random Linear Network Coding, Multi Generation Mixing, MPEG-4 streaming I.

INTRODUCTION

In any environment (wired and wireless), the transmission of the real time audio and video traffic using multimedia streaming software for VOIP, Video conferencing etc is too much complex and time consuming. Especially, in all wireless networks, the available channel capacity fails to meet the requirements of multimedia transmission, which results in packets loss, delay and degrade the quality of transmitted multimedia data. Running such types of applications on unguided environment is always bandwidth hungry and prone to loss of data because of 2Ls. First is Lossy Environment (Wireless Environment), second is Lossy Compression (MPEG-4). In addition to that, it is very crucial to have successful transmission of all desired data to target, which is not possible all the time because of 2L factors. To overcome with these issues and to enhance the performance of multimedia transmission, Network Coding is the best

solution. In Network Coding technique, it allows a node to unite data (packets) received from different nodes, encode received packets and send encoded packets on its output links (instead of traditional routing or storing and forwarding) [1]. In this paper, all variants of Network Coding with single generation and Multi Generation Mixing (MGM) are reviewed for further implementation in streaming software to achieve performance improvement. 1). Multi Generation Mixing (MGM) based Network coding:Network Coding with Multi-Generation Mixing (MGM) is a RLNC approach which improves the performance without increasing buffer size. In MGM, mixing set of size m generations can be coded together. A new set of generation packet is mixed with previously transmitted generations. Results show that MGM reduces overhead for a recovery of packets. N packets are grouped into generations where the size of each generation is k packets. Each generation is assigned a sequence number from 0 to N/k. Generations are grouped into mixing sets where the size of mixing set is m generations. Each mixing set has an index M. Generation i belongs to mixing set with index M=i/m. Each generation in mixing set has a position index. Position index ‘1’ of generation i in a mixing set of size m is i mod m [3]. Single Generation based network coding is a special case of MGM where m=1. When node sends a packet belonging to generation i with position index ‘l’ in mixing set, that node encode all packets that are associated with the generations of same mixing set and have the position indices less than or equal to ‘l’ as shown in Figure 1.

Figure 1: MGM based Network Coding [2]

2

2012 NIRMA UNIVERSITY INTERNATIONAL CONFERENCE ON ENGINEERING, NUiCONE-2012

In case of reception of insufficient encoded packets, if any generation is unrecoverable then also it is possible to recover that generation collectively as a subset of mixing set generations. Packets received with generation of higher position indices have information from generations of lower position indices and hence contribute in recovery of unrecovered generations of lower position indices in the same mixing set. As shown in Table I [5] for mixing set size m=2, overall number of useful packets received of generations g0 and g1 is greater than 2k which is sufficient for collective decoding of two generations.

As a result, an intermediate node can combine received packets and apply simple XoR operation on them. In this section, variants of network coding are shown in TABLE-II. TABLE II Comparisons between variants of network coding

Sr No

Type of Network Coding

1

Linear Network Coding(LNC)

2

Random Linear Network Coding (RLNC)

3

Cooperative Network Coding

4

Opportunistic Network Coding

TABLE I Guaranteed delivery conditions for the generations of size k within mixing sets of sizes m=1 & 2

2). Scalable Video Coding (SVC) using MGM based Network coding:Enhancing reliability of communicating, different groups of sender packets is QoS parameter of many applications where, there is systematic grouping of sender packets such that different groups have varying importance i.e. Scalable Video Coding (SVC), where video is encoded in base layer and one or more enhancement layers. MGM supports priority transmission by providing enhanced reliability for delivering different groups of sender packets. Due to the way, encoding and decoding is done in MGM. It provides different level of protection for mixing set generations [4]. In other sense, different generations in mixing set can be considered as different layers of priority as shown in Figure-2.

Figure: 2 Partitions of Generations with MGM into different layers of priority. Mixing set size is m, generation size is k [4].

Observations - Outgoing packets are linear combinations of the original packets, where addition and multiplication are performed over the finite field GF2 S.[7] - Linear combination is not concatenation.[1] - Requires central authority to control generation of meaningful coefficients. - Random generation of coefficient. - Coefficients are sent to the destination in the packet header. - No global information about network topology and encoding rule required. - Increase in no of successful transmissions.[8] - Packets are forwarded collaboratively. - Protocols for the forwarding node : Amplify-and-Forward (AF) and Decode-andForward (DF) - For one relay system DF outperforms the AF.[9] - In two relay system AF is better than DF.[9] - Packet is transmitted with or without NC is decided by the status of the buffer's queue. - For finite buffer, packet loss rate will increased. - For Real Time traffic, NC increases delay. - For ONC there is delaypower tradeoff.[10] -Achieves lower delay compared to conventional network coding.[10]

III. MULTIMEDIA STREAMING AND COMPRESSION STANDARDS

II. VARIANTS OF NETWORK CODING In year 1999, R. W. Yeung and Z. Zhang gave idea of Network Coding (NC) [1] as an alternative to conventional routing. The survey shows that video frames can be divided into many small packets, each of them may route from different path to the destination.

1). MPEG Compression Standards MPEG is the video compression standard for the moving object. Video compression refers to reducing the quality of data used to represent the video images. There are two types of redundancies in any real time video contents, one is spatial and other is temporal. Similarities can thus be encoded by

2012 NIRMA UNIVERSITY INTERNATIONAL CONFERENCE ON ENGINEERING, NUiCONE-2012, 06-08DECEMBER, 2012

finding the differences within a frame (spatial domain) and between frames (temporal domain). The advantage of spatial encoding is that no human eye is able to differentiate even small differences color, brightness so extremely same areas of color can be encoded in a way similar to jpeg images. While the advantage of temporal encoding is that only the changes found from different frames are encoded and large number of the pixels remains same on a sequence of frames. This is called as a motion estimation process. In video compression one need to remove the temporal redundancy. This is done by temporal redundancy technique. MPEG do redundancy reduction by using three types of frames as indicated below [11] [12]: a. I-frame : Intra frame b. P-frame : Predicted frame c. frame : Bidirectional prediction frame MPEG algorithm considers the balance between the interframe and intraframe coding. MPEG algorithm works mainly on two basic techniques. First technique is block based motion compensation or motion estimation for reduction of the temporal redundancy (inter-frame) and second technique is transform domain, DCT-based compression for reduction of spatial redundancy (intraframe). MPEG is most popular codec for video compression. Where compression ratio achieved by MPEG is 50:1. 2). Concept of Group of Pictures (GoP) and Video Object Plane (VOP)

3

referenced by other pictures in order to increase compression efficiency. The more I-frames the video stream has, the more editable it is. However, having more I-frames increase the stream size. In order to save bandwidth and disk space, videos prepared for internet broadcast often have only one I-frame per GOP. The GOP structure is often referred by two numbers, for example M=3, N=12. The 'M' the distance between two anchor frames (I or P). The 'N' indicates the distance between two full images (I-frames): it is the GOP length. For the example M=3 N=12, the GOP structure is IBBPBBPBBPBBI. Instead of the M parameter one can use the maximal count of B-frames between two consecutive anchor frames. MPEG-4 video streams can be divided into hierarchical layers. The lowest layer is the Video Object Plane (VOP) [14] layer. It corresponds to a single frame of the video stream VOP is used to represent rectangular-plane frames or arbitrary-shaped object plane. In object-based coding the video frames are defined in terms of layers of video object planes (VOP). Each video object plane is then a video frame of a specific object of interest to be coded, or to be interacted with. Figure 3 shows a video frame that is made of three VOPs. The two objects of interest are the balloon and the aero plane. They are represented with their video object planes of VOP1 and VOP2.

In video coding, a group of pictures normally referred as “GOP”. This structure indicates the order in which intra and inter-frames are set. The GOP is a collection of consecutive pictures within a coded stream. Each coded stream consists of successive GOPs. Different picture or frame types are as under : [12] [13] a. I-picture or I-frame (intra coded picture):– independent and reference picture presenting a permanent image. Each Group of picture starts with I- frame. b. P-picture or P-frame (predictive coded picture):- It shows difference information from the preceding Ior P-frame. c. B-picture or B-frame (bidirectional predictive coded picture) – difference information from the preceding and following I- or P-frame is contained in such type of frame. d. D-picture or D-frame (DC direct coded picture):- used for the fast advance. In GOP P frames are always followed by I-frame. And gaps are filled by B-frames. In some cases, the more than one I frames are allowed in a single GOP. The I-frames contain the full image and do not require any additional information to reconstruct it. Therefore any errors within the GOP structure are corrected by the next I-frame, where B-frames can be

Figure 3: Example of Video Object Plan [14] IV. SURVEY ON VIDEO STREAMING USING NETWORK CODING IN WIRELESS NETWORK

Different ideas of applying network coding in Wireless network are most important for performance improvement of MPEG-4 streaming. This section discusses about how network coding is applied on received packets by nodes for successful packet transmission over unreliable channel. TABLE III shows observations and comparisons done for video streaming using different network coding especially in wireless networks.

2012 NIRMA UNIVERSITY INTERNATIONAL CONFERENCE ON ENGINEERING, NUiCONE-2012

4

TABLE III Different types of Network Coding applied in wireless network For Video Streaming

Sr No

Types of Wireless Network & Type of Network Coding Applied

1

802.11 P2P AdHoc mode & Unstructured and Structured Network Coding [11]

2

Wireless. Secured Practical Network Coding [11]

3

4G Wireless Networks, & Random Linear Network Coding [11]

4

Wireless Network, Intra layer Network Coding [11]

5

6

Wireless P2P Network with Video-OnDemand Service & VOD+NC [15]

Vehicular Ad-hoc Network & RLNC [16]

-Improvement in the packet delivery ratio improved the quality of the video at leaf nodes up to 7 dB PSNR (Peak Signal to Noise Ratio).

Observations

Unreliable Channel - Encoder use Motion Estimation Process. - Recovery of P packets only. - It uses Multimedia Broadcast Multicast Service. - Knowledge of Neighbor is must. - Lightweight Security Scheme. - Concept of Cryptography. - Locking & Unlocking of Coefficients. - RLNC applied by the video server. - TCP/NC new protocol is proposed - protocol inserts a new layer of NC between TCP and IP - higher goodput when the loss rate is high - For Real Time traffic - For P2P Streaming. - Random layer selection with Random Push (RR). - Scalable Video Coding over P to P network. - Peer pushes a packet using RNC. - For smooth playback - Test bed design of network coding in P2P VOD system - Implementation of P2P VOD protocol - Concept of Cache map and Playback buffer -achieves shorter delay at lower bandwidth supply - achieves optimal initial and seek delay -Peers contribute more so Less redundant traffic

V. CONCLUSION

-

- Implemented the network coding based protocol on top of Click modular router. Codecast element implemented - 30% of artificial packet drop - The implemented element can deliver 99% of packets to all intermediate nodes as well as 10%~20% more packets to the leaf node compared to the case with no network coding.

While watching live cricket match or streaming your favorite videos from YouTube, it is quite obvious that everyone feel delay in video, variation in delay (jitter) and sometimes may be some part (may be video of millisecond. or seconds) of live video may be skipped. This is due to packets loss, delay in delivering packets in a specified time interval and variation in delay. For any wireless network, bandwidth is limited and it cannot be increased for particular transmission but packets loss can be minimized by employing a good technique. To overcome these problems, MGM based Network Coding is the best solution. One can propose, design and develop MGM based framework for encoding and decoding of multimedia data. The same can be implemented on open source streaming software like VLC to incorporate VLC streaming server and Clients to decrease the packet loss by recovery and improve quality of transmission. VI. REFERENCES [1]

J.-Y. L. B. Christina Fragouli, "Network coding: An instant primer", Tech. Report, ACM SIGCOMM Computer Communication Review, Volume 36, January 2006

[2]

H. R. Mohammed Halloush, "Network coding with multi-generation mixing",Tech. Rep., ICC proceedings, 2008.

[3]

Linear network coding by Shuo-Yen Robert Li, Senior Member, IEEE, Raymond W. Yeung, Fellow, IEEE, and Ning Cai at IEEE TRANSACTIONS ON INFORMATION THEORY, VOL. 49, NO. 2, FEBRUARY 2003

[4]

H. R. Mohammed Halloush, "Performance evaluation: Priority transmission using network coding with multi-generation mixing", Tech. Rep., ICC proceedings,2009.

[5]

Bhatia, J. , Patel A, Narmawala, Z., Inst. of Technol., Nirma Univ., Ahmedabad, India,"Review on variants of network coding in wireless ad-hoc networks",International Conference (NUiCONE), 2011 Nirma University

[6]

H. R. Mohammed Halloush, "A case study of: Sender transmission reliability and complexity using network coding with multigeneration mixing", Tech. Rep., ICC proceedings, 2009.

[7]

C. Fragouli and E. Soljanin, "Network coding applications", Tech. Rep.,Foundations and Trends in Networking Vol. No.2, 2007.

[8]

R. S. Rodica Stoian, Lucian Andrei Perisoara, "Random network coding for wireless ad-hoc networks", Tech. Rep., Wireless Communications and Networking Conference, 2010.

[9]

Y. Q. Shengli Fu, Kejie Lu and M. Varanasi, "Cooperative network coding for wireless ad-hoc networks", Tech. Rep., IEEE GLOBECOM proceedings, 2007.

2012 NIRMA UNIVERSITY INTERNATIONAL CONFERENCE ON ENGINEERING, NUiCONE-2012, 06-08DECEMBER, 2012

[10] K. B. L. Wei Chen and Z. Cao, Opportunistic network coding for wireless networks"," Tech. Rep., ICC proceedings, 2007. [11] Mehta, T. , Narmawala, Z., Inst. of Technol., Nirma Univ., Ahmedabad, India,"Survey on Multimedia Transmission using Network Coding over Wireless Networks",International Conference (NUiCONE), 2011 Nirma University [12] K. Jack, "Video demystified," pp. 1-927, Newnes, 2005 [13]

"Multimedia

compression" http://www.webopedia.com/multimedia.html.

tech.

rep.,

[14] "Video object plane," tech. rep., http://commons.wikimedia.org/wiki [15] “A Measurement Study of Network Coding in Peer-to-Peer Videoon-Demand Systems” Saikat Sarkar, Mea Wang Department of Computer Science University of Calgary , Canada, 2012 IEEE 20th International Symposium on Modeling, Analysis and Simulation of Computer and Telecommunication Systems [16] “Network Coding based video streaming in Linux”, Chien-Chia Chen and Chieh-Ning Lien [email protected], [email protected]

5

Suggest Documents