IP Library Patent Application 11586171
Patent Application
App. No. 11/586,171

Techniques for managing output bandwidth for a conferencing server

Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US None
App. No.
11/586,171
Abstract

Techniques for managing output bandwidth for a conferencing server are described. An apparatus may include a receiver to receive input video streams at first bit rates from multiple client terminals. The apparatus may include a rate allocation module to allocate an output bit rate for an output video stream corresponding to each input video stream based on distortion rate information where a total output bit rate for all output video streams is equal to or less than a total output bit rate budget for a conference server. The apparatus may include a video transrating module to reduce the first bit rate to a second bit rate for one or more input video streams in accordance with the allocations to create the output video streams. Other embodiments are described and claimed.

Claims (40)

1 . A method, comprising:

receiving input video streams at first bit rates from multiple client terminals;

determining a total output bit rate budget for a conferencing server;

retrieving distortion rate information for each video stream;

allocating an output bit rate for an output video stream corresponding to each input video stream based on said distortion rate information where a total output bit rate for all output video streams is equal to or less than said total output bit rate budget; and

reducing said first bit rate to a second bit rate for one or more input video streams in accordance with said allocations to create said output video streams.

2 . The method of claim 1 , comprising removing one or more video frames from a scalable video stream to reduce said first bit rate to said second bit rate.

3 . The method of claim 1 , comprising transcoding video information from a non-scalable video stream to reduce said first bit rate to said second bit rate.

4 . The method of claim 1 , comprising weighting said distortion rate information for each video stream by a priority level.

5 . The method of claim 1 , comprising:

determining a maximum number of bits that can be allocated for a video frame;

selecting an output video stream with a greatest decrease in distortion rate; and

assigning said output video stream increments of video information from said corresponding input video stream up to said maximum number of bits until an assignment limitation parameter is reached.

6 . The method of claim 1 , comprising assigning said output video streams increments of video information from said corresponding input video streams based on said distortion rate information and limited by a maximum number of bits for a video frame from said input video stream, a maximum bit rate supported by a client terminal to receive said output video stream, or said total output bit rate budget.

7 . The method of claim 1 , comprising receiving an input video stream having video information encoded with different video layers each with different levels of spatial resolution, temporal resolution and quality for a conference call.

8 . An apparatus, comprising:

a receiver to receive input video streams at first bit rates from multiple client terminals;

a rate allocation module to allocate an output bit rate for an output video stream corresponding to each input video stream based on distortion rate information where a total output bit rate for all output video streams is equal to or less than a total output bit rate budget for a conference server; and

a video transrating module to reduce said first bit rate to a second bit rate for one or more input video streams in accordance with said allocations to create said output video streams.

9 . The apparatus of claim 8 , said video transrating module to include a video parser to remove one or more video frames from a scalable video stream to reduce said first bit rate to said second bit rate.

10 . The apparatus of claim 8 , said video transrating module to include a video transcoder to transcode video information from a non-scalable video stream to reduce said first bit rate to said second bit rate.

11 . The apparatus of claim 8 , said rate allocation module to weight said distortion rate information for each video stream by a priority level.

12 . The apparatus of claim 8 , said rate allocation module to determine a maximum number of bits that can be allocated for a video frame, select an output video stream with a greatest decrease in distortion rate, and assign said output video stream increments of video information from said corresponding input video stream up to said maximum number of bits until an assignment limitation parameter is reached.

13 . The apparatus of claim 8 , said rate allocation module to receive an input video stream having video information encoded with different video layers each with different levels of spatial resolution, temporal resolution and quality for a conference call.

14 . The apparatus of claim 8 , said receiver to receive an input video stream having video information encoded with different video layers including a base layer having a first level of spatial resolution and a first level of temporal resolution, and an enhancement layer increasing said first level of spatial resolution or said first level of temporal resolution.

15 . An article comprising a machine-readable storage medium containing instructions that if executed enable a system to:

receive input video streams at first bit rates from multiple client terminals;

determine a total output bit rate budget for a conferencing server;

retrieve distortion rate information for each video stream;

allocate an output bit rate for an output video stream corresponding to each input video stream based on said distortion rate information where a total output bit rate for all output video streams is equal to or less than said total output bit rate budget; and

reduce said first bit rate to a second bit rate for one or more input video streams in accordance with said allocations to create said output video streams.

16 . The article of claim 15 , further comprising instructions that if executed enable the system to remove one or more video frames from a scalable video stream to reduce said first bit rate to said second bit rate.

17 . The article of claim 15 , further comprising instructions that if executed enable the system to transcode video information from a non-scalable video stream to reduce said first bit rate to said second bit rate.

18 . The article of claim 15 , further comprising instructions that if executed enable the system to weight said distortion rate information for each video stream by a priority level.

19 . The article of claim 15 , further comprising instructions that if executed enable the system to:

determine a maximum number of bits that can be allocated for a video frame;

select an output video stream with a greatest decrease in distortion rate; and

assign said output video stream increments of video information from said corresponding input video stream up to said maximum number of bits until an assignment limitation parameter is reached.

20 . The article of claim 15 , further comprising instructions that if executed enable the system to assign said output video streams increments of video information from said corresponding input video streams based on said distortion rate information and limited by a maximum number of bits for a video frame from said input video stream, a maximum bit rate supported by a client terminal to receive said output video stream, or said total output bit rate budget.

21 . The article of claim 15 , further comprising instructions that if executed enable the system to receive an input video stream having video information encoded with different video layers each with different levels of spatial resolution, temporal resolution and quality for a conference call.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 15, 2015
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 034766/0509 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 10, 2011
From: BARKLEV, WARREN V.; CHOU, PHILIP A.; CRINON, REGIS J.; MOORE, TIM
To: MICROSOFT CORPORATION
Reel/Frame 027034/0663 →