Согласование скорости при видеоконференциях

Изобретение относится к области видеоконференций, а именно к согласованию скорости передачи видеопотока между клиентами. Техническим результатом является повышение производительности видеоконференций за счет выбора для передачи видеопотока, характеристики которого удовлетворяют характеристикам возможностей принимающего клиента. Для этого принимают множество потоков данных, каждый из которых имеет отличающееся от других разрешение видео, от каждого из передающих клиентов и анализируют характеристики принимающих клиентов. В результате анализа выбирают один из множества потоков данных от каждого из передающих клиентов и отправляют его в принимающий клиент. Указанные операции выполняются посредством сервера видеоконференцсвязи, принимающего исходные видеопотоки от клиентов в видеоконференции, анализирующего характеристики каждого клиента и выбирающего видеопоток, чтобы отправлять в каждый клиент, на основе этих характеристик. Например, клиент, допускающий кодирование и декодирование видеопотока высокой четкости, может предоставлять три исходных видеопотока: высокой четкости, среднего и низкого разрешений. Сервер может отправлять в клиент с низким значением доступной полосы пропускания только поток низкого разрешения, в другой клиент, с достаточной полосой пропускания для потока высокой четкости, но без его возможности декодировать, - поток среднего разрешения. 3 н. и 16 з.п. ф-лы, 6 ил.

 

Предшествующий уровень техники

Согласование скорости при видеоконференцсвязи является процессом для повышения производительности видеоконференций. В некоторых ситуациях клиент видеоконференцсвязи, подключенный через Интернет, может иметь колеблющуюся величину полосы пропускания, в то время как другие клиенты находятся в корпоративной сети intranet со стабильной величиной полосы пропускания. Интернет-клиент может не иметь возможность принимать видеопоток качества, идентичного качеству видеопотока клиентов сети intranet, и, таким образом, системе проведения видеоконференций может инструктироваться снижать качество видео для всех участвующих клиентов до уровня, который может обрабатывать клиент с наименьшей производительностью. Таким образом, система может инструктировать клиентам сети intranet нарушать и жертвовать своими характеристиками и кодировать/принимать только в потоках с низкой скоростью передачи в битах при низкой скорости передачи в кадрах и при низком разрешении.

Например, для сети intranet клиенты могут иметь возможность кодировать и воспроизводить при VGA-разрешении (640×480 пикселов в расчете на каждый кадр) с частотой кадров в 30 кадров в секунду (кадров/с). Интернет-клиент может иметь возможность кодировать и принимать только при CIF-разрешении (320×240) со скоростью в 15 кадров/с. Традиционная стратегия состоит в том, чтобы инструктировать каждому клиенту кодировать и принимать при более низком CIF-разрешении или инструктировать системе видеоконференцсвязи отбрасывать попеременные кадры из потока VGA-разрешения.

Сущность изобретения

Может предоставляться согласование скорости при видеоконференциях. Данное изложение сущности изобретения предоставлено для того, чтобы представлять в упрощенной форме подборку концепций, которые дополнительно описаны ниже в подробном описании. Это изложение сущности изобретения не имеет намерение идентифицировать ключевые признаки или существенные признаки заявленного изобретения. Также это изложение сущности изобретения не имеет намерение использоваться для того, чтобы ограничивать объем заявленного изобретения.

Может предоставляться согласование скорости при видеоконференциях. Сервер видеоконференцсвязи может принимать исходные видеопотоки от клиентов в видеоконференции. Сервер может анализировать характеристики каждого клиента и выбирать видеопоток, чтобы отправлять его в каждый клиент, на основе этих характеристик. Например, клиент, допускающий кодирование и декодирование видеопотока высокой четкости, может предоставлять три исходных видеопотока - поток высокой четкости, поток среднего разрешения и поток низкого разрешения. Сервер может отправлять только поток низкого разрешения в клиент с низким значением доступной полосы пропускания. Сервер может отправлять поток среднего разрешения в другой клиент с достаточной полосой пропускания для потока высокой четкости, но который не имеет возможности декодировать поток высокой четкости.

Как вышеприведенное общее описание, так и последующее подробное описание предоставляют примеры и являются только пояснительными. Соответственно, вышеприведенное общее описание и последующее подробное описание не должны считаться ограничивающими. Дополнительно, признаки или варьирования могут предоставляться в дополнение к изложенным в данном документе. Например, варианты осуществления могут быть направлены на различные комбинации и субкомбинации признаков, описанные в подробном описании.

Краткое описание чертежей

Прилагаемые чертежи, которые включаются в и составляют часть этого раскрытия сущности, иллюстрируют различные варианты осуществления настоящего изобретения. На чертежах:

Фиг.1 является блок-схемой операционного окружения;

Фиг.2A-2C являются схемами, иллюстрирующими алгоритмы кодирования видеопотоков с использованием различных типов кадров;

Фиг.3 является схемой, иллюстрирующей согласование скорости при видеоконференциях;

Фиг.4 является блок-схемой последовательности операций способа для предоставления согласования скорости при видеоконференцсвязи;

Фиг.5 является блок-схемой последовательности операций способа подпрограммы, используемой в способе по фиг.4 для выбора потока данных для клиента; и

Фиг.6 является блок-схемой системы, включающей в себя вычислительное устройство.

Подробное описание изобретения

Последующее подробное описание ссылается на прилагаемые чертежи. Когда целесообразно, идентичные ссылки с номерами используются на чертежах и в последующем описании для того, чтобы ссылаться на идентичные или аналогичные элементы. Хотя варианты осуществления изобретения могут описываться, модификации, адаптации и другие реализации являются возможными. Например, подстановки, добавления или модификации могут выполняться для элементов, проиллюстрированных на чертежах, и способы, описанные в данном документе, могут модифицироваться посредством подстановки, посредством или добавления этапов к раскрытым способам. Соответственно, последующее подробное описание не ограничивает изобретение. Вместо этого надлежащий объем изобретения задается прилагаемой формулой изобретения.

Может предоставляться согласование скорости при видеоконференциях. В соответствии с вариантами осуществления настоящего изобретения схема с несколькими скоростями передачи в битах (MBR) может использоваться для того, чтобы передавать потоком данные в клиенты согласно возможностям клиентов по приему и обработке данных.

Фиг.1 является блок-схемой операционного окружения. Операционное окружение может содержать окружение 100 видеоконференцсвязи. Окружение 100 видеоконференцсвязи может содержать клиент 110 сети intranet и сервер 120 видеоконференцсвязи, соединенные через сетевое intranet-соединение 115. Окружение 100 видеоконференцсвязи дополнительно может содержать первый Интернет-клиент 130, второй Интернет-клиент 140 и третий Интернет-клиент 150. Каждый из Интернет-клиентов может подключаться к серверу 120 видеоконференцсвязи через Интернет 160. В соответствии с вариантами осуществления изобретения сервер 120 видеоконференцсвязи, клиент 110 сети intranet, первый Интернет-клиент 130, второй Интернет-клиент 140 и третий Интернет-клиент 150 могут содержать вычислительное устройство 600, описанное ниже более подробно относительно фиг.6.

Окружение 100 видеоконференцсвязи может использоваться, когда несколько клиентов хотят совместно использовать потоки данных между собой. Каждый клиент может подключаться к серверу 120 видеоконференцсвязи. Сервер 120 видеоконференцсвязи может поддерживать список того, какие клиенты подключены и каковы характеристики каждого клиента. В соответствии с вариантами осуществления изобретения сервер 120 видеоконференцсвязи может периодически обновлять все изменения в характеристиках клиента. Например, сервер 120 видеоконференцсвязи может анализировать сетевое intranet-соединение 115 и определять то, что клиент 110 сети intranet может иметь большую доступную полосу пропускания, чем определено ранее. Сервер 120 видеоконференцсвязи может сохранять эту информацию для использования в упрощении совместного использования данных. Сервер 120 видеоконференцсвязи может отвечать за определение того, какие клиенты могут отвечать за отправку потоков данных на сервер 120 видеоконференцсвязи, и за отправку потоков данных в каждый подключенный клиент.

