RELATED APPLICATIONSThis application is related to, and claims priority from, U.S. patent application Ser. No. 11/325,768, filed Jan. 5, 2006, which is related to, and claims priority from, U.S. Provisional Patent Application No. 60/641,421, filed on Jan. 5, 2005, entitled “Scaling and Layout Methods and Systems for Handling One-to-Many Objects”, the disclosure of which is incorporated here by reference.
BACKGROUNDThe present invention describes a framework for organizing, selecting and launching media items. Part of that framework involves the design and operation of graphical user interfaces with the basic building blocks of point, click, scroll, hover and zoom and, more particularly, to graphical user interfaces associated with media items which can be used with a three-dimensional (hereinafter “3D”) pointing remote.
Technologies associated with the communication of information have evolved rapidly over the last several decades. Television, cellular telephony, the Internet and optical communication techniques (to name just a few things) combine to inundate consumers with available information and entertainment options. Taking television as an example, the last three decades have seen the introduction of cable television service, satellite television service, pay-per-view movies and video-on-demand. Whereas television viewers of the 1960s could typically receive perhaps four or five over-the-air TV channels on their television sets, today's TV watchers have the opportunity to select from hundreds and potentially thousands of channels of shows and information. Video-on-demand technology, currently used primarily in hotels and the like, provides the potential for in-home entertainment selection from among thousands of movie titles. Digital video recording (DVR) equipment such as offered by TiVo, Inc., 2160 Gold Street, Alviso, Calif. 95002, further expand the available choices.
The technological ability to provide so much information and content to end users provides both opportunities and challenges to system designers and service providers. One challenge is that while end users typically prefer having more choices rather than fewer, this preference is counterweighted by their desire that the selection process be both fast and simple. Unfortunately, the development of the systems and interfaces by which end users access media items has resulted in selection processes which are neither fast nor simple. Consider again the example of television programs. When television was in its infancy, determining which program to watch was a relatively simple process primarily due to the small number of choices. One would consult a printed guide which was formatted, for example, as series of columns and rows which showed the correspondence between (1) nearby television channels, (2) programs being transmitted on those channels and (3) date and time. The television was tuned to the desired channel by adjusting a tuner knob and the viewer watched the selected program. Later, remote control devices were introduced that permitted viewers to tune the television from a distance. This addition to the user-television interface created the phenomenon known as “channel surfing” whereby a viewer could rapidly view short segments being broadcast on a number of channels to quickly learn what programs were available at any given time.
Despite the fact that the number of channels and amount of viewable content has dramatically increased, the generally available user interface and control device options and framework for televisions has not changed much over the last 30 years. Printed guides are still the most prevalent mechanism for conveying programming information. The multiple button remote control with simple up and down arrows is still the most prevalent channel/content selection mechanism. The reaction of those who design and implement the TV user interface to the increase in available media content has been a straightforward extension of the existing selection procedures and interface objects. Thus, the number of rows and columns in the printed guides has been increased to accommodate more channels. The number of buttons on the remote control devices has been increased to support additional functionality and content handling, e.g., as shown inFIG. 1. However, this approach has significantly increased both the time required for a viewer to review the available information and the complexity of actions required to implement a selection. Arguably, the cumbersome nature of the existing interface has hampered commercial implementation of some services, e.g., video-on-demand, since consumers are resistant to new services that will add complexity to an interface that they view as already too slow and complex.
In addition to increases in bandwidth and content, the user interface bottleneck problem is being exacerbated by the aggregation of technologies. Consumers are reacting positively to having the option of buying integrated systems rather than a number of segregable components. A good example of this trend is the combination television/VCR/DVD in which three previously independent components are frequently sold today as an integrated unit. This trend is likely to continue, potentially with an end result that most if not all of the communication devices currently found in the household being packaged as an integrated unit, e.g., a television/VCR/DVD/internet access/radio/stereo unit. Even those who buy separate components desire seamless control of and interworking between them. With this increased aggregation comes the potential for more complexity in the user interface. For example, when so-called “universal” remote units were introduced, e.g., to combine the functionality of TV remote units and VCR remote units, the number of buttons on these universal remote units was typically more than the number of buttons on either the TV remote unit or VCR remote unit individually. This added number of buttons and functionality makes it very difficult to control anything but the simplest aspects of a TV or VCR without hunting for exactly the right button on the remote. Many times, these universal remotes do not provide enough buttons to access many levels of control or features unique to certain TVs. In these cases, the original device remote unit is still needed, and the original hassle of handling multiple remotes remains due to user interface issues arising from the complexity of aggregation. Some remote units have addressed this problem by adding “soft” buttons that can be programmed with the expert commands. These soft buttons sometimes have accompanying LCD displays to indicate their action. These too have the flaw that they are difficult to use without looking away from the TV to the remote control. Yet another flaw in these remote units is the use of modes in an attempt to reduce the number of buttons. In these “moded” universal remote units, a special button exists to select whether the remote should communicate with the TV, DVD player, cable set-top box, VCR, etc. This causes many usability issues including sending commands to the wrong device, forcing the user to look at the remote to make sure that it is in the right mode, and it does not provide any simplification to the integration of multiple devices. The most advanced of these universal remote units provide some integration by allowing the user to program sequences of commands to multiple devices into the remote. This is such a difficult task that many users hire professional installers to program their universal remote units.
Some attempts have also been made to modernize the screen interface between end users and media systems. Electronic program guides (EPGs) have been developed and implemented to replace the afore-described media guides. Early EPGs provided what was essentially an electronic replica of the printed media guides. For example, cable service operators have provided analog EPGs wherein a dedicated channel displays a slowly scrolling grid of the channels and their associated programs over a certain time horizon, e.g., the next two hours. Scrolling through even one hundred channels in this way can be tedious and is not feasibly scalable to include significant additional content deployment, e.g., video-on-demand. More sophisticated digital EPGs have also been developed. In digital EPGs, program schedule information, and optionally applications/system software, is transmitted to dedicated EPG equipment, e.g., a digital set-top box (STB). Digital EPGs provide more flexibility in designing the user interface for media systems due to their ability to provide local interactivity and to interpose one or more interface layers between the user and the selection of the media items to be viewed. An example of such an interface can be found in U.S. Pat. No. 6,421,067 to Kamen et al., the disclosure of which is incorporated here by reference. FIG. 2 depicts a GUI described in the '067 patent. Therein, according to the Kamen et al. patent, afirst column 190 lists program channels, asecond column 191 depicts programs currently playing, acolumn 192 depicts programs playing in the next half-hour, and afourth column 193 depicts programs playing in the half hour after that. Thebaseball bat icon 121 spanscolumns 191 and 192, thereby indicating that the baseball game is expected to continue into the time slot corresponding tocolumn 192. However,text block 111 does not extend through intocolumn 192. This indicates that the football game is not expected to extend into the time slot corresponding tocolumn 192. As can be seen, apictogram 194 indicates that after the football game, ABC will be showing a horse race. The icons shown in FIG. 2 can be actuated using a cursor, not shown, to implement various features, e.g., to download information associated with the selected programming. Other digital EPGs and related interfaces are described, for example, in U.S. Pat. Nos. 6,314,575, 6,412,110, and 6,577,350, the disclosures of which are also incorporated here by reference.
However, the interfaces described above suffer from, among other drawbacks, an inability to easily scale between large collections of media items and small collections of media items. For example, interfaces which rely on lists of items may work well for small collections of media items, but are tedious to browse for large collections of media items. Interfaces which rely on hierarchical navigation (e.g., tree structures) may be more speedy to traverse than list interfaces for large collections of media items, but are not readily adaptable to small collections of media items. Additionally, users tend to lose interest in selection processes wherein the user has to move through three or more layers in a tree structure. For all of these cases, current remote units make this selection processor even more tedious by forcing the user to repeatedly depress the up and down buttons to navigate the list or hierarchies. When selection skipping controls are available such as page up and page down, the user usually has to look at the remote to find these special buttons or be trained to know that they even exist.
Organizing frameworks, techniques and systems which simplify the control and screen interface between users and media systems as well as accelerate the selection process have been described in U.S. patent application Ser. No. 10/768,432, filed on Jan. 30, 2004, entitled “A Control Framework with a Zoomable Graphical User Interface for Organizing, Selecting and Launching Media Items”, the disclosure of which is incorporated here by reference and which is hereafter referred to as the “'432 application”. Such frameworks permit service providers to take advantage of the increases in available bandwidth to end user equipment by facilitating the supply of a large number of media items and new services to the user.
Thus, it would be desirable to provide interfaces which supply an easy and fast selection experience regardless of the size(s) of the media item collection(s) being browsed. One objective associated with such interfaces is to lay out the items in a manner which provides a pleasing appearance to the user. Another objective is to make better use of limited display (e.g., TV screen) space to display more and larger images per layout. Yet another objective is to automatically provide layouts of multiple groups having the same or varying sizes.
SUMMARYSystems and methods according to the present invention address these needs and others by providing a user interface displayed on a screen with a plurality of control elements, at least some of the plurality of control elements having at least one alphanumeric character displayed thereon. A text box for displaying alphanumeric characters entered using the plurality of control elements and a plurality of groups of displayed items. The layout of the plurality of groups on the user interface is based on a first number of groups which are displayed, and wherein a layout of the displayed items within a group is based on a second number of items displayed within that group.
According to one exemplary embodiment of the present invention, a method for laying out items in a user interface includes the steps of: laying out a plurality of groups of items within a group display space, the groups being laid out within the display space in a pattern which varies as a function of the number of the plurality of groups, and laying out, for each of the plurality of groups, a plurality of items within an item display space associated with a respective one of the plurality of groups, the items being laid out within a respective item display space in a pattern which varies as a function of the number of the plurality of items.
BRIEF DESCRIPTION OF THE DRAWINGSThe accompanying drawings illustrate exemplary embodiments of the present invention, wherein:
FIG. 1 depicts a conventional remote control unit for an entertainment system;
FIG. 2 depicts a conventional graphical user interface for an entertainment system;
FIG. 3 depicts an exemplary media system in which exemplary embodiments of the present invention (both display and remote control) can be implemented;
FIG. 4 shows a system controller ofFIG. 3 in more detail;
FIGS. 5-8 depict a graphical user interface for a media system according to an exemplary embodiment of the present invention;
FIGS. 9-13 depict a zoomable graphical user interface according to another exemplary embodiment of the present invention;
FIG. 14(a) illustrates a user interface for searching and displaying search results in a graphical layout according to exemplary embodiments of the present invention;
FIG. 14(b) illustrates an abstraction of a user interface for searching and displaying search results in a graphical layout according to exemplary embodiments of the present invention;
FIGS. 15(a-n) illustrate groups containing items with overlap to exemplary embodiments of the present invention;
FIGS. 16(a) and16(b) illustrate a hoverzoom effect according to exemplary embodiments of the present invention;
FIGS. 17(a-h) illustrate groups containing items without overlap according to exemplary embodiments of the present invention;
FIG. 18 illustrates groups with vertical overlapping in a user interface according to exemplary embodiments of the present invention; and
FIG. 19 illustrates groups with vertical overlapping in a user interface according to exemplary embodiments of the present invention.
DETAILED DESCRIPTIONThe following detailed description of the invention refers to the accompanying drawings. The same reference numbers in different drawings identify the same or similar elements. Also, the following detailed description does not limit the invention. Instead, the scope of the invention is defined by the appended claims.
In order to provide some context for this discussion, an exemplary aggregatedmedia system200 in which the present invention can be implemented will first be described with respect toFIG. 3. Those skilled in the art will appreciate, however, that the present invention is not restricted to implementation in this type of media system and that more or fewer components can be included therein. Therein, an input/output (I/O)bus210 connects the system components in themedia system200 together. The I/O bus210 represents any of a number of different mechanisms and techniques for routing signals between the media system components. For example, the I/O bus210 may include an appropriate number of independent audio “patch” cables that route audio signals, coaxial cables that route video signals, two-wire serial lines or infrared or radio frequency transceivers that route control signals, optical fiber or any other routing mechanisms that route other types of signals.
In this exemplary embodiment, themedia system200 includes a television/monitor212, a video cassette recorder (VCR)214, digital video disk (DVD) recorder/playback device216, audio/video tuner218 andcompact disk player220 coupled to the I/O bus210. TheVCR214,DVD216 andcompact disk player220 may be single disk or single cassette devices, or alternatively may be multiple disk or multiple cassette devices. They may be independent units or integrated together. In addition, themedia system200 includes a microphone/speaker system222,video camera224 and a wireless I/O control device226. According to exemplary embodiments of the present invention, the wireless I/O control device226 is a media system remote control unit that supports 3D pointing, has a minimal number of buttons to support navigation, and communicates with theentertainment system200 through RF signals. For example, wireless I/O control device226 can be a 3D pointing device which uses a gyroscope or other mechanism to define both a screen position and a motion vector to determine the particular command desired. A set of buttons can also be included on the wireless I/O device226 to initiate the “click” primitive described below as well as a “back” button. In another exemplary embodiment, wireless I/O control device226 is a media system remote control unit, which communicates with the components of theentertainment system200 through IR signals. In yet another embodiment, wireless I/O control device226 may be an IR remote control device similar in appearance to a typical entertainment system remote control with the added feature of a track-ball or other navigational mechanisms which allows a user to position a cursor on a display of theentertainment system200.
Theentertainment system200 also includes asystem controller228. According to one exemplary embodiment of the present invention, thesystem controller228 operates to store and display entertainment system data available from a plurality of entertainment system data sources and to control a wide variety of features associated with each of the system components. As shown inFIG. 3,system controller228 is coupled, either directly or indirectly, to each of the system components, as necessary, through I/O bus210. In one exemplary embodiment, in addition to or in place of I/O bus210,system controller228 is configured with a wireless communication transmitter (or transceiver), which is capable of communicating with the system components via IR signals or RF signals. Regardless of the control medium, thesystem controller228 is configured to control the media components of themedia system200 via a graphical user interface described below.
As further illustrated inFIG. 3,media system200 may be configured to receive media items from various media sources and service providers. In this exemplary embodiment,media system200 receives media input from and, optionally, sends information to, any or all of the following sources:cable broadcast230, satellite broadcast232 (e.g., via a satellite dish), very high frequency (VHF) or ultra high frequency (UHF) radio frequency communication of the broadcast television networks234 (e.g., via an aerial antenna),telephone network236 and cable modem238 (or another source of Internet content). Those skilled in the art will appreciate that the media components and media sources illustrated and described with respect toFIG. 3 are purely exemplary and thatmedia system200 may include more or fewer of both. For example, other types of inputs to the system include AM/FM radio and satellite radio.
FIG. 4 is a block diagram illustrating an embodiment of anexemplary system controller228 according to the present invention.System controller228 can, for example, be implemented as a set-top box and includes, for example, aprocessor300,memory302, adisplay controller304, other device controllers (e.g., associated with the other components of system200), one or moredata storage devices308 and an I/O interface310. These components communicate with theprocessor300 viabus312. Those skilled in the art will appreciate thatprocessor300 can be implemented using one or more processing units. Memory device(s)302 may include, for example, DRAM or SRAM, ROM, some of which may be designated as cache memory, which store software to be run byprocessor300 and/or data usable by such programs, including software and/or data associated with the graphical user interfaces described below.Display controller304 is operable byprocessor300 to control the display ofmonitor212 to, among other things, display GUI screens and objects as described below. Zoomable GUIs according to exemplary embodiments of the present invention provide resolution independent zooming, so thatmonitor212 can provide displays at any resolution.Device controllers306 provide an interface between the other components of themedia system200 and theprocessor300.Data storage308 may include one or more of a hard disk drive, a floppy disk drive, a CD-ROM device, or other mass storage device. Input/output interface310 may include one or more of a plurality of interfaces including, for example, a keyboard interface, an RF interface, an IR interface and a microphone/speech interface. According to one exemplary embodiment of the present invention, I/O interface310 will include an interface for receiving location information associated with movement of a wireless pointing device.
Generation and control of a graphical user interface according to exemplary embodiments of the present invention to display media item selection information is performed by thesystem controller228 in response to theprocessor300 executing sequences of instructions contained in thememory302. Such instructions may be read into thememory302 from other computer-readable mediums such as data storage device(s)308 or from a computer connected externally to themedia system200. Execution of the sequences of instructions contained in thememory302 causes the processor to generate graphical user interface objects and controls, among other things, onmonitor212. In alternative embodiments, hard-wire circuitry may be used in place of or in combination with software instructions to implement the present invention. As mentioned in the Background section, conventional interface frameworks associated with the television industry are severely limited in their ability to provide users with a simple and yet comprehensive selection experience. Accordingly, control frameworks described herein overcome these limitations and are, therefore, intended for use with televisions, albeit not exclusively. It is also anticipated that the revolutionary control frameworks, graphical user interfaces and/or various algorithms described herein will find applicability to interfaces which may be used with computers and other non-television devices. In order to distinguish these various applications of exemplary embodiments of the present invention, the terms “television” and “TV” are used in this specification to refer to a subset of display devices, whereas the terms “GUI”, “GUI screen”, “display” and “display screen” are intended to be generic and refer to television displays, computer displays and any other display device. More specifically, the terms “television” and “TV” are intended to refer to the subset of display devices which are able to display television signals (e.g., NTSC signals, PAL signals or SECAM signals) without using an adapter to translate television signals into another format (e.g., computer video formats). In addition, the terms “television” and “TV” refer to a subset of display devices that are generally viewed from a distance of several feet or more (e.g., sofa to a family room TV) whereas computer displays are generally viewed close-up (e.g., chair to a desktop monitor).
Having described an exemplary media system which can be used to implement control frameworks including zoomable graphical interfaces according to the present invention, several examples of such interfaces will now be described. Those skilled in the art will, however, appreciate that layout techniques and mechanisms according to exemplary embodiments of the present invention are not limited to usage in a zoomable user interface and can also be applied to user interfaces which do not use zooming mechanisms. According to some exemplary embodiments of the present invention, a user interface displays selectable items which can be grouped by category. A user points a remote unit at the category or categories of interest and depresses the selection button to zoom in or the “back” button to zoom back. Each zoom in, or zoom back, action by a user results in a change in the magnification level and/or context of the selectable items rendered by the user interface on the screen. According to exemplary embodiments, each change in magnification level can be consistent, i.e., the changes in magnification level are provided in predetermined steps. Exemplary embodiments of the present invention also provide for user interfaces which incorporate several visual techniques to achieve scaling to the very large. These techniques involve a combination of building blocks and techniques that achieve both scalability and ease-of-use, in particular techniques which supply an easy and fast selection experience regardless of the size(s) of the media item collection(s) being browsed.
The user interface is largely a visual experience. In such an environment exemplary embodiments of the present invention make use of the capability of the user to remember the location of objects within the visual environment. This is achieved by providing a stable, dependable location for user interface selection items, which is at the same time pleasing to the user and efficiently uses the allocated display space. Each object or item has a location in the zoomable layout, which location can be selected according to layout rules described below with respect toFIGS. 14-19. Once the user has found an object of interest it is natural to remember which direction was taken to locate the object. If that object is of particular interest it is likely that the user will re-visit the item more than once, which will reinforce the user's memory of the path to the object. User interfaces according to exemplary embodiments of the present invention provide visual mnemonics that help the user remember the location of items of interest. Such visual mnemonics include pan and zoom animations, transition effects which generate a geographic sense of movement across the user interface's virtual surface and consistent zooming functionality, among other things which will become more apparent based on the examples described below.
Referring first toFIGS. 5-8, an exemplary control framework including a zoomable graphical user interface according to an exemplary embodiment of the present invention is described for use in displaying and selecting musical media items.FIG. 5 portrays the zoomable GUI at a high level e.g., a second “most zoomed out” state. Therein, the interface displays a set ofshapes500. Displayed within eachshape500 aretext502 and/or apicture504 that describe the group of media item selections accessible via that portion of the GUI. As shown inFIG. 5, theshapes500 are rectangles, andtext502 and/orpicture504 describe the genre of the media. However, those skilled in the art will appreciate that this first viewed GUI grouping could represent other aspects of the media selections available to the user e.g., artist, year produced, area of residence for the artist, length of the item, or any other characteristic of the selection. Also, the shapes used to outline the various groupings in the GUI need not be rectangles. Shrunk down versions of album covers and other icons could be used to provide further navigational hints to the user in lieu of or in addition totext502 and/orpicture504 within theshape groupings500. A background portion of theGUI506 can be displayed as a solid color or be a part of a picture such as a map to aid the user in remembering the spatial location of genres so as to make future uses of the interface require less reading. The selection pointer (cursor)508 follows the movements of an input device and indicates the location to zoom in on when the user presses the button on the device (not shown inFIG. 5).
According to one exemplary embodiment of the present invention, the input device can be a 3D pointing device, e.g., the 3D pointing device described in U.S. patent application Ser. No. 11/119,663, filed on May 2, 2005, entitled “3D Pointing Devices and Methods”, the disclosure of which is incorporated here by reference and which is hereafter referred to as the “'663 application”, coupled with a graphical user interface that supports the point, click, scroll, hover and zoom building blocks which are described in more detail below. One feature of this exemplary input device that is beneficial for use in conjunction with the present invention is that it can be implemented with only two buttons and a scroll wheel, i.e., three input actuation objects. One of the buttons can be configured as a ZOOM IN (select) button and one can be configured as a ZOOM OUT (back) button. Compared with the conventional remote control units, e.g., that shown inFIG. 1, the present invention simplifies this aspect of the GUI by greatly reducing the number of buttons, etc., that a user is confronted with in making his or her media item selection. An additional preferred, but not required, feature of input devices according to exemplary embodiments of the present invention is that they provide “3D pointing” capability for the user. The phrase “3D pointing” is used in this specification to refer to the ability of a user to freely move the input device in three (or more) dimensions in the air in front of the display screen and the corresponding ability of the user interface to translate those motions directly into movement of a cursor on the screen. Thus “3D pointing” differs from conventional computer mouse pointing techniques which use a surface other than the display screen, e.g., a desk surface or mousepad, as a proxy surface from which relative movement of the mouse is translated into cursor movement on the computer display screen. Use of 3D pointing in control frameworks according to exemplary embodiments of the present invention further simplifies the user's selection experience, while at the same time providing an opportunity to introduce gestures as distinguishable inputs to the interface. A gesture can be considered as a recognizable pattern of movement over time which pattern can be translated into a GUI command, e.g., a function of movement in the x, y, z, yaw, pitch and roll dimensions or any subcombination thereof. Those skilled in the art will appreciate, however that any suitable input device can be used in conjunction with zoomable GUIs according to the present invention. Other examples of suitable input devices include, but are not limited to, trackballs, touchpads, conventional TV remote control devices, speech input, any devices which can communicate/translate a user's gestures into GUI commands, or any combination thereof. It is intended that each aspect of the GUI functionality described herein can be actuated in frameworks according to the present invention using at least one of a gesture and a speech command. Alternate implementations include using cursor and/or other remote control keys or even speech input to identify items for selection.
FIG. 6 shows a zoomed in view ofGenre3 that would be displayed if the user selectsGenre3 fromFIG. 5, e.g., by moving thecursor508 over the area encompassed by therectangle surrounding Genre3 ondisplay212 and depressing a button on the input device. The interface can animate the zoom fromFIG. 5 toFIG. 6 so that it is clear to the user that a zoom occurred. An example of such an animated zoom/transition effect is described below. Once theshape516 that containsGenre3 occupies most of the screen ondisplay212, the interface reveals the artists that have albums in the genre. In this example, seven different artists and/or their works are displayed. Theunselected genres515 that were adjacent toGenre3 in the zoomed out view ofFIG. 5 are still adjacent toGenre3 in the zoomed in view, but are clipped by the edge of thedisplay212. These unselected genres can be quickly navigated to by selection of them withselection pointer508. It will be appreciated, however, that other exemplary embodiments of the present invention can omit clipping neighboring objects and, instead, present only the unclipped selections. Each of the artist groups, e.g.,group512, can contain images of shrunk album covers, a picture of the artist or customizable artwork by the user in the case that the category contains playlists created by the user.
A user may then select one of the artist groups for further review and/or selection.FIG. 7 shows a further zoomed in view in response to a user selection ofArtist3 via positioning ofcursor508 and actuation of the input device, in which images of album covers520 come into view. As with the transition from the GUI screen ofFIG. 5 andFIG. 6, the unselected, adjacent artists (artists #2,6 and7 in this example) are shown towards the side of the zoomed in display, and the user can click on these withselection pointer508 to pan to these artist views. In this portion of the interface, in addition to theimages520 of album covers,artist information524 can be displayed as an item in the artist group. This information may contain, for example, the artist's picture, biography, trivia, discography, influences, links to web sites and other pertinent data. Each of thealbum images520 can contain a picture of the album cover and, optionally, textual data. In the case that thealbum image520 includes a user created playlist, the graphical user interface can display a picture which is selected automatically by the interface or preselected by the user.
Finally, when the user selects analbum cover image520 from within thegroup521, the interface zooms into the album cover as shown inFIG. 8. As the zoom progresses, the album cover can fade or morph into a view that contains items such as the artist and title of thealbum530, a list oftracks532, further information about thealbum536, a smaller version of thealbum cover528, and controls534 to play back the content, modify the categorization, link to the artists web page, or find any other information about the selection. Neighboring albums538 are shown that can be selected usingselection pointer508 to cause the interface to bring them into view. As mentioned above, alternative embodiments of the present invention can, for example, zoom in to only display the selected object, e.g.,album5, and omit the clipped portions of the unselected objects, e.g.,albums4 and6. This final zoom provides an example of semantic zooming, wherein certain GUI elements are revealed that were not previously visible at the previous zoom level. Various techniques for performing semantic zooming according to exemplary embodiments of the present invention are provided below.
As illustrated in theFIGS. 5-8 and the description, this exemplary embodiment of a graphical user interface provides for navigation of a music collection. Interfaces according to the present invention can also be used for video collections such as for DVDs, VHS tapes, other recorded media, video-on-demand, video segments and home movies. Other audio uses include navigation of radio shows, instructional tapes, historical archives, and sound clip collections. Print or text media such as news stories and electronic books can also be organized and accessed using this invention.
As will be apparent to those skilled in the art from the foregoing description, zoomable graphical user interfaces according to the present invention provide users with the capability to browse a large (or small) number of media items rapidly and easily. This capability is attributable to many characteristics of interfaces according to exemplary embodiments of the present invention including, but not limited to: (1) the use of images as all or part of the selection information for a particular media item, (2) the use of zooming to rapidly provide as much or as little information as a user needs to make a selection and (3) the use of several GUI techniques which combine to give the user the sense that the entire interface resides on a single plane, such that navigation of the GUI can be accomplished, and remembered, by way of the user's sense of direction. This latter aspect of GUIs according to the present invention can be accomplished by, among other things, linking the various GUI screens together “geographically” by maintaining as much GUI object continuity from one GUI screen to the next, e.g., by displaying edges of neighboring, unselected objects around the border of the current GUI screen. Alternatively, if a cleaner view is desired, and other GUI techniques provide sufficient geographic feedback, then the clipped objects can be omitted. As used in this text, the phrase “GUI screen” refers to a set of GUI objects rendered on one or more display units at the same time. A GUI screen may be rendered on the same display which outputs media items, or it may be rendered on a different display. The display can be a TV display, computer monitor or any other suitable GUI output device.
Another GUI effect which enhances the user's sense of GUI screen connectivity is the panning animation effect which is invoked when a zoom is performed or when the user selects an adjacent object at the same zoom level as the currently selected object. Returning to the example ofFIG. 5, as the user is initially viewing this GUI screen, his or her point-of-view is centered aboutpoint550. However, when he or she selectsGenre3 for zooming in, his or her point-of-view will shift topoint552. According to exemplary embodiments of the present invention, the zoom in process is animated to convey the shifting the POV center frompoint550 to552. This panning animation can be provided for every GUI change, e.g., from a change in zoom level or a change from one object to another object on the same GUI zoom level. Thus if, for example, a user situated in the GUI screen ofFIG. 6 selected the leftmost unselected genre515 (Genre2), a panning animation would occur which would give the user the visual impression of “moving” left or west. Exemplary embodiments of the present invention employ such techniques to provide a consistent sense of directional movement between GUI screens enables users to more rapidly navigate the GUI, both between zoom levels and between media items at the same zoom level.
These capabilities of graphical user interfaces according to the present invention, as well as the usefulness of more sophisticated layouts and algorithms for generating such layouts, will become even more apparent upon review of another exemplary embodiment described below with respect toFIGS. 9-13. Therein, astartup GUI screen1400 displays a plurality of organizing objects which operate as media group representations. The purely exemplary media group representations of home video, movies, TV, sports, radio, music and news could, of course include different, more or fewer media group representations. Upon actuation of one of these icons by a user, the GUI according to this exemplary embodiment will then display a plurality of images each grouped into a particular category or genre. For example, if the “movie” icon inFIG. 9 was actuated by a user, the GUI screen ofFIG. 10 can then be displayed. Therein, a large number, e.g., 120 or more, selection objects are displayed. These selection objects can be categorized into particular group(s), e.g., action, classics, comedy, drama, family and new releases. Those skilled in the art will appreciate that more or fewer categories could be provided. In this exemplary embodiment, the media item images can be cover art associated with each movie selection. Although the size of the blocks inFIG. 10 is too small to permit detailed illustration of this relatively large group of selection item images, in implementation, the level of magnification of the images is such that the identity of the movie can be discerned by its associated image, even if some or all of the text may be too small to be easily read.
The cursor (not shown inFIG. 10) can then be disposed over a group of the movie images and the input device actuated to provide a selection indication for one of the groups. In this example the user selects the drama group and the graphical user interface then displays a zoomed version of the drama group of images as seen inFIG. 11. As with the previous embodiment, a transition effect can also be displayed as the GUI shifts from the GUI screen ofFIG. 10 to the GUI screen ofFIG. 11, e.g., the GUI may pan the view from the center of the GUI screen ofFIG. 10 to the center of the drama group of images during or prior to the zoom. Note that although the zoomed version of the drama group ofFIG. 11 only displays a subset of the total number of images in the drama group, that this zoomed version can alternatively contain all of the images in the selected group. The choice of whether or not to display all of the images in a selected group in any given zoomed in version of a GUI screen can be made based upon, for example, the number of media items in a group and a minimum desirable magnification level for a media item for a particular zoom level. This latter characteristic of GUIs according to the present invention can be predetermined by the system designer/service provider or can be user customizable via software settings in the GUI. For example, the number of media items in a group and the minimum and/or maximum magnification levels can be configurable by either or both of the service provider or the end user. Such features enable those users with, for example, poor eyesight, to increase the magnification level of media items being displayed. Conversely, users with especially keen eyesight may decrease the level of magnification, thereby increasing the number of media items displayed on a GUI screen at any one time and decrease browsing time.
One exemplary transition effect which can be employed in graphical user interfaces according to the present invention is referred to herein as the “shoe-to-detail” view effect. When actuated, this transition effect takes a zoomed out image and simultaneously shrinks and translates the zoomed out image into a smaller view, i.e., the next higher level of magnification. The transition from the magnification level used in the GUI screen ofFIG. 10 to the greater magnification level used in the GUI screen ofFIG. 11 results in additional details being revealed by the GUI for the images which are displayed in the zoomed in version ofFIG. 11. The GUI selectively reveals or hides details at each zoom level based upon whether or not those details would display well at the currently selected zoom level. Unlike a camera zoom, which attempts to resolve details regardless of their visibility to the unaided eye, exemplary embodiments of the present invention provide for a configurable zoom level parameter that specifies a transition point between when to show the full image and when to show a version of the image with details that are withheld. The transition point can be based upon an internal resolution independent depiction of the image rather the resolution of TV/Monitor212. In this way, GUIs according to the present invention are consistent regardless of the resolution of the display device being used in the media system.
In this exemplary embodiment, an additional amount of magnification for a particular image can be provided by passing the cursor over a particular image. This feature can be seen inFIG. 12, wherein the cursor has rolled over the image for the movie “Apollo 13”. Although not depicted inFIG. 12, such additional magnification could, for example, make more legible the quote “Houston, we have a problem” which appears on the cover art of the associated media item as compared to the corresponding image in the GUI screen ofFIG. 12 which is at a lower level of magnification. User selection of this image, e.g., by depressing a button on the input device, can result in a further zoom to display the details shown inFIG. 13. This provides yet another example of semantic zooming as it was previously described since various information and control elements are present in the GUI screen ofFIG. 13 that were not available in the GUI screen ofFIG. 12. For example, information about the movie “Apollo 13” including, among other things, the movie's runtime, price and actor information is shown. Those skilled in the art will appreciate that other types of information could be provided here. Additionally, this GUI screen includes GUI control objects including, for example, button control objects for buying the movie, watching a trailer or returning to the previous GUI screen (which could also be accomplished by depressing the ZOOM OUT button on the input device). Hyperlinks can also be used to allow the user to jump to, for example, GUI screens associated with the related movies identified in the lower right hand corner of the GUI screen ofFIG. 13 or information associated with the actors in this movie. In this example, some or all of the film titles under the heading “Filmography” can be implemented as hyperlinks which, when actuated by the user via the input device, will cause the GUI to display a GUI screen corresponding to that ofFIG. 13 for the indicated movie.
A transition effect can also be employed when a user actuates a hyperlink. Since the hyperlinks may be generated at very high magnification levels, simply jumping to the linked media item may cause the user to lose track of where he or she is in the media item selection “map”. Accordingly, exemplary embodiments of the present invention provide a transition effect to aid in maintaining the user's sense of geographic position when a hyperlink is actuated. One exemplary transition effect which can be employed for this purpose is a hop transition. In an initial phase of the transition effect, the GUI zooms out and pans in the direction of the item pointed to by the hyperlink. Zooming out and panning continues until both the destination image and the origination image are viewable by the user. Using the example ofFIG. 13 once again, if the user selects the hyperlink for “Saving Private Ryan”, then the first phase of the hyperlink hop effect would include zooming out and panning toward the image of “Saving Private Ryan” until both the image for “Saving Private Ryan” and “Apollo 13” were visible to the user. At this point, the transition effect has provided the user with the visual impression of being moved upwardly in an arc toward the destination image. Once the destination image is in view, the second phase of the transition effect gives the user the visual impression of zooming in and panning to, e.g., on the other half of the arc, the destination image. The hop time, i.e., the amount of time both phases one and two of this transition effect are displayed, can be fixed as between any two hyperlinked image items. Alternatively, the hop time may vary, e.g., based on the distance traveled over the GUI. For example, the hop time can be parameterized as HopTime=A log(zoomed-in scale level/hop apex scale level)+B(distance between hyperlinked media items)+C, where A, B and C are suitably selected constant values.
Scaling, Layout and SearchingGiven the potentially huge amount of content to be accessed using the afore-described (and other) user interfaces and systems, the need to layout objects on a display in a fashion that is pleasing to the eye as well as efficient with respect to space is becoming more important. A graphical layout deals with, for example, the number, size and specific arrangement of items on, e.g., a TV screen. Layouts are generally composed of two opposing factors, equilibrium and form. Equilibrium is achieved when objects are uniformly and symmetrically distributed which is the lowest energy state. The mind strives for equilibrium when trying to deal with complexity; however, a layout in total equilibrium is usually considered boring. To add interest to a layout, equilibrium is perturbed by introducing form. Also when considering layouts it is often useful to understand and use the concepts of centricity and eccentricity. Centricity pertains to the central location while eccentricity pertains to locations in the layout which are offset from the center. When viewing a layout there is a perceived tension, or force, between these focal points. A layout that is pleasing to the user is achieved with a mixture of equilibrium and form to combine simplicity and interest coupled with some amount of tension. These concepts are used in exemplary embodiments of the present invention when displaying groups of selectable media items, such as images of movie covers, as part of a user interface displayed on, e.g., a TV screen.
According to one exemplary embodiment of the present invention, a user interface associated providing a searching mechanism for searching among selectable media items can generate a displayed screen such as that illustrated inFIG. 14(a). For multiple groups of displayed items, it may be desirable that a user perceive each group as a cohesive whole. It may further be desirable to minimize the amount of border space and maximize an image size associated with each displayed item. Accordingly, this exemplary embodiment of the present invention incorporates image overlapping and a black border added to each image, although these effects could also be used independently of one another. The border helps the eye delineate each object within an overlapping layout. Overlapping increases the perception of ‘belonging’ desirable to display a unified group and adds a three-dimensional (3D) effect to the layout. With overlapping, a sufficient surface view of the image remains uncovered to gain the users' attention and achieve recognition. In fact, the parts of the images that are hidden through overlapping can serve to heighten the curiosity of the users. When a user positions a cursor over a particular displayed item, the hover effect described above will then reveal the entire image as well as increase its size. In addition, the overlapping feature provides additional freedom in placement rules by making better use of the space between images and groups and allowing the displayed images to be scaled significantly larger than they could be if placed separately.
Theexemplary GUI screen2000 depicted inFIG. 14(a) contains a text entry widget including a plurality ofcontrol elements2004, with at least some of thecontrol elements2004 being drawn as keys or buttons havingalphanumeric characters2014 thereon, andother control elements2004 being drawn on the interface as havingnon-alphanumeric characters2016 which can be, e.g., used to control character entry. In this example, thecontrol elements2004 are laid out in two horizontal rows across the interface, although other configurations may be used.
Upon actuating acontrol element2004, e.g., by clicking a button on a 3D pointer, the corresponding alphanumeric input is displayed in thetextbox2002, disposed above the text entry widget, and one or more groups of displayed items related to the alphanumeric input provided via the control element(s) can be displayed on the interface, e.g., below the text entry widget. Thus, the GUI screen depicted inFIG. 14(a) according to one exemplary embodiment of the present invention can be used to search for selectable media items, and graphically display the results of the search on a GUI screen, in a manner that is useful, efficient and pleasing to the user. (Note that in the illustrated example ofFIG. 14(a), although the letter “g” is illustrated as being displayed in thetext box2002, the displayed movie cover images below the text entry widget simply represent a test pattern and are not necessarily related to the input letter “g” as they could be in an implementation, e.g., the displayed movie covers could be only those whose movie titles start with the letter “g”). In particular, the layout of the fourgroups2006,2008,2010 and2012 of displayed items within the region of the user interface allocated for search results to be displayed is based on the number of groups which are displayed and the layout of displayed items (in this example, images of movie covers) within each group is based upon the number of items displayed within each group. These layouts according to exemplary embodiments of the present invention can be governed by layout rules and algorithmically implemented in the user interface.
To illustrate how groups and items within groups can be laid out on user interfaces according to exemplary embodiments of the present invention, exemplary rules and algorithms for laying out selectable media items (but which can be equally applied to other displayed items) will now be described. To aid in understanding the application of these rules, some terminology is first defined. The phrase “group layout” refers to the layout of groups of displayed items within a group display area. In the example ofFIG. 14(a), the group display area is the portion of the display screen between the bottom of the text entry widget and the bottom of the display screen (with suitable margins). The phrase “item layout” refers to the layout of items within each group and, more specifically, within an item display area associated with each group.
To render each of these concepts more concrete, consider the abstraction of theGUI screen2000 ofFIG. 14(a) illustrated inFIG. 14(b). Therein, the four displayed groups ofitems2006,2008,2010 and2012 have a group layout within agroup display area2020 that is substantially trapezoidal, e.g., connecting the center points of thegroups2006,2008,2010 and2012 will form a trapezoid. Left-center display group2008 and right-center display group2010 are raised (placed further from the bottom) within thegroup display area2020 relative to theleftmost group2006 andrightmost group2012. The rectangles shown inFIG. 14(b) as surrounding the display groups2006-2012 represent exemplary item display areas for each respective group, i.e., the areas within which the items associated with each group are laid out. As seen inFIG. 14(a), these regions need not be explicitly displayed on the GUI screen2000 (although according to other exemplary embodiments, item display area boundaries may be displayed). Moreover, those skilled in the art will appreciate that the item display areas (as well as the group display area) need not be rectangular in shape, as in the example ofFIG. 14(b), but can be any desired shape. Within each item display area, the groups' displayed items are laid out according to item layout rules. An exemplary set of overlapping item layouts are shown inFIGS. 15(a)-(n) and exemplary rules for displaying these item layouts are described below. Each rule is based, at least in part, on the number of items within the group.
Group of 1 Item—Starting withFIG. 15(a), for a group consisting of one displayeditem3002, the item is placed in theitem display region3004 offset from a center of the item display region. For example, as shown inFIG. 15(b), this can be accomplished by rendering displayeditem3002 such that itscenter point3006 is offset upwardly and to the left of thecenter point3008 of theitem display region3004. Additionally, theitem3002 is scaled at the offset position such that a second item of the same size would not fit within theitem display area3004.
Group of 2 Items—For a group consisting of two displayeditems3010 and3012, illustrated inFIG. 15(c), the two displayed items are laid out in the item display area by aligning the center points of the two items on a diagonal within theitem display region3004. This is shown conceptually inFIG. 15(d), wherein acenter point3014 ofitem3010 is disposed up and to the left of thecenter point3008 of theitem display region3004 on diagonal3015, while acenter point3016 ofitem3012 is disposed down and to the right ofcenter point3008.
Group of 3 Items—For a group consisting of three displayeditems3018,3020 and3022, illustrated inFIG. 15(e), the three displayed items are laid out in the item display area by aligning the center points of the three items on the circumference of a circle within theitem display region3004. This is shown conceptually inFIG. 15(f), wherein acenter point3024 ofitem3018 is disposed above thecenter point3008 of theitem display region3004 on the circumference ofcircle3030, while acenter point3026 ofitem3020 is disposed down and to the left ofcenter point3008 and acenter point3028 ofitem3022 is disposed down and to the right ofcenter point3008.
Group of 4 Items—For a group consisting of four displayed items,3032,3034,3036 and3038, illustrated inFIG. 15(g), the four displayed items are laid out in the item display area by aligning the center points of the four items on the corners of a rhombus within theitem display region3004. This is shown conceptually inFIG. 15(h), wherein acenter point3040 ofitem3032 is disposed up and to the left of thecenter point3008 of theitem display region3004 onrhombus3048, while acenter point3042 ofitem3034 is disposed up and to the right of thecenter point3008, while acenter point3044 ofitem3036 is disposed below and to the left ofcenter point3008 and while acenter point3046 ofitem3038 is disposed below and to the right ofcenter point3008.
Group of 5 Items—For a group consisting of five displayeditems3050,3052,3054,3056 and3058, illustrated inFIG. 15(i), the five displayed items are laid out in theitem display area3004 by placing the center points of the five items on the right half of a circumference of an ellipse within theitem display region3004. This is shown conceptually inFIG. 15(j), wherein acenter point3060 ofitem3050 is dispose up and to the left of thecenter point3008 of theitem display region3004 on the right half of a circumference of anellipse3070, while acenter point3062 ofitem3052 is disposed above thecenter point3008, while acenter point3064 ofitem3054 is disposed to the right of thecenter point3008, while acenter point3066 ofitem3056 is disposed below thecenter point3008 and while acenter point3068 ofitem3058 is disposed down and to the left of thecenter point3008.
Group of 6 Items—For a group consisting of six displayed items,3072,3074,3076,3078,3080 and3082, illustrated inFIG. 15(k), the six displayed items are laid out in theitem display area3004 by creating a grid such that three items are arranged in an upper row above three items arranged in a lower row. An upperleftmost item3072 is aligned above a lowerleftmost item3082 and a top edge of the upper leftmost item is higher than a top edge of an upper rightmost item. The upperrightmost item3076 is aligned above a lowerrightmost item3080, the lowerrightmost item3080 is aligned below the upperrightmost item3076 and a bottom edge of the lower leftmost item is lower than a bottom edge of the lower rightmost item. Anupper center item3074 is left of the center point of the group and overlaps both items in the upper row. Alower center item3078 is right of the center point of the group and overlaps both items in the lower row and overlaps theupper center item3074.
Group of 7 Items—For a group consisting of seven displayed items,3084,3086,3088,3090,3092,3094 and3096, illustrated inFIG. 15(l), the seven displayed items are laid out in theitem display area3004 by creating a grid such that oneitem3090 is in the center, three items are arranged in an upper row above the center item and three items are arranged below the center item in a lower row. An upperleftmost item3084 is slightly higher than an upperrightmost item3088 and is aligned with a lowerleftmost item3096. The upperrightmost item3088 is slightly lower than the upperleftmost item3084 and is aligned with a lowerrightmost item3092. The lowerrightmost item3092 is in line with both the upperrightmost item3088 and the lowerleftmost item3096. The top edge of the middle item in theupper row3086 is higher than the top edges of both the upper leftmost item and the upper rightmost item. The bottom edge of the middle item in thelower row3094 is lower than a bottom edge of both the lowerleftmost item3096 and the lowerrightmost item3092. Thecenter item3090 can overlap all other items, the middle items in either row overlap items in that row and wherein thecenter item3090 is left of the center point of theitem display area3004 and the middle items are right of the center point of theitem display area3004.
Groups of 8 Items—For a group consisting of eight displayed items,3098,3100,3102,3104,3106,3108,3110 and3112, illustrated inFIG. 15(m), the eight displayed items are laid out in theitem display area3004 by creating a grid such that two items are arranged in a middle row, three items are arranged in an upper row above the middle row and three items are arranged in a lower row below the middle row. An upperleftmost item3112 is aligned with both an upperrightmost item3100 and a lowerleftmost item3108. The upperrightmost item3100 is aligned with both the upperleftmost item3112 and a lowerrightmost item3104. The lowerrightmost item3104 is aligned with both the upperrightmost item3100 and the lowerleftmost item3108. A top edge of amiddle item3098 in the upper row is higher than the top edges of both the upper leftmost item and the upper rightmost item. A bottom edge of amiddle item3106 in the lower row is lower than the bottom edge of both the lower leftmost item and the lower rightmost item. Overlapping occurs between the middle row and all other rows, and that the center items in either the upper row or the lower row overlap items in their respective row. Similar overlapping layout rules and algorithms can be applied to groups having more items, e.g., up to and including sixteen items, an example of which is shown inFIG. 15(n).
Having described exemplary layout rules according to one exemplary embodiment of the present invention, consider againFIG. 14(a). In this example, the layout rules described above are recursively applied to display four groups of search results, e.g., selectable media items represented by movie cover images. The four groups include aleftmost group2006, a left-center group2008, a right-center group2010 and arightmost group2012. When the user interface software prepares to display these groups on theGUI screen2000, it recursively applies the above described rules to determine an appropriate display layout for the groups, as well as for the items within each group. For example, the left-center group2008 has three items which are arranged such that center points of each item are located on a circumference of a circle and each of the three items overlap. Similarly, theother groups2006,2010 and2012 have their items laid out by applying the rule associated with the number of items in the respective group.
As mentioned above, a hover zoom effect can be used in conjunction with overlapping images to allow the user to view the portion of the image obscured within the collage layout. Consider, for example, the group layout illustrated inFIG. 16(a) involves a group of eight, overlapping items. When the user points to an image, it rises to the top and is scaled to a larger size (“hover zoom”). Thus, inFIG. 16(b), the user has moved a cursor (not shown inFIG. 16(b)), or otherwise indicated an initial selection of the item4002 (associated with the movie “The Pianist”), causing that image to rise above theitem4004 which was obscuring it in its originally displayed state and increasing the size of theitem4002.
According to another exemplary embodiment of the present invention, overlap need not be used in displaying groups of items, e.g., when fewer items are displayed. Thus, another set of rules and algorithms can be applied for laying out items without use of overlap as depicted inFIGS. 17(a)-(h). Exemplary rules for displaying a single group with non-overlapping items based on the number of items in the group are presented below in Table 1.
| TABLE 1 |
|
| Number of | |
| Items | Layout Rule | |
|
| 1 | FIG. 17(a) -- Theitem 5004 is placed to the right or left of the center point |
| of theitem display region 5002. Theitem 5004 is scaled to a size such |
| that a second item of the same size and border area will not fit in theitem |
| display region |
| 5002. |
| 2 | FIG. 17(b) -- The two items, 5006 and 5008, are scaled to fit side by side |
| and aligned on a diagonal such that a third item will not fit in theitem |
| display region |
| 5002. |
| 3 | FIG. 17(c) -- The three items, 5010, 5012 and 5014, are scaled to fit side |
| by side and aligned on a diagonal such that a fourth item will not fit in theitem |
| display region |
| 5002. |
| 4 | FIG. 17(d) -- The four items, 5016, 5018, 5020 and 5022, are scaled and |
| arranged in a circle such that a fifth item will not fit in theitem display |
| region |
| 5002. |
| 5 | FIG. 17(e) -- The five items, 5024, 5026, 5028, 5030 and 5032, are |
| arranged in a pyramid such that a sixth item will not fit in theitem |
| display region |
| 5002. |
| 6 | FIG. 17(f) -- The six items, 5034, 5036, 5038, 5040, 5042 and 5044, are |
| scaled in two rows forming a rectangle such that a seventh item will not |
| fit in theitem display region 5002. |
| 7 | FIG. 17(g) -- The seven items, 5046, 5048, 5050, 5052, 5054, 5056 and |
| 5058, are arranged in a pyramid such that an eighth item will not fit in the |
| item display region 5002. |
| 8 | FIG. 17(h) -- The eight items, 5060, 5062, 5064, 5066, 5070, 5072, 5074 |
| and 5076, are scaled in two rows forming a rectangle such that a ninth |
| item will not fit in theitem display region 5002. |
|
Numerous other variations of user interface layouts are contemplated by exemplary embodiments of the present invention. For example, the layout rules and algorithms described above can be used without displaying a text entry box and/or a text entry widget. An example is illustrated inFIG. 18. Therein, horizontal overlapping is also used for the displayed results, e.g., offsetting the images from a vertical center of each group to add some eccentricity to the layout. Image size affects the percentage of overlap. The percentage of overlap used in generating GUI screens according to exemplary embodiments of the present invention can be a function of screen size, number of items being displayed and/or user preference. Compare the layout ofFIG. 19 with that ofFIG. 18. The displayed items inFIG. 18 have a 50% horizontal overlap, while the (larger) displayed items inFIG. 19 have a 30% horizontal overlap. Another difference is that the items inFIG. 18 are stacked top to bottom (i.e., the topmost image in each vertical stack covers a portion of the second topmost image in each vertical stack, etc.), whereas the items inFIG. 19 are stacked bottom to top.
Systems and methods for processing data to generate layouts on user interfaces according to exemplary embodiments of the present invention can be performed by one or more processors executing sequences of instructions contained in a memory device. Such instructions may be read into the memory device from other computer-readable mediums such as secondary data storage device(s). Execution of the sequences of instructions contained in the memory device causes the processor to operate, for example, as described above. In alternative embodiments, hard-wire circuitry may be used in place of or in combination with software instructions to implement the present invention. The layout rules described herein can be encoded algorithmically in software and applied recursively, e.g., to recursively layout groups within a group display area and items within an item display area. Although the examples described above refer to two “layers” within each layout, i.e., a group layer and an item layer, those skilled in the art will appreciate that more (or fewer) than two layers can be implemented. For three or more layers, the layout rules can be applied recursively to generate a layout for each layer. According to these exemplary embodiments of the present invention, items are laid out in a display space in a manner which provides a pleasing appearance to the user, while at the same time making efficient use of limited display (e.g., TV screen) space to display more (and larger) images per layout.
Even using techniques, such as overlapping and scaling, to reduce the amount of space which each item requires on the user interface, there are still potential limits to the number of items which can be displayed on a single GUI screen while providing enough graphic detail to the item to be pleasing to the user. Naturally, such potential limits depend upon numerous implementation details, such as the type of items being displayed, the amount of space allocated for item display, the screen resolution, etc. For example movie covers have one ratio which is different from standard TV images and still further different from high definition TV images. Sometimes ‘show cards’ can be used in place of still images as items on the user interface, which also have different size ratios. Music album covers have a different size ratio. For each set of parameters, a different potential limit on the number of items being displayed can be established. For example, where movie cover images are used on a user interface which is intended to be shown on a high definition television screen, a maximum of 128 movie covers can be shown on a single GUI screen. If a search result or particular GUI screen should display more than 128 movie cover images in such an exemplary user interface according to the present invention, then a scroll mechanism can be added to the interface to allow the user to scroll down beyond an initial display of 128 items.
The above-described exemplary embodiments are intended to be illustrative in all respects, rather than restrictive, of the present invention. Thus the present invention is capable of many variations in detailed implementation that can be derived from the description contained herein by a person skilled in the art. All such variations and modifications are considered to be within the scope and spirit of the present invention as defined by the following claims. No element, act, or instruction used in the description of the present application should be construed as critical or essential to the invention unless explicitly described as such. Also, as used herein, the article “a” is intended to include one or more items.