Movatterモバイル変換


[0]ホーム

URL:


USRE47934E1 - Accessing digital media - Google Patents

Accessing digital media
Download PDF

Info

Publication number
USRE47934E1
USRE47934E1US14/866,639US201514866639AUSRE47934EUS RE47934 E1USRE47934 E1US RE47934E1US 201514866639 AUS201514866639 AUS 201514866639AUS RE47934 EUSRE47934 EUS RE47934E
Authority
US
United States
Prior art keywords
media
database
records
local
server
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Expired - Lifetime, expires
Application number
US14/866,639
Inventor
Amandeep Jawa
Jeffrey L. Robbin
David Heller
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Apple Inc
Original Assignee
Apple Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Apple IncfiledCriticalApple Inc
Priority to US14/866,639priorityCriticalpatent/USRE47934E1/en
Application grantedgrantedCritical
Publication of USRE47934E1publicationCriticalpatent/USRE47934E1/en
Adjusted expirationlegal-statusCritical
Expired - Lifetimelegal-statusCriticalCurrent

Links

Images

Classifications

Definitions

Landscapes

Abstract

Method and apparatus for accessing media across networks. The present invention generally allows for media to be provided across a network. A client requests media information from a server so the client can create a local representation of the server's database. The client is then able to manage the media information locally. When the client selects the desired media, it requests the selection from across the network. The server then delivers the selected media.

Description

CROSS REFERENCE TO RELATED APPLICATIONS
Notice: More than one reissue application has been filed for the reissue of U.S. Pat. No. 7,698,297. The reissue applications are application Ser. Nos. 14/866,639 (the present application) and 13/445,791. This application is a continuation reissue of U.S. patent application Ser. No. 13/445,691 (U.S. Pat. No. RE45,793), filed on Apr. 12, 2012, which is an application for reissue of U.S. Pat. No. 7,698,297, filed on Mar. 12, 2004, which is a divisional of U.S. patent application Ser. No. 10/423,638 entitled “ACCESSING MEDIA ACROSS NETWORK,” filed on Apr. 25, 2003 now U.S. Pat. No. 6,728,729 from which priority under 35 U.S.C. §120 is claimed, and which is all of which are incorporated herein in its entirety and for all purposes by reference.
BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to digital media and, more particularly, to accessing digital media across networks.
2. Description of the Related Art
The ability of computers to be able to share information is of utmost importance in the information age. Networks are the mechanism by which computers are able to communicate with one another. Generally, devices that provide resources are called servers and devices that utilize those resources are called clients. Depending upon the type of network, a device might be dedicated to one type of task or might act as both a client and a server, depending upon whether it is giving or requesting resources.
Increasingly, the types of resources that people want to share are entertainment-related. Specifically, music, movies, pictures, and print are all types of entertainment-related media that someone might want to access from across a network. For example, although a music library may reside on a family computer in the den, the media owner may want to listen to the music in the living room.
However, sharing media data can be a network-intensive process. People have devoted significant resources to both reducing the load on networks and increasing the capability of networks to handle large data transfers. Due to advances in compression technology and network bandwidth, the throughput of information through networks has increased dramatically over the years.
Although the described technologies work well in many applications, there are continuing efforts to further improve the ability to transfer digital media.
SUMMARY OF THE INVENTION
The present invention provides a method of retrieving media across a network. First, a client connects to a network that includes a server. The server includes at least one media database that has media and associated media information. The client then queries the server for at least a portion of the media information and then receives media information responsive to the query. The client then uses a client-side media management system to manage the received media information. Management of the received media information includes selecting media. The client then requests the selected media from across the network and, in response to the request, receives the requested media.
In another aspect, a client queries the server for server information and capabilities after connecting to the network. The client then receives a response that identifies the server and informs the client as to its capabilities. After receiving the server information, the client queries the server for database enumeration and receives a response that enumerates all databases, how much media is available, and how many media collections are available. After the database identification, the client queries the server for an enumeration of media collections in the database and receives a response that identifies media collections. The client then queries the server for data associated with an identified media collection, the query being capable of requesting a different level of detail than would be given by default. The response to the media collection query identifies data associated with the identified media collection in the requested level of detail. The client then executes the identified media collection, requesting media from the server when the media collection requires the media and receiving the requested media.
In yet another aspect, the invention provides a method of ensuring that a media database representation on a client is current. The server first provides a media database that updates to a current revision indicator whenever the media database is modified. Then, the server receives a request from the client, the request pertaining to the database that includes a client-provided revision indicator. After receiving the request, the server compares the current revision indicator to the client-provided revision indicator. The server then responds to the request with a response that includes at least an identification of the current revision indicator if the client-provided revision indicator did not match the current revision indicator.
BRIEF DESCRIPTION OF THE DRAWINGS
The invention may best be understood by reference to the following description taken in conjunction with the accompanying drawings in which:
FIG. 1 is a block diagram illustrating an exemplary environment in which the present invention may be implemented;
FIG. 2 is a block diagram illustrating an organizational structure of a server-side media management system on the server illustrated inFIG. 1;
FIG. 3 is a block diagram illustrating an organizational structure of a client-side media management system on the client illustrated inFIG. 1;
FIG. 4A is a representational control flow diagram illustrating one technique that can be used to determine the features of the server-side media management system illustrated inFIG. 2;
FIG. 4B is a representational control flow diagram illustrating one technique that could be used to enumerate databases of the server-side media management system illustrated inFIG. 2;
FIG. 4C is a representational control flow diagram illustrating one technique that could be used to populate a song records portion of the client-side media management system illustrated inFIG. 5;
FIG. 4D is a representational control flow diagram illustrating a technique that could be used to enumerate playlists of the server-side media management system illustrated inFIG. 2;
FIG. 4E is a representational control flow diagram illustrating a technique that could be used to populate a playlist records portion of the client-side media management system illustrated inFIG. 6;
FIG. 4F is a representational control flow diagram illustrating a technique that could be used to retrieve a song from a song database once a song is selected from the client-side media management system illustrated inFIG. 7;
FIG. 5 is a block diagram illustrating an organizational structure of the client-side media management system after receiving a reply to the SERVER-DATABASE request illustrated inFIG. 4B;
FIG. 6 is a block diagram illustrating an organizational structure of the client-side media management system after receiving a reply to the DATABASE-SONGS request illustrated inFIG. 4C;
FIG. 7 is a block diagram illustrating an organizational structure of the client-side media management system after receiving a reply to the PLAYLIST-SONGS request illustrated inFIG. 4E;
FIG. 8 is a representational control flow diagram illustrating one technique that could be used to ensure the client and the server illustrated inFIG. 1 are synchronized; and
FIG. 9 is a diagram illustrating an exemplary computing device in which various embodiments of the invention may be implemented.
It is to be understood that, in the drawings, like reference numerals designate like structural elements. Also, it is understood that the depictions in the figures are not necessarily to scale.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS
In the following description, numerous specific details are set forth to provide a thorough understanding of the present invention. However, it will be obvious to one skilled in the art that the present invention may be practiced without some or all of these specific details. In other instances, well known process steps have not been described in detail in order to avoid unnecessarily obscuring the present invention.
The present invention generally allows for client machines to access a media database on a server. Both data and metadata on the server describes and organizes the media in various ways and allows the server to manipulate the media. Instead of relying on the server to execute the media management system, the client requests the data and metadata and then uses the information on a local media management system, effectively creating a representation of the server on the client. Once media is selected on the client through the client-side media management system, the client can request the media from the server, and the server can deliver the media to the client.
The invention can support both “thick” and “thin” clients. Thick clients are typically software programs, such as iTunes™ software available from Apple Computer, Inc. of Cupertino, Calif., operating on hardware devices that support full user interface abilities and have considerable processor and memory resources. Thin clients are software programs operating on hardware devices that may have limited user interface abilities and have reduced processing and memory resources. The invention allows for robust control features appropriate for thick clients, but can adapt to minimal control features for thin clients.
Generally, a client will first make a request to determine whether media is available on a server. Then, the client can make a series of requests to create a representation of the media available on the server on the client. The representation contains information about the media available on the server (“media information”). Thick clients can choose to retrieve a complete representation of the server's available media, while thin clients may choose to retrieve a partial representation of the server's available media. After receiving the media information from the server, the client (as instructed by its user) can then search, browse, sort, or otherwise interact with the media information now resident on the client. Further, the client (as instructed by its user) will typically select a media item to be presented (e.g., played). In such a case, the media content for the selected media item is streamed from the server to the client.
In addition, clients can receive notifications from the server when a media database has been changed. Multiple connections can allow a client to use one connection to access media while using another connection to wait for a notification that the database has changed, or to browse media listings.
FIG. 1 is a block diagram illustrating an exemplary environment in which the present invention may be implemented. Anetwork105 couples aserver110 tovarious clients115,120,125, and130. Thenetwork105 can generally be a data network, such as a LAN, WAN or the Internet. Theserver110 may or may not be a dedicated device. In the example shown inFIG. 1, theserver110 is a general purpose computer. Thevarious clients115,120,125, and130 can be thick or thin clients, with varying levels of processing power. Clients may includeportable computers115,desktop computers120, specialized devices such asiPods™125 available from Apple Computer, Inc. of Cupertino, Calif., or even network-aware audio/video components130 that are designed to work across anetwork105. The following discussion will, for simplicity, assume only theportable computer client115 is requesting information from theserver110.
FIG. 2 is a block diagram illustrating an organizational structure of a server-sidemedia management system200 on theserver110. The server-sidemedia management system200 includes amedia manager210 and amusic database205. Themedia manager210 controls access to themusic database205. More particularly, themedia manager210 receives requests from theclient115, accesses the music database, and returns responses to theclient115.
Themusic database205 has a number ofrecords215 and220 that are used to classify, identify and/or describe media (i.e., media items) in themusic database205. For simplicity, the following discussion will assume the digital media contained on theserver110 only contains music files that can be streamed over thenetwork105. It should be appreciated that any reference to “songs” or “music” made in this document could be generalized to any form of digital media, which can include sound files, picture data, movies, text files or any other types of media that can be digitally stored on a computer. Similarly, any reference to “playlists” can be generalized to media collections, including collections of mixed digital media.
Themedia manager210 has or can obtain information about thedatabase205 that may, for example, include the name of the server, the version of the database being used, the type of security that is required, the number of databases available to the server, whether non-standard content codes are supported, whether persistent identification is supported, etc. It should be appreciated by those skilled in the art that the information about thedatabase205 may exist in a single record file or can be either partially or fully generated on demand, identifying the various pieces of information as needed.
The song records215 contain metadata about each media item available in thedatabase205. The metadata might include, for example, the names of songs, an identification number, a persistent identification number, the artist, the album, the size of the song, the format of the song, the required bit rate, and any other appropriate information. Of course, the type of information may depend on the type of media. A video file might additionally have director and producer fields, but may not use the album field. Still pictures would have no need for bit rate information. While some fields may be standard, others may be specific to certain applications. For example, a video signal may have secondary audio program (SAP) information. A mechanism for ensuring clients can properly process non-standard content codes is described in connection withFIG. 4A.
Both an identification number and a persistent identification number can be used. If supported, a persistent identification could be used to access the same information across server restarts. Typically, a server would assign each record a new identification number every time themedia management system200 restarted. However, persistent identification numbers would remain the same for as long as the record is available.
The playlist records220 contain information about each playlist available in themusic database205. Further, the information for a given playlist can include the identification numbers for each of the songs within the playlist. Playlists are collections of media that may or may not be in any particular order. Users may choose to combine media by genre, mood, artists, audience, or any other meaningful arrangement. While theplaylists220 on theserver110 will usually only include media contained in itsown music database205, there is no reason the playlist records220 cannot include media or playlists stored on other servers. However, certain non-standard content codes may need to be used, depending upon the implementation of the server-sidemedia management system200.
FIG. 3 is a block diagram illustrating an organizational structure of a client-sidemedia management system300 on one of theclients115. The client-sidemedia management system300 includes amedia manager305. Themedia manager305 interacts with themedia manager210 of the server-sidemedia management system200 through thenetwork105 so as to replicate at least a portion of themusic database205 at theserver110 on theclient115. When the client-sidemedia management system300 first starts, it cannot access media on theserver110 because it does not as yet have any information about what media is available.
FIG. 4A is a representational control flow diagram illustrating one technique that can be used to determine the features of the server-sidemedia management system200. Operations performed by theclient115 and theserver110 are represented by correspondingvertical lines403 and406. At409 theclient115 connects to thenetwork105 and first becomes aware of theserver110. Theclient115 can use any connection mechanism that allows it to interact with thenetwork105. For example, if theclient115 were an iBook™ available from Apple Computer, Inc. of Cupertino, it might use Rendezvous™ networking technology, also available from Apple Computer, Inc. of Cupertino, Calif., in order to automatically configure itself with thenetwork105. If the client is not aware of theserver110, other mechanisms can be used. For example, a user might manually search for theserver110, or the user might directly enter the address of theserver110.
Once theclient115 is aware of theserver110, it can send a SERVER-INFO request to theserver110 at412. The SERVER-INFO request is usually used to obtain information from the server prior to attempting any other transactions. If thenetwork105 uses the TCP/IP protocol, the request could be formatted as an HTTP GET request. The GET request might also allow for additional extensions to be added to the request, enabling, for example, theclient115 to include information about the client-sidemedia management system300.
At415 the server responds to the SERVER-INFO request with information describing a series of features supported by or required by the server. The information might, for example, include information about the server-sidemedia management system200, the number of available databases, whether and what login procedures are required, whether updates are supported, whether persistent identification numbers are supported, whether non-standard content codes are supported, and the protocol version.
The information provided to theclient115 at415 permits the client-sidemedia management system300 to understand the capabilities of theserver110. Although theclient115 is able to identify theserver110, theclient115 does not yet have any information about the available media.
If theclient115 determines that theserver110 responded to the SERVER-INFO request with an indication that non-standard content codes are supported at418, theclient115 can optionally issue a CONTENT CODE request at421. The CONTENT CODE request is one mechanism by which theclient115 can obtain a list of content codes supported by theserver110 and associated string names mapped thereto.
The inclusion of the string name allows multiple developers to use the same codes for their individualized products. For example, one developer may assign the code “16000” to a feature that allows users to purchase corresponding albums over the network; while another developer may assign the same code to feature that provides users with the lyrics of songs that are being listened to. By allowing a string name to be included, theclient115 can determine whether it can support the content code. Uniqueness of the string name can, for example, be ensured by including the developer's URL as part of the string name.
At424 theserver110 responds to the CONTENT CODE request the codes and their associated string names. At427, theclient115 can simply ignore the code/string pairs that it does not recognize. Otherwise, for those code/string pairs that theclient115 does recognize, theclient115 will associate the code with the associated string name.
At430 theclient115 logs into theserver110. The login procedure might require a user name (or account name) and password so the user of the client can be authenticated. The login procedure is only required if theserver110 requires it. Certain security protocols might require that every future request made by theclient115 include certain parameters such as a session identification number.
Once logged in, theclient115 is ready to begin populating its local representation of themusic database205.FIG. 4B is a representational control flow diagram illustrating one technique that can be used to enumerate databases of the server-sidemedia management system200. Operations performed by theclient115 and theserver110 are represented by correspondingvertical lines403 and406. At433 theclient115 can issue a SERVER-DATABASE request, which can be used to retrieve the list of all music databases from theserver110. The SERVER-DATABASE request may additionally include an index range and/or a query. Although available to both thick and thin clients, thin clients might use index ranges and/or queries to limit the amount of data contained in each server response.
The index range might be used in any request to constrain the items returned in the response to a subset of the total set of items, based on the position (or index) of the first item and the number of items requested. For example, an index range could be used to request: the second music database from a server, songs 10 through 20 from a music database, the last 5 playlists from a music database, the first 5 songs from a given playlist, or the 42nd song in a music database.
The query might be used in any request to constrain the items returned in the response to a subset of the total set of items, based on the specified criteria. For example, a query could request: songs in a database after a given year; playlists that contain a certain word in their name; songs in a database that do not contain a given word in their name; or some combination thereof.
After processing the SERVER-DATABASE request at436, theserver110 issues a response at439. If no index range and/or query was given, the response would contain a complete list of the music databases available at theserver110 together with information about the one or more music databases. The information about each database might, for example, include the database identification number, the persistent database identification number, the name for each database, the numbers of songs, and the number of playlists. With this information, the client-sidemedia management system300 becomes aware of the general structure of the one or more music databases at theserver110.
FIG. 5 is a block diagram illustrating the organizational structure of the client-sidemedia management system300 shown inFIG. 3 after receiving a reply to the SERVER-DATABASE request. At442, theclient115 is able to identify themusic database510, the number ofavailable song records515, and the number ofavailable playlists520. Once the general structure of themusic database510 is known, theclient115 can populate its representation using any number of techniques.
FIG. 4C is a representational control flow diagram illustrating one technique that could be used to populate the song records515 portion of the client-sidemedia management system300 for aspecific database510. Operations performed by theclient115 and theserver110 are represented by correspondingvertical lines403 and406. At445 the client issues a DATABASE-SONGS request to obtain metadata about available songs.
A thick client may choose to issue a DATABASE-SONGS request so that it can front load network traffic. Once metadata about a song is received and stored, theclient115 does not need to request that metadata again. Playlists would only need to correctly identify a song (e.g., using the song identification number), and the client-sidemedia management system300 would be able to associate it with the already-received metadata.
Thin clients may choose to issue an index range, query, metadata field specifier, or skip445 all together. A metadata field specifier would indicate that only certain metadata fields are desired. Thick clients that use445 may also choose to use these same index range, query or metadata field specifier techniques. For example, limiting the song metadata request to only songs in a certain genre might be a technique that is used to provide the user with a different user experience.
Theserver110 performs any necessary filtering operations at448 and then issues a reply at451.FIG. 6 is a block diagram illustrating the organizational structure of the client-sidemedia management system300 at453, after receiving a reply to the DATABASE-SONGS request. The song records605 may either be a partial or complete representation of the server-side song records215, having metadata that might, for example, include the names of songs, an identification number, a persistent identification number, the artist, the album, the size of the song, the format of the song, the required bit rate, and any other appropriate information. If the server-side management system200 had multiple databases, a DATABASE-SONGS request (if used) would need to be issued for each database.
FIG. 4D is a representational control flow diagram illustrating a technique that could be used to enumerate the playlist records220 portion of the server-sidemedia management system200. Operations performed by theclient115 and theserver110 are represented by correspondingvertical lines403 and406.
At454 the client issues a DATABASE-PLAYLIST request to obtain a list of available playlists. Playlists on theserver110 can either be user-identified or generated automatically by the server-sidemedia management system200. For example, a “base playlist” might be automatically created as a special playlist that contains all the songs in theentire song database205 while a “John Lennon playlist” might be a user-created collection of songs by John Lennon.
After receiving the DATABASE-PLAYLIST request and performing any necessary filtering operations, theserver110 issues a reply at457. The reply includes a list of all playlists in themusic database205 and information about those playlists. The information about the playlists might, for example, include identification numbers and/or persistent identification numbers for the playlists, and any other information (e.g., whether the songs in the playlist are in order or can be shuffled) that may have been provided. Multiple DATABASE-PLAYLIST requests may be required to populate multiple databases.
FIG. 4E is a representational control flow diagram illustrating a technique that could be used to populate the playlist records520 portion of the client-sidemedia management system300. Operations performed by theclient115 and theserver110 are represented by correspondingvertical lines403 and406. Once a playlist is identified at460, theclient115 sends a PLAYLIST-SONGS request for that playlist at463. Depending upon whetheroperations445 through451 were already performed, the PLAYLIST-SONGS request could additionally request that metadata accompanying each song also be delivered in order to populate the song records605. Although thick clients that do not have a mechanism for informing theserver110 of already-receivedsong records605 would run the risk of receivingduplicate song records605, thin clients that did not retainsong records605 might benefit from requesting song metadata along with each playlist.
After receiving the PLAYLIST-SONGS request and performing any necessary filtering operations, theserver110 issues a reply at466 containing the requested information.FIG. 7 is a block diagram illustrating the organizational structure of the client-sidemedia management system300 after receiving a reply to the PLAYLIST-SONGS request at469. Each time the PLAYLIST-SONGS transaction between theclient115 and theserver110 is completed, anotherplaylist record705 is populated. Theplaylist record705 may be a complete or partial representation of the corresponding server-side playlist record220. Multiple PLAYLIST-SONGS requests may be required to populate multiple playlists.
FIG. 4F is a representational control flow diagram illustrating a technique that could be used to retrieve a song from thesong database205 once a song is selected. Operations performed by theclient115 and theserver110 are represented by correspondingvertical lines403 and406.
At472 theclient115 issues a SONG-DATA request to retrieve the song data from theserver110. If a single song is stored in multiple formats on the server100, the SONG-DATA request could include a format identifier. The format identifier could specify that the song is requested in, for example, MPEG 3 encoded data (“mp3”), MPEG 4 advanced audio coding (“m4a”) audio interchange file format (“aiff”), or Windows sound file (“wav”). At475 theserver110 delivers the audio file to theclient115. In one embodiment, theserver110 will stream the song by appending song data to an http header, therefore making theclient115 responsible for parsing the data as is appropriate for playing the song at theclient115.
The preceding description assumes no mechanism is used to update theclient115 if the data on the server-sidemedia management system200 is modified during a session. For example, a client-side representation of aplaylist705 may not accurately represent the latest version of the corresponding server-side playlist220.
FIG. 8 is a representational control flow diagram illustrating one technique that could be used to ensure theclient115 and theserver110 are synchronized. Operations performed by theclient115 and theserver110 are represented by correspondingvertical lines805 and810.
At815 theclient115 issues an UPDATE request to retrieve the media data from theserver110. The UPDATE request can be a flag that informs theserver110 that theclient115 wants to be informed when data on the server110 (e.g., music database205) changes. In one embodiment, the flag is a revision indicator, such as a revision number or a time-stamp.
At820 theserver110 processes the UPDATE request. In one embodiment, theserver110 will not respond to the UPDATE request until the server's music database has changed relative to the client's representation for that music database. If a revision number was used at815, theserver110 compares the revision number provided by theclient115 with the current revision number to determine if a change was made. The revision number of theserver110 represents the version of themusic database205 at theserver110. Any subsequent changes torecords215 or220 may cause theserver110 to increment its revision number by one. Depending upon the requirements of the system, a group of changes torecords215 or220 may be batched so that the revision number only increments once. Batching may be performed by standard techniques, including by operation (e.g., adding files as a group to the server), by time (e.g., waiting a certain period of time after the last change has been made to ensure no other changes will be made) or by number of operations (e.g., changing the revision number after a certain number of changes).
Once theserver110 determines that the revision number provided by the client no longer equals the current revision number, a reply is issued at825. In one embodiment, the reply will contain the server's current revision number. Although theserver110 could then the continue to monitor for changes in the server's current revision number, theclient115 might re-issue a new UPDATE request with the server's current revision number, essentially repeatingoperation815 with the updated revision number. Some systems might have theclient115 always start with a client-generated revision number of “1” and theserver110 always start with a revision number “2” in order to force theserver110 to issue an UPDATE reply the first time it receives an UPDATE request. Such an approach can provide theclient115 with an impetus for populating its local representation of themusic database205 with a SERVER-DATABASE request (seeFIG. 4B at433). Additionally, an UPDATE reply might also be used to notify aclient115 that the server is about to terminate connection (possibly due to timeout or server shutdown), perhaps by issuing a current revision number of 0.
In addition to the UPDATE request, theclient115 could also include a revision number field in any of therequests433,445,454, and463. Theserver110 would then, on a request-by-request basis, check the revision number provided with the requests with the revision number for that particular request. If the revision numbers did not match, theserver110 would issue an UPDATE reply, specifying the current revision number and perhaps the corresponding reply. Otherwise, theserver110 would comply with the request as previously described.
In one embodiment, the database requests433,445,454, and463 would additionally support incremental updating in order to reduce network traffic (and to improve user experience through greater responsiveness). Incremental updates would allow the client to request only the changes from a historical revision number to a current revision number. If, for example, theclient115 had populated itsplaylists records705 with information from revision “5,” and then the client is notified by theserver110 that the latest revision is “8,” the client can issue a new PLAYLIST-SONGS request463, requesting only the information that has changed from revision “5” to revision “8.” As long as theserver110 maintains or has access to a historical record of modifications from each revision number, it would be able to comply with the incremental request.
However, an optimization might allow for theserver110 to determine whether complying with the incremental request would actually be more efficient than re-sending the entire reply. In certain circumstances (e.g., when more than half of the songs in the playlist were deleted), it would use less network resources to reply with a full PLAYLIST-SONGS reply466 instead of an incremental reply. However, when the PLAYLIST-SONGS reply466 provides a full reply, the reply would advantageously include an indication that the data does not represent an incremental update, so theclient115 will be able to properly handle the information.
Generally, the techniques of the present invention may be implemented on software and/or hardware. For example, they can be implemented in an operating system, in a separate user process, in a library package bound into network applications, or on a specially constructed machine. In a specific embodiment of this invention, the technique of the present invention is implemented in software such as an operating system and/or in an application program running on the operating system.
A software or software/hardware hybrid implementation of the techniques of this invention may be implemented on a general-purpose programmable machine selectively activated or reconfigured by a computer program stored in memory. In an alternative embodiment, the techniques of this invention may be implemented on a general-purpose network host machine such as a personal computer, workstation or server. Further, the invention may be at least partially implemented on a general-purpose computing device.
Referring now toFIG. 9, acomputing device900 suitable for implementing the techniques of the present invention includes a master central processing unit (CPU)905,interfaces910,memory915 and abus920. When acting under the control of appropriate software or firmware, theCPU905 may be responsible for implementing specific functions associated with the functions of a desired computing device. TheCPU905 preferably accomplishes all these functions under the control of software including an operating system (e.g., Mac OS X), and any appropriate applications software (e.g., iTunes).
CPU905 may include one or more processors such as those from the Motorola family of microprocessors or the MIPS family of microprocessors. In an alternative embodiment, the processor is specially designed hardware for controlling the operations ofcomputing device900.
Theinterfaces910 are typically provided as interface cards. Generally, they control the sending and receiving of data packets over the network and sometimes support other peripherals used with thecomputing device900. Among the interfaces that may be provided are Ethernet interfaces, frame relay interfaces, cable interfaces, DSL interfaces, token ring interfaces, and the like. In addition, various very high-speed interfaces may be provided such as fast Ethernet interfaces, Gigabit Ethernet interfaces, ATM interfaces, HSSI interfaces, POS interfaces, FDDI interfaces, ASI interfaces, DHEI interfaces and the like. Generally, these interfaces may include ports appropriate for communication with the appropriate media. In some cases, they may also include an independent processor and, in some instances, volatile RAM.
Regardless of computing device's configuration, it may employ one or more memories or memory modules (such as, for example, the memory915) configured to store data, program instructions and/or other information relating to the functionality of the techniques described herein. The program instructions may control the operation of an operating system and/or one or more applications, for example.
Because such information and program instructions may be employed to implement the systems/methods described herein, the present invention relates to machine readable media that include program instructions, state information, etc. for performing various operations described herein. Examples of machine-readable media include, but are not limited to, magnetic media such as hard disks, floppy disks, and magnetic tape; optical media such as CD-ROM disks; magneto-optical media such as floptical disks; and hardware devices that are specially configured to store program instructions, such as read-only memory devices (ROM) and random access memory (RAM). Examples of program instructions include both machine code, such as produced by a compiler, and higher level code that may be executed by the computer (e.g., using an interpreter).
Although illustrative embodiments and applications of this invention are shown and described herein, many variations and modifications are possible which remain within the concept, scope, and spirit of the invention, and these variations would become clear to those of ordinary skill in the art after perusal of this application. Accordingly, the present embodiments are to be considered as illustrative and not restrictive, and the invention is not to be limited to the details given herein, but may be modified within the scope and equivalents of the appended claims.

