Patents by Inventor Geqiang (Sam) Zhang
Geqiang (Sam) Zhang has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 10257587Abstract: 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.Type: GrantFiled: August 22, 2016Date of Patent: April 9, 2019Assignee: Microsoft Technology Licensing, LLCInventors: John A. Bocharov, Geqiang (Sam) Zhang, Krishna Prakash Duggaraju, Lin Liu, Anirban Roy, Jack E. Freelander, Vishal Sood
-
Publication number: 20160360297Abstract: 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.Type: ApplicationFiled: August 22, 2016Publication date: December 8, 2016Inventors: John A. Bocharov, Geqiang (Sam) Zhang, Krishna Prakash Duggaraju, Lin Liu, Anirban Roy, Jack E. Freelander, Vishal Sood
-
Patent number: 9438861Abstract: 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.Type: GrantFiled: November 5, 2009Date of Patent: September 6, 2016Assignee: Microsoft Technology Licensing, LLCInventors: John A. Bocharov, Geqiang (Sam) Zhang, Krishna Prakash Duggaraju, Lin Liu, Anirban Roy, Jack E. Freelander, Vishal Sood
-
Patent number: 8935382Abstract: 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.Type: GrantFiled: March 16, 2009Date of Patent: January 13, 2015Assignee: Microsoft CorporationInventors: Vishal Sood, Jack E. Freelander, Brian E. Blum, Geqiang (Sam) Zhang
-
Patent number: 8903984Abstract: 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.Type: GrantFiled: March 16, 2009Date of Patent: December 2, 2014Assignee: Microsoft CorporationInventors: Vishal Sood, Jack E. Freelander, Brian E. Blum, Geqiang (Sam) Zhang
-
Patent number: 8621044Abstract: 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.Type: GrantFiled: March 16, 2009Date of Patent: December 31, 2013Assignee: Microsoft CorporationInventors: Vishal Sood, Jack E. Freelander, Anirban Roy, Lin Liu, Geqiang (Sam) Zhang, Krishna Duggaraju, Sudheer Sirivara, John A. Bocharov
-
Patent number: 8555163Abstract: A streaming abstraction system is described herein that provides application developers a client software development kit (SDK) on top of which to build smooth streaming solutions. The system reduces development time considerably and abstracts platform specific intricacies and protocol handling on the client. In addition, the streaming abstraction system makes it possible to monetize streaming content with advanced features like advertising and analytics and provides advanced capabilities like multiple camera angles, diagnostics, and error handling. In some embodiments, the streaming abstraction system provides an intermediate layer that operates between an application and an underlying client media platform. The intermediate layer manages smooth streaming protocol handling as well as interactions with the platform-specific runtime.Type: GrantFiled: June 9, 2010Date of Patent: October 8, 2013Assignee: Microsoft CorporationInventors: Vishal Sood, Geqiang (Sam) Zhang, Lin Liu, Krishna Prakash Duggaraju, Sam J. George, Jack E. Freelander, Anirban Roy, John A. Bocharov, Jeffrey M. Wilcox, Raymond Cheng
-
Patent number: 8392748Abstract: A reliable streaming system increases reliability of live and on-demand streaming media events through a robust server architecture that allows fast failover and recovery in the event of network, hardware, or other failures. The system provides for failover of encoders, ingest servers, which receive encoded media data from encoders, and origin servers, which serve as the retrieval point of last resort for connecting clients. The system also provides a push proxy mechanism that allows one copy of data to feed redundant servers and pre-warm caches, saving on provisioned bandwidth. In addition, the system provides a distribution server role that allows content to be automatically syndicated to a region when needed. Thus, the reliable streaming system provides a streaming solution with no single point of failure and redundancy and fast failover built into the content network architecture.Type: GrantFiled: November 3, 2009Date of Patent: March 5, 2013Assignee: Microsoft CorporationInventors: John A. Bocharov, Geqiang (Sam) Zhang, Krishna Prakash Duggaraju, Lin Liu, Jimin Gao
-
Publication number: 20110307623Abstract: A streaming abstraction system is described herein that provides application developers a client software development kit (SDK) on top of which to build smooth streaming solutions. The system reduces development time considerably and abstracts platform specific intricacies and protocol handling on the client. In addition, the streaming abstraction system makes it possible to monetize streaming content with advanced features like advertising and analytics and provides advanced capabilities like multiple camera angles, diagnostics, and error handling. In some embodiments, the streaming abstraction system provides an intermediate layer that operates between an application and an underlying client media platform. The intermediate layer manages smooth streaming protocol handling as well as interactions with the platform-specific runtime.Type: ApplicationFiled: June 9, 2010Publication date: December 15, 2011Applicant: MICROSOFT CORPORATIONInventors: Sam J. George, Geqiang (Sam) Zhang, Lin Liu, Krishna Prakash Duggaraju, Vishal Sood, Jack E. Freelander, Anirban Roy, John A. Bocharov, Jeffrey M. Wilcox, Raymond Cheng
-
Publication number: 20110083037Abstract: A reliable streaming system increases reliability of live and on-demand streaming media events through a robust server architecture that allows fast failover and recovery in the event of network, hardware, or other failures. The system provides for failover of encoders, ingest servers, which receive encoded media data from encoders, and origin servers, which serve as the retrieval point of last resort for connecting clients. The system also provides a push proxy mechanism that allows one copy of data to feed redundant servers and pre-warm caches, saving on provisioned bandwidth. In addition, the system provides a distribution server role that allows content to be automatically syndicated to a region when needed. Thus, the reliable streaming system provides a streaming solution with no single point of failure and redundancy and fast failover built into the content network architecture.Type: ApplicationFiled: November 3, 2009Publication date: April 7, 2011Applicant: MICROSOFT CORPORATIONInventors: John A. Bocharov, Geqiang (Sam) Zhang, Krishna Prakash Duggaraju, Lin Liu, Jimin Gao
-
Publication number: 20110083144Abstract: 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.Type: ApplicationFiled: November 5, 2009Publication date: April 7, 2011Inventors: John A. Bocharov, Geqiang (Sam) Zhang, Krishna Prakash Duggaraju, Lin Liu, Anirban Roy, Jack E. Freelander, Vishal Sood
-
Publication number: 20100235472Abstract: 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.Type: ApplicationFiled: March 16, 2009Publication date: September 16, 2010Applicant: MICROSOFT CORPORATIONInventors: Vishal Sood, Jack E. Freelander, Anirban Roy, Lin Liu, Geqiang (Sam) Zhang, Krishna Duggaraju, Sudheer Sirivara, John A. Bocharov
-
Publication number: 20100235494Abstract: 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.Type: ApplicationFiled: March 16, 2009Publication date: September 16, 2010Applicant: MICROSOFT CORPORATIONInventors: Vishal Sood, Jack E. Freelander, Brian E. Blum, Geqiang (Sam) Zhang
-
Publication number: 20100235528Abstract: 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.Type: ApplicationFiled: March 16, 2009Publication date: September 16, 2010Applicant: MICROSOFT CORPORATIONInventors: John A. Bocharov, Geqiang (Sam) Zhang, Krishna Prakash Duggaraju, Sudheer Sirivara, Lin Liu, Anirban Roy, Jimin Gao, Jack E. Freelander, Christopher G. Knowlton, Vishal Sood
-
Publication number: 20100180011Abstract: A media fragmenting system is described herein that allows requesting portions of a content item through information specified in a Uniform Resource Identifier (URI) used to retrieve the content item. Media fragments retrieved using the media fragmenting system are cacheable by existing Internet infrastructure and allow clients to retrieve portions of a content item without retrieving the entire content item. The media fragmenting system adds a content range segment to the URI to specify a portion of the content item. A server receiving the URI accesses the content item, identifies the requested portion, and returns the requested portion in a standard HTTP response to the client. Because no changes to the HTTP protocol are involved, intermediate servers, routers, and proxies, can all handle the request and response as well as cache the response without modification.Type: ApplicationFiled: February 3, 2009Publication date: July 15, 2010Applicant: Microsoft CorporationInventors: Vishal Sood, Geqiang (Sam) Zhang, John A. Bocharov