Login| Sign Up| Help| Contact|

Patent Searching and Data


Title:
A METHOD FOR IMPROVING THE RESPONSIVENESS OF A DIGITAL MEDIA PLAYER
Document Type and Number:
WIPO Patent Application WO/2010/116189
Kind Code:
A1
Abstract:
A method for improving the responsiveness of a digital media player by (a) caching search parameters and the associated search results and (b) re-presenting prior results when a search is re-executed.

Inventors:
KNIGHT MARK (GB)
VIDAL JAUME (GB)
BEDWELL ED (GB)
EDWARDS DUNCAN (GB)
CROSBIE-SMITH MARK (GB)
EVANS CHRIS (GB)
SANT PHIL (GB)
WHITE MATT (GB)
COPPOCK ADAM (GB)
Application Number:
PCT/GB2010/050604
Publication Date:
October 14, 2010
Filing Date:
April 07, 2010
Export Citation:
Click for automatic bibliography generation   Help
Assignee:
OMNIFONE LTD (GB)
KNIGHT MARK (GB)
VIDAL JAUME (GB)
BEDWELL ED (GB)
EDWARDS DUNCAN (GB)
CROSBIE-SMITH MARK (GB)
EVANS CHRIS (GB)
SANT PHIL (GB)
WHITE MATT (GB)
COPPOCK ADAM (GB)
International Classes:
G06F17/30
Foreign References:
US7047242B12006-05-16
US20080214156A12008-09-04
US20090006308A12009-01-01
US20070033569A12007-02-08
Attorney, Agent or Firm:
ORIGIN LIMITED (Twisden RoadLondon, Greater London NW5 1DN, GB)
Download PDF:
Claims:
CLAIMS

1. A method for improving the responsiveness of a digital media player by (a) caching search parameters and the associated search results and (b) re-presenting prior results when a search is re-executed.

2. The method of Claim 1 where the said parameters and results are cached for a predefined time period.

3. The method of Claim 2 where the said predefined time period is defined using an absolute date/time or by a temporal period such as a number of minutes, hours, days, weeks or months or by any other mechanism.

4. The method of any preceding Claim where the said search results are obtained by querying a remote server using the said associated search parameters.

5. The method of any preceding Claim where the said search parameters include one or more of a text search term; one or more seed parameters, such as the identifiers for a music track, an artist, a video, a playlist or any other valid identifiers; and one or more indicators as to which fields are to be matched, such as artist names, album or release to track or video or eBook titles or any other metadata associated with items which can be searched.

6. The method of any preceding Claim where the said "search" constitutes a request for recommendations, the said "associated search parameters" constitute associated recommendation seeding parameters and the said search results constitutes a set of recommended items.

7. The method of any preceding Claim where the number of returned results is greater than the number of the said results which are required for immediate use by the said digital media player.

8. The method of any preceding Claim where the said digital media player presents a random subset of the said results in its user interface.

9. A method for improving the responsiveness of a digital media player by making use of locally cached data in its user interface until live data is obtained from the remote server.

10. The method of Claim 9 where die said live data is used to update the display of the said digital media player once the said live data is obtained from the remote server.

11. A method of improving the available bandwiddi of a digital media player by using metrics about network connections available to the said digital media player to determine which network connection to utilize at a given time.

12. A method for providing location-based digital media services on a digital media player by (a) identifying the location of the said digital media player and (b) utilizing location-based metadata to obtain items for use on the said digital media player.

13. The method of Claim 12 where the said location is identified using one or more of a mobile network country or language code, a GPS device or by any other means.

14. The method of Claim 12 or 13 where the location-based services include sets of artists from the said location, music tracks associated with die said location, films or other media content made in or around the said location, films or other media content set in or around the said location or any other location-based digital media services.

15. A method of constructing the user interface of a digital media player such that its constituent elements follow a left-to-right workflow ordering.

16. A method of constructing the user interface of a digital media player where the user interface presented by the said digital media player presents information in the form of tabbed user interface elements with each tab corresponding to a specific context such as artist, author, composer, music release or album, music track, user profile, video, playlist or any other context appropriate to the digital media.