Claims (42)

What is claimed is:
1. A method of retrieving digital media comprising:
querying a server for database enumeration;
receiving a response to the database enumeration query that includes at least information about at least one digital media database coupled to the server, wherein the information about the at least one digital media database includes at least metadata about one or more remote records within the at least one digital media database, and wherein the one or more remote records pertain to one or more of digital media, digital media metadata or media collection data;
using the metadata to effectively provide a first representation of the one or more remote records;
querying the server for information required to populate one or more local records associated with the metadata after receiving the metadata;
receiving the information required to populate the one or more local records associated with the metadata in response to the querying of the server;
populating the one or more local records after receiving the information required to populate the one or more local records, thereby effectively providing one or more populated records based on the metadata associated with the one or more remote records;
using the one or more populated records to effectively provide a second representation of the one or more remote records; and
subsequently retrieving digital media associated with at east one of the populated records,
wherein the one or more local records are part of a local database, and wherein said populating of the one or more local records operates to replicate at least a portion of the digital media database to the local database, and
wherein the first representation provides a first level of detail with respect to the one or more remote records, wherein the second representation provides a second level of detail with respect to the one or more remote records, and wherein the second level of detail represents the one or more records in greater detail than the first level of detail.
2. The method ofclaim 1, wherein the remote records pertain to both digital media metadata and media collections and multiple queries are required to populate the local records associated with the metadata.
3. The method ofclaim 1 further comprising using a local database management system to manage the information contained in the local records of the local database, the local records including media collection data records and digital media metadata records.
4. The method ofclaim 1, wherein the server is a remote device accessible across a network, and wherein said method further comprises:
querying the server for media collection enumeration with respect to the at least one digital media database; and
receiving a response to the media collection enumeration query that includes at least information about one or more media collections.
5. The method ofclaim 1 wherein, said retrieving of the digital media comprises:
requesting media from across a network; and
receiving the requested media across the network.
6. The method ofclaim 5 further comprising presenting the received media at a client device, wherein presenting the received media includes playing the media for a user.
7. A method as recited inclaim 1, wherein the one or more populated records effectively provide a representation of the one or more remote records.
8. A method as recited inclaim 1,
wherein the first representation represents the one or more remote records in accordance with a first aspect of representation; and
wherein the second representation represents the one or more remote records in accordance with a second aspect of representation that is different than the first aspect of representation.
9. A method as recited inclaim 1, wherein said method further comprises:
querying the server for information required to provide a third representation of the one or more remote records.
10. A method as recited inclaim 1, wherein said method further comprises:
querying the server for information required to further populate the at least one record in order to effectively provide a third representation of the one or more remote records.
11. A computing system for retrieving digital media, wherein said computing system comprises:
a processing unit configured to provide at least:
means for querying a server for database enumeration;
means for receiving a response to the database enumeration query that includes at least information about at least one digital media database coupled to the server, wherein the information about the at least one digital media database includes at least metadata about one or more remote records within the at least one digital media database, wherein the metadata effectively represents the one or more remote records as a first representation, and wherein the one or more remote records pertain to one or more of digital media, digital media metadata or media collection data;
means for querying the server for information required to populate one or more local records associated with the metadata after receiving the metadata;
means for receiving the information required to populate the one or more local records associated with the metadata in response to the querying of the server;
means for populating the one or more local records after receiving the information required to populate the one or more local records, thereby effectively providing one or more populated records based on the metadata associated with the one or more remote records, wherein the one or more populated records effectively represents the one or more remote records as a second representation;
means for subsequently retrieving digital media associated with at least one of the populated records,
wherein the one or more local records are part of a local database, and wherein said means for populating of the one or more local records operates to replicate at least a portion of the digital media database to the local database, and
wherein the first representation provides a first level of detail with respect to the one or more remote records, wherein the second representation provides a second level of detail with respect to the one or more remote records, and wherein the second level of detail represents the one or more records in greater detail than the first level of detail.
12. A server for providing digital media to one or more devices, wherein said server comprises:
a processing unit configured to provide at least:
means for receiving a query from a device for database enumeration;
means for sending the features of the server to the device in response to the query, the features including enumeration data about at least one digital media database, wherein the information about the at least one digital media database includes at least metadata about one or more records within the at least one digital media database, wherein the metadata can be used by the device to locally present one or more local records at the device as a first local presentation of at least a portion of the at least one digital media database, and wherein the records pertain to one or more of digital media, digital media metadata or media collection data;
means for receiving a querying from the device for information required by the device to populate the one or more local records associated with the first local presentation;
means for sending the device information required to populate the one or more local records associated with the first local presentation, thereby allowing the device to populate the one or more local records after receiving the information required to populate the one or more local records in order to present the one or more local records as one or more populated records;
means for receiving a subsequent query from the device regarding at least one of the one or more populated records; and
means for sending digital media associated with the at least one populated record after receiving the second query from the device,
wherein the one or more local records are part of a local database provided at the device, and wherein population of the one or more local records at the device operates to replicate at least a portion of the digital media database to the local database,
wherein the one or more populated records can be used to locally present the portion of the at least one digital media database at the device as a second local presentation, and
wherein the first local presentation provides a first level of detail with respect to the one or more populated records, wherein the second local presentation provides a second level of detail with respect to the one or more populated records, and wherein the second level of detail represents the one or more records in greater detail than the first level of detail.
13. A computer readable storage medium including at least executable computer program code tangibly stored thereon for retrieving digital media, comprising:
computer program code for querying a server for database enumeration;
computer program code for receiving a response to the database enumeration query that includes at least information about at least one digital media database, wherein the information about the at least one digital media database includes at least metadata about one or more remote records within the at least one digital media database, wherein the metadata effectively represents the one or more remote records as a first representation, and wherein the one or more remote records pertain to one or more of digital media, digital media metadata or media collection data, the metadata being used to effectively provide a first representation of the one or more remote records;
computer program code for querying the server, based on the metadata, for information required to populate one or more of the local records associated with the metadata after receiving the metadata;
computer program code for receiving the information required to populate the one or more of the local records associated with the metadata in response to the querying of the server;
computer program code for populating the one or more local records after receiving the information required to populate the one or more local records, thereby effectively providing one or more populated records based on the metadata associated with the one or more remote records, the one or more populated records being used to effectively provide a second representation of the one or more remote records; and
computer program code for retrieving digital media associated with at least one of the populated records based on the populated one or more records,
wherein the one or more local records are part of a local database, and wherein said computer program code for populating of the one or more local records operates to replicate at least a portion of the digital media database to the local database, and
wherein the first representation provides a first level of detail with respect to the one or more remote records, wherein the second representation provides a second level of detail with respect to the one or more remote records, and wherein the second level of detail represents the one or more records in greater detail than the first level of detail.
14. A computer readable storage medium as recited inclaim 13, wherein the remote records pertain to both digital media metadata and media collections and multiple queries are required to populate the local records associated with the metadata.
15. A computer readable storage medium as recited inclaim 13,
wherein the first representation represents the one or more remote records in accordance with a first aspect of representation; and
wherein the second representation represents the one or more remote records in accordance with a second aspect of representation that is different than the first aspect of representation.
16. A computer readable storage medium as recited inclaim 13, wherein the computer readable medium further comprises:
computer program code for querying the server for information required to provide a third representation of one or more remote records.
17. A computer readable storage medium as recited inclaim 13, wherein the computer readable medium further comprises:
computer program code for querying the server for information required to further populate the one or more local records in order to effectively provide a third representation of the one or more remote records.
18. A computer readable storage medium as recited inclaim 13, further comprising:
computer program code for determining whether the digital media database has been updated since the one or more local records were populated from information provided by the digital media database.
19. A computer readable storage medium including at least executable computer program code tangibly stored thereon for providing digital media to one or more devices, wherein said computer readable medium comprises:
computer program code for receiving a query from a device for database enumeration;
computer program code for sending the features of the server to the device in response to the query, the features including enumeration data about at least one digital media database, wherein the information about the at least one digital media database includes at least metadata about one or more records within the at least one digital media database, wherein the metadata can be used by the device to locally present one or more local records at the device as a first local presentation of at least a portion of the at least one digital media database, and wherein the records pertain to one or more of digital media, digital media metadata or media collection data;
computer program code for receiving a querying from the device for information required by the device to populate the one or more local records associated with the first local presentation;
computer program code for sending the device information required to populate the one or more records associated with the first local presentation, thereby allowing the device to populate the one or more local records after receiving the information required to populate the one or more local records in order to present the one or more local records as one or more populated records;
computer program code for receiving a subsequent query from the device regarding at least one of the one or more populated records; and
computer program code for sending digital media associated with the at least one populated record after receiving the second query from the device,
wherein the one or more local records are part of a local database, and wherein the population of the one or more local records at the device operates to replicate at least a portion of the digital media database to the local database,
wherein the one or more populated records can be used to locally present the portion of the at least one digital media database at the device as a second local presentation, and
wherein the first local presentation provides a first level of detail with respect to the one or more remote records, wherein the second local presentation provides a second level of detail with respect to the one or more remote records, and wherein the second level of detail represents the one or more records in greater detail than the first level of detail.
20. A computing device comprising:
a processor;
memory, operably connected with the processor;
wherein the processor is operable to perform instructions including connecting to a server, the server including media information;
querying the server for at least a portion of the media information;
receiving media information responsive to the query;
requesting at least one media item associated with the media information responsive to the query; and
receiving the media item,
wherein said querying includes a plurality of distinct queries to the server, and wherein said querying includes at least:
querying the server for database enumeration; and
wherein said receiving of the media information includes a plurality of distinct responses to the queries, and wherein said receiving includes at least:
receiving a response to the database enumeration query that includes descriptive information on at least one remote database, the descriptive information including how much media is available from the at least one remote database or how many media collections are available from the at least one remote database or both,
wherein said method further includes at least:
receiving the information required to populate the one or more of the local records associated with the metadata in response to the querying of the server;
populating the one or more local records after receiving the information required to populate the one or more local records, thereby effectively providing one or more populated records based on the metadata associated with the one or more remote records; and
retrieving digital media associated with at least one of the populated records based on the populated one or more records,
wherein the one or more local records are part of a local database, and wherein by population of the one or more local records, at least a portion of the remote database is replicated to the local database,
wherein the metadata being used to effectively provide a first representation of the one or more remote records, wherein the one or more populated records being used to effectively provide a second representation of the one or more remote records, and
wherein the first representation provides a first level of detail with respect to the one or more remote records, wherein the second representation provides a second level of detail with respect to the one or more remote records, and wherein the second level of detail represents the one or more records in greater detail than the first level of detail.
21. The computing device ofclaim 20,
wherein said querying includes at least:
querying the server for media collection enumeration, and
wherein said receiving includes at least:
receiving a response to the media collection enumeration query that includes descriptive information on at least one media collection available from the at least one database.
22. The computing device ofclaim 20,
wherein said querying includes at least:
querying the server for server capabilities, and
wherein said receiving includes at least:
receiving a response to the server capabilities query that describes the server capabilities.
23. The computing device ofclaim 20, wherein querying the server for at least a portion of the media information includes at least a request for an enumeration of at least a portion of the media collections.
24. A computer readable storage medium as recited inclaim 18, wherein said computer program code for determining whether the digital media database has been updated comprises:
computer program code for updating to a current revision indicator whenever the digital media database is modified;
computer program code for comparing the current revision indicator to a client-provided revision indicator, the client-provided revision indicator being provided with a request being received from a client, the request pertaining to the at least one digital media database and including a client-provided revision indicator; and
computer program code for responding to the request with a response that includes at least an identification of the current revision indicator if the client-provided revision indicator did not match the current revision indicator.
25. A method for delivering media comprising:
sending, by a client device and to a server, a first query for available media databases maintained by a digital media storage coupled to the server;
receiving, from the server, a response to the first query, the response to the first query including first metadata describing at least a first available media database;
presenting, on a user interface of the client device and based on the first metadata, a visual representation of at least the first available media database;
in response to a user selection of the first available media database, sending, by the client device and to the server, a second query for media collections included in the first available media database;
receiving, from the server, a response to the second query, the response to the second query including second metadata describing at least a first media collection included in the first available media database, wherein the second metadata comprises a first level of data identifying the first media collection;
populating one or more local records of a local database of the client device based on the second metadata, wherein populating the one or more local records replicates at least a portion of the first available media database at the local database;
updating the user interface based on the one or more local records to present a visual representation of at least the first level of data identifying the first media collection;
in response to a user selection of the first media collection, sending, by the client device and to the server, a third query for media items included in the first media collection;
receiving, from the server, a response to the third query, the response to the third query including third metadata describing at least the media items included in the first media collection, wherein the third metadata comprises a second level of data identifying a listing of the media items included in the first media collection;
updating the local database based on the third metadata; and
updating the user interface based on the local database to present a visual representation of the second level of data identifying the listing of media items included in the first media collection.
26. The method of claim 25, further comprising:
in response to a user selection of a first media item included in the first media collection, sending, to the server, a fourth query requesting the first media item; and
receiving the first media item from the server in response to the fourth query.
27. The method of claim 25, wherein the second metadata further describes a second media collection included in the first available media database, the method further comprising:
in response to a user selection of the second media collection included in the first available media database, sending, by the client device and to the server, a fourth query for media items included in the second media collection;
receiving, from the server, a response to the fourth query, the response to the fourth query including fourth metadata describing at least the media items included in the second media collection, wherein the fourth metadata comprises data identifying a listing of the media items included in the second media collection;
updating the local database based on the fourth metadata; and
updating the user interface based on the local database to present a visual representation of a listing of media items included in the second media collection.
28. The method of claim 25, wherein the first metadata further describes a second available media database, the method further comprising:
in response to a user selection of the second available media database maintained by the digital media storage, sending, to the server, a fourth query for media collections included in the second available media database.
29. The method of claim 28, further comprising:
receiving, from the server, a response to the fourth query, the response to the fourth query including fourth metadata describing at least a second media collection included in the second available media database, wherein the fourth metadata comprises a first level of data identifying the second media collection included in the second available media database;
populating one or more second local records of the local database of the client device based on the fourth metadata, wherein populating the one or more second local records replicates at least a portion of the second available media database at the local database; and
updating the user interface based on the one or more second local records to present a visual representation of at least the first level of data identifying the second media collection included in the second available media database.
30. The method of claim 29, further comprising:
in response to a user selection of the second media collection included in the second available media database, sending, by the client device and to the server, a fifth query for media items included in the second media collection;
receiving, from the server, a response to the fifth query, the response to the fifth query including fifth metadata describing at least the media items included in the second media collection, wherein the fifth metadata comprises a second level of data identifying a listing of the media items included in the second media collection;
updating the local database based on the fifth metadata; and
updating the user interface based on the local database to present a visual representation of the second level of data identifying the listing of media items included in the second media collection included in the second available media database.
31. A client device for delivering media comprising:
one or more computer processors; and
memory storing instructions that, when executed by the one or more computer processors, cause the client device to:
send, to a server, a first query for available media databases maintained by a digital media storage coupled to the server;
receive, from the server, a response to the first query, the response to the first query including first metadata describing at least a first available media database;
present, on a user interface and based on the first metadata, a visual representation of at least the first available media database;
in response to a user selection of the first available media database, send, to the server, a second query for media collections included in the first available media database;
receive, from the server, a response to the second query, the response to the second query including second metadata describing at least a first media collection included in the first available media database, wherein the second metadata comprises a first level of data identifying the first media collection;
populate one or more local records of a local database of the client device based on the second metadata, wherein populating the one or more local records replicates at least a portion of the first available media database at the local database;
update the user interface based on the one or more local records to present a visual representation of at least the first level of data identifying the first media collection;
in response to a user selection of the first media collection, send, to the server, a third query for media items included in the first media collection;
receive, from the server, a response to the third query, the response to the third query including third metadata describing at least the media items included in the first media collection, wherein the third metadata comprises a second level of data identifying a listing of the media items included in the first media collection;
update the one or more local records of the local database based on the third metadata; and
update the user interface based on the local database to present a visual representation of the second level of data identifying the listing of media items included in the first media collection.
32. The client device of claim 31, wherein the instructions further cause the client device to:
in response to a user selection of a first media item included in the first media collection, send, to the server, a fourth query requesting the first media item; and
receive the first media item from the server in response to the fourth query.
33. The client device of claim 31, wherein the second metadata further describes a second media collection included in the first available media database, and wherein the instructions further cause the client device to:
in response to a user selection of the second media collection included in the first available media database, send, to the server, a fourth query for media items included in the second media collection;
receive, from the server, a response to the fourth query, the response to the fourth query including fourth metadata describing at least the media items included in the second media collection, wherein the fourth metadata comprises data identifying a listing of the media items included in the second media collection;
update the local database based on the fourth metadata; and
update the user interface based on the local database to present a visual representation of a listing of media items included in the second media collection.
34. The client device of claim 31, wherein the first metadata further describes a second available media database, and wherein the instructions further cause the client device to:
in response to a user selection of the second available media database maintained by the digital media storage, send, to the server, a fourth query for media collections included in the second available media database.
35. The client device of claim 34, wherein the instructions further cause the client device to:
receive, from the server, a response to the fourth query, the response to the fourth query including fourth metadata describing at least a second media collection included in the second available media database, wherein the fourth metadata comprises a first level of data identifying the second media collection included in the second available media database;
populate one or more second local records of the local database of the client device based on the fourth metadata, wherein populating the one or more second local records replicates at least a portion of the second available media database at the local database; and
update the user interface based on the one or more second local records to present a visual representation of at least the first level of data identifying the first media collection included in the second available media database.
36. The client device of claim 35, wherein the instructions further cause the client device to
in response to a user selection of the second media collection included in the second available media database, send, to the server, a fifth query for media items included in the second media collection;
receive, from the server, a response to the fifth query, the response to the fifth query including fifth metadata describing at least the media items included in the second media collection, wherein the fifth metadata comprises a second level of data identifying a listing of the media items included in the second media collection;
update the local database based on the fifth metadata; and
update the user interface based on the local database to present a visual representation of the second level of data identifying the listing of media items included in the second media collection included in the second available media database.
37. A non-transitory computer-readable medium storing instructions that, when executed by a client device, cause the client device to:
send, to a server, a first query for available media databases maintained by a digital media storage coupled to the server;
receive, from the server, a response to the first query, the response to the first query including first metadata describing at least a first available media database;
present, on a user interface and based on the first metadata, a visual representation of at least the first available media database;
in response to a user selection of the first available media database, send, to the server, a second query for media collections included in the first available media database;
receive, from the server, a response to the second query, the response to the second query including second metadata describing at least a first media collection included in the first available media database, wherein the second metadata comprises a first level of data identifying the first media collection;
populate one or more local records of a local database of the client device based on the second metadata, wherein populating the one or more local records replicates at least a portion of the first available media database at the local database;
update the user interface based on the one or more local records to present a visual representation of at least the first level of data identifying the first media collection;
in response to a user selection of the first media collection, send, to the server, a third query for media items included in the first media collection;
receive, from the server, a response to the third query, the response to the third query including third metadata describing at least the media items included in the first media collection, wherein the third metadata comprises a second level of data identifying a listing of the media items included in the first media collection;
update the local database based on the third metadata; and
update the user interface based on the local database to present a visual representation of the second level of data identifying the listing of media items included in the first media collection.
38. The non-transitory computer-readable medium of claim 37, wherein the instructions further cause the client device to:
in response to a user selection of a first media item included in the first media collection, send, to the server, a fourth query requesting the first media item; and
receive the first media item from the server in response to the fourth query.
39. The non-transitory computer-readable medium of claim 37, wherein the second metadata further describes a second media collection included in the first available media database, and wherein the instructions further cause the client device to:
in response to a user selection of the second media collection included in the first available media database, send, to the server, a fourth query for media items included in the second media collection;
receive, from the server, a response to the fourth query, the response to the fourth query including fourth metadata describing at least the media items included in the second media collection, wherein the fourth metadata comprises data identifying a listing of the media items included in the second media collection;
update the local database based on the fourth metadata; and
update the user interface based on the local database to present a visual representation of a listing of media items included in the second media collection.
40. The non-transitory computer-readable medium of claim 37, wherein the first metadata further describes a second available media database, and wherein the instructions further cause the client device to:
in response to a user selection of the second available media database maintained by the digital media storage, send, to the server, a fourth query for media collections included in the second available media database.
41. The non-transitory computer-readable medium of claim 40, wherein the instructions further cause the client device to:
receive, from the server, a response to the fourth query, the response to the fourth query including fourth metadata describing at least a second media collection included in the second available media database, wherein the fourth metadata comprises a first level of data identifying the second media collection included in the second available media database;
populate one or more second local records of the local database of the client device based on the fourth metadata, wherein populating the one or more second local records replicates at least a portion of the second available media database at the local database; and
update the user interface based on the one or more second local records to present a visual representation of at least the first level of data identifying the second media collection included in the second available media database.
42. The non-transitory computer-readable medium of claim 41, wherein the instructions further cause the client device to:
in response to a user selection of the second media collection included in the second available media database, send, to the server, a fifth query for media items included in the second media collection;
receive, from the server, a response to the fifth query, the response to the fifth query including fifth metadata describing at least the media items included in the second media collection, wherein the fifth metadata comprises a second level of data identifying a listing of the media items included in the second media collection;
update the local database based on the fifth metadata; and
update the user interface based on the local database to present a visual representation of the second level of data identifying the listing of media items included in the first media collection included in the second available media database.
US14/866,6392003-04-252015-09-25Accessing digital mediaExpired - LifetimeUSRE47934E1 (en)

