You are on page 1of 6

2013 International Conference of Information and Communication Technology (ICoICT)

Performance Evaluation of Stack-Protocols,


Encapsulation Methods and Video Codecs for Live
Video Streaming
Afaq Iqbal Fahim Arif Nasru Minallah
Dept. Computer Software Engineering Dept. Computer Software Engineering Dept. Computer System Engineering
Military College of Signals, National Military College of Signals, National University of Engineering and
University of Science and Technology, University of Science and Technology, Technology,
Islamabad, Pakistan Islamabad, Pakistan Peshawar, Pakistan
afaqiqbal87@gmail.com fahim@mcs.edu.pk minallah.nasru@gmail.com

Abstract— There are diverse factors involved in the transmission the Internet has been experiencing dramatic growth due to the
of live video over internet. These factors have direct impact on increase in bandwidth and computing power [3].
the quality of the transmitted video. The underlying protocol,
encapsulation method and the choice of video codec are the key Video streaming depends on several factors and these
factors involved in the transmission of video over streaming factors may be network dependant or independent [4]. The
network. Up to our knowledge various studies have been
network dependant factors are those factors which are
performed to analyze the impact of these factors individually on
the quality of video transmission however their joint impact on dependent on the network (e.g. bandwidth, throughput, loss
video transmission is not yet done. In this paper we characterize etc) while those factors which are not dependent on the
the performance of live video streaming setup, while keeping in network (e.g. compression, decompression, encapsulation etc)
view the effect of stack-protocol, encapsulation method and the are independent factors. Some of these factors that were used
underlying video codec on delay as the key investigating in our experimental setup are delay, streaming server,
parameter. The results obtained while considering diverse video protocols (e.g. udp, http, rtp, and mms), codec (e.g. dirac,
streaming setups are provided in the results section of this paper. divx2, divx3, h.264, mjpeg, mpeg1, mpeg2, wmv1, wmv2),
More specifically, it was observed that stack (http, mjpeg, mjpeg) encapsulation methods (e.g. avi, ps, ogg, asf, raw, ts),
performs best and stack (mms, asf, wmv1) perform worst.
resolution, bit rate, frame rate and media caching etc.
Keyword—Stack; Protocol; Encapsulation; Codec; VideoLAN
Client; Video Streaming;
A brief description of those factors is given below.

I. INTRODUCTION A. Delay

Heterogeneous computer networks exist to connect It is the amount of time taken by a bit to travel from
different types of computers for sharing of data and source to destination. It is also called the Latency [5], [6]. In
communication of information. These computers can be on real time video streaming, if video packets are not arrived in
different locations that may be within a city or two different time they become useless [2].
parts of the world. In the old days data carried through these
networks was only in textual form. But with the passage of B. Protocols
time and advancement in technology, the transmission of
multimedia data became more attractive choice and data like Protocols play an important role in streaming videos.
animation, pictures, voice and video became more popular on Furthermore, transport protocols are also one of the
internet. Now these multimedia networking applications like subsystems of the streaming server. There are many protocols
internet telecommunication, internet protocol TV (IPTV) and available for data transmission but the most widely used
video conferencing are used in health, education, e-commerce protocols for video streaming include Hypertext Transfer
and many other sectors [1]. Protocol (HTTP), Universal Datagram Protocol (UDP), Real
Time Protocol (RTP), Real Time Streaming Protocol (RTSP)
These multimedia communication scenarios involve two etc [2].
modes of media transmission -the download mode and the
streaming mode. In the download mode, a user downloads the The Hypertext Transfer Protocol (HTTP) was originally
entire video file and then plays back the video file, while in designed by Tim Berners-Lee. This protocol is used by servers
streaming mode, the video content need not be downloaded for communication. It is generic, stateless, object oriented
in full, but is being played out while parts of the content are protocol used for many tasks [7], [9], [13] such as name
being received and decoded [2], [8], [9]. Streaming video over servers and distributed object management systems, typing of

