US7860798B2 - Electronic delivery and management of digital media items - Google Patents

Electronic delivery and management of digital media items Download PDF

Info

Publication number
US7860798B2
US7860798B2 US11/336,268 US33626806A US7860798B2 US 7860798 B2 US7860798 B2 US 7860798B2 US 33626806 A US33626806 A US 33626806A US 7860798 B2 US7860798 B2 US 7860798B2
Authority
US
United States
Prior art keywords
digital media
user system
request
media items
user
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.)
Active, expires
Application number
US11/336,268
Other versions
US20070174888A1 (en
Inventor
Jon Rubinstein
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 Inc filed Critical Apple Inc
Priority to US11/336,268 priority Critical patent/US7860798B2/en
Assigned to APPLE COMPUTER, INC. reassignment APPLE COMPUTER, INC. ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: RUBINSTEIN, JON
Assigned to APPLE INC. reassignment APPLE INC. CHANGE OF NAME (SEE DOCUMENT FOR DETAILS). Assignors: APPLE COMPUTER, INC.
Publication of US20070174888A1 publication Critical patent/US20070174888A1/en
Application granted granted Critical
Publication of US7860798B2 publication Critical patent/US7860798B2/en
Active legal-status Critical Current
Adjusted expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17336Handling of requests in head-ends
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/239Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
    • H04N21/2393Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
    • H04N21/2396Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests characterized by admission policies
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26208Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26216Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists the scheduling operation being performed under constraints involving the channel capacity, e.g. network bandwidth
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/488Data services, e.g. news ticker
    • H04N21/4882Data services, e.g. news ticker for displaying messages, e.g. warnings, reminders

Definitions

  • the disclosed implementations relate generally to digital media distribution services.
  • Netflix® and Blockbuster® provide services that allow users to search movie catalogs and manage an personal movie rental queue online. Physical DVDs of the movies are shipped directly to the user's home and provide return envelopes for returning the DVDs via the postal service. Because these services distribute physical DVDs they typically restrict the number of DVDs that can be simultaneously shipped to each user. These restrictions are due to limitations on inventory and/or agreements with content providers.
  • a significant drawback with such services is that users must wait 3-4 days for movies to be delivered through the postal service. Moreover, these services will typically not ship new movies until movies are returned by the user which can add even more delay to the process.
  • Movielink® allows users to electronically rent or purchase movies, TV shows and other popular videos. Users can search categories, pay with credit or debit card, and electronically download purchased or rented movies to their home computers. Included with the service is client software that allows the user to manage and view the downloaded movies. Movies can be stored for a period of up to 30 days and viewed an unlimited number of times in a 24 hour viewing period starting when the user first “plays” the movie.
  • Movielink® improves upon services that manage physical inventory, the user must purchase or rent each movie (no subscription service is provided), then wait for the movie to be downloaded to their computer (e.g., 30-90 minutes for a full download). Such delay prevents the user from instantly accessing movies which can diminish the overall user experience. Although Movielink® attempts to shorten download time (2-10 minutes) by allowing the user to view the movie during download, this feature does not allow simultaneous instant access to multiple movies.
  • TiVo® automatically finds and digitally records scheduled television broadcasts.
  • the TiVo® service includes a Wishlist® feature that automatically searches and records schedule television broadcasts based on user search criteria.
  • An electronic delivery system stores an ordered list (e.g., a queue) of digital media items (e.g., videos, music, video games, ebooks, etc.) at a provider system.
  • the provider system delivers digital media items to a user system (e.g., via a network connection).
  • the user is permitted to access or check out (e.g., view, play, read, etc.) up to a maximum allowed number of digital media items at the user system. If the user “checks in” a digital media item, or if the permitted viewing window for a checked out item expires, then the user is permitted to check out (or renew) digital media items in the queue until the maximum allowed number of digital media items are checked out.
  • additional items are automatically delivered in response to one or more trigger events (e.g., an item is removed from the queue, etc.).
  • a computer-implemented method of managing digital media items includes: receiving by electronic delivery a plurality of digital media items specified in an ordered list of digital media items which can be updated by a user; receiving a first request to electronically check out a first digital media item; determining if a maximum allowed number of digital media items have been checked out; and denying the first request if the maximum allowed number of digital media items have been checked out.
  • a computer-implemented method of electronically delivering digital media items to a user system includes: maintaining a list of digital media items to be electronically delivered to a user system; prior to electronically delivering a digital media item from the list, checking to see whether a maximum allowed number of digital media items have been previously delivered to the user system; and electronically delivering a digital media item from the list if the maximum allowed number of digital media items have not been delivered to the user system.
  • a method of electronically delivering digital media items to a user system includes: maintaining an ordered list of digital media items to be electronically delivered to a user system; electronically delivering one or more digital media items from the list to the user system; receiving an indication that at least one digital media item previously delivered to the user system has been disabled; and in response to the indication, permitting an additional digital media item from the list to be electronically delivered to the user system.
  • a computer-implemented method of managing electronic access of digital media items by a user system includes: receiving by electronic delivery one or more digital media items from an ordered list of digital media items; receiving a first request to check out a first digital media item at the user system; and denying the first request if a maximum allowed number of digital media items have been previously checked out at the user system.
  • a computer-implemented method of electronically delivering digital media items to a user system includes: maintaining an ordered list of digital media items to be electronically delivered to a user system; electronically delivering one or more digital media items from the list to the user system until a maximum allowed number of digital media items have been delivered; receiving an indication that at least one digital media item previously delivered to the user system has expired; and in response to the indication, permitting the expired digital media item to be renewed by a user at the user system.
  • a computer-implemented method of managing access to digital media items includes: receiving multiple digital media items electronically downloaded from a provider system to a user system; receiving a request to simultaneously access M digital media items at the user system, where M is an integer value greater than or equal to one; determining if access to M digital media items is restricted; permitting access to M digital media items if access is not restricted; and permitting access to less than M digital media items if access is restricted.
  • FIG. 1 is a block diagram of an electronic delivery system.
  • FIG. 2A is a flow diagram of a media access process.
  • FIG. 2B is a flow diagram of an electronic delivery process.
  • FIG. 3 is a flow diagram of a check in/check out process.
  • FIG. 4 illustrates a user interface for managing a queue of digital media items.
  • FIG. 5 is a block diagram of a user system architecture for electronically receiving and managing access to digital media items.
  • FIG. 6 is a block diagram of a provider system architecture for electronically delivering and managing digital media items.
  • FIG. 1 is a block diagram of an electronic delivery (“e-delivery”) system 100 .
  • the system 100 includes a provider system 102 (e.g., digital media distribution server) and one or more user systems 104 (e.g., personal computer, mobile phone, laptop, personal digital assistant, media player, email device, DVD player, digital media receiver, digital audio receiver, etc.) coupled to one or more networks 106 (e.g., the Internet, intranet, local area network, wireless network, etc.).
  • a provider system 102 e.g., digital media distribution server
  • user systems 104 e.g., personal computer, mobile phone, laptop, personal digital assistant, media player, email device, DVD player, digital media receiver, digital audio receiver, etc.
  • networks 106 e.g., the Internet, intranet, local area network, wireless network, etc.
  • a user system 104 can be adapted to couple to one or more tethered devices 108 (e.g., a media player, mobile phone, smart phone, CD-ROM, etc.).
  • a “tethered” device is a device that can connect or couple to a user system 104 and receive content and/or digital rights (e.g., licenses) from or through the user system 104 .
  • a digital media player can be a tethered device 108 that connects to the port of a computer (e.g., Universal Serial Bus (USB), FireWire, wireless, etc.) and receives content and/or digital rights associated with content.
  • a tethered device 108 may acquire content and/or digital rights by synchronizing with a user system 104 or another device connected to the user system 104 (e.g., a docking station or cradle).
  • the provider system 102 is operated by a content aggregator that aggregates digital media items (e.g., videos, music, video games, ebooks, digital photos, etc.) from one or more content owners (e.g., publishers), and distributes the content to users over the network 106 .
  • the content can be distributed using a digital rights management (DRM) framework which controls how the content is licensed, distributed, accessed, viewed and used.
  • DRM digital rights management
  • the provider system 102 encrypts and packages content, together with one or more rules which govern how the content can be accessed, viewed, copied, distributed, etc.
  • the provider system 102 operates a web page server ( FIG. 6 ) that serves interactive web pages to user systems 104 over the network 106 .
  • the interactive web pages allow users to search and browse content catalogs stored at the provider system 102 .
  • the user is allowed to manage a personal list or queue of digital media items (hereinafter also referred to as “items”).
  • the term “items” can include content and any other data or information that can be packaged or bundled with the content, such as DRM information (e.g., rules encryption keys), advertisements, movie trailers, software, movie guides, transaction information, etc.
  • the user can add and remove items to and from their personal queue using various user interface elements (e.g., push buttons, menus, links, dialog boxes, etc.).
  • the provider system 102 can also facilitate the purchase or rental of items, and gathers information for this purpose (e.g., setting-up user accounts and profiles).
  • the provider system 102 is also responsible for establishing and maintaining network connectivity for electronic delivery of items to user systems 104 over the network 106 .
  • the provider system 102 may be operated on a server, which for these purposes may include a network of multiple interconnected computers and storage elements.
  • the user system 104 may be a personal computer, or any similar computing device with the ability to send and receive data via a network 106 .
  • the user system 104 can have the ability to share digital media items with tethered devices 108 and manage the access rights of tethered devices 108 to digital media items.
  • the user system 104 can include a digital rights management (DRM) system or process that ensures that tethered devices 108 comply with DRM rules imposed by a provider system 102 , or by a third party content owner, such as, for example, restricting the number of copies that can be made, ensuring that appropriate licenses have been acquired, verifying that the tethered device has a secure processing environment, etc.
  • DRM digital rights management
  • FIG. 2A is a flow diagram of a media access process 201 .
  • the number of digital media items that can be simultaneously accessed is restricted at the user system.
  • Some of the steps of process 201 can be executed concurrently using one or more threads (e.g., multi-threading environment) and/or one or more processors (e.g., parallel processors).
  • a provider system downloads digital media items to a user system where the items are stored for subsequent retrieval by a user ( 203 ).
  • the user system receives an access request from the user for simultaneously accessing M item(s) ( 205 ), where M is an integer greater than or equal to one. If the check out is restricted ( 207 ), then the user is notified of the restriction ( 211 ) and permitted to access less than M items(s) ( 213 ). Otherwise, the user is permitted to access the M requested item(s) ( 209 ).
  • the number of permitted accesses may also allow for access by one or more tethered devices 108 .
  • the user may be allowed to simultaneously access up to M items using any combination of tethered devices 108 , or from only certain types or classes of tethered devices 108 .
  • the user may be allowed to transfer a song to a digital media player through a USB cable, but is restricted from burning the song to disc.
  • the user system 104 can be responsible for managing access permissions or restrictions for itself and for any tethered devices 108 connected or coupled to the user system 104 .
  • the specifics of access management can be specified by the provider system 102 or a third party content provider.
  • access restrictions are enforced using known DRM solutions and information residing at the user system and/or bundled or integrated with the digital media items (e.g., digital watermarks, etc.).
  • DRM software can monitor or track the number of items simultaneously accessed, and restrict access if the number exceeds a predetermined maximum number.
  • the provider system monitors and enforces access restrictions (e.g., authorizes and de-authorizes access) at the user system by at least intermittently monitoring access requests and activities at the user system and/or by receiving notification or reports from the user system.
  • access restriction and enforcement is implemented by the combined actions of the user system, the provider system and a third party system (e.g., a content clearing house, license administrator, etc.).
  • FIG. 2B is a flow diagram of an electronic delivery process 200 .
  • the process 200 downloads one or more items to a user system.
  • the items are stored at the user system and can be accessed and managed via a user interface, as described with respect to FIG. 4 .
  • Some of the steps of process 200 can be executed concurrently using one or more threads (e.g., multi-threading environment) and/or one or more processors (e.g., parallel processors).
  • the process 200 includes downloading events and access events. These events can operate independent of each other or in combination, and each event can be managed separately for purposes of DRM.
  • the process 200 begins by electronically downloading items listed in a user's queue to a user system ( 202 ).
  • the number of items that can be downloaded is restricted due to memory constraints of the user system and/or legal restrictions imposed by content publishers.
  • the items are stored locally at the user system ( 204 ).
  • the items can be stored on any suitable storage medium, such as a hard drive, Flash memory or the like. Once the items are stored, the user can “check out” one or more items via a user interface, as described with respect to FIGS. 2A , 3 and 4 .
  • the items may be downloaded (with or without numerical limits) automatically by the provider system, or upon explicit request by a user system.
  • the download can occur overnight or during periods of inactivity of the provider system, the user system, and/or the network.
  • the download may be automatically planned to balance limited storage capacity at the user system against the desire to have enough content downloaded to the user system at the time of a desired access so that no waiting is required before viewing is possible (i.e., “instant access”).
  • the user is permitted to check out up to a maximum number of items (e.g., three). Such a restriction can result from license restrictions imposed on the provider by content sources or owners. Once a maximum number of items is checked out, additional items cannot be checked out until the user “checks in” one of the “checked out” items and/or removes an item from their queue, as described with respect to FIGS. 3 and 4 .
  • a maximum number of items e.g., three.
  • items can expire after a period of time.
  • certain items can be restricted to a 30 day storage period. At the end of the 30 day storage period, the item expires, e.g., a digital rights management (DRM) client (e.g., DRM client 534 shown in FIG. 5 ) prevents further access to that item by the user system 104 .
  • DRM digital rights management
  • items can be restricted to a viewing period (e.g., 24 hours) which allows the user to view the item as often as they like during the viewing period. If an item expires it can be automatically disabled or removed from the storage device.
  • a trigger event is any action taken on the user's queue whether initiated by the user, the user system or the provider system.
  • queue events include but are not limited to: 1) the expiration of an item in the queue, 2) the removal of an item from the queue, 3) the renewal of an expired item in the queue, 4) the addition of a new item in the queue, and 5) the reordering of items in the queue.
  • the user system sends a notification of the queue event to the provider system ( 210 ).
  • the provider system receives the notification ( 212 ) and optionally confirms the queue invent.
  • the process 200 may confirm the any expired or removed items have been disabled.
  • the provider system initiates a confirmation procedure at the user system that verifies that the item was disabled.
  • a confirmation procedure at the provider system confirms that items are disabled.
  • the confirmation procedure can be performed using any combination of known DRM techniques or other content security solutions or frameworks.
  • the queue is modified to reflect the queue events ( 214 ). If the queue event allows for the download of additional items to the user system ( 216 ), then the provider system determines how many additional items can be downloaded to the user device without exceeding the maximum allowed number and downloads that number of items ( 202 ). For example, if a user removes an item from their queue (a queue event), then the provider system retrieves the next item (e.g., top of the queue) from the user's personal queue and automatically downloads or otherwise delivers the item to the user system for instant access by a user. In some implementations, the items (or portions thereof) are delivered by a caching server and/or a third party system (e.g., a content clearing house, license provider, etc.).
  • a caching server e.g., a content clearing house, license provider, etc.
  • the user is provided an option to renew an expired item. If an item expires it can be advantageous to keep the item stored at the user system and provide an opportunity for the user to renew the item. If the user does not renew the expired item within a renewal period (e.g., 48 hours), then the item can be automatically removed from the user system. The removal of the item is detected and the provider system is notified. If the user renews the expired item, then the item will be re-enabled by the provider system without having to download the item from the provider system.
  • a renewal period e.g. 48 hours
  • a trigger event can also occur if the maximum number of items allowed to be stored at the user system is increased (e.g., a subscription upgrade).
  • the process 200 described above enables a user to download in the background a maximum number of items from the their personal queue for viewing at any time, subject to any agreed upon restrictions regarding viewing and storage.
  • the items can be downloaded as a background process while the user is viewing or using an item or even when the user is offline.
  • the maximum allowed number of items stored at the user system can be greater than maximum allowed number of items that can be simultaneously checked out by a user.
  • the provider system delivers items to the user system, but does not maintain the user queue or enforce the access rights of the user.
  • the queue and access rights can be enforced by the user system and/or one or more other systems, such as a third party system (e.g., content owner system or clearing house, etc.).
  • a third party system e.g., content owner system or clearing house, etc.
  • An advantage of the process 200 is that it limits the number of items that can be simultaneously accessed and/or viewed at the user device, while still providing the user with instant access to those items. Thus, the process 200 enables restrictions on content to be enforced without compromising the “instant access” user experience.
  • FIG. 3 is a flow diagram of a check in/check out process 300 .
  • the process 300 is performed at a user system. Some of the steps of process 300 can be executed concurrently using one or more threads (e.g., multi-threading environment) and/or one or more processors (e.g., parallel processors).
  • threads e.g., multi-threading environment
  • processors e.g., parallel processors
  • the process 300 begins when a user's request to access an item (i.e., “check out” an item) or “check in” an item is received by the user system ( 302 ).
  • the request can be made through a user interface element, as described with respect to FIG. 4 .
  • the request can be made through a hardware device (e.g., a remote control, mobile phone, media player, etc.).
  • a check_out counter e.g., check_out counter 530 in FIG. 5
  • the check_out counter maintains a current count of the number of items that are concurrently checked out by the user.
  • the check_out counter is a software timer and initialized to zero when the user system is booted up.
  • the current value of the check_out counter is compared against a max_out parameter (e.g., max_out parameter 532 in FIG. 5 ) to determine if the maximum number of checked out items has been reached ( 310 ).
  • the max_out parameter stores an integer value that represents the maximum number of items that can be concurrently checked out by a user. This limit may be set, for example, by the terms of the user's agreement with the content service provider. If the check_out counter is equal to or exceeds max_out, then the user is notified that the maximum number of items have been checked out and the user is not permitted to check out the item ( 312 ). This notification can be a message or alert presented to the user via a user interface element. If check_out is less than max_out, then the user is permitted to check out the item and the check_out counter is incremented ( 314 ).
  • FIG. 4 illustrates a user interface 400 for managing a queue or list of digital media items.
  • the user interface 400 enables a user to manage a personal queue of digital media items to be electronically accessed.
  • FIG. 4 assumes that the user has already browsed a content catalog and added items to the queue.
  • the user interface 400 includes an ordered list of items which are numbered from 1 to N.
  • the queue can include items that are currently stored at the user system 104 and items that have not yet been electronically downloaded.
  • the user interface 400 may also include a queue summary 416 which summarizes information about the queue, such as the number of items in the queue, the number of items checked out (e.g., the current value of check_count), the number of expired items and the like.
  • the queue summary 416 shows that the user has five items in the queue. Six items were previously downloaded to the user system for instant access. Two items are checked out (NemoTM, Toy StoryTM), two items are available for check-out (Monkey BallTM, Madonna) and two items are expired (Toy StoryTM 2, Harry PotterTM). The expired items are displayed in a section 428 of the user interface 400 .
  • the user interface 400 includes control buttons 418 , 420 , for canceling an action and exiting the user interface 400 , and a button 424 for updating the queue. There is also a button 422 for browsing a content catalog which allows the user to select items to be added to the queue.
  • each item has eight fields: title 414 , rating 412 , media 410 , e-delivery 408 , expires 406 , status 404 , action 402 and remove 403 .
  • the title 414 , rating, 412 and media 410 fields are self-explanatory.
  • the e-delivery field 408 shows the status of electronic delivery. If delivery was successful, then the date of delivery is shown. If the item was not downloaded or the download failed for any reason, the e-delivery field 408 reflects such status.
  • the expires field 406 shows the date of expiration for items that can expire.
  • the status field 404 shows the current status of items (e.g, out, expired, available, etc.).
  • the action field 402 provides actions that are appropriate based on the status field 404 of the items. In some implementations, the actions are links that can be clicked by the user to invoke the described action, as described below with respect to FIG. 4 .
  • item 1 is checked out so the allowed action is to check in the item. If the user clicks the check-in link in the action field 402 for item 1 , then item 1 will be checked in. Item 3 is checked-in and stored at the user system for instant access. Thus, item 3 is “available” to be checked out and this action is reflected in the action field 402 for item 3 . If the user clicks the check-out link, then item 3 will be checked-out, provided the user has not already checked out the maximum allowed number of items that can be concurrently checked out, as described with respect to FIG. 3 .
  • the remove field 403 includes check-boxes that can be checked by the user to mark an item for removal. An item is removed from the queue when the user clicks on the update queue button 424 .
  • the user interface 400 can be refreshed to display an updated queue.
  • the order in which items are listed in the queue implies the order in which the user wants to access the items. Items in the queue can be reordered by the user. Reordering the queue may be significant for items that have not been downloaded, since items at the top of the queue may be downloaded first. That is, the automatic download of an item can be based on its position in the queue. Items can be reordered in the queue by changing the number in the items field 426 and clicking the update queue button 424 . Alternatively, the items can be reordered in the queue by clicking and dragging an item title to the desire location in the queue which will cause the item to be inserted at that location.
  • item 5 is an example of a digital media item that is in the user's queue but has not yet been downloaded. This may be because the user system 104 is full or because the provider system 102 and/or user system 104 have determined that download is unnecessary or untimely. The number and timing of downloads may be controlled by user preferences set at the user system 104 or provider system 102 . In any event, one possible action with respect to any digital media item on a user's queue is “download now,” which may cause the item to be downloaded at the next available opportunity without regard to its position in the queue.
  • user interface 400 is one example of a user interface for media queue.
  • Other user interfaces can be used with more or fewer fields and controls, as desired.
  • FIG. 5 is a block diagram of an exemplary user system architecture 500 capable of electronically receiving and managing access to digital media items.
  • the architecture 500 includes one or more processors 502 (e.g., PowerPC®, Intel Pentium® 4, etc.), one or more display devices 504 (e.g., CRT, LCD), an audio/visual (A/V) interface 506 (e.g., for connecting to a television receiver), a network interface 508 (e.g., Ethernet connection, FireWire, USB, etc.), input devices 510 (e.g., keyboard, mouse, etc.), and one or more computer-readable mediums 512 (e.g., RAM, ROM, SDRAM, hard disk, optical disk, flash memory, L1 and L2 cache, etc.).
  • These components exchange communications and data via one or more buses 514 (e.g., EISA, PCI, PCI Express, etc.).
  • computer-readable medium refers to any medium that participates in providing instructions to a processor 502 for execution, including without limitation, non-volatile media (e.g., optical or magnetic disks), volatile media (e.g., memory) and transmission media.
  • Transmission media includes, without limitation, coaxial cables, copper wire and fiber optics. Transmission media can also take the form of acoustic, light or radio frequency waves.
  • the computer-readable medium 512 further includes an operating system 516 (e.g., Mac OS®, Windows®, Linux, etc.), a network communication module 518 , a browser 520 (e.g., Microsoft® Internet Explorer, Netscape®, Safari®, etc.), a media player 522 and an e-delivery client 524 .
  • an operating system 516 e.g., Mac OS®, Windows®, Linux, etc.
  • a network communication module 518 e.g., a browser 520 (e.g., Microsoft® Internet Explorer, Netscape®, Safari®, etc.), a media player 522 and an e-delivery client 524 .
  • the operating system 516 can be multi-user, multiprocessing, multitasking, multithreading, real-time and the like.
  • the operating system 516 performs basic tasks, including but not limited to: recognizing input from input devices 510 ; sending output to display devices 504 ; keeping track of files and directories on computer-readable mediums 512 (e.g., memory or a storage device); controlling peripheral devices (e.g., disk drives, printers, A/V interface 506 , etc.); and managing traffic on the one or more buses 514 .
  • the network communications module 518 includes various components for establishing and maintaining network connections (e.g., software for implementing communication protocols, such as TCP/IP, HTTP, Ethernet, etc.).
  • the browser 520 enables the user to search a network (e.g., Internet) for information (e.g., digital media items).
  • the media player 522 e.g., Quick Time®, Windows Media Player®, Real Player®, etc.
  • the media player 522 enables the user to view content.
  • the user system can be a television set-top box, DVD, player, digital media receiver, digital audio receiver, mobile phone or other handheld device, and the like.
  • Such systems may implement a modified architecture 500 using a combination of hardware and software.
  • the e-delivery client 524 provides various software components for performing the various functions for e-delivery and queue management, as described with respect to FIGS. 2-5 .
  • the e-delivery client 524 includes a media queue manager 526 , items 528 , a check_out counter 530 , a max_out parameter 532 and a DRM client 534 .
  • the media queue client 526 includes software components for presenting and updating the queue, as described with respect to FIG. 4 .
  • the items 528 are digital media items that have been downloaded to the user system.
  • the check_out counter 530 and max_out parameter were described with respect to FIG. 3 .
  • the DRM client 534 ensures the integrity of DRM protected items at the user system, and includes components for disabling DRM protected items or revoking some or all the rights associated with the DRM items.
  • FIG. 6 is a block diagram of an exemplary provider system architecture 600 capable of electronically delivering and managing digital media items.
  • the architecture 600 includes one or more processors 602 , a media repository 605 , network interfaces 606 , user data repository 608 and one or more computer-readable mediums 610 . Each of these components communicate with each other over one or more buses 612 .
  • the media repository 604 stores digital media items for download to users.
  • the user data repository 608 stores user account information and profiles.
  • the repositories 604 , 608 can be stored on the same storage device or separate storage devices.
  • the network interfaces 606 enable items to be downloaded to users over a network (e.g., the Internet).
  • the computer-readable mediums 610 further include an operating system 614 (Mac OS® Server, Windows® NT, etc.), a network communications module 616 , a web pager server 618 , a DRM manager 620 (e.g., Windows Media® DRM) and an e-delivery server 622 for managing the downloading of items to user systems.
  • an operating system 614 Mac OS® Server, Windows® NT, etc.
  • a network communications module 616 e.g., Windows Media® DRM
  • DRM manager 620 e.g., Windows Media® DRM
  • e-delivery server 622 for managing the downloading of items to user systems.
  • the operating system 614 and network communications module 616 operate as previously described with respect to FIG. 5 .
  • the web page server 618 serves web pages to user systems.
  • the web page server 618 can serve a web page to a user system that includes the user interface 400 .
  • the DRM manager 620 is responsible for various DRM management functions at the provider system.
  • the DRM manager 620 can provide a framework for packaging and encrypting items for electronic delivery, and also provide a mechanism for including and modifying rules for governing access and use of items.
  • the e-delivery server 622 further includes a media queue manager 624 and a subscription manager 626 .
  • the media queue manager 624 works with the media queue client 526 at the user system to manage and update the user's queue.
  • the subscription manager 626 manages user subscriptions.