Priority Applications (1)

Application NumberPriority DateFiling DateTitle
US14/866,639USRE47934E1 (en)2003-04-252015-09-25Accessing digital media

Applications Claiming Priority (4)

Application NumberPriority DateFiling DateTitle
US10/423,638US6728729B1 (en)2003-04-252003-04-25Accessing media across networks
US10/799,412US7698297B2 (en)2003-04-252004-03-12Accessing digital media
US13/445,791USRE45793E1 (en)2003-04-252012-04-12Accessing digital media
US14/866,639USRE47934E1 (en)2003-04-252015-09-25Accessing digital media

Related Parent Applications (1)

Application NumberTitlePriority DateFiling Date
US10/799,412ReissueUS7698297B2 (en)2003-04-252004-03-12Accessing digital media

Publications (1)

Publication NumberPublication Date
USRE47934E1true USRE47934E1 (en)2020-04-07

Family

ID=32108167

Family Applications (4)

Application NumberTitlePriority DateFiling Date
US10/423,638Expired - LifetimeUS6728729B1 (en)2003-04-252003-04-25Accessing media across networks
US10/799,412CeasedUS7698297B2 (en)2003-04-252004-03-12Accessing digital media
US13/445,791Expired - LifetimeUSRE45793E1 (en)2003-04-252012-04-12Accessing digital media
US14/866,639Expired - LifetimeUSRE47934E1 (en)2003-04-252015-09-25Accessing digital media

