Abstract:
In an embodiment, a method comprises receiving a first routing table of a first server computer; receiving a second routing table of a second server computer; receiving a request, from a client computer, for information about content servers that hold a media item title, wherein the request includes a client internet protocol address of the client computer; estimating that the first server computer is closer to the client computer than the second server computer is to the client computer based, at least in part, on the client internet protocol address, the first routing table, and the second routing table; sending, to the client computer, a first address to the client computer based, at least in part, on estimating that the first server computer is closer to the client computer than the second server computer, wherein the first address identifies the media item title stored on the first server computer.
Abstract:
One embodiment of the present invention sets forth a technique for controlling the operations of a consumer electronic (CE) device. A system includes a display device, CE device, and a remote controller with a touchpad. The CE device is configured to output a context-specific user interface for display by the display device. The particular user interface varies based on the operational context of the CE device. The remote controller sends signals that are detected by the CE device and control operations performed by the CE device. More specifically, the remote controller is used as a handheld pointing device to select operations through interactions with the context-specific user interface. A user may apply gestures to the touchpad that are interpreted based on the context-specific user interface to control the CE device.
Abstract:
Embodiments provide techniques generating and managing encryption keys within a computing infrastructure. Embodiments provide a key publisher that generates and maintains key pairs in a list at a configurable interval. In addition, the key publisher publishes the list to other components within the computing infrastructure. Embodiments also provide a key consumer that downloads the list of encrypted key pairs and maintains an active window of keys to can be accepted from client devices that communicate sensitive data to the computing infrastructure. If the key consumer receives a key from a client device that is outside of the active window yet that corresponds to a future key pair in the list, the key consumer advances the active window towards the future key pair.
Abstract:
One embodiment of the invention sets forth a mechanism for recommending digital items to a user. Each digital item in a set of digital items is scored based on user preferences and other metrics. The digital items are ordered based on scores. The digital items are then evaluated in order of respective rank to determine a subset of digital items that re recommended to the user. The evaluation process is based on different evaluation criteria as well as the presentation style of the recommended digital items.
Abstract:
Techniques for evaluating a second version of software. Embodiments selectively route incoming requests to software instances within a plurality of baseline instances and a plurality of canary instances, where the baseline instances run a first software version and the canary instances run the second software version. The software instances are monitored to collect performance data for a plurality of performance metrics. Embodiments calculate aggregate baseline performance metrics, where each of the aggregate baseline performance metrics is calculated based on the collected performance data for the plurality of baseline instances. For each of the performance metrics and canary instances, embodiments calculate a relative performance value that measures the collected performance data for the respective canary instance and for the respective performance metric, relative to the corresponding aggregate baseline performance metric. A final measure of performance is calculated for the second version of software, based on the relative performance values.
Abstract:
Embodiments of the invention generally provide a method, a computing system, and a computer-readable medium configured to request, cache, and generate translations of paths through graph-based data representations. The computer-implemented method includes receiving a first request for translation, wherein the first request specifies a first path configured to identify first payload data. The computer-implemented method further includes determining whether a graph object stored in the local cache memory includes a first translation associated with the first path. If the local cache memory does not include the first translation, then the first translation is obtained from a remote computing device and stored in the graph object. If the local cache memory does include the first translation associated with the first path, then the first translation is obtained from the local cache memory. The computer-implemented method also includes obtaining the first payload data based on the first translation.
Abstract:
Embodiments of the invention generally provide a method, a computing system, and a computer-readable medium configured to generate requests for payload data through a graph-based data representation. The computer-implemented method includes generating a first request for translation that specifies a first path configured to identify first payload data associated with a graph object. The computer-implemented method further includes transmitting the first request to a path evaluator for translation. The computer-implemented method also includes receiving a first translated path based on the first path and including an initial translated portion and a final untranslated portion, from the path evaluator. The computer-implemented method further includes receiving the first payload data from the path evaluator.
Abstract:
Techniques for optimizing a plurality of parallel network connections for a digital content stream through a network between a plurality of content servers and a content player. Embodiments determine an indication of network performance for each of the plurality of parallel network connections. Additionally, upon determining that a first one the plurality of parallel network connections is underperforming, based on whether the indication of network performance associated with the first parallel network connection satisfies a threshold level of performance, the first parallel network connection is dropped. Upon determining that a total throughput for the digital content stream is less than a minimum threshold of network performance, embodiments select a content server with which to establish a new parallel network connection, based on historical network performance data associated with the selected content server, and also establishing the new parallel network connection to the selected content server.
Abstract:
A data processing system, comprising a network interface configured to couple to a data network; one or more processors coupled to the network interface; memory coupled to the one or more processors; a video interface coupled to the one or more processors and configured to output video data to a video display device; logic encoded in one or more computer-readable media wherein execution by the one or more processors causes receiving and storing in the memory a plurality of still images from an audiovisual program, wherein each of the still images is associated with a sequentially later time point within the audiovisual program; receiving first user input specifying invocation of a trick play mode of playing the audiovisual program; generating video output to the video interface wherein the video output comprises a first image position comprising one or more of the still images, a linearly second image position comprising one of the still images, and a linearly third image position comprising one or more of the still images; wherein the still images in the video output are arranged in the image positions in sequential order according to time point within the audiovisual program; generating updated video output to the video interface in which the still image of the second image position is shifted into the first image position, one of the still images of the third image position is shifted into the second image position, and one or more new still images are in the third image position.
Abstract:
One embodiment of the invention sets forth an encoding server including components configured to encode a video stream associated with a content title for adaptive streaming. The video stream is first processed by a VC1 encoder to generate an encoded video stream comprising a multiple GOPs, each GOP including a key frame and having a different playback offset. The encoded video stream is then packaged such that the GOPs are stored in data packets of the packaged encoded stream. An SHI generator generates an SHI associated with the packaged encoded stream that includes a switch point associated with each GOP. Each switch point includes the playback offset associated with the corresponding GOP and the data packet storing the key frame of the corresponding GOP. The SHI associated with multiple packaged encoded video streams associated with the same content title and encoded to different playback bit rates have corresponding switch points.