Title of Invention

" A METHOD OF TRANSMITING VIDEO IN A VIDEO TRANSMISSION SYSTEM FORM A SERVER TO A CLIENT NODE"

Abstract TITLE "A METHOD OF TRANSMITTING VIDEO IN A VIDEO TRANSMISSION SYSTEM FROM A SERVER TO A CLIENT NODE" The invention realties to a method of transmitting video in a video transmission from a server to a client node over a communication medium with a limited bandwidth, the system comprising a server (102) and a client node (110) communicably coupled through a communication medium, the server having a video encoder (106), a video compressor (120), and a storage device (120) to store video files (124); the client node (110) having at least one processor (122), a video decoder (108), an input device (118), a display device (112), a dynamic memory containing instructions to be executed by the atleast one processor (122), and an user interface control (116) connected to the processor (122), the server (102) being connected to a web server on the communication medium and the client node (110) connectable through a dial-up connection to the medium, the method comprising the steps of determining, based on a predetermined frame rate and said limited bandwidth, an initial image quality of said video to be displayed on said client display device; determining during transmitting said video having said initial image quality to said client, a second image quality of said video to be transmitted to said client device based on a second frame rate and said limited bandwidth, transmitting said video with said determined second image quality to said client, wherein the second frame rate is different from said predetermined framed rate.
Full Text FIELD OF THE INVENTION
The present invention relates to digital video delivery systems, and more
specifically, to providing snapshots from a digital video stream.
BACKGROUND OF THE INVENTION
In recent years, the media industry has expanded its horizons beyond
traditional analog technologies. Numerous systems have been developed
for transmitting video information digitally from one location to be viewed
in real time at another location. One difficulty associated with providing
video data in digital format is the bandwidth required to deliver a high
quality picture in real time. Consequently, many techniques have been
developed for compressing the representation of digital video. However,
the more compressed the digital video stream, the more information that
is lost in the compression process and the lower the quality of the video
image displayed to the viewer.
To compensate for low bandwidth, video may be delivered with fewer
frames for second and/or with less resolution. It is not uncommon for
digital video to be delivered in resolutions that are significantly smaller
than the resolution supported by the device being used to view the video.
For example, real-time video is often delivered in 120 by 160 pixel
resolution, when most digital viewing devices support resolutions of 640
by 480 and above.
Various video compression techniques have been developed. One popular
compression technique is known as wavelet transform, which is
described in many publications including "A VLSI Architecture for Real-

Time Hierarchical Encoding/Decoding of Video Using the Wavelet
Transform", Mohan Vishwanath, Chaitali Chakrabarti, ICASSP 1994,
and VLSI Architecture for Discrete Wavelet Transforms", Parhi, Keshab;
Nishitani, Takao IEEE Transactions on Very Large Scale Integration
(VLSI) Systems, vol.1, No.2, June 1993. Another popular compression
technique is known as MPEG compression, which follows international
standards: ISO/IEC 13818-1,2,3 (MPEG-2) and ISO/IEC 11172-
1,2,3(MPEG-1). Documents that describe these standards are available
from ISO/IEC Copyright Office Case Postale 56, CH 1211, Geneve 20,
Switzerland.
Different compression techniques require different amounts of
computational power to perform compression. If a video server has
enough computational power, digital video may be compressed during
the delivery of the digital video to a viewer in real time ("on the fly"). If a
video server does not have enough computational power to perform on-
the-fly compression, digital video may be pre-compressed before real-
time delivery of the video begins.
Typically, a video server that delivers digital video that is compressed
on-the-flyj will determine the bandwidth available to send the video to a
particular destination (the "client") before initiating the transmission of
the video. The video server will then select a compression ratio based on
the available bandwidth. For example, a higher compression ratio will be
selected to deliver video to a client that is connected to the server
through a 14.4K baud modem than will be selected to deliver video to a
client that is connected to the server through a 28.8K baud modem. This
compression ratio will typically be in effect for the duration of the delivery
of video to that particular client.