978-1-4673-4992-5/13/$31.00 ©2013 IEEE 223


2013 International Conference of Information and Communication Technology (ICoICT)

data representation and communication between user agents easily be saved as video in .avi format. Another tool
and proxies/gateways to other Internet protocols [17]. The CamStudio Recorder [16] is also available for this purpose
User Datagram Protocol (UDP) is transport layer protocol. under General Public License.
UDP provides a connectionless but unreliable datagram
service over the network [8], [1]. Real time Transport Protocol This paper also discusses different experiments we
(RTP) is IP based transport protocol for real time data, performed for studying and analyzing the effect of protocols,
primarily designed for multicasting data but can also be used encapsulations and codecs on the performance of live video
in unicasting [1], [9], [13]. Microsoft Media Server (MMS) streaming. Our experimental setup is composed of various
Protocol is Microsoft’s real time streaming protocol that uses software and hardware tools in order to carryout various
TCP and UDP [10]. experiments for proposed setup. Data were captured in those
experiments and was analyzed. Based on the results obtained,
C. Codec analysis and conclusions were drawn.

Codec is a compression algorithm used to compress the The rest of the paper is divided into sections in which
size of the media stream. There are many audio and video section II explains the experimental setup designed for
codec e.g. dirac, divx2, divx3, h.264, mjpeg, mpeg1, mpeg2, conducting experiments. Section III explains different
wmv1, wmv2 etc [11, 12]. experiments performed on the experimental setup. In Section
IV different charts were obtained and results were drawn from
D. Container these charts. And at last in section V conclusions were drawn.

A container contains one or many media streams that are II. EXPERIMENTAL TOOLS AND SETUP
encoded by the underlying codec. Usually, a container
contains an audio and a video stream. A container is also The experimental tools includes a computer systems with
known as encapsulation. Some of the containers are avi, ps, Intel(R) Core (TM) 2 Duo E7200 @ 2.53 GHz processor, 2GB
ogg, asf, ts etc [11], [12]. ram and128MB graphic memory. Other than computer system
a webcam with fixed frame rate and changeable resolutions
Besides these factors some other tools (Online Stopwatch was used. Besides hardware the software used are Camtasia
[14], Camtasia Studio v.2.0.1 [15], VLC v 2.0.3 of VideoLAN Studio, VideoLAN, Stopwatch and Microsoft Office as shown
[12]) are also used in the experiments their brief introduction in the Fig. 1 below.
is also given below.
For conducting different experiments Camtasia Studio,
E. Streaming Server VideoLAN, and Microsoft Office was installed to the
computer system. The plug and play webcam was attached to
In order to stream a video streaming server is required. A the computer system through a USB port. The webcam was
good streaming server is that process multimedia data within attached to the monitor in such a way that it could capture the
timing constraint, it must have interactive controls operations monitor screen and its zoom was adjusted accordingly as
like pausing and resuming video, forward and backing video. shown in Fig 1. Using this setup the webcam is used to capture
Also, the streaming server should retrieve media components the online stopwatch on the monitor screen and its video is
synchronously [2]. streamed with the help of VideoLAN. This streamed video
was captured on the client application which was another
F. VLC instance of the same application VideoLAN or windows
media player. All this activity of original streamed stopwatch
VideoLAN is a nonprofit organization that provides free and received stopwatch video was captured with the help of
and open source solution to the multimedia. The VideoLAN Camtasia Recorder as a video.
software solution is developed under the GNU General Public
Later this video would be played and paused at different
License (GPL) by the students of Ecole Central Paris and open
points of time so to obtain two different timers data. The
source developer around the world. VideoLAN Client (VLC)
difference between the two collected timer data would
is one of the products which can be used as a server for
represent the delay of the underlying experimental setups. In
streaming purpose as well as a client for receiving and
order to get the precise delay five data readings were noted in
displaying the stream on many platforms [12].
Microsoft excel and its average was taken. The whole process
is shown in Fig. 1.
G. Camtasia Studio

Camtasia Studio is the screen recording and videos