17. The method of Claim 16 where the said tabbed user interface elements are so constructed as to store the user's history within the context of the said tab and provide the user with a mechanism to navigate that history.

18. A method for constructing the user interface of a digital media player such that data may be presented within "sliding panels" consisting of a title bar and a content area which may be expanded or collapsed by the user, whether or not animated.

19. The method of any preceding Claim where the said digital media player is a software application operating on a computing device and the said computing device is one or more of a personal computer, a gaming console, a television, an eBook reader, a mobile device or any other computing device.

Description:
A METHOD FOR IMPROVING THE RESPONSIVENESS OF A DIGITAL MEDIA PLAYER

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention is a method for implementing a media application on one or more types of digital media player computing devices, such that the user of the said devices is able to manage their music and personal information with improved responsiveness from the media players.

2. Description of the Related Art

Historically, the user interfaces of digital media applications have been based around a simple library-like systems, presenting users with actual or virtual folders which are navigated by the end user in a fashion akin to the way in which Microsoft™'s Windows Explorer program is used to navigate a file system.

The present invention discloses a radically different user interface method for such applications, in which the user interface presented by the digital media application is designed to reflect likely user workflow rather than a simple file hierarchy.

SUMMARY OF THE INVENTION

The present invention discloses a variety of techniques and novel approaches for implementing a media player on one or more types of computing device such that the user of the said devices is able to manage their music and personal information.

A first aspect is a method for improving the responsiveness of a digital media player by (a) caching search parameters and the associated search results and (b) re-presenting prior results when a search is re-executed. The parameters and results may be cached for a predefined time period.

A second aspect is a method for improving the responsiveness of a digital media player by making use of locally cached data in its user interface until live data is obtained from the remote server. The live data may be used to update the display of the said digital media player once the live data is obtained from the remote server.

A third aspect is a method of improving the available bandwidth of a digital media player by using metrics about network connections available to the said digital media player to determine which network connection to utilize at a given time.

A fourth aspect is a method of providing location-based digital media services on a digital media player by (a) identifying the location of the said digital media player and (b) utilizing location-based metadata to obtain items for use on the said digital media player.

A fifth aspect is a method of constructing the user interface of a digital media player such that its constituent elements follow a left-to-right workflow ordering.

A sixth aspect is method of constructing the user interface of a digital media player where the user interface presented by the said digital media player presents information in the form of tabbed user interface elements with each tab corresponding to a specific context such as artist, author, composer, music release or album, music track, user profile, video, playϋst or any other context appropriate to the digital media.

A seventh aspect is a method for constructing the user interface of a digital media player such that data may be presented within "sliding panels" consisting of a title bar and a content area which may be expanded or collapsed by the user, whether or not animated.

Definitions

For convenience, and to avoid needless repetition, the terms "music" and "media content" in this document are to be taken to encompass all "media content" which is in digital form or which it is possible to convert to digital form - including but not limited to books, magazines, newspapers and other periodicals, video in the form of digital video, motion pictures, television shows (as series, as seasons and as individual episodes), computer games and other interactive media, images (photographic or otherwise) and music.

Similarly, the term "track" indicates a specific item of media content, whether that be a song, a television show, an eBook or portion thereof, a computer game or any other discreet item of media content.

The terms "playlist" and "album" are used interchangeably to indicate collections of "tracks" which have been conjoined together such that they may be treated as a single entity for the purposes of analysis or recommendation.

The terms "digital media catalogue", "digital music catalogue", "media catalogue" and "catalogue" are used interchangeably to indicate a collection of tracks and/or albums to which a user may be allowed access for listening purposes.

The abbreviation "DRM" is used to refer to a "Digital Rights Management" system or mechanism used to grant access rights to a digital media file.

The verb "to listen" is to be taken as encompassing any interaction between a human and media content, whether that be listening to audio content, watching video or image content, reading books or other textual content, playing a computer game, interacting with interactive media content or some combination of such activities. The terms "user", "consumer", "end user" and "individual" are used interchangeably to refer to the person, or group of people, whose media content "listening" preferences are analysed and for whom recommendations are made. In all cases, the masculine includes the feminine and vice versa.