Abstract

In an electronic delivery system, digital media items (e.g., videos, music, video games, ebooks, etc.) are stored in an ordered list (e.g., queue) at a provider system. The provider system automatically delivers digital media items to a user system (e.g., via a network connection). The user is permitted to check out (e.g., view, play, read, etc.) a maximum allowed number of items at the user system. If the user checks in an item, or an item expires or is removed from the queue, then the user is permitted to check out (or renew) digital media items in the queue until the maximum allowed number of digital media items are checked out. In some implementations, digital media items are automatically delivered in response to one or more trigger events (e.g., an item is removed from the queue, etc.).

Description

TECHNICAL FIELD
The disclosed implementations relate generally to digital media distribution services.
BACKGROUND
Advancements in digital media technologies are opening new opportunities for digital media distribution. Various companies, such as Netflix®, Blockbuster® Online, TiVo® and Movielink® have implemented technologies and systems for renting DVDs and other digital media (e.g., videos, music, video games, ebooks, digital photos, etc.) using the Internet.
Netflix® and Blockbuster® provide services that allow users to search movie catalogs and manage an personal movie rental queue online. Physical DVDs of the movies are shipped directly to the user's home and provide return envelopes for returning the DVDs via the postal service. Because these services distribute physical DVDs they typically restrict the number of DVDs that can be simultaneously shipped to each user. These restrictions are due to limitations on inventory and/or agreements with content providers.
A significant drawback with such services is that users must wait 3-4 days for movies to be delivered through the postal service. Moreover, these services will typically not ship new movies until movies are returned by the user which can add even more delay to the process.
Movielink® allows users to electronically rent or purchase movies, TV shows and other popular videos. Users can search categories, pay with credit or debit card, and electronically download purchased or rented movies to their home computers. Included with the service is client software that allows the user to manage and view the downloaded movies. Movies can be stored for a period of up to 30 days and viewed an unlimited number of times in a 24 hour viewing period starting when the user first “plays” the movie.
Although Movielink® improves upon services that manage physical inventory, the user must purchase or rent each movie (no subscription service is provided), then wait for the movie to be downloaded to their computer (e.g., 30-90 minutes for a full download). Such delay prevents the user from instantly accessing movies which can diminish the overall user experience. Although Movielink® attempts to shorten download time (2-10 minutes) by allowing the user to view the movie during download, this feature does not allow simultaneous instant access to multiple movies.
TiVo® automatically finds and digitally records scheduled television broadcasts. The TiVo® service includes a Wishlist® feature that automatically searches and records schedule television broadcasts based on user search criteria.
SUMMARY
An electronic delivery system stores an ordered list (e.g., a queue) of digital media items (e.g., videos, music, video games, ebooks, etc.) at a provider system. The provider system delivers digital media items to a user system (e.g., via a network connection). The user is permitted to access or check out (e.g., view, play, read, etc.) up to a maximum allowed number of digital media items at the user system. If the user “checks in” a digital media item, or if the permitted viewing window for a checked out item expires, then the user is permitted to check out (or renew) digital media items in the queue until the maximum allowed number of digital media items are checked out. In some implementations, additional items are automatically delivered in response to one or more trigger events (e.g., an item is removed from the queue, etc.).
In some implementations, a computer-implemented method of managing digital media items includes: receiving by electronic delivery a plurality of digital media items specified in an ordered list of digital media items which can be updated by a user; receiving a first request to electronically check out a first digital media item; determining if a maximum allowed number of digital media items have been checked out; and denying the first request if the maximum allowed number of digital media items have been checked out.
In some implementations, a computer-implemented method of electronically delivering digital media items to a user system includes: maintaining a list of digital media items to be electronically delivered to a user system; prior to electronically delivering a digital media item from the list, checking to see whether a maximum allowed number of digital media items have been previously delivered to the user system; and electronically delivering a digital media item from the list if the maximum allowed number of digital media items have not been delivered to the user system.
In some implementations, a method of electronically delivering digital media items to a user system includes: maintaining an ordered list of digital media items to be electronically delivered to a user system; electronically delivering one or more digital media items from the list to the user system; receiving an indication that at least one digital media item previously delivered to the user system has been disabled; and in response to the indication, permitting an additional digital media item from the list to be electronically delivered to the user system.
In some implementations, a computer-implemented method of managing electronic access of digital media items by a user system includes: receiving by electronic delivery one or more digital media items from an ordered list of digital media items; receiving a first request to check out a first digital media item at the user system; and denying the first request if a maximum allowed number of digital media items have been previously checked out at the user system.
In some implementations, a computer-implemented method of electronically delivering digital media items to a user system includes: maintaining an ordered list of digital media items to be electronically delivered to a user system; electronically delivering one or more digital media items from the list to the user system until a maximum allowed number of digital media items have been delivered; receiving an indication that at least one digital media item previously delivered to the user system has expired; and in response to the indication, permitting the expired digital media item to be renewed by a user at the user system.
In some implementations, a computer-implemented method of managing access to digital media items includes: receiving multiple digital media items electronically downloaded from a provider system to a user system; receiving a request to simultaneously access M digital media items at the user system, where M is an integer value greater than or equal to one; determining if access to M digital media items is restricted; permitting access to M digital media items if access is not restricted; and permitting access to less than M digital media items if access is restricted.
Other implementations are described herein, including but not limited to implementations associated with computer-readable mediums, systems and devices.
BRIEF DESCRIPTION OF DRAWINGS
FIG. 1 is a block diagram of an electronic delivery system.
FIG. 2A is a flow diagram of a media access process.
FIG. 2B is a flow diagram of an electronic delivery process.
FIG. 3 is a flow diagram of a check in/check out process.
FIG. 4 illustrates a user interface for managing a queue of digital media items.
FIG. 5 is a block diagram of a user system architecture for electronically receiving and managing access to digital media items.
FIG. 6 is a block diagram of a provider system architecture for electronically delivering and managing digital media items.
DETAILED DESCRIPTION Electronic Delivery System Overview
FIG. 1 is a block diagram of an electronic delivery (“e-delivery”) system 100. In some implementations, the system 100 includes a provider system 102 (e.g., digital media distribution server) and one or more user systems 104 (e.g., personal computer, mobile phone, laptop, personal digital assistant, media player, email device, DVD player, digital media receiver, digital audio receiver, etc.) coupled to one or more networks 106 (e.g., the Internet, intranet, local area network, wireless network, etc.).
A user system 104 can be adapted to couple to one or more tethered devices 108 (e.g., a media player, mobile phone, smart phone, CD-ROM, etc.). A “tethered” device is a device that can connect or couple to a user system 104 and receive content and/or digital rights (e.g., licenses) from or through the user system 104. For example, a digital media player can be a tethered device 108 that connects to the port of a computer (e.g., Universal Serial Bus (USB), FireWire, wireless, etc.) and receives content and/or digital rights associated with content. In some instances, a tethered device 108 may acquire content and/or digital rights by synchronizing with a user system 104 or another device connected to the user system 104 (e.g., a docking station or cradle).
In some implementations, the provider system 102 is operated by a content aggregator that aggregates digital media items (e.g., videos, music, video games, ebooks, digital photos, etc.) from one or more content owners (e.g., publishers), and distributes the content to users over the network 106. The content can be distributed using a digital rights management (DRM) framework which controls how the content is licensed, distributed, accessed, viewed and used. In some implementations, the provider system 102 encrypts and packages content, together with one or more rules which govern how the content can be accessed, viewed, copied, distributed, etc.
In some implementations, the provider system 102 operates a web page server (FIG. 6) that serves interactive web pages to user systems 104 over the network 106. The interactive web pages allow users to search and browse content catalogs stored at the provider system 102. The user is allowed to manage a personal list or queue of digital media items (hereinafter also referred to as “items”). The term “items” can include content and any other data or information that can be packaged or bundled with the content, such as DRM information (e.g., rules encryption keys), advertisements, movie trailers, software, movie guides, transaction information, etc.
The user can add and remove items to and from their personal queue using various user interface elements (e.g., push buttons, menus, links, dialog boxes, etc.). The provider system 102 can also facilitate the purchase or rental of items, and gathers information for this purpose (e.g., setting-up user accounts and profiles). The provider system 102 is also responsible for establishing and maintaining network connectivity for electronic delivery of items to user systems 104 over the network 106. The provider system 102 may be operated on a server, which for these purposes may include a network of multiple interconnected computers and storage elements.
The user system 104 may be a personal computer, or any similar computing device with the ability to send and receive data via a network 106. The user system 104 can have the ability to share digital media items with tethered devices 108 and manage the access rights of tethered devices 108 to digital media items. For example, the user system 104 can include a digital rights management (DRM) system or process that ensures that tethered devices 108 comply with DRM rules imposed by a provider system 102, or by a third party content owner, such as, for example, restricting the number of copies that can be made, ensuring that appropriate licenses have been acquired, verifying that the tethered device has a secure processing environment, etc.
Media Access Process Flow
FIG. 2A is a flow diagram of a media access process 201. In some implementations, the number of digital media items that can be simultaneously accessed is restricted at the user system. Some of the steps of process 201 can be executed concurrently using one or more threads (e.g., multi-threading environment) and/or one or more processors (e.g., parallel processors).
In some implementations, a provider system downloads digital media items to a user system where the items are stored for subsequent retrieval by a user (203). The user system receives an access request from the user for simultaneously accessing M item(s) (205), where M is an integer greater than or equal to one. If the check out is restricted (207), then the user is notified of the restriction (211) and permitted to access less than M items(s) (213). Otherwise, the user is permitted to access the M requested item(s) (209). The number of permitted accesses may also allow for access by one or more tethered devices 108. For example, the user may be allowed to simultaneously access up to M items using any combination of tethered devices 108, or from only certain types or classes of tethered devices 108. For example, the user may be allowed to transfer a song to a digital media player through a USB cable, but is restricted from burning the song to disc. Thus, the user system 104 can be responsible for managing access permissions or restrictions for itself and for any tethered devices 108 connected or coupled to the user system 104. The specifics of access management can be specified by the provider system 102 or a third party content provider.
In some implementations, access restrictions are enforced using known DRM solutions and information residing at the user system and/or bundled or integrated with the digital media items (e.g., digital watermarks, etc.). For example, DRM software can monitor or track the number of items simultaneously accessed, and restrict access if the number exceeds a predetermined maximum number. In other implementations, the provider system monitors and enforces access restrictions (e.g., authorizes and de-authorizes access) at the user system by at least intermittently monitoring access requests and activities at the user system and/or by receiving notification or reports from the user system. In still other implementations, access restriction and enforcement is implemented by the combined actions of the user system, the provider system and a third party system (e.g., a content clearing house, license administrator, etc.).
E-Delivery Process Flow
FIG. 2B is a flow diagram of an electronic delivery process 200. In some implementations, the process 200 downloads one or more items to a user system. The items are stored at the user system and can be accessed and managed via a user interface, as described with respect to FIG. 4. Some of the steps of process 200 can be executed concurrently using one or more threads (e.g., multi-threading environment) and/or one or more processors (e.g., parallel processors). The process 200 includes downloading events and access events. These events can operate independent of each other or in combination, and each event can be managed separately for purposes of DRM.
Downloading Digital Media Items
The process 200 begins by electronically downloading items listed in a user's queue to a user system (202). In some implementations, the number of items that can be downloaded is restricted due to memory constraints of the user system and/or legal restrictions imposed by content publishers. The items are stored locally at the user system (204). The items can be stored on any suitable storage medium, such as a hard drive, Flash memory or the like. Once the items are stored, the user can “check out” one or more items via a user interface, as described with respect to FIGS. 2A, 3 and 4.
The items may be downloaded (with or without numerical limits) automatically by the provider system, or upon explicit request by a user system. The download can occur overnight or during periods of inactivity of the provider system, the user system, and/or the network. The download may be automatically planned to balance limited storage capacity at the user system against the desire to have enough content downloaded to the user system at the time of a desired access so that no waiting is required before viewing is possible (i.e., “instant access”).
Accessing Digital Media Items
The user is permitted to check out up to a maximum number of items (e.g., three). Such a restriction can result from license restrictions imposed on the provider by content sources or owners. Once a maximum number of items is checked out, additional items cannot be checked out until the user “checks in” one of the “checked out” items and/or removes an item from their queue, as described with respect to FIGS. 3 and 4.
In some implementations, items can expire after a period of time. For example, certain items can be restricted to a 30 day storage period. At the end of the 30 day storage period, the item expires, e.g., a digital rights management (DRM) client (e.g., DRM client 534 shown in FIG. 5) prevents further access to that item by the user system 104. Alternatively, items can be restricted to a viewing period (e.g., 24 hours) which allows the user to view the item as often as they like during the viewing period. If an item expires it can be automatically disabled or removed from the storage device.
In some implementations, certain activities at the user system are detected as trigger events (206). Generally, a trigger event (hereinafter also referred to as a “queue event”) is any action taken on the user's queue whether initiated by the user, the user system or the provider system. Some examples of queue events include but are not limited to: 1) the expiration of an item in the queue, 2) the removal of an item from the queue, 3) the renewal of an expired item in the queue, 4) the addition of a new item in the queue, and 5) the reordering of items in the queue.
The user system sends a notification of the queue event to the provider system (210). The provider system receives the notification (212) and optionally confirms the queue invent. For example, the process 200 may confirm the any expired or removed items have been disabled. In some implementations, the provider system initiates a confirmation procedure at the user system that verifies that the item was disabled. In other implementations, a confirmation procedure at the provider system confirms that items are disabled. The confirmation procedure can be performed using any combination of known DRM techniques or other content security solutions or frameworks.
After the queue event is confirmed, the queue is modified to reflect the queue events (214). If the queue event allows for the download of additional items to the user system (216), then the provider system determines how many additional items can be downloaded to the user device without exceeding the maximum allowed number and downloads that number of items (202). For example, if a user removes an item from their queue (a queue event), then the provider system retrieves the next item (e.g., top of the queue) from the user's personal queue and automatically downloads or otherwise delivers the item to the user system for instant access by a user. In some implementations, the items (or portions thereof) are delivered by a caching server and/or a third party system (e.g., a content clearing house, license provider, etc.).
In some implementations, the user is provided an option to renew an expired item. If an item expires it can be advantageous to keep the item stored at the user system and provide an opportunity for the user to renew the item. If the user does not renew the expired item within a renewal period (e.g., 48 hours), then the item can be automatically removed from the user system. The removal of the item is detected and the provider system is notified. If the user renews the expired item, then the item will be re-enabled by the provider system without having to download the item from the provider system.
It should be apparent that a variety of trigger events (other than queue events) can be detected and acted upon by the provider system. For example, a trigger event can also occur if the maximum number of items allowed to be stored at the user system is increased (e.g., a subscription upgrade).
The process 200 described above enables a user to download in the background a maximum number of items from the their personal queue for viewing at any time, subject to any agreed upon restrictions regarding viewing and storage. The items can be downloaded as a background process while the user is viewing or using an item or even when the user is offline. The maximum allowed number of items stored at the user system can be greater than maximum allowed number of items that can be simultaneously checked out by a user.
In some implementations, the provider system delivers items to the user system, but does not maintain the user queue or enforce the access rights of the user. In such an implementation, the queue and access rights can be enforced by the user system and/or one or more other systems, such as a third party system (e.g., content owner system or clearing house, etc.).
An advantage of the process 200 is that it limits the number of items that can be simultaneously accessed and/or viewed at the user device, while still providing the user with instant access to those items. Thus, the process 200 enables restrictions on content to be enforced without compromising the “instant access” user experience.
Check-In/Check-Out Process Flow
FIG. 3 is a flow diagram of a check in/check out process 300. In some implementations, the process 300 is performed at a user system. Some of the steps of process 300 can be executed concurrently using one or more threads (e.g., multi-threading environment) and/or one or more processors (e.g., parallel processors).
The process 300 begins when a user's request to access an item (i.e., “check out” an item) or “check in” an item is received by the user system (302). In some implementations, the request can be made through a user interface element, as described with respect to FIG. 4. In other implementations, the request can be made through a hardware device (e.g., a remote control, mobile phone, media player, etc.). If the user requests to check-in an item (304), the item is checked in and a check_out counter (e.g., check_out counter 530 in FIG. 5) is decremented (306). The check_out counter maintains a current count of the number of items that are concurrently checked out by the user. In some implementations, the check_out counter is a software timer and initialized to zero when the user system is booted up.
If the user requests to check out an item (308), then the current value of the check_out counter is compared against a max_out parameter (e.g., max_out parameter 532 in FIG. 5) to determine if the maximum number of checked out items has been reached (310). The max_out parameter stores an integer value that represents the maximum number of items that can be concurrently checked out by a user. This limit may be set, for example, by the terms of the user's agreement with the content service provider. If the check_out counter is equal to or exceeds max_out, then the user is notified that the maximum number of items have been checked out and the user is not permitted to check out the item (312). This notification can be a message or alert presented to the user via a user interface element. If check_out is less than max_out, then the user is permitted to check out the item and the check_out counter is incremented (314).
Queue User Interface
FIG. 4 illustrates a user interface 400 for managing a queue or list of digital media items. The user interface 400 enables a user to manage a personal queue of digital media items to be electronically accessed. FIG. 4 assumes that the user has already browsed a content catalog and added items to the queue.
In some implementations, the user interface 400 includes an ordered list of items which are numbered from 1 to N. The queue can include items that are currently stored at the user system 104 and items that have not yet been electronically downloaded. The user interface 400 may also include a queue summary 416 which summarizes information about the queue, such as the number of items in the queue, the number of items checked out (e.g., the current value of check_count), the number of expired items and the like. In this example, the queue summary 416 shows that the user has five items in the queue. Six items were previously downloaded to the user system for instant access. Two items are checked out (Nemo™, Toy Story™), two items are available for check-out (Monkey Ball™, Madonna) and two items are expired (Toy Story™ 2, Harry Potter™). The expired items are displayed in a section 428 of the user interface 400.
The user interface 400 includes control buttons 418, 420, for canceling an action and exiting the user interface 400, and a button 424 for updating the queue. There is also a button 422 for browsing a content catalog which allows the user to select items to be added to the queue.
In some implementations, each item has eight fields: title 414, rating 412, media 410, e-delivery 408, expires 406, status 404, action 402 and remove 403. The title 414, rating, 412 and media 410 fields are self-explanatory. The e-delivery field 408 shows the status of electronic delivery. If delivery was successful, then the date of delivery is shown. If the item was not downloaded or the download failed for any reason, the e-delivery field 408 reflects such status. The expires field 406 shows the date of expiration for items that can expire. The status field 404 shows the current status of items (e.g, out, expired, available, etc.). The action field 402 provides actions that are appropriate based on the status field 404 of the items. In some implementations, the actions are links that can be clicked by the user to invoke the described action, as described below with respect to FIG. 4.
Referring to FIG. 4, item 1 is checked out so the allowed action is to check in the item. If the user clicks the check-in link in the action field 402 for item 1, then item 1 will be checked in. Item 3 is checked-in and stored at the user system for instant access. Thus, item 3 is “available” to be checked out and this action is reflected in the action field 402 for item 3. If the user clicks the check-out link, then item 3 will be checked-out, provided the user has not already checked out the maximum allowed number of items that can be concurrently checked out, as described with respect to FIG. 3.
The remove field 403 includes check-boxes that can be checked by the user to mark an item for removal. An item is removed from the queue when the user clicks on the update queue button 424. The user interface 400 can be refreshed to display an updated queue.
In this example, two previously downloaded items (Toy Story™ 2, Harry Potter™) that have expired are displayed in a renewal section 428 of the user interface. Since these items have expired, the allowed action for these items is to renew. If the user clicks a renew link 430 in the action field for these items, then the items are renewed. For example, clicking the renewal link 430 can cause the item to be re-enabled. If the user clicks the renewal link 430, the user can check out the item again, provided that the user has not exceeded the maximum allowed number of items that can be simultaneously checked out or is not otherwise restricted (e.g., subscription has expired). If access is denied, the user can be prompted to check in an item or to contact the provider system 102 to upgrade their subscription to increase the number of items that can be simultaneously accessed.
It should be apparent that the order in which items are listed in the queue implies the order in which the user wants to access the items. Items in the queue can be reordered by the user. Reordering the queue may be significant for items that have not been downloaded, since items at the top of the queue may be downloaded first. That is, the automatic download of an item can be based on its position in the queue. Items can be reordered in the queue by changing the number in the items field 426 and clicking the update queue button 424. Alternatively, the items can be reordered in the queue by clicking and dragging an item title to the desire location in the queue which will cause the item to be inserted at that location.
Referring to FIG. 4, item 5 is an example of a digital media item that is in the user's queue but has not yet been downloaded. This may be because the user system 104 is full or because the provider system 102 and/or user system 104 have determined that download is unnecessary or untimely. The number and timing of downloads may be controlled by user preferences set at the user system 104 or provider system 102. In any event, one possible action with respect to any digital media item on a user's queue is “download now,” which may cause the item to be downloaded at the next available opportunity without regard to its position in the queue.
It should be apparent, that the user interface 400 is one example of a user interface for media queue. Other user interfaces can be used with more or fewer fields and controls, as desired.
FIG. 5 is a block diagram of an exemplary user system architecture 500 capable of electronically receiving and managing access to digital media items. The architecture 500 includes one or more processors 502 (e.g., PowerPC®, Intel Pentium® 4, etc.), one or more display devices 504 (e.g., CRT, LCD), an audio/visual (A/V) interface 506 (e.g., for connecting to a television receiver), a network interface 508 (e.g., Ethernet connection, FireWire, USB, etc.), input devices 510 (e.g., keyboard, mouse, etc.), and one or more computer-readable mediums 512 (e.g., RAM, ROM, SDRAM, hard disk, optical disk, flash memory, L1 and L2 cache, etc.). These components exchange communications and data via one or more buses 514 (e.g., EISA, PCI, PCI Express, etc.).
The term “computer-readable medium” refers to any medium that participates in providing instructions to a processor 502 for execution, including without limitation, non-volatile media (e.g., optical or magnetic disks), volatile media (e.g., memory) and transmission media. Transmission media includes, without limitation, coaxial cables, copper wire and fiber optics. Transmission media can also take the form of acoustic, light or radio frequency waves.
The computer-readable medium 512 further includes an operating system 516 (e.g., Mac OS®, Windows®, Linux, etc.), a network communication module 518, a browser 520 (e.g., Microsoft® Internet Explorer, Netscape®, Safari®, etc.), a media player 522 and an e-delivery client 524.
The operating system 516 can be multi-user, multiprocessing, multitasking, multithreading, real-time and the like. The operating system 516 performs basic tasks, including but not limited to: recognizing input from input devices 510; sending output to display devices 504; keeping track of files and directories on computer-readable mediums 512 (e.g., memory or a storage device); controlling peripheral devices (e.g., disk drives, printers, A/V interface 506, etc.); and managing traffic on the one or more buses 514. The network communications module 518 includes various components for establishing and maintaining network connections (e.g., software for implementing communication protocols, such as TCP/IP, HTTP, Ethernet, etc.). The browser 520 enables the user to search a network (e.g., Internet) for information (e.g., digital media items). The media player 522 (e.g., Quick Time®, Windows Media Player®, Real Player®, etc.) enables the user to view content.
The user system can be a television set-top box, DVD, player, digital media receiver, digital audio receiver, mobile phone or other handheld device, and the like. Such systems may implement a modified architecture 500 using a combination of hardware and software.
The e-delivery client 524 provides various software components for performing the various functions for e-delivery and queue management, as described with respect to FIGS. 2-5. The e-delivery client 524 includes a media queue manager 526, items 528, a check_out counter 530, a max_out parameter 532 and a DRM client 534. The media queue client 526 includes software components for presenting and updating the queue, as described with respect to FIG. 4. The items 528 are digital media items that have been downloaded to the user system. The check_out counter 530 and max_out parameter were described with respect to FIG. 3. The DRM client 534 ensures the integrity of DRM protected items at the user system, and includes components for disabling DRM protected items or revoking some or all the rights associated with the DRM items.
FIG. 6 is a block diagram of an exemplary provider system architecture 600 capable of electronically delivering and managing digital media items. The architecture 600 includes one or more processors 602, a media repository 605, network interfaces 606, user data repository 608 and one or more computer-readable mediums 610. Each of these components communicate with each other over one or more buses 612.
Also included is an administrative computer 628, which enables a system administrator to manage various administrative tasks, such as managing user accounts, profiles, etc. The media repository 604 stores digital media items for download to users. The user data repository 608 stores user account information and profiles. The repositories 604, 608, can be stored on the same storage device or separate storage devices. The network interfaces 606 enable items to be downloaded to users over a network (e.g., the Internet).
The computer-readable mediums 610 further include an operating system 614 (Mac OS® Server, Windows® NT, etc.), a network communications module 616, a web pager server 618, a DRM manager 620 (e.g., Windows Media® DRM) and an e-delivery server 622 for managing the downloading of items to user systems.
The operating system 614 and network communications module 616 operate as previously described with respect to FIG. 5. The web page server 618 serves web pages to user systems. For example, the web page server 618 can serve a web page to a user system that includes the user interface 400. The DRM manager 620 is responsible for various DRM management functions at the provider system. For example, the DRM manager 620 can provide a framework for packaging and encrypting items for electronic delivery, and also provide a mechanism for including and modifying rules for governing access and use of items.
The e-delivery server 622 further includes a media queue manager 624 and a subscription manager 626. The media queue manager 624 works with the media queue client 526 at the user system to manage and update the user's queue. The subscription manager 626 manages user subscriptions.
Various implementations have been described. These implementations can be modified and still remain within the scope of the following claims.