editing software product. It is an easy tool for cutting, splicing
and combining videos clips. It provides facility to record full
video screen or part of it [15]. The screen captured can then

978-1-4673-4992-5/13/$31.00 ©2013 IEEE 224


2013 International Conference of Information and Communication Technology (ICoICT)

compatibility and tried one by one while other effecting


factors were kept constant. The other effecting constant factors
are; (protocol = RTP), (encapsulation = TS), (resolution =
640X480), (bit rate = 1024 kb/s), (Frame rate 30 fps),
(Caching for media = 100 milliseconds on both client and
server side).

B. Experiment 2 (Effect of encapsulation on delay)

In experiment 2 encapsulation schemes (avi, PS, ogg, asf,


raw and TS) were selected based on compatibility and tried
one by one while other effecting factors that were kept
constant are; (protocol = http), (codec = mpeg1), (resolution =
640X480), (bit rate = 1024 kb/s), (Frame rate 30 fps),
(Caching for media = 100 milliseconds on both client and
server side).

C. Experiment 3 (Effect of protocol on delay)

In experiment 3 protocols (udp, rtp and http) were


selected that are mainly used for streaming and support
streaming on the network and factors (encapsulation = TS),
(codec = mpeg1), (resolution = 640X480), (bit rate = 1024
Figure 1. System Diagram kb/s), (Frame rate 30 fps), (Caching for media = 100
milliseconds on both client and server side) were remain
III. ANALYZING EXPERIMENTAL SETUPS constant.

Using the above tools and experimental setup four D. Experiment 4 (Analyzing of overall stack on delay)
different experiments and sub experiments were performed. In
these experiments different components of our proposed In this experiment protocol, encapsulation and codec were
experimental setup such as codec, encapsulations, protocols, taken collectively based on compatibility and the performance
and over all complete stack (combination of codec, results from the previous experiments. Others factors
encapsulation and protocol) were studied and analyzed against (resolution = 640x480), (bit rate = 1024 kb/s), (Frame rate 30
delay. The details about these different parameters and fps), (Caching for media = 100 milliseconds on both client and
experimental setups are outlined in Table 1 and explained server side) were kept constant.
below.
For the confirmation of the above experiments their sub
TABLE 1 experiments 1.1, 2.1 and 3.1 were performed in which one
PARAMETERS USED IN EXPERIMENTS factor is changed with reference to the considered original
experiment.
Experiment 1 Experiment 2 Experiment 3 Experiment 4
(Effect of (Effect of (Effect of (Analyzing of It is important to note that in all these experiments we
codec on encapsulation protocol on overall stack
delay) on delay) delay) on delay) only considered a subset of specific factors for performance
evaluation. Besides these factors there are also many other
Protocol Protocol Encapsulation
factors which have effect on video transmission but they were
Constant Parameters

Encapsulation Codec Codec ignored because they were invalid in our experimental setup.
Resolution Resolution Resolution Resolution
IV. RESULTS
Bit Rate Bit Rate Bit Rate Bit Rate

Frame Rate Frame Rate Frame Rate Frame Rate Using our proposed experimental setup outlined in
Caching for Caching for Caching for Caching for Section II, a live video is streamed for duration of half minute.
media media media media After completing the experiments and data collection, the
collected data was transformed to the bar charts and line charts
A. Experiment 1 (Effect of codec on delay) for further analysis. These chats and their analysis are given
below.
In experiment 1 nine codec (dirac, divX2, divX3, h.264,
m-jpeg, mpeg1, mpeg2, wmv1, wmv2) were selected based on A. Result of Experiment No. 1

978-1-4673-4992-5/13/$31.00 ©2013 IEEE 225


2013 International Conference of Information and Communication Technology (ICoICT)

The result shown in Fig. 2 is based on the data of


experiment 1. It shows that keeping the underlying setup
parameters the same, different codecs experience different
video transmission delay. Some codecs have more impact of
delay like Dirac and h.264 while some have a less impact like
divX3, mpeg1 and mpeg2.