Каждый клиент может кодировать, по меньшей мере, один поток данных, чтобы отправлять на сервер 120 видеоконференцсвязи. Например, каждый клиент может иметь аудио/видеоввод, такой как веб-камера и/или микрофон, подключенный к клиенту. Ввод может использоваться для того, чтобы формировать видеопоток (который может включать в себя аудио) и кодировать видеопоток до отправки его на сервер 120 видеоконференцсвязи. Сервер 120 видеоконференцсвязи может принимать кодированные потоки от каждого клиента и определять то, какие потоки ретранслировать в каждый клиент. Например, клиент 110 сети intranet может кодировать видеопоток как последовательность видеокадров, содержащих в настоящий момент говорящего человека. Сервер 120 видеоконференцсвязи может отправлять кодированный поток, показывающий текущего говорящего, от клиента 110 сети intranet в первый Интернет-клиент 130, второй Интернет-клиент 140 и третий Интернет-клиент 150. Сервер 120 видеоконференцсвязи может отправлять кодированный исходный поток от каждого из первого Интернет-клиента 130, второго Интернет-клиента 140 и третьего Интернет-клиента 150 в клиент 110 сети intranet, чтобы показывать присутствующих.

Фиг.2A-2C являются схемами, иллюстрирующими алгоритмы кодирования видеопотоков с использованием различных типов кадров. Видеопоток может быть кодирован как последовательность видеокадров, при этом каждый кадр может содержать одно изображение. Каждый кадр может представляться посредством битов данных. Видеопоток может быть кодирован так, что не каждый бит данных в каждом кадре должен отправляться, чтобы представлять источник видеопотока. Различные типы кадров могут использоваться для того, чтобы кодировать и/или сжимать видеопоток.

Типы кадров могут содержать I-кадры, P-кадры и B-кадры. I-кадр означает внутренний кадр и может содержать кадр, который может быть декодирован отдельно без ссылки на все остальные кадры в видеопотоке. P-кадр означает прогнозный кадр и может быть декодирован посредством обращения, по меньшей мере, к одному предыдущему кадру в последовательности видеопотоков. B-кадр означает двунаправленный прогнозный кадр и может быть декодирован посредством обращения, по меньшей мере, к одному предыдущему кадру и, по меньшей мере, одному последующему кадру в видеопотоке.

Фиг.2A содержит I (внутренний) кадр 210. I-кадр 210 может быть кодирован без ссылки на другие кадры и может быть декодирован независимо от всех остальных кадров. I-кадры могут давать возможность произвольного доступа в видеопотоке. I-кадры могут быть самыми большими кадрами по размеру и наименее сжатыми.

Фиг.2B содержит P (прогнозный) кадр 230. P-кадр 230 может быть кодирован с использованием предыдущего кадра 220 в качестве опорного и может быть декодирован корректно, только если предыдущий кадр 220 является доступным. P-кадр 230 может быть меньшим и более сжатым, чем I-кадр 210. Предыдущий кадр 220 может содержать I-кадр и/или P-кадр.

Фиг.2C содержит B (двунаправленный) кадр 250. B-кадр 250 может быть кодирован с использованием информации из предыдущего кадра 240 и следующего кадра 260. B-кадр 250 может быть декодирован корректно, если предыдущий кадр 240 и следующий кадр 260 являются доступными. B-кадр 250 может быть меньшим и более сжатым, чем P-кадр 230 и I-кадр 210.

Применение различных типов кадров для того, чтобы кодировать видеопоток, позволяет использовать преимущество источника, в котором существует большое подобие между двумя последующими кадрами, чтобы уменьшать объем данных, который должен отправляться в просматривающий клиент. Например, клиент 110 сети intranet может кодировать и передавать видеопоток человека, говорящего на статическом фоне. Поскольку говорящий человек не может интенсивно перемещаться, видеопоток может быть кодирован с использованием P-кадров так, что P-кадр 230 может содержать только биты данных, представляющие изменения в изображении по сравнению с предыдущим кадром 220.

Фиг.3 является схемой, иллюстрирующей согласование скорости при видеоконференциях. Как описано выше относительно фиг.1, система 100 проведения видеоконференций может содержать клиент 110 сети intranet, сервер 120 видеоконференцсвязи, первый Интернет-клиент 130 и второй Интернет-клиент 140. В соответствии с вариантами осуществления изобретения клиенты в системе 100 проведения видеоконференций могут подключаться с различными полосами пропускания и/или различными характеристиками кодирования и/или декодирования видео. Каждый клиент в системе 100 проведения видеоконференций может регистрироваться на сервере 120 видеоконференцсвязи и устанавливать, по меньшей мере, одну характеристику, такую как доступная полоса пропускания, максимальное разрешение кодирования, максимальное разрешение декодирования и доступные алгоритмы кодирования и/или декодирования данных. Например, клиент 110 сети intranet может регистрироваться на сервере 120 видеоконференцсвязи и устанавливать доступную полосу пропускания в 2 Мбит/с при характеристике кодировать/декодировать видеопоток с помощью VGA-разрешения (640×480) при 30 кадрах/с и CIF-разрешения (320×240) при 15 кадрах/с. Первый Интернет-клиент 130 может регистрироваться на сервере 120 видеоконференцсвязи и устанавливать доступную полосу пропускания в 150 Кбит/с при характеристике кодировать/декодировать видеопоток с помощью 720p-разрешения (1280×720) при 30 кадрах/с, VGA-разрешения (640×480) при 30 кадрах/с и CIF-разрешения (320×240) при 15 кадрах/с. Второй Интернет-клиент 140 может регистрироваться на сервере 120 видеоконференцсвязи и устанавливать доступную полосу пропускания в 200 Кбит/с при характеристике кодировать/декодировать видеопоток только при CIF-разрешении (320×240) при 15 кадрах/с.

В соответствии с вариантами осуществления изобретения клиенты могут допускать кодирование видеопотока, декодирование которого они могут не допускать, и наоборот. Например, второй Интернет-клиент 140 может допускать прием и декодирование видеопотоков VGA-разрешения, но может иметь возможность кодировать только видеопоток CIF-разрешения. В этом сценарии клиент 110 сети intranet и первый Интернет-клиент 130 могут кодировать только один видеопоток при VGA-разрешении, которое сервер 120 видеоконференцсвязи может отправлять во второй Интернет-клиент 140. Кодированный видеопоток CIF-разрешения от второго Интернет-клиента 140 может продолжать отправляться в клиент 110 сети intranet и первый Интернет-клиент 130.

После того как видеоконференцвызов устанавливается и характеристики для каждого клиента зарегистрированы на сервере 120 видеоконференцсвязи, сервер 120 видеоконференцсвязи может передавать запрос на кодирование в каждый клиент. Например, клиент 110 сети intranet и первый Интернет-клиент 130 могут запрашиваться, чтобы кодировать два видеопотока и отправлять их на сервер 120 видеоконференцсвязи, при этом первая версия видеопотока может быть кодирована с помощью VGA-разрешения при 30 кадрах/с, а вторая версия видеопотока может быть кодирована с помощью CIF-разрешения при 15 кадрах/с. Второй Интернет-клиент 140 может запрашиваться, чтобы кодировать один видеопоток с помощью CIF-разрешения при 15 кадрах/с.

Сервер 120 видеоконференцсвязи затем может принимать поток(и) от каждого клиента и выбирать, по меньшей мере, один принимаемый поток, чтобы отправлять в каждый клиент, на основе зарегистрированных и/или определенных характеристик каждого клиента, к примеру, определяя то, декодирование каких алгоритмов кодирования допускает каждый клиент. Например, сервер 120 видеоконференцсвязи может определять то, что второй Интернет-клиент 140 допускает только декодирование видеопотока CIF-разрешения, в то время как клиент 110 сети intranet и первый Интернет-клиент допускают декодирование видеопотоков как VGA-разрешения, так и CIF-разрешения. Сервер 120 видеоконференцсвязи затем может отправлять поток CIF-разрешения, принимаемый от второго Интернет-клиента 140, в клиент 110 сети intranet и первый Интернет-клиент 130. Сервер 120 видеоконференцсвязи может отправлять поток VGA-разрешения от клиента 110 сети intranet в первый Интернет-клиент 130, и CIF-поток от клиента 110 сети intranet во второй Интернет-клиент 140. Аналогично, сервер 120 видеоконференцсвязи может отправлять поток VGA-разрешения от первого Интернет-клиента 130 в клиент 110 сети intranet, и CIF-поток от первого Интернет-клиента 130 во второй Интернет-клиент 140.

Сервер 120 видеоконференцсвязи может определять то, имеет или нет каждый клиент достаточную полосу пропускания для того, чтобы принимать видеопоток, и может выбирать другой поток на основе этого определения. В соответствии с дополнительными вариантами осуществления изобретения сервер 120 видеоконференцсвязи и/или один из клиентов, такой как первый Интернет-клиент 130, может периодически оценивать заново величину доступной полосы пропускания. Например, сервер 120 видеоконференцсвязи может определять то, что полоса пропускания, доступная для первого Интернет-клиента 130, упала со 150 Кбит/с до 75 Кбит/с, и может начинать отправку видеопотока CIF-разрешения вместо видеопотока VGA-разрешения от клиента 110 сети intranet в первый Интернет-клиент 130.

