передача изменяющегося визуального контента
Классы МПК: | H04N21/2343 включающая операции переформатирования видеосигналов для распределения или согласования с запросами конечных пользователей или требованиями устройств конечных H04N21/262 график распределения контента или дополнительных данных, например посылка дополнительных данных в периоды неполной нагрузки, обновление модулей программного обеспечения, вычисление частоты карусельной передачи, задержка передачи видеопотока или формирование игровых списков G09G5/14 отображение нескольких полей индикации |
Автор(ы): | МАХАДЖАН Раджниш (US), СТОЯНОВ Владимир (US), ДВОРАК Кейси (US) |
Патентообладатель(и): | МАЙКРОСОФТ КОРПОРЕЙШН (US) |
Приоритеты: |
подача заявки:
2008-11-26 публикация патента:
10.02.2014 |
Изобретение относится к передаче изменяющегося видеоконтента в сеансе терминального сервера. Техническим результатом является повышение эффективности передачи и снижение объема данных, формирующих видеоконтент. Указанный технический результат достигается тем, что предложена технология для представления изменяющегося визуального контента, включающего в себя видео, анимацию и так далее, в режиме наложения. Изменяющийся визуальный контент, включенный в визуальное представление, может быть идентифицирован среди прочих визуальных элементов, включенных в визуальное представление. Изменяющимся визуальным контентом можно управлять на основе доступных ресурсов, связанных с представлением изменяющегося визуального контента в режиме наложения для клиента. 3 н. и 17 з.п. ф-лы, 4 ил.
Формула изобретения
1. Реализуемый в компьютерной системе способ передачи визуального контента на удаленный клиент, содержащий этапы, на которых:
выполняют идентификацию визуального контента, причем визуальный контент содержит неизменяющийся визуальный контент и изменяющийся визуальный контент, при этом при идентификации отличают изменяющийся визуальный контент от неизменяющегося визуального контента; осуществляют оценку доступных ресурсов, содержащую две или более из: оценки ресурсов, доступных на сервере, оценки ресурсов, доступных в сети, соединяющей с возможностью осуществления связи сервер и удаленный клиент, и оценки ресурсов, доступных на удаленном клиенте; выполняют управление в отношении изменяющего визуального контента на основе, по меньшей мере частично, оценки доступных ресурсов; передают неизменяющийся визуальный контент в первом формате на удаленный клиент; и передают изменяющийся визуальный контент, в отношении которого выполнено управление, во втором формате на удаленный клиент.
2. Способ по п.1, в котором изменяющийся визуальный контент идентифицируют на основе по меньшей мере одного из частоты обновления, соотношения геометрических размеров, идентификации окна и имени процесса.
3. Способ по п.1, в котором изменяющийся визуальный контент идентифицируют на основе комбинации двух или более из частоты обновления, соотношения геометрических размеров, идентификации окна и имени процесса.
4. Способ по п.1, дополнительно содержащий: идентификацию одной или более временных меток в изменяющемся визуальном контенте; согласование изменяющегося визуального контента с соответствующим аудиоконтентом на основе, по меньшей мере частично, этих одной или более временных меток; и наложение изменяющегося визуального контента на соответствующий аудиоконтент.
5. Способ по п.1, в котором изменяющийся визуальный контент является, по меньшей мере, одним из анимации, видеоконтента и переходов.
6. Способ по п.1, в котором передача изменяющегося визуального контента, в отношении которого выполнено управление, дополнительно содержит передачу информации управления для воссоздания изменяющегося визуального контента в качестве наложения на неизменяющийся визуальный контент в удаленном клиенте, причем информация управления содержит по меньшей мере одно из данных обнаружения дочернего видеоокна или данных отслеживания геометрии.
7. Способ по п.1, в котором управление в отношении изменяющегося визуального контента содержит по меньшей мере одно из сжатия данных, формирующих изменяющийся визуальный контент, пропуска обновлений экрана и пропуска видеокадров.
8. Способ по п.1, в котором изменяющийся визуальный контент является несжатым до управления.
9. Способ по п.1, в котором неизменяющийся визуальный контент содержит визуальный контент, который не изменяется, и визуальный контент, который изменяется с незначительной скоростью.
10. Машиночитаемый носитель информации, содержащий машиноисполняемые инструкции, которые при их исполнении процессором предписывают компьютерной системе осуществлять способ передачи визуального контента на удаленный клиент, причем способ содержит:
идентификацию визуального контента, причем визуальный контент содержит неизменяющийся визуальный контент и изменяющийся визуальный контент, при этом при идентификации отличают изменяющийся визуальный контент от неизменяющегося визуального контента, причем изменяющийся визуальный контент является несжатым; оценку доступных ресурсов, содержащую две или более из: оценки ресурсов, доступных на сервере, оценки ресурсов, доступных в сети, соединяющей с возможностью осуществления связи сервер и удаленный клиент, и оценки ресурсов, доступных на удаленном клиенте; управление в отношении изменяющего визуального контента на основе, по меньшей мере частично, оценки доступных ресурсов; передачу неизменяющегося визуального контента в первом формате на удаленный клиент; и передачу изменяющегося визуального контента, в отношении которого выполнено управление, во втором формате на удаленный клиент.
11. Машиночитаемый носитель информации по п.10, причем изменяющийся визуальный контент идентифицируют на основе технологий эвристического обучения.
12. Машиночитаемый носитель информации по п.10, причем растровое отображение изменяющегося визуального контента изменяется с заранее определенной скоростью обновления.
13. Машиночитаемый носитель информации по п.10, причем управление изменяющимся визуальным контентом включает в себя по меньшей мере одно из сжатия данных, формирующих изменяющийся визуальный контент, пропуска обновлений экрана и пропуска видеокадров.
14. Машиночитаемый носитель информации по п.10, причем изменяющийся визуальный контент идентифицируют на основе по меньшей мере одного из скорости изменения в сравнении с неизменяющимся визуальным контентом и заранее определенной частоты кадров.
15. Машиночитаемый носитель информации по п.10, причем управление в отношении изменяющегося визуального контента основано по меньшей мере на одном из доступной полосы пропускания, доступной возможности обработки сервера, доступной возможности обработки клиента, доступных декодеров или доступных кодировщиков.
16. Компьютерная система, содержащая:
по меньшей мере один процессор; и по меньшей мере одну память, соединенную с возможностью обмена данными с по меньшей мере одним процессором и содержащую машиночитаемые инструкции, которые при их исполнении по меньшей мере одним процессором предписывают компьютерной системе осуществлять способ передачи визуального контента на удаленный клиент, причем способ содержит: идентификацию визуального контента, причем визуальный контент содержит неизменяющийся визуальный контент и изменяющийся визуальный контент, при этом при идентификации отличают изменяющийся визуальный контент от неизменяющегося визуального контента; оценку доступных ресурсов, содержащую две или более из: оценки ресурсов, доступных на сервере, оценки ресурсов, доступных в сети, соединяющей с возможностью осуществления связи сервер и удаленный клиент, и оценки ресурсов, доступных на удаленном клиенте; управление в отношении изменяющего визуального контента на основе, по меньшей мере частично, оценки доступных ресурсов; передачу неизменяющегося визуального контента в первом формате на удаленный клиент; и передачу изменяющегося визуального контента, в отношении которого выполнено управление, во втором формате на удаленный клиент, причем второй формат включает в себя инструкции, которые обеспечивают представление изменяющегося визуального контента в качестве наложения на неизменяющийся визуальный контент при представлении на удаленном клиенте.
17. Компьютерная система по п.16, в которой инструкции позволяют удаленному клиенту воссоздавать наложение, при этом инструкции содержат одно или более из размера наложения, соотношения геометрических размеров для наложения и местоположения наложения.
18. Компьютерная система по п.16, в которой идентификация изменяющегося визуального контента основана на одном из частоты обновления, соотношения геометрических размеров, идентификации окна и имени процесса.
19. Компьютерная система по п.16, в которой передача изменяющегося визуального контента, в отношении которого выполнено управление, содержит передачу информации управления относительно по меньшей мере одного из данных положения видео и данных отслеживания геометрии.
20. Компьютерная система по п.19, в которой управление изменяющимся визуальным контентом, основанное, по меньшей мере частично, на доступных ресурсах, содержит по меньшей мере одно из сжатия изменяющегося визуального контента, пропуска обновлений экрана для изменяющегося визуального контента и пропуска видеокадров для изменяющегося визуального контента.
Описание изобретения к патенту
УРОВЕНЬ ТЕХНИКИ
Передача видеоконтента в сеансе терминального сервера может быть неэффективной, так как относительно большой объем данных, формирующий видеоконтент, может быть часто обновляемым наряду с другим визуальным контентом. Например, видеоданные могут быть обновлены и переданы с другим контентом экрана, таким как текст. Дополнительный контент может быть передан с видеоконтентом даже, несмотря на то, что дополнительный контент может меняться не с такой же скоростью как видеоконтент.
СУЩНОСТЬ ИЗОБРЕТЕНИЯ
Рассматриваются способы представления изменяющегося визуального контента, включающего в себя видео, анимацию и т.д., в режиме наложения. Изменяющийся визуальный контент, включенный в визуальное представление, может быть идентифицирован среди прочих визуальных элементов, включенных в визуальное представление. Изменяющимся визуальным контентом можно управлять на основе доступных ресурсов, связанных с представлением изменяющегося визуального контента в режиме наложения для клиента.
Это краткое описание предоставлено для того, чтобы ознакомить в упрощенной форме с выбором идей, которые дополнительно описаны ниже в подробном описании. Это краткое описание как не предназначено установить ключевые признаки или основные признаки заявленного объекта изобретения так, и не предназначено для того, чтобы быть использованным в качестве средства для определения объема заявленного объекта изобретения.
КРАТКОЕ ОПИСАНИЕ ЧЕРТЕЖЕЙ
Подробное описание описано со ссылкой на сопроводительные фигуры. На фигурах, крайняя(ие) левая(ые) цифра(ы) ссылочного номера обозначает фигуру на которой впервые появляется ссылочный номер. Использование одних и тех же ссылочных номеров в разных примерах в описании и фигурах может указывать похожие или идентичные элементы.
Фиг. 1 иллюстрирует среду в примерных осуществлениях, которая может использовать изменяющийся визуальный контент.
Фиг. 2 является блок-схемой изображающей примерные потоки данных во время передачи изменяющегося визуального контента.
Фиг. 3 является блок-схемой изображающей процедуру в примерных осуществлениях в соответствии, с которой передается изменяющийся визуальный контент.
Фиг. 4 является блок-схемой изображающей процедуру в примерных осуществлениях в соответствии, с которой изменяющийся визуальный контент передается в режиме наложения.
ПОДРОБНОЕ ОПИСАНИЕ
Обзор
Соответственно, описаны способы, которые могут позволить осуществлять удаленное представление изменяющегося визуального контента, который может включать в себя видеоконтент, анимацию и так далее, который часто изменяется на основании порога или в сравнении с прочим визуальным контентом. Например, идентифицированный изменяющийся визуальный контент может быть представлен в режиме наложения на удаленном устройстве. Изменяющийся визуальный контент может интерпретироваться отлично от прочего визуального контента, который может не меняться, меняться с меньшей скоростью, чем тот, что относится к изменяющемуся видеоконтенту, или не соответствует порогу изменения. Представление изменяющегося визуального контента в режиме наложения может позволить данным, формирующим контент, обрабатываться в качестве изменяющегося контента (например, видео) на основании доступных ресурсов. Изменяющийся визуальный контент может управляться и передаваться таким образом, что доступные ресурсы могут использоваться эффективно.
В осуществлениях, система, включающая в себя модуль идентификации, может идентифицировать изменяющийся визуальный контент. Например, анимация, которая включает в себя обновления экрана сверх установленного порога, может быть идентифицирована на основании соотношения геометрических размеров (форматного соотношения) растрового отображения представляющего анимированный контент. Таким образом, изменяющаяся анимация может быть идентифицирована среди прочего визуального контента и может управляться на этой основе. Идентифицированный визуальный контент может управляться в зависимости от доступных ресурсов. Управление может включать в себя сжатие данных, формирующих контент, пропуск обновлений, например, видеокадров, и так далее, что может быть осуществлено в зависимости от ресурсов доступных для обработки изменяющегося визуального контента.
ПРИМЕРНАЯ СРЕДА
Фиг. 1 иллюстрирует среду 100 в примерных осуществлениях, которая может удаленно представлять изменяющийся визуальный контент. Фиг. 2 иллюстрирует примерные способы и потоки данных, которые могут выполняться рассматриваемыми здесь примерными осуществлениями. Система 102 может включать в себя модуль 104 обнаружения видео для обнаружения, включен ли изменяющийся визуальный контент в визуальный контент.
Например, если модуль 106 обработки обновления экрана предоставляет видеоконтент и прочий визуальный контент (который возможно не изменяется), модуль 104 обнаружения видео может идентифицировать наличие изменяющегося видеоконтента внутри предоставленного визуального контента. Тогда как видеоконтент рассматривается впервые, примерный изменяющийся визуальный контент может включать в себя, но не ограничивается, анимацию, переходы (такие как переходы POWERPOINT (Microsoft Corporation, Рэдмонд, Вашингтон) и так далее, которые могут изменяться в сравнении с прочими визуальными данными или изменяться вне установленного порога (например, не изменяться) и так далее.
Модуль 106 обработки обновления экрана может пересылать прочий визуальный контент, такой как текст, графические объекты и так далее, удаленному клиенту 108 для отображения, в то время как изменяющийся визуальный контент обрабатывается в соответствии с рассматриваемыми здесь положениями. Например, прочий визуальный контент может обновляться менее часто в сравнении с видео, анимацией или прочим изменяющимся визуальным контентом, если упомянутые ранее визуальные компоненты изменяются формально или не изменяются. Интерпретация прочего визуального контента иным образом может минимизировать влияние различных схем сжатия по сравнению с тем, когда как к изменяющемуся визуальному контенту, так и прочему визуальному контенту применяется общая схема сжатия.
Модуль 110 обработки аудио может быть включен для того, чтобы получать аудиоконтент, который ассоциирован с изменяющимся визуальным контентом. Аудиоконтент может обрабатываться отдельно от изменяющегося визуального контента так, что контент может обрабатываться особым для контента образом. Для несжатого видеоклипа аудиоданные могут быть выделены из видеоданных для последующего повторного соединения, используя временные метки для того, чтобы синхронизировать аудиоданные с соответствующими видеоданными во время представления на удаленном устройстве 108 клиента.
Использование модуля 104 обнаружения видео для того, чтобы идентифицировать изменяющийся визуальный контент, может позволить обрабатывать, лежащие в его основе данные, иначе, чем прочий визуальный контент. В то время как изменяющийся визуальный контент (такой как видео 112) может обрабатываться и передаваться первым образом, неизменяющийся или минимально изменяющийся визуальный контент может интерпретироваться иным или вторым образом, так что прочий контент может не расходовать избыточно ресурсы и может позволить обрабатывать изменяющийся визуальный контент особым для изменяющегося визуального контента образом.
Модуль 104 обнаружения видео может идентифицировать информацию изменяющегося визуального контента в несжатом состоянии. Прочий визуальный контент может обновляться с меньшей скоростью, чем изменяющийся визуальный контент, и тем самым минимизировать общий объем передаваемых данных.
Видеоконтент или прочий изменяющийся визуальный контент может быть закодирован и/или передан на основании вычислительных ресурсов, включающих в себя доступные для выполнения задачи ресурсы передачи информации. Как результат, системные возможности кодирования (такие как кодировщики 114-118) и ресурсы передачи информации (например, сеть 120) могут использоваться эффективно не препятствуя вычислительным ресурсам, при этом обрабатывая изменяющийся визуальный контент особым для изменяющегося визуального контента образом. Если, например, отображение включает в себя флэш-видео, как впрочем и текст и графические объекты, текст и графические объекты могут не изменяться или могут редко изменяться в сравнении с видеоконтентом или порогом частоты обновления, используемым для того, чтобы отличать изменяющийся от неизменяющегося контента. Примеры неизменяющегося или минимально изменяющегося контента могут включать в себя, но не ограничиваются, текст, графические объекты и так далее, которые могут не изменяться или изменяться редко по сравнению с изменяющимся визуальным контентом.
В примере, видео 112 управления автомобилем может быть представлено в окне, в то время как текст и графические объекты 122, которые дают возможность пользователю связаться с дилером, получить расценки, могут быть представлены в другой части отображения. При сравнении, видеочасть отображения может изменяться часто по сравнению с прочим визуальным контентом или некоторым критериям. Текст и графические объекты могут оставаться неизменяемыми или изменяться редко на основании похожего сравнения или предопределенного стандарта обновления экрана.
Модуль 104 обнаружения видео может идентифицировать то, что визуальный контент изменяется на основании различных критериев. Примерный критерий может включать в себя, но не ограничивается, частоту обновления экрана, соотношение геометрических размеров (форматное соотношение), имя класса окна, имя процесса для обновления экрана и так далее. Более того, модуль 104 обнаружения видео может определять то, что воспроизведение изменяющегося контента остановлено или, что его обработка задержана. Если изменяющийся контент остановлен, модуль 104 обнаружения видео может идентифицировать то, что окно для представления, изменяющегося визуального контента, должно быть закрыто при дублировании на клиентском устройстве. Если воспроизведение изменяющегося контента просто задержано, наложение, представляющее изменяющийся контент на клиентском устройстве, может быть оставлено, несмотря на то, что в нем не будет представлен контент или наложение может быть замаскировано.
Частота обновления экрана может быть идентифицирована в соответствии с числом обновления экрана в секунду, например, двадцать четыре кадра в секунду для фильма, двадцать пять кадров в секунду для Европейского телевидения, тридцать кадров в секунду для Американского телевидения и так далее. В осуществлениях, скорость обновления экрана может использоваться в качестве порога для определения, является ли визуальный контент изменяющимся. Вышеупомянутые примеры являются только примерными. В осуществлениях для идентификации могут использоваться комбинации критериев. В дальнейших примерах изменяющийся визуальный контент может идентифицироваться эвристически.
Соотношение геометрических размеров изменяющегося визуального контента может быть идентифицировано в соответствии с соотношением геометрических размеров растрового отображения, представляющего визуальный контент. Для примера, соотношение 4:3 может указывать стандартный телевизионный контент, в то время как соотношение 16:9 может указывать на широкоформатный изменяющийся контент. Имя класса окна может включать в себя имя устройства формирования изображения, используемого для представления окна, которое будет, по меньшей мере, частично закрывать экран, на котором будет отображаться визуальный контент. Изменяющийся визуальный контент может быть идентифицирован, если окно имеет соотношение геометрических размеров 4:3 и обновляется, приблизительно, двадцать четыре кадра в секунду.
Модуль 124 обработки может указывать управление идентифицированным изменяющимся визуальным контентом. Например, как только идентифицирован, анимированный контент может управляться в качестве указанного модулем обработки на основании вычислительных ресурсов доступных для обработки включая передачу данных. Управление может включать в себя пропуск кадров (для видео) или обновления экрана (для анимации); сжатие содержимого; не отправление изменяющегося визуального контента; использование конкретной схемы кодирования и так далее. Например, растровые отображения, представляющие анимацию или видео, могут быть пропущены.
Например, если доступна относительно большая величина полосы пропускания, модуль 124 обработки может указывать одному или более модулям 114-118 кодировщиков осуществить простую схему кодирования (например, технологию кодирования с потерями) для того, чтобы минимизировать потери процессора для изменяющегося визуального контента. В противоположность, если доступная полоса пропускания ограничена, могут использоваться технологии кодирования с интенсивным использованием ресурсов для того, чтобы минимизировать расход полосы пропускания. Так же могут быть рассмотрены комбинации факторов, включающие в себя ресурсы, выделенные прочим, не относящимся к данной теме, задачам и так далее. Например, модули «1-N» 114-118 кодировщика могут реализовывать различные форматы включающие в себя, но не ограничивающиеся, видеокодек 1 (VC1), кодек экспертной группы по кинематографии (MPEG), кодек объединенной группы экспертов по машинной обработке фотографических изображений (JPEG) и так далее.
Информация управления может быть включена в данные, формирующие визуальный контент. Информация управления может включать в себя данные для указания каким образом изменяющийся визуальный контент должен быть представлен удаленно. Например, информация управления может включать в себя размер наложения, которое необходимо для представления изменяющихся данных, местоположение наложения на отображении, временные отметки и так далее (например, наложение, включающее в себя видео 136 автомобиля, на удаленном клиенте 108). Один или более модули кодировщика могут кодировать информацию управления совместно с данными изменяющегося визуального контента для передачи информации удаленному клиенту. Например, когда представлен удаленно, визуальный контент, включающий в себя изменяющийся визуальный контент, может отражать конфигурацию сервера для визуальных данных. Другими словами, что наложение, как впрочем, и прочий визуальный контент, может представляться на клиенте поскольку визуальный контент был получен модулем 106 обработки обновления экрана сервера. В дополнительных осуществлениях, данные управления могут передаваться отдельно, передаваться в выделенных частях потока данных, транспортирующих данные контента и данные управления, и так далее, вместе с временными метками, позволяющими синхронизировать аудио и визуальный контент.
Модуль 126 отслеживания ресурсов может отслеживать доступность вычислительных ресурсов, включая ресурсы передачи информации, ассоциированные с удаленным представлением визуального контента. Например, модуль 126 отслеживания ресурсов, включенный в систему сервера, может отправлять модулю 124 обработки указание вычислительных ресурсов ассоциированных с представлением визуального контента на удаленном клиенте. Если, в качестве примера, полоса пропускания ограничена, модуль 124 обработки может выбрать пропуск кадров, использование конкретной технологии кодирования и так далее, на основании ресурсов как определено модулем отслеживания ресурсов. Соответствующее указание ресурса может включать в себя, но не ограничивается, указание относящиеся к: доступности полосы пропускания передачи информации (например, сети 120), доступным кодировщикам и так далее. Таким образом, модуль 124 обработки может получать доступ к доступным ресурсам для удаленного представления изменяющегося визуального контента без непомерного вовлечения вычислительных ресурсов или чрезмерного расхода вычислительных ресурсов. Использование модуля 126 отслеживания ресурсов, может адаптировать то, каким образом изменяющийся визуальный контент должен передаваться, что именно передает изменяющийся визуальный контент и так далее, в соответствии с доступными вычислительными ресурсами. Использование ресурса может меняться по мере того, как изменяющийся визуальный контент предоставляется удаленному клиенту на основании доступности ресурса.
Удаленный клиент 108 может включать в себя клиентский модуль 128 обработки, который определяет то, каким образом представить декодированный изменяющийся визуальный контент. Например, клиентский модуль 128 обработки может представлять изменяющийся контент (который декодирован клиентскими декодерами «1-N» 130-132) в режиме наложения на основании данных управления, которые были закодированы совместно с данными контента. Вышеописанным образом, клиентский модуль 128 обработки может восстанавливать изменяющийся визуальный контент так, чтобы представление изменяющегося визуального контента было согласовано с тем что есть на сервере 102, так как если бы контент представлялся на отображении, ассоциированном с сервером 102. Например, размер, соотношение геометрических размеров и так далее, могут быть указаны данными управления включенными совместно с изменяющимся видеоконтентом. Данные управления могут включать в себя информацию, относящуюся к обнаружению дочернего видеоокна, отслеживания геометрии, которая соответственно может использоваться клиентским модулем обработки во время определения того, каким образом представлять изменяющийся визуальный контент. Если применимо, аудио может быть вновь соединено с изменяющимся визуальным контентом, используя временные метки для координации мультимедиа.
Клиентский модуль 134 обработки экрана может принимать прочие визуальные данные, если применимо, от модуля обработки обновления экрана сервера. Например, тем временем как видео представляется в режиме наложения на клиентском отображении, текст, графические объекты и им подобное, могут представляться в качестве «фона» для наложения. Другими словами, что тем временем пока видео может выделяться и интерпретироваться индивидуально, как правило, часть неизменяющегося визуального контента может представляться на клиентском отображении с частью видеоконтента поверх, по меньшей мере, части отображения. Наложение и прочий визуальный контент, если представлен, могут быть организованы и выполнены так, чтобы отображаться на клиенте согласованно с контентом от модуля 106 обработки обновления экрана сервера.
Как правило, любая из описанных здесь функций может быть реализована, используя программное обеспечение, встроенное программное обеспечение, аппаратное обеспечение (например, неизменяемые логические схемы), ручную обработку или комбинацию этих реализаций. Используемые здесь термины «модуль», «функциональные возможности» и «логика», как правило, представляют собой программное обеспечение, встроенное программное обеспечение, аппаратное обеспечение или их комбинацию. В случае, например, реализации в программном обеспечении модуль, функциональные возможности или логика представляют собой код программы, который выполняет конкретные задачи при выполнении на процессоре (например, ЦПУ или нескольких ЦПУ). Код программы может храниться на одном или более машиночитаемых устройствах памяти, например, материальной памяти и так далее.
Нижеследующее обсуждение описывает технологию преобразования, которая может быть осуществлена с применением ранее описанных систем и устройств. Аспекты каждой из процедур могут быть осуществлены в аппаратном обеспечении, встроенном программном обеспечении или программном обеспечении, или их комбинации. Процедуры показаны в качестве набора блоков, которые указывают операции, выполняемые одним или более устройствами, и необязательно ограничены последовательностью, показанной для выполнения операций соответствующими блоками.
ПРИМЕРНЫЕ ПРОЦЕДУРЫ
Нижеследующее обсуждение описывает методику, которая может быть реализована с применением ранее описанных систем и устройств. Аспекты каждой из процедур могут быть осуществлены в аппаратном обеспечении, встроенном программном обеспечении или программном обеспечении или их комбинации. Процедуры показаны в качестве набора блоков, которые указывают операции, выполняемые одним или более устройствами, и необязательно ограничены последовательностью, показанной для выполнения операций соответствующими блоками. Так же предполагается разнообразие прочих примером.
Фиг. 3 раскрывает примерные процедуры для предоставления изменяющихся визуальных данных в режиме наложения. Отображение изменяющегося визуального контента, который может часто меняться, по сравнению с набором стандартного или прочего визуального контента, может давать возможность обработки данных, формирующих изменяющийся визуальный контент, на низком уровне, при этом адаптируя обработку данных в соответствии с доступными вычислительными ресурсами. Например, визуальное представление может быть представлено удаленно на клиентском устройстве, получающем доступ к видеоконтенту через web сервер.
Изменяющийся визуальный контент, который может быть включен совместно с прочим визуальным контентом (который не изменяется или изменяется с незначительной скоростью), в качестве части обновления 302 экрана, может быть идентифицирован 304 в несжатом состоянии. Например, изменяющийся визуальный контент может включать в себя, но не ограничивается, видео, переходы, анимацию и так далее, которые обновляются, как правило, через постоянные интервалы. Изменяющийся визуальный контент может быть в противоположность, как приложение, неизменяющемуся визуальному контенту, минимально изменяющемуся контенту или сравненный с некоторым установленным стандартом (например, скоростью изменения или обновлением экрана). Идентификация 304 изменяющегося визуального контента может, по меньшей мере, частично основываться на частоте обновления, соотношении геометрических размеров контента, идентификации окна, имени процесса и так далее. Эвристические технологии могут использоваться совместно с идентификацией изменяющегося визуального контента.
В примерах могут рассматриваться комбинации вышеназванных критериев. Идентификация 304 изменяющегося визуального контента может быть основана на том, согласовано ли соотношение геометрических размеров окна с тем с каким отображается кинофильм или фильм, и если имя процесса для входящего обновления экрана согласовано с тем, что есть у видеопроигрывателя. Например, если контент имеет соотношение геометрических размеров 4:3 и имя процесса для обновления согласуется с именем, ассоциированным с проигрывателем для воспроизведения телевизионных передач, визуальный контент может быть идентифицирован в качестве изменяющегося контента, даже если, например, воспроизведение изменяющегося контента не поставлено на паузу. Примерные имена процессов могут включать в себя, но не ограничиваются, WINDOWS MEDIA CENTER (Microsoft Corporation, Рэдмонд, Вашингтон) и так далее. Если изменяющийся визуальный контент не представлен или визуальный контент перестал поступать может быть произведено обновление прочего контента или может быть удалено 306 наложение остановленного изменяющегося контента.
Могут быть оценены 308 доступные ресурсы. Конкретная схема управления и/или сжатия может выбираться 310 в соответствии с параметрами вычислительных ресурсов обрабатывающих удаленное представление. Например, вычислительные устройства могут оцениваться 308 для того, чтобы определить их пригодность. Примерные параметры вычислительных ресурсов которые могут рассматриваться во время управления и/или указывать кодирование изменяющегося визуального контента 310, включают в себя, но не ограничиваются, ресурс сервера, ресурсы клиента и ресурсы передачи информации. Например, если по сравнению с данными, которые могут быть переданы, допустимая полоса пропускания относительно мала, изменяющийся визуальный контент не может быть отправлен без задержки 312 видео или пропуска кадров, как части управления 310 изменяющимся визуальным контентом.
Соответственно, изменяющийся видео или анимационный контент может обрабатываться на основании доступных вычислительных ресурсов 308, в то время как прочий визуальный контент обрабатывается посредством прочих технологий. Например, минимально изменяющийся текст или графические объекты могут отдельно пересылаться для представления клиенту. Если применимо, прочий визуальный контент может обрабатываться другим образом. Например, минимально изменяющийся визуальный контент может обновляться с иной скоростью или передаваться отдельно. Таким образом, изменяющийся визуальный контент может накладываться поверх минимально изменяющегося контента так, чтобы визуальное представление клиенту было согласовано с тем, что у удаленного источника, предоставляющего визуальный контент. В осуществлениях, изменяющийся визуальный контент и прочий визуальный контент могут быть воссозданы (например, с изменяющимся контентом в режиме наложения) так что визуальное представление согласуется с визуальным контентом при идентификации. В других случаях, минимально изменяющийся контент может накладываться поверх изменяющегося контента. Пример вышеупомянутого может включать в себя, нерегулярную область, такую как всплывающее уведомление (такое как окно уведомления в OUTLOOK (Microsoft Corporation, Рэдмонд, Вашингтон), накладываемое поверх изменяющегося контента. Таким же образом, изменяющийся контент может частично перекрываться неизменяющимся контентом.
Идентифицированный изменяющийся визуальный контент может управляться 310 по желанию. Например, управление может включать в себя сжатие изменяющегося визуального контента, пропуск кадров и обновления экрана для изменяющегося визуального контента, задержки воспроизведения изменяющегося визуального контента 312 и подобное. Например, изменяющийся визуальный контент может управляться 310 таким образом, что наложенное видео или анимация появляется на клиенте в конкретном местоположении отображения, согласуется с назначенным размером, соотношением геометрических размеров или тому подобным. В осуществлениях, при создании наложения для того, чтобы представить изменяющийся визуальный контент, могут использоваться обнаружение дочернего окна, отслеживание геометрии или подобные технологии. Вышеописанные технологии могут дать возможность низкоуровневого удаленного взаимодействия изменяющегося визуального контента.
В качестве примера, оценка ресурсов включает в себя, но не ограничивается, выбор конкретной технологии кодирования или пропуска кадров для того, чтобы минимизировать расход полосы пропускания, управляя изменяющимся визуальным контентом на основании других задач обрабатываемых сервером. Например, схема со сжатием с потерями может использоваться, если полоса пропускания наиболее востребована. Таким образом, чем более интенсивным может быть кодирование контента 310, сниженное потребление полосы пропускания может быть главным соображением.
Изменяющийся визуальный контент может кодироваться 310 для передачи информации клиенту. Например, данные управления и данные, формирующие изменяющийся визуальный контент, могут кодироваться посредством различных технологий для передачи информации 312 удаленному клиенту. В других примерах, данные управления и данные контента могут передаваться индивидуально. Кодирование/указание кодирования может включать в себя использование VC1, MPEG и подобных технологий для кодирования и/или сжатия контента для удаленного представления.
Аудиоконтент может обрабатываться и передаваться отдельно. Например, временные метки могут быть ассоциированы с аудио и видеоконтентом и для использования в повторной синхронизации или при согласовании представления аудиоконтента с видео, анимацией или прочим изменяющимся визуальным контентом.
С точки зрения клиента, изменяющийся визуальный контент может быть представлен в режиме наложения, который накладывает на визуальный контент, который не меняется или меняется в минимальном виде. Например, клиент может декодировать 314 изменяющийся визуальный контент для представления в режиме наложения. Наложение может быть воссоздано на основании информации управления пересылаемой системой сервера, предоставляющей визуальный контент. Например, технологии отслеживания дочернего окна, отслеживания геометрии могут использоваться для того, чтобы сформировать и/или воссоздать изменяющийся визуальный контент так, чтобы визуальный контент появлялся в соответствии с тем как сконфигурировано и организовано при идентификации 304.
Если аудиоконтент ассоциирован с анимационным или видеоконтентом, например, мультимедийное представление, аудио может быть повторно объединено 316 с изменяющимся визуальным контентом. Например, соответствующие временные метки привязанные, соответственно, к аудио и визуальным данным могут использоваться для того, чтобы повторно синхронизировать аудио и видео для представления клиентом. Аудиоконтент может быть сжат для переноса. Например, сжатый аудиоконтент, переносимый в отдельном потоке данных, может быть распакован, а временные метки использованы в повторном объединении с видеоконтентом. В дополнительных примерах, сжатое аудио и сжатый изменяющийся видеоконтент могут передаваться в общем потоке данных.
Фиг. 4 раскрывает примерные процедуры и инструкции для предоставления изменяющихся визуальных данных в режиме наложения. Например, технологии, рассмотренные ниже, могут быть реализованы в качестве набора машиноисполняемых инструкций для удаленного представления изменяющегося видео, анимации или прочего изменяющегося визуального контента.
Несжатый изменяющийся визуальный контент, включенный в обновление 402 экрана, может быть идентифицирован 404 среди прочих визуальных компонентов на основании критерия включающего в себя, частоту обновления экрана, соотношение геометрических размеров, имя окна, в случае если часть экрана закрыта окном, так же может быть рассмотрено имя процесса для обновления экрана. Может рассматриваться комбинация вышеназванных параметров идентификации или критерий. Например, видео может быть идентифицировано на основании частоты обновления кадра растрового отображения, представляющего видео, в то время как прочий визуальный контент может оставаться большей частью неизменяемым. Могут использоваться технологии эвристического обучения для улучшения идентификации изменяющегося визуального контента. Если изменяющийся визуальный контент не идентифицирован, прочий визуальный контент, который может не изменяться или только минимально изменяться, может быть передан 406 независимо клиентскому устройству. Например, если видео прекратило воспроизводиться, прочие графические элементы могут быть обновлены и наложение, которое ранее представляло видео, может быть удалено 406.
В момент идентификации 404, различные вычислительные ресурсы, привлеченные для передачи и представления визуального контента удаленно, могут быть проверены 408 для того, чтобы определить, являются ли вычислительные ресурсы доступными для обработки изменяющегося визуального контента. Оценки ресурсов могут включать в себя, но не ограничиваются, пригодность кодировщиков, полосу пропускания сети, параметры клиента, доступную емкость процессора сервера и так далее. Если достаточные вычислительные ресурсы не доступны, изменяющийся визуальный контент может не передаваться 412. Например, обновление экрана, которое включает в себя изменение в видеоконтенте, может не отправляться если сеть, передающая контент, не имеет достаточной пропускной способности.
Если вычислительные ресурсы доступны, несжатые данные, формирующие изменяющийся визуальный контент, могут управляться 410 на основании вычислительных ресурсов, привлеченных к обработке, и/или передачи изменяющегося визуального контента 408. Например, управление 410 может включать в себя указание кодировщикам использовать конкретные технологии кодирования, пропуск кадров или обновления экрана, не передавать 412 изменяющийся визуальный контент, сжатие данных изменяющегося визуального контента, включение информации управления и так далее, в соответствии с доступностью ресурса.
Информация управления может включать в себя данные относящиеся к обнаружению дочернего окна и/или отслеживания геометрии, которые могут использоваться для того, чтобы указывать клиенту действия при воссоздании изменяющегося визуального контента. В осуществлениях, информация управления может кодироваться совместно с данными, формирующими изменяющийся визуальный контент, при этом в прочих случаях, данные управления могут в значительной степени передаваться совместно с данными, формирующими изменяющийся визуальный контент. Данные управления могут указывать то, каким образом изменяющийся визуальный контент должен быть воссоздан клиентом. Например, данные управления могут указывать одно или более из: размера наложения для представления видео, соотношения геометрических размеров наложения, местоположения наложения и так далее.
Прочие визуальные элементы, которые изменяются минимально или не изменяются, могут обрабатываться отдельно. Например, тем временем как видеоконтент может обрабатываться первым образом, неизменяющиеся графические элементы могут обрабатываться и/или передаваться вторым образом. Например, минимально изменяющиеся элементы могут передаваться посредством других методик, с другими интервалам и так далее.
Если аудиоконтент ассоциирован с изменяющимся визуальным контентом, могут быть выполнены 414 временные метки для того, чтобы координировать изменяющийся визуальный контент с аудиоконтентом, который может обрабатываться отдельно. Например, временная метка может быть включена с видео так, чтобы аудио было согласовано с видеоналожением на клиентском устройстве. Таким образом, аудио может передаваться особым для аудио образом, тем временем как изменяющийся визуальный контент может обрабатываться и/или передаваться, как рассмотрено здесь.
Закодированный изменяющийся визуальный контент может передаваться 416 в соответствии с определенными вычислительными ресурсами. Например, если доступна относительно большая величина полосы пропускания сети (по сравнению с изменяющимся визуальным контентом) может использоваться более простой алгоритм, который может использовать меньше вычислительных ресурсов для того, чтобы кодировать/декодировать. Если, в противоположность, полоса пропускания наиболее востребована, может использоваться более сложный алгоритм, который расходует меньший размер полосы пропускания, но может нагрузить кодировщики и/или декодеры.
Со стороны клиента, клиент может декодировать 418 изменяющийся визуальный контент для представления в режиме наложения. Изменяющийся визуальный контент может быть представлен в режиме наложения, который накладывается на визуальный контент, который не изменяется или меняется минимальным образом. Наложение может быть воссоздано на основании информации управления, пересылаемой системой сервера, предоставляющей визуальный контент. Например, технологии отслеживания дочернего окна, отслеживания геометрии могут использоваться для того, чтобы формировать и/или воссоздавать изменяющийся визуальный контент так, чтобы визуальный контент появлялся как сконфигурированный и организованный в обновлении 402 экрана. Прочий визуальный контент, такой как неизменяющийся или минимально изменяющийся контент может накладываться поверх изменяющегося визуального контента. Например, всплывающее окно может скрывать часть наложения изменяющегося визуального контента.
Если аудиоконтент ассоциирован с анимационным или видеоконтентом, например, мультимедийное представление, аудио может быть согласовано 420 с изменяющимся визуальным контентом. Например, соответствующие временные метки, привязанные соответственно к аудио и визуальным данным, могут использоваться для того, чтобы повторно синхронизировать аудио и видео в наложении для представления клиентом.
Заключение
Несмотря на то, что изобретение было описано на языке специфичном для структурных признаков и/или методологических действий, должно быть понятно, что изобретение, определенное в прилагаемой формуле изобретения, не обязательно ограничено описанными конкретными признаками или действиями. Наоборот, конкретные признаки и действия раскрыты в качестве примерных форм осуществления заявленного изобретения.
Класс H04N21/2343 включающая операции переформатирования видеосигналов для распределения или согласования с запросами конечных пользователей или требованиями устройств конечных
Класс H04N21/262 график распределения контента или дополнительных данных, например посылка дополнительных данных в периоды неполной нагрузки, обновление модулей программного обеспечения, вычисление частоты карусельной передачи, задержка передачи видеопотока или формирование игровых списков
Класс G09G5/14 отображение нескольких полей индикации