Figure 3. Two Lined Chart of Codec and Delay

B. Result of Experiment No. 2

The results obtained using experiment 2 is shown in Fig.


4, which presents the effect of encapsulation schemes on
Figure 2. Bar Chart of Codec and Delay delay. It shows that the encapsulation schemes have also an
impact on delay and some encapsulations have more impact
Furthermore, in Fig. 3 a two lined chart is shown, which than the others. In the selected encapsulation schemes avi and
is the confirmation chart for the effect of codec on delay ps have greater impact as compared to ogg and asf, which
(experiment 1). In the chart the blue line shows the original have little impact on delay.
and actual data of the experiment 1 while the second green
line is the confirmation line obtained from the data of
experiment 1 while considering Http instead of RTP as the
underlying transmission protocol. Although there is a variation
in data because of the change in protocols but the shapes of
both the lines are same. This similarity in lines shows that
codec have its effect on delay. But both lines are not exactly
same because different codec have different performance on
different protocol stack.

If we conclude the result based on the confirmation line it


give almost same result with Dirac and h.264 with more delay
and mpeg1, mpeg2 with less delay.

Figure 4. Bar Chart of Encapsulation and Delay

The Fig. 5 shows two lined confirmation chart based on


data of experiment 2. We can see that both the lines are
following similar trend. The similarity in the shapes of the
lines shows that the effect on delay due to the encapsulations.

978-1-4673-4992-5/13/$31.00 ©2013 IEEE 226


2013 International Conference of Information and Communication Technology (ICoICT)

From the confirmation chart it can also be concluded that ps having codec mpeg1 and the other green color is based on the
has more impact on delay while ogg and asf has little impact data collected in experiment 3 for confirmation while
on the delay. replacing mpeg2 instead of mpeg1 codec.

It should be noted that the confirmation line (green line) It can be clearly observe that both lines are similar with
start from PS encapsulation and not from avi. This is because little difference. This also confirms the results of Fig. 6,
mpeg2 codec had compatibility issues with avi. which shows that there is neglegible impact on delay, if we
switch between mpeg1 snd mpeg2. Additionally, Fig. 6 also
shows that communication protocols, such as udp, rtp and http
have also very little impact on delay, therefore the results
provided in Fig. 7 is an additional confirmation of our
previous results.

Figure 5. Two Lined Chart of Encapsulation and Delay

C. Result of Experiment No. 3

The results of Experiment No 3, outlined in section III (c) Figure 7. Two Lined Chart of Protocols and Delay
is shown in Fig. 6. By analyzing the bars in Fig. 6, it can be
easily concluded that RTP has minimum effect on delay. D. Result of Experiment No. 4
Furthermore, the maximum delay difference is about 100ms,
while considering the performance of udp vs. rtp protocol. The Fig. 8 given below is based on experiment 4, detailed
in section III (D). From this bar chart we can conclude that the
codec stack (http, mjpeg, mjpeg) has the minimum delay while
the codec stack (mms, asf, wmv1) perform the worst. Hence,
from the comparision of these stacks performance it can be
concluded that (http, mjpeg, mjpeg) performs the best.

It was also noted that the qulaity of the mjpeg was also
good as compared to the others.

Figure 6. Bar Chart of Protocols and Delay

Fig. 7 given below is the confirmation chart. The one in


blue color is based on the data collected in experiment 3

978-1-4673-4992-5/13/$31.00 ©2013 IEEE 227


2013 International Conference of Information and Communication Technology (ICoICT)