A video server that delivers digital video that is pre-compressed may not
be free to adjust the compression ratio of a stream of digital video data
based on the bandwidth to a particular client. Consequently, digital video
that is pre-compressed is often pre-compressed with low-bandwidth
clients in mind. Thus, even high bandwidth clients often receive low-
resolution, low-quality video images.
Often, users would like to be able to create a "snapshot' of the video
image that is being supplied to a client. Forn example, the video may be
of a basketball game and the user may wish to have a snapshot of a Strat
player making a slam dunk. The ability to create snapshots may also be
useful for business situations. For example, it may be desirable to have a
snapshot of a diagram or white board that is momentarily displayed
during a video conference.
Using current technology, such snapshots can be created by performing
a "screen capture" or "screen dump" while the desired image is being
displayed to the viewer. Unfortunately, the size and quality of such
snapshots will be no better than the size and quality of video image as it
is delivered in real time. As explained above, the quality of the real image
is reduced by the constraints imposed by the need to supply the video
image in real time over a narrow bandwidth.
Video capture mechanisms that produce digital photographs from analog
video signals generated from external video devices have been developed.
However, such mechanisms generally do not work with digital input.
Further, such hardware mechanisms do not have to address the quality
limitations associated with the realtime delivery of digital video over
media with limited bandwidths. In addition, such video capture


mechanisms require the recipient of the photograph to acquire special
additional hardware.
Based on the foregoing, it is clearly desirable to provide a mechanism
that allowsm a user to obtain a snapshot
SUMMARY OF THE INVENTION
A method and system are provided for delivering video from a client to a
server over a communication medium with a limited bandwidth.
According to one aspect of the invention, an initial image quality that
allows the video to be displayed at the client is determined based on a
predetermined frame rate and the limited bandwidth. Video having the
initial image quality is transmitted to the client. While transmitting the
video to the client, the server receives a message from the client that
indicates selection of a second frame rate that is slower than the
predetermined frame rate. In response to the message from the client,
the server determines a second image quality that allows the video to be
displayed in real time at the client based on the second frame rate and
the limited bandwidth. Th second image quality is higher than the initial
image quality. The video with the second image quality is then
transmitted to the client.
According to another aspect of tbe invention, a stream of video is
transmitted from the server to the client. A predetermined user input is
received at the client. In response to the predetermined user input at the
client, a message is transmitted from the client to the server that
indicates a particular frame in the video. In response to receiving the

message at the server, the server transmits to the client data depicting
an image represented in the frame, wherein the data represents the
image in greater detail than the image is represented in the frame of the
video.
BRIEF DESCRIPTION OF THE DRAWINGS
The present invention is illustrated by way of example, and not by way of
limitation, in the figures of the accompanying drawings and in which like
reference numerals refer to similar elements and in which:
FIG. 1A is a block diagram of a digital video delivery system that uses on-
the-fly compression according to an embodiment of the invention;
FIG. 1B is a block diagram of a digital video delivery system that uses
pre-compressed video data according to an embodiment of the invention;
FIG. 2A is a portion of a flow chart that illustrates the operation of a
digital video delivery system according to an embodiment of the present
invention;
FIG 2B is another portion of the flow chart illustrated in FIG. 2A; and
FIG 2C is another portion of the flow chart illustrated in FIG. 2A.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
A method and apparatus for providing high quality snapshots that
correspond to frames from a lower-quality video stream is described. In-

the following description, for the purposes of explanation, numerous
specific details are set forth in order to provide a thorough understanding
of the present invention. It will be apparent, however, to one skilled in
the art that the present invention may be practiced without these specific
details. In other instances, well-known structures and devices are shown
in block diagram form in order to avoid unnecessarily obscuring the
present invention.
HARDWARE OVERVIEW
The present invention is not limited to any particular type of digital video
format. Therefore, embodiments of the invention will be described for
both on-the-fly and pre-compressed digital video delivery system. An
exemplary video display system that uses on-the-fly compression is
illustrated in FIG. 1A, while an exemplary video display system that
delivers pre-compressed video data is illustrated in FIG. 1B.
ON-THE-FLY VIDEO DELIVERY SYSTEMS
Referring to FIG. 1A, it is a block diagram of a digital video delivery
system 100 upon which an embodiment of the present invention can be
implemented. System 100 includes a server 102 and a client 110. Server
102 generally includes a storage device 124 and a video encoder 106.
Strorage device 124 stores a video file 104. Video encoder 106 encodes
video into a digital stream using on-the-fly compression, and therefore
includes a video compressor 120.
Server 102 is coupled to client 110 through a communication medium
that supports the transport of digital data. Server 102 may be, for