The terms "device" and "media player" are used interchangeably to refer to any computational device or software which is capable of playing digital media content, including but not limited to MP3 players, television sets, home computer systems, mobile computing devices, games consoles, handheld games consoles, vehicular-based media players or any other applicable device or software media player on such a device.

The "server" or "remote server" is a computing device which takes the role of a server in a client-server architecture.

The "client" device is a computing device and which may be a mobile computing device. The client device may be the same computing device as the server in some configurations.

The "remote database" consists of a collection of data items, however represented, on the server.

The "local database" consists of a collection of data items, however represented, on the client device.

The "network" is a method of communicating between the said server and the said client device using, for example, the internet, a local network or a wireless network.

The term "click" refers to the action of clicking an item using a mouse or mouse-like device or, in the case of touch-screen devices, to the action of tapping an item which is displayed on the said touch-sensitive screen.

In the preferred embodiment, the database and data items referred to are structured in a relational database which is accessed, directly or indirectly, using Structured Query Language (SQL) or some equivalently powerful Application Programming Interface (API). In the preferred embodiment, the local database is provided via an embedded C database engine. In another embodiment, the client application utilises an external database, whether external to the client application software or external to the client device entirely. BRIEF DESCRIPTION OF THE FIGURES

The invention will be described with reference to the Figure 1, which is a screen shot of a media player implementing an aspect of the present invention.

DETAILED DESCRIPTION

The present invention discloses a variety of techniques and novel approaches for implementing a media player on one or more types of computing device such that the user of the said devices is able to manage their music and personal information.

A variety of input devices can be supported using the interface disclosed herein, from physical controls through touchscreen devices, PCs and mobile devices and, especially for in-car players, voice recognition via, for example, MediaVox.

Tabbed Interface

The user interface tab concept is used to remember the user's most recent "context by type", such that a type-based tab always shows the last item which the user checked out of that type. In the preferred embodiment, context-based tabs present the user with the last artist, release, playlist and so forth which the user accessed, making that item always accessible to the user without research.

The user of drop-down menus on the tabs within the user-interface enables the application to "remember where you have been", providing the user with a quick history list the most recently examined items of that tab type, a feature which is unique within the field of digital media applications to the preferred embodiment of the present invention.