Claims (18)

1. A computer-implemented method of managing digital media items at a user system, comprising:
receiving, by electronic delivery, a plurality of digital media items specified in a list of digital media items maintained by a provider system;
storing the received digital media items at the user system;
receiving at the user system a first request to electronically check out a first digital media item from the user system;
determining if a maximum allowed number of digital media items have been checked out from the user system by comparing a count representing the current number of checked out digital media items with the maximum allowed number of digital media items;
denying the first request if the maximum allowed number of digital media items have been checked out from the user system;
incrementing the count if the first request is granted;
receiving a second request to electronically check in a second digital media item that had been previously checked out;
in response to the second request, checking-in the second digital media item; and
decrementing the count.
2. The method of claim 1, wherein the maximum allowed number of digital media items that can be checked out is less than the plurality of digital media items electronically delivered.
3. The method of claim 1, wherein receiving a first request to electronically check out a digital media item includes receiving input from a user via a user interface displayed at the user system.
4. A computer-implemented method of managing electronic delivery of digital media items from a provider system to a user system, comprising:
receiving, by electronic delivery, one or more digital media items from an ordered list of digital media items maintained by the provider system;
storing the received digital media items at the user system;
receiving at the user system a first request to check out a first digital media item at the user system;
denying the first request if a maximum allowed number of digital media items have been previously checked out at the user system;
receiving a second request to check in a second digital media item at the user system;
in response to the second request, checking in the second digital media item at the user system;
receiving a third request to check out a third digital media item at the user system; and
in response to the third request, permitting the third digital media item to be checked out at the user system.
5. A computer-implemented method of electronically delivering digital media items to a user system, comprising:
maintaining on a provider system an ordered list of digital media items to be electronically delivered to a user system;
electronically delivering one or more digital media items for the list to the user system;
receiving at the provider system an indication from the user system that at least one digital media item previously delivered to the user system has expired; and
in response to the indication and a first request, permitting the expired digital media item to be renewed by a user at the user system, where the first request is a request received at the user system to check out a first digital media item at the user system.
6. A computer-readable, non-transitory storage medium having stored thereon instructions, which, when executed by a processor, causes the processor to perform the operations comprising:
receiving, by electronic delivery, a plurality of digital media items maintained by a provider system, wherein the digital media items are included in an ordered list of digital media items;
storing the received digital media items at the user system;
receiving at the user system a first request to electronically check out a first digital media item;
determining a count of digital media items for which a check out request was previously granted;
granting the first request if the the count is less than a threshold number;
incrementing the count;
receiving a second request to electronically check in a second digital media item that had been previously checked out;
in response to the second request, checking-in the second digital media item; and
decrementing the count.
7. The computer-readable, non-transitory storage medium of claim 6, wherein the threshold number is less than the plurality of digital media items electronically delivered.
8. The computer-readable, non-transitory storage medium of claim 7, wherein receiving a first request to electronically check out a digital media item includes receiving input from a user via a user interface displayed at the user system.
9. A computer-readable, non-transitory storage medium having stored thereon instructions, which, when executed by a processor, causes the processor to perform the operations comprising:
receiving, by electronic delivery, a plurality of digital media items specified in a list of digital media items maintained by a provider system;
storing the received digital media items at the user system;
receiving at the user system a first request to electronically check out a first digital media item from the user system;
determining if a maximum allowed number of digital media items have been checked out from the user system;
denying the first request if the maximum allowed number of digital media items have been checked out from the user system;
receiving a second request to check in a second digital media item;
in response to the second request, checking in the second digital media item;
receiving a third request to check out a third digital media item; and
in response to the third request, permitting the third digital media item to be checked out.
10. A computer-readable, non-transitory storage medium having stored thereon instructions, which, when executed by a processor, cause the processor to perform the operations comprising:
maintaining on a provider system an ordered list of digital media items to be electronically delivered to a user system;
electronically delivering one or more digital media items for the list to the user system until a maximum allowed number of digital media items have been delivered;
receiving at the provider system an indication from the user system that at least one digital media item previously delivered to the user system has expired; and
in response to the indication and a first request, permitting the expired digital media item to be renewed by a user at the user system, where the first request is a request received at the user system to check out a first digital media item at the user system.
11. The computer-readable, non-transitory storage medium of claim 10where receiving an indication that at least one digital media item previously delivered to the user system has expired, further comprises:
receiving an indication that a time period for reviewing the digital media item at the user system expired.
12. A system for managing requests for access to digital media items, comprising:
a processor;
a computer-readable medium coupled to the processor and having stored thereon instructions, which, when executed by the processor, causes the processor to perform the operations of:
receiving, by electronic delivery, a plurality of digital media items specified in a list of digital media items maintained by a provider system;
storing the received digital media items at the system;
receiving at the system a first request to electronically check out a first digital media item from the system;
determining if a maximum allowed number of digital media items have been checked out from the system by comparing a count representing the current number of checked out digital media items with the maximum allowed number of digital media items;
denying the first request if the maximum allowed number of digital media items have been checked out from the system;
receiving a second request to electronically check in a second digital media item that had been previously checked out;
in response to the second request, checking-in the second digital media item; and
decrementing the count.
13. A computer-implemented method of managing access to digital media items, comprising:
receiving at a user system multiple digital media items electronically downloaded from a provider system;
receiving at the user system a request to simultaneously access M digital media item(s) at the user system, where M is an integer value greater than or equal to one;
determining if access to M digital media item(s) is restricted;
permitting access to M digital media item(s) if access is not restricted; and
permitting access to less than M digital media item(s) if access is restricted.
14. The method of claim 13, further comprising:
incrementing a count each time a digital media item is accessed.
15. The method of claim 14, further comprising:
receiving a request to electronically check in a previously accessed digital media item;
in response to the request, checking-in the previously accessed digital media item; and
decrementing the count.
16. The method of claim 13, further comprising:
sending an indication that at least one digital media item previously delivered to the user system has been disabled due to expiration of a time period for reviewing the digital media item on the user system.
17. The method of claim 16, further comprising:
permitting the expired digital media item to be renewed by a user at the user system.
18. The method of claim 13, where M is an integer value greater than or equal to two.
US11/336,268 2006-01-20 2006-01-20 Electronic delivery and management of digital media items Active 2029-09-01 US7860798B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US11/336,268 US7860798B2 (en) 2006-01-20 2006-01-20 Electronic delivery and management of digital media items

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
US11/336,268 US7860798B2 (en) 2006-01-20 2006-01-20 Electronic delivery and management of digital media items