example, a web server on the internet and client 110 may be connected
to the internet through a dial-up connection. Alternatively, server 102
and client 110 may both be workstations on a local area network. The
present invention is not limited to any particular communication
medium or network environment.
Client 110 generally includes a video display 112, a video decoder 108, a
processor 122 and a user input device 118. Video display 112 generally
represents any device capable of displaying digital information. Video
decoder 108 is configured to decode a digital video stream and display
the resulting video images on video display 112. In an Internet or
Intranet environment, video decoder 108 may be, for example,
implemented in an HTTP client, commonly referred to as a "web
browser". Decoder 108 may be coded as part of the web browser itself, or
may be implemented as a "plug in" that is dynamically linked to a web
browser.
In FIG. 1A, video decoder 108 is encoding the digital video stream
received from video encoder 106 and transmitting a signal to video
display 112 to cause a video image 114 decoded from the video stream to
be displayed on video display 112.
Processor 122 generally represents one or more processors that belong to
client 110. Processor 122 executes sequences of instructions contained
in the dynamic memory of client 110. For the purposes of explanation,
video decoder 108 is shown separate from processor 122. However, video
decoder 108 may be implemented in hardware, software or a
combination of hardware and software. When implemented by software,

the functions of video decoder 108 may be performed by causing
processor 122 to execute sequences of instructions for decoding a video
stream.
User input device 118 generally represents one or more devices for
receiving input from a user. For example, user input device 118 may
include a keyboard, a mouse, a track-ball, a touch pad, and/or a pen
input device. In response to user input from the user input device 118,
processor 122 may cause a cursor to move on video display 112. By
manipulating user input device 118, a user may interact with user
interface controls 116 generated on video display by processor 122.
USER INTERFACE CONTROLS
As mentioned above, processor 122 executes instructions which cause
user interface controls 116 to be displayed on video display 112.
According to one embodiment of the invention, the user interface controls
116 generated by processor 122 include controls similar to those found
on a video cassette recorder. Such controls may include, for example, a
forward button, a rewind button, a slow button, a pause button, and a
slow motion button. A user interacts with these control using user input
device 118. As shall be described in greater detail hereafter, processor
122 transmits messages to server 102 that affect the encoding of the
video stream in response to certain user interactions with the user
interface controls 116.

MAXIMIZING BANDWIDTH USAGE DURING SLOW MOTION
According to one embodiment of the invention, server 102 initially
determines the compression ratio that video compressor 120 will use to
deliver the video contained in video file 104 to client 110 based on a
specified frame delivery rate and the bandwidth between server 102 and
client 10. The lower the bandwidth, the higher the compression ratio
used by video compressor 120 and the lower the quality of the video
image 114 displayed on video display 112.
When the user enters user input through user input device 118 that
elects the "slow" button displayed in the user interface controls 116,
processor 122 transmits a message to server 102 that indicates a new
frame transmission rate. In prior art video delivery systems, the video
encoder would simply respond by sending data at a slower rate.
Consequently, the bandwidth that is fully utilized during normal rate
playback is under utilized during slow speed playback.
According to an embodiment of the present invention, the video encoder
106 dynamically adjusts the compression rate used by video compressor
120 during slow playback to fully utilize the available bandwidth to client
110. The slower the frame rate specified by the user, the lower the
compression ratio employed by the video encoder. Consequently, a higher
quality image will be displayed on video displayed on video display 112
during slow motion playback.
When a user selects the "pause" button on the user interface controls
116, the client pauses playback of the video. The user may select a
"camera" control to obtain a high quality digital image of the frame

currently being displayed, as shall be described in greater detail
hereafter.
PROVIDING HIGH QUALITY SNAPSHOTS
According to one embodiment of the invention, user interface controls
116 include a button that depicts a camera. When a user selects the
camera button, processor 122 transmits a message to server 102 to
indicate that the camera button was selected. The message also includes
data that identifies the particular frame displayed in video image 114
when the camera button was selected. The frame may be identified, for
example, by a frame number or by an offset value into the video file 104.
The value used to identify each frame is contained within the video
stream transmitted from server 102. The present invention is not limited
to any particular format in which to represent the displayed frame.
In response to the message from client 110, video compressor 120
locates the frame specified in the message and transmits the video
information that corresponds to the frame from video file 104 with little
or no compression. Consequently, the client 110 will receive a still
"snapshot" of the specified frame that has a much higher resolution and
quality than when the same frame was delivered to client 110 in real
time. For example, the resolution of the video sent during normal speed
realtime playback may be 160 by 120 pixels, while the resolution of the
image sent when camera button is selected may be 640 by 480 pixels.
According to one embodiment, the user will receive a still frame of the
highest quality that can be produced by video file 104, which may itself
store the video in a slightly compressed format. According to an

