Patents by Inventor William B. May, Jr.

William B. May, Jr. 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: 9660926
    Abstract: An embodiment of a method of requesting a plurality of media streams can include, as performed by a computing device, receiving a control input to control a playback function of at least one of the plurality of media streams, determining a download bandwidth between the computing device and a media source on a network, classifying the at least one of the plurality of media streams based on the control input and total download bandwidth, and sending a plurality of requests for the plurality media streams over a single connection to the media source, wherein at least one of an order or a content of the requests is based on the classification. The sending of the media stream requests can utilize at least one of a server-side protocol for multiplexing media streams over a single connection or one or more of HTTP pipelining or HTTP range requests over a single connection.
    Type: Grant
    Filed: May 30, 2014
    Date of Patent: May 23, 2017
    Assignee: APPLE INC.
    Inventors: David L. Biderman, Hassan Shojania, William B. May, Jr., John Y. Su, Roger N. Pantos, Jordan B. Schneider
  • Publication number: 20170094354
    Abstract: Methods and systems provide techniques for managing media streaming and content distribution and management using time-based metadata. A video segment may include a gate with associated content that is accessible conditioned on consumption of the gate. The manner in which the gate manages access to the associated content may be defined according to rules and syntactical elements. For example, a gate may be unlocked or collapsed. An unlocked gate allows a user to skip the gate and access the gated content. A collapsed gate is automatically skipped. A gate may become locked or un-collapsed. Various commands, including fast forward, rewind, jump forward, and jump backward may respond to a gate based on its locked or collapsed status. Embodiments also provide pooling of gates and selection of a subset of gates for playing.
    Type: Application
    Filed: September 29, 2015
    Publication date: March 30, 2017
    Inventors: Roger N. Pantos, David L. Biderman, William B. May, JR., John Y. Su, Mohammed Z. Visharam
  • Publication number: 20160337428
    Abstract: A method of streaming media may include opening a single connection between a client device and a media source; requesting a first media segment of a media stream corresponding to selected tier of a media title over the single connection; determining a download bitrate of the single connection; comparing the download bitrate to a predetermined bitrate of the media title; and in response to determining that the download bitrate is less than the predetermined bitrate, opening a plurality of connections between the client device and media source. The predetermined bitrate may be a predetermined bitrate of a next higher bitrate tier in a group of tiers containing the selected tier when the selected tier is not a highest bitrate tier in the group, and a predetermined bitrate of the selected tier otherwise.
    Type: Application
    Filed: May 11, 2015
    Publication date: November 17, 2016
    Inventors: William B. May, JR., John Y. Su, Roger N. Pantos, Hassan A. Shojania
  • Publication number: 20160094468
    Abstract: Methods and systems for switching between media streams can use a comparison of an average bandwidth for a new stream to an observed bit rate for an existing stream in order to determine whether to switch to the new stream. A check on the amount of data buffered for the existing stream can also be performed in order to determine whether a system should switch to the new stream.
    Type: Application
    Filed: September 29, 2014
    Publication date: March 31, 2016
    Inventors: William B. May, JR., David L. Biderman, John Y. Su, Roger N. Pantos
  • Publication number: 20150347415
    Abstract: Systems and methods use a new syntax defining a daterange tag that allows an author of a media stream to embed an arbitrary set of defined ranges in the media stream associated playlist. The defined ranges may be used to provide an overview of or otherwise define the playlist and media stream structure. When a playlist is updated and the timing window of the playlist advances, any daterange tags in the playlist that map to any defined range or media segment in the updated playlist will persist in the updated playlist. Any daterange tags in the playlist that map to defined ranges that have completed will be dropped from the updated playlist.
    Type: Application
    Filed: September 30, 2014
    Publication date: December 3, 2015
    Inventors: Roger N. Pantos, Eryk Vershen, William B. May, JR.
  • Publication number: 20150350100
    Abstract: An embodiment of a method of requesting a plurality of media streams can include, as performed by a computing device, receiving a control input to control a playback function of at least one of the plurality of media streams, determining a download bandwidth between the computing device and a media source on a network, classifying the at least one of the plurality of media streams based on the control input and total download bandwidth, and sending a plurality of requests for the plurality media streams over a single connection to the media source, wherein at least one of an order or a content of the requests is based on the classification. The sending of the media stream requests can utilize at least one of a server-side protocol for multiplexing media streams over a single connection or one or more of HTTP pipelining or HTTP range requests over a single connection.
    Type: Application
    Filed: May 30, 2014
    Publication date: December 3, 2015
    Applicant: Apple Inc.
    Inventors: David L. BIDERMAN, Hassan SHOJANIA, William B. MAY, JR., John Y. SU, Roger N. PANTOS, Jordan B. SCHNEIDER
  • Patent number: 8650289
    Abstract: Some embodiments provide a method for estimating bandwidth for receiving data at a device during a communication session from a set of servers based on identities of the servers. During the session, the method receives a first set of data packets reflecting a first server identity. The method detects a change of server identity during the session based on a second set of received data packets that reflect a second server identity that is different from the first server identity. The method uses the second server identity to calculate a bandwidth estimate that accounts for the change based on a history of interactions during the session with the second server.
    Type: Grant
    Filed: June 3, 2011
    Date of Patent: February 11, 2014
    Assignee: Apple Inc.
    Inventors: Roger Pantos, William B. May, Jr.
  • Publication number: 20120311134
    Abstract: Some embodiments provide a method for estimating bandwidth for receiving data at a device during a communication session from a set of servers based on identities of the servers. During the session, the method receives a first set of data packets reflecting a first server identity. The method detects a change of server identity during the session based on a second set of received data packets that reflect a second server identity that is different from the first server identity. The method uses the second server identity to calculate a bandwidth estimate that accounts for the change based on a history of interactions during the session with the second server.
    Type: Application
    Filed: June 3, 2011
    Publication date: December 6, 2012
    Inventors: Roger Pantos, William B. May, JR.
  • Patent number: 8068515
    Abstract: Synchronization of a multimedia broadcast can be achieved by enabling network devices to re-send saved RTCP packets upon a client's join request.
    Type: Grant
    Filed: June 22, 2005
    Date of Patent: November 29, 2011
    Assignee: Cisco Technology, Inc.
    Inventor: William B. May, Jr.
  • Patent number: 7970948
    Abstract: In an embodiment, a network router includes plural interfaces and a chain walker which, upon receipt of a first protocol packet in a first interface, processes the packet by walking the packet through a decapsulation chain associated with the interface and the first protocol and an encapsulation chain associated with an identified second interface and identified second protocol. The walker passes the packet to elements of the decapsulation chain to produce a decapsulated packet. The walker passes the decapsulated packet to elements of an encapsulation chain to produce an encapsulated packet. Each chain includes at least one packet-processing element. An element receives the packet from the walker as processed by a previous element, the packet being further processed as appropriate. The walker, upon receipt of the first protocol packet, passes the packet to elements of a demultiplexer chain associated with the first interface to produce a demultiplexed packet.
    Type: Grant
    Filed: April 27, 2005
    Date of Patent: June 28, 2011
    Assignee: Cisco Technology, Inc.
    Inventors: Kenneth A. Moberg, Claude A. Cartee, Gregory D. Stovall, David R. Hampton, Kirk Stewart Lougheed, Pedro Marques, Timothy D. Kolar, Andrew J. Valencia, William B. May, Jr.
  • Patent number: 7660477
    Abstract: An apparatus, a method and a computer program product for correcting image data for the presence of a ghost image. The image data is for acceptance by a device that includes a partially-silvered finite-thickness reflector or similar element to provide a reflection of an image for display. The ghost image is a shifted, attenuated version of the image data. The method includes subtracting a first correction term from the image data, the first correction term being a shifted and attenuated version of the image data, the shift being the same as that between the image data and the ghost image, and the attenuation matching the attenuation of the ghost image caused by the device. The processed image data is input to the device. For a small enough attenuation of the ghost image, substantially no ghost image of the image data is displayed by the device.
    Type: Grant
    Filed: February 28, 2006
    Date of Patent: February 9, 2010
    Assignee: Cisco Technology, Inc.
    Inventors: Richard T. Wales, Philip R. Graham, Wen-hsiung Chen, William B. May, Jr.
  • Patent number: 7649898
    Abstract: Converting a media stream includes communicating a call for a first system according to a first protocol. A media stream is retrieved from a second system, where the media stream communicated according to a second protocol distinguishable from the first protocol. The media stream is converted from the second protocol to the first protocol, and is associated with the call. The media stream is transmitted to the first system according to the first protocol.
    Type: Grant
    Filed: May 27, 2003
    Date of Patent: January 19, 2010
    Assignee: Cisco Technology, Inc.
    Inventors: William B. May, Jr., David J. Mackie, Blane A. Eisenberg, Philip R. Graham
  • Patent number: 6907468
    Abstract: A method for processing packets in a router includes specifying operations on packets as chains of processing elements. Each chain is uniquely associated with one interface/protocol pair, and each processing element performs at least one function on a packet. An incoming packet is received, and processed, first by a demultiplexor element which determines the protocol of the next higher level used by the packet. Then, the packet is processed by the elements of a decapsulation chain associated with the interface on which the packet was received, and by the elements of an encapsulation chain associated with the interface on which the packet is to be transmitted. The demultiplexor element or operation passes the packet on to a decapsulation chain associated with the protocol and with the incoming interface, depending on protocol information contained in the incoming packet.
    Type: Grant
    Filed: April 4, 2003
    Date of Patent: June 14, 2005
    Assignee: Cisco Technology, Inc.
    Inventors: Kenneth A. Moberg, Claude A. Cartee, Gregory D. Stovall, David R. Hampton, Kirk Stewart Lougheed, Pedro Marques, Timothy D. Kolar, Andrew J. Valencia, William B. May, Jr.
  • Patent number: 6578084
    Abstract: A method for processing packets in a router includes specifying operations on packets as chains of processing elements. Each chain is uniquely associated with one interface/protocol pair, and each processing element performs at least one function on a packet. An incoming packet is received, and processed, first by a demultiplexor element which determines the protocol of the next higher level used by the packet. Then, the packet is processed by the elements of a decapsulation chain associated with the interface on which the packet was received, and by the elements of an encapsulation chain associated with the interface on which the packet is to be transmitted. The demultiplexor element or operation passes the packet on to a decapsulation chain associated with the protocol and with the incoming interface, depending on protocol information contained in the incoming packet.
    Type: Grant
    Filed: October 15, 1999
    Date of Patent: June 10, 2003
    Assignee: Cisco Technology, Inc.
    Inventors: Kenneth A. Moberg, Claude A. Cartee, Gregory D. Stovall, David R. Hampton, Kirk Stewart Lougheed, Pedro Marques, Timothy D. Kolar, Andrew J. Valencia, William B. May, Jr.
  • Patent number: 6381736
    Abstract: A method for type-checking format arguments during compile time which uses data in an external file. Data from the external file is converted into a generated source file suitable for “inclusion” in a program source file, which is the subject of compilation. The generated source file is compiled together with the program source file and performs, among other things, type-checking of format arguments contained within the program source file and the generated source file.
    Type: Grant
    Filed: October 12, 1999
    Date of Patent: April 30, 2002
    Assignee: Cisco Technology, Inc.
    Inventors: Frank Klotz, Dean Hiller, Ian Kluft, William B. May, Jr.
  • Patent number: 6321255
    Abstract: A method for dynamically storing network device identification information to allow for the easy addition of new fields as well as simple modification of identification fields. This method involves receiving the device identification information, determining the type and length of the device identification information, choosing one or more symbols to represent the type and length of the identification information, and storing the symbols as well as the identification information in a memory store associated with the device. Choosing the symbols may be accomplished by either choosing a single symbol to represent both the type and length of the identification information, or by utilizing a first symbol which represents the type of the information and a second symbol which represents the length. An extension address symbol may be used if it is not possible to find a symbol to represent the type and length of the identification information.
    Type: Grant
    Filed: April 10, 1998
    Date of Patent: November 20, 2001
    Assignee: Cisco Technology, Inc.
    Inventors: William B. May, Jr., Derek J. Brown, Robert M. Haragan, Jr., Guenter E. Roeck