Patents by Inventor Brandon C. Furtwangler

Brandon C. Furtwangler 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: 10545818
    Abstract: The described technology is directed towards handling errors in an application program that allows for a taxonomy and precedence order of errors. Exception wrapping includes preserving relevant information with an exception, and consolidates a series of errors into a single dominant exception instance that is handled appropriately depending on the exception type. Also described is a centralized exception manager that outputs an interactive dialog based upon the exception type, and takes a recovery action based upon user interaction with the dialog.
    Type: Grant
    Filed: December 28, 2017
    Date of Patent: January 28, 2020
    Assignee: HOME BOX OFFICE, INC.
    Inventors: Patrick Finnigan, Brendan Joseph Clark, Brandon C. Furtwangler, Steven N. Furtwangler
  • Patent number: 10540364
    Abstract: The described technology is directed towards a data transformation pipeline architecture of a data service that processes generalized datasets into datasets (e.g., video data or graph nodes) customized for a particular client device. Described herein is maintaining a set of data transformation models at a data service, and upon receiving a client request for data, selecting a relevant subset of the transformation models and arranging the subset into a data transformation pipeline. In general, the pipeline of transformation models transforms the generalized data into the format and shape that each client device expects. The subset may be selected based upon device type, device class and/or software version information (and possibly state data) sent with each data request. The transformation models may be maintained in a hierarchical data store such as files in a file system to facilitate retrieval by searching the hierarchy for appropriate transformation models.
    Type: Grant
    Filed: May 2, 2017
    Date of Patent: January 21, 2020
    Assignee: Home Box Office, Inc.
    Inventors: Sata Busayarat, Brandon C. Furtwangler, Allen Arthur Gay, Jonathan David Lutz, Steven N. Furtwangler
  • Patent number: 10521275
    Abstract: The described technology is directed towards an asynchronous dispatcher including control logic that manages a queue set, including to dequeue and execute work items from the queue on behalf of application code executing in a program. The dispatcher yields control to the program to allow the program and application code to be responsive with respect to user interface operations.
    Type: Grant
    Filed: August 31, 2017
    Date of Patent: December 31, 2019
    Assignee: HOME BOX OFFICE, INC.
    Inventors: Patrick Finnigan, Nathan J. E. Furtwangler, Brendan Joseph Clark, Brandon C. Furtwangler
  • Publication number: 20190394295
    Abstract: The described technology is generally directed towards batching two or more data requests into a batch request that is sent to a data-providing entity such as a client data access layer coupled to a data service. Described is maintaining a mapping of the requests to requesting entities so that the responses to a batched request, which may be separately streamed, may be assembled into a batch response to the requesting entity. Also described is multiplexing a plurality of requests for the same data item into a single request, which may be added to a batch request, and de-multiplexing the single response into separate responses to each requesting entity.
    Type: Application
    Filed: September 5, 2019
    Publication date: December 26, 2019
    Inventors: SATA BUSAYARAT, BRANDON C. FURTWANGLER, STEVEN N. FURTWANGLER
  • Patent number: 10412187
    Abstract: The described technology is generally directed towards batching two or more data requests into a batch request that is sent to a data-providing entity such as a client data access layer coupled to a data service. Described is maintaining a mapping of the requests to requesting entities so that the responses to a batched request, which may be separately streamed, may be assembled into a batch response to the requesting entity. Also described is multiplexing a plurality of requests for the same data item into a single request, which may be added to a batch request, and de-multiplexing the single response into separate responses to each requesting entity.
    Type: Grant
    Filed: October 12, 2016
    Date of Patent: September 10, 2019
    Assignee: HOME BOX OFFICE, INC.
    Inventors: Sata Busayarat, Brandon C. Furtwangler, Steven N. Furtwangler
  • Patent number: 10379915
    Abstract: The described technology is directed towards a structured logging technology in which events corresponding to program execution are received in a structured format and logged based upon filtering of those events. A log handler is associated with a filtering mechanism that determines whether each event matches filtering criteria and is thus to be logged by the log handler. The log handler provides matching logged events to an event sink, such as an analytic tool that consumes the events for analysis.
    Type: Grant
    Filed: July 17, 2015
    Date of Patent: August 13, 2019
    Assignee: Home Box Office, Inc.
    Inventors: Nathan J. E. Furtwangler, Brandon C. Furtwangler, Tyler R. Furtwangler
  • Publication number: 20190199819
    Abstract: The described technology is directed towards having user interface objects rendered on a client device based upon provider data of at least part of a client provider graph. The client provider graph comprises a plurality of providers (graph nodes), in which each provider has provider data corresponding to user interface object data. The data of one provider has a reference set containing one or more references (e.g., edges) that each identify another provider, thus forming the graph. Client requests for other provider data are made based upon the reference set. The other provider data is received in response to the client requests, and is maintained at the client (e.g., in a client cache) to build the client graph.
    Type: Application
    Filed: March 1, 2019
    Publication date: June 27, 2019
    Inventors: SATA BUSAYARAT, GREGORY JOHN BELLINGHAM, BRANDON C. FURTWANGLER, ALLEN ARTHUR GAY
  • Publication number: 20190196936
    Abstract: The described technology is directed towards conditional wrapper that wraps part(s) of a selected program object with added logic, such as to perform validation and/or tracing on part(s) the object; the wrapper may be multi-functional in this regard. The wrapper logic is selectively added to one or more selected object parts by the object creator at object creation time based upon conditional data. During runtime, the added logic may be run before the wrapped part of the object (e.g., a function) is executed and/or after execution of the object part. Validation and/or tracing operations may be run before the part of the object is executed as well as after the part of the object is executed. Objects that do not meet the conditional data criteria are created and returned without any added wrapping logic.
    Type: Application
    Filed: February 27, 2019
    Publication date: June 27, 2019
    Inventors: Tyler R. Furtwangler, Brandon C. Furtwangler, Nathan J. E. Furtwangler
  • Patent number: 10324691
    Abstract: The described technology is directed towards a factory identification system, in which a factory object is provided with a factory identifier (ID) that specifies information regarding a desired object that is more specific than specifying an interface. Additional construction parameters such as an object ID may be provided to further describe the desired object. Also described are object caching and reuse, and tagging the object with information that may be preserved and later used to recreate an object.
    Type: Grant
    Filed: October 5, 2017
    Date of Patent: June 18, 2019
    Assignee: HOME BOX OFFICE, INC.
    Inventors: Steven N. Furtwangler, Brandon C. Furtwangler, Nathan J. E. Furtwangler
  • Patent number: 10277704
    Abstract: The described technology is directed towards having user interface objects rendered on a client device based upon provider data of at least part of a client provider graph. The client provider graph comprises a plurality of providers (graph nodes), in which each provider has provider data corresponding to user interface object data. The data of one provider has a reference set containing one or more references (e.g., edges) that each identify another provider, thus forming the graph. Client requests for other provider data are made based upon the reference set. The other provider data is received in response to the client requests, and is maintained at the client (e.g., in a client cache) to build the client graph.
    Type: Grant
    Filed: October 12, 2016
    Date of Patent: April 30, 2019
    Assignee: Home Box Office, Inc.
    Inventors: Sata Busayarat, Gregory John Bellingham, Brandon C. Furtwangler, Allen Arthur Gay
  • Patent number: 10275236
    Abstract: The described technology is directed towards generating related templated files based on a set of data associated with to another class registered with a document system. These files may be edited into a source code file, a document file and a test file for any derived class. At runtime, which may include the runtime execution of the object based upon the test file, an object based upon the source code file is instantiated. Part of the object (e.g., a function) may be validated during the runtime based upon validation information in the document file.
    Type: Grant
    Filed: September 2, 2015
    Date of Patent: April 30, 2019
    Assignee: Home Box Office, Inc.
    Inventors: Tyler R. Furtwangler, Brendan Joseph Clark, Brandon C. Furtwangler
  • Patent number: 10268511
    Abstract: The described technology is directed towards sharing asynchronous (async) tasks between task chains, including in a way that prevents cancellation of lower-level chain entity from cancelling a shared async task. A shared async task is wrapped in multiplexer code that maintains lower-level entity identities as a set of listeners of the shared async task, and when a listener cancels, only removes that listener from the set of listeners so that the shared async task does not cancel as long as one listener remains in the set. Also described is optimization to share an async task, and wrapping tasks in cancel-checking code that prevents the task from running its work if the task is intended to be cancelled but is queued to run before the cancel request is queued to run.
    Type: Grant
    Filed: December 30, 2016
    Date of Patent: April 23, 2019
    Assignee: HOME BOX OFFICE, INC.
    Inventors: J. Jordan C. Parker, Tyler R. Furtwangler, Brandon C. Furtwangler, Nathan J. E. Furtwangler, Patrick Finnigan
  • Patent number: 10257579
    Abstract: The subject disclosure is directed towards on-demand downloading of trickplay images during fast forwarding or rewinding of streaming video. A next trickplay image is selected and downloaded based upon the fast forward or rewind rate and the current location in the video. To ensure sufficient download time, the trickplay image may be chosen with a specified quality/resolution based upon historical timing data (e.g., a running average) to adaptively adjust to network bandwidth changes.
    Type: Grant
    Filed: January 5, 2018
    Date of Patent: April 9, 2019
    Assignee: HOME BOX OFFICE, INC.
    Inventor: Brandon C. Furtwangler
  • Publication number: 20190096115
    Abstract: The described technology is directed towards determining the rendering of user interface (UI) elements, referred to as views, based upon styleable transitions between possible states of a view. Transitions may include animation, such as to smoothly enter a view into or exit a view out of a scene over a number of rendering frames. Transitions also may be applied to view state changes related to a UI element, such as to indicate hovered over, focused, listening (for speech), selected and/or pressed. View state changes also may be animated.
    Type: Application
    Filed: November 21, 2018
    Publication date: March 28, 2019
    Inventors: Steven N. Furtwangler, Brendan Joseph Clark, Brandon C. Furtwangler, J. Jordan C. Parker, Nathan J. E. Furtwangler
  • Patent number: 10228828
    Abstract: The subject disclosure is directed towards transitioning from an existing screen (e.g., a page or the like) to a new screen, in which element(s)/control(s) of the existing screen are shared to the new screen. An existing screen acts as a source screen to provide element-related data (e.g., names) of its existing elements; the existing elements are intersected with those desired by the new/destination screen. The destination screen takes over ownership of any common elements. A navigation service may coordinate the exchange of information and the transition. The transition may include animations and/or other effects to provide a visually smooth transition or the like between screens.
    Type: Grant
    Filed: December 28, 2017
    Date of Patent: March 12, 2019
    Assignee: HOME BOX OFFICE, INC.
    Inventors: Brandon C. Furtwangler, Aaron J. Nonis
  • Publication number: 20180356901
    Abstract: The described technology is directed towards normalizing input received from various types of device types for providing the input to user interface (UI) elements in a unified way that reflects the invoke intent of the user. Input from different device types is classified as button input, pointer input or command input, and routed to a corresponding button provider, pointer provider or command provider. Each provider includes logic for communicating input data (e.g., events) to a UI element or elements. Based upon the input events, a UI element can execute a corresponding invoke handler to take an invoke action for that particular event.
    Type: Application
    Filed: August 14, 2018
    Publication date: December 13, 2018
    Inventors: Nathan J. E. Furtwangler, Brandon C. Furtwangler, J. Jordan C. Parker
  • Publication number: 20180349368
    Abstract: The described technology is directed towards sending metadata related to a video to a client device, such as events that describe a portion of that video, such as in a hidden stream. In one or more implementations, the enhanced metadata comprises nodes used to build part of a relationship graph. This allows interested clients to switch between the feature playback and interacting with the metadata. Further, searches through the enhanced metadata may be performed to find matching video portions, and summaries or highlights of one or more videos may be assembled by accessing information in the enhanced metadata.
    Type: Application
    Filed: May 30, 2017
    Publication date: December 6, 2018
    Inventors: Gregory John Bellingham, William A. McNamara, Brandon C. Furtwangler
  • Publication number: 20180321984
    Abstract: The described technology is directed towards returning less data than is available for a data item in response to a request to a data service. A virtual graph node is returned in response to client requests, in which the virtual node comprises a relatively lightweight set of information relative to the full set of information for the data item, e.g., maintained in a main (graph) node. A requesting client indicates that a virtual node is desired, and receives a response comprising the virtual node, generally processed from the main node's data into a reduced subset of the main node. The main node may be cached at the data service, and returned if and when requested.
    Type: Application
    Filed: May 2, 2017
    Publication date: November 8, 2018
    Inventors: Sata Busayarat, Jack Song, Brandon C. Furtwangler, Jonathan David Lutz, Allen Arthur Gay, Steven N. Furtwangler
  • Publication number: 20180322176
    Abstract: The described technology is directed towards a data transformation pipeline architecture of a data service that processes generalized datasets into datasets (e.g., video data or graph nodes) customized for a particular client device. Described herein is maintaining a set of data transformation models at a data service, and upon receiving a client request for data, selecting a relevant subset of the transformation models and arranging the subset into a data transformation pipeline. In general, the pipeline of transformation models transforms the generalized data into the format and shape that each client device expects. The subset may be selected based upon device type, device class and/or software version information (and possibly state data) sent with each data request. The transformation models may be maintained in a hierarchical data store such as files in a file system to facilitate retrieval by searching the hierarchy for appropriate transformation models.
    Type: Application
    Filed: May 2, 2017
    Publication date: November 8, 2018
    Inventors: Sata Busayarat, Brandon C. Furtwangler, Allen Arthur Gay, Jonathan David Lutz, Steven N. Furtwangler
  • Patent number: 10120776
    Abstract: The described technology is directed towards having document files (e.g., a JSON object) associated with objects of a computer program. The document files may include validation information that is used during runtime to validate one or more parts of the object via validation code such as a validation function. For example, a function of an object may have one validation function that during runtime validates whether the input parameter(s) are valid (their types and/or values are correct), and another validation function that during runtime validates whether the return values from the function are valid. Also described is processing the document files into more easily readable documentation, e.g., without any source code.
    Type: Grant
    Filed: September 2, 2015
    Date of Patent: November 6, 2018
    Assignee: HOME BOX OFFICE, INC.
    Inventors: Tyler R. Furtwangler, Brandon C. Furtwangler, Nathan J. E. Furtwangler