server 132 and client 110. The lower the bandwidth, the higher the
compression ratio of the video file selected by video transmitter 136 and
the lower the quality of the video image 114 displayed on video display
112.
For the purposes of explanation, it shall be assumed that the bandwidth
between server 132 and client 110 is such that only the highly
compressed video file 134 can be delivered in real-time. Therefore, video
selector 130 initially selects video file 134, and video transmitter 136
begins the transmission of data from video file 134.
When the user enters user input through user input device 118 that
selects the "slow" button displayed in the user interface controls 116,
processor 122 transmits a message to server 132 that indicates a new
frame transmission rate. Upon receiving the new frame transmission
rate, video transmitter 136 determines whether data from any less
compressed video file can be delivered in real-time at the slower frame
transmission rate. If data from the less-compressed video file can be
transmitted at the slower frame transmission rate, video selector 130
switches to the less-compressed video file. Video transmitter 136 then
proceeds to transmit a video stream from the less-compressed video file.
Consequently, a higher quality image will be displayed on video display
112 during slow motion play back.
Preferably, switching the input file at the server 132 does not cause a
skip in the video as it is viewed at client 110. Therefore, server 132 stores
data that indicates the correlation between the frames in video file 134
and the frames in video file 140. When video selector 130 switches from

alternative embodiment, the user provided controls for specifying the
quality of the snapshot. Because the frame delivery rate is or becomes
zero when the camera button is selected, the quality and resolution of
the image sent in response to selection of the camera button may be
selected independent of the bandwidth between the server and the client.
NON-HIERARCHICAL VIDEO DELIVERY SYSTEMS
FIG. 1B is a block diagram of a digital video delivery system 150 that
includes a server 132 and client 110. Video server 132 includes a video
transmitter 136 for transmitting a video stream that has been pre-
compressed using, for example, MPEG-2 compression techniques. Video
server 132 further includes a storage 144 that contains multiple versions
of a video. In the illustrated example, storage 144 contains a video file
134 that has been pre-compressed using one compression ratio, and a
second video file 140 that has been pre-compressed using a different,
lower compression ratio. Because video file 140 has been compressed
with a lower compression ratio than video file 134, the images
represented in video file 140 have a higher resolution and higher
resolution and higher quality than the corresponding images represented
in video file 134. However, the amount of data contained in video file 140
is too great relative to the bandwidth between server 132 and client 110
for video file 140 to be viewed at client 110 in real-time.
According to an embodiment of the invention, server 132 is configured to
switch between video file sources to provide increased quality slow
motion and high quality snapshots. Specifically, server 132 initially
determines which of video files 134 and 140 to transmit to client 110
based on a specified frame delivery rate and the bandwidth between

video file 134 to video file 140, video transmitter 106 begins transmission
from video file 140 at a frame that corresponds to the last frame sent
from video file 134.
When a user selects a button to switch from slow motion to normal speed
playback, a message is sent to server 132. In response to the message,
video selector 130 switches to the more highly compressed video file 134.
The data indicating the correlation between the frames of video files 134
and 140 are again accessed to determine the appropriate frame at which
to begin transmission from video file 134.
When a user selects the "pause" button on the user interface controls
116, the client pauses playback of the video. When a user selects the
camera button, processor 122 transmits a message to server 132 to
indicate that the camera button was selected. The message also includes
data that identifies the particular frame displayed in video image 114
when the camera button was selected. In response to the message from
client 110, video selector 130 locates the frame within the least-
compressed video file that corresponds to the frame specified in the
message. Video transmitter 106 then transmits the video information
that corresponds to the frame from the least-compressed video file.
Consequently, the client 110 will receive a still "snapshot" of the specified
frame that has a much higher resolution and quality than when the
same frame was delivered to client 110 in real time.
Preferably, video files 134 and 140 are compressed using a compression
technique that allows a user to scroll through the compressed video
bidirectionally. Under these conditions, a user may operate the user
interface controls 116 to move through the video sequence both forward