The tabbed interface permits a left-to-right workflow approach to the user interface, illustrated in FIGURE 1, which is unique to the preferred embodiment of the present invention in the field of media players. In the preferred embodiment, the user is presented on the display of the media player with a left list (1) which may be used for traditional search and navigation. Various other conventional functions are also provided; in Figure 1, the user has selected the 'Artists you might like' feature and there is shown a list of appropriate artists (Caesar's Palace down to The Witnesses). The tabbed interface to the right (2) presents details and recalls the user's history. In this case, the user has selected the 'Artists' tab and hence the most recently examined Artist is shown on that tab — in this case the band Kings of Leon. The media player itself is presented to the right (3). This enables a naturalistic left-to-right workflow on the part of the end user.

Sliding Panels

Within each tab, the user interface disclosed in the present invention supports user exploration of the presented data by, in the preferred embodiment, presenting a sliding panels interface.

The sliding panels present a panel tide and basic metadata about the panel's content to the user. In the preferred embodiment, panels may be expanded by clicking that tide to display the data within diat panel, while panels may be collapsed to just display that panel's tide by clicking again on die tide or by clicking-and-dragging the base of that panel upwards. In the preferred embodiment, such actions are animated on-screen where the device is capable of doing so.

Where tracks or releases are presented within a sliding panel, diose items may, in the preferred embodiment, be shuffled (i.e. their playback order re-ordered) as a group within that panel, in toto or in part, independendy of any other such items presented to the user in the interface.

Those tracks within an album or release which have previously been played or downloaded by the current user may be, in the preferred embodiment, presented either as a separated group or so presented to the user within any track listings or albums, releases or playlists presented to the user as to clearly differentiate die said downloaded tracks from any other tracks shown to the user. That differentiation is a distinct and unique aspect of die preferred embodiment of the present invention in the field of media players. Automatic Synchronisation

The present invention, in its preferred embodiment, presents a silently synchronized display of data to the user, such that the retrieval of additional data or metadata from a remote server is managed to reduce the latency of the user interface and to minimize manual interaction by the end user.

The method employed to that end is to first check if some data is available locally and, if so, to present that data to the user immediately. The "freshness" (how up to date) of that data is then verified in the background and, should more up to date data be retrieved from a remote server, that data is used to then update the display. Thus, the responsiveness of the user interface is maintained. Details of the techniques involved are disclosed in PCT/GB2010/050602. In essence, access to current data is ensured by providing the client application with a local replication of some or all of the content of the remote database via one or more of the following mechanisms:

• The inclusion within the client application installer of a copy of the required portion of the remote database

• Enabling the client application installer to retrieve a copy of the said required portion of the remote database during the installation process

• Enabling the client application to create and maintain a local database which is synchronized with the data held on the remote server

• Enabling the client application to create and maintain a local database which is synchronized with the structure within which that data is held on the remote server

By use of the said mechanisms, the client application's data, both in terms of its content and its structure, may be synchronized with the remote database server while minimizing the network traffic required to do so. Data items in the local database can have associated expiration points; expired data items may be refreshed with data from the remote server. The remote server maintains a record of which data is stored on each client installation along with expiration metadata for that said data.

In the preferred embodiment, the user interface makes use of this technique to provide a "drag and retrieve" methodology, whereby if the user drags a release to the lineup of the media player and the media player does not have full data for that release (for example, the application may have only a picture, tide and identifier for diat release) dien die lineup first interrogates the server to get the track list then adds each track in the said listing to the lineup.

Searching

The responsiveness of the media player is improved by maintaining a history of searches (i.e. search parameters) performed by the user and the results returned by those searched. If the user repeats a search within a pre-defined time period — which, in the preferred embodiment, is one day — then those cached results from the historical search are represented to the user.

This method, unique to the present invention in the field of digital media players, increases the responsiveness of die user interface, reduces unnecessary network traffic and reduces the load on the remote server.

The predefined time period can be defined using an absolute date/time or by a temporal period such as a number of minutes, hours, days, weeks or months or by any other mechanism. The search results are obtained by querying a remote server using the said associated search parameters. The search parameters can include one or more of a text search term; one or more seed parameters, such as the identifiers for a music track, an artist, a video, a playlist or any other valid identifiers; and one or more indicators as to which fields are to be matched, such as artist names, album or release to track or video or eBook tides or any other metadata associated with items which can be searched.

Recommendations

Similarly to the search optimization, when the digital media player requires recommendations of music tracks, albums, releases, movies, eBooks, computer games, artists, news articles or any other items for which recommendations may be sought by querying the remote server then those recommendations are retrieved and cached by the digital media player. Recommendation requests made using the same "seed" values then result in the cached values being used.

In die preferred embodiment, responsiveness is further improved by initially retrieving a pre-calculated set of recommendations from the remote server and then triggering a recalculation of that recommendations set on the remote server. By that method, the client's request does not have to wait for the recommendations to be recalculated if some set is already available, thus improving the responsiveness of the user interface.

In the preferred embodiment, the remote server attempts to return more recommendations to the client digital media application than can be immediately used. When retrieving recommendations from its cache, the client application then, in the preferred embodiment, shows a random selection of recommended items to the user, providing both improved responsiveness and an appearance to the end user that the list of recommendations is more dynamic.

Network Switching

The preferred embodiment of the present invention is capable of switching between networks on some devices, depending on availability and available Quality of Service metrics for differing network types. For example, if a WiFi network is available then the digital media player may prefer to switch to that from a mobile network connection.

The user interface needs to be responsive even where the network connection is unavailable or sluggish. For that reason, the user interface is, in the preferred embodiment, capable of making use of locally cached data instantly where it can, and of detecting network unavailability rapidly, so that it knows when it should use locally cached data and when it can refresh from the online server.

Location Based Services

Having obtained the location of the client device using, for example, its MCC/MNC, language code or its GPS device or by some other means, the present invention can, in its preferred embodiment, use that data to provide location-based services, such as "music by artists from this area". The location-based services can include sets of artists from the location, music tracks associated with the location, films or other media content made in or around the location, films or other media content set in or around the said location or any other location-based digital media services.