View
214
Download
0
Tags:
Embed Size (px)
Citation preview
Lin-Kai Chen VCLab
Scalable Video Delivery to Unicast Handheld-based Clients
Raymond K.Y. Chow,Chen-Khong ThamDept. of Electrical Engineering,National Uni
versity 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 mult
icast 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 o
f 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 r
eceive 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
Introduction(Cont.) We can modify the multicast stream by putting a tr
ansformation agent in the network. Figure 1 illustrates the scalable video delivery syst
em 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 t
ransmitted by the server to unicast. The proxy has to be located on a network that is able to re
ceive multicast traffic. The proxy should be as close as possible to the unicast cli
ents 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 o
ther 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/unsubs
cibe 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
theproxy gateway is shown in Figure 2.
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-processor1.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 remov
ing 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 la
yers 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 clie
nt.4.compute the number of layers required based o
n 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
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 R
AM,Win95/98. The test on the handheld unicast client using 3 different n
etwork 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(Cont.) The variation of the average packet delay with the
number of unicast clients is almost linear. As expected,the video decoding time increased wh
en 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.