and back, with slow motion and pause controls to find the exact frame
desired for a snapshot. A high resolution version of that frame is then
sent to the client 110 when the camera button is selected, as explained
above.
In the foregoing description, storage 144 includes only two versions of
the video being viewed at the client 110. However, storage 144 may
include any number of versions, each of which is pre-compressed using a
different compression ratio. Under these conditions, video selector 130
selects the video file with the lowest compression ratio that can be
transmitted over the available bandwidth at the specified frame display
rate. As the user decreases the frame rate during playback, the video
selector dynamically switches to video files with lower compression
ratios. According to one embodiment, the video file with the lowest
compression ratio is always used to transmit a snapshot back to the
client 110 in response to selection of the camera button.
DIGITAL VIDEO DELIVERY OPERATION
FIGS. 2A, 2B, and 2C contain a flow chart that illustrates the steps
performed by a digital video delivery system according to an embodiment
of the invention that uses on-the-fly compression. Block 200 generally
represents digital video data stored on a storage device of a video server.
The digital data may be uncompressed or pre-compressed. However, if
the video data is pre-compressed, it is not pre-compressed to the degree
required to be able to transmit the video to a client for normal-speed
playback in real time. Consequently, some additional on-the-fly
compression must be performed to send the video to the client for
normal-speed, real-time playback.

At step 202, the server receives a request to begin streaming video to a
client. From step 202, control proceeds to block 204. Block 204 generally
represents a steady state in which the video data is compressed (step
206), sent to the client (step 208),decoded at the client (step 210) and
displayed at the client (step 212). The compression ratio (X: 1) used to
compress the data at step 206 is determined based on the bandwidth
between the server and the client and a specific frame transmission rate.
Specifically, the compression must be such that the bandwidth is able to
carry video to the server at the specified frame rate. The on-the-fly
compression ratio will be less for video data that has been pre-
compressed.
At step 214, the server receives a message from the client that indicates
that a user at the client has selected a control on the VCR-like user
interface controls displayed on the client. If the message indicates that a
user has selected a fast forward or rewind control, control passes to step
236. If the message indicates that the user has selected something other
than a fast forward or rewind control, control passes to step 216.
At step 216, it is determined whether the message indicated that the
user selected a "video snap" control. Selection of the video snap control
indicates that the user desires a quality snapshot of the video currently
being viewed by the user. If the message indicates that the user has
selected the video snap control, control passes to step 218. Otherwise,
control passes back to step 202.
At step 218, the server pauses the transmission of video to the client. At
step 220, the video data that is stored on the server is accessed to
acquire the video data for the frame currently displayed at the client.

However, the retrieved video data is not compressed using the same
compression ratio X:l as was used at step 206. Rather, at step 222 the
retrieved video data for the selected frame is compressed using a
compression ratio X/Y:l, where Y>1. Consequently, the image
represented in the video data will have a higher image quality and
resolution than the corresponding image that was sent to the user in the
real-time video stream.
According to one embodiment, the user at the client is able to specify
options relating to the quality of the images that will be generated in
response to selection of the video snap control. The message sent to the
server when the user selects the video snap control contains data that
indicates the selected quality. The selected quality is then used to select
the compression ratio used at step 222. The user may specify the quality
in a variety of ways, including specifying a desired resolution or a desired
resolution or a desired compression ratio. The present invention is not
limited to any particular form o specifying the image quality of
snapshots.
At step 224, the less-compressed (or uncompressed) data for the selected
frame of video is transmitted from the server to the client. At step 228,
the high resolution image is decoded at the client from the less-
compressed video data and displayed at the client. Control then proceeds
to step 250.
At step 230, the user may convert ("transcode") the high resolution
snapshot to a specified image format, such as JPEG, PCX, BMG, TIFF,
etc. If the user transcodes the image, the image is converted to the

appropriate format at step 232 and saved at step 234. This process may
be repeated to create any number of stored copies of the image.
As mentioned above, control passes to step 236 when the user has
selected either fast forward or rewind. At steps 236 and 238 the server
accesses the appropriate files on the stored data. In addition, the
compression ratio and the frame transmission rate are adjusted as
appropriate to the specified operation. Control then proceeds to the
encode/decode cycle illustrated at block 204.
For digital video distribution systems that transmit video that has been
pre-compressed, the steps are only slightly changed. Specifically, at step
206 a source video-file is selected based on the pre-compression ratio of
the video file and the bandwidth available to transmit the video to the
client. At step 222, a video file that is pre-compressed with a lower pre-
compression ratio than the video file selected at step 206 is selected.
Data from that less-compressed file is transmitted at step 224.
In the foregoing specification, the invention has been described with
reference to specific embodiments thereof. It will, however, be evident
that various modifications and changes may be made thereto without
departing from the broader spirit and scope of the invention. The
specification and drawings are, accordingly, to be regarded in an
illustrative rather than a restrictive sense.