Сервер 120 видеоконференцсвязи также может периодически оценивать заново характеристики кодирования/декодирования каждого клиента и динамически изменять то, какие алгоритмы кодирования запрашиваются для видеопотоков для каждого клиента. Например, второй Интернет-клиент 140 может быть единственным клиентом, принимающим видеопотоки CIF-разрешения от клиента 110 сети intranet и первого Интернет-клиента 130. Если второй Интернет-клиент 140 выбывает из видеоконференцвызова, сервер 120 видеоконференцсвязи может запрашивать, чтобы клиент 110 сети intranet и первый Интернет-клиент прекратили кодирование и отправку версии CIF-разрешения своих соответствующих видеопотоков.

В соответствии с вариантами осуществления изобретения сервер 120 видеоконференцсвязи может инструктировать, по меньшей мере, одному из клиентов, ассоциированных с видеоконференцвызовом, кодировать видеопоток, определенный как применяемый посредством одного из других клиентов, ассоциированных с видеоконференцвызовом. Например, сервер 120 видеоконференцсвязи может определять то, что второй Интернет-клиент 140 в настоящий момент использует CIF-декодирование; сервер 120 видеоконференцсвязи может инструктировать первому Интернет-клиенту 130 кодировать поток CIF-разрешения, чтобы отправлять на сервер 120 видеоконференцсвязи, который может быть ретранслирован на второй Интернет-сервер 140.

Дополнительно в соответствии с вариантами осуществления изобретения сервер 120 видеоконференцсвязи может изменять видеопоток до отправки его в клиент. Например, клиент 110 сети intranet может допускать кодирование и отправку видеопотоков при 720p-, VGA- и CIF-разрешениях и иметь существенную стабильную величину доступной полосы пропускания. Первый Интернет-клиент 130 может допускать прием и декодирование видеопотоков при 720p-, VGA- и CIF-разрешениях, но иметь сильно варьирующуюся величину доступной полосы пропускания. По мере того как полоса пропускания, доступная для первого Интернет-клиента 130, уменьшается, сервер 120 видеоконференцсвязи может изменять видеопоток, ретранслированный от клиента 110 сети intranet в первый Интернет-клиент 130, как лучше всего подходит для доступной величины полосы пропускания. Например, от наибольшей доступной величины полосы пропускания до наименьшей сервер видеоконференцсвязи может использовать следующую логику:

1. Отправка неизмененного 720p-потока,

2. Отбрасывание 1 B-кадра для 720p-потока,

3. Отбрасывание 2 B-кадров для 720p-потока,

4. Отправка неизмененного VGA-потока,

5. Отбрасывание 1 B-кадра для VGA-потока,

6. Отбрасывание 2 B-кадров для VGA-потока,

7. Отправка неизмененного CIF-потока,

8. Отбрасывание 1 B-кадра для CIF-потока,

9. Отбрасывание 2 B-кадров для CIF-потока,

10. Отбрасывание всех B- и P-кадров для 720p-потока (сохранение только I-кадров),

11. Отбрасывание всех B- и P-кадров для VGA-потока (сохранение только I-кадров), и

12. Отбрасывание всех B- и P-кадров для CIF-потока (сохранение только I-кадров).

Выбор потоков, отправляемых в каждый клиент, может зависеть от настроек просмотра каждого клиента, а также характеристик клиента. Например, первый Интернет-клиент 130 может быть выполнен с возможностью просматривать других двух участников системы 100 проведения видеоконференций рядом, одновременно, в то время как второй Интернет-клиент 140 может быть выполнен с возможностью показывать только текущего говорящего. В этом случае сервер видеоконференцсвязи может отправлять поток VGA-разрешения от клиента 110 сети intranet и поток CIF-разрешения от второго Интернет-клиента 140 в первый Интернет-клиент 130. Второй Интернет-клиент 140 может попеременно принимать потоки CIF-разрешения от клиента 110 сети intranet и первого Интернет-клиента 130 по мере того, как каждый из этих клиентов говорит в видеоконференцвызове.

Фиг.4 является блок-схемой последовательности операций способа, излагающей общие этапы, участвующие в способе 400 в соответствии с вариантом осуществления изобретения для предоставления согласования скорости при видеоконференциях. Способ 400 может быть реализован с использованием вычислительного устройства 600, как подробнее описано ниже относительно фиг.6. Пути для того, чтобы реализовывать этапы способа 400, описываются более подробно ниже. Способ 400 может начинаться на начальном этапе 410 и переходить к этапу 420, на котором вычислительное устройство 600 может регистрировать, по меньшей мере, один клиент. Например, по меньшей мере, один клиент может функционально подключаться к вычислительному устройству 600 через сетевое соединение и может запрашивать участие в видеоконференцвызове, организованном на вычислительном устройстве 600.

От этапа 420 способ 400 может переходить к этапу 430, на котором вычислительное устройство 600 может собирать и/или анализировать характеристики каждого зарегистрированного клиента. Например, вычислительное устройство 600 может определять величину полосы пропускания, доступной для каждого клиента. Вычислительное устройство 600 также может определять характеристики обработки данных для каждого клиента, такие как характеристики кодирования и/или декодирования видео и/или скорость обработки данных. Характеристики кодирования/декодирования видео могут включать в себя максимальное разрешение.

От этапа 430 способ 400 может переходить к этапу 440, на котором вычислительное устройство 600 может принимать поток данных, по меньшей мере, от одного клиента. Например, вычислительное устройство 600 может принимать видеопоток от исходного клиента. Каждый клиент может отправлять, по меньшей мере, один поток, и каждый клиент может быть выполнен с возможностью отправлять несколько версий потока данных, к примеру различные разрешения видеопотока.

От этапа 440 способ 400 может переходить к подпрограмме 450, на которой вычислительное устройство 600 может выбирать поток данных для того, чтобы отправлять, по меньшей мере, в один клиент. Например, вычислительное устройство 600 может определять то, что один клиент не имеет достаточную полосу пропускания для того, чтобы принимать версию высокого разрешения видеопотока от второго клиента, и вычислительное устройство 600 может выбирать версию низкого разрешения видеопотока, чтобы отправлять ее. Более подробная информация, касающаяся подпрограммы 450, может описываться ниже относительно фиг.5.

От подпрограммы 450 способ 400 может переходить к этапу 460, на котором вычислительное устройство 600 может отправлять выбранный поток в клиент. Например, вычислительное устройство 600 может ретранслировать видеопоток, принимаемый от одного клиента по сетевому соединению, во второй клиент.

От этапа 460 способ 400 может переходить к этапу 470, на котором вычислительное устройство 600 может определять то, изменены или нет характеристики клиента. Если вычислительное устройство 600 определяет то, что характеристики клиента и/или требования системы изменены, способ 400 может возвращаться к подпрограмме 450, на которой вычислительное устройство 600 может выбирать другие видеопотоки, чтобы отправлять в клиенты. Например, вычислительное устройство 600 может определять то, что выбывает единственный клиент в видеоконференцвызове с применением CIF-декодирования. Вычислительное устройство 600 затем может запрашивать то, чтобы все остальные клиенты в видеоконференцвызове прекращали отправку потоков CIF-кодирования. В соответствии с вариантами осуществления изобретения доступная полоса пропускания клиента может понижаться, и клиент может сообщать вычислительному устройству 600 об этом событии. Вычислительное устройство 600 может выбирать поток данных более низкого разрешения для этого клиента и/или изменять в настоящий момент выбранный поток данных для этого клиента, чтобы принимать уменьшенную полосу пропускания во внимание.

От этапа 470 способ 400 может завершаться на этапе 480.

Фиг.5 является блок-схемой последовательности операций способа подпрограммы, используемой в способе по фиг.4 для выбора потока данных для клиента. От этапа 440 вычислительное устройство 600 может входить в подпрограмму 450 на этапе 510, на котором вычислительное устройство 600 может собирать характеристики кодирования и/или декодирования, по меньшей мере, для одного клиента. По меньшей мере, один клиент может содержать другое вычислительное устройство 618, к примеру клиент 110 сети intranet. Например, вычислительное устройство 600 может определять то, что клиент 110 сети intranet допускает кодирование при VGA- и CIF-разрешениях и декодирование при 720p-, VGA- и CIF-разрешениях.

От этапа 510 подпрограмма 450 может переходить к этапу 520, на котором вычислительное устройство 600 может определять доступную величину полосы пропускания, по меньшей мере, для одного клиента. Например, вычислительное устройство 600 может определять то, что клиент 110 сети intranet имеет доступными 400 Кбит/с для отправки потока данных и доступными 750 Кбит/с для приема потока данных.

