АРХИТЕКТУРА ДЛЯ ОНЛАЙНОВЫХ КОЛЛЕКТИВНЫХ И ОБЪЕДИНЕННЫХ ВЗАИМОДЕЙСТВИЙ
ARCHITECTURE FOR ONLINE COLLECTIVE AND COMBINED INTERACTIONS

Область технологии
Раскрываемый здесь объект изобретения относится к области вычислений, а более конкретно, к таким областям, как мультимедийный контент (содержимое, данные), хотя это является просто примерной и неограничивающей областью.
Уровень техники изобретения
Развлекательные устройства, такие как игровые консоли, карманные игровые приставки, музыкальные проигрыватели, персональные компьютеры (PC) и т.д., не имеют структурированных, хорошо определенных средств, предоставляемых пользователям, чтобы связываться друг с другом - например, посредством видео и/или голосом. Более того, такие устройства не имеют средств, чтобы совместно использовать данные, такие как фотографии, музыку, видео и т.д., совместным, устойчивым и разнообразным образом. Таким образом, необходима архитектура, которая может предоставлять инфраструктуру для кроссплатформенной передачи и совместного использования данных.
Раскрытие изобретения
Различные аспекты раскрываются в данном документе в отношении архитектуры для онлайновых коллективных и объединенных взаимодействий. Эта архитектура может быть осуществлена в приложении, работающем на вычислительном хост-устройстве, где приложение предоставляет функциональные возможности, такие как поиск модулей в локальных устройствах или размещенных в онлайновых службах, запуск таких модулей, переключение между множеством таких одновременно работающих модулей и предоставление текстовой, голосовой и видео функциональные возможности "многие ко многим". Этот подход может также взаимодействовать с управляемой средой выполнения кода в вычислительным хост-устройстве, таким образом, предоставляя средство ввода, вывода и сетевой связи между множеством вычислительных устройств, имеющих разные платформы.
Следует отметить, что это раскрытие предусмотрено для того, чтобы в упрощенной форме представить набор идей, которые дополнительно описываются ниже в подробном описании осуществления изобретения. Это раскрытие не предназначено для того, чтобы идентифицировать ключевые признаки или важнейшие признаки заявляемого объекта изобретения, а также не предназначено для того, чтобы использоваться в качестве помощи при определении области применения заявляемого объекта изобретения.
Краткое описание чертежей
Предшествующее раскрытие, а также последующее подробное описание лучше понятны при рассмотрении совместно с прилагаемыми чертежами. Для того, чтобы иллюстрировать настоящее изобретение, иллюстрируются различные аспекты изобретения. Однако изобретение не ограничено конкретными показанными аспектами. В описание включены следующие чертежи:
Фиг.1 иллюстрирует систему предшествующего уровня техники, где развлекательные устройства различных типов не имеют кроссплатформенной архитектуры, чтобы передавать и совместно использовать данные;
Фиг.2 иллюстрирует наличие структурированного кроссплатформенного механизма для различных устройств различных типов (и одинакового типа), который может предоставить возможность передачи и совместного использования данных;
Фиг.3 иллюстрирует как кроссплатформенное взаимодействие может быть выполнено с помощью приложения и/или подключаемой архитектуры;
Фиг.4 иллюстрирует примерный сценарий для основного модуля совместного использования мультимедийного контента, чтобы взаимодействовать с собственным приложением;
Фиг.5 детализирует Фиг.4, раскрывая сценарий для модифицируемого хостом мультимедийного контента;
Фиг.6 дополнительно детализирует Фиг.4 и 5, показывая эффекты от мультимедийного контента, модифицируемого удаленным вычислительным устройством;
Фиг.7 иллюстрирует примерную блок-схему последовательности операций создания, использования, предоставления и т.п. механизмов кроссплатформенного приложения;
Фиг.8 иллюстрирует в форме блок-схемы примерную мультимедийную консоль, которая может использоваться вместе с различными аспектами кроссплатформенных приложений, обсуждаемых со ссылкой на Фиг.1-7 и 9;
Фиг.9 иллюстрирует примерное сетевое окружение для объекта изобретения, обсуждаемого со ссылкой на Фиг.1-8.
Осуществление изобретения
Фиг.1 иллюстрирует систему предшествующего уровня техники, где развлекательные устройства различных типов не имеют кроссплатформенной архитектуры, чтобы передавать и совместно использовать данные. Развлекательное устройство A 160 может быть типа 1 и развлекательное устройство B 162 также может быть типа 1. Поскольку оба устройства 160, 162 имеют одинаковый тип, такой как два персональных компьютера (PC), они могут легко связываться через различные протоколы, такие как протокол управления передачей/протокол Интернета (TCP/IP). В этом сценарии существует структурированный механизм связи и совместного использования.
Напротив, устройства различных типов не могут иметь возможности связываться друг с другом структурированным образом из-за отсутствия общего механизма связи и совместного использования. На Фиг.1 развлекательное устройство A 160 может иметь тип 1, а именно PC, а развлекательное устройство C 164 может иметь тип 2, например музыкальный проигрыватель. Эти два устройства, PC и музыкальный проигрыватель, могут не иметь возможности связываться интенсивным и экстенсивным образом. Конечно, базовое взаимодействие между устройствами различных типов может существовать, например, базовое совместное использование текста или других несложных данных, однако, контент одного устройства - для большинства - частично может быть непонятен другому устройству (и наоборот).
Такой недостаток структурированной кроссплатформенной передачи и совместного использования данных может быть применим ко множеству устройств. Фиг.1 иллюстрирует, что развлекательное устройство A 160 типа 1 может также не иметь возможности связываться структурированным образом с развлекательным устройством D, которое имеет тип 3. Устройства 166 типа 3, например карманные игровые приставки, могут не иметь возможности связываться с устройствами 164 типа 2, представляющими собой музыкальные проигрыватели, и т.д.
В противоположность Фиг.1 Фиг.2 иллюстрирует предоставленный структурированный кроссплатформенный механизм, где различные устройства различных типов (и одинакового типа) могут легко связываться друг с другом и совместно использовать данные. Таким образом, на Фиг.2 вычислительное устройство A 200 типа 1 может взаимодействовать с вычислительным устройством C 202 типа 2; оно может взаимодействовать с вычислительным устройством D 206 типа 3; и оно может взаимодействовать с вычислительным устройством B 204 того же типа, типа 1, что и оно само.
Такое взаимодействие, которое может включать в себя передачу и/или совместное использование данных, среди прочих функциональных возможностей, может включать в себя, в том числе передачу речи, текста и/или видео, совместное использование фотографий, музыки (включающей в себя звуковые файлы), видео и т.д. Взаимодействие может затрагивать любой вид цифрового контента. Такое взаимодействие может выполняться в реальном времени или не в реальном времени, в зависимости от необходимости. Более того, оно не должно быть ограничено взаимодействием "один-к-одному" и может затрагивать множество пользователей и/или вычислительных систем. В этой схеме, коллективные взаимодействия могут поддерживаться передачей и совместным использованием контента на множестве платформ, работают ли эти платформы на PC, игровых консолях, музыкальных проигрывателях, сотовых телефонах, персональных цифровых помощниках (PDA) и т.д.
Далее, Фиг.3 иллюстрирует, как кроссплатформенное взаимодействие может выполняться с помощью приложения и/или подключаемой архитектуры. На Фиг.3 вычислительное устройство A 200 типа 1 взаимодействует с вычислительным устройством C 202 типа 2. В одном аспекте раскрываемого здесь объекта изобретения такая передача и совместное использование данных могут выполняться с помощью кроссплатформенного приложения 300. Это приложение 300 может поддерживать множество пользователей 302, 304, 306 на различных и удаленных вычислительных устройствах. Эти устройства могут быть различных типов, как обсуждалось выше, включающих в себя PC, игровые консоли и т.д. Используя кроссплатформенное приложение, пользователи 302, 304, 306 могут выполнять конференц-связь 308 с помощью речи, текста, видео и других средств связи.
Кроме того, кроссплатформенное приложение 300 может поддерживать подключаемую архитектуру. Таким образом, различные подключаемые модули могут разрабатываться и использоваться, чтобы взаимодействовать с базовым приложением 300. Такие подключаемые модули могут включать в себя различные вычислительные решения, такие как добавление или расширение передачи речи, текста и/или видео и/или совместное использование фото, музыки и/или видео и т.п. Одним способом, которым это может быть выполнено посредством подключаемой архитектуры 310, является раскрытие базовых интерфейсов 312, которые могут использоваться, чтобы проектировать соответствующие интерфейсы, встроенные в вышеупомянутые подключаемые модули. Базовые интерфейсы 312 могут выступать посредником в управлении различными функциональными возможностями, такими как (1) графические устройства, чтобы подключаемые модули могли рисовать, (2) вход, чтобы подключаемые модули могли получать и управлять определенными входными данными, (3) сетевое взаимодействие, чтобы подключаемые модули могли синхронизировать данные от различных пользователей, и т.д.
В дополнительном аспекте раскрываемого здесь объекта изобретения кроссплатформенное приложение может быть платформенно-независимым. В качестве примера, а не ограничения, приложение 300 может взаимодействовать с интегрированной средой управляемого кода, такой как .NET. Это может допускать привлечение управляемого кода для вышеупомянутого взаимодействия, а также допускает различные типы кодов, чтобы взаимодействовать через промежуточный язык, предоставленный интегрированной средой управляемого кода. Специалистам в данной области техники будет хорошо понятно, что различные кроссплатформенные рабочие среды могут использоваться, чтобы выполнять эту задачу (не только .NET), и что в некоторых других аспектах раскрытого объекта изобретения такие интегрированные среды управляемого кода не обязательны для использования.
Там, где управляемые рабочие среды используются, они могут предоставлять базовую модель или пространство имен для управления процессом, управления вводом данных, сетевого взаимодействия (включающего в себя уведомление о пользователях, входящих или покидающих сеанс связи, и возможность адресации и отправки пакетов любым пользователям), воспроизведения графики, доступа к локальному запоминающему устройству и т.п. Собственные приложения, взаимодействующие с такими рабочими средами, могут обеспечивать базовую функциональность для поиска модулей в локальных устройствах или размещенных в онлайновых службах, они также могут обеспечивать запуск таких модулей, переключение между одновременно работающими модулями, текстовый, голосовой, видеочат многих со многими и т.д.
Некоторые из других примерных и неограничивающих признаков собственных приложений включают в себя размещение управляемых рабочих сред, которые фактически запускают модули; предоставление входных данных модулям, включающим в себя текст, речь, видео, контроллер, запоминающее устройство и т.д.; обеспечение вывода данных из модулей, включающих в себя текст, речь, видео, графику, запоминающее устройство и т.д.; предоставление средства воспроизведения выходных данных из мини-приложений; предоставление средства приглашения других участников присоединиться к взаимодействию; поддержка текстового, голосового, видеочата у всех пользователей. Это только некоторые из множества признаков собственного приложения, которое по-разному представлено в других частях этой заявки, либо как кроссплатформенное приложение 300 на Фиг.3, либо как собственное приложение 414 на Фиг.4.
На Фиг.4 проиллюстрирован примерный сценарий основного модуля совместного использования мультимедийного контента, взаимодействующего с собственным приложением. Следует отметить, что "мультимедийный контент" включает в себя любой контент, обсуждаемый в данном документе (и имеющий возможность храниться на любом материальном носителе), таким образом, этот термин является скорее включающим, чем исключающим. Кроме того, термин "контент" в данном документе включает в себя любые "данные" и/или "код", как эти термины понимаются специалистами в данной области техники. На Фиг.4 модуль 402, который может быть подключаемым модулем совместного использования и/или редактирования фотографий или некоторым другим мини-приложением, предоставляет некоторый мультимедийный контент 416, например изображение (хотя понятие "мультимедийный контент" не ограничено изображениями, текстом и такими данными и также может включать в себя игровой контент, видео и/или звуковой контент и т.д.). Этот мультимедийный контент 416 может передаваться собственному приложению 414 через графический интерфейс 408. Собственное приложение 414 может предоставлять рабочую оболочку 418 контента, например, некоторый вид мини-приложения или программы, такой как голосовой чат или текстовый чат. Таким образом, конечным результатом может быть то, что мультимедийный контент 416 может вставляться 430 в рабочую оболочку 418 контента подобно тому, как изображение может быть вставлено или встроено в программу обмена сообщениями. И, более того, в других аспектах раскрываемого здесь объекта изобретения мультимедийный контент 416 и рабочая оболочка 418 контента могут быть одним и тем же (например, консольная игровая приставка). Наконец, этот мультимедийный контент 416 может затем совместно использоваться с другими пользователями через собственные функциональные возможности сетевого взаимодействия 420 собственного приложения 414.
Собственное приложение 414 может предоставлять различные функциональные возможности, такие как сохранение состояния и предоставление интерфейсов, чтобы допускать взаимодействие с другими удаленными хостами и клиентами. В первом случае, приложение 414 может поддерживать согласованное состояние на множестве вычислительных устройств, например устройств, распределенных по сети. В качестве примера, а не ограничения, приложение 414 может запрашивать ответы о различных соединениях между различными модулями (например, состояние сокета). В последнем случае, опять же, в качестве примера, а не ограничения, сетевой интерфейс 404 может способствовать совместному использованию вышеупомянутого мультимедийного контента 416 различными пользователями на различных платформах; управляющий интерфейс 406 может допускать манипуляцию контентом 416 различными способами; графический интерфейс 408 может допускать получение графического контента; интерфейс 410 ввода может допускать ввод данных, которые могут влиять на мультимедийный контент; и интерфейс 412 запоминающего устройства может допускать управление различными схемами хранения данных. Эти интерфейсы 404, 406, 408, 410 и 412, предоставленные собственным приложением 414, являются просто примерными, а не ограничивающими. Также, в данном документе рассматриваются другие интерфейсы, как понятно при чтении окружающего контекста, раскрытого в настоящем изобретении.
Само приложение 414 может находиться на различных вычислительных устройствах, будь то стационарные или мобильные, PC или переносные компьютеры, PDA и сотовые телефоны и т.д. Приложение 414 может быть осуществлено как полноценная программа или как мини-приложение. Оно может функционировать в одноранговой сетевой архитектуре или в архитектуре клиент-сервер. Как будет понятно при обсуждении со ссылками на Фиг.9 и 10, приложение может находиться в различных средах программного обеспечения, аппаратных средств или микропрограммных средств и может взаимодействовать с другими вычислительными устройствами и/или модулями через сети различных типов.
Фиг.5 основана на представлении по Фиг.4 и раскрывает сценарий модифицируемого хостом мультимедийного контента. Оригинальный мультимедийный контент 416, внедренный 430 в рабочую оболочку 418 контента, как показано на Фиг.4, может модифицироваться через пользовательский интерфейс рабочей оболочки 418 контента (как обсуждалось выше, эта рабочая оболочка 418 может быть любым видом программы, приложения или мини-приложения, на основе графики, текста, видео и т.д.). Таким образом, на Фиг.5, пользователь может манипулировать мультимедийным контентом 416 через пользовательский интерфейс рабочей оболочки 418, и эта манипуляция может передаваться модулю 402 через интерфейс 410 ввода. Далее, новый модифицированный (хостом) мультимедийный контент 500 может быть передан и внедрен в рабочую оболочку 418. Этот новый контент 500 может затем совместно использоваться с другими приложениями, работающими на удаленных (либо физически удаленных, либо логических удаленных) вычислительных устройствах, так что изменения, выполненные на хосте 510, могут отражаться в таких других вычислительных устройствах.
Фиг.6 дополнительно основана на Фиг. 4 и 5, показывая эффекты от мультимедийного контента, модифицируемого удаленным вычислительным устройством. Модифицированный хостом контент 500 на Фиг.5 может дополнительно быть модифицирован удаленными пользователями на других (или таких же) платформах. Согласно Фиг.6 удаленное устройство 602, имеющее первый тип платформы, может изменять модифицированный контент 500, показанный на Фиг.5, так, что изменения могут появляться как удаленно модифицированный мультимедийный контент 600. Эти изменения могут появляться в оболочке 418 контента, предоставленной собственным приложением 414. Конкретно, сетевой интерфейс 404 может пересылать любые изменения от удаленного устройства 602 соответствующему модулю 402, так что этот модуль 402 может затем воспроизводить эти изменения в модифицированном контенте 500, таким образом, получая в результате удаленно модифицированный контент 600.
Собственное приложение 414, которое может быть осуществлено как стандартное приложение или программа и/или мини-приложение, может находиться на любом вычислительном устройстве, желающем передавать и/или совместно использовать данные (или, более широко, взаимодействовать) с другим вычислительным устройством, где такие устройства могут иметь одинаковые или разные платформы. Одним способом выполнить эту задачу для любого приложения, собственного для данного вычислительного устройства, такого как приложение 414, является предоставление некоторых базовых интерфейсов 312 (показанных на Фиг.3), как иллюстрируется такими интерфейсами, как сетевой интерфейс 404, интерфейс 406 управления, графический интерфейс 408, интерфейс 410 ввода и/или интерфейс 412 запоминающего устройства.
Такие интерфейсы могут также расширяться за пределы раскрытого в данном документе набора интерфейсов. Например, как показано на Фиг.6, может быть предоставлен настраиваемый интерфейс 412, где этот интерфейс может предоставлять доступ к различным функциональным возможностям, таким как GPS-данные, данные с камеры и т.д. Таким образом, настраиваемый интерфейс 421 может поддерживать любой тип интерфейса, который позволяет любому модулю связываться с главной специализированной функциональностью вычислительного устройства 510 или устройствами, такими как GPS, Bluetooth, камера или устройства-детекторы движения. Более того, собственное приложение 414 может быть ассоциировано с управляемой средой выполнения кода 400, такой как .NET, так что различные модули или подключаемые приложения могут использоваться для взаимодействия с собственным приложением 414.
Таким образом, в другом аспекте раскрываемого здесь объекта изобретения функциональность собственного приложения 414 может проявлять себя, по меньшей мере, в трех разных архитектурах: (1) собственное приложение, работающее на устройстве (например, консоли - но не только, поскольку любое вычислительное устройство рассматривается в данном документе), может размещать различные сеансы между различными другими приложениями, запущенными на других устройствах; (2) модули, которые связываются с другими модулями на других устройствах, могут делать это через динамически подключаемые библиотеки (DLL), вместо собственного приложения (где DLL может присутствовать на каждом устройстве, связывающемся с другим устройством, и может загружаться из онлайнового источника либо во время первой установки, либо для разрешения проблем управления версиями с другими DLL; следует отметить, кроме того, что может потребоваться специализированная поддержка операционной системы, чтобы гарантировать непрерывность обслуживания в течение перезагрузок модуля, например, поддержка видеочатов в течение загрузок модуля); и (3) операционная система (OS) может управлять собственными приложениями (т.е., она может наблюдать за трафиком данных связи, обсужденном выше, со ссылкой на Фиг.4, 5 и 6). Любая из этих трех настроек согласуется с сущностью изобретения, раскрываемой в данном документе, и может применяться в требуемой форме при необходимости.
Приложение 414 (или, в альтернативе, множество DLL или управляемое посредством OS приложение) может отвечать за поддержку соединений между модулями. Оно может определять свойства таких модулей (например, модуля 402) и то, как модули связываются друг с другом. Как указано ниже, такое соединение может быть в одноранговом контексте или в контексте сервер-клиент. Более того, в архитектуре собственного приложения, например, может происходить миграция хоста, когда хост сеанса мигрирует с одной консоли на другую консоль (например, в сценарии, где первая консоль отказывается от участия в сеансе). Таким образом, преимуществом раскрываемого здесь объекта изобретения является то, что разработчики могут экономить время на управление соединениями между различными модулями на различных консолях, поскольку собственные приложения, работающие на каждой из таких консолей, могут гарантировать связность.
Наконец, Фиг.7 иллюстрирует примерную блок-схему последовательности операций создания, использования, предоставления и т.п. механизмов кроссплатформенного приложения. На этапе 700 вышеупомянутое приложение (например, приложение 414) может быть загружено в вычислительное устройство из удаленного источника. Следует отметить, однако, что оно может быть предварительно загружено в вычислительное устройство. Далее, на этапе 702, после того как приложение загружено, оно может быть установлено, чтобы взаимодействовать с собственными главными вычислительными ресурсами, такими как среда выполнения управляемого кода. После установки оно может использоваться, чтобы выполнять множество функций, которые упомянуты выше, и дополнительные функции, такие как синхронизация данных, обновление в реальном времени и т.п.
Установка этого приложения позволяет вычислительным устройствам с разными платформами связываться и/или совместно использовать данные друг с другом, независимо от того, включают ли в себя такие платформы операционную систему стандартного PC, мобильные операционные системы, закрытые операционные системы (где понятие "закрытой" системы включает в себя специализированный компьютер, такой как игровая консоль, которая позволяет запускать только определенный тип кода, такой как подписанный код) и т.д.
На этапе 704 приложение конфигурируется, чтобы принимать мультимедийный контент от удаленных устройств и совместно использовать такой контент с собственным или вычислительным хост-устройством. Такой мультимедийный контент может затем управляться вычислительной хост-системой, и любые изменения в мультимедийном контенте могут отражаться обратно в удаленной системе, как показано на этапе 706. Дополнительно, приложение, обсужденное выше, может взаимодействовать с модулями, такими как подключаемые программы, приложение или мини-приложения, которые являются локальными по отношению к приложению или которые являются удаленными по отношению к приложению (т.е., находятся на другом вычислительном устройстве, либо физически, либо логически - как, например, в сценарии виртуальной машины). Наконец, на этапе 708, приложение может сохранять открытыми связи между хостом и удаленными устройствами, работающими на различных платформах (например, при совместном использовании данных в блоках 700-706). Как упомянуто, такие связи могут включать в себя передачу текста, речи, видео, звука и могут дополнительно включать в себя любой другой вид электронной связи.
Следует отметить, что в другом аспекте настоящего изобретения, имея подходящее приложение, когда пользователи нажимают какие-либо кнопки контроллера 142(1), 142(2) (как показано на Фиг.8), этот сигнал может быть перехвачен приложением и может управляться им перед передачей по какой-либо команде предназначенному получателю. Таким образом, приложение может управлять потоком команд управления любой консоли, поскольку имеет возможность выбирать различные модули (либо локально, либо по сети). Результирующим эффектом является то, что предоставляется приложение для вычислительной системы, которое позволяет легко совместно использовать данные между закрытыми вычислительными системами.
В одном примерном и неграничивающем аспекте раскрываемого здесь объекта изобретения программные потоки видео и/или чата могут поддерживаться, чтобы обеспечивать видимость того, что видео и/или чат всегда доступны (даже когда происходит перезагрузка приложения). Другие аспекты передаваемых данных, например голосовые данные, могут предоставляться непрерывно в процессе любых загрузок данных (независимо от того, включают ли в себя эти загрузки видео, изображения, игры и т.д.).
III. Примерные вычислительные устройства и сети для онлайнового контента
Обсуждаемые выше вычислительные устройства, либо собственные (например, хосты 510), либо удаленные 602, могут быть осуществлены как игровые консоли, музыкальные проигрыватели, PC и другие такие устройства, имеющие различные, сходные или одинаковые платформы. Также в данном документе рассматриваются карманные устройства, переносные компьютеры, сотовые телефоны и т.д. На Фиг.8 представлена блок-схема, показывающая примерную мультимедийную консоль, которая может использоваться вместе с различными аспектами кроссплафторменных приложений, обсужденных выше. Эта консоль, которая включает в себя ориентированную на игры консоль или PC, может содержать, например, функциональность цифровой обработки звука. Конкретно, на Фиг.8 показана мультимедийная консоль 100 с центральным процессором (CPU) 101, имеющим кэш 102 уровня 1 (L1), кэш 104 уровня 2 (L2) и флэш-ROM (постоянное запоминающее устройство) 106. Кэш 102 уровня 1 и кэш 104 уровня 2 могут временно хранить данные и, следовательно, уменьшают число циклов доступа к памяти, увеличивая таким образом скорость обработки и производительность. Флэш-ROM 106 может хранить выполняемый код, который загружается во время первоначальной фазы процесса загрузки, когда мультимедийная консоль 100 включается. Альтернативно, выполняемый код, который загружается во время фазы первоначальной загрузки, может быть сохранен в устройстве флэш-памяти (не показана). Кроме того, ROM 106 может быть расположено отдельно от CPU 101. Эти запоминающие устройства могут кэшировать частично или полностью вышеупомянутые приложения, программы, мини-приложения, управляемый код и т.д.
Графический процессор (GPU) 108 и видеокодер/видеокодек (кодер/декодер) 104 формируют конвейер обработки видео для высокоскоростной обработки графики высокого разрешения. Данные могут передаваться от графического процессора 108 видеокодеру/видеокодеку 114 через шину. Конвейер видеообработки может выводить данные в A/V (аудио/видео) порт 140 для передачи на телевизор или другое устройство отображения. Контроллер 110 памяти может быть соединен с GPU 108 и CPU 101, чтобы облегчать доступ процессора к различным типам памяти 112, такой как, но не только, RAM (оперативное запоминающее устройство).
Мультимедийная консоль 100 может включать I/O-контроллер 120, контроллер 122 управления системой, аудиопроцессор 123, контроллер 124 сетевого интерфейса, первый USB хост-контроллер 126, второй USB-контроллер 128 и блок 130 ввода/вывода на передней панели, который может предпочтительно быть осуществлен в модуле 118. USB-контроллеры 126 и 128 могут служить в качестве хостов для периферийных контроллеров 142(1)-142(2), беспроводного адаптера 148 и внешнего запоминающего устройства 146 (например, флэш-памяти, внешнего CD/DVD ROM накопителя, съемных носителей и т.д.). Сетевой интерфейс 124 и/или беспроводной адаптер 148 могут предоставлять доступ к сети (например, Интернету, домашней сети и т.д.) и могут быть любыми из широкого множества различных проводных или беспроводных интерфейсных компонентов, включающих в себя Ethernet-карту, модем, Bluetooth-модуль, кабельный модем и т.п.
Системная память 143 может быть предусмотрена для того, чтобы хранить данные приложения, которые загружаются во время процесса первоначальной загрузки. Накопитель 144 на носителях может быть предусмотрен и может содержать DVD/CD-накопитель, накопитель на жестком диске или другой съемный накопитель на носителях и т.д. Накопитель 144 на носителях может быть внутренним или внешним по отношению к мультимедийной консоли 100. Данные приложения могут быть доступны через накопитель 144 на носителях для выполнения, воспроизведения и т.д. посредством мультимедийной консоли 100. Накопитель 144 на носителях может быть соединен с I/O-контроллером 120 через шину, такую как шина Serial ATA или другое высокоскоростное соединение (например, IEEE 1394).
Контроллер 122 управления системой может предоставлять множество служебных функций, связанных с обеспечением доступности мультимедийной консоли 100. Аудиопроцессор 123 и аудиокодек 132 могут формировать соответствующий конвейер аудиообработки с высокоточной, 3D, окружающей и стереообработкой звука согласно аспектам раскрываемого здесь и выше объекта изобретения. Аудиоданные могут передаваться между аудиопроцессором 123 и аудиокодеком 126 через линию связи. Конвейер аудиообработки может выводить данные в A/V-порт 140 для воспроизведения внешним аудиопроигрывателем или устройством, имеющим звуковые возможности.
Блок 130 ввода/вывода на передней панели может поддерживать функциональность кнопки 150 электропитания и кнопки 152 извлечения, также как и любых LED (светоизлучающих диодов) или других индикаторов, показанных на внешней поверхности мультимедийной консоли 100. Модуль 136 подачи электропитания системы может предоставлять энергию компонентам мультимедийной консоли 100. Вентилятор 138 может охлаждать электрические схемы в мультимедийной консоли 100.
CPU 101, GPU 108, контроллер 110 памяти и различные другие компоненты в мультимедийной консоли 100 могут быть взаимосвязаны через одну или более шин, включающих в себя последовательные и параллельные шины, шину памяти, периферийную шину и процессорную или локальную шину с помощью любой из множества шинных архитектур.
Когда мультимедийная консоль 100 включается или перезагружается, данные приложения могут загружаться из системной памяти 143 в память 112 и/или кэши 102, 104 и выполняются в CPU 101. Такие прикладные данные могут включать в себя некоторые из полученных в режиме онлайн данных. Приложение может также представлять графический пользовательский интерфейс, который обеспечивает согласованное восприятие пользователем при навигации по разным типам носителей, доступных в мультимедийной консоли 100. В работе, приложения и/или другие носители, содержащиеся в накопителе 144 на носителях, могут запускаться или воспроизводиться с привода 144 носителя хранения, чтобы предоставлять дополнительные функциональные возможности мультимедийной консоли 100.
Мультимедийная консоль 100 может работать как автономная система посредством простого соединения системы с телевизором или другим устройством отображения. В этом автономном режиме мультимедийная консоль 100 может давать возможность одному или более пользователям взаимодействовать с системой, просматривать фильмы, слушать музыку и т.п. Однако с внедрением широкополосной связи, доступной через сетевой интерфейс 124 или беспроводной адаптер 148, мультимедийная консоль 100 может дополнительно функционировать как участник в более крупном сетевом сообществе. В качестве такого участника она может взаимодействовать с вычислительными устройствами, либо PC, либо серверами, и принимать информацию, которая может, в конечном счете, быть сохранена.
Далее, Фиг.9 иллюстрирует примерное сетевое окружение для объекта изобретения, обсуждаемого со ссылкой на Фиг.1-8. Обсужденная выше игровая консоль 100 может соответствовать любому из вычислительных устройств 153, 156, 157, или она может быть распределена по таким устройствам 153, 156, 157. Она может взаимодействовать с различными другими объектами 155 и запоминающими устройствами 158 через сеть/шину 154 связи, где такие объекты и устройства могут соответствовать другим вычислительным устройствам (либо аппаратным, микропрограммным, либо программным). Кроссплатформенные приложения могут связываться в одноранговых сетях или клиент-серверных сетях, в зависимости от реализации.
В заключение, также следует отметить, что описанные в данном документе различные технологии могут быть реализованы в связи с аппаратными средствами или программным обеспечением или, где необходимо, с их сочетанием. Таким образом, способы и устройство раскрываемого здесь объекта изобретения или его определенных аспектов или частей могут принимать форму программного кода (т.е. инструкций), осуществленных на материальных носителях хранения, таких как гибкие диски, диски CD-ROM, жесткие диски, или как любой другой машиночитаемый носитель хранения, при этом, когда программный код загружается и/или исполняется машиной, такой как компьютер, машина становится устройством для практической реализации объекта настоящего изобретения.
В случае исполнения программного кода на программируемых компьютерах вычислительное устройство, в общем, включает в себя процессор, носитель хранения, считаемый процессором (включая энергозависимую и энергонезависимую память и/или элементы хранения), по меньшей мере, одно устройство ввода и, по меньшей мере, одно устройство вывода. Одна или более программ, которые могут использовать создание и/или реализацию конкретных для домена аспектов моделей программирования настоящего изобретения, например, посредством использования прикладного программного интерфейса (API) обработки данных и т.п., предпочтительно реализованы на высокоуровневом или объектно-ориентированном языке программирования, чтобы обмениваться данными с компьютерной системой. Однако при необходимости программа может быть реализована на языке ассемблера или машины. В любом случае, язык может быть компилируемым или интерпретируемым языком и объединяемым.
Любой язык, используемый раскрытыми в настоящем документе аспектами, может содержать инструкции, чтобы выполнять множество задач. Таким образом, например, собственная рабочая среда/оболочка может поддерживать соединения, требуемые для того, чтобы поддерживать, например, голосовой/видеочат в течение загрузок модуля; собственное приложение может предоставлять модулям информацию о пользователях, присоединившихся к текущему сеансу (таким образом, модули могут всегда знать, в момент, когда они запускаются, о том, кто в настоящее время подключен); как показано на Фиг.4, например, собственное приложение 414 может быть фактической рабочей оболочкой 418 контента (в этом случае, приложение 414 может запускать личные модули, которые отображают информацию и пользовательский интерфейс (UI), относящиеся к текущему сеансу, например, имеющие возможность визуализировать тех, кто еще находится в этом сеансе, и имеющие UI, чтобы фактически манипулировать данными, например, приглашать людей, отключать людей, проявлять эмоции, запускать новый модуль и позволять кому-либо в сеансе запускать новый модуль и т.д.); также могут предоставляться персональные службы, не связанные с сеансом (например, биржевой символ акций, новости, электронная почта и т.д.); и собственное приложение может также предоставлять другие разнообразные услуги модулям, например, специальные возможности, к примеру, GPS-информация от сотового телефона или других присоединенных аппаратных средств, разнообразные данные профиля от пользователей, присоединенных к сеансу, и т.д.
Хотя настоящее изобретение описано в связи с множеством примерных аспектов, которые проиллюстрированы на различных чертежах и обсуждены выше, понятно, что другие похожие аспекты могут быть использованы, или модификации и добавления могут быть выполнены в описанных аспектах для выполнения той же функции настоящего изобретения без отклонения от него. Например, в различных аспектах изобретения процессы и способы были описаны в контексте взаимодействия между и/или среди кроссплатформенных вычислительных устройств. Однако другие эквивалентные механизмы к этим описанным аспектам также рассматриваются как объект изобретения в данном документе. Поэтому настоящее изобретение не должно быть ограничено каким-либо одним аспектом, а скорее должно быть истолковано согласно сущности и объему изобретения в соответствии с прилагаемой формулой изобретения.