The current invention relates generally to multimedia presentation systems, and more particularly to peer-to-peer gesture based modular presentation systems.
Presenting slides is an integral part of many meetings and other events that involve communication. Currently, the standard set-up is to use a laptop computer or meeting room computer to show Microsoft Powerpoint slides or web-based slides in a single video projector.
There are several disadvantages inherent to the standard slide presentation scenario. First, as a presenter progresses through a series of slides, the slide previously displayed on a screen is completely replaced. An audience may not view the previous slide that relates to the slide currently displayed. Second, there is generally no interaction from audience members regarding slide content. Audience members may discuss slides with a presenter, but generally may not add content to a slide as it is being presented.
Some attempts have been made by prior art systems to improve on the traditional slide show. One simple system uses multiple displays to show the same output of a single computer. Current presentation systems typically use a laptop with a video output signal that shows a copy of the laptop's display on a video projector or a large wall display. In the Unix operating system, a display can be set to view a particular workstation that can be located anywhere on the network. More recently, popular technology such as VNC (Virtual Network Computing) and Microsoft Terminal Services Client allow one computer's display and keyboard/mouse input to control another computer.
In other prior art attempts, several displays have been tiled together to create a large high resolution display. An example of this work is disclosed in the Princeton Scalable Display Wall, Li, Kai, et al, “Early experiences and challenges in building and using a scalable display wall system”, IEEE Computer Graphics and Applications, vol. 20 (4), pp 671-680, 2000. Since the resulting tiled display is intended to behave like a single large display, the spirit of such systems does not provide much improvement over existing systems.
More sophisticated systems allow separate display units to interact with each other. ConnecTables, as disclosed in “ConnecTables: Dynamic coupling of displays for the flexible creation of shared workspaces”, Tandler, P. et al., Proceedings of UIST '01. ACM, New York, supports the dynamic coupling of displays for small tables having a display on top. This work has major limitations in that two tables must be physically moved together in order for them to be coupled. Additionally, only two displays can be connected at a time, and they must be connected in a front-edge-to-front-edge configuration. The two displays can either form a single surface or remain as two separate surfaces. When connected, the two users can work on computer applications and share data.
Prior art systems have improved over the standard slide presentation methods, but there is still a need for an improved presentation system. What is needed is a media presentation system that overcomes the limitations of the prior art.
A peer-to-peer modular presentation system (MPS) is disclosed for providing improved presentations. The system includes a plurality of displays. The plurality of displays may include static or mobile displays. In one embodiment, the static displays are screens suitable for displaying content, such as video monitors, plasma displays, overhead projectors, or other display mechanisms. The mobile displays may be any type of mobile display suitable for presenting content as displayed in the static displays, including laptop computers, notebook PCs, PDAs, cell phones, and other mobile devices having or associated with a display. The displays communicate with each other within a peer-to-peer type system in which there is no central server. In one embodiment, each display is aware of the displays immediately surrounding it or of the displays in a remote site during a teleconference. In an embodiment, a presenter may move content between displays by generating a gesture using an input device. The gesture input will initiate new content to be displayed in one display and initiate propagation of content along a direction in a neighboring display. Content may be fed to a particular display through a stack or other source associated with the display.
A peer-to-peer modular presentation system (MPS) is disclosed for providing improved presentations. The system includes a plurality of displays. The plurality of displays may include static or mobile displays. In one embodiment, the static displays are screens suitable for displaying content, such as video monitors, plasma displays, overhead projectors, or other display mechanisms. The mobile displays may be any type of mobile display suitable for presenting content as displayed in the static displays, including laptop computers, notebook PCs, PDAs, cell phones, and other mobile devices. The displays communicate with each other within a peer-to-peer type system in which there is no central server. In one embodiment, each display is aware of the displays immediately surrounding it or of the displays in a remote site during a teleconference. In an embodiment, a presenter may move content between displays by generating a gesture input. The gesture input will initiate new content to be displayed in one display and initiate propagation of content along a direction in a neighboring display. Content may be fed to a particular display through a stack or other source that is associated with the display.
Becoming increasingly common and affordable are wall displays with rear projectors and large plasma displays. Some of these displays, like modular furniture, can be rearranged for different types of meetings. In addition to large displays, people attending conferences and presentations often have laptop computers, notebook computers, and handheld devices. As attendees move around, their devices may move around with them. The MS of the present invention may manage presentations presented using modular and mobile displays.
An illustration of an environment in which the MPS may be used is illustrated in
Content may be any type of media, including video, an image, text, audio, or some other type of media. In one embodiment, the content itself is located on a network. In this case, a display may be configured with the location of the content. Each display may then retrieve and present the content from the content location information. In one embodiment, the content location information includes a URL address of an image or video to be displayed. In this case, the media is retrieved from the URL address and presented on a display.
A gesture input indicates an action is to be taken regarding display content. A gesture input may indicate that a move content, delete content, transpose content or some other action is to be initiated. In one embodiment, a gesture may be entered on a touch screen. The touch screen may be a display showing content, such as touch screens 120 and 122 in
When gesture input is received through a touch screen or similar device, the gesture can be recognized. In one embodiment, the gesture can be determined by looking at simple geometric features of the gesture path such as the width and height of the bounding box (the minimal box containing the entire gesture) and the location of the starting and ending points. The speed attribute is calculated by looking at the time difference between the endpoints of the gesture. The flick feature is calculated by looking for a significant increase in speed along the gesture's motion.
Different types of hardware are used to handle gesture input. Fingers can be used on wall displays with touch screens, such as the SMART Board for Plasma Displays. Some displays (e.g. video projectors) may not support gesture input, but they can still show slides and propagate gesture commands from adjacent displays. These displays may be associated with computers as well. A stylus is used for gesture input on mobile pen computers such as notebooks and handhelds. A mouse, other pointing device, or a touchscreen can be used to input gestures on a laptop. Also, remote control devices such as laser pointers or 3D mice may be used with both wall displays and mobile displays to provide input to a display.
A display orientation 200 in accordance with one embodiment of the invention is illustrated in
In one embodiment, a peer-to-peer network may include one or more propagation groups. In this case, content propagation would only occur within a group. Configuring propagation groups may be useful in a situation where displays cover a broad area, such as the front and back wall of a room, and propagation among all displays (including the back wall displays) would be a distraction to those viewing a presentation that focuses on the front wall displays. In this case, a group may preferably contain displays within physical and visual proximity. A direction of propagation may also be configured within a group. Thus, in
In one embodiment, each display includes or is associated with a processor and memory system. Each processor is capable of running an instance of the MPS software. In one embodiment, the MPS software is a Java program application. The instances of the MPS may communicate with each other using XML-RPC, which is a Web Services standard. By using the Web Services infrastructure, the system can connect displays in distributed locations for teleconferences and other purposes.
The content collections or stacks are loaded and reside on a network. In one embodiment, the network is a collection of web servers. As discussed below, information regarding the content is passed between the displays rather than the content itself This provides for quicker communication between displays. In one embodiment, the content identification information is the location of the content over the network. In the case where the network is a collection of web servers, the content information may be the URLs of the content. Since no media content or objects are passed around, a lightweight protocol such as XML-RPC is suitable for the MPS.
When non-fixed displays are supported, a registry for discovering the adjacent display is required. Location and orientation of the mobile displays can be determined using a variety of techniques, including ultrasound for direction as disclosed in “Special Issue: Location Based Computing”, Want, IEEE Computer, volume 34, No. 8, August 2001, and digital compasses for orientation, such as the Dinsmore 1490 compass. This can be handled as a simple listing or a Web services registry. Other issues such as security and transactions can also leverage the technology for handling mobile displays in the emerging Web services infrastructure.
Operation of the system in accordance with one embodiment of the present invention is illustrated in method 300 of
The effect of a move content left gesture received by a touch screen in a three display system 400 is shown in
The effect of the move gesture received at display 410 is illustrated by the displays 440, 450, and 460. After the propagation has occurred, the content displayed by rightmost display 410 is now displayed in center display 450, and the content displayed by center display 420 is now displayed by leftmost display 460. Rightmost display 440 is now displaying content 442 which was retrieved from the top of stack 414. The content second from the top in stack 414 is now the content at the top of stack 444.
Method 500 of
Once a neighbor display D1 in the direction of propagation is determined, a content push request is transmitted from display D0 to display D1 at step 520. In one embodiment, the content push request includes content identification information for the content to be pushed from the requesting display D0 to the display D1 in the direction of propagation. As discussed above, the content identification information may be a URL or some other type of location information. In an embodiment, the content push request may also include identification information for the display requesting the push.
After the content push message is sent at step 520, display D0 may “pull” or retrieve content identification display information from the D0 stack or other source of content identification information. Once the content information is retrieved from the D0 stack, the display is updated to present the content associated with the information retrieved. Operation of method 500 then ends at step 545.
In method 500, display D0 receives and interprets the move gesture and sends a push content request that is received by a display in the direction of propagation. The receiving display may be a neighboring display or a number of displays away in the direction of propagation. The display that receives the request performs a series of operations to update it's display, as do the other displays in the line of propagation. Method 600 of
Operation of method 600 begins with start step 605. Next, a display D1 receives the content push request message from a neighbor display D0 at step 610. As discussed above, the content push message may contain display identification information and content identification information. Next, the receiving display D1 determines whether a neighbor display D2 exists in the direction of propagation at step 620. As discussed above, propagation may occur in the direction indicated by the receive gesture or along a predetermined route. In an embodiment where propagation occurs in the direction indicated by the gesture, display D1 must determine which display, if any, to propagate content to.
If display D1 determines that a neighbor display D2 exists in the direction of propagation, then operation continues to step 630. If no display D2 exists in the direction of propagation, then operation of method 600 continues to step 640 where the current display (or the content identification information used by the display) of D1 is pushed to a stack associated with display D1. At step 630, display D1 sends a content push request message to the display D2 in the direction of propagation. The display D2 will then perform operations to process the request as described by method 600. At step 650, display D1 will update itself to display content associated with the content information received in the content push request message at step 610. Operation of method 600 then ends at step 655. Method 600 will be repeated for as many remaining displays are involved in the propagation initiated by the initial move gesture.
If a gesture is interpreted to be a delete gesture in method 300, the current content will be removed from the display in which the deleted gesture was received. The display will then present no content. In another embodiment, the display will present some default content indicating that the display is not presenting any material content, such as a screensaver or representative slide. In one embodiment, content information regarding the deleted content will be placed on the top of the stack associated with the particular display. In an embodiment, the deleted gesture affects only the display receiving the gesture. In this case, propagation is not triggered by a delete gesture.
When propagation is triggered and a display in the direction of propagation has a blank display, such as a display that previously received a delete gesture, propagation will end when content information is received by the blank display. In this embodiment, propagation does not continue because the blank display has no content information to forward to a neighboring display.
Method 700 of
At step 740, display D0 pulls content from the D0 stack. The content displayed on display D0 at the time the transpose gesture input was received is then pushed to the top of the D0 stack at step 750. Operation of method 700 then continues to step 760.
At step 720, the neighboring display D1 in the transpose direction is sent a transpose request message from display D0 at step 720. In one embodiment, the transpose request message includes display identification information for display D0 and content identification information. Display D0 then receives a transpose response message at step 730. In one embodiment, the transpose response includes display identification information and content identification information. The identification information is associated with the same display D1 the transpose request message was sent to in step 720. The content identification information is information regarding the content displayed on display D1 when it received the transpose request message. Operation of method 700 then continues to step 760 where display D0 is updated. Display D0 is updated by presenting the content associated with the content information received from display D1. The content information previously displayed by display D0 is now provided to display D1 for display or to the D0 stack. Operation of method 700 then ends at step 765.
As mentioned with respect to the embodiment illustrated in method 700, a display D0 subject to a transpose gesture will attempt to transpose content with a display D1 in the direction of the transpose gesture. Method 800 of
The MPS of the present invention may have several other operating features in addition to those discussed above. For example, a display may be configured to mirror another display, i.e. to present identical content as another display. This feature may be useful for presenting content to large conference rooms or in different locations. In this case, whenever the content for a particular display changes, the associated display would also change to the same content.
Another feature may involve multiple display feeding. This feature may be described with reference to
Group permissions and security can be employed for one or more displays to control and restrict communication between displays. This may include restricting from where a display will accept new content, to whom a display will provide content, and other actions. In one embodiment, command propagation is restricted to occur only among displays in the same group.
In an embodiment, displays can be implemented using laptop computers, PDAs, and other mobile devices. In this case, each mobile device will include a location sensing mechanism, such as one utilizing BlueTooth™ technology, ultrasonic technology, or a GPS-type sensor. In this embodiment, as a mobile display changed location, it would provide updated location information to other displays through the peer-to-peer network. Alternatively, different sensors mechanisms such as IR sensors or RF tags may be used to determine the location of a mobile device within an environment. For example, an RF tag could be attached to the mobile device within a conference room. Within the conference room at different possible display locations, such as different seats in a conference room, RF scanners could be installed. As the mobile display was brought to a different position in the room, the user of the mobile display could scan the device to indicate it's current location. In this embodiment, the default direction for the device could be with the screen facing the user or the front of the room, and gestures could be configured to work accordingly based on the direction of the display the gesture relates to. In an embodiment where location and orientation sensing systems are used, the orientation and location of a mobile device may be calculated. In this case, gestures would be interpreted based on the current location and orientation of the mobile display.
In one embodiment, annotation may be used by audience members in a presentation to share ideas. In this embodiment, one or more main displays may be located before an audience. Additionally, the audience members would each have a display within the peer-to-peer system. When content was presented on one of the main displays, an audience member could retrieve the content with the appropriate gesture (typically a “move down” gesture, having the effect of copying the content in the main display). The member could then annotate the content and push the new content with annotations to the main display. The MPS in this embodiment may be configured with passwords and security settings to allow all or selected audience members to push and pull content from a main display.
As mentioned above, a mobile device such as a PDA, laptop computer, notebook PC, and other mobile computing devices may be used as mobile displays in accordance with one embodiment of the present invention. As discussed above, the mobile devices may be used to retrieve copies of content presented on other displays. Additionally, the mobile devices may be used to provide annotation to retrieved content and then transmit the content back to the display for viewing by the group. In this manner, a user in control of a personal display may interact with a public display in a conference room meeting, class, or some other interactive group environment. This is advantageous because unlike a presenter who can make direct physical contact with the wall displays, a member of the audience is often discouraged by social conventions and time considerations from walking up to a wall display to make a contribution to a presentation.
Though particular gestures have been described above, the system of the present invention may be configured to operate upon the recognition of many types of gestures received through many types of input devices. Further, different gestures may be configured to perform different actions, all within the scope of the present invention.
A peer-to-peer modular presentation system (MPS) is disclosed for providing improved presentations. The system includes a plurality of displays. The plurality of displays may include static or mobile displays. In one embodiment, the static displays are screens suitable for displaying content, such as video monitors, plasma displays, overhead projectors, or other display mechanisms. The mobile displays may be any type of mobile display suitable for presenting content as displayed in the static displays, including laptop computers, notebook PCs, PDAs, cell phones, and other mobile devices with a display. The displays communicate with each other within a peer-to-peer type system in which there is no central server. In one embodiment, each display is aware of the displays immediately surrounding it. A propagation direction may be configured for at least two of the displays in the system. In an embodiment, a presenter may move content between displays by generating a gesture input at one display. The gesture input will initiate new content to be displayed in the particular display, and initiate propagation of content along the configured direction in neighboring displays. Content may be fed to a particular display through a stack that is associated with the display.
Other features, aspects and objects of the invention can be obtained from a review of the figures and the claims. It is to be understood that other embodiments of the invention can be developed and fall within the spirit and scope of the invention and claims.
The foregoing description of preferred embodiments of the present invention has been provided for the purposes of illustration and description. It is not intended to be exhaustive or to limit the invention to the precise forms disclosed. Obviously, many modifications and variations will be apparent to the practitioner skilled in the art. The embodiments were chosen and described in order to best explain the principles of the invention and its practical application, thereby enabling others skilled in the art to understand the invention for various embodiments and with various modifications that are suited to the particular use contemplated. It is intended that the scope of the invention be defined by the following claims and their equivalence.
In addition to an embodiment consisting of specifically designed integrated circuits or other electronics, the present invention may be conveniently implemented using a conventional general purpose or a specialized digital computer or microprocessor programmed according to the teachings of the present disclosure, as will be apparent to those skilled in the computer art.
Appropriate software coding can readily be prepared by skilled programmers based on the teachings of the present disclosure, as will be apparent to those skilled in the software art. The invention may also be implemented by the preparation of application specific integrated circuits or by interconnecting an appropriate network of conventional component circuits, as will be readily apparent to those skilled in the art.
The present invention includes a computer program product which is a storage medium (media) having instructions stored thereon/in which can be used to program a computer to perform any of the processes of the present invention. The storage medium can include, but is not limited to, any type of disk including floppy disks, optical discs, DVD, CD-ROMs, microdrive, and magneto-optical disks, ROMs, RAMs, EPROMs, EEPROMs, DRAMs, VRAMs, flash memory devices, magnetic or optical cards, nanosystems (including molecular memory ICs), or any type of media or device suitable for storing instructions and/or data.
Stored on any one of the computer readable medium (media), the present invention includes software for controlling both the hardware of the general purpose/specialized computer or microprocessor, and for enabling the computer or microprocessor to interact with a human user or other mechanism utilizing the results of the present invention. Such software may include, but is not limited to, device drivers, operating systems, and user applications.
Included in the programming (software) of the general/specialized computer or microprocessor are software modules for implementing the teachings of the present invention, including, but not limited to, presenting content in a peer-to-peer modular presentation system.