От этапа 520 подпрограмма 450 может переходить к этапу 530, на котором вычислительное устройство 600 может выбирать поток данных наивысшего разрешения, доступный для клиента. Например, первый Интернет-клиент может отправлять три потока данных в вычислительное устройство 600: видеопоток 720p-разрешения, видеопоток VGA-разрешения и видеопоток CIF-разрешения. Вычислительное устройство может сначала выбирать видеопоток 720p-разрешения для отправки в клиент 110 сети intranet.

От этапа 530 подпрограмма 450 может переходить к этапу 540, на котором вычислительное устройство 600 может определять то, имеет или нет клиент возможность обрабатывать выбранный поток данных. Например, вычислительное устройство 600 может определять то, допускает или нет клиент 110 сети intranet декодирование выбранного видеопотока 720p-разрешения. Если на этапе 540 вычислительное устройство 600 определяет то, что клиент не может обрабатывать выбранный видеопоток, подпрограмма 540 может возвращаться к этапу 530, на котором вычислительное устройство 600 может выбирать альтернативный поток данных, такой как версия VGA-разрешения видеопотока 720p-разрешения.

Если на этапе 540 вычислительное устройство 600 определяет то, что клиент имеет возможность обрабатывать выбранный поток, подпрограмма 450 может переходить к этапу 550, на котором вычислительное устройство 600 может определять то, имеет или нет клиент достаточную доступную полосу пропускания для того, чтобы принимать выбранный поток данных без существенного снижения производительности. Например, вычислительное устройство 600 может определять то, что клиент имеет 700 Кбит/с доступной полосы пропускания, и что это достаточная полоса пропускания для того, чтобы принимать и воспроизводить видеопоток 720p-разрешения в режиме реального времени с незначительными пропусками и/или паузами в видео либо вообще без них. Если вычислительное устройство 600 определяет то, что клиент имеет достаточную полосу пропускания для выбранного потока на этапе 550, подпрограмма 450 может возвращаться к этапу 460 способа 400.

Если на этапе 550 вычислительное устройство определяет то, что клиент не имеет достаточную полосу пропускания для того, чтобы принимать и обрабатывать выбранный поток, подпрограмма 450 может переходить к этапу 560, на котором вычислительное устройство 600 может изменять выбранный поток до отправки его в клиент. Например, вычислительное устройство 600 может удалять, по меньшей мере, один B-кадр в секунду из видеопотока, чтобы уменьшать объем данных, которые должны отправляться в клиент. Подпрограмма 450 может переходить к этапу 570, на котором вычислительное устройство 600 может определять то, имеет или нет клиент достаточную полосу пропускания для того, чтобы принимать измененный поток данных. Если клиент по-прежнему не имеет достаточную полосу пропускания для того, чтобы принимать измененный поток, подпрограмма 450 может возвращаться к этапу 530, на котором вычислительное устройство 600 может выбирать альтернативный поток данных, такой как версия VGA-разрешения видеопотока 720p-разрешения. В соответствии с вариантами осуществления изобретения вычислительное устройство 600 может удалять дополнительные кадры и/или удалять другие типы кадров и определять то, могут или нет ограничения по полосе пропускания удовлетворяться, до возвращения к этапу 530. Если на этапе 550 вычислительное устройство определяет то, что клиент имеет достаточную полосу пропускания для того, чтобы принимать и обрабатывать измененный поток данных, подпрограмма 450 может возвращаться к этапу 460 способа 400.

Вариант осуществления в соответствии с изобретением может содержать систему для предоставления данных во множество клиентов. Система может содержать запоминающее устройство и процессор, связанный с запоминающим устройством. Процессор может быть выполнен с возможностью принимать потоки данных, анализировать, по меньшей мере, одну характеристику, ассоциированную, по меньшей мере, с одним из множества клиентов, выбирать поток данных, чтобы отправлять в клиент, на основе проанализированной характеристики и отправлять выбранный поток данных в клиент. Например, потоки данных могут быть потоками данных при видеоконференцсвязи, и каждый поток может быть ассоциирован, по меньшей мере, с одним из множества клиентов. По меньшей мере, один из клиентов может отправлять несколько потоков данных, содержащих различные версии потока данных, такие как различные разрешения видеопотока.

Клиенты могут подключаться к системе через среду связи, такую как корпоративная сеть intranet и/или Интернет. Система может быть выполнена с возможностью анализировать доступную полосу пропускания среды связи, ассоциированной, по меньшей мере, с одним из множества клиентов. Система может быть выполнена с возможностью анализировать характеристики обработки данных, ассоциированные, по меньшей мере, с одним из множества клиентов, к примеру характеристику кодирования видео и/или декодирования видео. Система может определять то, допускает или нет данный клиент декодирование доступного потока данных, и допускает или нет клиент кодирование потока данных в алгоритме, запрошенном посредством другого клиента.

Другой вариант осуществления в соответствии с изобретением может содержать систему для предоставления видеопотоков во множество клиентов. Система может содержать запоминающее устройство и процессор, связанный с запоминающим устройством. Процессор может быть выполнен с возможностью принимать, по меньшей мере, один видеопоток от каждого из множества клиентов, собирать данные характеристик видеоконференции, ассоциированные с каждым из множества клиентов, выбирать, по меньшей мере, один видеопоток, чтобы отправлять в каждый из множества клиентов, согласно собранным данным характеристик видеоконференции, ассоциированным с каждым из множества клиентов, и отправлять выбранный, по меньшей мере, один видеопоток в каждый из множества клиентов. Система может быть выполнена с возможностью принимать, по меньшей мере, один первый видеопоток и, по меньшей мере, один второй видеопоток, по меньшей мере, от одного из множества клиентов, при этом, по меньшей мере, один первый видеопоток содержит версию более высокого разрешения, по меньшей мере, одного второго видеопотока. Например, по меньшей мере, один первый видеопоток может содержать видеопоток, кодированный при разрешении 1280×720 и/или 640×480, а второй видеопоток может содержать видеопоток, кодированный при разрешении 320×240.

Система может быть дополнительно выполнена с возможностью определять то, имеет или нет, по меньшей мере, один из множества клиентов достаточную полосу пропускания для того, чтобы принимать все кадры, содержащие, по меньшей мере, один первый видеопоток. В ответ на определение того, что, по меньшей мере, один из множества клиентов имеет достаточную полосу пропускания для того, чтобы принимать все кадры, содержащие, по меньшей мере, один видеопоток, система может отправлять, по меньшей мере, один видеопоток, по меньшей мере, в один из множества неизмененных клиентов. Если, по меньшей мере, один из множества клиентов не имеет достаточной полосы пропускания, чтобы принимать все кадры, содержащие, по меньшей мере, один первый видеопоток, система может отправлять, по меньшей мере, один второй видеопоток более низкого разрешения, по меньшей мере, в один из множества клиентов. В соответствии с вариантами осуществления изобретения, если, по меньшей мере, один из множества клиентов не имеет достаточной полосы пропускания, чтобы принимать все кадры, содержащие, по меньшей мере, один первый видеопоток, система может удалять, по меньшей мере, один кадр в секунду из видеопотока до отправки, по меньшей мере, одного первого видеопотока, по меньшей мере, в один из множества клиентов.

Система может быть выполнена с возможностью определять для каждого из множества клиентов, по меньшей мере, один применяемый алгоритм декодирования видео и, по меньшей мере, один доступный алгоритм кодирования видео. Система может инструктировать, по меньшей мере, одному из множества клиентов кодировать, по меньшей мере, один видеопоток, по меньшей мере, для одного алгоритма кодирования видео, ассоциированного с каждым из множества клиентов, который определяется как применяемый, по меньшей мере, посредством одного из множества клиентов. Например, если один клиент в настоящий момент использует CIF-декодирование, чтобы принимать и обрабатывать видеопотоки, система может запрашивать, чтобы, по меньшей мере, один другой клиент с возможностью CIF-кодирования кодировал и отправлял CIF-кодированный видеопоток в систему для ретрансляции в клиент CIF-декодирования.