I CLAIM :
1. A method of transmitting video in a video transmission from a server to a
client node over a communication medium with a limited bandwidth, the
system comprising a server (102) and a client node (110) communicably
coupled through a communication medium, the server having a video
encoder (106), a video compressor (120), and a storage device (120) to store

video files (124); the client node (110) having at least one processor (122), a
video decoder (108), an input device (118), a display device (112), a dynamic
memory containing instructions to be executed by the atleast one processor
(122), and an user interface control (116) connected to the processor (122),
the server (102) being connected to a web server on the communication
medium and the client node (110) connectable through a dial-up connection
to the medium, the method comprising the steps of:
determining, based on a predetermined frame rate and said limited
bandwidth, an initial image quality of said video to be displayed on said client display device;
determining during transmitting said video having said initial image quality to
said client, a second image quality of said video to be transmitted to said
client device based on a second frame rate and said limited bandwidth,
transmitting said video with said determined second image quality to said
client, wherein the second frame rate is different from said predetermined
framed rate.

2. The method as claimed in claim 1, wherein :
the step of determining an initial image quality comprises the step of
determining an image quality that allows said video to be displayed in real
time at said predetermined frame rate over said limited bandwidth ;and
the step of determining a second image quality comprises the step of
determining an image quality that allows said video to be displayed in real
time at said second frame rate over said limited bandwidth.
3. The method as claimed in claim 1, wherein :
the step of determining an initial image quality comprises the step of
determining based on said predetermined frame rate and said limited
bandwidth an initial compression ratio to display said video at said client; and
wherein the step of compressing said video constitutes compressing the video
at the initial compression ratio in the server during transmitting said video to
said client.
4. The method as claimed in claim 1, wherein :
the step of determining a second image quality comprises the step of
determining based on said second frame rate and said limited bandwidth a
second compression ratio to display said video at said client, displace device,
and wherein the step of compressing comprises compressing said video at
said server using said second compression ratio while transferring said video
to said client.

5. The method as claimed in claims 3 or 4, wherein said second compression
ratio is lower than said initials compression ratio.
6. The method as claimed in claim 3, comprising the steps of:
receiving at said server transmitting said video to said client at said
predetermined frame rate, a message from said client that indicates selection
of said second frame rate that is decreased relative to said predetermined
frame rate;
- transmitting said video with said second image quality in response to said
message from said client;
- receiving at said server a second message from said client;
- transmitting to said client from said server in response to said second
message, a frame of said video without compressing said video.
7. The method as claimed in claim 6, comprising the steps of:
displaying a pause control at said client while said client is displaying said
video; and
causing said client to transmit said second message in response to user
selection of said pause control.
8. The method as claimed in claim 1, wherein :

the step of determining an initial image quality comprises the step of
selecting a first pre-compressed video file from a plurality of pre-compressed
video files, wherein each of said plurality of pre-com pressed video files is
compressed using a different compression ratio ;
the step of transmitting said video with said initial image quality to said client
comprises transmitting data from said first pre-compressed video file ;
the step of determining a second image quality comprises the step of
selecting a second pre-compressed video file from said plurality of pre-
compressed video files, wherein said second pre-compressed video file is pre-
compressed using compression ratio which is lower than the compression
ratio used to pre-compress video file ; and
the step of transmitting said video second image quality comprises
transmitting said data from said second pre-compressed video file.
9. The method as claimed in claim 8, comprising the steps of :
- receiving at said server during transmitting said video to said client at
said predetermined frame rate, a message from said client that indicates
selection of said second frame rate that is decreased relative to said
predetermined frame rate;
- transmitting said video with said second image quality in response to said
message from said client;

