СИНХРОНИЗАЦИЯ СОСТОЯНИЙ ПРЕЗЕНТАЦИИ МЕЖДУ МНОЖЕСТВЕННЫМИ ПРИЛОЖЕНИЯМИ
SYNCHRONISING PRESENTATION STATES BETWEEN MULTIPLE APPLICATIONS

Предшествующий уровень техники
[0001] Программы презентации являются компьютерными приложениями, которые отображают информацию, обычно в форме слайдов. Программы презентации могут включать в себя редактор для создания слайдов и систему презентации слайдов для представления слайдов. Примеры программ презентации включают в себя, но не ограничиваются, POWERPOINT от MICROSOFT CORPORATION и KEYNOTE от APPLE INC.
[0002] Программы презентации были разработаны, прежде всего, в качестве инструмента для выдачи презентации «живой» аудитории в той же самой комнате, что и презентатор. Например, компьютер, выполняющий программу презентации, может быть подсоединен к большому устройству отображения или видеопроектору. Все более часто, однако, участники, которые не могут физически присутствовать вживую, могут нуждаться в просмотре презентации. Для этих удаленных участников существующие решения обычно не являются идеальными в свете ограничений обычных программ презентации. В первой опции удаленные участники могут перейти на сайт презентации в реальном времени. Эта опция вводит затраты перехода и ограничивает количество возможных участников только теми, кто может посещать презентацию в реальном времени.
[0003] Во второй опции удаленные участники могут слушать презентацию по телефону, с помощью слайдов или следуя копии слайдов. В этой опции удаленные участники не могут видеть переходы презентатора между слайдами или вживую действия презентатора, такие как использование презентатором лазерного указателя и указатель мыши, или рисунки презентатора в реальном времени и аннотации, сделанные во время презентации. Дополнительно, удаленные участники могут быть не в состоянии рассмотреть анимации и другое мультимедиа. Это, действительно,  правда, если удаленные участники просто имеют бумажную копию слайдов.
[0004] В третьей опции удаленные участники могут использовать существующее приложение вещания, которое может быть трудным в настройке и использовании и может иметь ограниченные функциональные возможности. Во многих случаях вещающее приложение полностью отличается и может быть не полностью совместимым с программой презентации. Например, некоторые из функциональных возможностей, используемых презентатором с помощью программы презентации, не могут быть переданы с помощью вещающего приложения. Дополнительно, если презентатор незнаком с приложением вещания, презентатор может нуждаться в настройке удаленной презентации заранее, таким образом предотвращая любые изменения «на последней минуте» в контенте презентации.
[0005] В связи с этими рассмотрениями и другими ниже представлено настоящее раскрытие.
Сущность изобретения
[0006] Технологии описываются в настоящем описании для синхронизации состояний презентации между множественными приложениями. В частности, предоставляются служба состояния и служба просмотра. Служба состояния может быть работающей для обеспечения состояния презентации, соответствующего фактической презентации, выдаваемой с помощью локального устройства. Служба просмотра может быть работающей для обработки файла презентации для удаленного просмотра с помощью удаленного устройства. С помощью службы состояния и службы просмотра презентация может быть выдана на удаленном устройстве, которая соответствует презентации, отображаемой на локальном устройстве.
[0007] Согласно одному варианту осуществления, представленному в настоящем описании, способ предоставлен для синхронизации состояния презентации между приложением презентации, выполняющимся на устройстве презентатора, и приложением просмотра, выполняющимся на устройстве участника. Состояние презентации принимается от приложения презентации. Приложение презентации может быть работающим для считывания файла презентации и отображения локальной презентации в ответ на считывание файла презентации. Состояние презентации может представлять текущее состояние локальной презентации. Запрос состояния презентации принимается от приложения просмотра. В ответ на прием запроса состояния презентации состояние презентации выдается приложению просмотра. Запрос данных презентации, синхронизированных с состоянием презентации, принимается от приложения просмотра. В ответ на прием запроса данных презентации, синхронизированных с состоянием презентации, файл презентации преобразуется в данные презентации, синхронизированные с состоянием презентации. Данные презентации, синхронизированные с состоянием презентации, выдаются приложению просмотра. Приложение просмотра может быть работающим для считывания данных презентации и отображения удаленной презентации в ответ на считывание данных презентации.
[0008] Должно быть оценено, что описанный выше объект изобретения может также быть реализован как управляемое компьютером устройство, компьютерный процесс, вычислительная система или как продукт изготовления, такой как считываемый компьютером носитель. Эти и другие различные признаки будут очевидны из следующего Подробного Описания и обзора прилагаемых чертежей.
[0009] Этот раздел сущности изобретения предоставлен для введения выбора понятий в упрощенной форме, которые дополнительно описываются ниже в Подробном Описании. Эта Сущность изобретения не предназначается для идентификации ключевых особенностей или существенных признаков заявленного объекта изобретения и при этом не предназначается для использования для ограничения объема заявленного объекта изобретения. Кроме того, заявленный объект изобретения не ограничивается реализацией, которая разрешает любые неудобства, отмеченные в какой-либо части этого описания.
Краткое описание чертежей
[0010] Фиг.1 является диаграммой архитектуры сети, показывающей архитектуру сети, способную к отображению удаленной презентации, синхронизированной с локальной презентацией;
[0011] Фиг.2A-2H являются диаграммами отображения экрана, показывающими иллюстративную реализацию приложения презентации;
[0012] Фиг.3A-3D являются диаграммами отображения экрана, показывающими иллюстративную реализацию приложения просмотра;
[0013] Фиг.4A и 4B являются блок-схемами, показывающими иллюстративные процессы для синхронизации состояния презентации между множественными приложениями; и
[0014] Фиг.5 является диаграммой компьютерной архитектуры, показывающей иллюстративную архитектуру аппаратного обеспечения компьютера для вычислительной системы, способной к реализации вариантов осуществления, представленных в настоящем описании.
Подробное описание
[0015] Нижеследующее подробное описание направлено на способы для синхронизации состояний презентации между компьютерным приложением презентации (в дальнейшем называемым "приложение презентации") и одним или более компьютерным приложением просмотра (в дальнейшем называемым "приложением просмотра"). С помощью использования способов и понятий, представленных в настоящем описании, презентатор может использовать приложение презентации для вещания презентации с помощью службы просмотра, которая работает для обработки (преобразования) презентации для удаленного просмотра с помощью приложения просмотра.
[0016] Поскольку презентатор выдает презентацию, приложение презентации может обновить службу состояния для отражения изменений в состоянии презентации. Удаленный участник может подсоединить приложение просмотра к службе просмотра и службе состояния для просмотра презентации. В одном варианте осуществления приложение просмотра запрашивает из службы состояния состояние презентации. Приложение просмотра затем запрашивает из службы просмотра данные презентации, соответствующие состоянию презентации. После приема данных презентации от службы просмотра приложение просмотра отображает данные презентации для участника. В другом варианте осуществления, в то время как участник просматривает презентацию, служба просмотра периодически извлекает состояние презентации из службы состояния. Служба просмотра затем синхронизирует свою отрисовку (воспроизведение) презентации с фактической презентацией, выдаваемой презентатором, как определено состоянием презентации.
[0017] В то время как объект изобретения, описанный в настоящем описании, представляется в общем контексте программных модулей, которые выполняются вместе с выполнением операционной системы и программ приложений в системе компьютера, специалисты в данной области техники распознают, что другие реализации могут быть выполнены в комбинации с другими типами программных модулей. В общем, программные модули включают в себя подпрограммы, программы, компоненты, структуры данных и другие типы структур, которые выполняют конкретные задачи или реализуют конкретные абстрактные типы данных. Кроме того, специалисты в данной области техники распознают, что объект изобретения, описанный в настоящем описании, может быть осуществлен с другими конфигурациями компьютерной системы, включающими в себя переносные устройства, мультипроцессорные системы, основанную на микропроцессоре, или программируемую бытовую электронику, мини-компьютеры, универсальные компьютеры и т.п.
[0018] В нижеследующем подробном описании сделаны ссылки на сопроводительные чертежи, которые формируют часть настоящего описания и которые показаны посредством иллюстрации конкретных вариантов осуществления или примеров. Ссылаясь теперь на чертежи, на которых аналогичные ссылочные позиции представляют аналогичные элементы на нескольких чертежах, описаны вычислительная система и способ для обеспечения удаленной презентации. В частности, фиг.1 иллюстрирует упрощенную архитектуру 100 сети, включающую в себя серверный компьютер 102, устройство 104 презентатора и устройство 106 участника, подсоединенные с помощью подходящей сети связи (не показанной). Сеть может быть любой подходящей сетью, такой как локальная вычислительная сеть ("ЛВС") или Интернет. В одном варианте осуществления сетью может быть частная сеть, такая как сеть предприятия. Хотя только одно устройство 106 участника иллюстрировано на фиг.1, архитектура 100 сети может включать в себя множественные устройства участника, подсоединенные к серверному компьютеру 102 в любой подходящей конфигурации сети.
[0019] Устройство 104 презентатора включает в себя приложение 108 презентации и файл 110 презентации. Файл 110 презентации хранит презентацию (например, последовательность слайдов) в формате, считываемом приложением 108 презентации. Приложение 108 презентации является работающим для считывания файла 110 презентации и отображения соответствующей презентации. Устройство 106 участника сконфигурировано для хранения приложения 112 просмотра для удаленного просмотра презентации. В одном варианте осуществления приложение 108 презентации является программой презентации и приложение 112 просмотра является web-браузером. В других вариантах осуществления приложение 108 презентации и приложение 112 просмотра - каждое может быть настольной программой презентации, мобильной программой презентации или web-браузером.
[0020] Серверный компьютер 102 включает в себя службу 114 просмотра и службу 116 состояния. Служба 114 просмотра является работающей для перевода файла 110 презентации в формат, позволяющий приложению 112 просмотра отображать презентацию на устройстве 106 участника. Например, служба 114 просмотра может быть работающей для преобразования файла 110 презентации из формата программы презентации в формат, считываемый web-браузером. Как используется в настоящем описании, термин "данные презентации" относится к выводу (выходному сигналу) службы 114 просмотра после преобразования, по меньшей мере, части файла 110 презентации. Приложение 112 просмотра может получить доступ к данным презентации, созданным службой 114 просмотра, с помощью унифицированного указателя информационного ресурса ("URL").
[0021] Хотя только одна служба 114 просмотра иллюстрирована на фиг.1, должно быть оценено, что серверный компьютер 102 может включать в себя любое подходящее количество служб просмотра. В частности, множественные службы просмотра могут быть использованы для преобразования файла презентации в различные форматы, считываемые различными приложениями просмотра. Например, в то время как одна служба просмотра является работающей для преобразования файла презентации в формат, считываемый web-браузером, другая служба просмотра может быть работающей для преобразования файла презентации в формат, считываемый мобильной программой презентации, выполняющейся на мобильном устройстве. Дополнительно, хотя только одно приложение 108 презентации, один файл 110 презентации и одно устройство 104 презентатора показываются, должно быть дополнительно оценено, что любое количество приложений презентации, файлов презентации и устройств презентатора может быть использовано аналогично.
[0022] Служба 116 состояния является работающей для хранения состояния 118 презентации, которая отражает текущее состояние презентации, отображаемой с помощью одного или более приложений презентации, таких как приложение 108 презентации. Служба 116 состояния также хранит другую релевантную информацию о презентации, такую как идентификатор ("ID") сеанса, ID для файла 110 презентации, ID для презентатора и список участников, просматривающих презентацию. В одном варианте осуществления приложение 108 презентации обновляет состояние 118 презентации каждый раз, когда изменяется состояние презентации. Примеры изменения состояния презентации включают в себя, но не ограничиваются, переход от одного слайда к другому, цвет, форму и движение лазерного указателя, цвет, форму и движение указателя мыши и вывод/отображение аудио, видео, анимаций и другой мультимедийной информации. Примеры состояний 118 презентации включают в себя, но не ограничиваются, текущий номер слайда, текущий этап анимации и релевантную информацию о лазерном указателе или указателе мыши (например, недавние координаты, пересеченные указателем, цвет указателя, форма указателя). ID сеанса может идентифицировать конкретную показываемую презентацию, если множественные презентации выданы. Например, множественные презентации могут быть обеспечены единственным презентатором или множественными презентаторами, управляющими одним или более приложениями презентации на одном или более устройствах презентатора.
[0023] В одном варианте осуществления приложение 112 просмотра связывается и со службой 114 просмотра, и со службой 116 состояния. В частности, приложение 112 просмотра может запрашивать из службы 116 состояния состояние 118 презентации. Приложение 112 просмотра может затем извлечь из службы 114 просмотра данные презентации, соответствующие состоянию 118 презентации. Таким образом, приложение 112 просмотра может извлекать релевантные данные презентации, синхронизированные с презентацией, отображаемой с помощью устройства 104 презентатора. После приема данных презентации приложение 112 просмотра может считывать данные презентации и отображать соответствующую удаленную презентацию.
[0024] Например, состояние 118 презентации может указывать, что приложение 108 презентации в настоящее время отображает слайд номер пять, и что изображение лазерного указателя показано в координатах (10, 20). В этом случае состояние 118 презентации может извлекать данные презентации, соответствующие слайду номер пять и изображению лазерного указателя в координатах (10, 20). Таким образом, приложение 108 презентации отображает слайд номер пять и изображение лазерного указателя в координатах (10, 20), как переведено службой просмотра.
[0025] В другом варианте осуществления приложение 112 просмотра связывается со службой 114 просмотра, которая связывается со службой 116 состояния. В частности, служба 114 просмотра может извлекать состояние 118 презентации из службы 116 состояния через периодические интервалы. После извлечения состояния 118 презентации из службы 116 состояния служба 114 просмотра может синхронизировать свою отрисовку (воспроизведение) презентации с фактической презентацией, выдаваемой презентатором, как заданную состоянием 118 презентации. Таким образом, презентация, отображенная с помощью устройства 106 участника, может соответствовать или наиболее близко соответствовать презентации, отображенной с помощью устройства 104 презентатора, даже если приложение 112 просмотра полностью отличается от приложения 108 презентации и/или оно несовместимо с файлом 110 презентации.
[0026] В иллюстративной реализации архитектуры 100 сети презентатор, работающий на устройстве 104 презентатора, открывает файл 110 презентации. После открытия файла 110 презентации презентатор может выбирать опцию в приложении 108 презентации для вещания презентации, ассоциированной с файлом 110 презентации. Презентатор также выбирает с помощью приложения 108 презентации серверный компьютер, такой как серверный компьютер 102, для хостирования презентации. Приложение 108 презентации затем загружает файл 110 презентации на серверный компьютер 102, как обозначено пунктиром на фиг.1.
[0027] Служба 114 просмотра генерирует URL, позволяющий приложению 112 просмотра удаленно получать доступ к презентации, которая преобразуется службой 114 просмотра. Презентатор может затем открыть первое электронное ("электронную почту") приложение 120A или другое подходящее для связи приложение (например, приложение чата, приложение передачи текстовых сообщений) для отправки URL участнику, работающему на устройстве 106 участника. Участник может принять электронную почту, содержащую URL, во втором приложении 120B электронной почты. После приема электронной почты во втором приложении 120B электронной почты участник может открыть URL с помощью приложения 112 просмотра для получения доступа к презентации, преобразованной службой 114 просмотра.
[0028] В некоторый момент после того, как презентатор передает URL участнику, презентатор может инициировать презентацию. Когда презентатор инициирует презентацию, приложение 108 презентации передает службе 114 просмотра индикацию того, что презентация началась. Начало презентации может представлять начальное состояние презентации. Во время работы презентации презентатор может перейти от начального состояния презентации к дополнительным состояниям презентации, таким как состояние 118 презентации, посредством перехода между слайдами, воспроизведения различных внедренных мультимедийных данных и посредством использования лазерного указателя или указателя мыши для указания участникам конкретных частей слайдов. Во время презентации приложение 108 презентации может обновлять состояние 118 презентации, когда состояние презентации изменяется.
[0029] В одном варианте осуществления приложение 112 просмотра извлекает состояние 118 презентации из службы 116 состояния. Приложение 112 просмотра может затем извлекать данные презентации, соответствующие службе 116 состояния. В другом варианте осуществления служба 114 просмотра периодически извлекает состояние 118 презентации из службы 116 состояния. Служба 114 просмотра может затем синхронизировать свою отрисовку презентации с фактической презентацией, выданной презентатором, как задано состоянием 118 презентации. В обоих вариантах осуществления презентация, показанная участнику с помощью устройства 106 участника, является по меньшей мере по существу подобной презентации, отображенной для участников «вживую» с помощью устройства 104 презентатора.
[0030] Ссылаясь теперь на фиг.2A-2H, иллюстративная реализация приложения 108 презентации показывается в форме множества диаграмм 200A-200Н отображения экрана. В частности, диаграммы 200A-200Н отображения экрана показывают иллюстративную последовательность действий презентатора, посредством которых презентатор может вещать заданную презентацию для участника, для получения доступа с помощью приложения 112 просмотра. Должно быть оценено, что фиг.2A-2H просто показывают один пример приложения 108 презентации и не предназначаются, чтобы быть ограничивающими.
[0031] Фиг.2A показывает иллюстративную диаграмму 200A отображения экрана приложения 108 презентации до того, как презентатор инициирует вещание презентации. На фиг.2A презентатор ранее открыл файл 110 презентации с помощью приложения 108 презентации. В одном варианте осуществления приложение 108 презентации включает в себя кнопку 202 вещания презентации или другой подходящий элемент интерфейса. Презентатор может нажать кнопку 202 вещания презентации, используя мышь или другое подходящее устройство ввода, вызывая переход от диаграммы 200A отображения экрана к диаграмме 200B отображения экрана.
[0032] Фиг.2B показывает иллюстративную диаграмму 200B отображения экрана приложения 108 презентации после того, как презентатор нажимает кнопку 202 вещания презентации. После приема выбора кнопки 202 вещания презентации приложение 108 презентации отображает интерфейс 204 вещания, с которым презентатор может выбрать серверный компьютер, такой как серверный компьютер 102, для хостирования презентации. Как иллюстрировано на фиг.2B, интерфейс 204 вещания включает в себя меню 206 выбора сервера, реализованное как раскрывающийся список. Другие типы меню выбора могут быть использованы аналогично. Как только соответствующий серверный компьютер был выбран из меню 206 выбора сервера, диаграмма 200B отображения экрана переходит к диаграмме 200C отображения экрана.
[0033] Фиг.2C показывает иллюстративную диаграмму 200C отображения экрана приложения 108 презентации после того, как презентатор выбирает серверный компьютер из меню 206 выбора сервера. После приема выбора серверного компьютера приложение 108 презентации отображает интерфейс 208 аутентификации, в котором презентатор может вводить идентификатор ("ID") логина (регистрации) и пароль для получения доступа к выбранному серверному компьютеру. Должно быть оценено, что этот выбор других серверов может требовать или может не требовать аутентификации. После ввода ID логина и пароля презентатор может нажать кнопку 210 подтверждения, вызывая переход от диаграммы 200C отображения экрана назад к диаграмме 200B отображения экрана, как показано на фиг.2B. Ссылаясь снова на диаграмму 200B отображения экрана на фиг.2B, презентатор может нажать кнопку 212 загрузки презентации, вызывая переход от диаграммы 200C отображения экрана к диаграмме 200D отображения экрана.
[0034] Фиг.2D показывает иллюстративную диаграмму 200D отображения экрана приложения 108 презентации после того, как презентатор нажимает кнопку 212 загрузки презентации. После приема выбора кнопки 212 загрузки презентации приложение 108 презентации отображает в интерфейсе 204 вещания панель 214 статуса загрузки. Панель 214 статуса загрузки является работающей для отображения размера файла 110 презентации, который был загружен из устройства 104 презентатора на серверный компьютер 102. Как иллюстрировано на фиг.2D, панель 214 статуса загрузки достигает 100%, указывая, что файл 110 презентации был полностью загружен на серверный компьютер 102. Как только файл 110 презентации загружен на серверный компьютер 102, диаграмма 200D отображения экрана переходит к диаграмме 200E отображения экрана.
[0035] Фиг.2E показывает иллюстративную диаграмму 200E отображения экрана приложения 108 презентации после того, как файл 110 презентации был загружен на серверный компьютер 102. После загрузки файла 110 презентации на серверный компьютер 102 приложение 108 презентации создает URL 216 для получения удаленного доступа к презентации, которая воспроизводится службой 114 просмотра. Как иллюстрировано на фиг.2E, приложение 108 презентации отображает URL 216 в интерфейсе 204 вещания. Дополнительно, приложение 108 презентации включает в себя опции 218 вызова электронной почты для открытия первого приложения 120A электронной почты и разрешения презентатору послать по электронной почте URL 216 к соответствующим участникам. В других вариантах осуществления приложение 108 презентации может включать в себя другие подходящие варианты, такие как опция открытия интерфейса чата или интерфейса передачи текстовых сообщений для совместного использования URL 216. В примере, показанном на фиг.2E, презентатор выбирает опцию 218 вызова электронной почты, вызывая переход от диаграммы 200E отображения экрана к диаграмме 200F отображения экрана.
[0036] Фиг.2F показывает иллюстративную диаграмму 200F отображения экрана приложения 108 презентации после того, как презентатор выбирает опцию 218 вызова электронной почты. После приема выбора опции 218 вызова электронной почты приложение 108 презентации инициирует первое приложение 120A электронной почты, которое отображает интерфейс 220 посылки электронной почты для направления URL 216 к соответствующим участникам. В одном варианте осуществления интерфейс 220 посылки электронной почты вставляет строку 222 объекта и URL 216 в электронную почту 224. В этом случае презентатор может ввести адреса 226 электронной почты соответствующих участников и нажать кнопку 228 посылки для посылки электронной почты 224. После посылки электронной почты 224 диаграмма 200F отображения экрана переходит назад к экрану отображения диаграммы 200E на фиг.2E. Ссылаясь снова на диаграмму 200E отображения экрана согласно фиг.2E, презентатор может нажать кнопку 230 начала презентации, вызывая переход от диаграммы 200E отображения экрана к диаграмме 200G отображения экрана.
[0037] Фиг.2G показывает иллюстративную диаграмму 200G отображения экрана приложения 108 презентации после того, как презентатор нажимает кнопку 230 начала презентации. После приема выбора кнопки 230 начала презентации приложение 108 презентации может отобразить первый слайд 232. Дополнительно, приложение 108 презентации передает службе 114 просмотра индикации, что презентация началась. Поскольку презентатор выдает презентацию с помощью приложения 108 презентации, приложение 108 презентации может также обновить состояние 118 презентации в службе 116 состояния. В одном варианте осуществления приложение 108 презентации обновляет состояние 118 презентации каждый раз, когда состояние презентации изменяется. В другом варианте осуществления приложение 108 презентации может обновить состояние 118 презентации через периодические интервалы.
[0038] После того как презентатор закончил выдавать презентацию, презентатор может нажать кнопку 234 вещания завершения, вызывая переход от диаграммы 200G отображения экрана к диаграмме 200H отображения экрана. Фиг.2H показывает иллюстративную диаграмму 200H отображения экрана приложения 108 презентации после того, как презентатор нажимает кнопку 234 вещания завершения. После приема выбора кнопки 234 вещания завершения приложение 108 презентации отображает интерфейс 236 подтверждения, позволяя презентатору подтверждать, хочет ли он или она прекратить вещание презентации. Интерфейс 236 подтверждения включает в себя кнопку 238 «нет» и кнопку 240 «да». Презентатор может нажать кнопку 238 «нет», чтобы указать на то, что она не хочет прекращать вещание презентации. Альтернативно, презентатор может нажать кнопку 240 «да» для указания, что она хочет прекратить вещание презентации. Если презентатор отпускает кнопку 238 «нет», то презентация продолжается, как показано на диаграмме 200G отображения экрана на фиг.2G. Если презентатор отпускает кнопку 240 «да», то вещание презентации прекращается.
[0039] Ссылаясь теперь на фиг.3A-3D, иллюстративные реализации приложения 112 просмотра и второе приложение 120B электронной почты показаны в форме множества 300A-300D диаграмм отображения экрана. В частности, диаграммы 300A-300D отображения экрана показывают иллюстративную последовательность действий участника, посредством которых участник может получать доступ к вещаемой презентации с помощью приложения 112 просмотра. Должно быть оценено, что фиг.3A-3D просто показывают один пример приложения 112 просмотра и второго приложения 120B электронной почты и не предназначаются, чтобы быть ограничивающими.
[0040] Фиг.3A показывает иллюстративную диаграмму 300 отображения экрана второго приложения 120B электронной почты. В частности, диаграмма 300A отображения экрана показывает электронную почту 224, включающую в себя URL 216 к презентации, посланной презентатором на диаграмме 200E отображения экрана на фиг.2E. В примере на фиг.3A участник выбирает URL 216, используя мышь или другое подходящее устройство ввода, таким образом вызывая переход от диаграммы 300A отображения экрана к диаграмме 300B отображения экрана.
[0041] Фиг.3B показывает иллюстративную диаграмму 300B отображения экрана приложения 112 просмотра после того, как участник выбирает URL 216. Как иллюстрировано на диаграмме 300B отображения экрана, приложение 112 просмотра инициирует, в ответ на выбор участника, URL 216. Приложение 112 просмотра затем отображает статус 302 соединения. Если приложение 112 просмотра принимает индикацию, что презентация началась, то приложение 112 просмотра может немедленно получить доступ к презентации. Однако, если приложение 112 просмотра не приняло индикацию, что презентация началась, то приложение 112 просмотра может отобразить статус 302 соединения, пока индикация не будет принята и к презентации можно будет получить доступ. Как только приложение 112 просмотра принимает индикацию, что презентация началась, диаграмма 300B отображения экрана переходит к диаграмме 300C отображения экрана.
[0042] Фиг.3C показывает иллюстративную диаграмму 300C отображения экрана приложения 112 просмотра после того, как приложение 112 просмотра получает доступ к презентации. В частности, приложение 112 просмотра отображает презентацию, как воспроизводится службой 114 просмотра. Как иллюстрировано на фиг.3C, приложение 112 просмотра отображает первый слайд 232, который также отображен на диаграмме 200G отображении экрана на фиг.2G. В одном варианте осуществления приложение 112 просмотра извлекает состояние 118 презентации из службы 116 состояния. Приложение 112 просмотра затем извлекает из службы 114 просмотра и отображает данные презентации, соответствующие состоянию 118 презентации. В другом варианте осуществления служба 114 просмотра может извлечь, через периодические интервалы, состояние 118 презентации из службы 116 состояния. Служба 114 просмотра может синхронизировать свою отрисовку презентации с фактической презентацией, выдаваемой презентатором, как определено состоянием 118 презентации.
[0043] Приложение 112 просмотра продолжает отображать презентацию, пока презентатор не прекратит вещание, нажав кнопку 240 «да» на фиг.2H. Когда презентатор прекращает вещание презентации, диаграмма 300C отображения экрана переходит к диаграмме 300D отображения экрана. Фиг.3D показывает иллюстративную диаграмму 300C отображения экрана приложения 112 просмотра после прекращения вещания презентации презентатором. Как показано на фиг.3D, служба 114 просмотра воспроизводит статус 304 прекращения, указывающий, что вещание презентации было прекращено.
[0044] Ссылаясь теперь на фиг.4A и 4B, дополнительные подробности будут представлены относительно вариантов осуществления, представленных в настоящем описании, для выдачи окна контента с семантическим масштабированием. В частности, фиг.4A является блок-схемой, иллюстрирующей один способ для синхронизации состояний презентации между множественными приложениями, в которых служба 114 просмотра сконфигурирована для извлечения состояния 118 презентации из службы 116 состояния и для синхронизации удаленной презентации с локальной презентацией согласно состоянию 118 презентации. Фиг.4B является блок-схемой, иллюстрирующей другой способ синхронизации состояний презентации между множественными приложениями, в котором приложение 112 просмотра сконфигурировано для извлечения состояния 118 презентации из службы 116 состояния и синхронизации удаленной презентации с локальной презентацией, согласно состоянию 118 презентации.
[0045] Должно быть оценено, что логические операции, описанные в настоящем описании, реализовываются (1) как последовательность реализуемых компьютером действий или программных модулей, работающих в вычислительной системе, и/или (2) как соединенные между собой логические схемы или схемные модули в вычислительной системе. Реализация является вопросом выбора, зависящим от производительности и других требований вычислительной системы. Соответственно, логические операции, описанные в настоящем описании, называются по-разному - операциями состояний, структурными устройствами, действиями или модулями. Эти операции, структурные устройства, действия и модули могут быть реализованы в программном обеспечении, в программно-аппаратном обеспечении в цифровой логике специального назначения и любой их комбинации. Должно быть оценено, что больше или меньше операций могут быть выполнены, а затем показаны на чертежах и описаны в настоящем описании. Эти операции могут также быть выполнены в отличном порядке в отличие от того, как они описаны в настоящем описании.
[0046] Со ссылками на фиг.4A, подпрограмма 400A начинается на операции 402, где служба 114 просмотра принимает файл 110 презентации от приложения 108 презентации, выполняющимся на устройстве 104 презентатора. Приложение 108 презентации может быть любым подходящим приложением, способным к считыванию файла 110 презентации и отображению соответствующей локальной презентации с помощью устройства 104 презентации. Файл 110 презентации может быть или может не быть считываемым посредством приложения 112 просмотра, выполняющимся на устройстве 106 участника. Например, файл 110 презентации может быть файлом, генерируемым в соответствии с программой презентации, такой как POWERPOINT от MICROSOFT CORPORATION или KEYNOTE от APPLE INC. Если приложение 112 просмотра является web-браузером, например, приложение 112 просмотра может быть не в состоянии считать файл 110 презентации из-за ограниченных функциональных возможностей web-браузера для считывания файла POWERPOINT или KEYNOTE. Как только служба 116 состояния принимает файл 110 презентации от устройства 104 презентатора, подпрограмма 400A переходит к операции 404.
[0047] На операции 404 в то время как презентатор представляет локальную презентацию, служба 116 состояния принимает состояние 118 презентации от приложения 108 презентации. В частности, приложение 108 презентации может обновлять состояние 118 презентации, когда состояние локальной презентации изменяется. Примеры состояния 118 презентации включают в себя, но не ограничиваются ими, текущий номер слайда, текущий этап анимации и релевантную информацию о лазерном указателе или указателе мыши (например, недавние координаты, пересеченные указателем, цвет указателя, форма указателя).
[0048] Подпрограмма 400A затем переходит к операции 406, где служба 114 просмотра принимает состояние 118 презентации от службы 116 состояния и преобразовывает файл 110 презентации в данные презентации, синхронизированные с состоянием 118 презентации. Подпрограмма 400A затем переходит к операции 408, где служба 114 просмотра выдает данные презентации приложению 112 просмотра. После приема данных презентации приложение 112 просмотра считывает данные презентации и показывает соответствующую удаленную презентацию с помощью устройства 106 участника. Служба 114 просмотра может инициировать выдачу данных презентации приложению 112 просмотра в ответ на прием от приложения 108 презентации индикации, что локальная презентация началась. Служба 114 просмотра может также прекратить выдачу данных презентации приложению 112 просмотра в ответ на прием от приложения 108 презентации индикации, что локальная презентация закончилась. Хотя, не так проиллюстрировано на фиг.4A, одна или более операций 402-408 могут быть повторены, пока локальная презентация не завершилась.
[0049] В одном примере состояние презентации может быть текущим слайдом, отображаемым в локальной презентации. В этом примере служба 114 просмотра может синхронизировать текущий слайд удаленной презентации с текущим слайдом локальной презентации, как определено состоянием презентации. В другом примере состояние 118 презентации может быть текущим видеокадром видео, текущим аудиокадром аудиозаписи, видеозакладкой, которая может запускать анимации или текущий этап анимации в анимации, отображаемой в локальной презентации. В этом примере служба 114 просмотра может синхронизировать текущий видеокадр видео, текущий аудиокадр аудиозаписи, видеозакладку, которая может запускать анимации или текущий этап анимации в анимации, отображенной в удаленной презентации с текущим видеокадром видео, текущим аудиокадром аудиозаписи, видеозакладкой, которая может запускать анимации или текущий этап анимации в анимации, отображаемой в локальной презентации, как определено состоянием презентации. В еще одном примере состояние 118 презентации может включать в себя недавние координаты мыши или лазерного указателя, взаимодействующего с локальной презентацией. В этом примере служба 114 просмотра может отображать указатель мыши или лазерный указатель, взаимодействующий с удаленным местоположением, в соответствии с недавними координатами, определенными состоянием презентации.
[0050] Со ссылками на фиг.4B подпрограмма 400B начинается на операции 410, где служба 114 просмотра принимает файл 110 презентации от приложения 108 презентации, выполняющегося на устройстве 104 презентатора. Подпрограмма 400B затем переходит к операции 412, где служба 116 состояния принимает состояние 118 презентации от приложения 108 презентации. Как только служба 114 просмотра приняла файл 110 презентации и служба 116 состояния приняла состояние 118 презентации, подпрограмма 400B переходит к операции 414.
[0051] На операции 414 служба 116 состояния принимает запрос о состоянии 118 презентации от приложения 112 просмотра. Подпрограмма 400B затем переходит к операции 416, где, в ответ на прием запроса о состоянии 118 презентации, служба 116 состояния выдает состояние 118 презентации, приложению 112 просмотра. Подпрограмма 400B затем переходит к операции 418, где служба 114 просмотра принимает запрос данных презентации, синхронизированных с состоянием 118 презентации. После приема запроса данных презентации, синхронизированных с состоянием 118 презентации, подпрограмма 400B переходит к операции 420.
[0052] Во время операции 420 в ответ на прием запроса данных презентации служба 114 просмотра преобразовывает файл 110 презентации в данные презентации, синхронизированные с состоянием 118 презентации. Подпрограмма 400B затем переходит к операции 422, где служба 114 просмотра выдает данные презентации приложению 112 просмотра. После приема данных презентации от службы 114 просмотра служба 114 просмотра может считывать данные презентации и отображать соответствующую удаленную презентацию. Хотя не так проиллюстрировано на фиг.4B, одна или более операций 410-422 могут быть повторены, пока локальная презентация не закончится.
[0053] Со ссылками теперь на фиг.5 диаграмма примерной архитектуры компьютера показывает иллюстрированный компьютер 500. Примеры компьютера 500 могут включать в себя серверный компьютер 102, устройство 104 презентатора и устройство 106 участника. Компьютер 500 включает в себя блок 502 обработки ("CPU"), системную память 504 и системную шину 506, которая соединяет память 504 с центральным процессором 502. Компьютер 500 дополнительно включает в себя устройство 512 массовой памяти для хранения одного или более программных модулей 514 и одну или более баз данных 516. Примеры программных модулей 514 могут включать в себя службу 114 просмотра и службу 116 состояния. Подпрограмма 400 может также быть реализована в программном модуле и реализована компьютером 500. Устройство 512 массовой памяти подсоединено к CPU 502 с помощью контроллера устройств массовой памяти (не показан), подсоединенного к шине 506. Устройство 512 массовой памяти и его ассоциированные считываемые компьютером носители обеспечивают энергонезависимую память для компьютера 500. Хотя описание считываемых компьютером носителей, содержащееся в настоящем описании, относится к устройству массовой памяти, такому как накопитель на жестком диске или CD-ROM, должно быть оценено специалистами в данной области техники, что считываемые компьютером носители могут быть любыми доступными компьютерными носителями данных, к которым возможно получить доступ посредством компьютера 500.
[0054] Посредством примера, и не ограничиваясь им, считываемые компьютером носители могут включать в себя энергозависимые и энергонезависимые, сменные и несменные носители, реализованные любым способом или технологией для хранения информации, такой как считываемые компьютером команды, структуры данных, программные модули или другие данные. Например, считываемый компьютером носитель включает в себя, и не ограничиваясь перечисленным, RAM, ROM, EPROM, EEPROM, флэш-память или другую технологию твердотельной памяти, CD-ROM, цифровые универсальные диски ("DVD"), HD-DVD, BLU-RAY или другие оптические устройства хранения, магнитные кассеты, устройства на магнитной ленте, устройство магнитного дискового хранения или другие устройства хранения магнитным способом или любой другой носитель, который может использоваться для хранения желаемой информации и к которому возможно получить доступ посредством компьютера 500.
[0055] Согласно различным вариантам осуществления, компьютер 500 может работать в сетевой среде, используя логические соединения с удаленными компьютерами с помощью сети 518. Компьютер 500 может соединяться с сетью 518 с помощью блока 510 интерфейса сети, подсоединенного к шине 506. Должно быть оценено, что блок 510 интерфейса сети может также использоваться для соединения с другими типами сетей и удаленными компьютерными системами. Компьютер 500 может также включать в себя контроллер 508 ввода/вывода для приема и обработки ввода от множества устройств ввода (не показаны), включающих в себя клавиатуру, мышь, микрофон и игровой контроллер. Аналогично, контроллер 508 ввода/вывода может предоставлять вывод на дисплей или другой тип устройства вывода (не показанный).
[0056] На основании предшествующего описания должно быть оценено, что способы для синхронизации состояний презентации между множественными приложениями обеспечиваются в настоящем описании. Хотя объект изобретения, представленный в настоящем описании, был описан на конкретном языке для структурных компьютерных признаков, способов действий и считываемых компьютером носителей, должно быть понятно, что изобретение, определенное в прилагаемой формуле изобретения, необязательно ограничивается конкретными признаками, действиями или носителями, описанными в настоящем описании. Вместо этого конкретные признаки, действия и носители раскрываются в качестве примерных форм реализации формулы изобретения. Объект изобретения, описанный выше, дается только для иллюстрации и не должен быть рассмотрен в качестве ограничивающего. Различные модификации и изменения могут быть применимы к объекту изобретения, описанному в настоящем описании, без следования примерным вариантам осуществления и приложениям, иллюстрированным и описанным, и не отступая от сущности и объема настоящего изобретения, которое сформулировано в нижеследующей формуле изобретения.