Inventors list

Assignees list

Classification tree browser

Top 100 Inventors

Top 100 Assignees


Jack E. Freelander, Monroe US

Jack E. Freelander, Monroe, WA US

Patent application numberDescriptionPublished
20090319681Dynamic Throttling Based on Network Conditions - The dynamic management of download rates when downloading digital resources to clients. A server concurrently maintains download sessions with any number of clients, each download session for downloading a corresponding digital resource to a corresponding client. The download rates for the various download sessions are adjusted as download sessions are completed, and as new download sessions are added. As new download sessions are initiated, a minimum and target download rate may be calculated. The target download rate is the rate at which the server will attempt to download the requested digital resource to the client, and will depend on the total available bandwidth for use to download the digital resources.12-24-2009
20100235472SMOOTH, STATELESS CLIENT MEDIA STREAMING - An adaptive streaming system is described herein that provides a stateless connection between the client and server for streaming media playback in which the data is formatted in a manner that allows the client to make decisions and react more quickly to changing network conditions. The client requests uniform chunks of media from the server that include a portion of the media. The adaptive streaming system requests portions of a media file or of a live streaming event in small-sized chunks each having a distinguished URL. This allows streaming media data to be cached by existing Internet cache infrastructure. Each chunk contains metadata information that describes the encoding of the chunk and media content for playback by the client. The server may provide chunks in multiple encodings so that the client can switch quickly to chunks of a different bit rate or playback speed.09-16-2010
20100235494FLEXIBLE LOGGING, SUCH AS FOR A WEB SERVER - A flexible logging system is described herein that operates with a web server to provide activity logging in a way that is customizable to include a variety of data fields, can capture both client and server log information to a single location, and can provide data to an analysis engine directly to provide near real-time reporting. The system captures events within the web server as they occur and can provide reporting before the final response occurs. During request processing in the web server, server extension modules raise log events whenever an event occurs. The system matches the received data to a log definition and writes the data to any log that matches. Thus, the flexible logging system provides a rich, flexible, and fast platform for content providers and administrators to get a real-time view of the state of requests to their web servers.09-16-2010
20100235528DELIVERING CACHEABLE STREAMING MEDIA PRESENTATIONS - A smooth streaming system provides a stateless protocol between a client and server in which the server embeds incremental control information in media fragments. The server provides uniform media fragment responses to media fragment requests that are cacheable by existing Internet cache infrastructure. The smooth streaming system receives media data in fragments from one or more encoders, creates an index of each fragment, and stores the fragments. The server provides fragments to clients that contain metadata information describing the encodings available on the server and the encoding of the fragment. The server may also provide information within each fragment that allows the client to determine whether the client is requesting data too fast or too slow, so that the client can adapt its request rate to a cadence in tune with the rate at which the server is receiving encoder data.09-16-2010
20110080940LOW LATENCY CACHEABLE MEDIA STREAMING - A low latency streaming system provides a stateless protocol between a client and server with reduced latency. The server embeds incremental information in media fragments that eliminates the usage of a typical control channel. In addition, the server provides uniform media fragment responses to media fragment requests, thereby allowing existing Internet cache infrastructure to cache streaming media data. Each fragment has a distinguished Uniform Resource Locator (URL) that allows the fragment to be identified and cached by both Internet cache servers and the client's browser cache. The system reduces latency using various techniques, such as sending fragments that contain less than a full group of pictures (GOP), encoding media without dependencies on subsequent frames, and by allowing clients to request subsequent frames with only information about previous frames.04-07-2011
20110083144INTEGRATING CONTINUOUS AND SPARSE STREAMING DATA - A sparse streaming system provides a first-class means for sparse metadata to be added to streaming media presentations and to be delivered using an integrated data channel that is cacheable using readily available HTTP-based Internet caching infrastructure for increased scalability. The sparse streaming system stores a reference to a sparse track within a continuous track. If a continuous fragment arrives at the client that refers to a sparse fragment that the client has not yet retrieved, then the client requests the sparse fragment. In addition, each sparse fragment may include a backwards reference to the sparse fragment created immediately prior. The references in the continuous fragments make the client aware of new sparse track fragments, and the backwards references in the sparse track fragments ensure that the client has not missed any intervening sparse track fragments.04-07-2011
20110161485MANAGING MULTIPLE DYNAMIC MEDIA STREAMS - A coordinated adaptive streaming system provides a level of intelligence between adaptive streaming heuristics applied to multiple multi-bitrate streams playing on a client computer at the same time. The system receives a media event that includes multiple multi-bitrate streams and plays two or more of the streams. Each stream registers with the coordinated adaptive streaming system so that the system is aware of each of the streams. The system receives a priority indication from each stream that indicates the priority of the stream relative to other streams associated with the media event. The system uses the received priority indications to make adaptive streaming decisions. Thus, the coordinated adaptive streaming system provides playback that more closely aligns with a user's priorities and provides a higher quality experience to a user viewing multiple concurrent media streams.06-30-2011
20110302238VIRTUAL PLAYBACK SPEED MODIFICATION - A multispeed playback system is described herein that allows for playback of smooth streaming media presentations at speeds other than the normal speed or direction, while still using an underlying platform that does not natively support multispeed. The system provides frames to the underlying platform so that the platform is still playing 1× content while the system manipulates video and/or audio samples being fed to the platform to make rendered data look appropriately for a selected speed and direction. The system may feed the underlying platform frames at a faster rate or skip every other frame for faster playback, or may feed each frame to the underlying platform multiple times for slower playback. Thus, the multispeed playback system allows a client application developer to provide users with expected multispeed playback at the client without encoding multiple different streams at the server.12-08-2011

Patent applications by Jack E. Freelander, Monroe, WA US