- receiving at said server a second message from said client;
- transmitting to said client from said server in response to said second
message, a frame of said video from a less compressed video file of said
plurality of pre-compressed video files.
10. The method as claimed in claim 1, comprising the steps of:
- receiving at said server during transmitting said video to said client at
said predetermined frame rate, a message from said client that indicates
selection of said second frame irate that is decreased relative to said
predetermined frame rate ; and
- transmitting said video with said second image quality in response to said
message from said client.
11.The method as claimed in claim 10, comprising the steps of:
- generating at the client node a set of user interface objects while displaying
said video to a user ; and
- generating in response to user selection of one of said user interface
objects, said message and transmitting said message to said server.
12. The method as claimed in claim 11, wherein :

said set of user interface objects comprises a slow motion
control; and
said message is generated and transmitted to said server in response to user
selection of said slow motion control.
13.The method as claimed in claim 1, comprising the steps of :
- transmitting a stream of video from the server to the client node to be
displayed on a display device at said client;
- receiving a predetermined user input at said client;
- transmitting a message from the client to the server in response to said
predetermined user input at the client, that indicates a particular frame in
said video that was transmitted to said client;
- transmitting from the server to the client in response to receiving the
message at the server, data depicting an image represented in said frame,
wherein said data represents said image in greater detail than said image is
represented in said frame of said video transmitted to said client; and
- displaying said image on said display device of said client in said greater
detail based on said data.
14.The method as claimed in claim 13, comprising the steps of:

- scrolling in response to user input at the client, through the video at the
client; and
- wherein the step of transmitting a message from the client to the server
that indicates a particular frame in said video comprises transmitting from
he client to the server a message that indicates a frame of said video that
s being displayed at said client when said user enters said predetermined
user input.
15.The method as claimed in claim 13, comprising the steps of :
displaying user interface controls at said client while said client
receives said stream of video from said server;
wherein said step of receiving a predetermined user input at said client
comprises the step of detecting user selection of as control of said user
interface controls.
16. The method as claimed in claim 15, wherein :
- said user interface controls the scrolling of said stream of video forward,
scrolling said stream of video backward, and pause control; and
- said step of detecting user selection of a control comprises detecting
selection of said pause control.
16. The method as claimed in claim 13, wherein :

- the step of transmitting a stream of video from the server to the client
comprises transmitting said stream of video while compressing said video at
a first compressions ratio ; and
- the step of transmitting from the server to the client data depicting an
image represented in said frame comprises the steps of transmitting a
portion of said video that corresponds to said frame of video while
compressing said video at a second compression ratio that is different than
said first compression ratio.
18. The method as claimed in claim 13, wherein :
- the step of transmitting a stream of video from the server to the client
comprises transmitting said stream of video from a video file has been pre-
compressed using a first compression ratio ; and
- the step of transmitting from the server to the client data depicting an
image represented in said frame comprises the steps of transmitting a
portion of said video that corresponds to said frame of video from a second
video file that has been pre-compressed using a second compression ratio
that is different than said compression ratio.
19. The method as claimed in claim 13; wherein :
- the step of transmitting a stream of video from the server to the
clients comprises transmitting said stream of video from a video file that
represents said video at a first resolution ; and

- the step of transmitting from the server to the client data depicting an
image represented in said frame comprises the steps of transmitting a
portion of said video that corresponds to said frame of video from a second
video file that represents said video at a second resolution that is different
than said first resolution.
20. The method as claimed in claim 1, comprising the steps of:
- sending to said client over said communication line a stream of video in a
signal that reflects an initial quality;
- playing said stream of video on a display device at said client;
- transmitting to said client over said communication line an image associated
with a transmitted portion of said stream of video ; and
- displaying said image on said display device of said client, wherein said
image has a higher quality than transmitted portion of said stream of video
with which said image is associated, and wherein said image has
substantially the same visual content as the transmitted portion of said
stream of video with which said image is associated.
21. The method as claimed in claim 20, comprising the step of constructing
said stream of video and said image from a common source of video
data.

22. The method as claimed in claim 18, wherein the step of playing said
stream of video is performed while said stream of video is received over
said communication line.
23. The method as claimed in claim 20, wherein :

- the step of sending to said client a stream of video is performed by
sending to said client a stream of video from a first set of one or more
sources; and
- the step of transmitting to said client an image is performed by transmitting
to said client an image constructed from a second set of one or more
sources, wherein said second set of one or more sources comprises at least
one source that does not belong to said first set of one or more sources.
24. The method as claimed in claim 1, comprising the steps of:
- transmitting a stream of video from the server to the client to be displayed
on a display device at said client;
- receiving at said server a message from the client that indicates a particular
frame in said video that was transmitted to said client;
- in response to receiving the message at the server, transmitting from the
server to the client data depicting an image represented in said frame,
wherein said data represents said image in greater detail than said image is
represented in said frame of said video transmitted to said client; and