Еще один другой вариант осуществления в соответствии с изобретением может содержать систему для предоставления согласования скорости в видеоконференции. Система может содержать запоминающее устройство и процессор, связанный с запоминающим устройством. Процессор может быть выполнен с возможностью регистрировать, по меньшей мере, один первый клиент видеоконференцсвязи и, по меньшей мере, один второй клиент видеоконференцсвязи, функционально подключенный к системе через устройство с сетевым соединением, чтобы принимать множество видеопотоков, по меньшей мере, от одного первого клиента видеоконференцсвязи, определять на основе установленной, по меньшей мере, одной характеристики, по меньшей мере, одного второго клиента видеоконференцсвязи то, может или нет, по меньшей мере, один второй клиент видеоконференцсвязи принимать, по меньшей мере, один первый видеопоток, и в ответ на определение того, что, по меньшей мере, один второй клиент видеоконференцсвязи может принимать, по меньшей мере, один первый видеопоток, отправлять, по меньшей мере, один первый видеопоток, по меньшей мере, в один второй клиент видеоконференцсвязи без декодирования, по меньшей мере, одного первого видеопотока посредством системы. Система может быть выполнена с возможностью устанавливать, по меньшей мере, одну характеристику, по меньшей мере, одного первого клиента видеоконференцсвязи и, по меньшей мере, одного второго клиента видеоконференцсвязи, при этом, по меньшей мере, одна характеристика содержит, по меньшей мере, одно из следующего: доступная полоса пропускания, максимальное разрешение кодирования и максимальное разрешение декодирования. Множество видеопотоков может содержать, по меньшей мере, один первый видеопоток и, по меньшей мере, один второй видеопоток, при этом, по меньшей мере, один первый видеопоток содержит видеопоток более высокого разрешения, чем, по меньшей мере, один второй видеопоток.

Система может быть выполнена с возможностью определять то, может или нет, по меньшей мере, один второй клиент видеоконференцсвязи декодировать, по меньшей мере, один первый видеопоток. В соответствии с вариантами осуществления изобретения система может быть выполнена с возможностью определять то, имеет или нет, по меньшей мере, один второй клиент видеоконференцсвязи достаточную доступную полосу пропускания для того, чтобы принимать, по меньшей мере, один первый видеопоток без пропуска, по меньшей мере, одного B-кадра, по меньшей мере, из одного первого видеопотока.

Фиг.6 является блок-схемой системы, включающей в себя вычислительное устройство 600. В соответствии с вариантом осуществления изобретения вышеуказанное запоминающее устройство и процессор могут быть реализованы в вычислительном устройстве, к примеру вычислительном устройстве 600 по фиг.6. Любая подходящая комбинация аппаратных средств, программного обеспечения или микропрограммного обеспечения может использоваться для того, чтобы реализовывать запоминающее устройство и процессор. Например, запоминающее устройство и процессор могут быть реализованы с помощью вычислительного устройства 600 или любого из других вычислительных устройств 618 в комбинации с вычислительным устройством 600. Вышеуказанная система, устройство и процессоры являются примерами, и другие системы, устройства и процессоры могут содержать вышеуказанное запоминающее устройство и процессор в соответствии с вариантами осуществления изобретения. Кроме того, вычислительное устройство 600 может содержать операционное окружение для системы 100, как описано выше. Система 100 может работать в других окружениях и не ограничена вычислительным устройством 600.

Со ссылкой на фиг.6 система в соответствии с вариантом осуществления изобретения может включать в себя вычислительное устройство, такое как вычислительное устройство 600. В базовой конфигурации вычислительное устройство 600 может включать в себя, по меньшей мере, один процессор 602 и системное запоминающее устройство 604. В зависимости от конфигурации и типа вычислительного устройства системное запоминающее устройство 604 может содержать, но не только, энергозависимое (например, оперативное запоминающее устройство (RAM)), энергонезависимое (например, постоянное запоминающее устройство (ROM)), запоминающее устройство, флэш-память или любую их комбинацию. Системное запоминающее устройство 604 может включать в себя операционную систему 605, один или более программных модулей 606 и может включать в себя программу 607 измерения полосы пропускания. Операционная система 605, например, может быть подходящей для управления работой вычислительного устройства 600. В одном варианте осуществления программные модули 606 могут включать в себя, например, модуль анализа данных и/или сервер 620 видеоконференцсвязи. Кроме того, варианты осуществления изобретения могут осуществляться на практике вместе с графической библиотекой, другими операционными системами или любой другой прикладной программой и не ограничены конкретными приложениями или системами. Эта базовая конфигурация проиллюстрирована на фиг.6 посредством компонентов с пунктирной линией 608.

Вычислительное устройство 600 может иметь дополнительные признаки или функциональность. Например, вычислительное устройство 600 также может включать в себя дополнительные устройства хранения данных (съемные и/или стационарные), такие как, например, магнитные диски, оптические диски или лента. Эти дополнительные устройства хранения проиллюстрированы на фиг.6 посредством съемного устройства 609 хранения данных и стационарного устройства 610 хранения данных. Компьютерные носители хранения могут включать в себя энергозависимые и энергонезависимые, съемные и стационарные носители, реализованные любым способом или технологией хранения информации, такой как машиночитаемые инструкции, структуры данных, программные модули или другие данные. Системное запоминающее устройство 604, съемное устройство 609 хранения данных и стационарное устройство 610 хранения данных являются примерами компьютерных носителей хранения данных (т.е. запоминающего устройства). Компьютерные носители хранения данных могут включать в себя, но не только, RAM, ROM, электрически стираемое постоянное запоминающее устройство (EEPROM), флэш-память или другую технологию памяти, CD-ROM, универсальные цифровые диски (DVD) или другие оптические устройства хранения, магнитные кассеты, магнитную ленту, устройства хранения на магнитных дисках или другие магнитные устройства хранения, либо любой другой носитель, который может быть использован для того, чтобы хранить требуемую информацию, и к которому может осуществляться доступ посредством вычислительного устройства 600. Любые такие компьютерные носители хранения данных могут быть частью устройства 600. Вычислительное устройство 600 также может иметь устройство(а) 612 ввода, такое как клавиатура, мышь, перо, устройство звукового ввода, устройство сенсорного ввода и т.д. Устройство(а) 614 вывода, такое как дисплей, динамики, принтер и т.д., также может быть включено в состав вычислительного устройства. Вышеуказанные устройства являются примерами и могут использоваться другие устройства.

Вычислительное устройство 600 также может содержать соединение 616 связи, которое может давать возможность устройству 600 обмениваться данными с другими вычислительными устройствами 618, к примеру, по сети в распределенном вычислительном окружении, например в сети intranet или в Интернете. Соединение 616 связи является одним примером среды связи. Среды связи типично могут быть осуществлены посредством машиночитаемых инструкций, структур данных, программных модулей или других данных в модулированном сигнале данных, таком как несущая или другой транспортный механизм, и включают в себя любые среды для доставки информации. Термин "модулированный сигнал данных" может описывать сигнал, который имеет одну или более характеристик, заданных или изменяемых таким образом, чтобы кодировать информацию в сигнале. В качестве примера, а не ограничения, среды связи могут включать в себя проводные среды, такие как проводная сеть или проводное соединение, и беспроводные среды, такие как акустические, радиочастотные (RF), инфракрасные и другие беспроводные среды. Термин "машиночитаемые носители" при использовании в данном документе может включать в себя как носители хранения, так и среды связи.

Как указано выше, определенное число программных модулей и файлов данных может сохраняться в системном запоминающем устройстве 604, в том числе операционная система 605. При выполнении на процессоре 602 программные модули 606 (например, сервер 620 видеоконференцсвязи) могут выполнять процессы, включающие в себя, например, один или более из этапов способа 400, как описано выше. Вышеуказанный процесс является примером, и процессор 602 может выполнять другие процессы. Другие программные модули, которые могут использоваться в соответствии с вариантами осуществления настоящего изобретения, могут включать в себя приложения для управления электронной почтой и контактами, приложения обработки текстов, приложения электронных таблиц, приложения управления базами данных, приложения управления слайд-презентациями, программы построения чертежей или автоматизированного проектирования и т.д.

В общем, в соответствии с вариантами осуществления изобретения, программные модули могут включать в себя процедуры, программы, компоненты, структуры данных и другие типы структур, которые могут выполнять конкретные задачи или которые могут реализовывать конкретные абстрактные типы данных. Кроме того, варианты осуществления изобретения могут осуществляться на практике с другими конфигурациями компьютерных систем, включающими в себя карманные устройства, многопроцессорные системы, микропроцессорные или программируемые бытовые электронные приборы, мини-компьютеры, мэйнфреймы и т.п. Варианты осуществления изобретения также могут осуществляться на практике в распределенных вычислительных окружениях, в которых задачи выполняются посредством удаленных устройств обработки, которые связаны через сеть связи. В распределенном вычислительном окружении программные модули могут размещаться как на локальных, так и на удаленных устройствах хранения данных.

