Abstract:
A user interface for a content presentation system is disclosed for displaying and manipulating graphical multimedia content for an audience while hiding operator-specific elements from the audience. The operator-specific elements are permitted to overlap the audience-viewable elements on the operator&#39;s display, allowing for optimal use of screen real estate particularly on smaller touch-based devices. The use of a multithreaded programming architecture is preferably employed to take advantage of multi-cored CPUs and GPUs, allowing the operator and audience displays to be governed by separate CPU cores or threads and therefore perform graphical manipulations with high efficiency.

Description:
CROSS-REFERENCE TO RELATED APPLICATIONS 
       [0001]    This application claims the benefit of provisional patent application No. 61/923,367, filed Jan. 3, 2014. 
     
    
     BACKGROUND OF THE INVENTION 
       [0002]    Presenting documents and other displayable content to an audience in a compelling way has become an important part of public speaking. Software like Microsoft PowerPoint is now often an essential part of addressing groups of people in business or official contexts. An advantage of PowerPoint is that a presenter can advance the slideshow simply, even remotely, without detracting from the presentation by having to concentrate on operating a computer. PowerPoint is limited, however, in its relative inability to modify the way content is displayed during a presentation. 
         [0003]    For presentations where more flexibility is needed, such as courtroom trials, specialized software like inData&#39;s Trial Director is available. This software allows manipulation or annotation of the displayed content in real time during the presentation. For example, an operator can pull up a different document, move to an arbitrary page of a document, move a document around on the screen, zoom in or out of a section of a document, callout a portion, highlight a portion, circle a portion, and the like, all in real time. 
         [0004]    The drawback of software like Trial Director is that it is not necessarily conducive to operation by the speaker or presenter. Usually, presenters, such as questioning attorneys, require another person sitting behind the scenes to operate the software in response to verbal cues. While it is possible for the presenter to use the software on a laptop at a podium, such software is designed for use with a mouse and keyboard, which can be awkward and distracting to try to use during a live presentation, and usually makes inefficient use of screen real estate on the assumption that a live operator is set up behind a desk with a generously sized computer screen. Another disadvantage to some prior art is that content intended only for the operator, such as a file picker, remain visible to the audience, detracting from a seamless and professional-appearing presentation. 
         [0005]    Recently, software has become available to try to provide some of the functionality of applications like Trial Director on a tablet PC, intended to be used by the presenter rather than with the assistance of a separate operator. These programs include LitSoftware&#39;s TrialPad and inData&#39;s TDMobile, both of which operate on the Apple iPad. These applications allow manipulation of the displayable content in response to multitouch gestures by the operator; for example, “pinch to zoom.” Moreover, they generally hide operator-specific content, such as file pickers, from the audience, displaying such content only on the operator&#39;s tablet. However, these applications can still be difficult or awkward for a presenter to navigate in real time on a small tablet-sized screen, principally because the operator-specific content either blocks the displayable content from the presenter and prevents the latter&#39;s manipulation, or forces the displayable content area of the operator&#39;s display to shrink to accommodate the new elements, wasting valuable screen real estate. Any additional content the operator may wish to have visible on the display, such as notes about the displayed document, would take up even more screen space, as can be seen in Microsoft PowerPoint&#39;s “Presenter View.” 
       BRIEF SUMMARY OF THE INVENTION 
       [0006]    A goal of the present invention, therefore, is to provide a superior user interface for a multimedia content presenter, especially for tablets and smaller screens, which makes optimal use of screen real estate without sacrificing usability. The invention includes displaying operator-specific content on the operator&#39;s display that is not visible on the secondary display seen by the audience. Important aspects of the invention are that the operator-specific content can overlap with the area of the operator&#39;s display containing the displayable content, and moreover can do so without preventing manipulation of the displayable content. These allow for a number of features not possible in prior art applications, which will be described in further detail herein. 
     
    
     
       BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWING 
         [0007]    Hereinafter the present invention will be explained by way of example with reference to the attached drawings. Therein are shown: 
           [0008]      FIG. 1  depicts a preferred embodiment of an operator display according to the invention. 
           [0009]      FIG. 2  depicts a preferred embodiment of an audience display according to the invention. 
           [0010]      FIG. 3  depicts a preferred embodiment of an operator display according to the invention which includes operator-specific content not displayed to the audience. 
           [0011]      FIG. 4  depicts a preferred embodiment of an audience display according to the invention demonstrating that the operator-specific content from  FIG. 3  is not displayed. 
           [0012]      FIG. 5  depicts a preferred embodiment of an operator display according to the invention which includes operator-specific content consisting of a graphical file picker which is not displayed to the audience. 
           [0013]      FIG. 6  depicts a prior art operator display comprising a content viewer and various user interface elements. 
           [0014]      FIG. 7  depicts a prior art operator display comprising the same elements as  FIG. 6  along with a graphical file picker that displaces the content viewer and does not overlap with it. 
       
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
       [0015]    The process of displaying operator-specific content that overlaps with the displayable content without preventing manipulation thereof will now be described. In the preferred embodiment, the application runs on the Microsoft Windows 8.1 “Windows Store” app platform, which is also very similar to the Microsoft Windows Presentation Foundation (WPF) platform. A primary processing thread handles the operator display and responds to user commands and manipulations including multitouch gestures. A secondary processing thread handles the secondary display that is seen by the audience. Both threads contain and enable a Stage control which contains a Canvas control for adding multimedia content, including images, videos, shapes, text boxes, and the like, anywhere on the x/y plane and at any z position. 
         [0016]    Turning to  FIGS. 1 and 2 , when content, such as a document ( 3 ), is first selected by the operator for display on an operator display ( 1 ), a Windows user control, referred to herein for convenience as a Content Viewer ( 4   a ), ( 4   b ), is added to the Stages of both the primary and secondary threads and made visible on the operator display ( 1 ) and audience display ( 2 ), respectively. The Content Viewer objects ( 4   a ), ( 4   b ) are both linked to the same data containing the displayable multimedia content ( 3 ) and are capable of displaying that content using an appropriate Windows control and/or API. For example, a page of a document ( 3 ) can be represented by an Image object sourced by a Bitmaplmage object containing a TIFF image. The two Content Viewer controls ( 4   a ), ( 4   b ) are also linked to one another programmatically, and are aware of which is in the primary thread (operator&#39;s display) ( 1 ) and which is in the secondary thread (audience&#39;s display) ( 2 ). 
         [0017]    With regard to displayable content—content intended to be seen by the audience—the two Content Viewer controls ( 4   a ), ( 4   b ) are intended generally to be mirror images; however, in the preferred embodiment only the Content Viewer in the primary thread ( 4   a ) is enabled to respond to user interface commands such as multitouch gestures. When handling such a command, the Content Viewer ( 4   a ) is responsible for manipulating the content on the operator&#39;s display ( 1 ) and for communicating the essential information about the manipulation to the Content Viewer control ( 4   b ) in the secondary thread. Myriad kinds of manipulations are possible, but the most common types used in typical applications include pan, zoom, highlight, callout, and draw, which are known in the art. Examples of such annotations ( 10   a ), ( 10   b ) on the presenter and audience displays, respectively, are seen in  FIGS. 1 and 2 . Whatever commands are executed, once communicated to the secondary thread the Content Viewer ( 4   b ) in that thread then executes the same command(s) in order to maintain the mirror image relationship between the two viewers ( 4   a ), ( 4   b ). Furthermore, if the operator&#39;s display ( 1 ) and audience display ( 2 ) are at different screen resolutions or aspect ratios, the software scales the manipulations into the correct coordinate system so that both the audience and operator see substantially the same image. Note that, as is true of the prior art, the operator display ( 1 ) contains additional user interface elements ( 5 ), such as icons, which are not themselves content but assist the operator in manipulating the displayable content ( 3 ) or adding to it. 
         [0018]    A document may also contain operator-specific content, which is not intended to be seen by the audience, and a novel aspect of this invention is allowing such content to be displayed to the operator over the audience-displayable content without being seen by the audience. Turning to  FIGS. 3 and 4 , depicting the operator&#39;s display ( 1 ) and audience display ( 2 ), respectively, the operator may wish to annotate the document ( 1 ) with his own notes ( 6 ), which he would do in advance of the presentation, and would wish to see the annotations during the presentation, but not allow the audience to see them. In a preferred embodiment, this is accomplished programmatically by adding a TextBox containing the operator&#39;s notes ( 6 ) to the Content Viewer ( 4   a ) in the primary thread, placing it on top of the Image representing the displayed (audience-viewable) content, at the desired location, and providing it a semi-transparent background. The TextBox is not added to the Content Viewer in the secondary thread ( 4   b ), however (or if it is added it is set to “Collapsed” via the Visibility property, as is well known to those skilled in Windows-based UI development). The TextBox is visible to the operator, though, including when manipulating the document ( 3 ), moving and zooming in unison with the underlying document. In this embodiment, the operating system and underlying hardware are responsible for maintaining the visibility of the operator&#39;s notes ( 6 ) on the operator&#39;s display ( 1 ), even as the Content Viewer ( 4   a ) is further manipulated, while displaying no operator notes on the audience&#39;s display ( 2 ). Notably, the text ( 6 ) is even editable during the course of the presentation; as the TextBox is hidden or does not exist on the Content Viewer ( 4   b ) dedicated to the audience&#39;s display ( 2 ), the audience does not see a cursor or other indicia of text being edited, let alone the text itself. 
         [0019]    Further examples of operator-specific content, the display of which is facilitated by the foregoing invention, will now be described. In one example, seen in  FIG. 5 , the operator specific content includes a graphical file picker ( 7 ) displaying thumbnail images ( 9 ) of other documents, or pages therein, in the operator&#39;s presentation file so that they can be quickly and randomly accessed at any time. As with other operator specific content, the file picker ( 7 ) is invisible to the audience, and can overlap with the audience-displayable content. Again, a semi-transparent background is preferable for this purpose to avoid completely blocking audience-viewable content on the operator&#39;s display. Further, manipulation of the displayable content remains enabled while the file picker ( 7 ) is open. That is, the operator need not close the file picker ( 7 ) to continue manipulating the document. This example is seen in the figure, where the operator has added a highlight ( 8 ) with the file picker open. Note the corresponding audience display (not depicted) will show no file browser, but will show the highlight ( 8 ). 
         [0020]    The preferred file picker ( 7 ), since it is not displacing the displayable content ( 4   a ), is thus larger than in most prior art applications, and includes page thumbnails ( 9 ) that can be dragged and dropped directly onto the displayable area ( 4   a ), thereby selecting a new page. This superior use of screen real estate is possible because the operator specific content ( 7 ), ( 9 ) has been permitted to overlap onto the displayable content ( 4   a ) on the operator&#39;s display ( 1 ), but remains hidden from the audience. This represents a significant advantage over prior art applications whereby operator content like the file picker cannot be displayed without shrinking the Content Viewer ( 4 ), as seen in  FIG. 6  (normal mode) and  FIG. 7  (file picker open), based on a prior art content presenter. As seen in  FIG. 7 , the Content Viewer ( 4 ) is significantly shrunk, displaced by the file picker ( 7 ). 
         [0021]    In another example of operator-specific content, an operator may wish to add complex annotations to his own copy of a document, such as highlights and drawing markups, in advance of the presentation, which he does not wish the audience to see, or wishes to add one by one during the presentation. Particularly with a dense document, an operator would not wish to waste valuable presentation time searching for the area of the document to highlight to the audience. Traditionally, the presenter would keep a marked up copy of the document as part of a paper outline, and would display a clean copy on a projector, using his marked up copy or other notes to refresh his recollection about the contents of the document and to recreate the annotations he wishes the audience to see as he wishes them to see them. Using the present invention, however, an operator can create operator-specific annotation content in advance, such as highlights or drawings, which overlap the displayable content but are not seen by the audience initially. In one preferred embodiment, the operator specific markups gently oscillate between visible and invisible in order to flag to the operator that the content is visible only to him. The operator can then optionally convert each such markup to be visible to the audience, one by one or all at once, using a multitouch gesture such as a double tap. This would greatly reduce, if not eliminate, the need for the presenter to maintain a cumbersome hard copy file at the podium 
         [0022]    The disclosed method of maintaining two live “stages” on different processing threads, each dedicated to one of the two displays, though it is but one of many possible implementations of this invention, is particularly advantageous as it exploits multi-cored processors and hardware graphics acceleration present in higher end tablets and computers. This facilitates selectively showing content on the operator display but not the audience display regardless of overlap, while mirroring the portions that should be displayed on both. Hardware graphics accelerators, rather than the CPU, are thus left free to perform the graphical manipulations on both displays, allowing for more complex graphics and animations than seen in the prior art. For example, pre-programmed animations such as fades or motion can be cloned on both displays, occurring in real time, by initiating them on both the primary and secondary threads in quick succession. Such hardware, well suited to multiple overlapping images such as is seen in video games, can efficiently display both the displayable content and operator-specific content on the respective displays regardless of the degrees of overlap, translucency, etc. of other elements. 
         [0023]    Furthermore, leaving the user-interface thread, which executes the operator&#39;s commands and maintains the operator&#39;s display, free of the burden of also maintaining the audience&#39;s display vastly improves the efficiency and responsiveness of the operator&#39;s user interface and reduces the lag between the operator display and audience display that is seen in some prior art applications. A manipulation being performed in real time on the operator display (such as a pan or zoom) will appear on the audience display virtually exactly in sync, since the two processing threads are both responding to the same command in parallel. This further facilitates efficient transmittal of graphical information from the operator&#39;s computer (typically a tablet PC) to the secondary display, which may be connected to the operator&#39;s computer wirelessly such as through the “Miracast” protocol, again reducing potential lag between what is seen on the operator&#39;s display and the audience display. 
         [0024]    Of course, it should be appreciated that the aforementioned examples are purely illustrative and are not intended to be limiting of the claimed invention.