PATENT DOCUMENT

Publication Number: US-8341524-B2
Application Number: US-51935206-A
Country: US
Kind Code: B2

Title: Portable electronic device with local search capabilities

Abstract:
Improved methods and systems that assist a user in searching media items on a portable electronic device are disclosed. According to one aspect of the invention, a portable electronic device is provided with a search function that enables a user to search for media items resident on the portable electronic device. The search function can search through different types of media items. Those of the media items that are deemed matching can be ranked in order of relevance and displayed in a list for the user. Thereafter, the user can navigate the list to select one of the listed media items for playback. According to another aspect of the invention, various graphical user interfaces can be presented on a portable electronic device to assist a user in interacting with the portable electronic device to utilize a search function.

Claims:
1. In a portable electronic device that includes a display, a media storage device and a user input device, and is operable to present media items each having associated metadata, a method for searching media items stored on the portable electronic device the method comprising:
 activating a search function; 
 presenting a search window in accordance with the activated search function, the search window including a text box; 
 receiving, by the portable electronic device, a character string at the text box; 
 searching, by the portable electronic device, media items stored in the media storage by comparing the character string to at least a portion of the metadata of the media items to identify those media items that match at least a portion of the character string, wherein the metadata uniquely identifies each of the media items and is stored on the portable electronic device; 
 generating, by the portable electronic device, for all of the media items stored locally, a bitmap wherein each bit in the bitmap corresponds to one of the media items stored locally at the portable electronic device and provides an indication of whether or not the media item matched at least the portion of the received character string; 
 displaying, by the portable electronic device, at least a subset of the identified media items that match the portion of the character string; 
 receiving, by the portable electronic device, a second character string at the text box; 
 based upon the second character string and the character string, determining that the bitmap is relevant to a search using the second character string; and 
 searching, by the portable electronic, including examining according to the second character string the metadata of only the media items whose bit in the bitmap indicates the media item matched at least the portion of the received character string. 
 
     
     
       2. A method as recited in  claim 1 , wherein the method further comprises:
 receiving a selection of one of the identified media items; and 
 subsequently presenting the selected media item. 
 
     
     
       3. A method as recited in  claim 2 , wherein the presenting comprises displaying media content corresponding to the selected media item. 
     
     
       4. A method as recited in  claim 2 , wherein the presenting comprises playing media content corresponding to the selected media item. 
     
     
       5. A method as recited in  claim 1 , wherein the user input device comprises a rotational user input device. 
     
     
       6. A method as recited in  claim 5 , wherein the user applies a rotational action to the rotational user input device to identify each character of the character string to be input. 
     
     
       7. A method as recited in  claim 1 , wherein the operation of the search function is dependent on the one of the different screens from which the menu choice was selected to activate the search function. 
     
     
       8. A method as recited in  claim 1 , wherein the method further comprises:
 storing search data following the searching; and 
 subsequently utilizing the stored search data to process other related character string. 
 
     
     
       9. A method as recited in  claim 1 , wherein the method further comprises:
 storing search data following the searching; and 
 subsequently utilizing the stored search data to re-display at least a subset of those of the identified media items that match the character string. 
 
     
     
       10. The method of  claim 1 , wherein the bit in the bitmap is set to zero for a particular media item when there is no match to at least the portion of the received character string. 
     
     
       11. In a portable electronic device that includes a display, a media storage device and a user input device, and is operable to present media items each having associated metadata, a method for searching media items stored on the portable electronic device, the method comprising:
 receiving a navigation command indicating a selection of a particular category of a hierarchical organization of media items; 
 navigating to a screen corresponding to the particular category, wherein the screen has menu items including a search function; 
 displaying, by the portable electronic device, a search screen on the display; 
 receiving, by the portable electronic device, a single search character input for at least a portion of a search term from the user input device; 
 searching, by the portable electronic device, for one or more media items of all categories stored in the media storage that match the one or more search characters, wherein the searching is associated with a search function and involves comparing the search characters with metadata stored on the portable electronic device uniquely identifying each of the media items; 
 generating, by the portable electronic device, for the media items stored locally, a bitmap wherein each bit in the bitmap corresponds to one of the media items stored locally at the portable electronic device and provides an indication of whether or not the media item matched the one or more search characters; 
 ranking, by the portable electronic device, the one or more matching media items; 
 displaying, by the portable electronic device, in accordance with the ranking, at least a subset of those of the matching media items; 
 receiving, by the portable electronic device, a second character string from the user input device; 
 based upon the second character string and the one or more search characters, determining that the bitmap is relevant to a search using the second character string; and 
 searching, by the portable electronic, including examining according to the second character string the metadata of only the media items whose bit in the bitmap indicates the media item matched the one or more search characters. 
 
     
     
       12. A method as recited in  claim 11 , wherein the method further comprises:
 determining whether all the search characters for the search term have been received; and 
 displaying a search results screen on the display after the determining determines that all the one or more search characters for the search term have been received. 
 
     
     
       13. A method as recited in  claim 12 , wherein the search results screen includes a listing of at least a subset of the matching media items. 
     
     
       14. A method as recited in  claim 12 , wherein the method further comprises:
 receiving a play request to play one of the matching media items; 
 playing the requested one of the matching media items; and 
 displaying a media play screen while the requested one of the matching media items is being played. 
 
     
     
       15. A method as recited in  claim 14 , wherein the method further comprises:
 determining whether the requested one of the matching media items has completed playing; and 
 re-displaying the search results screen on the display after the determining determines that the requested one of the matching media items has completed playing. 
 
     
     
       16. A method as recited in  claim 14 , wherein the method further comprises:
 subsequently determining whether the search screen is to be displayed instead of the media play screen while the requested one of the matching media items is being played; and 
 re-displaying the search screen on the display after the determining determines that the search screen is to be displayed instead of the media play screen while the requested one of the matching media items is being played. 
 
     
     
       17. A method as recited in  claim 16 , wherein the method further comprises:
 thereafter automatically re-displaying the media play screen instead of the search screen after a predetermined period of inactivity with respect to the search screen. 
 
     
     
       18. A method as recited in  claim 11 , wherein the user input device comprises a rotational user input device. 
     
     
       19. A method as recited in  claim 18 , wherein the user applies a rotational action to the rotational user input device to input each character of the character string. 
     
     
       20. A method as recited in  claim 11 , wherein the portable electronic device is a battery-powered, media player. 
     
     
       21. A computer readable medium storing at least executable computer program code for searching digital data items having associated metadata stored as digital data on a portable electronic device, where the portable electronic device includes a display, a data storage device and a user input device, and is operable to present the digital data items, the computer readable medium comprising:
 executable computer program code for activating a search function 
 executable computer program code for presenting a search window in accordance with the activated search function, the search window including a text box; 
 executable computer program code for receiving, by the portable electronic device, a character string at the text box; 
 executable computer program code for searching, by the portable electronic device, digital data items stored in the media storage device by comparing the character string to at least a portion of the metadata of the digital data items to identify those of the digital data items that match at least a portion of the character string, wherein the metadata uniquely identifies each of the digital data items and is stored on the portable electronic device; 
 executable program code for generating, by the portable electronic device, for the digital data items stored locally, a bitmap wherein each bit in the bitmap corresponds to one of the digital data items stored locally at the portable electronic device and provides an indication of whether or not the media item matched at least the portion of the received character string; 
 executable computer program code for displaying, by the portable electronic device, at least a subset of those of the identified digital data items that match the character string 
 executable program code for receiving, by the portable electronic device, a second character string at the text box; 
 executable program code, based upon the second character string and the character string, for determining that the bitmap is relevant to a search using the second character string; and 
 executable program code for searching, by the portable electronic, including examining according to the second character string the metadata of only the digital data items whose bit in the bitmap indicates the media item matched at least the portion of the received character string. 
 
     
     
       22. A computer readable medium as recited in  claim 21 , wherein the user input device comprises a rotational user input device, and
 wherein the computer program code for receiving a character string from the user input device comprises computer program code for receiving a rotational action with respect to the rotational user input device to identify at least one character of the character string. 
 
     
     
       23. A portable media playback device, comprising:
 a display device; 
 a user input device, 
 at least one memory device capable of storing a plurality of media items each having metadata and executable computer program code for displaying, navigating, playing, or searching the plurality of media items; and 
 a processing device operatively connected to the display device, the user input device and the at least one memory device, wherein the portable media playback device is further operable to:
 receive at least one search character input for at least a portion of a search term from the user input device; 
 search for one or more media items stored in the media storage that match the one or more search characters by comparing the search characters with metadata stored on the user input device uniquely identifying each of the media items; 
 generate a bitmap for the media items stored locally wherein each bit in the bitmap corresponds to one of the media items stored locally in the media storage and provides an indication of whether or not the media item matched the one or more search characters; 
 display at least a subset of those of the matching media items on the display device in accordance with a ranking; 
 receiving a second character string via the input device; 
 based upon the second character string and the one or more search characters, determine that the bitmap is relevant to a search using the second character string; and 
 search including examining according to the second character string the metadata of only the media items whose bit in the bitmap indicates the media item matched the one or more search characters. 
 
 
     
     
       24. A portable media playback device as recited in  claim 23 , wherein the executable computer program code for displaying, navigating, playing, or searching the plurality of media items further comprises:
 executable computer program code for displaying a search screen on the display device to assist with receiving of the at least one search character. 
 
     
     
       25. A portable media playback device as recited in  claim 24 , wherein the executable computer program code for displaying at least a subset of those of the matching media items on the display device in accordance with the ranking comprises:
 executable computer program code for displaying a search results screen on the display device. 
 
     
     
       26. A portable media playback device as recited in  claim 23 , wherein the user input device is a rotational input device capable of receiving a rotational user input. 
     
     
       27. A portable media playback device as recited in  claim 23 , wherein the media playback device is a battery-powered, handheld media playback device. 
     
     
       28. In a portable electronic device that includes a display having a limited size unable to display a list of a significant number of media items simultaneously, a media storage device and a user input device, and is operable to present media items each having associated metadata, a method for searching media items stored on the portable electronic device, the method comprising:
 displaying, by the portable electronic device, a search screen on the display; 
 receiving, by the portable electronic device, a single search character input for at least a portion of a search term from the user input device; 
 searching, by the portable electronic device, for one or more media items categories stored in the media storage that match the one or more search characters, wherein the searching is associated with a search function and involves comparing the search characters with metadata stored on the portable electronic device uniquely identifying each of the media items; 
 generating, by the portable electronic device, for the media items stored locally, a bitmap wherein each bit in the bitmap corresponds to one of the media items stored locally at the portable electronic device and provides an indication of whether or not the media item matched the one or more search characters; 
 ranking, by the portable electronic device, the one or more matching media items; and 
 displaying, by the portable electronic device, in the search screen, in accordance with the ranking, at least a subset of those of the matching media items; 
 receiving a selection of one of the matching media items displayed in the search screen; 
 playing the selected one of the matching media items; 
 receiving, by the portable electronic device, a second character string from the user input device; 
 based upon the second character string and the one or more search characters, determining that the bitmap is relevant to a search using the second character string; and 
 searching, by the portable electronic, including examining according to the second character string the metadata of only the media items whose bit in the bitmap indicates the media item matched the one or more search characters. 
 
     
     
       29. A method as recited in  claim 28 , wherein the method further comprises:
 determining whether the requested one of the matching media items has completed playing; and 
 re-displaying the search results screen on the display after the determining determines that the requested one of the matching media items has completed playing. 
 
     
     
       30. A method as recited in  claim 28 , wherein the method further comprises:
 subsequently determining whether the search screen is to be displayed instead of the media play screen while the requested one of the matching media items is being played; and 
 re-displaying the search screen on the display after the determining determines that the search screen is to be displayed instead of the media play screen while the requested one of the matching media items is being played. 
 
     
     
       31. A method as recited in  claim 30 , wherein the method further comprises:
 thereafter automatically re-displaying the media play screen instead of the search screen after a predetermined period of inactivity with respect to the search screen.