Кроме того, варианты осуществления изобретения могут осуществляться на практике в электрической схеме, содержащей дискретные электронные приборы, в объединенных в одном корпусе или интегрированных микросхемах, содержащих логические вентили, в схеме с применением микропроцессора или на однокристальной схеме, содержащей электронные элементы или микропроцессоры. Варианты осуществления изобретения также могут осуществляться на практике с использованием других технологий, допускающих выполнение логических операций, таких как, например, И, ИЛИ и НЕТ, в том числе, но не только, с использованием механических, оптических, струйных и квантовых технологий. Помимо этого варианты осуществления изобретения могут осуществляться на практике в рамках компьютера общего назначения или в любых других схемах или системах.

Варианты осуществления изобретения, например, могут быть реализованы как компьютерный процесс (способ), вычислительная система или как изделие, такое как компьютерный программный продукт или машиночитаемые носители. Компьютерный программный продукт может быть компьютерным носителем хранения данных, считываемым посредством вычислительной системы, и кодировать компьютерную программу инструкций для выполнения компьютерного процесса. Компьютерный программный продукт также может быть распространяемым сигналом на несущей, считываемым посредством вычислительной системы, и кодировать компьютерную программу инструкций для выполнения компьютерного процесса. Соответственно, настоящее изобретение может быть осуществлено в аппаратных средствах и/или программном обеспечении (включающем в себя микропрограммное обеспечение, резидентное программное обеспечение, микрокод и т.д.). Другими словами, варианты осуществления настоящего изобретения могут принимать форму компьютерного программного продукта на машиноиспользуемом или машиночитаемом носителе хранения данных, имеющем машиноиспользуемый или машиночитаемый программный код, осуществляемый на носителе для использования посредством или в связи с системой выполнения инструкций. Машиноиспользуемый или машиночитаемый носитель может быть любым носителем, который может содержать, сохранять, передавать, распространять или транспортировать программу для использования посредством или в связи с системой или устройством выполнения инструкций.

Машиноиспользуемый или машиночитаемый носитель может быть, например, но не только, электронной, магнитной, оптической, электромагнитной, инфракрасной или полупроводниковой системой, устройством или средой распространения. В качестве более конкретных примеров машиночитаемых носителей (неполный список), машиночитаемый носитель может включать в себя следующее: электрическое соединение, имеющее один или более проводов, портативную компьютерную дискету, оперативное запоминающее устройство (RAM), постоянное запоминающее устройство (ROM), стираемое программируемое постоянное запоминающее устройство (EPROM или флэш-память), оптоволокно и портативный неперезаписываемый компакт-диск (CD-ROM). Отметим, что машиноиспользуемый или машиночитаемый носитель может быть даже бумажным или другим подходящим носителем, на котором напечатана программа, поскольку программа может быть электронно захвачена, например, через оптическое сканирование бумажного или другого носителя, затем скомпилирована, интерпретирована или иначе обработана соответствующим образом при необходимости, и затем сохранена в компьютерном запоминающем устройстве.

Варианты осуществления настоящего изобретения, например, описываются выше в отношении блок-схем и/или функциональных иллюстраций способов, систем и компьютерных программных продуктов согласно вариантам осуществления изобретения. Функции/действия, отмеченные на блоках, могут осуществляться не в такой последовательности, как показано на любой блок-схеме последовательности операций способа. Например, два блока, показанные друг за другом, фактически могут выполняться практически одновременно, или блоки иногда могут выполняться в обратном порядке, в зависимости от включенной функциональности/действий.

Хотя конкретные варианты осуществления изобретения описаны, другие варианты осуществления могут существовать. Кроме того, хотя варианты осуществления настоящего изобретения описаны как ассоциированные с данными, сохраненными в запоминающем устройстве и на других носителях хранения данных, данные также могут сохраняться или считываться из других типов машиночитаемых носителей, таких как внешние устройства хранения данных, к примеру жесткие диски, гибкие диски или CD-ROM, несущая из Интернета или другие формы RAM или ROM. Дополнительно, этапы раскрытых способов могут модифицироваться любым способом, в том числе посредством переупорядочения этапов и/или посредством вставки или посредством удаления этапов без отступления от изобретения.

Все права, в том числе авторские права на код, включенный в данный документ, принадлежат и являются собственностью Заявителя. Заявитель сохраняет в силе все права на код, включенный в данный документ, и выдает разрешение воспроизводить материал только в связи с воспроизведением выданного патента, но не для каких бы то ни было других целей.

Хотя подробное описание включает в себя примеры, объем изобретения определяется прилагаемой формулой изобретения. Кроме того, хотя подробное описание приведено на языке, конкретном для структурных признаков и/или технологических этапов, формула изобретения не ограничивается признаками или этапами, описанными выше. Вместо этого характерные признаки и этапы, описанные выше, раскрываются в качестве примера вариантов осуществления изобретения.

1. Способ предоставления данных во множество клиентов, содержащий этапы, на которых:
принимают множество потоков данных, каждый из которых имеет отличающееся от других разрешение видео, от каждого из по меньшей мере двух из множества клиентов;
анализируют по меньшей мере одну характеристику, ассоциированную с по меньшей мере одним из множества клиентов;
выбирают по меньшей мере один из множества потоков данных от каждого из упомянутых по меньшей мере двух из множества клиентов, чтобы отправить в упомянутый по меньшей мере один из множества клиентов, на основе проанализированной по меньшей мере одной характеристики; и
после выбора упомянутого меньшей мере одного из множества потоков данных отправляют выбранный по меньшей мере один из множества потоков данных в упомянутый по меньшей мере один из множества клиентов.

2. Способ по п.1, в котором упомянутое множество потоков данных содержит множество потоков данных видеоконференцсвязи.

3. Способ по п.1, в котором каждый из упомянутого множества потоков данных ассоциирован с по меньшей мере одним из упомянутого множества клиентов.

4. Способ по п.1, в котором при анализе по меньшей мере одной характеристики, ассоциированной с по меньшей мере одним из множества клиентов, анализируют полосу пропускания по меньшей мере одной среды связи, ассоциированной с по меньшей мере одним из множества клиентов.

5. Способ по п.4, в котором упомянутая по меньшей мере одна среда связи, ассоциированная с по меньшей мере одним из множества клиентов, содержит Интернет.

6. Способ по п.4, в котором упомянутая по меньшей мере одна среда связи, ассоциированная с по меньшей мере одним из множества клиентов, содержит сеть intranet.

7. Способ по п.1, в котором при анализе по меньшей мере одной характеристики, ассоциированной с по меньшей мере одним из множества клиентов, анализируют характеристику обработки данных, ассоциированную с по меньшей мере одним из множества клиентов.

8. Способ по п.7, в котором при анализе по меньшей мере одной характеристики, ассоциированной с по меньшей мере одним из множества клиентов, определяют по меньшей мере одну характеристику декодирования видео.

9. Способ по п.1, в котором по меньшей мере один первый клиент из упомянутого множества клиентов ассоциирован с множеством потоков данных, при этом по меньшей мере один первый поток данных из упомянутого множества потоков данных содержит версию более высокого разрешения по меньшей мере одного второго потока данных из упомянутого множества потоков данных.

10. Способ по п.9, в котором при анализе по меньшей мере одной характеристики, ассоциированной с по меньшей мере одним из множества клиентов, определяют, способен или нет по меньшей мере один второй клиент из упомянутого множества клиентов декодировать упомянутый по меньшей мере один первый поток данных.

11. Способ по п.9, в котором при анализе по меньшей мере одной характеристики, ассоциированной с по меньшей мере одним из множества клиентов, определяют, имеет или нет по меньшей мере один второй клиент из упомянутого множества клиентов достаточную полосу пропускания для того, чтобы принимать упомянутый по меньшей мере один первый поток данных.

12. Машиночитаемый носитель, на котором сохранен набор инструкций, которыми при их исполнении реализуется способ предоставления видеопотоков во множество клиентов, при этом способ, реализуемый посредством набора инструкций, содержит этапы, на которых:
принимают по меньшей мере один видеопоток от каждого из множества клиентов и более чем один видеопоток с разными разрешениями от по меньшей мере одного из множества клиентов;
собирают данные характеристик видеоконференции, ассоциированные с каждым из множества клиентов;
для каждого из множества клиентов выбирают по меньшей мере один видеопоток, чтобы отправить в каждый из множества клиентов, согласно собранным данным характеристик видеоконференции, ассоциированным с каждым из множества клиентов; и
после выбора упомянутого меньшей мере одного видеопотока отправляют выбранный по меньшей мере один видеопоток в каждый из множества клиентов.

