Patent Publication Number: US-2004046780-A1

Title: Non-modal navigation of interactive multimedia content

Description:
FIELD OF THE INVENTION  
       [0001] The present invention relates to devices and methods for accessing multimedia content. More specifically, the present invention is particularly applicable but not limited to devices and methods for navigating locations containing multimedia content.  
       BACKGROUND TO THE INVENTION  
       [0002] The explosion in interest in and use of the Internet has led to the adoption of Internet access to varied devices. Internet access can now be had from mobile phones, personal digital assistants and, of course, computers. Another realm in which Internet access has made inroads is the now ubiquitous television. With the advent of Internet access through set top boxes (STBs) and through high speed cable modems, television owners can now get on the Internet without the need for a dedicated computer. However, this advantage may be vitiated by the confusion that may result for the end user using the system. Since Internet access, and any other extra digital interactive services provided by way of the STB, are provided in addition to the regular TV services, different methods are provided by different manufacturers for navigating between the different services. Currently, an end user using the Internet through an STB will need to toggle between the Internet functions and the TV functions if he wishes to switch between the two. Not only that, but such an end user, when he toggles between the two functions, will lose any information/location that was used or stored for the Internet location or TV service he was accessing.  
       [0003] Based on the above, using today&#39;s STBs and other devices which integrate multiple multimedia functions and services can be onerous and difficult. It may involve an extended learning period when the user has to figure out how to properly switch between the main functions of the multimedia access device (e.g. switching between the TV and the Internet functions for an STB). A further learning period may be required for the user to learn how to properly navigate the different options available for each function. The different interactivity options available for each TV station/multimedia service/Internet website can be daunting to a novice user.  
       [0004] Accordingly, there is a need for a simpler navigation system for use with multimedia access devices such as STBs. Such a solution should ideally be easy to use, easy to learn, and provides the end user with the options he or she may want.  
       [0005] It is therefore an object of the present invention to provide an alternative to the existing systems and to, at the very least, mitigate if not overcome the disadvantages of the prior art.  
       [0006] It should be noted that through this document, the term “locations” will be used to refer to Internet websites, television channels, interactive television channels, enhanced television services, and other multimedia enhanced channels or sites which may be accessible to an end user by way of a set-top box, a computer or any other device which may be used to retrieve multimedia content or services.  
       SUMMARY OF THE INVENTION  
       [0007] The present invention relates to methods and devices for navigating locations containing multimedia content. A control device for multimedia access apparatus is equipped with user activatable controls. A dedicated navigation control button, when activated by an end user of the apparatus, presents a navigation menu of possible locations which may be accessed by the end user. These locations are presented to the end user regardless of the mode or service (e.g. TV, Video on Demand, Pay Per View, or the Internet) in which the multimedia access apparatus is operating. The end user can then choose a destination from the navigation menu and the apparatus accesses the location selected by the end user, again regardless of the mode required for the selected location. A dedicated execution control button, when activated, presents an execution menu of possible actions or functions which may be activated by the end user for the particular location currently being accessed. If the end user selects an action or function from the menu, the selection action/function is activated for the location currently being accessed by the end user.  
       [0008] In a first aspect the present invention provides a device for use with an end user device for accessing interactive content, the control device comprising:  
       [0009] a navigation control element for activating a navigation menu through said end user device, the navigation menu listing locations with interactive content available to said end user device;  
       [0010] an execution control element for activating an execution menu through said end user device, the execution menu listing actions available to an end user using said end user device, said actions being available to a specific location currently being accessed by said end user,  
       [0011] wherein the control device controls the end user device.  
       [0012] In a second aspect the present invention provides a method for allowing an end user to navigate content from different multimedia content providers using an end user device which allows said end user to access said content, the method comprising:  
       [0013] a) providing a menu to said end user, said menu chosen from a group comprising:  
       [0014] a navigation means listing a plurality of possible multimedia content locations which can be accessed by said end user;  
       [0015] an execution means listing at least one possible action which may be executed by the end user, the or each of said at least one possible action being applicable to a current multimedia content location being accessed by said end user;.  
       [0016] b) receiving a specific command from said end user;  
       [0017] c) in the event said specific command activates a multimedia content location listed in said navigation menu, accessing multimedia content for said location;  
       [0018] d) in the event said specific command activates an action listed in said execution menu, executing said action for said current location,  
       [0019] wherein said navigation menu and said execution menu are visible to said end user only when individually activated.  
       [0020] In a third aspect the present invention provides a user interface for use in an end user device used to access interactive multimedia content, the interface comprising:  
       [0021] a navigation menu listing locations with multimedia content available to an end user using said end user device.  
       [0022] In a fourth aspect the present invention provides computer readable media having encoded thereon computer readable code for a method for allowing an end user to navigate content from different multimedia content providers using an end user device which allows said end user to access said content, the method comprising:  
       [0023] a) providing a navigation menu to said end user, said navigation menu listing a plurality of possible multimedia content locations which can be accessed by said end user;  
       [0024] b) providing an execution menu to said end user, said execution menu listing at least one possible action which my be executed by the end user, the or each of said at least one possible action being applicable to a current multimedia content locations being accessed by said end user;  
       [0025] c) receiving a specific command from said end user;  
       [0026] d) in the event said specific command activates a multimedia content location listed in said navigation menu, accessing multimedia content for said location;  
       [0027] e) in the event said specific command activates an action listed in said execution menu, executing said action for said current location,  
       [0028] wherein said navigation menu and said execution menu are visible to said end user only when individually activated. 
     
    
    
     BRIEF DESCRIPTION OF THE DRAWINGS  
     [0029] A better understanding of the invention will be obtained by considering the detailed description below, with reference to the following drawings in which:  
     [0030]FIG. 1 illustrates a remote control device implementing one embodiment of the invention;  
     [0031]FIG. 2 is a block diagram of a navigation menu as implemented by an embodiment of the invention;  
     [0032]FIGS. 3 and 4 are block diagrams of the navigation menu of FIG. 2 including examples of submenus and the available choices through the submenus;  
     [0033]FIG. 5 is a block diagram of a sample execution menu as implemented for a television channel;  
     [0034]FIG. 6 is a block diagram of another sample execution menu as implemented for a website;  
     [0035]FIG. 7 is a flow chart illustrating the steps executed for the main software component according to an embodiment of the invention;  
     [0036]FIG. 8 is a flow chart illustrating a sample logic for a navigation subroutine; and  
     [0037]FIG. 9 is a flow chart illustrating a sample logic for a execution subroutine. 
    
    
     DETAILED DESCRIPTION  
     [0038] Referring to FIG. 1, a remote control device  10 , for use with a multimedia access device (such as a set top box) is illustrated. As can be seen, the device  10  has a navigation control element  20  (a button labelled Go) and an execution control element  30  (a button labelled DO). The device  10  also has the regular control buttons normally associated with remote control devices.  
     [0039] The navigation control  20 , when activated, presents an end user with a navigation menu  40 , illustrated as being in a corner of a television screen (or display)  50 , may have an identification field  60  that notes the time, the channel being viewed, the television network, and the program currently showing. The navigation menu  40  also presents the different locations which may be accessed by the end user. To simplify the interface used, the navigation menu  40  may group locations according to their character—regular television channels are grouped under the television category  70  while enhanced TV category  80 . For web access, a web access category  90  is provided while digital television services may be found in the services category  100 . A communications category  110  is provided for email and other communications functions while web or Internet searching is found under the search web category  120 . Selection or activation of any one of the categories in the menu will present a further menu detailing locations available to the end user for the category.  
     [0040] Referring to FIG. 3, a television submenu, activated when the end user selects the television category  70 , lists the television channels available to the end user. Should the television submenu be too small an area to display all the available channels, a scrolling selection  130  is provided. When selected by the end user, the scrolling selection  130  will cause the submenu to scroll, thereby providing the end user with more options. Of course, if the end user selects one of the television channels provided, the multimedia access device will change modes (if required) and change the television channel being viewed to that selected by the end user. This is done regardless of what the end user was viewing/accessing at the time the selection was made.  
     [0041] Referring to FIG. 4, the different possible selections for each category in the navigation menu are illustrated. As can be seen in FIG. 4, the enhanced TV category includes pay per-view selections, different dedicated movie network selections and dedicated digital music channels. Again, selection of any of these selections automatically causes the multimedia access device to access that selected channel.  
     [0042] The options available for each category in the main navigation menu may be as follows:  
     [0043] Services Category  
     [0044] Internet banking services accessed through an integrated and dedicated web portal;  
     [0045] online games available to the end user and playable through the multimedia access device;  
     [0046] ordering of pay per-view movies or of other types of video on demand;  
     [0047] activation of an online and up to date television guide; and  
     [0048] management of the end user&#39;s account with the enhanced television/Internet service provider.  
     [0049] Communications Category  
     [0050] email using a dedicated email program through an email portal; and  
     [0051] online chatting using a dedicated online chatting software.  
     [0052] Web Search Category  
     [0053] different search engines which may be used to search the World Wide Web for information  
     [0054] Web Access Category  
     [0055] web access using a version of a web browser compatible with the operating system software used by the multimedia access device.  
     [0056] Other options which may be inserted in the navigation menu or in one of its submenus may be any one of the following:  
     [0057] television channels (cable, satellite or network channels);  
     [0058] Internet options such as specific websites;  
     [0059] grid guide to television and other types of programming;  
     [0060] parental control settings;  
     [0061] search tools for searching the Internet or a available television programming for specific content;  
     [0062] Pay-Per-View options including ordering and/or viewing options;  
     [0063] electronic mail functions;  
     [0064] Video on Demand functions including ordering and/or viewing options;  
     [0065] news and/or weather tracker functions; and  
     [0066] call display functions when the device is hooked up to telephony connections.  
     [0067] For the execution control button  30 , its activation presents the end user with an execution menu  140  (see FIG. 5). The execution menu  140 , similar to the navigation menu  40 , has an identification field  60  that notes the time, the channel/location currently being viewed, the television network, and the program currently showing. The execution menu also lists the available functions/actions for the location currently being accessed. As an example, FIG. 5 illustrates the options available for a regular television show being viewed. The options may be:  
     [0068] a) to record the show (perhaps to record from the multimedia access device to an internal, network based hard drive or video cassette recorder)  
     [0069] b) view a description of the show currently being viewed; and  
     [0070] c) change the channel being viewed to the most recently viewed previous channel.  
     [0071] As noted above, the only functions/actions listed in the execution menu are those available for the location currently being viewed. As such, the example in FIG. 6 is for a location located in the Internet. The identification field  60  therefore identifies the website being accessed (WEBSITE), the time and, if possible, the source of the content (CNN). Similarly, the options in the execution menu  140  relate only to websites and not to, as an example, television channels. One of the available functions in the execution menu  140  is therefore the ability to bookmark the location or website currently being viewed.  
     [0072] To implement the above system, a software component which works closely with the operating system may be used. Such a software component would overlay on top of all of the services provided to the end user and would group them into the categories as explained above.  
     [0073] The software component would receive all the input from the end user and determine whether the input is from either of the execution or the navigation controls. If the input is from the execution control (the “DO” button in FIG. 1), then an execution menu specific to the location being accessed is retrieved and presented to the end user. This specific execution menu is sorted specifically for the current location and contains only the options available for that location. Each execution menu may therefore be constructed or created specifically for each location. Alternatively, locations may be categorized into specific types of services with each type of service being provided with a set execution menu. As an example, the execution menu options in FIG. 5 may be the options provided for all television channels. Enhanced TV channels may then user the same menu set with perhaps some added functions specific to enhanced TV channels. Similarly, websites may have an execution menu option as set out in FIG. 6.  
     [0074] If, on the other hand, the input received by the software component is from the navigation control, then a navigation menu is presented to the end user. This navigation menu is the same for all locations in that regardless of the location being accessed, the same navigation menu is presented. As noted above, this navigation menu, illustrated as having categorized submenus, lists the available locations to the end user.  
     [0075] To further explain the logic implemented by the software component, FIG. 7 presents a flow chart detailing the logic followed by the software component. Referring to FIG. 7, the process begins with the software component waiting for input (step  150 ) from the end user by way of the control device. If an input is received, step  160  verifies that there is indeed an input. If it is a false alarm, the component returns to waiting for an input (step  150 ). If an input is present, decision  170  determines if the input is from the navigation control. In the event the input is from the navigation control, a navigation subroutine is called (step  180 ) and the logic flows to this navigation subroutine. This navigation subroutine is explained further below. On the other hand, if the input is not from the navigation control, step  190  decides if the input is from the execution control. If the input is from the execution control, then an execution subroutine specific to the location being accessed or, alternatively, a generic execution subroutine specific to the category to which the present location belongs, is called (step  200 ). The execution subroutine will be explained further below. If the input is neither from the navigation control nor from the execution control, the other processing steps (step  210 ) which are beyond the scope of this document, are executed.  
     [0076] Referring to FIG. 8, a flowchart detailing the steps for a sample navigation subroutine is illustrated. The process begins by presenting the end user with the navigation menu (step  220 ). As noted above, the navigation menu is the same regardless of the location being accessed. The next step, step  230 , is of waiting for input from the end user. Decision  240  then verifies if input has been received. If not, then the loop between step  230  and decision  240  is carried out until input is received.  
     [0077] Once input is received, decision  250  determines if the input is from the navigation control. If the input is from the navigation control, then the navigation menu is turned off (step  260 ). It should be noted that, for this embodiment of the invention, pressing either the navigation or the execution button toggles their associated menus as being active or inactive. If the input is not from the navigation control, then decision  270  determines if the input is a selection of a category from the navigation menu. If the input is not from the navigation menu, then the input is processed in a different manner (step  280 ). Conversely, if the input received is a selection of a category from the navigation menu, then step  290  retrieves the submenu for the category selected as input by the end user. Step  290  also presents the retrieved submenu to the end user. Steps  300  and  310  constitute another loop to ensure that input has been received. Step  320  determines if the input is a selection from the location submenu. If it is not, then input is processed in a different manner (step  280 ). However, if the input is from the submenu, then step  330  is that of switching the mode of the multimedia access device if required. This step may be necessary especially if the new selected location is only accessible through a mode change. As an example, if the current location being accessed is a television station and the user wants to use email, then a mode switch from TV viewing mode to a more interactive quasi-Internet mode is required. The final step is to actually change the location being accessed (step  340 ).  
     [0078] Referring to FIG. 9, a flowchart detailing the possible steps in an execution subroutine is illustrated. As with the navigation subroutine, for this embodiment the activation/deactivation of the execution menu is done by toggling the execution control. Furthermore, the steps in the flowchart of FIG. 9 may be used for most types of execution menus regardless of the contents of the execution means.  
     [0079] The process in FIG. 9 begins with step  350 —that of retrieving the execution menu for the location being accessed and presenting it to the end user. As noted above, the execution menu may be one customized for a particular location or it may be one customized for a particular category of locations. Once the execution menu has been retrieved and presented, the loop consisting of steps  360  and  370  wait and verify the input received. Once input has been received, step  380  verifies that the input is from the execution control. If the input is from the execution control, then the execution menu is turned off (step  390 ).  
     [0080] However, if the input is not from the execution control, then step  400  checks if the input is one of the available options in the execution menu of possible functions/actions. If the input is an available function/action, then the selected function/action is executed (step  410 ), possibly by calling another subroutine. If the input is not one of the available options in the execution menu, then the input is processed by other means (step  420 ).  
     [0081] It should be noted that the above description is of a preferred embodiment and must not be taken as the only possible implementation. Other implementations where the multimedia access device may be a set top box, a computer, a video/Internet terminal, or other device are possible. The invention may be practiced on any device which normally requires complex menus but which can be simplified by having two “top-level” menus. Furthermore, the execution and navigation controls may be implemented on any control device which controls such a multimedia access device. The control device may a keyboard, a conventional wireless or infrared remote control, or any other device which can implement two dedicated controls for execution and navigation. The execution and navigation controls may therefore be implemented on a touch screen, remote control button, or on any user activatable control medium on a control device.  
     [0082] It should further be noted that while the above description refers to the use of submenus from a “top level” or parent menu, it is also possible to have a simple menu for each of the navigation or the execution menus. Thus, for the navigation menu, a single menu could include all the contents of the various submenus detailed above. Clearly, a scrolling function or some other means of navigating the potentially large navigation menu may be required.  
     [0083] Embodiments of the invention may be implemented in any conventional computer programming language. For example, preferred embodiments may be implemented in a procedural programming language (e.g. “C”) or an object oriented language (e.g. “C++”). Alternative embodiments of the invention may be implemented as pre-programmed hardware elements, other related components, or as a combination of hardware and software components.  
     [0084] Embodiments can be implemented as a computer program product for use with a computer system. Such implementation may include a series of computer instructions fixed either on a tangible medium, such as a computer readable medium (e.g., a diskette, CD-ROM, ROM, or fixed disk) or transmittable to a computer system, via a modem or other interface device, such as a communications adapter connected to a network over a medium. The medium may be either a tangible medium (e.g., optical or electrical communications lines) or a medium implemented with wireless techniques (e.g., microwave, infrared or other transmission techniques). The series of computer instructions embodies all or part of the functionality previously described herein. Those skilled in the art should appreciate that such computer instructions can be written in a number of programming languages for use with many computer or electronic system architectures or operating systems. Furthermore, such instructions may be stored in any memory device, such as semiconductor, magnetic, optical or other memory devices, and may be transmitted using any communications technology, such as optical, infrared, microwave, or other transmission technologies. It is expected that such a computer program product may be distributed as a removable medium with accompanying printed or electronic documentation (e.g., shrink wrapped software), preloaded with a computer system (e.g., on system ROM or fixed disk), or distributed from a server over the network (e.g., the Internet or World Wide Web). Of course, some embodiments of the invention may be implemented as a combination of both software (e.g., a computer program product) and hardware. Still other embodiments of the invention may be implemented as entirely hardware, or entirely software (e.g., a computer program product).  
     [0085] Although various exemplary embodiments of the invention have been disclosed, it should be apparent to those skilled in the art that various changes and modifications can be made which will achieve some of the advantages of the invention without departing from the true scope of the invention.  
     [0086] The above invention may therefore be implemented in any device which uses a display and in which the end user may need to switch modes to navigate the various options or locations available to the device. Thus, the invention may be implemented on not only STBs but also on personal digital assistants, cellular telephones, personal computers, and other display equipped devices.  
     [0087] A person understanding this invention may now conceive of alternative structures and embodiments or variations of the above all of which are intended to fall within the scope of the invention as defined in the claims that follow.