Description:
COPYRIGHT NOTICE 
     A portion of the disclosure of this patent document contains material that is subject to copyright protection. The copyright owner has no objection to the facsimile reproduction by anyone of the patent document or the patent disclosure as it appears in the U.S. Patent and Trademark Office patent file or records, but otherwise reserves all copyright rights whatsoever. 
     BACKGROUND OF THE INVENTION 
     Today, media playback devices, such as media players or music players, have storage capacity to store large collections of media, such as music. With such large media collections, in order for a user to select a particular song to be played by the media player, the user typically navigates through a long list of songs. As an example, the user could interact with the media player to display a list of artists that have songs that are stored within the media collection on the media player. The user then scrolls through the list and selects an appropriate song to be played. Unfortunately, however, as the storage capacity of media players increases, the number of songs stored in a media collection on a media player increases. Consequently, the list through which users must navigate in order to select a song can be extensive. One conventional approach to assisting users in traversing large collections of music is to provide acceleration with respect to the user input. For example, U.S. Patent Publication No. 2003/0076301 A1 describes one approach in which a user is able to scroll through lists of songs in an accelerated manner. The degree of acceleration can be based on the speed of a rotational user input. While acceleration is very helpful, in some cases, users can have difficulty or frustration locating the specific song of interest even when acceleration has been applied. Recently, media players have become capable of storing and playing back various different types of media items. The storage of various different types of media items makes locating of a specific media item even more complicated. 
     Besides navigating and traversing lists to locate media items of interest, another way to locate media items of interest is to search for media items that have a particular character string (e.g., word). For example, an online media store or a desktop media management application can enable a user to search available media content. Unfortunately, however, portable media playback devices have conventionally relied on navigation and traversal of lists and thus have not provided search capabilities. 
     Thus, there remains a need for further approaches to assist a user in locating media items of interest. 
     SUMMARY OF THE INVENTION 
     The invention pertains to improved methods and systems that assist a user in searching media items on a portable electronic device. According to one aspect of the invention, a portable electronic device is provided with a search function that enables a user to search for media items resident on a portable electronic device. The search function can search through different types of media items. Those of the media items that are deemed matching can be ranked in order of relevance and displayed in a list for the user. Thereafter, the user can navigate the list to select one of the listed media items for playback. According to another aspect of the invention, various graphical user interfaces can be presented on a portable electronic device to assist a user in interacting with the portable electronic device to utilize a search function. 
     The invention can be implemented in numerous ways, including as a method, system, device, apparatus (including graphical user interface), or computer readable medium. Several embodiments of the invention are discussed below. 
     As a method for searching media items stored on a portable electronic device having a display, a media storage device and a user input device, one embodiment of the invention includes at least the acts of: receiving search criteria from the user input device; searching media items stored in the media storage device to identify those of the media items that match the search criteria; and displaying at least a subset of those of the identified media items that match the search criteria. 
     As a method for searching media items stored on a portable electronic device having a display, a media storage and a user input device, another embodiment of the invention includes at least the acts of: displaying a search screen on the display; receiving at least one search character input for at least a portion of a search term from the user input device; searching for one or more media items stored in the media storage that match the one or more search characters; ranking the one or more matching media items; and displaying, in accordance with the ranking, at least a subset of those of the matching media items 
     As a computer readable medium including at least computer program code for searching digital data stored on a portable electronic device, where the portable electronic device has a display, a data storage device and a user input device, one embodiment of the invention includes at least: computer program code for receiving search criteria from the user input device; computer program code for searching digital data items stored in the data storage device to identify those of the digital data items that match the search criteria; and computer program code for displaying at least a subset of those of the identified digital data items that match the search criteria. 
     As a media playback device, one embodiment of the invention includes at least: a display device; a user input device; at least one memory device capable of storing a plurality of media items and computer program code for displaying, navigating, playing or searching the plurality of media items; and a processing device. The processing device is capable of executing the computer program code for displaying, navigating, playing or searching the plurality of media items. The computer program code for displaying, navigating, playing or searching the plurality of media items includes at least: computer program code for receiving at least one search character input for at least a portion of a search term from the user input device; computer program code for searching for one or more media items stored in the media storage that match the one or more search characters; computer program code for ranking the one or more matching media items; and computer program code for displaying at least a subset of those of the matching media items on the display device in accordance with the ranking. 
     Other aspects and advantages of the invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention. 
    
    
     
       BRIEF DESCRIPTION OF THE DRAWINGS 
       The invention will be readily understood by the following detailed description in conjunction with the accompanying drawings, wherein like reference numerals designate like elements, and in which: 
         FIG. 1A  is a diagram of a portable electronic device according to one embodiment of the invention. 
         FIG. 1B  is a diagram of a portable media player according to another embodiment of the invention. 
         FIG. 2  is a block diagram of a portable search system according to one embodiment of the invention. 
         FIG. 3  is a block diagram of a media player suitable for use with the invention. 
         FIG. 4  is a flow diagram of a local search process according to one embodiment of the invention. 
         FIGS. 5A-5B  are flow diagrams of a local search process according to another embodiment of the invention. 
         FIG. 5C  is a flow diagram of a search enhancement process according to one embodiment of the invention. 
         FIG. 6A  illustrates a plurality of prior search data structures according to one embodiment of the invention. 
         FIG. 6B  illustrates a plurality of prior search data structures according to another embodiment of the invention. 
         FIG. 7  is a diagram of a menu navigation arrangement according to one embodiment of the invention. 
         FIGS. 8A-8G  are representative screens that can be displayed on a portable electronic device according to embodiments of the invention. 
     
    
    
     DETAILED DESCRIPTION OF THE INVENTION 
     The invention pertains to improved methods and systems that assist a user in searching media items on a portable electronic device. According to one aspect of the invention, a portable electronic device is provided with a search function that enables a user to search for media items resident on a portable electronic device. The search function can search through different types of media items. Those of the media items that are deemed matching can be ranked in order of relevance and displayed in a list for the user. Thereafter, the user can navigate the list to select one of the listed media items for playback. According to another aspect of the invention, various graphical user interfaces can be presented on a portable electronic device to assist a user in interacting with the portable electronic device to utilize a search function. 
     Other aspects and features of the invention will become apparent below. The improved methods and systems are particularly well-suited for use with a portable electronic device, such as a portable media playback device (e.g., portable media player). 
     “Media item,” as used herein, is digital data that pertains to at least one of audio, video, and images. Some examples of specific forms of media items include, but are not limited to, songs, albums, audiobooks, playlists, movies, music videos, photos, computer games, podcasts, audio and/or video presentations, news reports, and sports updates. Media items can also be described or characterized. For example, metadata can be provided for some or all of the media items to describe or characterize the corresponding media items. The metadata can, for example, provide information pertaining to one or more of: title, name, artist, album, genre, duration, lyrics, format, bit rate, sample rate, encoding, release data, composer, year, season, episode, etc. 
     Embodiments of the invention are discussed below with reference to  FIGS. 1A-8G . However, those skilled in the art will readily appreciate that the detailed description given herein with respect to these figures is for explanatory purposes as the invention extends beyond these limited embodiments. 
     According to one aspect of the invention, a search function can be performed on a portable electronic device. The search function can enable a user of the portable media device to locate media items resident on the portable media device. A portable media device is battery-powered, lightweight and easily transported. 
       FIG. 1A  is a diagram of a portable electronic device  100  according to one embodiment of the invention. The portable electronic device  100  is capable of performing a search function. The portable electronic device  100  includes a housing having a display device  102  and one or more user input devices (not shown) on a front, side, and/or back surface of the housing. The user input devices can, for example, include one or more buttons, dials, touch-sensitive surfaces, keypads, switches, etc. A voice recognition system is another type of user input device that can be used to provide user input. The one or more user input devices enable a user of the portable electronic device  100  to provide user inputs to the portable electronic device  100 . For example, the user input devices can enable the user to input search terms for use with the search function. The display device  102  provides an output device on which search results can be displayed for the user. Additionally, internal to the housing of the portable electronic device are various software or electrical components in support of the search function and other functions as further discussed in  FIGS. 2 and 3  below. 
       FIG. 1B  is a diagram of a portable media player  150  according to another embodiment of the invention. The portable electronic device  150  can, for example, represent one implementation of the portable media player  100 . The portable electronic device  150  is capable of performing a search function. The portable media player  150  includes a housing having a display device  152  and a rotational user input device  154 . In this embodiment, the rotational user input device  154  is provided on a front surface of the housing. The rotational user input device  154  receives at least rotational user inputs from a user of the portable media player  150  to interact with menus, lists, etc. being displayed on the display device  152 . The portable media player  150  can also support button-actions. As illustrated in  FIG. 1B , the housing of the portable media player  150  includes button-action regions  156 - 162 . The button-action regions  156 - 162  can be separate from or integrated with the rotational user input device  154 . The user of the portable media player  150  can press proximate to the button-action regions  156 - 162  to signal the portable media player  150  as to a particular user input. The button-action regions  156 - 162  can provide button-like functions. As an example, the button-action regions  156 - 162  can respectively correspond to common media player functions of Menu, Next, Back, and End. The housing of the portable media player  150  can also include a select button region  164 . In the embodiment illustrated in  FIG. 1B , the select button region  164  is provided at the center of the rotational user input device  154 . However, in other embodiments, the select button region  164  can be provided at other locations on the housing of the portable media player  150 . These button regions  156 - 164  can be associated with a touch sensitive surface on the housing of the portable media player  150  or with separate switching mechanisms provided proximate to the button regions  156 - 164 . With respect to performing the search function, the rotational user input device  154 , together with the button regions  156 - 164 , can enable the user to input search terms for use with the search function as well as to navigate through results lists provided by the search function. Additionally, internal to the housing of the portable electronic device are various software or electrical components in support of the search function and other functions as further discussed in  FIGS. 2 and 3  below. 
     Additional details on touch sensitive surfaces for portable media players are provided in: (1) U.S. Pat. No. 7,046,230 B2 and is hereby incorporated by reference herein, (2), U.S. patent application Ser. No. 10/722,948, filed Nov. 25, 2003 and entitled “TOUCH PAD FOR HANDHELD DEVICE,” which is hereby incorporated by reference herein, and (3) U.S. patent application Ser. No. 10/188,182, filed Jul. 1, 2002 and entitled “TOUCH PAD FOR HANDHELD DEVICE,” which is hereby incorporated by reference herein. 
       FIG. 2  is a block diagram of a portable search system  200  according to one embodiment of the invention. The portable search system  200  is, for example, implemented by a portable electronic device, such as the portable electronic device  100  illustrated in  FIG. 1A  or the portable media player  150  illustrated in  FIG. 1B . 
     The portable search system  200  includes a search engine  202  and an output manager  204 . The search system  202  receives a user input. The user input can provide one or more search characters to the search engine  202 . These one or more search characters can be used to form a search term. The search term can then be executed by the search engine  202  to determine whether there are any matching media items stored locally at the portable electronic device. In this regard, the portable electronic device stores a plurality of media files  206 . These media files  206  are typically stored in a mass storage device provided within the portable electronic device. Examples of the mass storage device include Flash memory or a disc drive. Additionally, the portable electronic device can include a media database  208 . The media database  208  stores characteristics (e.g., metadata) associated with each of the media items stored within the media files  206 . Hence, when the search engine  202  executes a search in accordance with the search term, the search engine  202  interacts with the media database  208  to identify those media items stored within the media files  206  that match the search term. The search engine  202  could also interact with the media files  206  but such access would be substantially slower. The matching media items are thus identified by the search engine  202 . The identified matching media items are then able to be displayed by an output manager  204  on a display device. Here, the output manager  204  causes a representation of at least a plurality of the matching media items to be displayed on a display device. For example, the representations being displayed can be the title or name of the track, album or artist that is associated with the matching media items. 
     In addition, the portable search system  200  can store prior search data  210 . The prior search data  210  includes data concerning one or more prior searches that have been previously performed by the search engine  202 . The search engine  202  can potentially utilize the prior search data  210  to perform subsequent searches. Advantageously, the search engine  210  is able to operate more quickly and more efficiently when the prior search data  210  is available for its use. 
       FIG. 3  is a block diagram of a media player  300  suitable for use with the invention. The media player  300  illustrates circuitry of a representative portable media device. Hence, the circuitry of the media player  300  can be representative of the circuitry within the portable electronic device  100  illustrated in  FIG. 1A  or the portable media player  150  illustrated in  FIG. 1B . 
     The media player  300  includes a processor  302  that pertains to a microprocessor or controller for controlling the overall operation of the media player  300 . The media player  300  stores media data pertaining to media items in a file system  304  and a cache  306 . The file system  304  is, typically, semiconductor memory (e.g., Flash memory) or one or more storage disks. The file system  304  typically provides high capacity storage capability for the media player  300 . However, since the access time to the file system  304  can be relatively slow, the media player  300  can also include the cache  306 . The cache  306  is, for example, Random-Access Memory (RAM) provided by semiconductor memory. The relative access time to the cache  306  is typically shorter than for the file system  304 . However, the cache  306  does not have the large storage capacity of the file system  304 . Further, the file system  304 , when active, consumes more power than does the cache  306 . The power consumption is often a concern when the media player  300  is a portable media player that is powered by a battery  324 . The media player  300  also includes a RAM  320  and a Read-Only Memory (ROM)  322 . The ROM  322  can store programs, utilities or processes to be executed in a non-volatile manner. The RAM  320  provides volatile data storage, such as for the cache  306 . 
     The media player  300  also includes a user input device  308  that allows a user of the media player  300  to interact with the media player  300 . For example, the user input device  308  can take a variety of forms, such as a button, keypad, dial, touch-sensitive surface, etc. Still further, the media player  300  includes a display  310  (screen display) that can be controlled by the processor  302  to display information to the user. A data bus  311  can facilitate data transfer between at least the file system  304 , the cache  306 , the processor  302 , and the CODEC  312 . 
     In one embodiment, the media player  300  serves to store a plurality of media items (e.g., songs, videos, podcasts, etc.) in the file system  304 . When a user desires to have the media player play a particular media item, a list of available media items is displayed on the display  310 . Typically, the list can be arrived at through either menu navigation or a search process. Then, using the user input device  308 , a user can select one of the available media items. The processor  302 , upon receiving a selection of a particular media item, supplies the media data to one or more appropriate output devices. As an example, for audio output, the processor  302  can supply the media data (e.g., audio file) for the particular media item to a coder/decoder (CODEC)  312 . The CODEC  312  can then produce analog output signals for a speaker  314 . The speaker  314  can be a speaker internal to the media player  300  or external to the media player  300 . For example, headphones or earphones that connect to the media player  300  would be considered an external speaker. 
     The media player  300  also includes a network/bus interface  316  that couples to a data link  318 . The data link  318  allows the media player  300  to couple to another device (e.g., a host computer, a power source, or an accessory device). The data link  318  can be provided over a wired connection or a wireless connection. In the case of a wireless connection, the network/bus interface  316  can include a wireless transceiver. The data link  318  can also provide power to the media player  300  (e.g., to charge the battery  324 ). 
       FIG. 4  is a flow diagram of a local search process  400  according to one embodiment of the invention. The local search process  400  is, for example, performed by a portable electronic device, such as the portable electronic device  100  illustrated in  FIG. 1A  or the portable media player  150  illustrated in  FIG. 1B . 
     The local search process  400  initially receives one or more search terms via a user input device associated with the portable electronic device. In general, a search term can be considered a “character string” including one or more characters. After (or as) the one or more search terms are received  402 , media items resident on the portable electronic device are searched  404  to identify those that match the one or more search terms. In one implementation, the characteristics (e.g., metadata) of the media items are stored within a database (e.g., media database  208 ) in a memory device internal to the portable electronic device. By searching the characteristics of the media items within the database, the media items that match the search terms can be identified. Next, the matching media items are presented  406 . In one implementation, the matching media items can be presented  406  by displaying them on a display device associated with the portable electronic device. In another implementation, the matching media items can be presented  406  by audio output. 
     After the matching media items have been presented  406 , a decision  408  determines whether a selection has been made. The user can, for example, make a selection of at least one of the matching media items through use of the user input device. When the decision  408  determines that a user selection has not been made, the local search process  400  can await such a selection. While awaiting such a selection, the portable electronic device is available to perform a variety of other processing tasks, including further modifying the one or more search terms being utilized. In any case, once the decision  408  determines that a selection has been made, the selected media item is presented  410 . In one implementation, the selected media item can be presented  410  on the display device associated with the portable electronic device. In another implementation, the selected media item can be presented  410  by playing back the selected media item to generate audio output signals from the portable electronic device. The audio output signals can be supplied to a speaker associated with the portable electronic device or a headset associated with the portable electronic device. The speaker or headset can be coupled to the portable electronic device in a wired (e.g., wire(s) or cable) or wireless manner (e.g., Bluetooth). Following the block  410 , the local search process  400  is complete and ends. 
       FIGS. 5A-5B  are flow diagrams of a local search process  500  according to another embodiment of the invention. The local search process  500  is, for example, performed by a portable electronic device, such as the portable electronic device  100  illustrated in  FIG. 1A  or a portable media player  150  illustrated in  FIG. 1B . 
     The local search process  500  begins with a decision  502  that determines whether a search request has been received. When the decision  502  determines that a search request has not been received, the local search process  500  awaits such a request. Once the decision  502  determines that a search request has been received, a search screen is displayed  504 . Next, a decision  506  determines whether a search character has been input. In one implementation, the search character is one of A-Z, 0-9, or a space. A user can also input a symbol for backspace or done. When the decision  506  determines that a search character has not been input, the local search process  500  awaits input of a search character. Alternatively, when the decision  506  determines that a search character has been input, stored media items are searched  508  to identify those media items that match the one or more search characters that have been input. In one implementation, the search include additional matches be ignore punctuation (e.g., “-”). Also, if the metadata of media items includes non-English characters, an English character can be used in its place when searching for matches. A table of character mappings from non-English to English can be provided to the extent a reasonable equivalent is available (e.g., “ë” can be replaced with “e”). These character mappings can also include a diphthongs (e.g., “æ” can be replaced with “ae”. The stored media items being searched are resident in (i.e., stored in) the portable electronic device. The matching media items are then ranked  510 . The manner by which the matching media items are ranked can vary depending on implementation. Additional information on one approach to ranking media items is discussed below. 
     Optionally, after the matching media items are ranked, the highest ranked matching media items can be presented  511 . Such optional presentation  511  can provide dynamic feedback to the user as to the effectiveness of the search terms. In one embodiment, a search in process can have its search results dynamically updated on the display (e.g., presentation  511 ). However, if another character for the search term is entered while a search is being processed, the ongoing search can be interrupted and the new search started. In this manner, better user responsiveness results. 
     Next, a decision  512  determines whether the search process is done. When the decision  512  determines that the search process is not done, the local search process  500  returns to repeat the decision  506  and subsequent blocks, so that the search process can continue to refine the search characters to be utilized in the search. On the other hand, when the decision  512  determines that the search process is done, the highest ranked matching media items are presented  514 . In the event that the presentation  511  is provided, the presentation  514  may not be required if the presentation  511  remains displayed and the presentation  514  is the same as the presentation  511 . In one embodiment, however, the highest ranked matching media items can be presented  514  using a search results screen which is displayed on a display device of the portable electronic device. 
     Next, a decision  516  determines whether a scroll input has been received. When the decision  516  determines that a scroll input has been received, the next highest ranked media items can be presented  518 . The scrolling can pertain to an incremental scroll or a page scroll depending upon implementation or mode of operation. Following the block  518 , or following the decision  516  when a scroll input has not been received, a decision  520  determines whether a play request has been received. When the decision  520  determines that a play request has not been received, a decision  522  determines whether the search is to end. When the decision  522  determines that the search is not to end, the local search process  500  returns to repeat the decision  516  and subsequent blocks. Also, some of the matching media items are playable (e.g., track (song), music video, audiobook, podcast, movie, game) and other may not be playable (e.g., artist, album) and thus can require further navigation to reach a playable media item. Here, the play request is for the requested media item, which is deemed a playable media item. 
     Alternatively, when the decision  520  determines that a play request has been received, the requested media item is played  524 . Here, the play request identifies the requested media item. While the requested media item is being played  524 , a media play screen can be presented  526  on the display associated with the portable electronic device. The media play screen can display descriptive information pertaining to the requested media item, media content of the requested media item and/or one or more images associated with the requested media item. Still further, the media play screen can display a progress indication to visually indicate the extent to which the playback of the requested media item has been played (or remains to be played). Next, a decision  528  determines whether the playing of the requested media item has completed. When the decision  528  determines that the playing of the requested media has not completed, the local search process  500  waits until playback of the requested media item has completed. While waiting for the playback of the requested media item to complete, other processing  529  can optionally be performed. Depending on the requested media item being played  524 , a single playable media item or a set of playable media items can be played. Alternatively, when the decision  528  determines that the playing of the requested media items has completed, the local search process  500  returns to repeat the block  514  and subsequent blocks, such that the search results are again presented to the user of the portable electronic device. For example, by previously saving the search results, the search results are able to be retrieved and re-presented. In other embodiments, when the playing of the requested media item has completed, the local search process  500  could return to display the search screen at block  504  or some other screen associated with the portable electronic device. 
     On the other hand, when the decision  522  determines that the search process should end, another screen is presented  530  on the display device of the portable electronic device. The other screen can be associated with any of the various tasks supported by the portable electronic device. Following the block  530 , the local search process  500  ends. 
     As to the other processing  529 , while playback of the requested media item is ongoing, the user can navigate from the media play screen (e.g., now playing screen) to the search screen or the search results screen. The user can then again search for matching media items or review matching media items as previously discussed. However, if the user does not interact with the portable electronic device for a predetermined period of time (e.g., 30 seconds), the local search process  500  can automatically transition back to the media play screen (e.g., now playing screen). 
       FIG. 5C  is a flow diagram of a search enhancement process  550  according to one embodiment of the invention. The search enhancement process  550  represents optional processing that can be performed at block  508  of the local search process  500  illustrated in  FIG. 5A . The search enhancement process  550  enables the portable electronic device to potentially process a search request in a more efficient manner. The efficiency is advantageous in that the search results can be provided faster to the user and also in that computational power consumption is reduced. 
     The search enhancement process  550  begins with a decision  552  that determines whether any useful prior search data exists. When the decision  552  determines that there is no useful prior search data, then the search enhancement process  550  is not able to provide any enhancement to the search process. On the other hand, when the decision  552  determines that there is useful prior search data available, then the search enhancement process  550  searches  554  for the matching media items using the prior search data. In other words, when useful prior search data is available to the local search process  500 , the search process can be performed using the prior search data in a more time and power efficient manner. However, when the prior search data is not available or not useful to the search being performed, the search process is performed without the benefit of the use of the prior search data. 
     In one embodiment, the prior search data can be determine to be useful by identifying a prefix from the current search request that matches the prior search data. For example, is the current search is for “hello” then prior search data for “h”, “he” and “hel” are all useful. The largest match has the least number of matching media items so it is typically chosen for use. If the current search request has multiple words (e.g., “hel wor”), each can be separately considered. 
     The prior search data can be stored on the portable electronic device in a variety of different ways. Typically, the prior search data is stored on the portable electronic device in random access memory (RAM). Alternatively, the prior search data could be stored in a file resident within mass data storage, such as provided by Flash memory or a disc drive. 
       FIG. 6A  illustrates a plurality of prior search data structures  600  according to one embodiment of the invention. The prior search data structures  600  can be used to store prior search data on the portable electronic device. Each of the prior search data structures  600  stores one or more search terms  602  associated with the prior search as well as a bitmap  604 . Each bit within the bitmap  604  corresponds to one of the media items stored locally at the portable electronic device. Each bit in the bitmap  604  provides an indication of whether or not the corresponding media item had a rank (i.e., matching score) that was significant. For example, in one embodiment, if the rank for a corresponding media item was zero (0), then the bitmap entry for a particular bit can be zero (0). On the other hand, if the rank was other than zero (0), the corresponding bit within the bitmap can be set to one (1). Hence, if there is relevant prior search data, such as when the current search term is a subset of a prior saved search term  602 , then the search process can be efficiently performed by examining only those of the media items for which the corresponding bit is set in the bitmap  604 . 
       FIG. 6B  illustrates a plurality of prior search data structures  650  according to another embodiment of the invention. The prior search data structures  650  can be used to store prior search data on the portable electronic device. Each of the prior search data structures  650  stores one or more search terms  652  associated a prior search, a bitmap  654  providing correspondence between media items and search scores, and scores  656 . Each bit within the bitmap  654  corresponds to one of the media items stored locally at the portable electronic device. Each bit in the bitmap  654  provides an indication of whether or not the corresponding media item had a rank (i.e., matching score) that was significant. The scores  656  stored within the prior search data structure  650  are those non-zero scores for those of the media items that had non-zero ranks. The bitmap  654  provides an indication of the corresponding ones of the media items for which the scores are being provided. 
     To limit memory consumption for prior search data, in one implementation, a predetermined number of the prior search data structures  600  and/or a predetermined number of the prior search data structures  650  can be stored on the portable electronic device. For example, the predetermined number could be five (5) prior search data structures  600  and five (5) prior search data structures  650 . 
     As noted above, prior to presenting (e.g., displaying) matching media items in response to a search request, the matching media items can be ranked. The ranked media items can be presented in descending values of rank. In one embodiment, the ranking can be in accordance with a matching score provided as follows:
         [1] Items that do not contain a search term is given a score of 0 points.   [2] If the (first) search term is found at the very start of the media item (i.e., “hel” matches “hello world”), the item is given a score of 10,000 points.   [3] Otherwise, if the search term is found at the very start of the media item (i.e., searching for “hel wor” and matching against “world wide web”), the item is given a score of 1,000 points.   [4] Otherwise, if a media item contains a search term, and the match is found at the start of any word in the media item (i.e., “wor” matches “hello world”), the media item is given a score of 100 points.   [5] Otherwise, if the media item contains a search term somewhere, the media item is given a score of 10 points.       

     The media item is said to “contain” a search term if it contains a sequence of characters that match the search term. Two characters can be deemed to match if they are exactly the same, or is different only in case (“E” matches “e”), or is an acceptable international character (i.e., “e” in an item matches “e” in the search term). Only alpha-numeric characters and the space character (considered as word break) are considered in the match, all other characters are treated as if they did not exist. 
     The final matching score of an item is the sum of the scores matching it to each search term. A score of zero (0) means that an item is excluded from search results. This means that “hel wor” will match both “hello” and “world”, even though one or more search terms yielded a 0-score match. Put another way, the search terms have an “or” relationship, so that typing “hel wor” means is processes as looking for matches to “hel” or “wor” or both. 
     Alternatively, the matching score could be modified to give a higher score to an in-order match. For example, although not distinguished above, “hel wor” matching “hello world” could have a higher matching score than when matched against “world hello”. 
       FIG. 7  is a diagram of a menu navigation arrangement  700  according to one embodiment of the invention. The menu navigation arrangement  700  illustrates navigation through a menu system having various different screens provided on a portable electronic device. Through use of menu navigation supported by the menu navigation arrangement  700 , a user of the portable electronic device can navigate to a search screen  702  where a media item search can be performed. The user can navigate to the search screen  702  from a plurality of other screens. In particular, as illustrated in  FIG. 7 , the user can navigate to the search screen  702  from a home screen  704 , a music screen  706  or a video screen  708 . In this embodiment, each of the home screen  704 , the music screen  706  and the video screen  708  include a “Search” menu item which can be selected by the user through interaction with a user input device of the portable electronic device. When the “Search” menu item is selected, the portable electronic device causes the search screen  702  to be displayed. In other words, upon selecting the “Search” menu item, the menu system transitions to display the search screen  702 . 
     From the search screen  702 , a user can interact with the portable electronic device to enter a search term including one or more characters. The search term is then used to search for media items stored on the portable electronic device that include the search term. After the search term has been completely entered, the user can signal the completion (e.g., by selecting “Done” or by some other user action) to the menu system so as to transition to a search results screen  710 . The search results screen  710  displays the media items, namely, by displaying visual representations thereof, that were deemed to match the search term. Then, the user of the portable electronic device can select one of the matching media items that is displayed within the search results screen  710 . In one embodiment, the media items within the search results screen  710  can pertain to a plurality of different media types, including albums, artists, songs, podcasts, video podcasts, and music videos. Hence, the menu screen next displayed following the selection of one of the matching media items within the search results screen  710  can be dependent upon the corresponding media type. 
     As illustrated in  FIG. 7 , the subsequent menu screen can pertain to a now playing screen  712 , an artist screen  714  or an album screen  716 . Although these menu screens all are particularly associated with music-based media items, other subsequent menu screens can be utilized to facilitate greater support for other types of media items. In any case, the now playing screen  712  can be presented on the portable electronic device when the selected matching media item is, for example, a song, video, audiobook or podcast that can be played. The artist screen  714  can be displayed on the portable electronic device when the selected matching media item pertains to an artist. The artist screen  714  can display a list of one or more songs associated with the artist. The album screen  716  can be displayed on the portable electronic device when the selected matching media item pertains to an album. The album screen  716  can display a list of one or more tracks associated with the album. When the now playing screen  712  is presented, after the playing of the media items has completed, the search results screen  710  can be automatically displayed. Also, from any of the now playing screen  712 , the artist screen  714  or the album screen  716 , a user action (e.g., menu button press) can cause the prior screen (e.g., the search results screen  710 ) to be presented again. 
     The menu navigation arrangement  700  illustrated in  FIG. 7  can also be used with the graphical user interface described in U.S. Patent Publication No. 2004/0055446 A1 which is hereby incorporated by reference herein. 
     The search screen  702  illustrated in  FIG. 7  can receive the search term in a single field search term entry region. Alternatively, a search term can be entered in one or more of a multiple number of field search term entry regions. The multiple fields can be optionally used to limit the search. For example, fields for artist name, album title and song title can be provided and entry of a search term into a particular field would search that term only in the corresponding area. 
       FIGS. 8A-8G  are representative screens that can be displayed on a portable electronic device according to embodiments of the invention. These screens can represent implementation of some of the screens noted in the menu navigation arrangement  700  illustrated in  FIG. 7 . 
       FIG. 8A  is an exemplary home menu screen  800  according to one embodiment of the invention. The home menu screen  800  includes a title  802  and a movable highlight bar  804 . The user of the portable electronic device can move the movable highlight bar  804  over any of the menu items provided within the home menu screen  800 . One of the menu items provided in the home menu screen  800  is a “Search” item  806 . Upon selection of the “Search” item  806 , a search screen is presented on the portable electronic device. 
     In addition to having the “Search” item  806  within the home menu screen  800  as illustrated in  FIG. 8A , the search menu item can be made available in other menus to facilitate searching from numerous different beginning points within the menu system. These different points in the hierarchy of the menu system can serve to limit (i.e., narrow) the searching to particular media types (e.g., depending on the context in the menu system). Alternatively, the system could permit entry of predetermined keywords or symbols to limit (i.e., narrow) a search. For example, a keyword “video” could signal to search only through those media items that are videos. As another example, a symbol “&lt;” could be entered as “beatles &lt;1965” to request searching for matching items containing “beatles” whose year is less than 1965. These predetermined keywords or symbols can be provided by physical keys or soft keys of or associated with a user input device. 
       FIG. 8B  is an example of a music menu screen  810  according to one embodiment of the invention. The music menu screen  810  includes a title  812  and a movable highlight bar  814 . Within the music menu screen  810 , a list of music related menu items are displayed. The user of the portable electronic device can select any of the menu items through use of the movable highlight bar  814 . One of the menu items is a “Search” menu item  816 . Upon selection of the “Search” menu item  816  with the movable highlight bar  814 , a search screen is presented on the portable electronic device. Further, in one embodiment, when the “Search” menu item  816  from the music menu screen  810  is selected, any subsequent search function can be performed with result to only those media items that have a media type pertaining to music. 
       FIG. 8C  is an exemplary main menu screen  820  according to one embodiment of the invention. The main menu screen  820  includes a title  822  and a movable highlight bar  824 . As illustrated in  FIG. 8C , the movable highlight bar  824  has been positioned over a “Search” menu item  826 . A user can then select the “Search” menu item  826  to turn-on/turn-off (toggle) whether a search screen is available from a home menu screen (e.g.,  FIG. 8A ) on the portable electronic device. 
       FIG. 8D  is an exemplary search screen  830  according to one embodiment of the invention. The search screen  830  includes a text field  832  and a character selection area  834 . The user can interact with the user input device of the portable electronic device to select any of the characters within the character selection area  834 . Upon selection of a character, the character appears in the text field  832 . The one or more characters entered into the text field  832  form a search term that is utilized by the portable electronic device to search its data storage for media items that match the search term. As illustrated in  FIG. 8D , the characters available for selection include A-Z, backspace or Done. If the portable electronic device includes a rotational input device, that character to be entered can be navigated to by a rotational user input. A press and hold of button regions (e.g., button-action regions  158  and  160 ) can respectively initiate a space input or deletion of a last input character. In one embodiment, as the characters are selected and placed in the text field  832 , the portable electronic device performs a search operation to locate those media items having the search term. In the example illustrated in  FIG. 8D , the text field  832  contains the search term “lo” and thus the portable electronic device searches for those media items that include the search term “lo”. The search screen  830  includes a list  836  of media items that match the search term. Although only a portion of the list  836  is often visible in the search screen  830 , a result count  838  can be provided to specify the number of media items that match the search term. Hence, as the characters are selected and placed in the text field  832 , the search is performed and the list  836  formed and displayed. Given that the media items in the list  836  are ranked, their position within the list  836  can change as the list  836  is being formed. Hence, the display of the portion of the list  836  in the search screen  830  can be periodically updated so that results can be rapidly displayed without excessive order shuffling of the media items in the list  836 . 
     When the user is done entering characters into the text field  832 , the user can navigate within the character selection area  834  to the “Done” character. Upon selection of the “Done” character, the menu system transitions to a search results screen. Alternatively, the user can clear any entered characters by a predetermined user input action, such as a button press action (e.g., button-action region  160 ). 
       FIG. 8E  is an exemplary search results screen  840  according to one embodiment of the invention. The search results screen  840  includes a movable highlight bar  842  that can be used by the user to select any one of the media items within a list  844  of matching media items being presented in the search results screen  840 . A result count  846  can also be displayed in the search results screen  840  to specify the number of media items that match the search term. To the extent that the number of media items in the list  844  is beyond the number that can be displayed within the search results screen  840 , the user is able to scroll through the list  844 . In one embodiment, one or more of the media items within the list  844  can be visually indicated as to their type of media item. For example, as illustrated in  FIG. 8E , graphical indicators (e.g., icons)  847 ,  848  and  849  are illustrated as corresponding to certain of the media items in the list  844 . The icon  847  can specify that the corresponding media item is an artist. The icon  848  can indicate that the corresponding media item is an album or compact disc (CD). The icon  849  can indicate that the corresponding media item is a podcast. Another visual indicator  845  (e.g., “&gt;”) can indicate that more screens follow. On the other hand, those without the other visual indicator  845  can be played upon being selected. 
     Also, for enhanced user experience, the list  844  is periodically updated to prevent excessive order shuffling when the search results screen  840  is displayed before the underlying search has completed. Moreover, when the underlying search is still processing if the user is actively moving through the list  844 , the list  844  is not updated with new search results until after the activity has ceased (e.g., updated after a predetermined period of inactivity). Further, if the user has actively highlighted an item in the list  844 , when updating the list  844  with additional search results, the displayed position of the highlighted item is preserved (i.e., not moved on-screen). 
       FIG. 8F  is an exemplary search screen  850  according to one embodiment of the invention. The search screen  850  includes a text field  852 . As illustrated in  FIG. 8F , the text field  852  includes a single character “a”. In this example, the single character represents the search term at this point in time. However, in this example, the portable electronic device has been searched for any media items that include the character “a” and found no matching media items were found. As a result, the search screen  850  does not display a list of media items but, instead, notifies the user that no matching results were found to match the search term. 
       FIG. 8G  is an exemplary search screen  860  according to one embodiment of the invention. The search screen  860  is generally similar to the search screen  830  illustrated in  FIG. 8D  except that the character selection area is smaller. Although not all the available characters are shown in the character selection area of the search screen  860 , they can be displayed by scrolling through the characters. The search screen  860  is suitable for use on smaller display devices. 
     A menu is one form of a list. A list is more generally a data set. A data set pertains to a set of data. As one example, the data set can be a list of items (e.g., a list of songs). As another example, the data set can be a media file (e.g., MP3 or other audio file, video file, or image file). In one embodiment, the data set can be considered an ordered data set because the data within the set is often ordered. For example, the songs in a list are arranged alphabetically. Besides an alphabetical order, various other ordering methods can be used. For example, a data set (e.g., list) can be ordered by a rating, a genre, an album, an artist, duration, date, etc. 
     U.S. Patent Publication No. 2003/0076301 A1 is hereby incorporated by reference herein. U.S. Patent Publication No. 2003/0095096 A1 is hereby incorporated by reference herein. U.S. Patent Publication No. 2003/0055446 A1 is hereby incorporated by reference herein. U.S. Pat. No. 7,046,230 B2 is hereby incorporated by reference herein. U.S. Pat. No. 7,084,856 B2 is hereby incorporated by reference herein. 
     Although the invention is discussed above in the content of searching media items, the invention is, more generally, applicable to searching digital data. Digital data can include not only media items but also non-media items, such as notes, contacts, calendar, appointments, etc. 
     The various aspects, embodiments, implementations or features of the invention can be used separately or in any combination. 
     The invention can be implemented by software, hardware or a combination of hardware and software. The invention can also be embodied as computer readable code on a computer readable medium. The computer readable medium is any data storage device that can store data which can thereafter be read by a computer system. Examples of the computer readable medium include read-only memory, random-access memory, CD-ROMs, DVDs, memory cards, magnetic tape, optical data storage devices, and carrier waves. The computer readable medium can also be distributed over network-coupled computer systems so that the computer readable code is stored and executed in a distributed fashion. 
     The advantages of the invention are numerous. Different embodiments or implementations may yield one or more of the following advantages. It should be noted that this is not an exhaustive list of advantages and there may be other advantages which are not described herein. One advantage of the invention is that a user of portable electronic device can provide search capabilities to assist its user in locating particular media items. Another advantage of the invention is that a user is able to easily and rapidly enter a text input to be used in searching for media items. Another advantage of the invention is that a multitude of different types of media items can be searched separately or together on a portable electronic device. Still another embodiment of the invention causes the matching media items to be displayed in accordance with a ranking. Yet still another advantage of the invention is that a search screen and a search result screen can be provided to facilitate input of search text and display of matching media items. 
     The many features and advantages of the present invention are apparent from the written description. Further, since numerous modifications and changes will readily occur to those skilled in the art, the invention should not be limited to the exact construction and operation as illustrated and described. Hence, all suitable modifications and equivalents may be resorted to as falling within the scope of the invention.

Metadata:
Filing Date: 20060911
Publication Date: 20121225
Grant Date: 20121225
Priority Date: 20060911
Inventors: GUPTA SANDEEP
HUANG SZU-WEN
MARRIOTT GREG
LEE JEFF
Assignee: APPLE INC
CPC Classifications: [{"code": "G06F16/43", "inventive": true, "first": true, "tree": "[]"}, {"code": "G06F16/632", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F16/632", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F16/68", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F16/43", "inventive": true, "first": true, "tree": "[]"}, {"code": "G06F16/68", "inventive": true, "first": false, "tree": "[]"}, {"code": "G06F16/48", "inventive": true, "first": false, "tree": "[]"}]
Family ID: 38819805