13. Машиночитаемый носитель по п.12, в котором способ дополнительно содержит этап, на котором принимают по меньшей мере один первый видеопоток и по меньшей мере один второй видеопоток от по меньшей мере одного из упомянутого множества клиентов, причем этот по меньшей мере один первый видеопоток содержит версию более высокого разрешения этого по меньшей мере одного второго видеопотока.

14. Машиночитаемый носитель по п.13, при этом упомянутый по меньшей мере один первый видеопоток содержит видеопоток, закодированный с разрешением, содержащим по меньшей мере одно из 1280×720 и 640×480, причем упомянутый по меньшей мере один второй видеопоток содержит видеопоток, закодированный с разрешением 320×240.

15. Машиночитаемый носитель по п.12, в котором способ дополнительно содержит этапы, на которых:
определяют, имеет или нет по меньшей мере один из множества клиентов достаточную полосу пропускания для того, чтобы принимать все кадры, содержащие по меньшей мере один первый видеопоток; и
в ответ на определение того, что упомянутый по меньшей мере один из множества клиентов имеет достаточную полосу пропускания для того, чтобы принимать все кадры, содержащие упомянутый по меньшей мере один видеопоток, отправляют упомянутый по меньшей мере один видеопоток в упомянутый по меньшей мере один из множества клиентов неизмененным.

16. Машиночитаемый носитель по п.15, в котором способ дополнительно содержит этап, на котором, в ответ на определение того, что упомянутый по меньшей мере один из множества клиентов не имеет достаточной полосы пропускания, чтобы принимать все кадры, содержащие упомянутый по меньшей мере один первый видеопоток, отправляют по меньшей мере один второй видеопоток в упомянутый по меньшей мере один из множества клиентов, причем этот по меньшей мере один второй видеопоток содержит версию более низкого разрешения упомянутого по меньшей мере одного первого видеопотока.

17. Машиночитаемый носитель по п.15, в котором способ дополнительно содержит этап, на котором, в ответ на определение того, что упомянутый по меньшей мере один из множества клиентов не имеет достаточной полосы пропускания, чтобы принимать все кадры, содержащие упомянутый по меньшей мере один первый видеопоток, удаляют по меньшей мере один кадр в секунду из видеопотока до отправки упомянутого по меньшей мере одного первого видеопотока в упомянутый по меньшей мере один из множества клиентов.

18. Машиночитаемый носитель по п.12, в котором способ дополнительно содержит этапы, на которых:
определяют, для каждого из упомянутого множества клиентов, по меньшей мере один применяемый алгоритм декодирования видео;
определяют, для каждого из упомянутого множества клиентов, по меньшей мере один алгоритм кодирования видео, ассоциированный с каждым из множества клиентов; и
инструктируют по меньшей мере одному из упомянутого множества клиентов кодировать по меньшей мере один видеопоток для по меньшей мере одного алгоритма кодирования видео, ассоциированного с каждым из множества клиентов, который определяется как применяемый по меньшей мере одним из множества клиентов.

19. Система для обеспечения согласования скорости в видеоконференции, содержащая:
запоминающее устройство;
устройство сетевого соединения; и
процессор, связанный с запоминающим устройством, при этом процессор выполнен с возможностью:
регистрировать клиенты видеоконференцсвязи, содержащие первый клиент видеоконференцсвязи, второй клиент видеоконференцсвязи и третий клиент видеоконференцсвязи, функционально подключенные к системе через устройство сетевого соединения, причем выполнение с возможностью регистрировать упомянутые клиенты видеоконференцсвязи содержит выполнение с возможностью устанавливать по меньшей мере одну характеристику для каждого из упомянутых клиентов видеоконференцсвязи, причем эта по меньшей мере одна характеристика содержит по меньшей мере одно из доступной полосы пропускания, максимального разрешения кодирования и максимального разрешения декодирования;
принимать множество видеопотоков от по меньшей мере двух из упомянутых клиентов видеоконференцсвязи, причем данное множество видеопотоков содержит по меньшей мере один первый видеопоток и по меньшей мере один второй видеопоток, причем этот по меньшей мере один первый видеопоток содержит видеопоток более высокого разрешения, чем этот по меньшей мере один второй видеопоток;
определять, на основе установленной по меньшей мере одной характеристики для упомянутого по меньшей мере одного из клиентов видеоконференцсвязи, то, может или нет этот по меньшей мере один клиент видеоконференцсвязи принимать упомянутый по меньшей мере один первый видеопоток, причем выполнение с возможностью определять то, что по меньшей мере один клиент видеоконференцсвязи может принимать по меньшей мере один первый видеопоток, содержит выполнение с возможностью определять по меньшей мере одно из следующего: может или нет упомянутый по меньшей мере один клиент видеоконференцсвязи декодировать упомянутый по меньшей мере один первый видеопоток и имеет или нет упомянутый по меньшей мере один клиент видеоконференцсвязи достаточную доступную полосу пропускания для того, чтобы принимать упомянутый по меньшей мере один первый видеопоток без пропуска по меньшей мере одного В-кадра из этого по меньшей мере одного первого видеопотока; и
в ответ на определение того, что упомянутый по меньшей мере один клиент видеоконференцсвязи может принимать упомянутый по меньшей мере один первый видеопоток, отправлять упомянутый по меньшей мере один первый видеопоток в упомянутый по меньшей мере один клиент видеоконференцсвязи без декодирования этого по меньшей мере одного первого видеопотока посредством системы.



 

Похожие патенты:

Изобретение относится к мультимедийной конференции в сети связи для совместного использования различных типов мультимедийного содержимого (контента) в течение конференции в реальном времени.

Изобретение относится к cистеме мультимедийной конференц-связи, которая отображает различные типы мультимедийного содержания с использованием различных окон или представлений графического пользовательского интерфейса.

Изобретение относится к видеоконференциям и, в частности, к системе дистанционного присутствия. Техническим результатом является улучшение системы дистанционного панорамного присутствия в части представления глубины, отображения без стыков и контакта глаз.

Изобретение относится к области технологий связи, а именно к способу, устройству и системе для установления видеосоединения и переключения видео. Технический результат заключается в обеспечении выполнения требования пользователя, чтобы видео его стороны не было видно на противоположной стороне, путем замены видео посредством вещательной передачи медиасервером в терминалы заранее заданного видеофайла при видеосоединении.

Изобретение относится к области мобильной коммуникации, и в частности, к системе осуществления видеовызова. Техническим результатом является обеспечение видеовызова, так чтобы вызывающие и вызываемые пользователи могли изменить видимый другой стороной или самому/самой видеоконтент, которые предоставляют возможность активно управлять видеоконтентами для вызывающих и вызываемых пользователей услуги видеовызова и улучшают интерактивную возможность пользователей во время видеовызова.

Изобретение относится к области техники связи и, в частности, к способу индикации состояния прохождения вызова, к устройству управления конференц-связью и к системе конференц-связи.

Изобретение относится к системам мультимедийной конференц-связи, позволяющим множественным участникам связываться и совместно использовать различные типы медиа (аудиовизуального) контента при совместной работе и встрече в реальном времени по сети.

Изобретение относится к области обеспечения информационной безопасности, а конкретно к средству управления сеансами в системах защищенной видеоконференцсвязи, построенных с использованием сетей шифрованной связи, с целью предотвращения несанкционированного доступа пользователей к сервисам системы защищенной видеоконференцсвязи посредством распределенного контроля устанавливаемых сетевых соединений.

Изобретение относится к области связи, и в частности к системе для реализации многоязычной конференцсвязи. .

Изобретение относится к устройству и способу обработки информации при передаче видеоизображений (видеосвязь или видеочат) по сети связи ADSL (Асимметричная цифровая абонентская линия). Техническим результатом является улучшение качества видеоизображений и сохранение реалистичных ощущений даже на полосе частот восходящей линии связи. Указанный технический результат достигается тем, что клиентское устройство 11А, являющееся передающей стороной, выделяет из полученного изображения только изображение, являющееся преобладающим элементом коммуникации, в качестве первичных данных 21А. Клиентское устройство 11В, являющееся принимающей стороной, принимает от потокового сервера 12А через сеть 13 графические данные текстурного изображения, являющегося альтернативой фону полученного изображения, в качестве вторичных данных 22А. Принятые первичные данные 21А и вторичные данные 22В синтезируются, и комбинированное изображение отображается на мониторе 34. 2 н. и 2 з.п. ф-лы, 12 ил.