Family Applications Before (3)

Application NumberTitlePriority DateFiling Date
US10/423,638Expired - LifetimeUS6728729B1 (en)2003-04-252003-04-25Accessing media across networks
US10/799,412CeasedUS7698297B2 (en)2003-04-252004-03-12Accessing digital media
US13/445,791Expired - LifetimeUSRE45793E1 (en)2003-04-252012-04-12Accessing digital media

Country Status (5)

CountryLink
US (4)US6728729B1 (en)
EP (2)EP1618501A2 (en)
JP (3)JP4176801B2 (en)
CN (1)CN100533435C (en)
WO (1)WO2004097683A2 (en)

Families Citing this family (301)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
JP2004504647A (en)1999-11-162004-02-12シーエフピーエイチ, エル.エル.シー. System and method for resale of electronic goods
US8645137B2 (en)2000-03-162014-02-04Apple Inc.Fast, language-independent method for user authentication by voice
US20030172079A1 (en)*2002-03-082003-09-11Millikan Thomas N.Use of a metadata presort file to sort compressed audio files
US20030182139A1 (en)*2002-03-222003-09-25Microsoft CorporationStorage, retrieval, and display of contextual art with digital media files
US20030191720A1 (en)*2002-04-082003-10-09Himgan WibisonoElectronic tracking tag
US20030191753A1 (en)*2002-04-082003-10-09Michael HochFiltering contents using a learning mechanism
US7478126B2 (en)*2002-04-082009-01-13Sony CorporationInitializing relationships between devices in a network
US7614081B2 (en)*2002-04-082009-11-03Sony CorporationManaging and sharing identities on a network
US20060106900A1 (en)*2002-09-272006-05-18Millikan Thomas NUse of a metadata presort file to sort compressed audio files
US7668842B2 (en)*2002-10-162010-02-23Microsoft CorporationPlaylist structure for large playlists
US7054888B2 (en)*2002-10-162006-05-30Microsoft CorporationOptimizing media player memory during rendering
US7043477B2 (en)*2002-10-162006-05-09Microsoft CorporationNavigating media content via groups within a playlist
US7707231B2 (en)*2002-10-162010-04-27Microsoft CorporationCreating standardized playlists and maintaining coherency
US7136874B2 (en)*2002-10-162006-11-14Microsoft CorporationAdaptive menu system for media players
US20060026376A1 (en)*2002-10-162006-02-02Microsoft CorporationRetrieving graphics from slow retrieval storage devices
US7216178B2 (en)*2003-04-042007-05-08Gibson Guitar Corp.System and method for distributing music to customers over the internet using uniquely identified proprietary devices
US6728729B1 (en)2003-04-252004-04-27Apple Computer, Inc.Accessing media across networks
KR100745995B1 (en)*2003-06-042007-08-06삼성전자주식회사 Metadata management device and method
US7757173B2 (en)*2003-07-182010-07-13Apple Inc.Voice menu system
JP2006345008A (en)*2003-08-252006-12-21Fujitsu Ten LtdSystem and method for updating music database, device and method for transmitting music database, and terminal unit having musical piece database update function and method of updating musical piece database thereof
US7644446B2 (en)*2003-10-232010-01-05Microsoft CorporationEncryption and data-protection for content on portable medium
US7673062B2 (en)2003-11-182010-03-02Yahoo! Inc.Method and apparatus for assisting with playback of remotely stored media files
US7650513B2 (en)*2004-01-212010-01-19Gm Global Technology Operations, Inc.System and method for vehicle-to-vehicle migration of multimedia content
US20060010167A1 (en)*2004-01-212006-01-12Grace James RApparatus for navigation of multimedia content in a vehicle multimedia system
US7885926B2 (en)*2004-01-212011-02-08GM Global Technology Operations LLCSystem and apparatus for wireless synchronization of multimedia content
US7529872B1 (en)2004-04-272009-05-05Apple Inc.Communication between an accessory and a media player using a protocol with multiple lingoes
US8117651B2 (en)2004-04-272012-02-14Apple Inc.Method and system for authenticating an accessory
US7529870B1 (en)2004-04-272009-05-05Apple Inc.Communication between an accessory and a media player with multiple lingoes
US7526588B1 (en)2004-04-272009-04-28Apple Inc.Communication between an accessory and a media player using a protocol with multiple lingoes
US7441062B2 (en)2004-04-272008-10-21Apple Inc.Connector interface system for enabling data communication with a multi-communication device
US7895378B2 (en)*2004-04-272011-02-22Apple Inc.Method and system for allowing a media player to transfer digital audio to an accessory
US7826318B2 (en)*2004-04-272010-11-02Apple Inc.Method and system for allowing a media player to transfer digital audio to an accessory
US7441058B1 (en)*2006-09-112008-10-21Apple Inc.Method and system for controlling an accessory having a tuner
US7673083B2 (en)*2004-04-272010-03-02Apple Inc.Method and system for controlling video selection and playback in a portable media player
US7529871B1 (en)2004-04-272009-05-05Apple Inc.Communication between an accessory and a media player with multiple protocol versions
US7797471B2 (en)2004-04-272010-09-14Apple Inc.Method and system for transferring album artwork between a media player and an accessory
US7634605B2 (en)*2004-04-272009-12-15Apple Inc.Method and system for transferring stored data between a media player and an accessory
US7502820B2 (en)2004-05-032009-03-10Microsoft CorporationSystem and method for optimized property retrieval of stored objects
US20070110074A1 (en)*2004-06-042007-05-17Bob BradleySystem and Method for Synchronizing Media Presentation at Multiple Recipients
US8797926B2 (en)2004-06-042014-08-05Apple Inc.Networked media station
US8443038B2 (en)2004-06-042013-05-14Apple Inc.Network media device
US10972536B2 (en)2004-06-042021-04-06Apple Inc.System and method for synchronizing media presentation at multiple recipients
US7437358B2 (en)2004-06-252008-10-14Apple Inc.Methods and systems for managing data
US7730012B2 (en)2004-06-252010-06-01Apple Inc.Methods and systems for managing data
US7774326B2 (en)2004-06-252010-08-10Apple Inc.Methods and systems for managing data
US20060010075A1 (en)*2004-07-082006-01-12Dean WolfTechnique for facilitating resale of digital content over a computer network
WO2006017362A2 (en)*2004-07-132006-02-16Freedom Software, Inc.Storing and distributing encrypted digital content
US9948989B1 (en)*2004-07-212018-04-17Cox Communications, Inc.Interactive media content listing search and filtering system for a media content listing display system such as an electronic programming guide
US20060020968A1 (en)*2004-07-232006-01-26Findaway World LlcMethod for commercialization and advertising using a personal media player
US7562394B2 (en)2004-07-232009-07-14Findaway World LlcPersonal media player apparatus and method
US20060041613A1 (en)*2004-08-182006-02-23Fackelmayer Jonathan R OMethod and system for visual art distribution and presentation
US20190278560A1 (en)2004-10-272019-09-12Chestnut Hill Sound, Inc.Media appliance with auxiliary source module docking and fail-safe alarm modes
US8090309B2 (en)*2004-10-272012-01-03Chestnut Hill Sound, Inc.Entertainment system with unified content selection
US7885622B2 (en)*2004-10-272011-02-08Chestnut Hill Sound Inc.Entertainment system with bandless tuning
US7735012B2 (en)*2004-11-042010-06-08Apple Inc.Audio user interface for computing devices
US9420021B2 (en)*2004-12-132016-08-16Nokia Technologies OyMedia device and method of enhancing use of media device
US7823214B2 (en)*2005-01-072010-10-26Apple Inc.Accessory authentication for electronic devices
US8606383B2 (en)*2005-01-312013-12-10The Invention Science Fund I, LlcAudio sharing
US20060190968A1 (en)*2005-01-312006-08-24Searete Llc, A Limited Corporation Of The State Of The State Of DelawareSharing between shared audio devices
US20060174203A1 (en)*2005-01-312006-08-03Searete Llc, A Limited Liability Corporation Of The State Of DelawareViewfinder for shared image device
US20060187230A1 (en)*2005-01-312006-08-24Searete LlcPeripheral shared image device sharing
US8902320B2 (en)2005-01-312014-12-02The Invention Science Fund I, LlcShared image device synchronization or designation
US7876357B2 (en)*2005-01-312011-01-25The Invention Science Fund I, LlcEstimating shared image device operational capabilities or resources
US9489717B2 (en)2005-01-312016-11-08Invention Science Fund I, LlcShared image device
US7920169B2 (en)*2005-01-312011-04-05Invention Science Fund I, LlcProximity of shared image devices
US20060187227A1 (en)*2005-01-312006-08-24Jung Edward KStorage aspects for imaging device
US20060171603A1 (en)*2005-01-312006-08-03Searete Llc, A Limited Liability Corporation Of The State Of DelawareResampling of transformed shared image techniques
US9082456B2 (en)2005-01-312015-07-14The Invention Science Fund I LlcShared image device designation
US20070236505A1 (en)*2005-01-312007-10-11Searete Llc, A Limited Liability Corporation Of The State Of DelawareResampling of transformed shared image techniques
US20060173972A1 (en)*2005-01-312006-08-03Searete Llc, A Limited Liability Corporation Of The State Of DelawareAudio sharing
US9325781B2 (en)2005-01-312016-04-26Invention Science Fund I, LlcAudio sharing
US20060285150A1 (en)*2005-01-312006-12-21Searete Llc, A Limited Liability Corporation Of The State Of DelawareRegional proximity for shared image device(s)
US9124729B2 (en)2005-01-312015-09-01The Invention Science Fund I, LlcShared image device synchronization or designation
US9910341B2 (en)2005-01-312018-03-06The Invention Science Fund I, LlcShared image device designation
JP4774059B2 (en)*2005-02-012011-09-14シーメンス カナダ リミテッド Electrical exhaust gas recirculation valve
EP1844386A4 (en)*2005-02-042009-11-25Strands IncSystem for browsing through a music catalog using correlation metrics of a knowledge base of mediasets
US7818350B2 (en)2005-02-282010-10-19Yahoo! Inc.System and method for creating a collaborative playlist
US20060224260A1 (en)*2005-03-042006-10-05Hicken Wendell TScan shuffle for building playlists
US9001215B2 (en)2005-06-022015-04-07The Invention Science Fund I, LlcEstimating shared image device operational capabilities or resources
US10003762B2 (en)2005-04-262018-06-19Invention Science Fund I, LlcShared image devices
US9819490B2 (en)2005-05-042017-11-14Invention Science Fund I, LlcRegional proximity for shared image device(s)
KR100744724B1 (en)*2005-06-242007-08-01(주)뮤직소프트 Online record store operating system and method
US7836146B2 (en)*2005-06-272010-11-16Novarc L.L.CSystem and method for concurrently downloading digital content and recording to removable media
US20070022306A1 (en)*2005-07-252007-01-25Lindsley Brett LMethod and apparatus for providing protected digital content
US8140601B2 (en)*2005-08-122012-03-20Microsoft CoporationLike processing of owned and for-purchase media
US7831605B2 (en)*2005-08-122010-11-09Microsoft CorporationMedia player service library
US20070048713A1 (en)*2005-08-122007-03-01Microsoft CorporationMedia player service library
US20070048714A1 (en)*2005-08-122007-03-01Microsoft CorporationMedia player service library
US8677377B2 (en)2005-09-082014-03-18Apple Inc.Method and apparatus for building an intelligent automated assistant
KR100724940B1 (en)*2005-12-052007-06-04삼성전자주식회사 How to update the contents of DMS in DLNA system
US20070136778A1 (en)*2005-12-092007-06-14Ari BirgerController and control method for media retrieval, routing and playback
US20070226223A1 (en)*2006-03-082007-09-27Motorola, Inc.Method and apparatus for loading of information to a portable device
US7765192B2 (en)2006-03-292010-07-27Abo Enterprises, LlcSystem and method for archiving a media collection
US7444388B1 (en)2006-04-132008-10-28Concert Technology CorporationSystem and method for obtaining media content for a portable media player
US8006019B2 (en)2006-05-222011-08-23Apple, Inc.Method and system for transferring stored data between a media player and an accessory
US20070298840A1 (en)*2006-06-022007-12-27Findaway World, Inc.Personal media player apparatus and method
US7945142B2 (en)*2006-06-152011-05-17Microsoft CorporationAudio/visual editing tool
US7415563B1 (en)2006-06-272008-08-19Apple Inc.Method and system for allowing a media player to determine if it supports the capabilities of an accessory
US7805682B1 (en)*2006-08-032010-09-28Sonos, Inc.Method and apparatus for editing a playlist
US8620699B2 (en)2006-08-082013-12-31Napo Enterprises, LlcHeavy influencer media recommendations
US9318108B2 (en)2010-01-182016-04-19Apple Inc.Intelligent automated assistant
US7558894B1 (en)2006-09-112009-07-07Apple Inc.Method and system for controlling power provided to an accessory
US8290820B2 (en)*2006-09-132012-10-16Microsoft CorporationMethods of maintaining a journal of media encounters between co-existing portable devices
US7900264B2 (en)*2006-09-292011-03-01Vixs Systems, Inc.Multimedia client/server system with copy protection recovery and methods for use therewith
JP4379471B2 (en)*2006-12-292009-12-09ソニー株式会社 Playback apparatus and playback control method
JP2008186569A (en)*2007-01-052008-08-14Sony CorpReproduction device and reproduction control method
US7813697B2 (en)*2007-01-052010-10-12Apple Inc.Power efficient high speed communication systems and methods
US8463924B2 (en)2007-02-022013-06-11Apple Inc.Remote access of media items
US8307092B2 (en)*2007-02-212012-11-06Napo Enterprises, LlcMethod and system for collecting information about a user's media collections from multiple login points
US7920901B2 (en)*2007-02-282011-04-05Research In Motion LimitedSystem and method for providing visual indicators in a media application
US20080239888A1 (en)*2007-03-262008-10-02Yamaha CorporationMusic Data Providing System
JP2008241918A (en)*2007-03-262008-10-09Yamaha CorpMusic data providing system and site
US8977255B2 (en)2007-04-032015-03-10Apple Inc.Method and system for operating a multi-function portable electronic device using voice-activation
US20080307106A1 (en)*2007-06-082008-12-11Apple Inc.Photo Streaming to Media Device
EP2169560A4 (en)*2007-07-042012-05-30Imatrix CorpE-mail processing apparatus, method of e-mail processing, e-mail processing program and e-mail processing system
US11265355B2 (en)2007-08-242022-03-01Iheartmedia Management Services, Inc.Customized perishable media content based on user-specified preference for static or variable location
US9699232B2 (en)2007-08-242017-07-04Iheartmedia Management Services, Inc.Adding perishable content to media stream based on user location preference
US9990655B2 (en)2007-08-242018-06-05Iheartmedia Management Services, Inc.Live media stream including personalized notifications
US8719349B2 (en)*2007-08-242014-05-06Clear Channel Management Services, Inc.System and method for providing a radio-like experience
WO2009032708A2 (en)*2007-09-042009-03-12Apple Inc.Protocol for remote user interface for portable media device
JP5194673B2 (en)2007-09-262013-05-08株式会社日立製作所 Mobile terminal and information transmission / reception method
US9330720B2 (en)2008-01-032016-05-03Apple Inc.Methods and apparatus for altering audio output signals
US20090183060A1 (en)*2008-01-122009-07-16David HellerUnified Media Presentation for Media Devices
US8047966B2 (en)*2008-02-292011-11-01Apple Inc.Interfacing portable media devices and sports equipment
US8996376B2 (en)2008-04-052015-03-31Apple Inc.Intelligent text-to-speech conversion
US10496753B2 (en)2010-01-182019-12-03Apple Inc.Automatically adapting user interfaces for hands-free interaction
US8977710B2 (en)*2008-06-182015-03-10Qualcomm, IncorporatedRemote selection and authorization of collected media transmission
US9716774B2 (en)2008-07-102017-07-25Apple Inc.System and method for syncing a user interface on a server device to a user interface on a client device
US20100030549A1 (en)2008-07-312010-02-04Lee Michael MMobile device having human language translation capability with positional feedback
US8238811B2 (en)2008-09-082012-08-07Apple Inc.Cross-transport authentication
US8208853B2 (en)2008-09-082012-06-26Apple Inc.Accessory device authentication
US8898568B2 (en)2008-09-092014-11-25Apple Inc.Audio user interface
WO2010067118A1 (en)2008-12-112010-06-17Novauris Technologies LimitedSpeech recognition involving a mobile device
US8669457B2 (en)*2008-12-222014-03-11Amazon Technologies, Inc.Dynamic generation of playlists
US20100169493A1 (en)*2008-12-282010-07-01Yamakawa DevenderSystem and method of switching from streaming content to local content
JP5346628B2 (en)2009-03-112013-11-20株式会社堀場エステック Mass flow controller verification system, verification method, verification program
GB0906004D0 (en)*2009-04-072009-05-20Omnifone LtdMusicStation desktop
US10241644B2 (en)2011-06-032019-03-26Apple Inc.Actionable reminder entries
US20120309363A1 (en)2011-06-032012-12-06Apple Inc.Triggering notifications associated with tasks items that represent tasks to perform
US9858925B2 (en)2009-06-052018-01-02Apple Inc.Using context information to facilitate processing of commands in a virtual assistant
US10241752B2 (en)2011-09-302019-03-26Apple Inc.Interface for a virtual digital assistant
US9431006B2 (en)2009-07-022016-08-30Apple Inc.Methods and apparatuses for automatic speech recognition
US9106803B2 (en)*2009-07-302015-08-11Cellco PartnershipBroadcast media information capture and communication via a wireless network
US10276170B2 (en)2010-01-182019-04-30Apple Inc.Intelligent automated assistant
US10705794B2 (en)2010-01-182020-07-07Apple Inc.Automatically adapting user interfaces for hands-free interaction
US10553209B2 (en)2010-01-182020-02-04Apple Inc.Systems and methods for hands-free notification summaries
US10679605B2 (en)2010-01-182020-06-09Apple Inc.Hands-free list-reading by intelligent automated assistant
DE112011100329T5 (en)2010-01-252012-10-31Andrew Peter Nelson Jerram Apparatus, methods and systems for a digital conversation management platform
US8682667B2 (en)2010-02-252014-03-25Apple Inc.User profiling for selecting user specific voice input processing information
WO2012050618A1 (en)2010-10-162012-04-19James Charles VagoMultimedia methods, devices and systems
US10762293B2 (en)2010-12-222020-09-01Apple Inc.Using parts-of-speech tagging and named entity recognition for spelling correction
US9262612B2 (en)2011-03-212016-02-16Apple Inc.Device access using voice authentication
US8849950B2 (en)*2011-04-072014-09-30Qualcomm IncorporatedNetwork streaming of video data using byte range requests
US9087060B2 (en)*2011-06-032015-07-21Apple Inc.Partial sort on a host
US10057736B2 (en)2011-06-032018-08-21Apple Inc.Active transport based notifications
US8994660B2 (en)2011-08-292015-03-31Apple Inc.Text correction processing
US8971546B2 (en)2011-10-142015-03-03Sonos, Inc.Systems, methods, apparatus, and articles of manufacture to control audio playback devices
US9665339B2 (en)2011-12-282017-05-30Sonos, Inc.Methods and systems to select an audio track
US9654821B2 (en)2011-12-302017-05-16Sonos, Inc.Systems and methods for networked music playback
US10134385B2 (en)2012-03-022018-11-20Apple Inc.Systems and methods for name pronunciation
US9483461B2 (en)2012-03-062016-11-01Apple Inc.Handling speech synthesis of content for multiple languages
US9280610B2 (en)2012-05-142016-03-08Apple Inc.Crowd sourcing information to fulfill user requests
US9721563B2 (en)2012-06-082017-08-01Apple Inc.Name recognition system
US9674587B2 (en)2012-06-262017-06-06Sonos, Inc.Systems and methods for networked music playback including remote add to queue
US9137564B2 (en)2012-06-282015-09-15Sonos, Inc.Shift to corresponding media in a playback queue
US9495129B2 (en)2012-06-292016-11-15Apple Inc.Device, method, and user interface for voice-activated navigation and browsing of a document
US9576574B2 (en)2012-09-102017-02-21Apple Inc.Context-sensitive handling of interruptions by intelligent digital assistant
US9547647B2 (en)2012-09-192017-01-17Apple Inc.Voice-based media searching
US9510055B2 (en)2013-01-232016-11-29Sonos, Inc.System and method for a media experience social interface
DE212014000045U1 (en)2013-02-072015-09-24Apple Inc. Voice trigger for a digital assistant
US10652394B2 (en)2013-03-142020-05-12Apple Inc.System and method for processing voicemail
US9368114B2 (en)2013-03-142016-06-14Apple Inc.Context-sensitive handling of interruptions
AU2014233517B2 (en)2013-03-152017-05-25Apple Inc.Training an at least partial voice command system
WO2014144579A1 (en)2013-03-152014-09-18Apple Inc.System and method for updating an adaptive speech recognition model
US9361371B2 (en)2013-04-162016-06-07Sonos, Inc.Playlist update in a media playback system
US9501533B2 (en)2013-04-162016-11-22Sonos, Inc.Private queue for a media playback system
US9247363B2 (en)2013-04-162016-01-26Sonos, Inc.Playback queue transfer in a media playback system
US9798510B2 (en)2013-05-292017-10-24Sonos, Inc.Connected state indicator
US9703521B2 (en)2013-05-292017-07-11Sonos, Inc.Moving a playback queue to a new zone
US9495076B2 (en)2013-05-292016-11-15Sonos, Inc.Playlist modification
US9735978B2 (en)2013-05-292017-08-15Sonos, Inc.Playback queue control via a playlist on a mobile device
US10715973B2 (en)2013-05-292020-07-14Sonos, Inc.Playback queue control transition
US9684484B2 (en)2013-05-292017-06-20Sonos, Inc.Playback zone silent connect
US9953179B2 (en)2013-05-292018-04-24Sonos, Inc.Private queue indicator
WO2014197334A2 (en)2013-06-072014-12-11Apple Inc.System and method for user-specified pronunciation of words for speech synthesis and recognition
US9582608B2 (en)2013-06-072017-02-28Apple Inc.Unified ranking with entropy-weighted information for phrase-based semantic auto-completion
WO2014197336A1 (en)2013-06-072014-12-11Apple Inc.System and method for detecting errors in interactions with a voice-based digital assistant
WO2014197335A1 (en)2013-06-082014-12-11Apple Inc.Interpreting and acting upon commands that involve sharing information with remote devices
DE112014002747T5 (en)2013-06-092016-03-03Apple Inc. Apparatus, method and graphical user interface for enabling conversation persistence over two or more instances of a digital assistant
US10176167B2 (en)2013-06-092019-01-08Apple Inc.System and method for inferring user intent from speech inputs
AU2014278595B2 (en)2013-06-132017-04-06Apple Inc.System and method for emergency calls initiated by voice command
US9232277B2 (en)2013-07-172016-01-05Sonos, Inc.Associating playback devices with playback queues
DE112014003653B4 (en)2013-08-062024-04-18Apple Inc. Automatically activate intelligent responses based on activities from remote devices
US9411942B2 (en)*2013-08-302016-08-09D&M Holdings, Inc.Network device, system and method for rendering an interactive multimedia playlist
US10028028B2 (en)2013-09-302018-07-17Sonos, Inc.Accessing last-browsed information in a media playback system
KR101766696B1 (en)*2013-10-252017-08-09후아웨이 테크놀러지 컴퍼니 리미티드Associating representations in adaptive streaming
US20150220498A1 (en)2014-02-052015-08-06Sonos, Inc.Remote Creation of a Playback Queue for a Future Event
US9679054B2 (en)2014-03-052017-06-13Sonos, Inc.Webpage media playback
US10587693B2 (en)2014-04-012020-03-10Sonos, Inc.Mirrored queues
US9705950B2 (en)2014-04-032017-07-11Sonos, Inc.Methods and systems for transmitting playlists
US20150324552A1 (en)2014-05-122015-11-12Sonos, Inc.Share Restriction for Media Items
US9319346B2 (en)*2014-05-132016-04-19Opera Software AsaWeb access performance enhancement
US9620105B2 (en)2014-05-152017-04-11Apple Inc.Analyzing audio input for efficient speech and music recognition
US10592095B2 (en)2014-05-232020-03-17Apple Inc.Instantaneous speaking of content on touch devices
US9502031B2 (en)2014-05-272016-11-22Apple Inc.Method for supporting dynamic grammars in WFST-based ASR
US9734193B2 (en)2014-05-302017-08-15Apple Inc.Determining domain salience ranking from ambiguous words in natural speech
US9785630B2 (en)2014-05-302017-10-10Apple Inc.Text prediction using combined word N-gram and unigram language models
US9633004B2 (en)2014-05-302017-04-25Apple Inc.Better resolution when referencing to concepts
US10078631B2 (en)2014-05-302018-09-18Apple Inc.Entropy-guided text prediction using combined word and character n-gram language models
CN110797019B (en)2014-05-302023-08-29苹果公司Multi-command single speech input method
US9715875B2 (en)2014-05-302017-07-25Apple Inc.Reducing the need for manual start/end-pointing and trigger phrases
US9430463B2 (en)2014-05-302016-08-30Apple Inc.Exemplar-based natural language processing
US9760559B2 (en)2014-05-302017-09-12Apple Inc.Predictive text input
US10289433B2 (en)2014-05-302019-05-14Apple Inc.Domain specific language for encoding assistant dialog
US10170123B2 (en)2014-05-302019-01-01Apple Inc.Intelligent assistant for home automation
US9842101B2 (en)2014-05-302017-12-12Apple Inc.Predictive conversion of language input
US20150355818A1 (en)2014-06-042015-12-10Sonos, Inc.Continuous Playback Queue
US9720642B2 (en)2014-06-042017-08-01Sonos, Inc.Prioritizing media content requests
US9729599B2 (en)2014-06-042017-08-08Sonos, Inc.Cloud queue access control
US20150356084A1 (en)2014-06-052015-12-10Sonos, Inc.Social Queue
US9672213B2 (en)2014-06-102017-06-06Sonos, Inc.Providing media items from playback history
US10659851B2 (en)2014-06-302020-05-19Apple Inc.Real-time digital assistant knowledge updates
US9338493B2 (en)2014-06-302016-05-10Apple Inc.Intelligent automated assistant for TV user interactions
US10498833B2 (en)2014-07-142019-12-03Sonos, Inc.Managing application access of a media playback system
US10462505B2 (en)2014-07-142019-10-29Sonos, Inc.Policies for media playback
US9460755B2 (en)2014-07-142016-10-04Sonos, Inc.Queue identification
US9467737B2 (en)2014-07-142016-10-11Sonos, Inc.Zone group control
US9485545B2 (en)2014-07-142016-11-01Sonos, Inc.Inconsistent queues
US9874997B2 (en)2014-08-082018-01-23Sonos, Inc.Social playback queues
US10446141B2 (en)2014-08-282019-10-15Apple Inc.Automatic speech recognition based on user feedback
US9818400B2 (en)2014-09-112017-11-14Apple Inc.Method and apparatus for discovering trending terms in speech requests
US9742839B2 (en)2014-09-122017-08-22Sonos, Inc.Cloud queue item removal
US10789041B2 (en)2014-09-122020-09-29Apple Inc.Dynamic thresholds for always listening speech trigger
US9723038B2 (en)2014-09-242017-08-01Sonos, Inc.Social media connection recommendations based on playback information
US9690540B2 (en)2014-09-242017-06-27Sonos, Inc.Social media queue
US9667679B2 (en)2014-09-242017-05-30Sonos, Inc.Indicating an association between a social-media account and a media playback system
WO2016049342A1 (en)2014-09-242016-03-31Sonos, Inc.Social media connection recommendations based on playback information
US9959087B2 (en)2014-09-242018-05-01Sonos, Inc.Media item context from social media
US10645130B2 (en)2014-09-242020-05-05Sonos, Inc.Playback updates
US9860286B2 (en)2014-09-242018-01-02Sonos, Inc.Associating a captured image with a media item
US10127911B2 (en)2014-09-302018-11-13Apple Inc.Speaker identification and unsupervised speaker adaptation techniques
US10074360B2 (en)2014-09-302018-09-11Apple Inc.Providing an indication of the suitability of speech recognition
US9646609B2 (en)2014-09-302017-05-09Apple Inc.Caching apparatus for serving phonetic pronunciations
US9886432B2 (en)2014-09-302018-02-06Apple Inc.Parsimonious handling of word inflection via categorical stem + suffix N-gram language models
US9668121B2 (en)2014-09-302017-05-30Apple Inc.Social reminders
US9876780B2 (en)2014-11-212018-01-23Sonos, Inc.Sharing access to a media service
US10552013B2 (en)2014-12-022020-02-04Apple Inc.Data detection
US9711141B2 (en)2014-12-092017-07-18Apple Inc.Disambiguating heteronyms in speech synthesis
US9865280B2 (en)2015-03-062018-01-09Apple Inc.Structured dictation using intelligent automated assistants
US9886953B2 (en)2015-03-082018-02-06Apple Inc.Virtual assistant activation
US9721566B2 (en)2015-03-082017-08-01Apple Inc.Competing devices responding to voice triggers
US10567477B2 (en)2015-03-082020-02-18Apple Inc.Virtual assistant continuity
US9899019B2 (en)2015-03-182018-02-20Apple Inc.Systems and methods for structured stem and suffix language models
US9842105B2 (en)2015-04-162017-12-12Apple Inc.Parsimonious continuous-space phrase representations for natural language processing
WO2016191623A1 (en)*2015-05-262016-12-01iDevices, LLCSystems and methods for server failover and load balancing
US10083688B2 (en)2015-05-272018-09-25Apple Inc.Device voice control for selecting a displayed affordance
US10127220B2 (en)2015-06-042018-11-13Apple Inc.Language identification from short strings
US10101822B2 (en)2015-06-052018-10-16Apple Inc.Language input correction
US9578173B2 (en)2015-06-052017-02-21Apple Inc.Virtual assistant aided communication with 3rd party service in a communication session
US10255907B2 (en)2015-06-072019-04-09Apple Inc.Automatic accent detection using acoustic models
US11025565B2 (en)2015-06-072021-06-01Apple Inc.Personalized prediction of responses for instant messaging
US10186254B2 (en)2015-06-072019-01-22Apple Inc.Context-based endpoint detection
US10747498B2 (en)2015-09-082020-08-18Apple Inc.Zero latency digital assistant
US10671428B2 (en)2015-09-082020-06-02Apple Inc.Distributed personal assistant
US9697820B2 (en)2015-09-242017-07-04Apple Inc.Unit-selection text-to-speech synthesis using concatenation-sensitive neural networks
US10366158B2 (en)2015-09-292019-07-30Apple Inc.Efficient word encoding for recurrent neural network language models
US11010550B2 (en)2015-09-292021-05-18Apple Inc.Unified language modeling framework for word prediction, auto-completion and auto-correction
US11587559B2 (en)2015-09-302023-02-21Apple Inc.Intelligent device identification
US10691473B2 (en)2015-11-062020-06-23Apple Inc.Intelligent automated assistant in a messaging environment
US10049668B2 (en)2015-12-022018-08-14Apple Inc.Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10223066B2 (en)2015-12-232019-03-05Apple Inc.Proactive assistance based on dialog communication between devices
US10446143B2 (en)2016-03-142019-10-15Apple Inc.Identification of voice inputs providing credentials
US9934775B2 (en)2016-05-262018-04-03Apple Inc.Unit-selection text-to-speech synthesis based on predicted concatenation parameters
US9972304B2 (en)2016-06-032018-05-15Apple Inc.Privacy preserving distributed evaluation framework for embedded personalized systems
US10249300B2 (en)2016-06-062019-04-02Apple Inc.Intelligent list reading
US10049663B2 (en)2016-06-082018-08-14Apple, Inc.Intelligent automated assistant for media exploration
DK179309B1 (en)2016-06-092018-04-23Apple IncIntelligent automated assistant in a home environment
US10509862B2 (en)2016-06-102019-12-17Apple Inc.Dynamic phrase expansion of language input
US10586535B2 (en)2016-06-102020-03-10Apple Inc.Intelligent digital assistant in a multi-tasking environment
US10192552B2 (en)2016-06-102019-01-29Apple Inc.Digital assistant providing whispered speech
US10067938B2 (en)2016-06-102018-09-04Apple Inc.Multilingual word prediction
US10490187B2 (en)2016-06-102019-11-26Apple Inc.Digital assistant providing automated status report
DK179415B1 (en)2016-06-112018-06-14Apple IncIntelligent device arbitration and control
DK179049B1 (en)2016-06-112017-09-18Apple IncData driven natural language event detection and classification
DK179343B1 (en)2016-06-112018-05-14Apple IncIntelligent task discovery
DK201670540A1 (en)2016-06-112018-01-08Apple IncApplication integration with a digital assistant
US10043516B2 (en)2016-09-232018-08-07Apple Inc.Intelligent automated assistant
US10593346B2 (en)2016-12-222020-03-17Apple Inc.Rank-reduced token representation for automatic speech recognition
DK201770439A1 (en)2017-05-112018-12-13Apple Inc.Offline personal assistant
DK179496B1 (en)2017-05-122019-01-15Apple Inc. USER-SPECIFIC Acoustic Models
DK179745B1 (en)2017-05-122019-05-01Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
DK201770431A1 (en)2017-05-152018-12-20Apple Inc.Optimizing dialogue policy decisions for digital assistants using implicit feedback
DK201770432A1 (en)2017-05-152018-12-21Apple Inc.Hierarchical belief states for digital assistants
DK179549B1 (en)2017-05-162019-02-12Apple Inc.Far-field extension for digital assistant services
US10783929B2 (en)2018-03-302020-09-22Apple Inc.Managing playback groups
US11297369B2 (en)2018-03-302022-04-05Apple Inc.Remotely controlling playback devices
US10993274B2 (en)2018-03-302021-04-27Apple Inc.Pairing devices by proxy
US10614857B2 (en)2018-07-022020-04-07Apple Inc.Calibrating media playback channels for synchronized presentation
US11184666B2 (en)2019-04-012021-11-23Sonos, Inc.Access control techniques for media playback systems
US11636855B2 (en)2019-11-112023-04-25Sonos, Inc.Media content based on operational data
CN116368483A (en)*2020-09-012023-06-30西格玛计算机有限公司 Generate data warehouse index