Publications (2)

Publication Number Publication Date
US20070174888A1 US20070174888A1 (en) 2007-07-26
US7860798B2 true US7860798B2 (en) 2010-12-28

Family

ID=38287151

Family Applications (1)

Application Number Title Priority Date Filing Date
US11/336,268 Active 2029-09-01 US7860798B2 (en) 2006-01-20 2006-01-20 Electronic delivery and management of digital media items

Country Status (1)

Country Link
US (1) US7860798B2 (en)

Cited By (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20100114820A1 (en) * 2008-10-27 2010-05-06 International Business Machines Corporation Electronic library book
US20120090032A1 (en) * 2010-10-06 2012-04-12 Victor Trinklein Webtextbooks
CN103415867A (en) * 2011-03-09 2013-11-27 苹果公司 Intelligent delivery and acquistion of digital assets
US20170351877A1 (en) * 2016-06-03 2017-12-07 Honeywell International Inc. System and method for auditing file access to secure media by nodes of a protected system
US9852218B1 (en) 2010-01-01 2017-12-26 Joseph Alan Epstein System and method for distributing media via portable storage
US20190098535A1 (en) * 2016-05-26 2019-03-28 Kyocera Corporation Network apparatus
US10600139B2 (en) 2011-04-29 2020-03-24 American Greetings Corporation Systems, methods and apparatus for creating, editing, distributing and viewing electronic greeting cards
US10932015B2 (en) * 2006-10-31 2021-02-23 Level 3 Communications, Llc Automatic termination path configuration
US11425170B2 (en) 2018-10-11 2022-08-23 Honeywell International Inc. System and method for deploying and configuring cyber-security protection solution using portable storage device

Families Citing this family (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8266429B2 (en) 2004-07-20 2012-09-11 Time Warner Cable, Inc. Technique for securely communicating and storing programming material in a trusted domain
US8312267B2 (en) 2004-07-20 2012-11-13 Time Warner Cable Inc. Technique for securely communicating programming content
US8520850B2 (en) 2006-10-20 2013-08-27 Time Warner Cable Enterprises Llc Downloadable security and protection methods and apparatus
US8732854B2 (en) 2006-11-01 2014-05-20 Time Warner Cable Enterprises Llc Methods and apparatus for premises content distribution
US20080154626A1 (en) * 2006-12-20 2008-06-26 Microsoft Corporation Aggregating and sharing trust-owned media
US20080163307A1 (en) * 2006-12-29 2008-07-03 Coburn Matthew J Digital content access
US8621540B2 (en) 2007-01-24 2013-12-31 Time Warner Cable Enterprises Llc Apparatus and methods for provisioning in a download-enabled system
US8364778B2 (en) * 2007-04-11 2013-01-29 The Directv Group, Inc. Method and system for using a website to perform a remote action on a set top box with a secure authorization
US8935718B2 (en) * 2007-05-22 2015-01-13 Apple Inc. Advertising management method and system
US9727562B2 (en) 2007-07-26 2017-08-08 The Directv Group, Inc. Method and system for performing multi-level program guide category searches
US20090031346A1 (en) * 2007-07-26 2009-01-29 The Directv Group, Inc. Method and system for populating a menu structure on a user device
US20090031369A1 (en) * 2007-07-26 2009-01-29 The Directv Group, Inc. Method and system for ordering video content from an interactive interface
US9693106B2 (en) * 2007-07-26 2017-06-27 The Directv Group, Inc. Method and system for preordering content in a user device associated with a content processing system
US8856835B2 (en) * 2007-07-26 2014-10-07 The Directv Group, Inc. Method and system for associating content and content information in a menu structure
US8707361B2 (en) 2007-10-13 2014-04-22 The Directv Group, Inc. Method and system for quickly recording linear content from an interactive interface
US8046802B2 (en) * 2007-10-13 2011-10-25 The Directv Group, Inc. Method and system for ordering and prioritizing the downloading of content from an interactive interface
US9824389B2 (en) * 2007-10-13 2017-11-21 The Directv Group, Inc. Method and system for confirming the download of content at a user device
US20090099858A1 (en) * 2007-10-13 2009-04-16 Jeffs Alistair E Method and system for ordering content from a first device for a selected user device through an interactive interface
US8561114B2 (en) * 2007-10-13 2013-10-15 The Directv Group, Inc. Method and system for ordering video content from a mobile device
US9256654B2 (en) * 2007-12-07 2016-02-09 Microsoft Technology Licensing, Llc Dynamic schema content server
US8166508B2 (en) * 2008-01-04 2012-04-24 Apple Inc. Content rental system
US8677430B2 (en) 2008-01-04 2014-03-18 Apple, Inc. Content rental system
US10827066B2 (en) * 2008-08-28 2020-11-03 The Directv Group, Inc. Method and system for ordering content using a voice menu system
US20100057583A1 (en) * 2008-08-28 2010-03-04 The Directv Group, Inc. Method and system for ordering video content using a link
US9866609B2 (en) 2009-06-08 2018-01-09 Time Warner Cable Enterprises Llc Methods and apparatus for premises content distribution
US9602864B2 (en) 2009-06-08 2017-03-21 Time Warner Cable Enterprises Llc Media bridge apparatus and methods
US10244097B2 (en) 2009-10-08 2019-03-26 Pairable, Inc. Method and device to set household parameters based on the movement of items
US8570168B2 (en) * 2009-10-08 2013-10-29 Bringrr Systems, Llc System, method and device to interrogate for the presence of objects
US20110202863A1 (en) * 2010-02-18 2011-08-18 Corrallo Charles Shane Computer Entertainment Tracker Application for Limiting Use of Specific Computer Applications and Method of Use
US9928309B2 (en) * 2010-06-28 2018-03-27 Nokia Technologies Oy Handling content associated with content identifiers
US9906838B2 (en) 2010-07-12 2018-02-27 Time Warner Cable Enterprises Llc Apparatus and methods for content delivery and message exchange across multiple content delivery networks
US9015270B2 (en) * 2010-10-08 2015-04-21 Time Warner Cable Enterprises Llc Apparatus and methods for enforcing content protection rules during data transfer between devices
CN103262109A (en) * 2010-12-14 2013-08-21 惠普发展公司,有限责任合伙企业 Selecting web page content based on user permission for collecting user-elected content
US9129322B2 (en) * 2010-12-29 2015-09-08 Amazon Technologies, Inc. Electronic book rentals
US20140075583A1 (en) * 2012-09-10 2014-03-13 Apple Inc. Management of media items
US9565472B2 (en) 2012-12-10 2017-02-07 Time Warner Cable Enterprises Llc Apparatus and methods for content transfer protection
US20140164892A1 (en) * 2012-12-11 2014-06-12 Microsoft Corporation Consuming content incrementally
US20140282786A1 (en) 2013-03-12 2014-09-18 Time Warner Cable Enterprises Llc Methods and apparatus for providing and uploading content to personalized network storage
US9066153B2 (en) 2013-03-15 2015-06-23 Time Warner Cable Enterprises Llc Apparatus and methods for multicast delivery of content in a content delivery network
US10368255B2 (en) 2017-07-25 2019-07-30 Time Warner Cable Enterprises Llc Methods and apparatus for client-based dynamic control of connections to co-existing radio access networks
US9313568B2 (en) 2013-07-23 2016-04-12 Chicago Custom Acoustics, Inc. Custom earphone with dome in the canal
US9336537B2 (en) 2014-03-06 2016-05-10 Catalina Marketing Corporation System and method of providing a particular number of distributions of media content through a plurality of distribution nodes
US20150281119A1 (en) * 2014-03-26 2015-10-01 United Video Properties, Inc. Methods and systems for transferring authorization to access media content between multiple user devices
US9621940B2 (en) 2014-05-29 2017-04-11 Time Warner Cable Enterprises Llc Apparatus and methods for recording, accessing, and delivering packetized content
US11540148B2 (en) 2014-06-11 2022-12-27 Time Warner Cable Enterprises Llc Methods and apparatus for access point location
US9935833B2 (en) 2014-11-05 2018-04-03 Time Warner Cable Enterprises Llc Methods and apparatus for determining an optimized wireless interface installation configuration
US10667008B1 (en) 2014-12-18 2020-05-26 The Directv Group, Inc. Method and system for setting and receiving user notifications for content available far in the future
US9986578B2 (en) 2015-12-04 2018-05-29 Time Warner Cable Enterprises Llc Apparatus and methods for selective data network access
US9918345B2 (en) 2016-01-20 2018-03-13 Time Warner Cable Enterprises Llc Apparatus and method for wireless network services in moving vehicles
US10492034B2 (en) 2016-03-07 2019-11-26 Time Warner Cable Enterprises Llc Apparatus and methods for dynamic open-access networks
US10164858B2 (en) 2016-06-15 2018-12-25 Time Warner Cable Enterprises Llc Apparatus and methods for monitoring and diagnosing a wireless network
US10645547B2 (en) 2017-06-02 2020-05-05 Charter Communications Operating, Llc Apparatus and methods for providing wireless service in a venue
US10638361B2 (en) 2017-06-06 2020-04-28 Charter Communications Operating, Llc Methods and apparatus for dynamic control of connections to co-existing radio access networks
US11375043B2 (en) * 2019-03-06 2022-06-28 Citizen Watch Co., Ltd. Program management system, external device and terminal device for controlling a program developer's ability to access, publish and manage marketing of a program
US11800338B2 (en) * 2020-12-29 2023-10-24 Good Way Technology Co., Ltd. Management system, device, and server for controlling mesh network

Citations (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884028A (en) * 1994-07-29 1999-03-16 International Business Machines Corporation System for the management of multiple time-critical data streams
US20030040962A1 (en) * 1997-06-12 2003-02-27 Lewis William H. System and data management and on-demand rental and purchase of digital data products
US6584450B1 (en) * 2000-04-28 2003-06-24 Netflix.Com, Inc. Method and apparatus for renting items
US20040068451A1 (en) * 2002-10-07 2004-04-08 Gamefly, Inc. Method and apparatus for managing demand and inventory
US20040133923A1 (en) * 2002-08-21 2004-07-08 Watson Scott F. Digital home movie library
JP2004287514A (en) * 2003-03-19 2004-10-14 Fuji Xerox Co Ltd Electronic library server and electronic library service system
US20050192099A1 (en) * 2000-12-07 2005-09-01 Igt Secured virtual network in a gaming environment
US20050197855A1 (en) * 2004-02-26 2005-09-08 Nudd Geoffrey H. Method and apparatus for renting items
US20070005466A1 (en) * 2005-06-30 2007-01-04 Capital One Financial Corp. Systems and methods for managing a financial account that provides intangible rewards

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5884028A (en) * 1994-07-29 1999-03-16 International Business Machines Corporation System for the management of multiple time-critical data streams
US20030040962A1 (en) * 1997-06-12 2003-02-27 Lewis William H. System and data management and on-demand rental and purchase of digital data products
US6584450B1 (en) * 2000-04-28 2003-06-24 Netflix.Com, Inc. Method and apparatus for renting items
US7024381B1 (en) * 2000-04-28 2006-04-04 Netflix, Inc. Approach for renting items to customers
US20050192099A1 (en) * 2000-12-07 2005-09-01 Igt Secured virtual network in a gaming environment
US20040133923A1 (en) * 2002-08-21 2004-07-08 Watson Scott F. Digital home movie library
US20040068451A1 (en) * 2002-10-07 2004-04-08 Gamefly, Inc. Method and apparatus for managing demand and inventory
JP2004287514A (en) * 2003-03-19 2004-10-14 Fuji Xerox Co Ltd Electronic library server and electronic library service system
US20050197855A1 (en) * 2004-02-26 2005-09-08 Nudd Geoffrey H. Method and apparatus for renting items
US20070005466A1 (en) * 2005-06-30 2007-01-04 Capital One Financial Corp. Systems and methods for managing a financial account that provides intangible rewards

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Gnatek, T., "Libraries Reach Out, Online," New York Times, p. G1, Dec. 9, 2004. *
Jantz, R., "E-Books and New Library Service Models: An Analysis of the Impact of E-Book Technology on Academic Libraries," Information Technology & Libraries, vol. 20, No. 2, pp. 104-113, Jun. 2001. *

Cited By (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10932015B2 (en) * 2006-10-31 2021-02-23 Level 3 Communications, Llc Automatic termination path configuration
US20100114820A1 (en) * 2008-10-27 2010-05-06 International Business Machines Corporation Electronic library book
US9852218B1 (en) 2010-01-01 2017-12-26 Joseph Alan Epstein System and method for distributing media via portable storage
US20120090032A1 (en) * 2010-10-06 2012-04-12 Victor Trinklein Webtextbooks
CN103415867A (en) * 2011-03-09 2013-11-27 苹果公司 Intelligent delivery and acquistion of digital assets
US10600139B2 (en) 2011-04-29 2020-03-24 American Greetings Corporation Systems, methods and apparatus for creating, editing, distributing and viewing electronic greeting cards
US20190098535A1 (en) * 2016-05-26 2019-03-28 Kyocera Corporation Network apparatus
US10904799B2 (en) * 2016-05-26 2021-01-26 Kyocera Corporation Base station and method used in a base station
US20170351877A1 (en) * 2016-06-03 2017-12-07 Honeywell International Inc. System and method for auditing file access to secure media by nodes of a protected system
US10643007B2 (en) * 2016-06-03 2020-05-05 Honeywell International Inc. System and method for auditing file access to secure media by nodes of a protected system
US11425170B2 (en) 2018-10-11 2022-08-23 Honeywell International Inc. System and method for deploying and configuring cyber-security protection solution using portable storage device

Also Published As

Publication number Publication date
US20070174888A1 (en) 2007-07-26

Similar Documents

Publication Publication Date Title
US7860798B2 (en) Electronic delivery and management of digital media items
US8464066B1 (en) Method and system for sharing segments of multimedia data
US11915215B2 (en) System and apparatus for reselling digital media rights
US20200074046A1 (en) Method, system, and device for license-centric content consumption
US10430770B2 (en) System and method for distributing digital rights management digital content in a controlled network ensuring digital rights
US9886594B1 (en) Online electronic health record
US9349021B1 (en) Restricting use of a digital item stored in a client computer by sending an instruction from a server computer via a network
US8768850B2 (en) Method, system, and device for license-centric content consumption
US9064276B2 (en) Service for managing digital content resales
US9053482B2 (en) Service for managing digital content licenses
KR100621747B1 (en) Method and System for Subscription Digital Rights Management
US8561151B2 (en) Mobile software entitlements manager
US20090260067A1 (en) Method and system for legitimate lending and sharing of digital copyrighted content items over a data network
US8806208B2 (en) Apparatuses and methods for enabling a user to consume protected contents of a content provider
CN104427358A (en) Fast-expiring licenses used to speculatively authorize access to streaming media content
JP2008536197A (en) System and method for transferring media rights under predetermined conditions
EP1829270A2 (en) Method, system, and device for license-centric content consumption
US20090064344A1 (en) Method and apparatus for managing digital rights management rights objects
US20160239675A1 (en) System and method for permission based digital content syndication, monetization, and licensing with access control by the copyright holder
US20050108361A1 (en) Method and system for content delivery
US20170017801A1 (en) Means for managing rights to follow for digital objects
JP2012155486A (en) Content lending and borrowing system
EP1828918A1 (en) Method, system, and device for license-centric content consumption
KR20120015732A (en) User terminal, server and method for contents marketing
JP6047076B2 (en) Device with DRM system and license repository

Legal Events

Date Code Title Description
AS Assignment

Owner name: APPLE COMPUTER, INC., CALIFORNIA

Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNOR:RUBINSTEIN, JON;REEL/FRAME:017502/0129

Effective date: 20060120

AS Assignment

Owner name: APPLE INC.,CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:APPLE COMPUTER, INC.;REEL/FRAME:019143/0023

Effective date: 20070109

Owner name: APPLE INC., CALIFORNIA

Free format text: CHANGE OF NAME;ASSIGNOR:APPLE COMPUTER, INC.;REEL/FRAME:019143/0023

Effective date: 20070109

FEPP Fee payment procedure

Free format text: PAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITY

STCF Information on status: patent grant

Free format text: PATENTED CASE

FPAY Fee payment

Year of fee payment: 4

MAFP Maintenance fee payment

Free format text: PAYMENT OF MAINTENANCE FEE, 8TH YEAR, LARGE ENTITY (ORIGINAL EVENT CODE: M1552)

Year of fee payment: 8

MAFP Maintenance 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