Patents by Inventor Philip Chou

Philip Chou 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: 7627467
    Abstract: Real-time packet-based audio communications over packet-based networks frequently results in the loss of one or more packets during any given communication session. The real-time nature of such communications precludes retransmission of lost packets due to the unacceptable delays that would result. Consequently, packet loss concealment methods are employed to “hide” lost packets from the listener. Unfortunately, conventional loss concealment methods, such as packet repetition or stretch/overlap methods, do not fully exploit information available from partially received samples. Therefore, when a single frame of N coefficients is lost, 2N samples are only partially reconstructed, thereby degrading the reconstructed signal.
    Type: Grant
    Filed: June 30, 2005
    Date of Patent: December 1, 2009
    Assignee: Microsoft Corporation
    Inventors: Dinei A. Florencio, Philip A. Chou
  • Patent number: 7613121
    Abstract: Congestion adaptive data routing is leveraged to provide a substantial increase in data throughput in networks with data congestion. By continuously adapting the data routes when a congested route is encountered, the data can reach its destination via alternate routes around the congested area. This is accomplished in a distributed manner where each node provides an alternative path to congestion based on its local knowledge and/or knowledge obtained from neighboring nodes. This allows the data path to be dynamically adjusted for congestion without requiring a centralized body of control. In another instance, data rate changes can be combined with data path changes to increase the efficiency of the data throughput. Alternative routes can be determined based upon the costs associated with selecting that route. Selecting a minimum cost route yields the most efficient transfer of data.
    Type: Grant
    Filed: February 28, 2006
    Date of Patent: November 3, 2009
    Assignee: Microsoft Corporation
    Inventors: Philip A. Chou, Kamal Jain, Dinesh Garg
  • Patent number: 7596488
    Abstract: An “adaptive audio playback controller” operates by decoding and reading received packets of an audio signal into a signal buffer. Samples of the decoded audio signal are then played out of the signal buffer according to the needs of a player device. Jitter control and packet loss concealment are accomplished by continuously analyzing buffer content in real-time, and determining whether to provide unmodified playback from the buffer contents, whether to compress buffer content, stretch buffer content, or whether to provide for packet loss concealment for overly delayed or lost packets as a function of buffer content. Further, the adaptive audio playback controller also determines where to stretch or compress particular frames or signal segments in the signal buffer, and how much to stretch or compress such segments in order to optimize perceived playback quality.
    Type: Grant
    Filed: September 15, 2003
    Date of Patent: September 29, 2009
    Assignee: Microsoft Corporation
    Inventors: Dinei Florencio, Philip Chou, Li-Wei He
  • Patent number: 7593333
    Abstract: A content distribution method and system for distributing content over a peer-to-peer network such that the full potential throughput of the network is achieved. The content distribution method divides the content to be distributed into many small blocks. Each of the content blocks then is assigned to a node, which can be a content-requesting node, a non-content-requesting node or a source node. Content is assigned based on a capacity of the node, where nodes having a larger capacity are assigned a greater number of content blocks and nodes having a smaller capacity are assigned a fewer content blocks. The capacity generally is defined as the upload bandwidth of the node. Redistribution queues are employed to control the throughput of the distribution. This bandwidth control strategy ensures that upload bandwidths of the peer and source nodes are fully utilized even with network anomalies such as packet losses and delivery jitters.
    Type: Grant
    Filed: July 7, 2004
    Date of Patent: September 22, 2009
    Assignee: Microsoft Corporation
    Inventors: Jin Li, Philip A. Chou, Cha Zhang
  • Patent number: 7593466
    Abstract: A method and system including an improved generalized reference decoder that operates according to any number of sets of rate and buffer parameters for a given bit stream. Each set characterizes a leaky bucket model and contains three parameters representing the transmission bit rate, buffer size, and initial decoder buffer fullness. An encoder provides at least two sets of these parameters, whereby the decoder selects one or interpolates between them to operate at any desired peak bit rate, buffer size or delay. The generalized reference decoder may select the smallest buffer size and corresponding delay that decodes the bit stream without buffer underflow or overflow, or alternatively may select and operate at the minimum required peak transmission rate, or something between both. In practice, the buffer size, delay and/or the peak transmission rate can be reduced by significant factors, and/or the signal-to-noise ratio (SNR) can be increased.
    Type: Grant
    Filed: May 4, 2006
    Date of Patent: September 22, 2009
    Assignee: Microsoft Corporation
    Inventors: Jordi Ribas-Corbera, Philip A. Chou
  • Publication number: 20090198829
    Abstract: The described implementations relate to distributed network management and more particularly to enhancing distributed network utility. One technique selects multiple trees to distribute content to multiple receivers in a session where individual receivers can receive the distributed content at one of a plurality of rates. The technique further adjustably allocates content distribution across the multiple trees to increase a sum of utilities of the multiple receivers.
    Type: Application
    Filed: January 31, 2008
    Publication date: August 6, 2009
    Applicant: Microsoft Corporation
    Inventors: Sudipta Sengupta, Minghua Chen, Jin Li, Philip A. Chou, Miroslav Ponec
  • Publication number: 20090172779
    Abstract: Described herein is a method that includes receiving multiple requests for access to an exposed media object, wherein the exposed media object represents a live media stream that is being generated by a media source. The method also includes receiving data associated with each entity that provided a request, and determining, for each entity, whether the entities that provided the request are authorized to access the media stream based at least in part upon the received data and splitting the media stream into multiple media streams, wherein a number of media streams corresponds to a number of authorized entities. The method also includes automatically applying at least one policy to at least one of the split media streams based at least in part upon the received data.
    Type: Application
    Filed: January 2, 2008
    Publication date: July 2, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Rajesh K. Hegde, Cha Zhang, Philip A. Chou, Zicheng Liu
  • Publication number: 20090164657
    Abstract: A “communications rate controller” provides various techniques for maximizing a quality of real-time communications (RTC) (including audio and/or video broadcasts and conferencing) over multi-hop networks such as, for example, the Internet. Endpoints in such networks generally communicate via a segmented path that extends through one or more routers between each endpoint. Maximization of conferencing quality is generally accomplished by providing in-session bandwidth estimation across segments of the network path between endpoints (i.e., communication/conference participants) in combination with a robust non-oscillating dynamic rate control strategy for maximizing usage of available bandwidth between RTC endpoints. Further, the dynamic rate control techniques provided by the communications rate controller are designed to prevent degradation in end-to-end delay, jitter, and packet loss characteristics of the RTC.
    Type: Application
    Filed: December 20, 2007
    Publication date: June 25, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Jin Li, Philip A. Chou, Minghua Chen
  • Patent number: 7543073
    Abstract: A system and process for performing an exponentially weighted moving average on streaming data to establish a moving average bit rate of data units is presented. In general, the system or process computes, on a unit-by-unit basis, the product of the moving average bit rate computed for a data unit immediately prior to a unit under consideration and a first fractional weighting factor, added to the product of the instantaneous bit rate of the data unit under consideration and a second fractional weighting factor, wherein at least one fractional weighting factor is not a constant but instead based on the time between data units.
    Type: Grant
    Filed: December 10, 2004
    Date of Patent: June 2, 2009
    Assignee: Microsoft Corporation
    Inventors: Philip Chou, Anders Klemets, Cheng Huang
  • Publication number: 20090138618
    Abstract: Difficulties associated with choosing advantageous network routes between server and clients are mitigated by a routing system that is devised to use many routing path sets, where respective sets comprise a number of routing paths covering all of the clients, including through other clients. A server may then apportion a data stream among all of the routing path sets. The server may also detect the performance of the computer network while sending the data stream between clients, and may adjust the apportionment of the routing path sets including the route. The clients may also be configured to operate as servers of other data streams, such as in a videoconferencing session, for example, and may be configured to send detected route performance information along with the portions of the various data streams.
    Type: Application
    Filed: November 27, 2007
    Publication date: May 28, 2009
    Applicant: MICROSOFT CORPORATION
    Inventors: Jin Li, Sudipta Sengupta, Miroslav Ponec, Minghua Chen, Philip A. Chou
  • Patent number: 7536469
    Abstract: A system and process for controlling the coding bit rate of streaming media data is presented where a server streams data that exhibits one of a number of coding bit rates supported by the server. Initially, the server chooses the coding bit rate. However, after this startup period, the client provides coding bit rate requests. The server transmits the streaming media data at the most appropriate supported coding bit rate closest to the rate requested. The coding bit rates requested are those estimated to provide a high quality playback of the streaming data while still keeping a decoder buffer of the client filled to a desired level. A leaky bucket model is incorporated so that the changes in buffer duration due to natural variation in the instantaneous coding bit rate are not mistaken for changes in buffer duration due to network congestion.
    Type: Grant
    Filed: December 10, 2004
    Date of Patent: May 19, 2009
    Assignee: Microsoft Corporation
    Inventors: Philip Chou, Anders Klemets, Cheng Huang
  • Patent number: 7529198
    Abstract: An overlay network and scheme for building and using the overlay network are described. As the overlay network is built, new nodes joining the network are connected randomly with other nodes which results in a random graph as the network topology. The network is fully scalable, with each new node providing the same number of network connections for output to other nodes as it consumes when it joins the network. In addition, network coding is implemented at each node to mix packets of data entering each node using random linear functions. The network coding at each node generates new packets that are independent combinations of original data packets entering the node. The new coded packets make the distribution of data to other nodes more efficient and robust.
    Type: Grant
    Filed: April 7, 2005
    Date of Patent: May 5, 2009
    Assignee: Microsoft Corporation
    Inventors: Kamal Jain, Laszlo Lovasz, Philip A. Chou
  • Publication number: 20090055377
    Abstract: A media recommendation and sharing technique that employs agents on media players/devices to expand the scope of media sharing scenarios. The technique assists a user in discovering media items, such as, for example, music, recordings, play lists, pictures, video games, on nearby media players or devices (devices which are capable of receiving, storing and playing media) which are interesting to the user. The collaborative media recommendation and sharing technique contemporaneously determines a user's media preferences based on media stored on a pair of media devices and recommends media for potential sharing based on these determined user preferences.
    Type: Application
    Filed: August 22, 2007
    Publication date: February 26, 2009
    Applicant: Microsoft Corporation
    Inventors: Rajesh K. Hedge, Zicheng Liu, Li-wei He, Philip A. Chou, Christopher A. Meek
  • Publication number: 20080291834
    Abstract: A system and method that can receive, buffer, and asynchronously combine data from various incoming data packets is disclosed. The system and method can do so by, first, receiving incoming packets of one or multiple generations that have incoming data and incoming metadata, with the incoming data of each of the incoming packets that are of a first generation being a combination of a first, original set of data vectors, and the incoming metadata of each of the first generation of incoming packets including an indicator for the first generation. Second, once these incoming packets are received, the system and method can buffer them based on the indicator and, asynchronously from the receiving and buffering, combine the incoming data in the buffered, first generation incoming packets into outgoing data in an outgoing packet.
    Type: Application
    Filed: August 4, 2008
    Publication date: November 27, 2008
    Applicant: Microsoft Corporation
    Inventors: Philip A. Chou, Yunnan Wu, Kamal Jain
  • Publication number: 20080281586
    Abstract: A “speech onset detector” provides a variable length frame buffer in combination with either variable transmission rate or temporal speech compression for buffered signal frames. The variable length buffer buffers frames that are not clearly identified as either speech or non-speech frames during an initial analysis. Buffering of signal frames continues until a current frame is identified as either speech or non-speech. If the current frame is identified as non-speech, buffered frames are encoded as non-speech frames. However, if the current frame is identified as a speech frame, buffered frames are searched for the actual onset point of the speech. Once that onset point is identified, the signal is either transmitted in a burst, or a time-scale modification of the buffered signal is applied for compressing buffered frames beginning with the frame in which onset point is detected. The compressed frames are then encoded as one or more speech frames.
    Type: Application
    Filed: July 28, 2008
    Publication date: November 13, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Dinei A. Florencio, Philip A. Chou
  • Publication number: 20080240267
    Abstract: A multiuser scheme allowing for a number of users, sets of user, or carriers to share one or more channels is provided. In the invention, the available channel bandwidth is subdivided into a number of equal-bandwidth subchannels according to standard OFDM practice. A transmitter transmits data on a set of OFDM subchannels that need not be contiguous in the spectrum or belong to the same OFDM channel. A receiver receives and decodes the data and detects errors on subchannels. The receiver then broadcasts the identity of those subchannels on which the error rate exceeds a specific threshold, and the transmitter may select different subchannels for transmission based on this information.
    Type: Application
    Filed: March 30, 2007
    Publication date: October 2, 2008
    Applicant: Microsoft Corporation
    Inventors: Amer Hassan, Christian Huitema, Wayne Stark, Yunnan Wu, Philip Chou
  • Patent number: 7424730
    Abstract: Systems and methods for presenting time-varying multimedia content are described. In one aspect, a lower quality data stream for an initial portion of the multimedia content is received. The lower quality data stream is received at a rate faster than a real-time playback rate for the multimedia content. The lower quality data stream was encoded at a bit rate below a transmission rate. A higher quality data stream of a subsequent portion of the multimedia content is received. The higher quality data stream was encoded at a bit rate that equals the transmission rate. The initial portion and the subsequent portion of the multimedia content are presented at the real-time playback rate. Receiving the initial portion faster than the real-time playback rate provides for a reduction of latency due to buffering by a desired amount.
    Type: Grant
    Filed: September 10, 2003
    Date of Patent: September 9, 2008
    Assignee: Microsoft Corporation
    Inventor: Philip A. Chou
  • Publication number: 20080192738
    Abstract: A “Media Transmission Optimizer” provides a media transmission optimization framework for lossy or bursty networks such as the Internet. This optimization framework provides a novel form of dynamic Forward Error Correction (FEC) that focuses on the perceived quality of a recovered media signal rather than on the absolute accuracy of the recovered media signal. In general, the Media Transmission Optimizer provides an encoder that optimizes the transmission of redundant frames of electronic media information encoded at different bit rates, and provides optimized playback quality by providing a decoder that automatically selects an optimal path through one or more available representations of each frame as a function of overall rate/distortion criteria.
    Type: Application
    Filed: February 14, 2007
    Publication date: August 14, 2008
    Applicant: MICROSOFT CORPORATION
    Inventors: Dinei A. Florencio, Philip A. Chou, Suleyman Serdar Kozat
  • Patent number: 7412376
    Abstract: A “speech onset detector” provides a variable length frame buffer in combination with either variable transmission rate or temporal speech compression for buffered signal frames. The variable length buffer buffers frames that are not clearly identified as either speech or non-speech frames during an initial analysis. Buffering of signal frames continues until a current frame is identified as either speech or non-speech. If the current frame is identified as non-speech, buffered frames are encoded as non-speech frames. However, if the current frame is identified as a speech frame, buffered frames are searched for the actual onset point of the speech. Once that onset point is identified, the signal is either transmitted in a burst, or a time-scale modification of the buffered signal is applied for compressing buffered frames beginning with the frame in which onset point is detected. The compressed frames are then encoded as one or more speech frames.
    Type: Grant
    Filed: September 10, 2003
    Date of Patent: August 12, 2008
    Assignee: Microsoft Corporation
    Inventors: Dinei Florencio, Philip Chou
  • Patent number: 7408938
    Abstract: A system and method that can receive, buffer, and asynchronously combine data from various incoming data packets is disclosed. The system and method can do so by, first, receiving incoming packets of one or multiple generations that have incoming data and incoming metadata, with the incoming data of each of the incoming packets that are of a first generation being a combination of a first, original set of data vectors, and the incoming metadata of each of the first generation of incoming packets including an indicator for the first generation. Second, once these incoming packets are received, the system and method can buffer them based on the indicator and, asynchronously from the receiving and buffering, combine the incoming data in the buffered, first generation incoming packets into outgoing data in an outgoing packet.
    Type: Grant
    Filed: January 5, 2004
    Date of Patent: August 5, 2008
    Assignee: Microsoft Coporation
    Inventors: Philip A. Chou, Yunnan Wu, Kamal Jain