Apparatus and method for skipping songs without delay
First Claim
1. An apparatus for playing a pre-determined sequence of content segments, comprising:
- a processor; and
a memory that stores at least one control program usable by the processor to control the playing of a predetermined sequence of content segments, and wherein the apparatus is configured to;
in response to initiation of play of a content segment, initiate downloading to a pre-buffer cache of a portion of each of a number of content segments which are, in the pre-determined sequence, subsequent to the playing content segment;
in response to skipping to a target content segment of the predetermined sequence of content segments whose portion has been downloaded to the pre-buffer cache, initiate play of the downloaded portion of the target content segment; and
towhile playing the downloaded portion of the target content segment, initiate downloading of the rest of the target content segment,wherein the pre-determined sequence of content segments is scheduled by a multimedia scheduler configured to schedule content segments for network broadcast, and wherein the multimedia scheduler comprises;
at least one work manager for each of a plurality of channels serviced, the work manager including at least one producer thread, a task queue and at least one worker thread; and
one or more scheduler objects associated with each producer thread, wherein the work manager and associated scheduler objects create and maintain a broadcast schedule for each of the channels according to predefined criteria, wherein said at least one producer thread checks a channel at configurable intervals and increments the channel'"'"'s schedule by generating a work request and placing it in the task queue, wherein the worker threads execute the work requests, and wherein the multimedia scheduler is scalable to service the plurality of broadcast channels and/or services simultaneously.
7 Assignments
0 Petitions

Accused Products