displaying said image based on said data in said display device of said
client.
25. The method as claimed in claim 22, wherein the step of receiving a
message from the client is performed by receiving a message that was
sent by the client in response to user input entered at the client.


ABSTRACT
TITLE "A METHOD OF TRANSMITTING VIDEO IN A VIDEO
TRANSMISSION SYSTEM FROM A SERVER TO A CLIENT NODE"
The invention realties to a method of transmitting video in a video transmission
from a server to a client node over a communication medium with a limited
bandwidth, the system comprising a server (102) and a client node (110)
communicably coupled through a communication medium, the server having a
video encoder (106), a video compressor (120), and a storage device (120) to
store video files (124); the client node (110) having at least one processor (122),
a video decoder (108), an input device (118), a display device (112), a dynamic
memory containing instructions to be executed by the atleast one processor
(122), and an user interface control (116) connected to the processor (122), the
server (102) being connected to a web server on the communication medium
and the client node (110) connectable through a dial-up connection to the
medium, the method comprising the steps of determining, based on a
predetermined frame rate and said limited bandwidth, an initial image quality of
said video to be displayed on said client display device; determining during
transmitting said video having said initial image quality to said client, a second
image quality of said video to be transmitted to said client device based on a
second frame rate and said limited bandwidth, transmitting said video with said
determined second image quality to said client, wherein the second frame rate is
different from said predetermined framed rate.

Documents:

6-KOL-2005-(05-09-2011)-OTHER PATENT DOCUMENT.pdf

6-kol-2005-abstract 1.1.pdf

6-kol-2005-abstract.pdf

6-kol-2005-amanded claims 1.1.pdf

6-kol-2005-claims.pdf

6-KOL-2005-CORRESPONDENCE 1.1.pdf

6-KOL-2005-CORRESPONDENCE 1.2.pdf

6-kol-2005-correspondence.pdf

6-kol-2005-description (complete) 1.1.pdf

6-kol-2005-description (complete).pdf

6-kol-2005-drawings 1.1.pdf

6-kol-2005-drawings.pdf

6-KOL-2005-EXAMINATION REPORT.pdf

6-kol-2005-form 1 1.1.pdf

6-KOL-2005-FORM 1 1.2.pdf

6-kol-2005-form 1.pdf

6-KOL-2005-FORM 18 1.1.pdf

6-kol-2005-form 18.pdf

6-kol-2005-form 2 1.1.pdf

6-kol-2005-form 2.pdf

6-kol-2005-form 26.pdf

6-kol-2005-form 3 1.1.pdf

6-KOL-2005-FORM 3 1.2.pdf

6-kol-2005-form 3.pdf

6-KOL-2005-GRANTED-ABSTRACT.pdf

6-KOL-2005-GRANTED-CLAIMS.pdf

6-KOL-2005-GRANTED-DESCRIPTION (COMPLETE).pdf

6-KOL-2005-GRANTED-DRAWINGS.pdf

6-KOL-2005-GRANTED-FORM 1.pdf

6-KOL-2005-GRANTED-FORM 2.pdf

6-KOL-2005-GRANTED-SPECIFICATION.pdf

6-kol-2005-others 1.1.pdf

6-KOL-2005-OTHERS 1.2.pdf

6-kol-2005-reply to examination report 1.1.pdf

6-KOL-2005-REPLY TO EXAMINATION REPORT 1.2.pdf

6-kol-2005-specification.pdf


Patent Number 252672
Indian Patent Application Number 6/KOL/2005
PG Journal Number 22/2012
Publication Date 01-Jun-2012
Grant Date 28-May-2012
Date of Filing 05-Jan-2005
Name of Patentee VIJAY MALLYA
Applicant Address NO. 2, MINTO PARK, KOLKATA
Inventors:
# Inventor's Name Inventor's Address
1 DR. NARAYANAN RAMASUBRAMANIAM UB ANCHORAGE, 100/1, 5TH FLOOR RICHMOND ROAD, BANGALORE-560 025
PCT International Classification Number H04N 7/173
PCT International Application Number N/A
PCT International Filing date
PCT Conventions:
# PCT Application Number Date of Convention Priority Country
1 NA