Download Scalable_Video_Delivery_to_Unicast_Handheld

Survey
yes no Was this document useful for you?
   Thank you for your participation!

* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project

Document related concepts

Remote Desktop Services wikipedia , lookup

Video on demand wikipedia , lookup

Zero-configuration networking wikipedia , lookup

Real-Time Messaging Protocol wikipedia , lookup

Lag wikipedia , lookup

Proxy server wikipedia , lookup

Transcript
Scalable Video Delivery to Unicast
Handheld-based Clients
Raymond K.Y. Chow,Chen-Khong Tham
Dept. of Electrical Engineering,National
University of Singapore
Networks, 2000. (ICON 2000). Proceedings. IEEE International
Conference on , 2000
Lin-Kai Chen VCLab
Outline






Introduction
Proxy gateway
Unicast client
Testing the proxy & the Client
Discussion
Conclusion
Lin-Kai Chen VCLab
Introduction



The aim of this paper is to deliver video to
heterogeneous clients using only a single video
stream.
The challenge of video streaming and delivery is to
overcome the combined problems of the performance
demands required of the network and the diversity of
the devices that it supports.
This paper describes the design and architecture of a
video delivery proxy gateway.
Lin-Kai Chen VCLab
Introduction(Cont.)



This proxy gateway is part of an experimental
multicast scalable video delivery system.
Its role is to translate the video stream that is split
and multicast,into a single unicast stream delivered in
a customized form to the unicast client.
This is done because there are devices that cannot
receive multicast,either due to their simple TCP/IP
stacks or the presence of a network that does not
support multicast along the route from the server.
Lin-Kai Chen VCLab
Introduction(Cont.)




SeeWAVE: A scalable video delivery system that has
been developed to deliver video content to
heterogeneous computing devices.
The system employs a layered wavelet-based video
codec to achieve a scalable data stream,which is
divided and distributed using multicast.
Key components: the codec and multicast.
The codec permits the encoded video stream to be
divided into separate layers: base and enhancement
layers.
Lin-Kai Chen VCLab
Introduction(Cont.)
In addition,multicast also reduces the number of
duplicate packets in the network.The duplication
in unicast transmission case is eliminated in
multicast.
Reasons for unicast




Because there exist classes of devices that are unable to
receive multicast data.
In order to support these classes of devices, a copy of the
multicast video stream has to be sent in a unicast manner to
them.
Lin-Kai Chen VCLab
Proxy gateway
Unicast Stream
Lin-Kai Chen VCLab
Introduction(Cont.)


We can modify the multicast stream by putting a
transformation agent in the network.
Figure 1 illustrates the scalable video delivery system
of SeeWAVE,which comprises the following:




Video server
Multicast video clients
Proxy gateway:
Unicast video clients:
Lin-Kai Chen VCLab
Proxy gateway

Primary objective: To convert the multicast layers
transmitted by the server to unicast.



The proxy has to be located on a network that is able to
receive multicast traffic.
The proxy should be as close as possible to the unicast
clients that it is serving.The number of duplicate unicast
data streams increases with the number of clients.
Secondary objective: Pre-process the packets of each
layer.

It’s to reduce the processing load and memory requirements
required by clients.
Lin-Kai Chen VCLab
Proxy gateway(Cont.)


Pre-processing: to buffer incoming packets and wait for
other packets of the same frame and to search for required
packets and consolidate them into a single packet that is
sent to the client.
Requirements


Ability to query the video server, and to
subscribe/unsubscibe to multiple layers of video.
- The proxy can adjust its layer subscription as and when
the Max. required quality changes.
Servicing multiple unicast clients,with different quality
requirements.
Lin-Kai Chen VCLab
Proxy gateway(Cont.)



Ability to selectively consolidate packets from the various
layers delivered via different multicast channels.
- it enables the proxy to accommodate to the video quality
requested by the unicast client.
Facility to lower the frame rate of the video.
Design


Four main objects in the proxy.
The functional diagram of the design and components of the
proxy gateway is shown in Figure 2.
Lin-Kai Chen VCLab
Lin-Kai Chen VCLab
Proxy gateway(Cont.)


Multicast receiver
1.to query the video server for details on the video stream.
2.to subscribe to the multicast groups via the creation of
“session managers”
3.to transfer the received data to the data pre-processor.
Data pre-processor
1.storing all the incoming packets into the hash buffer.
2.consolidating the packets into a single packets as
required by the client.
3.performing garbage collection periodically and removing
buffered packets that are considered out-of-date.
Lin-Kai Chen VCLab
Proxy gateway(Cont.)