Citations (90)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US5717914A (en)*1995-09-151998-02-10Infonautics CorporationMethod for categorizing documents into subjects using relevance normalization for documents retrieved from an information retrieval system in response to a query
US5806065A (en)*1996-05-061998-09-08Microsoft CorporationData system with distributed tree indexes and method for maintaining the indexes
US5813014A (en)*1996-07-101998-09-22Survivors Of The Shoah Visual History FoundationMethod and apparatus for management of multimedia assets
US5832499A (en)*1996-07-101998-11-03Survivors Of The Shoah Visual History FoundationDigital library system
JPH1132070A (en)1997-05-021999-02-02Sony Electron IncMulti-media information system and multi-media information reproducing method
US5920856A (en)1997-06-091999-07-06Xerox CorporationSystem for selecting multimedia databases over networks
US5983218A (en)1997-06-301999-11-09Xerox CorporationMultimedia database for use over networks
US6016520A (en)*1995-07-142000-01-18Microsoft CorporationMethod of viewing at a client viewing station a multiple media title stored at a server and containing a plurality of topics utilizing anticipatory caching
JP2000348052A (en)1999-06-072000-12-15Nec CorpSystem, device and method for providing site map, and recording medium
US6243713B1 (en)1998-08-242001-06-05Excalibur Technologies Corp.Multimedia document retrieval by application of multimedia queries to a unified index of multimedia data for a plurality of multimedia data types
US20010003828A1 (en)*1997-10-282001-06-14Joe PetersonClient-side system for scheduling delivery of web content and locally managing the web content
US20010042107A1 (en)2000-01-062001-11-15Palm Stephen R.Networked audio player transport protocol and architecture
JP2001318949A (en)2000-05-092001-11-16Onkyo Corp Content delivery system
US6374260B1 (en)*1996-05-242002-04-16Magnifi, Inc.Method and apparatus for uploading, indexing, analyzing, and searching media content
US20020062252A1 (en)2000-01-072002-05-23Van Zoest Alexander T.System and method for providing access to electronic works
US6405239B1 (en)*1996-12-092002-06-11Scientific-Atlanta, Inc.Using a hierarchical file system for indexing data broadcast to a client from a network of servers
US20020082901A1 (en)*2000-05-032002-06-27Dunning Ted E.Relationship discovery engine
US20020101444A1 (en)*2001-01-312002-08-01Novak Michael J.Methods and systems for creating skins
US20020111956A1 (en)*2000-09-182002-08-15Boon-Lock YeoMethod and apparatus for self-management of content across multiple storage systems
US20020134220A1 (en)*2001-03-212002-09-26Hiroaki YamanePlay list generation device, audio information provision device, audio information provision system, method, program and recording medium
US20020147683A1 (en)*2001-04-062002-10-10Anthony CapobiancoMethod for purchasing web based digital media
US20020183042A1 (en)*2001-05-292002-12-05Kevin ThorntonSystem and method for sampling audio recordings on a wireless communication device
US20020188735A1 (en)*2001-06-062002-12-12Needham Bradford H.Partially replicated, locally searched peer to peer file sharing system
US6498897B1 (en)*1998-05-272002-12-24Kasenna, Inc.Media server system and method having improved asset types for playback of digital media
US6505160B1 (en)*1995-07-272003-01-07Digimarc CorporationConnected audio and other media objects
US20030018709A1 (en)*2001-07-202003-01-23Audible MagicPlaylist generation method and apparatus
US20030023505A1 (en)*2001-02-282003-01-30Eglen Jan AlanDigital online exchange
US6515656B1 (en)*1999-04-142003-02-04Verizon Laboratories Inc.Synchronized spatial-temporal browsing of images for assessment of content
EP1283487A2 (en)*2001-08-062003-02-12Pioneer CorporationManagement server device and terminal device for a contents providing system
US6523022B1 (en)1997-06-092003-02-18Allen HobbsMethod and apparatus for selectively augmenting retrieved information from a network resource
JP2003085893A (en)2001-09-072003-03-20Sony CorpDevice and method for processing information, and program therefor
US20030061273A1 (en)*2001-09-242003-03-27Intel CorporationExtended content storage method and apparatus
US6587127B1 (en)*1997-11-252003-07-01Motorola, Inc.Content player method and server with user profile
US20030140313A1 (en)*1999-04-262003-07-24Smith Kim C.Method of creating default lists of content of probable interest
US20030159566A1 (en)*2002-02-272003-08-28Sater Neil D.System and method that facilitates customizing media
US20030174819A1 (en)*2002-03-182003-09-18Chien-Chung SuMethod for providing information service by using a network-connection device and architecture thereof
US6653545B2 (en)*2002-03-012003-11-25Ejamming, Inc.Method and apparatus for remote real time collaborative music performance
US6662231B1 (en)*2000-06-302003-12-09Sei Information TechnologyMethod and system for subscriber-based audio service over a communication network
US20040002943A1 (en)*2002-06-282004-01-01Merrill John Wickens LambSystems and methods for application delivery and configuration management of mobile devices
US20040015519A1 (en)*2001-10-152004-01-22Yukitoshi MaedaContent delivery server and content delivery system having the same
US20040019658A1 (en)*2001-03-262004-01-29Microsoft CorporationMetadata retrieval protocols and namespace identifiers
US20040024580A1 (en)*2002-02-252004-02-05Oak Technology, Inc.Server in a media system
US6697800B1 (en)*2000-05-192004-02-24Roxio, Inc.System and method for determining affinity using objective and subjective data
US20040060070A1 (en)*2002-09-172004-03-25Noriyasu MizushimaSystem for distributing videos synchronized with music, and method for distributing videos synchronized with music
US20040078357A1 (en)2002-10-162004-04-22Microsoft CorporationOptimizing media player memory during rendering
US6728729B1 (en)2003-04-252004-04-27Apple Computer, Inc.Accessing media across networks
US6735628B2 (en)*2000-01-242004-05-11Friskit, Inc.Media search and continuous playback of multiple media resources distributed on a network
US20040091235A1 (en)*2002-11-072004-05-13Srinivas GuttaTracking of partially viewed shows so that they can be marked for deletion when a personal video recorder runs out of space
US6741996B1 (en)*2001-04-182004-05-25Microsoft CorporationManaging user clips
US6741980B1 (en)*1999-03-232004-05-25Microstrategy Inc.System and method for automatic, real-time delivery of personalized informational and transactional data to users via content delivery device
US20040128308A1 (en)*2002-12-312004-07-01Pere ObradorScalably presenting a collection of media objects
US20040148362A1 (en)*2001-11-022004-07-29Lee FriedmanSystems and methods for managing and aggregating media formats
US6775687B1 (en)*1999-10-122004-08-10International Business Machines CorporationExchanging supplemental information fields between a client and a server
US20040192358A1 (en)*2003-03-242004-09-30Inventec Appliances Corp.Method of instantly receiving and playing back audio data from wireless network by wireless terminal
US20040204124A1 (en)*2002-05-082004-10-14Campbell Lowell LeteMethod of minimizing the quantity of information stored in a wireless device
US20040214551A1 (en)*2000-05-092004-10-28Doo-Yong KimDigital mobile telephone and methods for executing and providing multimerdia data for the digital mobile telephone
US20040220791A1 (en)*2000-01-032004-11-04Interactual Technologies, Inc. A California CorporPersonalization services for entities from multiple sources
US20040220926A1 (en)*2000-01-032004-11-04Interactual Technologies, Inc., A California Cpr[PPersonalization services for entities from multiple sources
US20040243700A1 (en)*2003-05-292004-12-02Weast John C.Visibility of media contents of UPnP media servers and initiating rendering via file system user interface
US6829368B2 (en)*2000-01-262004-12-07Digimarc CorporationEstablishing and interacting with on-line media collections using identifiers in media signals
US6834276B1 (en)*1999-02-252004-12-21Integrated Data Control, Inc.Database system and method for data acquisition and perusal
US20050010553A1 (en)*2000-10-302005-01-13Microsoft CorporationSemi-automatic annotation of multimedia objects
US6865600B1 (en)*2000-05-192005-03-08Napster, Inc.System and method for selecting internet media channels
US6941324B2 (en)*2002-03-212005-09-06Microsoft CorporationMethods and systems for processing playlists
US6947182B1 (en)*1999-07-262005-09-20Canon Kabushiki KaishaNetwork system and control method of the same
US6947959B1 (en)*1992-10-012005-09-20Quark, Inc.Digital media asset management system and process
US6976028B2 (en)*2001-06-152005-12-13Sony CorporationMedia content creating and publishing system and process
US20060010075A1 (en)*2004-07-082006-01-12Dean WolfTechnique for facilitating resale of digital content over a computer network
US6987221B2 (en)*2002-05-302006-01-17Microsoft CorporationAuto playlist generation with multiple seed songs
US20060031257A1 (en)*1999-10-052006-02-09Lipscomb Kenneth OSystem and method for distributing media assets to user devices and managing user rights of the media assets
US20060059231A1 (en)*2002-09-182006-03-16Masahiro TakatoriInformation acquiring device and information providing device
US7024485B2 (en)*2000-05-032006-04-04Yahoo! Inc.System for controlling and enforcing playback restrictions for a media file by splitting the media file into usable and unusable portions for playback
US7065342B1 (en)*1999-11-232006-06-20Gofigure, L.L.C.System and mobile cellular telephone device for playing recorded music
US20060161635A1 (en)*2000-09-072006-07-20Sonic SolutionsMethods and system for use in network management of content
US7099685B2 (en)*2000-04-262006-08-29Samsung Electronics Co., Ltd.Apparatus and method for providing multimedia service in a mobile terminal
US7117453B2 (en)*2003-01-212006-10-03Microsoft CorporationMedia frame object visualization system
US7184976B1 (en)*1999-09-092007-02-27Canon Kabushiki KaishaApparatus which can be connected to network, and charging management system
US7213228B2 (en)*2003-03-172007-05-01Macrovision CorporationMethods and apparatus for implementing a remote application over a network
US20070234196A1 (en)*1999-04-142007-10-04Verizon Corporate Services Group Inc.Methods and systems for selection of multimedia presentations
US7281034B1 (en)*2000-01-242007-10-09Friskit, Inc.System and method for media playback over a network using links that contain control signals and commands
US7295995B1 (en)*2001-10-302007-11-13A9.Com, Inc.Computer processes and systems for adaptively controlling the display of items
US7337174B1 (en)*1999-07-262008-02-26Microsoft CorporationLogic table abstraction layer for accessing configuration information
US7403968B2 (en)*1999-09-222008-07-22Lg Electronics, Inc.Method of generating user profile based on user preference and multimedia data browsing system using the same
US7509667B1 (en)*2002-08-152009-03-24Sprint Communications Company L.P.Broadband content jukebox with profile-based caching
US7613993B1 (en)*2000-01-212009-11-03International Business Machines CorporationPrerequisite checking in a system for creating compilations of content
US7689715B1 (en)*2002-12-202010-03-30Symantec Operating CorporationMethod and system for implementing a global name space service
US7720686B2 (en)*2001-12-042010-05-18Yahoo! Inc.Method and system for providing listener-requested music over a network
US7895243B1 (en)*2000-01-212011-02-22International Business Machines CorporationMethod and system for moving content in a content object stored in a data repository
US8589777B1 (en)*2000-01-212013-11-19International Business Machines CorporationMethod and system for calculating cost of a compilation of content
US8755763B2 (en)*1998-01-222014-06-17Black Hills MediaMethod and device for an internet radio capable of obtaining playlist content from a content server

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
JP3885236B2 (en)*1995-10-112007-02-21ソニー株式会社 Portable communication terminal
JP3873362B2 (en)*1997-04-042007-01-24カシオ計算機株式会社 Network system and recording medium
JPH11345201A (en)*1998-05-291999-12-14Ntt Data CorpInformation providing system and information providing network system
JP2002055992A (en)*2000-08-092002-02-20Nippon Telegr & Teleph Corp <Ntt> Archive system and search method thereof
US20020069418A1 (en)*2000-12-062002-06-06Ashwin PhilipsNetwork-enabled audio/video player
JP2002244968A (en)*2001-02-192002-08-30Matsushita Electric Ind Co Ltd Data display system, data display method, and recording medium
US7363384B2 (en)*2001-07-112008-04-22Sony Computer Entertainment America Inc.Selection of content in response to communication environment
JP2003085086A (en)*2001-09-122003-03-20Sony CorpService provision system and method

Patent Citations (98)

* Cited by examiner, † Cited by third party
Publication numberPriority datePublication dateAssigneeTitle
US6947959B1 (en)*1992-10-012005-09-20Quark, Inc.Digital media asset management system and process
US6016520A (en)*1995-07-142000-01-18Microsoft CorporationMethod of viewing at a client viewing station a multiple media title stored at a server and containing a plurality of topics utilizing anticipatory caching
US6505160B1 (en)*1995-07-272003-01-07Digimarc CorporationConnected audio and other media objects
US5717914A (en)*1995-09-151998-02-10Infonautics CorporationMethod for categorizing documents into subjects using relevance normalization for documents retrieved from an information retrieval system in response to a query
US5806065A (en)*1996-05-061998-09-08Microsoft CorporationData system with distributed tree indexes and method for maintaining the indexes
US6374260B1 (en)*1996-05-242002-04-16Magnifi, Inc.Method and apparatus for uploading, indexing, analyzing, and searching media content
US6092080A (en)*1996-07-082000-07-18Survivors Of The Shoah Visual History FoundationDigital library system
US5832499A (en)*1996-07-101998-11-03Survivors Of The Shoah Visual History FoundationDigital library system
US5813014A (en)*1996-07-101998-09-22Survivors Of The Shoah Visual History FoundationMethod and apparatus for management of multimedia assets
US6405239B1 (en)*1996-12-092002-06-11Scientific-Atlanta, Inc.Using a hierarchical file system for indexing data broadcast to a client from a network of servers
JPH1132070A (en)1997-05-021999-02-02Sony Electron IncMulti-media information system and multi-media information reproducing method
US5920856A (en)1997-06-091999-07-06Xerox CorporationSystem for selecting multimedia databases over networks
US6523022B1 (en)1997-06-092003-02-18Allen HobbsMethod and apparatus for selectively augmenting retrieved information from a network resource
US5983218A (en)1997-06-301999-11-09Xerox CorporationMultimedia database for use over networks
US20010003828A1 (en)*1997-10-282001-06-14Joe PetersonClient-side system for scheduling delivery of web content and locally managing the web content
US6587127B1 (en)*1997-11-252003-07-01Motorola, Inc.Content player method and server with user profile
US8755763B2 (en)*1998-01-222014-06-17Black Hills MediaMethod and device for an internet radio capable of obtaining playlist content from a content server
US6498897B1 (en)*1998-05-272002-12-24Kasenna, Inc.Media server system and method having improved asset types for playback of digital media
US6243713B1 (en)1998-08-242001-06-05Excalibur Technologies Corp.Multimedia document retrieval by application of multimedia queries to a unified index of multimedia data for a plurality of multimedia data types
US6834276B1 (en)*1999-02-252004-12-21Integrated Data Control, Inc.Database system and method for data acquisition and perusal
US6741980B1 (en)*1999-03-232004-05-25Microstrategy Inc.System and method for automatic, real-time delivery of personalized informational and transactional data to users via content delivery device
US6515656B1 (en)*1999-04-142003-02-04Verizon Laboratories Inc.Synchronized spatial-temporal browsing of images for assessment of content
US20070234196A1 (en)*1999-04-142007-10-04Verizon Corporate Services Group Inc.Methods and systems for selection of multimedia presentations
US20030140313A1 (en)*1999-04-262003-07-24Smith Kim C.Method of creating default lists of content of probable interest
JP2000348052A (en)1999-06-072000-12-15Nec CorpSystem, device and method for providing site map, and recording medium
US7337174B1 (en)*1999-07-262008-02-26Microsoft CorporationLogic table abstraction layer for accessing configuration information
US6947182B1 (en)*1999-07-262005-09-20Canon Kabushiki KaishaNetwork system and control method of the same
US7184976B1 (en)*1999-09-092007-02-27Canon Kabushiki KaishaApparatus which can be connected to network, and charging management system
US7403968B2 (en)*1999-09-222008-07-22Lg Electronics, Inc.Method of generating user profile based on user preference and multimedia data browsing system using the same
US20060031257A1 (en)*1999-10-052006-02-09Lipscomb Kenneth OSystem and method for distributing media assets to user devices and managing user rights of the media assets
US6775687B1 (en)*1999-10-122004-08-10International Business Machines CorporationExchanging supplemental information fields between a client and a server
US7065342B1 (en)*1999-11-232006-06-20Gofigure, L.L.C.System and mobile cellular telephone device for playing recorded music
US20040220791A1 (en)*2000-01-032004-11-04Interactual Technologies, Inc. A California CorporPersonalization services for entities from multiple sources
US20040220926A1 (en)*2000-01-032004-11-04Interactual Technologies, Inc., A California Cpr[PPersonalization services for entities from multiple sources
US20010042107A1 (en)2000-01-062001-11-15Palm Stephen R.Networked audio player transport protocol and architecture
US20020062252A1 (en)2000-01-072002-05-23Van Zoest Alexander T.System and method for providing access to electronic works
US7613993B1 (en)*2000-01-212009-11-03International Business Machines CorporationPrerequisite checking in a system for creating compilations of content
US8589777B1 (en)*2000-01-212013-11-19International Business Machines CorporationMethod and system for calculating cost of a compilation of content
US7895243B1 (en)*2000-01-212011-02-22International Business Machines CorporationMethod and system for moving content in a content object stored in a data repository
US6735628B2 (en)*2000-01-242004-05-11Friskit, Inc.Media search and continuous playback of multiple media resources distributed on a network
US7281034B1 (en)*2000-01-242007-10-09Friskit, Inc.System and method for media playback over a network using links that contain control signals and commands
US6829368B2 (en)*2000-01-262004-12-07Digimarc CorporationEstablishing and interacting with on-line media collections using identifiers in media signals
US7099685B2 (en)*2000-04-262006-08-29Samsung Electronics Co., Ltd.Apparatus and method for providing multimedia service in a mobile terminal
US7024485B2 (en)*2000-05-032006-04-04Yahoo! Inc.System for controlling and enforcing playback restrictions for a media file by splitting the media file into usable and unusable portions for playback
US20020082901A1 (en)*2000-05-032002-06-27Dunning Ted E.Relationship discovery engine
JP2001318949A (en)2000-05-092001-11-16Onkyo Corp Content delivery system
US20040214551A1 (en)*2000-05-092004-10-28Doo-Yong KimDigital mobile telephone and methods for executing and providing multimerdia data for the digital mobile telephone
US6697800B1 (en)*2000-05-192004-02-24Roxio, Inc.System and method for determining affinity using objective and subjective data
US6865600B1 (en)*2000-05-192005-03-08Napster, Inc.System and method for selecting internet media channels
US6662231B1 (en)*2000-06-302003-12-09Sei Information TechnologyMethod and system for subscriber-based audio service over a communication network
US20060161635A1 (en)*2000-09-072006-07-20Sonic SolutionsMethods and system for use in network management of content
US7689510B2 (en)*2000-09-072010-03-30Sonic SolutionsMethods and system for use in network management of content
US20020111956A1 (en)*2000-09-182002-08-15Boon-Lock YeoMethod and apparatus for self-management of content across multiple storage systems
US20050010553A1 (en)*2000-10-302005-01-13Microsoft CorporationSemi-automatic annotation of multimedia objects
US20020101444A1 (en)*2001-01-312002-08-01Novak Michael J.Methods and systems for creating skins
US7073130B2 (en)*2001-01-312006-07-04Microsoft CorporationMethods and systems for creating skins
US7080030B2 (en)*2001-02-282006-07-18Digonex Technologies, Inc.Digital online exchange
US20030023505A1 (en)*2001-02-282003-01-30Eglen Jan AlanDigital online exchange
US20020134220A1 (en)*2001-03-212002-09-26Hiroaki YamanePlay list generation device, audio information provision device, audio information provision system, method, program and recording medium
US20040019658A1 (en)*2001-03-262004-01-29Microsoft CorporationMetadata retrieval protocols and namespace identifiers
US20020147683A1 (en)*2001-04-062002-10-10Anthony CapobiancoMethod for purchasing web based digital media
US6741996B1 (en)*2001-04-182004-05-25Microsoft CorporationManaging user clips
US20020183042A1 (en)*2001-05-292002-12-05Kevin ThorntonSystem and method for sampling audio recordings on a wireless communication device
US20020188735A1 (en)*2001-06-062002-12-12Needham Bradford H.Partially replicated, locally searched peer to peer file sharing system
US6976028B2 (en)*2001-06-152005-12-13Sony CorporationMedia content creating and publishing system and process
US20030018709A1 (en)*2001-07-202003-01-23Audible MagicPlaylist generation method and apparatus
EP1283487A3 (en)2001-08-062004-05-12Pioneer CorporationManagement server device and terminal device for a contents providing system
EP1283487A2 (en)*2001-08-062003-02-12Pioneer CorporationManagement server device and terminal device for a contents providing system
JP2003085893A (en)2001-09-072003-03-20Sony CorpDevice and method for processing information, and program therefor
US20030061273A1 (en)*2001-09-242003-03-27Intel CorporationExtended content storage method and apparatus
US20040015519A1 (en)*2001-10-152004-01-22Yukitoshi MaedaContent delivery server and content delivery system having the same
US7295995B1 (en)*2001-10-302007-11-13A9.Com, Inc.Computer processes and systems for adaptively controlling the display of items
US20040148362A1 (en)*2001-11-022004-07-29Lee FriedmanSystems and methods for managing and aggregating media formats
US7720686B2 (en)*2001-12-042010-05-18Yahoo! Inc.Method and system for providing listener-requested music over a network
US20040024580A1 (en)*2002-02-252004-02-05Oak Technology, Inc.Server in a media system
US20030159566A1 (en)*2002-02-272003-08-28Sater Neil D.System and method that facilitates customizing media
US6653545B2 (en)*2002-03-012003-11-25Ejamming, Inc.Method and apparatus for remote real time collaborative music performance
US20030174819A1 (en)*2002-03-182003-09-18Chien-Chung SuMethod for providing information service by using a network-connection device and architecture thereof
US6941324B2 (en)*2002-03-212005-09-06Microsoft CorporationMethods and systems for processing playlists
US20040204124A1 (en)*2002-05-082004-10-14Campbell Lowell LeteMethod of minimizing the quantity of information stored in a wireless device
US6987221B2 (en)*2002-05-302006-01-17Microsoft CorporationAuto playlist generation with multiple seed songs
US20040002943A1 (en)*2002-06-282004-01-01Merrill John Wickens LambSystems and methods for application delivery and configuration management of mobile devices
US7509667B1 (en)*2002-08-152009-03-24Sprint Communications Company L.P.Broadband content jukebox with profile-based caching
US20040060070A1 (en)*2002-09-172004-03-25Noriyasu MizushimaSystem for distributing videos synchronized with music, and method for distributing videos synchronized with music
US20060059231A1 (en)*2002-09-182006-03-16Masahiro TakatoriInformation acquiring device and information providing device
US20040078357A1 (en)2002-10-162004-04-22Microsoft CorporationOptimizing media player memory during rendering
US7054888B2 (en)*2002-10-162006-05-30Microsoft CorporationOptimizing media player memory during rendering
US20040091235A1 (en)*2002-11-072004-05-13Srinivas GuttaTracking of partially viewed shows so that they can be marked for deletion when a personal video recorder runs out of space
US7689715B1 (en)*2002-12-202010-03-30Symantec Operating CorporationMethod and system for implementing a global name space service
US20040128308A1 (en)*2002-12-312004-07-01Pere ObradorScalably presenting a collection of media objects
US7117453B2 (en)*2003-01-212006-10-03Microsoft CorporationMedia frame object visualization system
US7213228B2 (en)*2003-03-172007-05-01Macrovision CorporationMethods and apparatus for implementing a remote application over a network
US20040192358A1 (en)*2003-03-242004-09-30Inventec Appliances Corp.Method of instantly receiving and playing back audio data from wireless network by wireless terminal
USRE45793E1 (en)*2003-04-252015-11-03Apple Inc.Accessing digital media
US7698297B2 (en)2003-04-252010-04-13Apple Inc.Accessing digital media
US6728729B1 (en)2003-04-252004-04-27Apple Computer, Inc.Accessing media across networks
US20040243700A1 (en)*2003-05-292004-12-02Weast John C.Visibility of media contents of UPnP media servers and initiating rendering via file system user interface
US20060010075A1 (en)*2004-07-082006-01-12Dean WolfTechnique for facilitating resale of digital content over a computer network

Non-Patent Citations (37)

* Cited by examiner, † Cited by third party
Title
"Apache: The Definitive Guide," Feb. 1999, O'Reilly & Associates.
"Apple Announces iTunes 2," Press Release, Apple Computer, Inc., Oct. 23, 2001, downloaded from: http://www.apple.com/pr/library/2001/oct/23itunes.html, on Jul. 10, 2002, 2 pages.
"Apple Introduces iTunes—World's Best and Easiest To Use Jukebox Software," Macworld Expo, San Francisco, Jan. 9, 2001, downloaded from http://www.apple.com/pr/library/2001/jan/09itunes.html, on Jul. 10, 2002, 2 pages.
"Digital Audio Access Protocol," Jun. 23, 2003, pp. 1-3, http://web.archive.org/web/20030623182924/http://daap.sourceforge.net/docs/index.html.
"iCommune 2.0a1," Product Information, 2003, 4 pages.
"iCommune—Share your music over a network," downloaded from http://www.icommune.sourceforge.net/ on Nov. 12, 2003, 1 page.
"iHam on iRye: 2.0—VersionTracker," downloaded from: http://www.versiontracker.com/dyn/moreinfo/macosx/13021 on Nov. 12, 2003, 3 pages.
"Review: SoundJam MP Plus 2.5.1," Daniel Chvatik, Oct. 2000, downloaded from: http://www.atpm.com/6.10/soundjam.shtml on Nov. 12, 2003, 8 pages.
"Slim Devices, Product Information: Overview," downloaded from http://www.slimdevice.com/pi_overview.html, 2004, 2 pages.
"SoundJam MP Plus Manual, version 2.0"—MP3 Player and Encoder for Macintosh by Jeffrey Robbin, Bill Kincaid and Dave Heller, manual by Tom Negrino, published by Casady & Greene, Inc., 2000.
"Squeezebox—The wireless MP3 player for your digital stereo," downloaded from http://www.slimdevice.com/downloads/squeezebox.pdf, 2003, 2 pages.
"WWDC 2002 Keynote," May 6, 2002, downloaded from: http://www.digitalmedievalist.com/it/archive/000028.html on Nov. 12, 2003, 3 pages.
"WWDC Keynote Coverage," MacCentral Staff, May 6, 2002, downloaded from: http://maccentral.macworld.com/news/2002/05/06/wwdckeynote on Nov. 12, 2003, 8 pages.
"WWDC Keynote Coverage," MacCentral Staff, May 6, 2002, downloaded from: https://www.macworld.com/article/1004797/wwdckeynote.html on Jun. 4, 2019, 8 pages.
Chvatik, Daniel, "Review: SoundJam MP Plus 2.5.1," Oct. 2000, downloaded from: http://www.atpm.com/6.10/soundjam.shtml on Jun. 4, 2019, 11 pages.
Debique et al., "ContentDirectory: 1 Service Template for Universal Plug and Play", Standardized Device Control Protocol Document of the UPNP Forum, Microsoft, Version 1.01 Jun. 25, 2002, pp. 1-89.
European Search Report for European Patent Application No. 07012976.2 dated Jan. 22, 2008.
Ikeda, Fuyuhiko, "Mac People", vol. 8, No. 20, ASCII Corporation, Japan, Oct. 15, 2002, pp. 48-51.
iTunes, Playlist Related Help Screens, iTunes v1.0, Apple Computer, Inc., Jan. 2001.
Notification of Reason for Rejection, Japanese Patent Office, Japanese Patent Application No. 2002-510066, dated Apr. 1, 2008 (with translation).
Notification of Reason for Rejection, Japanese Patent Office, Japanese Patent Application No. 2008-29463, dated Apr. 6, 2009 (with translation).
Notification of Reason for Rejection, Japanese Patent Office, Japanese Patent Application No. 2008-29463, dated Sep. 16, 2008 (with translation).
Notification of the Third Office Action for Chinese Patent Application No. 200480008880.1, mailed Mar. 13, 2009.
Office Action Chinese Patent Office Chinese, Patent Application No. 200480008880.1, dated Nov. 28, 2008 (with translation).
Office Action for Japanese Patent Application No. 2008/29463 dated Oct. 20, 2009.
Office Action from Chinese Patent Office for Chinese Patent Application No. 200480008880.1 dated Nov. 23, 2007.
Office Action, European Patent Office, Patent Application No. 04760262.8, dated Feb. 24, 2009.
Office Action, European Patent Office, Patent Application No. 04760262.8, dated May 5, 2006.
Office Action, European Patent Office, Patent Application No. 07012976.2, dated Feb. 24, 2009.
Partial European Search Report from European Patent Office for European Patent Application No. 07012976.2 dated Nov. 2, 2007.
Ritchie et al., "UPnP AV Architecture: 0.83", Design Document Microsoft, Jun. 12, 2002, pp. 1-22.
Searchware Solutions, "iHam on iRye 2.0 Documentation," http://www.swssoftware.com, 10 pages.
SoundJam MP Plus, Representative Screens, published by Casady & Greene, Inc., Salinas, CA, 2000.
Specification Sheet, iTunes 2, Apple Computer, Inc., Oct. 31, 2001.
Tunes 2, Playlist Related Help Screens, iTunes v2.0, Apple Computer, Inc., Oct. 23, 2001.
Tunes, Playlist Related Help Screens, iTunes v1.0, Apple Computer, Inc., Jan. 2001.
Written Opinion of the International Searching Authority dated Jan. 28, 2005 issued in International Application No. PCT/US2004/011621.

Also Published As

Publication numberPublication date
WO2004097683A2 (en)2004-11-11
US20040215611A1 (en)2004-10-28
EP1843260A3 (en)2008-02-20
US7698297B2 (en)2010-04-13
US6728729B1 (en)2004-04-27
WO2004097683A3 (en)2005-03-17
EP1843260A2 (en)2007-10-10
JP2008171442A (en)2008-07-24
JP4469398B2 (en)2010-05-26
CN1768338A (en)2006-05-03
CN100533435C (en)2009-08-26
USRE45793E1 (en)2015-11-03
JP4176801B2 (en)2008-11-05
JP5358463B2 (en)2013-12-04
EP1618501A2 (en)2006-01-25
JP2007525726A (en)2007-09-06
JP2010146584A (en)2010-07-01

Similar Documents

PublicationPublication DateTitle
USRE47934E1 (en)Accessing digital media
US7668901B2 (en)Methods and system using a local proxy server to process media data for local area users
US7530115B2 (en)Access to content addressable data over a network
US8595340B2 (en)Method and system for managing digital content, including streaming media
US7849207B2 (en)Method and system for managing digital content, including streaming media
US8909635B2 (en)Profiling content creation and retrieval in a content management system
US20070294290A1 (en)Fail over resource manager access in a content management system
US20090327222A1 (en)Dynamic selection of media for playback
JP2002501254A (en) Access to content addressable data over a network
WO2002057943A9 (en)Method and system for managing digital content, including streaming media
WO2003001817A2 (en)Method for distributing large files to multiple recipients
US20030195929A1 (en)Methods and system using secondary storage to store media data accessible for local area users
US20030182257A1 (en)Method and system for migrating data while maintaining hard links
US20030182288A1 (en)Method and system for migrating data while maintaining access to data with use of the same pathname
JP2003516586A (en) Content collection
JP2002537572A (en) A distributed production system for digitally encoding information.
US20060031224A1 (en)Method, system and computer program product for managing database records with attributes located in multiple databases
US20060143151A1 (en)Methods, systems and computer programs for facilitating access to an electronic datum
JP2003323434A (en) Video multimedia data association apparatus, method and program thereof

Legal Events

DateCodeTitleDescription
MAFPMaintenance fee payment

Free format text:PAYMENT OF MAINTENANCE FEE, 12TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1553); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

Year of fee payment:12


[8]ページ先頭

©2009-2025 Movatter.jp