Abstract
In an Internet based personalized radio, where a user has a pre-selected list of songs to be played in a particular order, the invention provides an apparatus and method allowing the user to skip one or more songs without having an unintended delay between skips. This is accomplished by pre-buffering the first ten seconds of each of the next several songs on the list so that, should the user choose to skip to any of the next several songs, the pre-buffered ten seconds of the target song is already available to be played. The apparatus starts to play the pre-buffered port of the target song and starts to download the rest of it at the same time. Because the initial buffering time for the rest of the target song is less than ten seconds, the target song is played smoothly.
290 Citations
Intelligent Music Track Selection in a Networked Environment | ||
Patent #
US 20110126114A1
Filed 10/25/2010
|
Current Assignee
Bose Corporation
|
Original Assignee
Bose Corporation
|
Flexible billing architecture | ||
Patent #
US 8,010,082 B2
Filed 10/19/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Managing user-to-user contact with inferred presence information | ||
Patent #
US 8,069,166 B2
Filed 02/27/2006
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Multiple data store authentication | ||
Patent #
US 8,064,583 B1
Filed 09/21/2006
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
MULTIMEDIA PLAYING METHOD AND APPARATUS USING THE SAME | ||
Patent #
US 20100138011A1
Filed 03/10/2009
|
Current Assignee
Ite Tech
|
Original Assignee
Ite Tech
|
Reducing network and battery consumption during content delivery and playback | ||
Patent #
US 20090193338A1
Filed 03/31/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for loading and playing | ||
Patent #
US 20060179402A1
Filed 01/30/2006
|
Current Assignee
VIA Technologies Incorporated
|
Original Assignee
VIA Technologies Incorporated
|
Secure end-to-end transport through intermediary nodes | ||
Patent #
US 8,127,342 B2
Filed 09/23/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Provisioning applications for a mobile device | ||
Patent #
US 8,078,158 B2
Filed 06/26/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Provisioning of e-mail settings for a mobile terminal | ||
Patent #
US 8,116,214 B2
Filed 11/30/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile virtual network operator | ||
Patent #
US 8,107,921 B2
Filed 01/11/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Application and network-based long poll request detection and cacheability assessment therefor | ||
Patent #
US 8,166,164 B1
Filed 10/14/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Multimedia playing method and apparatus using the same | ||
Patent #
US 8,185,223 B2
Filed 03/10/2009
|
Current Assignee
Ite Tech
|
Original Assignee
Ite Tech
|
Cache defeat detection and caching of content addressed by identifiers intended to defeat cache | ||
Patent #
US 8,190,701 B2
Filed 11/01/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Application and network-based long poll request detection and cacheability assessment therefor | ||
Patent #
US 8,291,076 B2
Filed 03/05/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Social caching for device resource sharing and management | ||
Patent #
US 8,316,098 B2
Filed 04/19/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Distributed management of keep-alive message signaling for mobile network resource conservation and optimization | ||
Patent #
US 8,326,985 B2
Filed 11/01/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
System and method for a mobile device to use physical storage of another device for caching | ||
Patent #
US 8,356,080 B2
Filed 07/20/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Electronic-mail filtering for mobile devices | ||
Patent #
US 8,364,181 B2
Filed 12/10/2007
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Context aware data presentation | ||
Patent #
US 8,412,675 B2
Filed 02/24/2006
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Aligning data transfer to optimize connections established for transmission over a wireless network | ||
Patent #
US 8,417,823 B2
Filed 11/18/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Flexible real-time inbox access | ||
Patent #
US 8,438,633 B1
Filed 12/18/2006
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and Method for Low-Latency Content Streaming | ||
Patent #
US 20130132507A1
Filed 02/28/2011
|
Current Assignee
Adobe Inc.
|
Original Assignee
Sheng Wei, Viswanathan Swaminathan, Srinivas R. Manapragada
|
System And Method For Optimizing Transfers Of Downloadable Content | ||
Patent #
US 20130132509A1
Filed 11/21/2011
|
Current Assignee
Sony Interactive Entertainment LLC
|
Original Assignee
Sony Computer Entertainment America LLC
|
Publishing data in an information community | ||
Patent #
US 8,468,126 B2
Filed 12/14/2005
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Distributed caching in a wireless network of content delivered for a mobile application over a long-held request | ||
Patent #
US 8,484,314 B2
Filed 10/14/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Provisioning applications for a mobile device | ||
Patent #
US 8,494,510 B2
Filed 12/06/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile network background traffic data management with optimized polling intervals | ||
Patent #
US 8,539,040 B2
Filed 02/28/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Secure end-to-end transport through intermediary nodes | ||
Patent #
US 8,549,587 B2
Filed 02/14/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for executing commands that are non-native to the native environment of a mobile device | ||
Patent #
US 8,561,086 B2
Filed 05/17/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Detecting and preserving state for satisfying application requests in a distributed proxy and cache system | ||
Patent #
US 8,621,075 B2
Filed 04/27/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Cache state management on a mobile device to preserve user experience | ||
Patent #
US 8,635,339 B2
Filed 08/22/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Polling | ||
Patent #
US 8,693,494 B2
Filed 03/31/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Cache defeat detection and caching of content addressed by identifiers intended to defeat cache | ||
Patent #
US 8,700,728 B2
Filed 05/17/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Cross-platform event engine | ||
Patent #
US 8,209,709 B2
Filed 07/05/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Distributed system for cache defeat detection and caching of content addressed by identifiers intended to defeat cache | ||
Patent #
US 8,204,953 B2
Filed 11/01/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
STREAMING DATA ON DATA PROCESSES | ||
Patent #
US 20140136722A1
Filed 11/09/2012
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
STREAMING DATA ON DATA PROCESSES | ||
Patent #
US 20140136725A1
Filed 08/16/2013
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Electronic-mail filtering for mobile devices | ||
Patent #
US 8,738,050 B2
Filed 01/07/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for loading and playing | ||
Patent #
US 8,739,018 B2
Filed 01/30/2006
|
Current Assignee
VIA Technologies Incorporated
|
Original Assignee
VIA Technologies Incorporated
|
Mobile device equipped with mobile network congestion recognition to make intelligent decisions regarding connecting to an operator network | ||
Patent #
US 8,750,123 B1
Filed 07/31/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Maintaining an IP connection in a mobile network | ||
Patent #
US 8,761,756 B2
Filed 09/13/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks International Oy
|
Integrated messaging | ||
Patent #
US 8,774,844 B2
Filed 04/08/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Dynamic bandwidth adjustment for browsing or streaming activity in a wireless network based on prediction of user behavior when interacting with mobile applications | ||
Patent #
US 8,775,631 B2
Filed 02/25/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Timing of keep-alive messages used in a system for mobile network resource conservation and optimization | ||
Patent #
US 8,782,222 B2
Filed 09/05/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Application discovery on mobile devices | ||
Patent #
US 8,787,947 B2
Filed 06/18/2008
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Content delivery to a mobile device from a content service | ||
Patent #
US 8,793,305 B2
Filed 12/13/2007
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
System and method of a relay server for managing communications and notification between a mobile device and a web access server | ||
Patent #
US 8,799,410 B2
Filed 04/13/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Maintaining mobile terminal information for secure communications | ||
Patent #
US 8,805,334 B2
Filed 09/05/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Integrated messaging | ||
Patent #
US 8,805,425 B2
Filed 01/28/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile device power management in data synchronization over a mobile network with or without a trigger notification | ||
Patent #
US 8,811,952 B2
Filed 05/05/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Method and system for management of a virtual network connection without heartbeat messages | ||
Patent #
US 8,812,695 B2
Filed 04/03/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
System and method for tracking billing events in a mobile wireless network for a network operator | ||
Patent #
US 8,831,561 B2
Filed 04/28/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for making requests on behalf of a mobile device based on atomic processes for mobile network traffic relief | ||
Patent #
US 8,832,228 B2
Filed 04/26/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Distributed caching for resource and mobile network traffic management | ||
Patent #
US 8,838,783 B2
Filed 07/05/2011
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Flexible real-time inbox access | ||
Patent #
US 8,839,412 B1
Filed 09/13/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Web-based access to data objects | ||
Patent #
US 8,838,744 B2
Filed 01/28/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile traffic categorization and policy for network use optimization while preserving user experience | ||
Patent #
US 8,843,153 B2
Filed 11/01/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System for providing policy based content service in a mobile network | ||
Patent #
US 8,849,902 B2
Filed 06/24/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Predictive, multi-layer caching architectures | ||
Patent #
US 8,850,075 B2
Filed 07/06/2011
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Hierarchies and categories for management and deployment of policies for distributed wireless traffic optimization | ||
Patent #
US 8,861,354 B2
Filed 12/14/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Policy based content service | ||
Patent #
US 8,862,657 B2
Filed 01/25/2008
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System of redundantly clustered machines to provide failover mechanisms for mobile traffic management and network resource conservation | ||
Patent #
US 8,868,753 B2
Filed 12/06/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Provisioning of e-mail settings for a mobile terminal | ||
Patent #
US 8,873,411 B2
Filed 01/12/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Signaling optimization in a wireless network for traffic utilizing proprietary and non-proprietary protocols | ||
Patent #
US 8,874,761 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for optimizing transfers of downloadable content | ||
Patent #
US 8,886,752 B2
Filed 11/21/2011
|
Current Assignee
Sony Interactive Entertainment LLC
|
Original Assignee
Sony Computer Entertainment America
|
Mobile application traffic optimization | ||
Patent #
US 8,886,176 B2
Filed 07/22/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Optimization of resource polling intervals to satisfy mobile device requests | ||
Patent #
US 8,903,954 B2
Filed 11/22/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile virtual network operator | ||
Patent #
US 8,909,192 B2
Filed 08/11/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Bandwidth measurement | ||
Patent #
US 8,909,759 B2
Filed 10/12/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Detection and management of user interactions with foreground applications on a mobile device in distributed caching | ||
Patent #
US 8,909,202 B2
Filed 01/07/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
System and method for providing a network service in a distributed fashion to a mobile device | ||
Patent #
US 8,914,002 B2
Filed 08/11/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Optimization of mobile traffic directed to private networks and operator configurability thereof | ||
Patent #
US 8,918,503 B2
Filed 08/28/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Method and apparatus for intercepting events in a communication system | ||
Patent #
US RE45,348 E1
Filed 03/16/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Application and network-based long poll request detection and cacheability assessment therefor | ||
Patent #
US 8,966,066 B2
Filed 10/12/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Mobile device and method to utilize the failover mechanism for fault tolerance provided for mobile traffic management and network/device resource conservation | ||
Patent #
US 8,977,755 B2
Filed 12/06/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Monitoring mobile application activities for malicious traffic on a mobile device | ||
Patent #
US 8,984,581 B2
Filed 07/11/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Connection architecture for a mobile network | ||
Patent #
US 8,989,728 B2
Filed 09/07/2006
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Predictive content delivery | ||
Patent #
US 9,002,828 B2
Filed 01/02/2009
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Flexible and dynamic integration schemas of a traffic management system with various network operators for network traffic alleviation | ||
Patent #
US 9,009,250 B2
Filed 12/07/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Mobile network reporting and usage analytics system and method aggregated using a distributed traffic optimization system | ||
Patent #
US 9,021,021 B2
Filed 12/10/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
3D mobile user interface with configurable workspace management | ||
Patent #
US 9,043,731 B2
Filed 03/30/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile network traffic coordination across multiple applications | ||
Patent #
US 9,043,433 B2
Filed 05/25/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Intelligent rendering of information in a limited display environment | ||
Patent #
US 9,047,142 B2
Filed 12/16/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile network traffic coordination across multiple applications | ||
Patent #
US 9,049,179 B2
Filed 01/20/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Location-based operations and messaging | ||
Patent #
US 9,055,102 B2
Filed 08/02/2010
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Selective data compression by a distributed traffic management system to reduce mobile data traffic and signaling traffic | ||
Patent #
US 9,060,032 B2
Filed 05/09/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Proxy server associated with a mobile carrier for enhancing mobile traffic management in a mobile network | ||
Patent #
US 9,065,765 B2
Filed 10/08/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks Inc
|
Distributed implementation of dynamic wireless traffic policy | ||
Patent #
US 9,077,630 B2
Filed 07/08/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Device resources sharing for network resource conservation | ||
Patent #
US 9,084,105 B2
Filed 04/19/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Mobile network background traffic data management | ||
Patent #
US 9,100,873 B2
Filed 09/14/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Managing cache to prevent overloading of a wireless network due to user activity | ||
Patent #
US 9,131,397 B2
Filed 06/06/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Optimized and selective management of policy deployment to mobile clients in a congested network to prevent further aggravation of network congestion | ||
Patent #
US 9,161,258 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol | ||
Patent #
US 9,173,128 B2
Filed 03/06/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Method for operating a data receiver and data receiver, in particular in a vehicle | ||
Patent #
US 9,179,176 B2
Filed 06/26/2012
|
Current Assignee
Volkswagen AG
|
Original Assignee
Volkswagen AG
|
Dynamic categorization of applications for network access in a mobile network | ||
Patent #
US 9,203,864 B2
Filed 02/04/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Mobile device having content caching mechanisms integrated with a network operator for traffic alleviation in a wireless network and methods therefor | ||
Patent #
US 9,208,123 B2
Filed 12/07/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Streaming data on data processes | ||
Patent #
US 9,219,771 B2
Filed 08/16/2013
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Mobile device with application or context aware fast dormancy | ||
Patent #
US 9,241,314 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Automatic generation and distribution of policy information regarding malicious mobile traffic in a wireless network | ||
Patent #
US 9,239,800 B2
Filed 07/11/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Streaming data on data processes | ||
Patent #
US 9,246,964 B2
Filed 11/09/2012
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Extending user relationships | ||
Patent #
US 9,251,193 B2
Filed 10/28/2007
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Application or context aware fast dormancy | ||
Patent #
US 9,271,238 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Request and response characteristics based adaptation of distributed caching in a mobile network | ||
Patent #
US 9,275,163 B2
Filed 10/17/2011
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Radio-awareness of mobile device for sending server-side control signals using a wireless network optimized transport protocol | ||
Patent #
US 9,277,443 B2
Filed 12/07/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
User perceived gapless playback | ||
Patent #
US 9,282,403 B1
Filed 05/31/2013
|
Current Assignee
Amazon Technologies
|
Original Assignee
Amazon Technologies
|
System and method for a mobile device to use physical storage of another device for caching | ||
Patent #
US 9,300,719 B2
Filed 01/14/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks Inc
|
Systems and methods for application management of mobile device radio state promotion and demotion | ||
Patent #
US 9,307,493 B2
Filed 03/15/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
STREAMING DATA ON DATA PROCESSES | ||
Patent #
US 20160112485A1
Filed 12/21/2015
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
STREAMING DATA ON DATA PROCESSES | ||
Patent #
US 20160112480A1
Filed 12/21/2015
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
System and method for reduction of mobile network traffic used for domain name system (DNS) queries | ||
Patent #
US 9,325,662 B2
Filed 01/09/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
User as an end point for profiling and optimizing the delivery of content and data in a wireless network | ||
Patent #
US 9,326,189 B2
Filed 02/04/2013
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Wireless traffic management system cache optimization using http headers | ||
Patent #
US 9,330,196 B2
Filed 06/14/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Mobile application traffic optimization | ||
Patent #
US 9,407,713 B2
Filed 01/16/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Streaming data on data processes | ||
Patent #
US 9,503,489 B2
Filed 12/21/2015
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
STREAMING DATA ON DATA PROCESSES | ||
Patent #
US 20170093940A1
Filed 10/31/2016
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Streaming data on data processes | ||
Patent #
US 9,667,680 B2
Filed 12/21/2015
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Mobile device configured for communicating with another mobile device associated with an associated user | ||
Patent #
US 9,712,986 B2
Filed 03/22/2012
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Streaming data on data processes | ||
Patent #
US 9,723,043 B2
Filed 10/31/2016
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Predictive, multi-layer caching architectures | ||
Patent #
US 9,785,608 B2
Filed 09/30/2014
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Technology Licensing LLC
|
Operation modes for mobile traffic optimization and concurrent management of optimized and non-optimized traffic | ||
Patent #
US 9,832,095 B2
Filed 12/14/2012
|
Current Assignee
Seven Networks LLC
|
Original Assignee
Seven Networks LLC
|
Streaming data on data processes | ||
Patent #
US 10,033,781 B2
Filed 04/13/2017
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Apparatus, systems and methods for song play using a media device having a buffer | ||
Patent #
US 10,136,190 B2
Filed 05/20/2015
|
Current Assignee
Dish Technologies LLC
|
Original Assignee
Echostar Technologies LLC
|
Enhanced customer service for mobile carriers using real-time and historical mobile application and traffic or optimization data associated with mobile devices in a mobile network | ||
Patent #
US 10,263,899 B2
Filed 04/10/2013
|
Current Assignee
Seven Networks Inc
|
Original Assignee
Seven Networks LLC
|
Controller, storage device, and computer program product for writing and transfer process | ||
Patent #
US 10,366,003 B2
Filed 07/20/2016
|
Current Assignee
Toshiba Memory Corporation
|
Original Assignee
Toshiba Memory Corporation
|
Apparatus, systems and methods for song play using a media device having a buffer | ||
Patent #
US 10,440,438 B2
Filed 11/19/2018
|
Current Assignee
Dish Technologies LLC
|
Original Assignee
Dish Technologies LLC
|
Method for file management and an electronic device thereof | ||
Patent #
US 10,560,512 B2
Filed 05/10/2016
|
Current Assignee
Samsung Electronics Co. Ltd.
|
Original Assignee
Samsung Electronics Co. Ltd.
|
System and method of data communication | ||
Patent #
US 10,708,124 B1
Filed 12/31/2018
|
Current Assignee
Facebook Inc.
|
Original Assignee
Facebook Inc.
|
Apparatus, systems and methods for trick function viewing of media content | ||
Patent #
US 10,805,668 B2
Filed 05/20/2015
|
Current Assignee
Dish Technologies LLC
|
Original Assignee
Dish Technologies LLC
|
Digital content store system | ||
Patent #
US 7,493,289 B2
Filed 12/11/2003
|
Current Assignee
Callahan Cellular LLC
|
Original Assignee
AOL LLC
|
Digital Content Storage Process | ||
Patent #
US 20090164794A1
Filed 12/18/2008
|
Current Assignee
Tarquin Consulting Company LLC
|
Original Assignee
Tarquin Consulting Company LLC
|
MULTIMEDIA SCHEDULER | ||
Patent #
US 20090175591A1
Filed 08/11/2008
|
Current Assignee
Callahan Cellular LLC
|
Original Assignee
Tarquin Consulting Company LLC
|
Multimedia scheduler | ||
Patent #
US 7,412,532 B2
Filed 12/12/2003
|
Current Assignee
Callahan Cellular LLC
|
Original Assignee
AOL LLC
|
Method and apparatus for combining broadcast schedules and content on a digital broadcast-enabled client platform | ||
Patent #
US 7,185,352 B2
Filed 05/11/2001
|
Current Assignee
Intel Corporation
|
Original Assignee
Intel Corporation
|
Broadcast program capture and playback enhancement signal structure, receiver, and method | ||
Patent #
US 6,609,097 B2
Filed 04/19/2002
|
Current Assignee
Samsung Electronics Co. Ltd.
|
Original Assignee
Command Audio Corporation
|
Streaming media search and continuous playback of multiple media resources located on a network | ||
Patent #
US 6,725,275 B2
Filed 09/20/2002
|
Current Assignee
Friskit
|
Original Assignee
Friskit
|
Audiovisual content distribution system | ||
Patent #
US 6,366,914 B1
Filed 08/07/1998
|
Current Assignee
Thomson Licensing
|
Original Assignee
PRN Corp.
|
Method and computer program product for scheduling network communication packets originating from different flows having unique service requirements | ||
Patent #
US 6,247,061 B1
Filed 06/09/1998
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
System for scheduling multimedia sessions among a plurality of endpoint systems wherein endpoint systems negotiate connection requests with modification parameters | ||
Patent #
US 5,644,715 A
Filed 12/09/1994
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Scheduling-based hardware-software co-synthesis of heterogeneous distributed embedded systems | ||
Patent #
US 6,112,023 A
Filed 02/17/1998
|
Current Assignee
Lucent Technologies Inc.
|
Original Assignee
Lucent Technologies Inc.
|
Connected audio and other media objects | ||
Patent #
US 6,505,160 B1
Filed 05/02/2000
|
Current Assignee
Digimarc Corporation
|
Original Assignee
Digimarc Corporation
|
Dynamic hierarchical network resource scheduling for continuous media | ||
Patent #
US 6,041,354 A
Filed 09/08/1995
|
Current Assignee
Nokia of America Corporation
|
Original Assignee
Lucent Technologies Inc.
|
Stream scheduling system for real time stream server | ||
Patent #
US 5,956,321 A
Filed 03/15/1996
|
Current Assignee
Toshiba Corporation
|
Original Assignee
Toshiba Corporation
|
Scheduling storage accesses for multiple continuous media streams | ||
Patent #
US 6,438,630 B1
Filed 10/06/1999
|
Current Assignee
Oracle America Inc.
|
Original Assignee
Sun Microsystems Incorporated
|
Scheduling unit for scheduling service requests to cyclically provide services | ||
Patent #
US 6,453,316 B1
Filed 06/29/1998
|
Current Assignee
Matsushita Electric Industrial Company Limited
|
Original Assignee
Matsushita Electric Industrial Company Limited
|
Ripple scheduling for end-to-end global resource management | ||
Patent #
US 6,446,126 B1
Filed 05/12/1999
|
Current Assignee
Honeywell International Inc.
|
Original Assignee
Honeywell International Inc.
|
Relevance clause for computed relevance messaging | ||
Patent #
US 6,356,936 B1
Filed 05/20/1999
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
BigFix Inc.
|
Transmit scheduler for an asynchronous transfer mode network and method of operation | ||
Patent #
US 5,991,867 A
Filed 09/12/1996
|
Current Assignee
Sagemcom Broadband SAS
|
Original Assignee
Efficient Networks Inc.
|
Streaming media search and continuous playback of multiple media resources located on a network | ||
Patent #
US 6,519,648 B1
Filed 07/11/2000
|
Current Assignee
Friskit
|
Original Assignee
Friskit
|
System for selectively distributing music to a plurality of jukeboxes | ||
Patent #
US 5,959,945 A
Filed 04/04/1997
|
Current Assignee
PCMS Holdings Incorporated
|
Original Assignee
Advanced Technology Research SA CV
|
PSTN architecture for video-on-demand services | ||
Patent #
US 5,790,174 A
Filed 03/06/1996
|
Current Assignee
Verizon Patent and Licensing Incorporated
|
Original Assignee
Bell Atlantic Network Services Inc.
|
Inspector for computed relevance messaging | ||
Patent #
US 6,263,362 B1
Filed 07/09/1999
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
BigFix Inc.
|
Method of delivering seamless and continuous presentation of multimedia data files to a target device by assembling and concatenating multimedia segments in memory | ||
Patent #
US 5,996,015 A
Filed 10/31/1997
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Ripple scheduling for end-to-end global resource management | ||
Patent #
US 6,446,125 B1
Filed 03/28/1997
|
Current Assignee
Honeywell International Inc.
|
Original Assignee
Honeywell International Inc.
|
System for playback of network audio material on demand | ||
Patent #
US 6,502,194 B1
Filed 04/16/1999
|
Current Assignee
Cedar Lane Technologies Inc.
|
Original Assignee
Synetix Technologies
|
System and method for scheduling broadcast of and access to video programs and other data using customer profiles | ||
Patent #
US 6,088,722 A
Filed 12/24/1997
|
Current Assignee
Fred HERZ Patents LLC
|
Original Assignee
iReactor Inc.
|
Method and apparatus for priority-based jukebox queuing | ||
Patent #
US 6,421,651 B1
Filed 01/12/2000
|
Current Assignee
Facebook Inc.
|
Original Assignee
Walker Digital LLC
|
Scheduling and admission control policy for a continuous media server | ||
Patent #
US 5,528,513 A
Filed 11/04/1993
|
Current Assignee
Enterasys Networks Incorporated
|
Original Assignee
Digital Equipment Corporation
|
Method and apparatus to create encoded digital content | ||
Patent #
US 6,263,313 B1
Filed 11/30/1998
|
Current Assignee
Level 3 Communications LLC
|
Original Assignee
International Business Machines Corporation
|
Multichannel audio distribution system having portable receivers | ||
Patent #
US 6,300,880 B1
Filed 01/16/1996
|
Current Assignee
Pendragon Wireless LLC
|
Original Assignee
Philips Electronics North America Corporation
|
Trusted and secure techniques, systems and methods for item delivery and execution | ||
Patent #
US 6,185,683 B1
Filed 12/28/1998
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Method and apparatus for continuously and opportunistically driving an optimal broadcast schedule based on most recent client demand feedback from a distributed set of broadcast clients | ||
Patent #
US 7,020,893 B2
Filed 06/15/2001
|
Current Assignee
Intel Corporation
|
Original Assignee
Intel Corporation
|
Streaming media delivery on multicast networks for network and server bandwidth minimization and enhanced personalization | ||
Patent #
US 7,020,710 B2
Filed 06/21/2002
|
Current Assignee
Thomson Licensing
|
Original Assignee
Thomson Licensing
|
System for controlling and enforcing playback restrictions for a media file by splitting the media file into usable and unusable portions for playback | ||
Patent #
US 7,024,485 B2
Filed 11/08/2002
|
Current Assignee
R2 Solutions LLC
|
Original Assignee
Yahoo Inc.
|
Apparatus and method for skipping songs without delay | ||
Patent #
US 20060155400A1
Filed 12/11/2003
|
Current Assignee
Tarquin Consulting Company LLC
|
Original Assignee
Tarquin Consulting Company LLC
|
System for electronically distributing, displaying and controlling the play scheduling of advertising and other communicative media | ||
Patent #
US 7,136,906 B2
Filed 04/06/2001
|
Current Assignee
CS Software Holdings LLC
|
Original Assignee
Clarity Visual Systems Inc.
|
Information display system | ||
Patent #
US 20050056494A1
Filed 09/24/2004
|
Current Assignee
Captivate LLC
|
Original Assignee
Gannett Satellite Information Network Incorporated
|
Method and system for transforming content for execution on multiple platforms | ||
Patent #
US 20050114757A1
Filed 12/22/2004
|
Current Assignee
TiVo Corporation
|
Original Assignee
TVWorks LLC
|
Demand-based goal-driven scheduling system | ||
Patent #
US 6,910,220 B2
Filed 04/19/2002
|
Current Assignee
iHeartMedia Management Services Inc.
|
Original Assignee
Radio Computing Services Inc.
|
Systems, methods and apparatus for operating a broadcast network | ||
Patent #
US 20050159104A1
Filed 01/20/2004
|
Current Assignee
Westwood One LLC
|
Original Assignee
Excelsior Radio Networks LLC
|
Methods and systems for dynamically serving in-stream advertisements | ||
Patent #
US 6,950,623 B2
Filed 09/18/2001
|
Current Assignee
Provenance Asset Group LLC
|
Original Assignee
Loudeye Corporation
|
Information providing system and device constituting the same | ||
Patent #
US 20040064507A1
Filed 04/14/2003
|
Current Assignee
Matsushita Electric Industrial Company Limited
|
Original Assignee
Matsushita Electric Industrial Company Limited
|
Apparatus and method for skipping songs without delay | ||
Patent #
US 20040138948A1
Filed 10/16/2003
|
Current Assignee
Callahan Cellular LLC
|
Original Assignee
Tarquin Consulting Company LLC
|
Digital rights management system operating on computing device and having black box tied to computing device | ||
Patent #
US 6,772,340 B1
Filed 03/15/2000
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Digital video broadcast system | ||
Patent #
US 6,772,435 B1
Filed 11/03/1998
|
Current Assignee
Cisco Technology Incorporated
|
Original Assignee
NDS Group Limited
|
System and method for music search and discovery | ||
Patent #
US 20040177115A1
Filed 12/10/2003
|
Current Assignee
Tarquin Consulting Company LLC
|
Original Assignee
Tarquin Consulting Company LLC
|
Information distribution system for use in an elevator | ||
Patent #
US 20040222047A1
Filed 06/08/2004
|
Current Assignee
Captivate LLC
|
Original Assignee
Captivate Network Incorporated
|
Enhanced music services for television | ||
Patent #
US 20030023975A1
Filed 06/28/2002
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Live on-line advertisement insertion object oriented system and method | ||
Patent #
US 20030023973A1
Filed 03/22/2002
|
Current Assignee
Michael Harris, Brian Monson
|
Original Assignee
Michael Harris, Brian Monson
|
Controllable track-skipping | ||
Patent #
US 20030018797A1
Filed 06/20/2002
|
Current Assignee
Pandora Media LLC
|
Original Assignee
Yahoo Inc.
|
Closed-loop delivery to integrated download manager | ||
Patent #
US 20030014436A1
Filed 06/27/2001
|
Current Assignee
Rioport.Com Inc.
|
Original Assignee
Rioport.Com Inc.
|
Low power scheduling for multimedia systems | ||
Patent #
US 20030028659A1
Filed 06/29/2001
|
Current Assignee
Hewlett-Packard Development Company L.P.
|
Original Assignee
Hewlett-Packard Development Company L.P.
|
System and method for distributing network-based personal video | ||
Patent #
US 20030028893A1
Filed 08/01/2002
|
Current Assignee
MK Systems USA Inc.
|
Original Assignee
N2 Broadband Inc.
|
System and method for creating dynamic playlists | ||
Patent #
US 6,526,411 B1
Filed 11/15/2000
|
Current Assignee
Cedar Lane Technologies Inc.
|
Original Assignee
Relatable LLC
|
Presentation scheduling in digital cinema system | ||
Patent #
US 20030048418A1
Filed 08/30/2002
|
Current Assignee
Magnolia Licensing LLC
|
Original Assignee
Technicolor Digital Cinema LLC
|
System and method for gathering, personalized rendering, and secure telephonic transmission of audio data | ||
Patent #
US 6,529,586 B1
Filed 08/31/2000
|
Current Assignee
Oracle International Corporation
|
Original Assignee
Oracle Cable Inc.
|
Identification of redundancies and omissions among components of a web based architecture | ||
Patent #
US 6,536,037 B1
Filed 05/27/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
System, method and computer program product for restaurant food cost reporting in a supply chain | ||
Patent #
US 20030069768A1
Filed 03/23/2001
|
Current Assignee
Restaurant Services Incorporated
|
Original Assignee
Restaurant Services Incorporated
|
Piecemeal retrieval in an information services patterns environment | ||
Patent #
US 6,550,057 B1
Filed 08/31/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
Method for editing a playlist to read main data in a desired reproduction sequence | ||
Patent #
US 6,542,445 B2
Filed 03/04/2002
|
Current Assignee
Sony Corporation
|
Original Assignee
Sony Corporation
|
Browser based web site generation tool and run time engine | ||
Patent #
US 6,546,397 B1
Filed 12/02/1999
|
Current Assignee
Express Mobile Inc.
|
Original Assignee
Akira Technologies Inc.
|
System and method for scheduling interactive audiovisual presentations | ||
Patent #
US 20030121050A1
Filed 10/01/2002
|
Current Assignee
Trustees Of Columbia University In The City Of New York
|
Original Assignee
Trustees Of Columbia University In The City Of New York
|
User rating feedback loop to modify virtual channel content and/or schedules | ||
Patent #
US 20030135605A1
Filed 01/11/2002
|
Current Assignee
Intel Corporation
|
Original Assignee
Intel Corporation
|
Digital distribution system for dynamic media | ||
Patent #
US 20030126275A1
Filed 12/31/2001
|
Current Assignee
CHANGE MASTERS INCORPORATED
|
Original Assignee
CHANGE MASTERS INCORPORATED
|
Method of providing targeted advertisements to a computer mediated communications network | ||
Patent #
US 6,601,041 B1
Filed 09/12/2000
|
Current Assignee
Xandr Inc.
|
Original Assignee
Yale Robert Brown, Matthew Brown Walker
|
Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels | ||
Patent #
US 6,618,484 B2
Filed 07/05/2002
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Optical pickup device | ||
Patent #
US 6,618,424 B1
Filed 03/23/2000
|
Current Assignee
Sanyo Electric Company Limited
|
Original Assignee
Sanyo Electric Company Limited
|
Apparatus and method for scheduling of search for updates or downloads of a file | ||
Patent #
US 20030195974A1
Filed 03/25/2003
|
Current Assignee
Digital River Incorporated
|
Original Assignee
Marc A. Kukura, Kelly J. Wical, Joel A. Ronning
|
Trusted infrastructure support system, methods and techniques for secure electronic commerce transaction and rights management | ||
Patent #
US 6,658,568 B1
Filed 10/26/1999
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Client-side caching of streaming media content | ||
Patent #
US 20030236906A1
Filed 06/24/2002
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Obfuscation techniques for enhancing software security | ||
Patent #
US 6,668,325 B1
Filed 06/09/1998
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Initiating record from an electronic programming schedule | ||
Patent #
US 20020032907A1
Filed 11/16/2001
|
Current Assignee
Rovi Corporation
|
Original Assignee
Rovi Corporation
|
Systems and methods for secure transaction management and electronic rights protection | ||
Patent #
US 6,363,488 B1
Filed 06/07/1999
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Systems and methods for secure transaction management and electronic rights protection | ||
Patent #
US 6,389,402 B1
Filed 06/09/1999
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Server based broadcast system, apparatus and method and recording medium and software program relating to this system | ||
Patent #
US 20020059624A1
Filed 08/01/2001
|
Current Assignee
Matsushita Electric Industrial Company Limited
|
Original Assignee
Matsushita Electric Industrial Company Limited
|
Communication system, communication method, distribution apparatus, distribution method and terminal apparatus | ||
Patent #
US 20020059237A1
Filed 04/09/2001
|
Current Assignee
Sony Corporation
|
Original Assignee
Sony Corporation
|
Method & apparatus for intelligent and automatic preference detection of media content | ||
Patent #
US 20020078056A1
Filed 12/19/2000
|
Current Assignee
Intel Corporation
|
Original Assignee
Intel Corporation
|
Methods and systems for dynamically serving in-stream advertisements | ||
Patent #
US 20020068525A1
Filed 09/18/2001
|
Current Assignee
Provenance Asset Group LLC
|
Original Assignee
ACTIVATE.NET
|
Hybrid network based advertising system and method | ||
Patent #
US 20020082914A1
Filed 12/26/2000
|
Current Assignee
Real Media Inc.
|
Original Assignee
Real Media Inc.
|
Technique of generating a composite media stream | ||
Patent #
US 20020091761A1
Filed 01/10/2001
|
Current Assignee
Clear Channel Management Services LP
|
Original Assignee
Clear Channel Management Services LP
|
Pre-storing multiple programs with user control of playback | ||
Patent #
US 20020095510A1
Filed 06/08/2001
|
Current Assignee
Starz Entertainment LLC
|
Original Assignee
Starz Entertainment LLC
|
Systems and methods for secure transaction management and electronic rights protection | ||
Patent #
US 6,427,140 B1
Filed 09/03/1999
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Apparatus and method of using the same for internet and intranet broadcast channel creation and management | ||
Patent #
US 6,434,621 B1
Filed 03/31/1999
|
Current Assignee
HANNAWAY ASSOCIATES
|
Original Assignee
HANNAWAY ASSOCIATES
|
Refrigerating apparatus | ||
Patent #
US 20020108395A1
Filed 04/16/2002
|
Current Assignee
Hitachi Appliances Incorporated
|
Original Assignee
Makoto Fujita, Yoshikazu Amo
|
Method and apparatus for priority-based jukebox queuing | ||
Patent #
US 6,430,537 B1
Filed 03/31/1998
|
Current Assignee
Facebook Inc.
|
Original Assignee
Walker Digital LLC
|
Common interface for handling exception interface name with additional prefix and suffix for handling exceptions in environment services patterns | ||
Patent #
US 6,434,628 B1
Filed 08/31/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
System and method to provide media programs for synthetic channels | ||
Patent #
US 20020104099A1
Filed 12/19/2000
|
Current Assignee
ARRIS Enterprises LLC
|
Original Assignee
Digeo Incorporated
|
Hierarchical processing apparatus and hierarchical processing method for video and audio data | ||
Patent #
US 6,441,832 B1
Filed 11/26/1997
|
Current Assignee
Sony Corporation
|
Original Assignee
Sony Corporation
|
Multi-room entertainment system with in-room media player | ||
Patent #
US 6,438,450 B1
Filed 11/28/2000
|
Current Assignee
Sonifi Solutions Inc.
|
Original Assignee
Mark Dilorenzo
|
Methods and apparatus for scheduling, serving, receiving media-on-demand for clients, servers arranged according to constraints on resources | ||
Patent #
US 20020107968A1
Filed 01/23/2001
|
Current Assignee
Qualcomm Inc.
|
Original Assignee
Digital Fountain Incorporated
|
Method for creating, modifying, and playing a custom playlist, saved as a virtual CD, to be played by a digital audio/visual actuator device | ||
Patent #
US 6,446,080 B1
Filed 05/08/1998
|
Current Assignee
Ironworks Patents LLC
|
Original Assignee
Sony Electronics Inc., Sony Corporation
|
Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels | ||
Patent #
US 6,449,367 B2
Filed 02/23/2001
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Method of and a system for distributing interactive audiovisual works in a server and client system | ||
Patent #
US 20020158895A1
Filed 06/17/2002
|
Current Assignee
Yotaro Murase
|
Original Assignee
Yotaro Murase
|
System for delivering music and apparatus for receiving music data | ||
Patent #
US 20020152878A1
Filed 04/19/2002
|
Current Assignee
Matsushita Electric Industrial Company Limited
|
Original Assignee
Matsushita Electric Industrial Company Limited
|
Media player for distribution of music samples | ||
Patent #
US 20020152876A1
Filed 04/20/2001
|
Current Assignee
Sony Electronics Inc., Sony Corporation
|
Original Assignee
Sony Electronics Inc., Sony Corporation
|
Multimedia server | ||
Patent #
US 6,477,541 B1
Filed 03/21/2000
|
Current Assignee
Gula Consulting Limited Liability Company
|
Original Assignee
Koninklijke Philips N.V.
|
Method and system for broadcast transmission of media objects | ||
Patent #
US 6,477,707 B1
Filed 03/24/1998
|
Current Assignee
Hanger Solutions LLC
|
Original Assignee
The Fantastic Co. AG
|
Method and system for subscription digital rights management | ||
Patent #
US 20020198846A1
Filed 06/06/2002
|
Current Assignee
ContentGuard Holdings Inc.
|
Original Assignee
ContentGuard Holdings Inc.
|
Method and system for custom manufacture and delivery of a data product | ||
Patent #
US 6,496,744 B1
Filed 01/11/1999
|
Current Assignee
Hanger Solutions LLC
|
Original Assignee
David Philip Cook
|
Increased throughput in the manufacture of anionic polymers by reduction in polymers by reduction in polymer cement viscosity through the addition of metal alkyls | ||
Patent #
US 6,492,469 B2
Filed 03/26/2002
|
Current Assignee
Kraton Polymers US LLC
|
Original Assignee
Kraton Polymers US LLC
|
Method computer program product, and system for assessing the performance of a packet schedule | ||
Patent #
US 6,173,325 B1
Filed 07/31/1998
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Jet boat with improved hull design and engine placement | ||
Patent #
US 6,168,481 B1
Filed 08/20/1998
|
Current Assignee
GOLDEN MARDIKIAN LLC
|
Original Assignee
GOLDEN MARDIKIAN LLC
|
Automated client-based web application URL link extraction tool for use in testing and verification of internet web servers and associated applications executing thereon | ||
Patent #
US 6,185,701 B1
Filed 11/21/1997
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Integration of music from a personal library with real-time information | ||
Patent #
US 6,192,340 B1
Filed 10/19/1999
|
Current Assignee
CustomPlay LLC
|
Original Assignee
Max Abecassis
|
Method and apparatus for synchronization and scheduling of multiple data streams and real time tasks | ||
Patent #
US 6,195,701 B1
Filed 07/25/1996
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Audio program player including a dynamic program selection controller | ||
Patent #
US 6,199,076 B1
Filed 10/02/1996
|
Current Assignee
Personal Audio LLC
|
Original Assignee
James D Logan and Kerry M Logan Family Trust
|
System and method for a master scheduler | ||
Patent #
US 6,222,530 B1
Filed 08/21/1998
|
Current Assignee
Banbury Technologies LLC
|
Original Assignee
Corporate Media Partners
|
Method and system for allowing users to access and/or share media libraries, including multimedia collections of audio and video information via a wide area network | ||
Patent #
US 6,226,672 B1
Filed 05/02/1997
|
Current Assignee
Sony Electronics Inc., Sony Corporation
|
Original Assignee
Sony Electronics Inc., Sony Corporation
|
Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels | ||
Patent #
US 6,240,185 B1
Filed 02/10/1999
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Systems and methods for secure transaction management and electronic rights protection | ||
Patent #
US 6,237,786 B1
Filed 06/17/1999
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
CLIENT-SIDE SYSTEM FOR SCHEDULING DELIVERY OF WEB CONTENT AND LOCALLY MANAGING THE WEB CONTENT | ||
Patent #
US 20010003828A1
Filed 10/28/1997
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Modular media storage system and integrated player unit and method for accessing additional external information | ||
Patent #
US 6,243,328 B1
Filed 04/03/1998
|
Current Assignee
Sony Electronics Inc., Sony Corporation
|
Original Assignee
Sony Electronics Inc., Sony Corporation
|
Multimedia content delivery system and method | ||
Patent #
US 6,248,946 B1
Filed 03/01/2000
|
Current Assignee
Ijockey Inc.
|
Original Assignee
Ijockey Inc.
|
List building system | ||
Patent #
US 6,243,725 B1
Filed 05/21/1997
|
Current Assignee
Premier International Associates LLC
|
Original Assignee
Premier International Limited
|
Systems and methods for the secure transaction management and electronic rights protection | ||
Patent #
US 6,253,193 B1
Filed 12/09/1998
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Computerized solid state energy meter test system and method of testing | ||
Patent #
US 6,262,569 B1
Filed 11/26/1997
|
Current Assignee
Radian Research Inc.
|
Original Assignee
UTILITY TEST EQUIPMENT COMPANY
|
System and method for automatically categorizing and characterizing data derived from a computer-based system | ||
Patent #
US 6,266,788 B1
Filed 07/01/1998
|
Current Assignee
Aptean Inc.
|
Original Assignee
Support.com Incorporated
|
Interactive graphical user interface and method for previewing media products | ||
Patent #
US 20010030660A1
Filed 12/08/2000
|
Current Assignee
Roustem Zainoulline
|
Original Assignee
Roustem Zainoulline
|
Video and audio signal editing and transmitting apparatus and method of same | ||
Patent #
US 6,314,576 B1
Filed 02/04/1997
|
Current Assignee
Sony Corporation
|
Original Assignee
Sony Corporation
|
Method for providing communication services over a computer network system | ||
Patent #
US 6,332,163 B1
Filed 09/01/1999
|
Current Assignee
Accenture Global Services Limited
|
Original Assignee
Accenture LLP
|
Apparatus and method for testing computer systems | ||
Patent #
US 6,029,257 A
Filed 12/05/1997
|
Current Assignee
Vantage Point Technology Inc.
|
Original Assignee
Intergraph Corporation
|
Media playback device capable of shuffled playback based on a user's preferences | ||
Patent #
US 6,031,797 A
Filed 06/11/1998
|
Current Assignee
Snaptrack Incorporated
|
Original Assignee
Sony Electronics Inc., Sony Corporation
|
Virtual dynamic browsing system and method for automated web server and testing | ||
Patent #
US 6,044,398 A
Filed 11/21/1997
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
System and method for downloading music selections | ||
Patent #
US 6,067,562 A
Filed 09/14/1998
|
Current Assignee
DigiMedia Holdings Group LLC
|
Original Assignee
Robert J. Goldman
|
Assessing network performance without interference with normal network operations | ||
Patent #
US 6,061,722 A
Filed 12/23/1996
|
Current Assignee
Eacom Incorporated
|
Original Assignee
T.E. Network Inc.
|
Systems and methods for matching, selecting, narrowcasting, and/or classifying based on rights management and/or other information | ||
Patent #
US 6,112,181 A
Filed 11/06/1997
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Techniques for defining, using and manipulating rights management data structures | ||
Patent #
US 6,138,119 A
Filed 04/27/1999
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Systems and methods using cryptography to protect secure computing environments | ||
Patent #
US 6,157,721 A
Filed 08/12/1996
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Automated client-based web server stress tool simulating simultaneous multiple user server accesses | ||
Patent #
US 6,157,940 A
Filed 11/21/1997
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Method and apparatus for supplying requests to a scheduler in an input buffered multiport switch | ||
Patent #
US 6,160,812 A
Filed 05/04/1998
|
Current Assignee
WSOU Investments LLC
|
Original Assignee
Cabletron Systems Incorporated
|
Broadcast data radio system and receiver apparatus therefor | ||
Patent #
US 6,163,683 A
Filed 02/24/1999
|
Current Assignee
International Business Machines Corporation
|
Original Assignee
International Business Machines Corporation
|
Systems and methods for secure transaction management and electronic rights protection | ||
Patent #
US 5,892,900 A
Filed 08/30/1996
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Channel synchronized audio data compression and decompression for an in-flight entertainment system | ||
Patent #
US 5,907,827 A
Filed 01/23/1997
|
Current Assignee
Rockwell Collins Inc.
|
Original Assignee
Sony Transcom Incorporated, Sony Corporation
|
System and methods for secure transaction management and electronic rights protection | ||
Patent #
US 5,917,912 A
Filed 01/08/1997
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Systems and methods for secure transaction management and electronic rights protection | ||
Patent #
US 5,910,987 A
Filed 12/04/1996
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Systems and methods for secure transaction management and electronic rights protection | ||
Patent #
US 5,915,019 A
Filed 01/08/1997
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Video on demand system with a transmission schedule table in the video server including entries for client identifiers, video titles, and reproduction start times | ||
Patent #
US 5,913,039 A
Filed 01/17/1997
|
Current Assignee
Matsushita Electric Industrial Company Limited
|
Original Assignee
Matsushita Electric Industrial Company Limited
|
Techniques for defining using and manipulating rights management data structures | ||
Patent #
US 5,920,861 A
Filed 02/25/1997
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Downloading method for songs and advertisements | ||
Patent #
US 5,930,765 A
Filed 11/21/1997
|
Current Assignee
Martin Automatic Inc.
|
Original Assignee
John R. Martin
|
Periodic process scheduling method | ||
Patent #
US 5,944,778 A
Filed 03/26/1997
|
Current Assignee
Hitachi Ltd.
|
Original Assignee
Hitachi America Limited
|
Steganographic techniques for securely delivering electronic digital rights management control information over insecure communication channels | ||
Patent #
US 5,943,422 A
Filed 08/12/1996
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Systems and methods for secure transaction management and electronic rights protection | ||
Patent #
US 5,949,876 A
Filed 01/08/1997
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Group communications multiplexing system | ||
Patent #
US 5,956,491 A
Filed 04/01/1996
|
Current Assignee
Windy City Innovations LLC
|
Original Assignee
Peter K. Trzyna
|
Network time and work tracker | ||
Patent #
US 5,963,914 A
Filed 12/09/1997
|
Current Assignee
Rakuten Inc.
|
Original Assignee
Gary R. Skinner, Michael G. Lehman
|
Systems and methods for secure transaction management and electronic rights protection | ||
Patent #
US 5,982,891 A
Filed 11/04/1997
|
Current Assignee
Intertrust Technologies Corporation
|
Original Assignee
Intertrust Technologies Corporation
|
Network sales system | ||
Patent #
US 5,715,314 A
Filed 10/24/1994
|
Current Assignee
Soverain Software LLC
|
Original Assignee
Open Market Inc.
|
Method for streaming transmission of compressed music | ||
Patent #
US 5,734,119 A
Filed 12/19/1996
|
Current Assignee
HEADSPACE INC. NOW KNOWN AS BEATNIK INC.
|
Original Assignee
INVISION INTERACTIVE INC.
|
Video data streamer having scheduler for scheduling read request for individual data buffers associated with output ports of communication node to one storage node | ||
Patent #
US 5,761,417 A
Filed 09/08/1994
|
Current Assignee
Google LLC
|
Original Assignee
International Business Machines Corporation
|
Data transmission system for distributing video and music data | ||
Patent #
US 5,774,672 A
Filed 04/30/1997
|
Current Assignee
Brother Kogyo Kabushiki Kaisha, Xing Inc.
|
Original Assignee
Brother Kogyo Kabushiki Kaisha, Xing Inc.
|
Deadline driven disk scheduler method and apparatus with thresholded most urgent request queue scan window | ||
Patent #
US 5,787,482 A
Filed 07/31/1995
|
Current Assignee
Hewlett-Packard Development Company L.P.
|
Original Assignee
HP Inc.
|
Communications network system including acknowledgement indicating successful receipt of request for reserved communication slots and start time for said reserved communication slots | ||
Patent #
US 5,784,597 A
Filed 09/22/1995
|
Current Assignee
Hewlett-Packard Development Company L.P.
|
Original Assignee
HP Inc.
|
Method and system for editing digital audio information with music-like parameters | ||
Patent #
US 5,792,971 A
Filed 09/18/1996
|
Current Assignee
OPCODE SYSTEMS INC
|
Original Assignee
OPCODE SYSTEMS INC.
|
System for selective communication connection based on transaction pricing signals | ||
Patent #
US 5,802,502 A
Filed 04/26/1994
|
Current Assignee
British Telecommunications PLC
|
Original Assignee
British Telecommunications PLC
|
Programmable radio subscription system for receiving selectively defined information | ||
Patent #
US 5,819,160 A
Filed 09/18/1996
|
Current Assignee
ATT Inc.
|
Original Assignee
ATT Inc.
|
System and methods for selecting music on the basis of subjective content | ||
Patent #
US 5,616,876 A
Filed 04/19/1995
|
Current Assignee
Microsoft Technology Licensing LLC
|
Original Assignee
Microsoft Corporation
|
Audio system programmable for recording preselected audio broadcasts | ||
Patent #
US 5,671,195 A
Filed 05/31/1996
|
Current Assignee
Intellectual Science and Technology Incorporated
|
Original Assignee
Intellectual Science and Technology Incorporated
|
Multi-channel device having storage modules in a loop configuration with main control unit for controlling data rates and modifying data selectively and independently therein | ||
Patent #
US 5,517,672 A
Filed 02/01/1994
|
Current Assignee
Michael T. Britting, Thomas M. Reussner
|
Original Assignee
Michael T. Britting, Thomas M. Reussner
|
Electronic television program guide schedule system and method including virtual channels | ||
Patent #
US 5,585,866 A
Filed 06/07/1995
|
Current Assignee
UV Corporation
|
Original Assignee
News America Publications Inc, Telecommunications Of Colorado Inc.
|
Method and apparatus for high speed duplication of audio or digital signals | ||
Patent #
US 5,325,238 A
Filed 04/14/1993
|
Current Assignee
Sony Music Entertainment Incorporated
|
Original Assignee
Sony Music Entertainment Incorporated
|
Automated digital broadcast system | ||
Patent #
US 5,168,481 A
Filed 12/29/1989
|
Current Assignee
David L. Ham, Arthur C. Holly, Charles R. Culbertson
|
Original Assignee
David L. Ham, Arthur C. Holly, Charles R. Culbertson
|
29 Claims
-
1. An apparatus for playing a pre-determined sequence of content segments, comprising:
-
a processor; and a memory that stores at least one control program usable by the processor to control the playing of a predetermined sequence of content segments, and wherein the apparatus is configured to; in response to initiation of play of a content segment, initiate downloading to a pre-buffer cache of a portion of each of a number of content segments which are, in the pre-determined sequence, subsequent to the playing content segment; in response to skipping to a target content segment of the predetermined sequence of content segments whose portion has been downloaded to the pre-buffer cache, initiate play of the downloaded portion of the target content segment; and
towhile playing the downloaded portion of the target content segment, initiate downloading of the rest of the target content segment, wherein the pre-determined sequence of content segments is scheduled by a multimedia scheduler configured to schedule content segments for network broadcast, and wherein the multimedia scheduler comprises; at least one work manager for each of a plurality of channels serviced, the work manager including at least one producer thread, a task queue and at least one worker thread; and one or more scheduler objects associated with each producer thread, wherein the work manager and associated scheduler objects create and maintain a broadcast schedule for each of the channels according to predefined criteria, wherein said at least one producer thread checks a channel at configurable intervals and increments the channel'"'"'s schedule by generating a work request and placing it in the task queue, wherein the worker threads execute the work requests, and wherein the multimedia scheduler is scalable to service the plurality of broadcast channels and/or services simultaneously. - View Dependent Claims (2, 3, 4, 5, 26, 27, 28, 29)
-
-
6. A method for playing a pre-determined sequence of content segments, comprising:
-
in response to initiation of play of a a content segment on the local computer, downloading to the local computer a portion of each of a number of content segments which are, in the pre-determined sequence, subsequent to the playing content segment; pre-caching the downloaded portions in a pre-buffer cache of the local computer; in response to skipping from a playing content segment to a target content segment, checking whether the portion for the target content segment is in the pre-buffer cache; and if the portion of the target content segment is in the pre-buffer cache, initiating play of the portion of the target content segment from the pre-buffer cache, wherein the pre-determined sequence of content segments was pre-scheduled for network broadcast on one of a plurality of channels, including; creating and maintaining, by a work manager and associated scheduler objects, a broadcast schedule for each of the channels according to predefined criteria; checking, by at least one producer thread, the broadcast schedule for each of the channels at configurable intervals; incrementing, by at least one producer thread, the broadcast schedule for each of the channels by generating a work request and placing the work request in a task queue; and executing, by worker threads, the work requests. - View Dependent Claims (7, 8, 9, 10, 11, 12, 13, 14, 15)
-
-
16. A computer-readable storage medium, having instructions stored thereon that, if executed by a computing device, cause the computing device to perform operations for playing a predetermined sequence of content segments, comprising:
-
in response to initiation of play of a content segment on the computing device, downloading to the computing device, consecutively, a portion of each of a number of content segments which are, in the pre-determined sequence, subsequent to the playing content segment; pre-caching the downloaded portions in a pre-buffer cache of the computing device; in response to skipping from a playing content segment to a target content segment, checking whether the portion for the target content segment is in the pre-buffer cache; and if the portion of the target content segment is in the pre-buffer cache, initiating play of the portion of the target content segment from the pre-buffer cache, wherein the pre-determined sequence of content segments was pre-scheduled for network broadcast on one of a plurality of channels, including; creating and maintaining, by a work manager and associated scheduler objects, a broadcast schedule for each of the channels according to predefined criteria; checking, by at least one producer thread, the broadcast schedule for each of the channels at configurable intervals; incrementing, by at least one producer thread, the broadcast schedule for each of the channels by generating a work request and placing the work request in a task queue; and executing, by worker threads, the work requests. - View Dependent Claims (17, 18, 19, 20, 21, 22, 23, 24, 25)
-
1 Specification
This application claims priority to the U.S. provisional patent application Ser. No. 60/433,734, filed on Dec. 13, 2002, which application is incorporated herein in its entirety by this reference thereto.
1. Technical Field
This invention generally relates to Internet based personalized radio/music technology. More particularly, the invention relates to an apparatus and method allowing a user to skip one or more songs in a pre-selected play list without having an unintended delay between skips.
2. Description of the Related Art
Internet based personalized radio services, such as Radio@AOL and iSelect, provide users a high flexibility to choose programs and make their own play list using a graphical user interface which is part of the client application of the service. The client application sends a user'"'"'s request to the server and the server responds to the user'"'"'s request by returning the requested in compressed data. The client application along with the user'"'"'s browser executes a decompression algorithm to decompress the compressed data in real time and sequentially plays the data as it is transferred from the server to the user'"'"'s computer over the Internet. Using streaming technologies, the user'"'"'s computer does not need to download the entire file first and then play it. Rather, after downloading a minimal section of data into a buffer, the user'"'"'s computer reads from the buffer and plays the song or music represented by the data. The data already read by the computer is deleted from the buffer so as to ease the RAM requirements and maintain a balance between the write-in and the read-out data flows.
When the user'"'"'s computer plays a play list or a preset, which is either created by the user or by the service provider, the server sends and the user'"'"'s computer receives the data over the Internet in a programmed sequence so that there is no unintended delay between any two programs in the list. If the user does not interrupt, the computer plays the songs in the list one by one in an organized consecutive manner. However, when the user switches from one list or preset to another, the users actually interrupts the natural flow of the play list or the preset. In these circumstances, because the computer has to request that the server start to send the data for the target list or preset, several seconds of loading time is needed. Likewise, when the user wants to be actively be involved in the sequence of the play list or preset by skipping one or more songs, as it is illustrated in
Therefore, there is a need in the art to provide a solution to overcome the unintended delay or pause problem caused by a user'"'"'s skipping from one song to the other while a pre-determined list of selections is playing in a programmed sequence.
In an Internet based personalized radio, where a user has a pre-selected list of songs to be played in a particular order, the invention provides an apparatus and method allowing the user to skip one or more songs without having a delay between skips. This is accomplished by downloading and pre-caching, i.e. pre-buffering the first small portion of each of the next several songs on the play list so that, should the user choose to skip to any of the next several songs, the pre-buffered small portion of the target song is already available to be played and therefore there is no unintended delay between two songs. The apparatus starts to play the pre-buffered small portion of the target song and starts to download the rest of the target song at the same time. Because the system is so configured that the time for playing the pre-buffered small portion is longer than the initial buffering time for the rest of the target song, the entire target song is played smoothly. In other words, there is no unintended delay between the first small portion and the rest portion either.
In the preferred embodiment of the invention, the first small portion is approximately the first ten seconds of the song. This solution is advantageous because ten seconds of pre-buffering complies with various royalty requirements such that if the user skips before the ten seconds pre-buffered portion is played, a royalty is not accessed for listening to the song. In addition, avoiding of downloading the entire next song conserves bandwidth and memory.
Referring to the drawings, in particular to
Using clip based data streaming technologies, the user'"'"'s local computer 120 can play audio or video program in real time as it is being downloaded over the Internet as opposed to pre-storing the entire program in a local file. The Internet radio client application 109 coupled to the web browser 108 decompresses and plays the data as it is being transferred to the local computer 120 over the Internet. The piledriver is responsible for delivering, for example, an Ultravox formatted stream to the client application in a seamless fashion, in addition to raw data. Streaming audio or video avoids the unintended delay entailed in downloading an entire file and then playing it with a helper application. For the clip based streaming to work, the client side receiving the data must be able to collect the data and send it as a steady stream to the program that is processing the data and converting it to sound or pictures. This means that if the data does not come quickly enough, the presentation of the data will not be smooth. If the streaming client receives the data more quickly than required, it needs to save the excess data in a buffer, which is an area of memory in the write/read random access memory (RAM). Even when the write speed and the read speed are exactly same, to maintain a smooth data flow, a minimum amount of data in the buffer is necessary.
From a high level view, the piledriver receives a play list from an audio or video client application. It analyzes the play list and locally caches the first small portion (e.g. first ten seconds) for clip in the play list. The client can then connect to the piledriver data pump and retrieve the data stream using the HTTP or Ultravox 2.0 Protocols. The major functions of the piledriver include: (1) managing the retrieval and caching the pre-buffer for items in the play list; (2) managing the content in memory; (3) providing content to audio or video clients using raw data or the Ultravox 2.0 protocol from either a local cache or directly from a content-store; and (4) providing a stream of data to the audio or video client mimicking local disk functionality.
The piledriver takes a play list and attempts to present an uninterrupted stream of audio or video output to the client application. One of the primary features of the client application is that it allows the listener to abort a current song being played and request the start of the next clip in the play list.
In order to minimize the amount of time taken for skipping, the piledriver performs two operations in parallel. First, it requests the first URL in the play list from the UltraMODS/HTTP server. Once the pre-buffer data arrives, it waits for the audio or video client to start playing the clip, and also continues downloading the pre-buffer segments for each of the next clips in the play list, in order.
There are two reasons to request the pre-buffers in advance. First, it reduces the delay involved in requesting the clip and then obtaining the pre-buffer before being able to play the audio or video. Second, it causes UltraMODS/HTTP to obtain the media file from the content-store if it does not have it already, hopefully in advance of the new request by the client.
The functional components for the piledriver include a pre-buffer cache engine and a clip/stream retrial application program interface (API). The pre-buffer cache engine is responsible for caching clips in advance of playtime. The clip/retrial API contacts the Apache/UltraMODS/Cache engine for content. For illustration purpose, given below is an exemplary list of API calls and their functions:
pdInit
PILEDRIVERTYPE *pdInit(int cacheahead, int initringsize)
This is the first function called to initialize the piledriver. The number of clips to cache in advance and the size of the pre-buffer cache can be specified.
pdAddItem
PDFILEHANDLE pdAddItem(PILEDRIVERTYPE *piledriver, char *url, unsigned long start, unsigned long end)
Call to add a URL to the cache-ahead playlist. It can be configured to add the entire play list, or just enough to keep the cache-ahead system busy.
pdOpen
PDFILEHANDLE pdOpen(PILEDRIVERTYPE*piledriver, PDFILEHANDLE handle)
Call to open PFFILEHANDLE after the item has been added to the cache engine with pdAddItem. If the file is cached it returns the size of the pre-buffer, 0 if no pre-buffer, or −1 if there was an error related to the files availability.
pdReadRaw
int pdReadRaw(PILEDRIVERTYPE *piledriver, char *buffer, unsigned int toread, PDFILEHANDLE handle)
Call to an opened PFFILEHANDLE to retrieve data. The size of the data is returned, 0 if none, −1 if EOF (End of File) has been reached or the connection was broken.
pdReadCooked
int pdReadCooked(PILEDRIVERTYPE *piledriver, char *buffer, int toread, unsigned short *msgtype, PDFILEHANDLE handle)
Call to an opened PFFILEHANDLE to retrieve Ultravox messages. The size of the data is returned, and msgtype contains the clad and type of the Ultravox message. 0 is returned if no message is available, and −1 if EOF has been reached or the connection was broken.
pdClose
int pdClose(PILEDRIVERTYPE *piledriver, PDFILEHANDLE handle)
Call to close and remove the cache-ahead engine a PFFILEHANDLE. Always call this function even if the file failed to open.
pdDeInit
int pdDeInit(PILEDRIVERTYPE *piledriver)
Call to stop all cache-ahead transactions, close and remove all open PFFILEHANDLEs and free all used memory.
Error Notification
Call to make error notification. In the event of an error in any of the API functions, PILEDRIVERTYPE->error and PILEDRIVERTYPE->error-buffer contain the error code and the error string associated with the current error condition. Error codes are located in PDRIVER.H
However, when the user chooses to skip to a next song before the current song ends, the natural flow is interrupted because it takes time to send the skip command to the server which starts to transmit the data for the next song, and thus a new period of buffering time is required before the next song starts to play. For example, as illustrated in
Step 301: Start downloading the second song S_2 immediately after the initial buffering time 210 is over at the time t1. This step is called pre-buffering or pre-caching. The application is configured to download only the first few seconds of S_2. In the preferred embodiment, the application is configured to download the first ten seconds. After download the first ten seconds of the second song, start downloading the first ten seconds of the third song. The similar pre-buffering step goes so on and so forth. In the preferred embodiment, the application is configured to download and pre-buffer the first ten seconds of five songs subsequent to the current song which is being played. The total time required for pre-buffering five songs is about one minute. Usually a user would be able to decide whether or not to continue the song after listening to it for one minute. Therefore, although the application can be otherwise configured, pre-buffering five songs would be good enough for most of circumstances.
Step 302: Assuming the user decides to skip to a target song (for example S_5), the application first check whether there is a file characterized as the target song.
Step 303: If S_5 is identified in the buffer and because the first ten seconds of S_5 is already there, the system can start to read S_5 immediately. This means that there is no unintended delay between S_1 and S_5 unless the networking condition is abnormally bad or the user has exhausted the local cache. At the same time, the application asks the server to transmit the rest of S_5 to the buffer. Because the buffering time for the rest of S_5 is less than ten seconds, by the time the reader finishes reading the pre-buffered ten seconds of S_5, a sufficient part of the rest of S_5 is already there and is ready to be read. Therefore, there is no interruption between the first ten seconds of S_5 and the rest of S_5. In this way, the user experience is enhanced and waiting time is minimized.
Step 304: While the song (S_5) is being displayed, update Step 301 to keep five songs subsequent to the current one being pre-buffered.
Step 305: Play next song after S_5 is over.
Step 306: Repeat Step 302 if the user wants to skip while S_5 is being played.
Steps 301-306 represents the first loop in which the user'"'"'s play list is played without interruption even he sometimes decides to skip one or more songs.
This invention also helps to bring the song playing back into the first loop when an interruption occurs.
Step 310: If the check result in Step 302 is no (i.e. the target song S_5 is not identified in the buffer), the system requests that the server stop transmitting the prior song (S_1 in the example) and start transmitting the target song.
Step 311: Start to download the target song. Because the target song is not pre-buffered, an initial buffering time is required before the target song can be played. During initial buffering time, typically 5-6 seconds, the system is silent.
Step 312: Start to play the target song. This step leads to step 305 or step 306, and step 301. Because the system always attempts to have five next songs pre-buffered, if the target song is one of the pre-buffered, the natural flow of the play list will not be interrupted by skipping.
When the user skips to the target song, the pre-buffered songs which are prior to the target in the play list (e.g. S_2-S_4 if the user skipped from S_1 to S_5) will be deleted from the memory just as they had already been played.
If the application is configured to keep the skipped pre-buffered data for a short period of time, for example for 10 seconds, the user could, though not very much meaningful for many people, come back to any of the songs before it is deleted from the buffer.
Referring to
- as soon as a song starts to play, download, consecutively, a first small portion (e.g. ten seconds) of each of a number of songs which are, in the pre-determined sequence (i.e. play list), subsequent to the song which is currently playing; and
- pre-cache the downloaded small portions in a buffer which is an area of the user'"'"'s computer memory.
In step 330A, assuming the user skips to a song (called target song) in the play list before the song in playing is over, the computer checks whether the target song belongs to one of these pre-cached in step 330 by checking whether a file characterized as the target song exists in the buffer. If yes, go on to step 330B in
Referring to
- play the first small portion of the target song;
- start to download the rest of the target song (by identifying a ten seconds mark, for example); and
- delete any pre-cached song which is prior to the target song in the pre-determined sequence.
Note that as soon as the pre-cached portion of the target song starts playing, step 330 needs to be updated. In particular, if one or more songs subsequent to the target song are already pre-cached, skip them and download the subsequent ones, executively, to make up the pre-designated number (five, for example).
In step 337, when the playing of the pre-cached portion ends, immediately play the rest of the target song which is being downloaded from the server over the Internet.
In steps 338-339, if the user does not want to skip to another song while the target song is playing, then play the next song in the sequence, and at the same time, delete any pre-cached song which is prior to this song. As soon as this song starts playing, step 330 needs to be updated. Because all pre-cached files, which are prior to this song in the sequence, have been deleted from the buffer, the user'"'"'s computer must send request to the server to transmit the first small portion (e.g. ten seconds) of a designated number of songs, one by one. Then, the user'"'"'s computer downloads and pre-caches these files in the buffer.
If the user wants to skip to another song before the playing of the target song in steps 330B-337, the process continues on step 330A in
Now referring to
- send request to the server to stop transmitting the playing song and to start transmitting the new target song; and
- at the same time, delete the pre-cached portion for any song which is prior to the new target song in the designated sequence of songs.
Then, start to download the new target song in step 332. Because the new target song is not pre-cached, it takes a short period of buffering time (about five seconds) before the computer can play the song. This buffering time causes the interruption of the natural flow of the user'"'"'s play list. This invention helps minimize the occurrences of the interruption. If the user always skips to a pre-cached song, no interruption would occur at all unless the networking condition is abnormally bad or the user has exhausted the local cache.
In step 333, as soon as the buffer allows, play the new target song while it is being downloaded. At the same time, update step 300 by deleting outdated pre-cached files (i.e. the pre-cached portions of the songs prior to the new target song) and pre-buffering the subsequent songs. This step is important because it helps the user to return to the none-interruption loop.
Assuming the user does not to skip again while the new target song is playing, go to step 335 which includes the sub-steps of:
- as soon as the playing of the new target song ends, play the first small portion of the next song subsequent to the new target song;
- at the same time, download the rest of the “next song” (beginning from the ten seconds mark, for example); and
- update step 300, wherein if one or more songs subsequent to this “next song” are already pre-cached, skip them and download the subsequent ones, executively, to make up designated number.
Then, in step 336, play the rest of the “next song” as soon as the pre-cached portion ends.
If the user wants to skip again, the loop starting at step 300A will be repeated.
The pre-caching (i.e. the pre-buffering) solution described above is possible because the total capacity of the communication channel can be shared between several independent data streams using some kind of multiplexing, in which, each stream'"'"'s data rate may be limited to a fixed fraction of the total capacity. As it is illustrated in
The solution described above can also be used in Internet based video service and any other services where an initial buffering time is needed before the first section of the downloaded data can be read.
In the preferred embodiment of the invention, the first small portion is approximately the first ten seconds of the song. This solution is advantageous because ten seconds of pre-buffering complies with various royalty requirements such that if the user skips before the ten seconds pre-buffered portion is played, a royalty is not accessed for listening to the song. In addition, avoiding of downloading the entire next song conserves bandwidth and memory.
In view of the different possible embodiments to which the principle of this invention may be applied, it should be recognized that the preferred embodiment described herein with respect to the drawings is meant to the illustrative only and should not be taken as limiting the scope of the invention. One skilled in the art will readily appreciate that other applications may be substituted for those set forth herein without departing from the spirit and scope of the present invention.
Accordingly, the invention should only be limited by the claims included below.