The consolidate packet is then marked by the number of
layers it contains and is passed to the unicast sender.
Unicast sender
Frame rate control: required to reduce the frame rate of the
video stream for less capable clients.
This is possible bacause the wavelet-based codec that is
being used supports only intra-frame coding. Therefore,the
reduction of the frame rate only requires the suppression of
certain frames.
Lin-Kai Chen VCLab
Proxy gateway(Cont.)

Client manager
The client manager performs the following duties:
1.maintains the list of clients the proxy is serving.
2.listens for and accepts new clients.
3.processes quality change requests from the client.
4.compute the number of layers required based on the
clients’ requirements.
Lin-Kai Chen VCLab
Unicast client


The unicast client was first implemented on a Win CE
Palm-sized PDA and then on desktop Win9x/NT.
The client can be divided into three components.



Network component: it includes a TCP port for
communication with the proxy, and a UDP port for receiving
video packets from the proxy.
Decoder component
Renderer component
Lin-Kai Chen VCLab
Lin-Kai Chen VCLab
Unicast client



As soon as the connection is established,the client’s
video quality requirements are sent to the proxy.
The decoder implemented in the handheld-based
client is the same as that used in desktop clients.
The decoded video frame is initially in YUV format.
Before displaying,the renderer component has to
convert the YUV format into RGB.
Lin-Kai Chen VCLab
Testing the proxy & client

The Specification of the testbed:





Video server: P III 450MHz,64MB RAM, Win NT 4.0
Proxy gateway: P III 450MHz, 64MB RAM, Win NT 4.0
Handheld unicast client: Casio Cassiopeia 131MHz,32MB
RAM.
Desktop unicast clients: P MMX 266 MHz,P II 400,64/128
RAM,Win95/98.
The test on the handheld unicast client using 3 different
network connections: 10BaseT Ethernet,56K modem via PPP,
9.6K GSM data via PPP.
Lin-Kai Chen VCLab
Testing the proxy & client

Transmission configuration of video server:



3 layers (1 base, 2 enhancement layers)
Video capture frame rate: 10 frames per second.
Proxy-loading test


The performance of the proxy is measured by the average
time a packet spends in the proxy before being transmitted
to the unicast clients.
All the subscribed to the same quality- color and 1 frame per
second,which requires 3 layers and frame rate modification
down from the server’s rate of 10 fps.
Lin-Kai Chen VCLab
Testing the proxy & client

Handheld client performance test


The performance measure for this test is the average times
taken for decoding and rendering.
The test was performed with the client requesting for a
video stream of 1 frame per second and following conditions:
 10BaseT connections:from 1-layer to 3-layers quality
level.
 56K modem PPP:from 1-layer to 3-layers quality level.
 9.6K GSM modem PPP: 1-layer quality level.
Lin-Kai Chen VCLab
Discussion
Lin-Kai Chen VCLab
Discussion(Cont.)
Lin-Kai Chen VCLab
Discussion(Cont.)




The variation of the average packet delay with the
number of unicast clients is almost linear.
As expected,the video decoding time increased when
better video quality was requested.
The average rendering time remained similar. The
performance of the renderer is not dependent on the
level of video quality.
The average decoding time for 56K modem,3 layers
is exceeding 1 second.(the frame rate is 1fps).
Lin-Kai Chen VCLab
Discussion(Cont.)




The fluctuation in the average decoding times are
most probably caused by additional overheads that
were imposed on the handheld device’s processor.
When using 56K modem: a PPP protocol stack had to
be created in addition to the TCP/IP stack.
9.6K GSM and Nokia 8810 mobile phone:
an IrDA stack had to be created.
The additional stacks and processing required by
them lowered the client’s performance.
Lin-Kai Chen VCLab
Conclusion



The proxy gateway approach seems to be a viable
method of extending the SeeWave scalable video
delivery system from multicast networks to unicast
clients.
However,the handheld-based unicast client performs
rather poorly.
From the performance measures, the Max. frame rate
of the client is limited to between 1 to 2 fps,despite
using a device with a high-speed processor.
Lin-Kai Chen VCLab
Conclusion(Cont.)



This is in comparison to the 12 fps rate achievable on
desktop computers.
It is probably due to the nature of the decoder, which
was targeted for a desktop computer.
A version of the decoder optimized for a handheld
device may very likely improve performance.
Lin-Kai Chen VCLab