[2]. D. Wu, Y. Hou W. Zhu, Y.-Q. Zhang, J. Peha “Streaming video over
the internet: approaches and directions,” IEEE Transactions on
Circuits and Systems for Video Technology, vol. 11, pp. 282–300,
Mar. 2001.
[3]. Civanlar, M.R. Luthra, A. ; Wenger, S. ; Wenwu Zhu ; “Introduction
to the Special Issue on Streaming Video”, IEEE Transactions on
Circuits and Systems for Video Technology, vol. 11, No. 3, Mar. 2001.
[4]. Venkataraman, M.; Chatterjee, M.; Chattopadhyay, S., “Evaluating
Quality of Experience for Streaming Video in Real Time”, Global
Telecommunications Conference, 2009. GLOBECOM 2009. IEEE,
Publication Year: 2009, Page(s): 1 – 6.
[5]. Manoj Bhatia, Jonathan Davidson, Satish Kalidindi, Sudipto
Mukherjee, James Peters, “VoIP: An In-Depth Analysis”,
“http://www.ciscopress.com/articles/article.asp?p=606583”, Nov,
2012.
[6]. “http://www.linktionary.com/d/delay.html”, Sept, 2012.
[7]. Hypertext Transfer Protocol (HTTP),
“http://www.livinginternet.com/w/ww_http.htm”, Oct, 2012.
[8]. Universal Datagram Protocol (UDP), RFC 768,
http://www.ietf.org/rfc/rfc768.txt
[9]. California Software Labs (CSWL), “Basic Streaming Technology and
RTSP Protocol”.
[10]. Microsoft Corporation, “MS-MMSP: Microsoft Media Server (MMS)
Protocol”, Oct 17, 2012
[11]. Zhi-Gang Li, Zhao-Yang ZHANG, “Real-Time Streaming and Robust
Streaming H.264/AVC video”, Third International Conference on
Image and Graphics, 2004 IEEE.
[12]. Alexis de Lattre, Johan Bilien, Anil Daoud, Clément Stenac, Antoine
Figure 8. Bar Chart of Stack and Delay Cellerier, Jean-Paul Saman, “Documentation:Streaming HowTo”,
http://wiki.videolan.org/Documentation:Streaming_HowTo, Oct-Nov,
V. CONCLUSION AND FUTURE WORK 2012
[13]. Iraj Sodagar, “MPEG-DASH: the Standard for Multimedia Streaming
over Internet”, Preprint of the article published in IEEE Multimedia,
In this paper, we performed real-time experiments for Oct-Nov 2011.
transmission of video, while incorporating diverse protocols, [14]. Online Stopwatch, “http://stopwatch.onlineclock.net/”, Oct-Nov 2012.
encapsulation methods and video codecs. Our goal in this [15]. Camtasia Studio v 2.0.1, “http://www.techsmith.com/camtasia.html”,
Oct, 2012.
paper was to identify the performance trends while [16]. Camstudio Recorder, “http://camstudio.org/”,
systematically changing the combination of different [17]. Tim Berners-Lee, R. Fielding, H. Frystyk; “Hypertext Transfer
considered protocols, encapsulations and codecs. From Protocol -HTTP/1.0; RFC 1945; May, 1996; http://www.rfc-
conducting experiments data was obtained and transformed editor.org/rfc/rfc1945.txt
into charts. These charts are shown in the result section. From
these results it can be easily concluded that divx3 have less
impact on delay. Similarly, among the considered
encapsulation methods, avi perform the worst. Furthermore,
among the considered transmission protocols, rtp results in
transmission of video data with least delay impact.
Furthermore, in joint stack experiment it was observed that the
stack (http, mjpeg, mjpeg) performed best as shown in chart of
experiment 6.

In future the scope of the experiments can be extended to


audio codec as well. And also the combined effect of audio
and video can be studied and analyzed as well. Furthermore,
more controlled transmission scenarios will be considered in
which the performance of these different parameters will be
considered using range of limited bandwidth. Additionally,
subjective (e.g. mean opinion score) and objective quality
evaluation (e.g. PSNR) procedures will be utilized to analyze
their impact on video quality.

REFERENCES
[1]. Chunlei Liu, “Multimedia over IP: RSVP, RTP, RTCP, RTSP”,
http://www.cse.wustl.edu/~jain/cis78897/ftp/ip_multimedia/index.htm

978-1-4673-4992-5/13/$31.00 ©2013 IEEE 228

You might also like