Изобретение относится к области конференц-связи, а именно к передающему терминалу, способному передавать и принимать данные отображения экрана, совместно используемые с другим передающим терминалом. Техническим результатом является ускорение обработки передачи данных материала в системе конференций за счет снижения рабочей нагрузки на централизованный сервер видеоконференций. Для этого терминал передачи, передающий данные изображения другому терминалу передачи через предопределенное ретрансляционное устройство, содержит блок хранения информации о ретрансляционном устройстве, на которое терминал передачи передает данные изображения, и блок приема данных отображения от внешнего устройства ввода, подсоединенного к терминалу передачи. Причем данные отображения отображаются на внешнем устройстве ввода и являются данными отображения, совместно используемыми с другим терминалом передачи. Кроме того, терминал передачи содержит передающий блок для передачи данных отображения, принятых блоком приема, на ретрансляционное устройство, указанное информацией ретрансляционного устройства, сохраненной в блоке хранения. 3 н. и 1 з.п. ф-лы, 31 ил.

Изобретение относится к телемедицине и области медицинской связи. Техническим результатом является обеспечение иерархического управления для доступа к пациенту. Система интерактивной связи содержит множество систем (1250) видео связи внутри помещения, причем каждая система видео связи внутри помещения включает в себя видео монитор (430), видео камеру (440), микрофон (460) и аудио громкоговоритель (470), которые ассоциируются с пациентом (350); блок (110) выбора видео, который обеспечивает подачу, видео развлечения и видео связи в каждую из систем внутри помещения; и блок (160) управления иерархическим доступом, который разрешает конфликты между видео развлечением и видео связью на основании определенной иерархии (200) доступа, которая представляет собой состояние пациента, регулируемое в соответствии с основными показателями состояния организма, измеренными с помощью физиологического монитора (450). 2 н. и 13 з.п. ф-лы, 12 ил.

Изобретение относится к области технологий связи, а в частности к способу управления конференц-связью и относящимся к нему устройству и системе. Технический результат заключается в снижении нагрузки на полосу пропускания сети. Технический результат достигается за счет способа управления конференц-связью, который включает в себя: получение запроса на право на выступление от первой площадки, где запрос на право на выступление от первой площадки содержит идентификатор первого узла и идентификатор первой площадки, узел, соответствующий идентификатору первого узла, включает в себя множество площадок и принадлежит первой конференции, а идентификатор первой площадки представляет собой идентификатор площадки, запрашивающей право на выступление на узле, соответствующем идентификатору первого узла; и в случае, если принимается решение предоставить слово площадке, запрашивающей право на выступление и соответствующей идентификатору первой площадки, трансляцию видеоизображения выступления, соответствующего площадке, запрашивающей право на выступление, на терминал, по меньшей мере, одного из узлов, за исключением узла, соответствующего идентификатору первого узла в первой конференции. 5 н. и 11 з.п. ф-лы, 13 ил.

Изобретение относится к средствам конференц-связи. Техническим результатом является обеспечение возможности совместного использования изображений на множестве рабочих мест без увеличения нагрузки по обработке на каждом рабочем месте. Устройство содержит блок хранения вычерченных на рабочих местах изображений, блок синтеза изображений, таким образом, чтобы они не включали в себя изображения, вычерченные в местах назначения передачи, блок передачи синтезированных изображений на рабочие места, блок определения способа синтеза изображений на основе количества рабочих мест и качества изображения. 3 н. и 9 з.п. ф-лы, 8 ил.

Изобретение относится к области видеоконференций, в частности, к формированию многооконных изображений высокой четкости. Техническим результатом является формирование многооконных изображений высокой четкости в многоточечной видеоконференции без необходимости значительного улучшения возможностей кодека видеосигналов. Указанный технический результат достигается тем, что способ включает следующие шаги: вычисление блоком многоадресного управления (MCU) формата кодового потока видео высокой четкости согласно управляющей информации видеоконференции и передачу набора возможностей, содержащего формат кодового потока видео высокой четкости, в выбранный терминал; кодирование выбранным терминалом изображения видео высокой четкости на основании формата кодового потока видео высокой четкости, указанного в наборе возможностей, и передачу кодового потока кодированного видео высокой четкости в блок MCU; включение блоком MCU принимаемого изображения кодового потока видео высокой четкости в многооконное изображение согласно управляющей информации видеоконференции, формирование кодового потока многооконного видеоизображения высокой четкости и передача его в терминалы, принимающие участие в конференции. 5 н. и 4 з.п. ф-лы, 5 ил.

Изобретение относится к студии и способу проведения видеосовещаний в натуральную величину. Техническим результатом является устранение "неправильного эффекта зрительного контакта" и проведение видеосовещаний таким образом, что воспринимаемый размер объекта относится к кажущемуся расстоянию до наблюдателя независимо от физического расстояния. Предложена студия для проведения видеосовещаний, содержащая: пространство (310) локального участника совещания и локальный приемопередатчик (305) для проведения видеосовещаний в натуральную величину. Приемопередатчик (305) содержит оптический входной блок (330) и оптический выходной блок (340) для передачи непрерывного дуплексного изображения посредством дуплексной области (350) экрана (360), которая выполнена для непрерывной передачи в пространство (310) локального участника совещания изображения пространства (210) удаленного участника совещания, содержащегося в удаленной студии (200), и для отражения изображения пространства (310) локального участника совещания на оптический сходной блок (330) с обеспечением визуализации изображения целого пространства (310) локального участника совещания в масштабе и без искажений в пространство (210) удаленного участника совещания; с обеспечением таким образом возможности локальной стороне, содержащей участника (70) совещания, устанавливать зрительный контакт и регистрировать перемещения тел удаленной стороны, содержащей участника (80) совещания. 2 н. и 9 з.п. ф-лы, 12 ил.

Изобретение относится к области систем передачи данных. Техническим результатом является снижение нагрузки на конкретный ретрансляционный сервер во время передачи изображений и аудио. Система (1) передачи передает и принимает базовые данные, которые необходимы для воспроизведения изображения и аудио, и расширенные данные, которые используются для повышения качества изображения и аудио, через сеть (2) связи между терминалами (10) передачи. Система (1) передачи включает в себя: систему (40) ретрансляции базовых данных, которая включает в себя: множество модулей (430) ретрансляции базовых данных для ретрансляции базовых данных, передаваемых с исходного терминала передачи из числа терминалов (10) передачи на целевой терминал передачи из числа терминалов (10) передачи; и модуль выбора, который выбирает один модуль (430) ретрансляции базовых данных из числа модулей (430) ретрансляции базовых данных для каждой связи между терминалами (10) передачи; и систему ретрансляции расширенных данных, которая включает в себя: модуль (36) ретрансляции расширенных данных для ретрансляции расширенных данных, передаваемых с исходного терминала передачи на целевой терминал передачи. 2 н. и 8 з.п. ф-лы, 29 ил.

Изобретение относится к области информационных технологий, а именно к техническим средствам, обеспечивающим проведение совещаний участников, находящихся на удалении друг от друга, с использованием видеоконференц-связи. Техническим результатом является повышение эффективности управления процессом проведения совещаний за счет того, что все участники соответствуют элементам экранной раскладки, имеющим разную степень значимости. Предложен способ проведения виртуальных совещаний. Способ предусматривает взаимодействие множества АРМ участников, а также, по меньшей мере, одного АРМ компетентного спикера, в котором управление проведением совещания выполняется с АРМ компетентного спикера, путем воздействия на клавиатуру. При этом формируют экранную раскладку с, по меньшей мере, двумя подмножествами элементов пользовательского интерфейса, отвечающих за вывод изображений участников и различающихся по устанавливаемой и регулируемой степени значимости на элементы с большей степенью значимости и на элементы с меньшей степенью значимости. 6 н. и 14 з.п. ф-лы, 3 ил.

Изобретение относится к сетевым технологиям связи и, в частности, к способу медийного взаимодействия, устройству и системе осуществления конференц-связи в многопоточном режиме. Техническим результатом является создание способа медийного взаимодействия, устройства и системы для мультипотоковой конференции с тем, чтобы решить техническую задачу, вызванную использованием ролевого способа определения, применяемого в предшествующем уровне техники. Указанный технический результат достигается тем, что способ включает в себя этапы: передают медийное рекламное сообщение, несущее информацию по меньшей мере о двух элементах медиаданных; принимают сообщение о выборе медиаинформации, несущее информацию об элементах медиаданных, выбранных вторым медиаобъектом; и определяют соответствующий элемент медиаданных в соответствии с информацией об элементе медиаданных, выбранной вторым медиаобъектом, и устанавливают канал передачи медиаинформации со вторым медиаобъектом, для передачи соответствующего элемента медиаданных на второй медиаобъект по каналу передачи информации. 4 н. и 20 з.п. ф-лы, 10 ил.
Наверх