The disclosed computer-implemented methods and systems provide solutions for mitigating misdetection of display devices in connection with a subscription service. In some examples, the described methods and systems receive a content request from a display device, where the content request is correlated with a particular subscription service account. In some examples, the systems and methods further determine that the display device is not associated with the particular subscription service account. To verify the display device, the systems and methods utilize display timings and scan timings associated with a verification token to prove that the display device is validly located and can therefore be trusted in connection with the subscription service account. Various other methods, systems, and computer-readable media are also disclosed.
H04N 21/258 - Client or end-user data management, e.g. managing client capabilities, user preferences or demographics or processing of multiple end-users preferences to derive collaborative data
H04N 21/6334 - Control signals issued by server directed to the network components or client directed to client for authorisation, e.g. by transmitting a key
In various embodiments, a kernel uses a NIC to transmit encrypted data over TCP connections. The kernel causes the NIC to encrypt first data to generate a first transmission control protocol (TCP) packet in accordance with a hardware-based transport layer security (TLS) offload mode. The kernel computes a first re-transmission statistic in response to the first TCP packet failing to reach a first device over a first TCP connection; the kernel assigns the first TCP connection to a software-based TLS offload mode instead of the hardware-based TLS offload mode based on the first re-transmission statistic. Subsequently, the kernel encrypts second data to generate a second TCP packet in accordance with the software-based TLS offload mode, the kernel then causes the NIC to transmit the second TCP packet to the first device over the first TCP connection.
G06F 21/72 - Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information in cryptographic circuits
3.
SYSTEMS AND METHODS FOR PREDICTING AND MITIGATING OUT OF MEMORY KILLS
A computer-implemented method includes identifying static information associated with a computing device that is running a media playback application. The method also includes monitoring the media playback application during a playback session to identify dynamic information associated with the playback session. Still further, the method includes instantiating a trained machine learning (ML) model to determine, based on historical usage data associated with the media playback application, a likelihood that the media playback application will experience an out of memory kill. The trained ML model implements a graded window to indicate a scaled likelihood that an out of memory kill will occur within a specified timeframe. Then, according to the trained ML model's determination, the method generates a prediction that an out of memory kill will occur for the media playback application within the specified timeframe. Various other methods, systems, and computer-readable media are also disclosed.
The disclosed computer-implemented method may include systems and methods for automatically generating sound event subtitles for digital videos. For example, the systems and methods described herein can automatically generate subtitles for sound events within a digital video soundtrack that includes sounds other than speech. Additionally, the systems and methods described herein can automatically generate sound event subtitles as part of an automatic and comprehensive approach that generates subtitles for all sounds within a soundtrack of a digital video—thereby avoiding the need for any manual inputs as part of the subtitling process.
G11B 27/28 - Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
The disclosed computer-implemented method may include accessing an audio stream with heterogenous audio content; dividing the audio stream into a plurality of frames; generating a plurality of spectrogram patches, each spectrogram patch within the plurality of spectrogram patches being derived from a frame within the plurality of frames; and providing each spectrogram patch within the plurality of spectrogram patches as input to a convolutional neural network classifier and receiving, as output, a classification of music within a corresponding frame from within the plurality of frames. Various other methods, systems, and computer-readable media are also disclosed.
G10L 25/51 - Speech or voice analysis techniques not restricted to a single one of groups specially adapted for particular use for comparison or discrimination
G06F 16/683 - Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
G10H 1/00 - ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE - Details of electrophonic musical instruments
G10L 25/30 - Speech or voice analysis techniques not restricted to a single one of groups characterised by the analysis technique using neural networks
6.
TECHNIQUES FOR REUSING PORTIONS OF ENCODED ORIGINAL VIDEOS WHEN ENCODING LOCALIZED VIDEOS
In various embodiments, a localized video encoding application encodes localized videos. In operation, the localized video encoding application computes a prediction frame based on a target frame of a localized video and at least a portion of a reference frame of a decoded original video. The localized video encoding application computes a residual frame based on the prediction frame and the target frame of the localized video. The localized video encoding application performs one or more encoding operations on the residual frame to generate a frame of an encoded localization layer. The frame of the encoded localization layer and at least one frame of an encoded original video are subsequently transmitted to another device for decoding.
H04N 19/30 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using hierarchical techniques, e.g. scalability
H04N 21/23 - Processing of content or additional data; Elementary server operations; Server middleware
H04N 21/80 - Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
A computer-implemented method includes accessing a video frame that includes a plurality of pixels. The method also includes generating a spatial mask that identifies pixels whose likelihood of causing banding within the video frame meets at least a minimum threshold likelihood. The method also includes computing a local distribution for a region of the video frame that includes at least those pixels that were identified by the spatial mask to detect bands in the video frame. The method further includes determining that the detected bands in the video frame are at least a minimum threshold size. The method also includes applying dithering to those detected bands in the video frame that were determined to meet the minimum threshold size. Various other methods, systems, and computer-readable media are also disclosed.
H04N 19/117 - Filters, e.g. for pre-processing or post-processing
H04N 19/86 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression involving reduction of coding artifacts, e.g. of blockiness
H04N 19/85 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
G06T 5/20 - Image enhancement or restoration by the use of local operators
G09G 3/20 - Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix
H03M 1/20 - Increasing resolution using an n bit system to obtain n + m bits, e.g. by dithering
One embodiment of the present invention sets forth a technique for performing schema-driven data processing. The technique includes detecting a first change to a first producer schema for a first dataset produced by a first data processor. The technique also includes performing a compatibility check between the first change and a first consumer schema associated with processing of the first dataset by a second data processor, wherein the first consumer schema includes a set of fields required by the second data processor. The technique further includes modifying an operation of the second data processor based on a result of the compatibility check.
One embodiment of the present invention sets forth a technique, which includes dividing an input image into a first partial image that stores a first subset of bits in each pixel of the input image and a second partial image that stores a second subset of bits that is disjoint from the first subset of bits in each pixel of the input image. The technique also includes modifying a first set of pixels in the first partial image to generate a first partial image processing result and modifying a second set of pixels in the second partial image to generate a second partial image processing result. The technique further includes generating a combined image processing result based on a combination of the first partial image processing result and the second partial image processing result.
In various embodiments, structured pages are dynamically generated based on user inputs. In response to a user input such as a query, a page generating engine ranks content items according to relevance to the user input in order to generate a list of the content items that is ordered based on the relevance. The page generating engine further maps the content items to collections of content items that can be displayed together in a page. Then, the page generating engine generates a structured page that includes a subset of the collections and associated content items that are assigned to collections within the subset of collections based on relevance and/or coherence criteria. Thereafter, the structured page is transmitted to a client device for display via user interface.
In various embodiments, a training application trains a machine learning model to preprocess images. In operation, the training application computes a chroma sampling factor based on a downscaling factor and a chroma subsampling ratio. The training application executes a machine learning model that is associated with the chroma sampling factor on data that corresponds to both an image and a first chroma component to generate preprocessed data corresponding to the first chroma component. Based on the preprocessed data, the training application updates at least one parameter of the machine learning model to generate a trained machine learning model that is associated with the first chroma component.
H04N 19/85 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
G06T 3/40 - Scaling of a whole image or part thereof
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/25 - Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication or learning user preferences for recommending movies
12.
TECHNIQUES FOR COMPONENT-BASED IMAGE PREPROCESSING
In various embodiments, an image preprocessing application preprocesses images. To preprocess an image, the image preprocessing application executes a trained machine learning model on first data corresponding to both the image and a first set of components of a luma-chroma color space to generate first preprocessed data. The image preprocessing application executes at least a different trained machine learning model or a non-machine learning algorithm on second data corresponding to both the image and a second set of components of the luma-chroma color space to generate second preprocessed data. Subsequently, the image preprocessing application aggregates at least the first preprocessed data and the second preprocessed data to generate a preprocessed image.
G06T 3/40 - Scaling of a whole image or part thereof
H04N 19/85 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
13.
PLATFORM AND ARCHITECTURE FOR DISTRIBUTING CONTENT INFORMATION
In various embodiments, a content platform receives, from a user device, a request for a web page. In response to receiving the request for the web page, the content platform retrieves one or more page construction items associated with the web page and one or more page content items associated with the web page, wherein each page construction item included in the one or more page construction items indicates a structure of a different element included in the web page and each page content item included in the one or more page content items indicates a content of a different element included in the web page. The content platform generates a content interface associated with the web page based on the one or more page construction items, the one or more page content items, and user data associated with a user of the user device.
Various embodiments of the present application set forth a computer-implemented method comprising determining a set of digital assets to transfer to a destination device, generating, from the set of digital assets, a corresponding set of chunks, where each chunk is a pre-defined size, for each chunk in the set of chunks, transmitting the chunk to a service node included in a set of service nodes, and verifying that the service node received the chunk, where the set of service nodes receives at least two chunks of the set of chunks in parallel, and after the set of service nodes send the at least two chunks in parallel to the destination device, verifying that the destination device received the set of chunks.
H04N 21/647 - Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load or bridging bet
H04N 21/462 - Content or additional data management e.g. creating a master electronic program guide from data received from the Internet and a Head-end or controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabi
H04N 21/63 - Control signaling between client, server and network components; Network processes for video distribution between server and clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
15.
TECHNIQUES FOR RECONSTRUCTING DOWNSCALED VIDEO CONTENT
In various embodiments an endpoint application reconstructs downscaled videos. The endpoint application accesses metadata associated with a portion of a downscaled video that has a first resolution and was generated using a trained downscaling convolutional neural network (CNN). The endpoint application determines, based on the metadata, an upscaler that should be used when upscaling the portion of the downscaled video. The endpoint application executes the upscaler on the portion of the downscaled video to generate a portion of a reconstructed video that is accessible for playback and has a second resolution that is greater than the first resolution.
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/25 - Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication or learning user preferences for recommending movies
H04N 21/2662 - Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
H04N 21/4402 - Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
H04N 21/466 - Learning process for intelligent management, e.g. learning user preferences for recommending movies
In various embodiments, a match cutting application automatically generates candidate match cuts. In some embodiments, the match cutting application detects shot sequences within one or more video sequences, deduplicates the shot sequences, computes an encoding of each shot sequence after the deduplication, and compares the encodings associated with pairs of shot sequences using a distance metric to identify pairs of shot sequences that can be cut together to generate candidate match cuts. In addition, the match cutting application can apply an approximation technique, such as an approximate nearest neighbor search technique, to identify intermediate pairs of shot sequences prior to comparing encodings associated with the intermediate pairs of shot sequences.
In various embodiments, a media delivery application transmits encoded chunks of a media title to a playback application. In operation, the media delivery application receives, via a media channel, an encoded chunk request that has been transmitted over a TCP connection. The media delivery application also receives, via a side channel, a pacing specification that is associated with the encoded chunk request and has been transmitted over the TCP connection. As per the encoded chunk request, the media delivery application retrieves encoded chunk content. The media delivery application sets a parameter associated with the TCP connection equal to a parameter value based on the pacing specification. Subsequently, the media delivery application causes TCP segments corresponding to the encoded chunk content to be transmitted, via the media channel, over the TCP connection in accordance with the first parameter value.
H04N 21/24 - Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth or upstream requests
H04N 21/442 - Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed or the storage space available from the internal hard disk
H04N 21/845 - Structuring of content, e.g. decomposing content into time segments
H04N 21/2381 - Adapting the multiplex stream to a specific network, e.g. an IP [Internet Protocol] network
H04N 21/258 - Client or end-user data management, e.g. managing client capabilities, user preferences or demographics or processing of multiple end-users preferences to derive collaborative data
H04N 21/238 - Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
H04N 21/61 - Network physical structure; Signal processing
Various embodiments set forth a computer-implemented method for processing media files comprising receiving an index file corresponding to a source media file, wherein the index file indicates location information associated with a plurality of encoded portions of the source media file; retrieving one or more encoded portions included in the plurality of encoded portions from at least one storage device based on the index file; and generating at least part of an encoded version of the source media file based on the one or more encoded portions.
H04N 21/218 - Source of audio or video content, e.g. local disk arrays
H04N 21/222 - Secondary servers, e.g. proxy server or cable television Head-end
H04N 21/231 - Content storage operation, e.g. caching movies for short term storage, replicating data over plural servers or prioritizing data for deletion
H04N 21/232 - Content retrieval operation within server, e.g. reading video streams from disk arrays
H04N 21/234 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/262 - Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission or generating play-lists
H04N 21/845 - Structuring of content, e.g. decomposing content into time segments
One embodiment of the present invention sets forth a technique for optimizing data in a dataset. The technique includes determining, based on one or more attributes of a dataset, an optimization that is associated with at least one of a file encoding, a file size, and a sort column. The technique also includes identifying a plurality of candidate configurations associated with the dataset and corresponding to the optimization, and for each candidate configuration, generating a corresponding set of evaluation metrics associated with the first optimization. The technique further includes determining, based on the sets of evaluation metrics corresponding to the plurality of candidate configurations, a set of configurations in the plurality of candidate configurations to be applied to the dataset. Finally, the technique includes modifying the dataset based on the set of configurations.
The disclosed computer-implemented method may include (1) accessing a video portraying an object within a set of frames, (2) defining a subset of key frames within the video based on movement of the object across the set of frames, (3) generating, for each key frame within the subset of key frames, a spline outlining the object within the key frame, (4) receiving input to adjust, for a selected key frame within the subset of key frames, a corresponding spline, and (5) interpolating the adjusted spline with a spline in a sequentially proximate key frame to define the object in frames between the selected key frame and the sequentially proximate key frame. Various other methods, systems, and computer-readable media are also disclosed.
In various embodiments, a flexible queue application allocates messages stored in priority queues to clients. In operation, the flexible queue application receives, from a client, a request to allocate a message from a priority queue. At least a first message and a second message are stored in the priority queue, and the priority of the first message is higher than the priority of the second message. The flexible queue application determines that the first message is pending but does not satisfy an allocation constraint. The flexible queue allocation then determines that the second message is pending and satisfies the allocation constraint. The flexible queue application allocates the second message to the client. Advantageously, because the flexible queue application can adapt the priority-based ordering of priority queues based on allocation constraints, the flexible queue application can efficiently enforce resource-related constraints when allocating messages from priority queues.
One embodiment of the present invention sets forth a technique for encoding video frames. The technique includes performing one or more operations to generate a plurality of denoised video frames associated with a video sequence. The technique also includes determining a first set of motion vectors based on a first denoised frame included in the plurality of denoised video frames and a second denoised frame included in the plurality of denoised video frames, and determining a first residual between the second denoised frame and a prediction frame associated with the second denoised frame. The technique further includes performing one or more operations to generate an encoded video frame associated with the second denoised frame based on the first set of motion vectors, the first residual, and a first frame that is included in the video sequence and corresponds to the first denoised frame.
H04N 19/105 - Selection of the reference unit for prediction within a chosen coding or prediction mode, e.g. adaptive choice of position and number of pixels used for prediction
H04N 19/11 - Selection of coding mode or of prediction mode among a plurality of spatial predictive coding modes
H04N 19/117 - Filters, e.g. for pre-processing or post-processing
H04N 19/172 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
H04N 19/176 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a block, e.g. a macroblock
H04N 19/85 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using pre-processing or post-processing specially adapted for video compression
23.
CONTEXT-AWARE INTERFACE LAYER FOR REMOTE APPLICATIONS
Various embodiments of the present application set forth a computer-implemented method comprising receiving, at an endpoint device, a user input associated with a first remote application running on a workstation instance associated with the user, determining, based on a context associated with the user input, a first asset associated with the user input, and causing the workstation instance to modify an asset file in a local file system of the workstation instance, wherein the asset file corresponds to at least a portion of the first asset.
G06F 9/451 - Execution arrangements for user interfaces
H04N 21/472 - End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification or for manipulating displayed content
24.
SYSTEMS AND METHODS FOR PROVIDING OPTIMIZED TIME SCALES AND ACCURATE PRESENTATION TIME STAMPS
The disclosed computer-implemented method includes determining, for multiple different media items, a current time scale at which the media items are encoded for distribution, where at least two of the media items are encoded at different frame rates. The method then includes identifying, for the media items, a unified time scale that provides a constant frame interval for each of the media items. The method also includes changing at least one of the media items from the current time scale to the identified unified time scale to provide a constant frame interval for the changed media item(s). Various other methods, systems, and computer-readable media are also disclosed.
H04N 21/242 - Synchronization processes, e.g. processing of PCR [Program Clock References]
H04N 21/232 - Content retrieval operation within server, e.g. reading video streams from disk arrays
H04N 21/236 - Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator ] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
H04N 21/2368 - Multiplexing of audio and video streams
H04N 21/8547 - Content authoring involving timestamps for synchronizing content
H04N 21/43 - Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronizing decoder's clock; Client middleware
25.
SYSTEMS AND METHODS FOR PROVIDING STREAMING TELEMETRY DATA
The disclosed computer-implemented method includes identifying a target networking device communicatively connected to a cluster of networked server instances. The networked server instances are configured to consume network telemetry messages. The method further includes applying a shared lock to the target networking device, so that only a single networked server instance has access to network telemetry messages produced by the target networking device. The method also includes replicating the network telemetry messages produced by the locked target networking device to other server instances in the cluster, and then diverting requests for network telemetry messages from the locked target networking device to another server instance in the cluster of networked server instances. This allows the other server instance in the cluster to service the diverted telemetry data requests for the locked target networking device using the replicated network telemetry messages. Various other methods, systems, and computer-readable media are also disclosed.
H04L 67/10 - Protocols in which an application is distributed across nodes in the network
H04L 67/1095 - Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
H04L 67/12 - Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
26.
ADJUSTABLE LIGHT-EMISSIVE ELEMENTS IN A DISPLAY WALL
In some examples, a system includes a display wall comprising an arrangement of light-emissive elements and a controller, configured to receive camera data and to adjust a light emission profile of the arrangement of light-emissive elements based on the camera data. In some embodiments, the camera data may include camera location data. Various other methods, systems, and computer-readable media are also disclosed.
G09G 3/32 - Control arrangements or circuits, of interest only in connection with visual indicators other than cathode-ray tubes for presentation of an assembly of a number of characters, e.g. a page, by composing the assembly by combination of individual elements arranged in a matrix using controlled light sources using electroluminescent panels semiconductive, e.g. using light-emitting diodes [LED]
Various embodiments of the present application set forth a computer-implemented method comprising receiving, from a client, a request for a workstation instance having a first configuration, in response to the request, generating a first workstation pool associated with the first configuration, wherein the first workstation pool includes at least two unassigned workstation instances having the first configuration, and assigning at least a first workstation instance included in the at least two unassigned workstation instances to the client.
The disclosed computer-implemented method may include accessing a media item that includes multiple media item segments that are to be played back in a specific manner. The method may also include generating playgraphs for the media item, where the playgraphs define different playback paths between media item segments. The method may next include selecting a specific playgraph from the generated playgraphs, and then providing the selected playgraph to a playback device. Playback of the media item according to the selected playgraph may thereby provide a customized presentation of the media item. Various other methods, systems, and computer-readable media are also disclosed.
H04N 21/258 - Client or end-user data management, e.g. managing client capabilities, user preferences or demographics or processing of multiple end-users preferences to derive collaborative data
H04N 21/262 - Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission or generating play-lists
H04N 21/442 - Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed or the storage space available from the internal hard disk
H04N 21/658 - Transmission by the client directed to the server
H04N 21/8549 - Creating video summaries, e.g. movie trailer
29.
TECHNIQUES FOR GENERATING PER-TITLE ENCODING LADDERS
In various embodiments, an encoding ladder application generates encoding ladders for encoding media titles. In operation, the encoding ladder application generates a first convex hull representing encoding tradeoffs between quality and bitrate when encoding a media title at a first resolution. The encoding ladder application generates a second convex hull representing encoding tradeoffs between quality and bitrate when encoding the media title at a second resolution. Based on the first convex hull and the second convex hull, the encoding ladder application generates an overall convex hull. Subsequently, the encoding ladder application generates an encoding ladder for the media title based on at least the overall convex hull and a ladder requirement. Advantageously, the tradeoffs between quality and bitrate represented by the encoding ladder are customized for the media title. Consequently, encoding inefficiencies attributable to conventional fixed-bitrate ladders can be reduced.
H04N 21/234 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs
H04N 19/10 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/2662 - Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
H04N 21/845 - Structuring of content, e.g. decomposing content into time segments
The disclosed computer-implemented method includes accessing cluster hardware information that identifies at least two different types of storage media within a cluster and provides an indication of a respective amount of data throughput for each identified type of storage media. The method next includes accessing popularity information for digital content that is to be stored in the cluster. The popularity information indicates how often the digital content is predicted to be accessed over a specified future period of time. The method also includes allocating the digital content on the different types of storage media within the cluster according to the popularity information. Accordingly, digital content predicted to have higher popularity is placed on storage media types with higher throughput amounts, and digital content predicted to have lower popularity is placed on storage media types with lower throughput amounts. Various other methods, systems, and computer-readable media are also disclosed.
One embodiment sets forth a technique that includes receiving a request for a range of data included in an encoded version of the media title that is stored across a set of files. The technique also includes determining, based on a file extent index, one or more files included in the set of files, wherein the file extent index maps an identifier for each file in the set to a given range of data that is stored in the file and included in the encoded version. The technique further includes retrieving the range of data from the file(s), wherein at least a portion of the retrieved range of data falls within the given range of data that is stored in each of the one or more files, and transmitting the range of data in a response to the request.
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/262 - Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission or generating play-lists
H04N 21/845 - Structuring of content, e.g. decomposing content into time segments
In various embodiments, a banding detection application generates a first set of pixel confidence values based on a first intensity difference value and first image scale associated with a first image, wherein each pixel confidence value included in the first set of pixel confidence values indicates a likelihood that a corresponding pixel included in the first image at the first image scale corresponds to banding in the first image. The banding detection application then generates a banding index corresponding to the first image based on the first set of pixel confidence values.
The disclosed computer-implemented method includes accessing a hard drive to measure operational characteristics of the hard drive. The method next includes deriving hard drive health factors used to control the hard drive that are based on the measured operational characteristics. The derived hard drive health factors include an average per-seek time indicating an average amount of time the hard drive spends seeking specified data that is to be read and an average read speed indicating an average amount of time the hard drive spends reading the specified data. The method next includes determining, based on the hard drive health factors and the operational characteristics, an amount of load servicing capacity currently available at the hard drive, and then includes regulating the amount of load servicing performed by the hard drive according to the determined amount of available load servicing capacity. Various other methods, systems, and computer-readable media are also disclosed.
The disclosed computer-implemented method may include predicting, by a machine learning model, a user action and a timing of the user action for an application on a computing device. The method may also include determining that an expected lag in executing the user action is greater than a predetermined threshold based on one or more resource constraints of the computing device and initializing a setup of the application to reduce the expected lag in executing the user action based on the predicted timing. Furthermore, the method may include prefetching one or more application components in response to initializing the setup of the application and preprocessing at least a portion of a function of the application used to execute the user action. Finally, the method may include executing the user action for the application in response to a user request. Various other methods, systems, and computer-readable media are also disclosed.
In various embodiments, a training application trains a convolutional neural network to downsample images in a video encoding pipeline. The convolution neural network includes at least two residual blocks and is associated with a downsampling factor. The training application executes the convolutional neural network on a source image to generate a downsampled image. The training application then executes an upsampling algorithm on the downsampled image to generate a reconstructed image having the same resolution as the source image. The training application computes a reconstruction error based on the reconstructed image and the source image. The training application updates at least one parameter of the convolutional neural network based on the reconstruction error to generate a trained convolutional neural network. Advantageously, the trained convolution neural network can be implemented in a video encoding pipeline to mitigate visual quality reductions typically experienced with conventional video encoding pipelines that implement conventional downsampling techniques.
H04N 19/117 - Filters, e.g. for pre-processing or post-processing
H04N 19/132 - Sampling, masking or truncation of coding units, e.g. adaptive resampling, frame skipping, frame interpolation or high-frequency transform coefficient masking
H04N 19/82 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals - Details of filtering operations specially adapted for video compression, e.g. for pixel interpolation involving filtering within a prediction loop
H04N 19/172 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
H04N 19/46 - Embedding additional information in the video signal during the compression process
G06T 3/40 - Scaling of a whole image or part thereof
H04N 19/59 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using predictive coding involving spatial sub-sampling or interpolation, e.g. alteration of picture size or resolution
Various embodiments set forth systems and techniques for securing media content capture capabilities on a device. The techniques include receiving a frame of a media content item; determining whether the frame of the media content item is signed based on an analysis of one or more pixels of the frame; and when the media content is signed, removing one or more restrictions on one or more functions on the device based on whether the one or more pixels on the frame meet one or more conditions, wherein the one or more functions enable the device to perform one or more operations on the frame of the media content item.
H04N 21/8358 - Generation of protective data, e.g. certificates involving watermark
H04N 21/44 - Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to MPEG-4 scene graphs
H04N 21/4402 - Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to MPEG-4 scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
In various embodiments, servers in a server pool share a centrally-generated encryption key that is used to encrypt session keys in tickets that can be used by client applications to share secure communication sessions across different servers belonging to the same server pools. When the client application first establishes a secure communication session with a server in a server pool, the server returns a ticket that includes an encrypted version of a session key generated using an encryption key shared by servers in the server pool. Thereafter, the client application can present the ticket to other servers in the server pool to restore the secure communication session with the other servers. Associations between servers and server pools can be communicated to the client application in any technically feasible manner, such as part of information indicating servers from which content can be accessed or via the Domain Name System (DNS).
Various embodiments of the present disclosure relate to a computer-implemented method of receiving a header associated with an object, where the header includes a limit value that specifies a quantity of times the object is to be served from a cache device before revalidation, and a current count value that specifies a number of times that the object has been served since a most-recent revalidation or load, receiving a request for the object from a requesting device, and upon determining that the current count value is below the limit value, serving the object to the requesting device from the cache device, or upon determining that the current count value matches the limit value, transmitting a request for revalidating the object.
In various embodiments, a client application requests information relating to content servers from which particular content can be accessed, or a manifest server that maintains such information and is distinct from the Domain Name System (DNS) automatically determines that the client application is likely to request the content server information. The manifest server then transmits, to the client application, information specifying (1) hostnames associated with the content servers from which the particular content can be accessed, and (2) Internet Protocol (IP) addresses corresponding to the hostnames. Thereafter, the client application can use the IP addresses to connect to the content servers and validate certificates provided by the content servers, in order to establish secure communication channels with the content servers.
In various embodiments, a training application generates a perceptual video model. The training application computes a first feature value for a first feature included in a feature vector based on a first color component associated with a first reconstructed training video. The training application also computes a second feature value for a second feature included in the feature vector based on a first brightness component associated with the first reconstructed training video. Subsequently, the training application performs one or more machine learning operations based on the first feature value, the second feature value, and a first subjective quality score for the first reconstructed training video to generate a trained perceptual quality model. The trained perceptual quality model maps a feature value vector for the feature vector to a perceptual quality score.
H04N 21/44 - Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to MPEG-4 scene graphs
H04N 21/466 - Learning process for intelligent management, e.g. learning user preferences for recommending movies
H04N 21/475 - End-user interface for inputting end-user data, e.g. PIN [Personal Identification Number] or preference data
H04N 19/154 - Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
H04N 19/186 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a colour or a chrominance component
H04N 19/115 - Selection of the code volume for a coding unit prior to coding
41.
TECHNIQUES FOR INCREASING THE ACCURACY OF SUBJECTIVE QUALITY EXPERIMENTS
In various embodiments, a data optimization application mitigates scoring inaccuracies in subjective quality experiments. In operation, the data optimization application generates a model that includes a first set of individual scores and a first set of parameters. The first set of parameters includes a first subjective score set and a first set of subjective factor sets. The data optimization application performs one or more optimization operations on the first set of parameters to generate a second set of parameters. The second set of parameters includes a second subjective score set and a second set of subjective factor sets, wherein the second subjective score set compensates for at least a first subjective factor set included in the second set of subjective factor sets. The data optimization application also computes a participant evaluation report based on at least a second subjective factor setsincluded in the second set of subjective factor sets.
The disclosed computer-implemented method may include (1) accessing a first media data object and a different, second media data object that, when played hack, each render temporally sequenced content, (2) comparing first temporally sequenced content represented by the first media data object with second temporally sequenced content represented by the second media data object to identify a set of common temporal subsequences between the first media data object and the second media data object, (3) identifying a set of edits relative to the set of common temporal subsequences that describe a difference between the temporally sequenced content of the first media data object and the temporally sequenced content of the second media data object, and (4) executing a workflow relating to the first media data object and/or the second media data object based on the set of edits. Various other methods, sy stems, and computer-readable media are also disclosed.
G11B 27/28 - Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
43.
FILE INTERFACE TO DYNAMICALLY MANAGE ACCESS TO REMOTE FILES
Various embodiments of the present application set forth a computer-implemented method for accessing data comprising determining a manifest associated with a given user of an application, where the manifest identifies one or more assets that are accessible by the given user, for each of the one or more assets, one of a plurality of endpoint stores that stores data associated with the asset, and for each of the one or more assets, one of the plurality of endpoint stores that stores metadata associated with the asset, generating, based on the manifest, a user namespace that includes a unique reference for each of the one or more assets, and presenting the user namespace to the user.
The disclosed computer-implemented method includes analyzing, by a speech detection system, a media file to detect lip movement of a speaker who is visually rendered in media content of the media file. The method additionally includes identifying, by the speech detection system, audio content within the media file, and improving accuracy of a temporal correlation of the speech detection system. The method may involve correlating the lip movement of the speaker with the audio content, and determining, based on the correlation between the lip movement of the speaker and the audio content, that the audio content comprises speech from the speaker. The method may further involve recording, based on the determination that the audio content comprises speech from the speaker, the temporal correlation between the speech and the lip movement of the speaker as metadata of the media file. Various other methods, systems, and computer-readable media are disclosed.
In various embodiments, a consistency application constructs a consistent view of an eventually consistent database. The consistency application determines multiple backup files that are associated with at least one datacenter included in the eventually consistent database and extracts aggregated data from the backup files. The consistency application performs compaction operation(s) on the aggregated data to generate compacted data. Notably, the aggregated data includes at least two replicas for each data item stored in the eventually consistent database, whereas the compacted data includes a different consistent data item for each data item stored in that eventually consistent database. The consistency application generated the consistent view of the eventually consistent database based on the compacted data. Because the consistency application generates the consistent view based on backup files and does not access the eventually consistent database, generating the consistent view does not adversely impact the performance of the eventually consistent database.
G06F 16/27 - Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
46.
SYSTEMS AND METHODS FOR PHONEME AND VISEME RECOGNITION
The disclosed computer-implemented method may include training a machine-learning algorithm to use look-ahead to improve effectiveness of identifying visemes corresponding to audio signals by, for one or more audio segments in a set of training audio signals, evaluating an audio segment, where the audio segment includes at least a portion of a phoneme, and a subsequent segment that includes contextual audio that comes after the audio segment and potentially contains context about a viseme that maps to the phoneme. The method may also include using the trained machine-learning algorithm to identify one or more probable visemes corresponding to speech in a target audio signal. Additionally, the method may include recording, as metadata of the target audio signal, where a probable viseme occurs within the target audio signal. Various other methods, systems, and computer-readable media are also disclosed.
The disclosed computer-implemented method includes determining that an image is to be blurred. The image has multiple pixels arranged along horizontal and/or vertical axes. The method next includes identifying a boundary size for a sliding window within which pixel values are to be sampled from the image and sampling, from pixels that lie on an axis that is diagonal relative to the horizontal/vertical axis of the image, various pixel values from within the boundary of the sliding window. The pixels sampled along the diagonal angle within the sliding window are selected according to a specified noise pattern. The method further includes performing an initial convolution pass on the pixels surrounding the sampled pixels to blur at least some of the pixels surrounding the sampled pixels, and then presenting the blurred image. Various other methods, systems, and computer-readable media are also disclosed.
One embodiment of the present invention sets forth a technique for selecting a frame of video content that is representative of a media title. The technique includes applying an embedding model to a plurality of faces included in a set of frames of the video content to generate a plurality of face embeddings. The technique also includes aggregating the plurality of face embeddings into a plurality of clusters representing a plurality of characters included in the media title. The technique further includes computing a plurality of prominence scores for the plurality of characters based on one or more attributes of the plurality of clusters, and selecting, from the set of frames, a frame of video content as representative of the media title based on one or more prominence scores for one or more characters included in the frame.
The disclosed computer-implemented method may include accessing various portions of data, accessing (or generating) neural embeddings for that data. The neural embeddings may be configured to encode semantic information associated with the accessed data into numeric values. The method may also include applying locality sensitive hashing to the accessed neural embeddings to assign data portions encoded within a specified numerical range to a cluster of related data items, and to assign data portions outside of the specified numerical range to a cluster of unrelated data items. Still further, the method may include performing at least one data management operation on the accessed data according to the clustering resulting from the locality sensitive hashing. Various other methods, systems, and computer-readable media are also disclosed.
In various embodiments, a quality inference application estimates perceived audio quality. The quality inference application computes a set of feature values for a set of audio features based on an audio clip. The quality inference application then uses a trained multitask learning model to generate predicted labels based on the set of feature values. The predicted labels specify metric values for metrics that are relevant to audio quality. Subsequently, the quality inference application computes an audio quality score for the audio clip based on the predicted labels.
G10L 25/60 - Speech or voice analysis techniques not restricted to a single one of groups specially adapted for particular use for comparison or discrimination for measuring the quality of voice signals
G10L 25/69 - Speech or voice analysis techniques not restricted to a single one of groups specially adapted for particular use for evaluating synthetic or decoded voice signals
G10L 25/30 - Speech or voice analysis techniques not restricted to a single one of groups characterised by the analysis technique using neural networks
H04M 3/22 - Arrangements for supervision, monitoring or testing
51.
TECHNIQUES FOR DETECTING CHANGES TO CIRCUIT DELAYS IN TELECOMMUNICATIONS NETWORKS
In various embodiments, a monitoring application assesses delays associated with a circuit within a network. The monitoring application determines a measured trip time between a first device and a second device that is connected to the first device via the circuit. The measured trip time is associated with a first variance attributable to the first device. The monitoring application performs one or more digital signal processing operations based on the measured trip time to generate a predicted trip time. The predicted trip time is associated with a second variance attributable to the first device that is less than the first variance. Based on the predicted trip time, the monitoring application determines characteristic(s) of the delay associated with the circuit. Advantageously, reducing variations attributable to the first device when generating the first predicted trip time increases the accuracy with which the monitoring application can determine the characteristic(s) of the delay.
The disclosed computer-implemented method may include identifying an application, on an electronic device, with a minimum requirement for a resource of the electronic device. The method may also include determining that an available amount of the resource of the electronic device does not meet the minimum requirement of the application. Additionally, the method may include selecting, based on the determination, an alternative user-interface mode of the application with a lower minimum requirement for the resource. Furthermore, the method may include instantiating the alternative user-interface mode of the application. Various other methods, systems, and computer-readable media are also disclosed.
In various embodiments, a network emulation application emulates network conditions when testing a software application. In response to a request to emulate a first set of network conditions for a first client device that is executing the software application, causing a kernel to implement a first pipeline and to automatically input network traffic associated with the first client device to the first pipeline instead of a default bridge. In response to a request to emulate a second set of network conditions for a second client device that is executing the software application, causing the kernel to implement a second pipeline and to automatically input network traffic associated with the second client device to the second pipeline instead of the default bridge. Each of the pipelines perform one or more traffic shaping operations on at least a subset of the network traffic input into the pipeline.
The disclosed computer-implemented method may include detecting an application running in a background state on a client device. The method may also include collecting state data about a current state of the client device. Additionally, the method may include determining, by applying a machine learning model to the collected state data, that a likelihood of forcible termination of the application within a predetermined timeframe exceeds a threshold. Furthermore, the method may include reducing a computing resource footprint of the application on the client device to reduce the likelihood of forcible termination of the application. Various other methods, systems, and computer-readable media are also disclosed.
The disclosed computer-implemented method may include obtaining an audio sample from a content source, inputting the obtained audio sample into a trained machine learning model, obtaining the output of the trained machine learning model, wherein the output is a profile of an environment in which the input audio sample was recorded, obtaining an acoustic impulse response corresponding to the profile of the environment in which the input audio sample was recorded, obtaining a second audio sample, processing the obtained acoustic impulse response with the second audio sample, and inserting a result of processing the obtained acoustic impulse response and the second audio sample into an audio track. Various other methods, systems, and computer-readable media are also disclosed.
G11B 27/031 - Electronic editing of digitised analogue information signals, e.g. audio or video signals
G11B 27/28 - Indexing; Addressing; Timing or synchronising; Measuring tape travel by using information detectable on the record carrier by using information signals recorded by the same method as the main recording
G10L 21/02 - Speech enhancement, e.g. noise reduction or echo cancellation
G10L 15/16 - Speech classification or search using artificial neural networks
G10L 25/30 - Speech or voice analysis techniques not restricted to a single one of groups characterised by the analysis technique using neural networks
In various embodiments, a graph streaming application computes a first distance along a first potential playback path between a first playback position and a first media content block. The graph streaming application then computes a first score for the first media content block based on the first distance and a first probability associated with the first potential playback path. Similarly, the graph streaming application computes a second score for a second media content block based on a second playback position, a second potential playback path, and a second probability associated with the second potential playback path. The graph streaming application compares the first score and the second score to determine that the first media content block should be buffered by a client device. The graph streaming application then causes the first media content block to be stored in a playback buffer for subsequent playback on the client device.
H04N 21/433 - Content storage operation, e.g. storage operation in response to a pause request or caching operations
H04N 21/24 - Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth or upstream requests
H04N 21/258 - Client or end-user data management, e.g. managing client capabilities, user preferences or demographics or processing of multiple end-users preferences to derive collaborative data
H04N 21/262 - Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission or generating play-lists
H04N 21/472 - End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification or for manipulating displayed content
H04N 21/845 - Structuring of content, e.g. decomposing content into time segments
57.
WATERMARK-BASED TECHNIQUES FOR CHANGE-DATA-CAPTURE
Various embodiments set forth systems and techniques for concurrent log and dump processing. The techniques include selecting, from a datastore, a chunk comprising one or more rows of data; comparing the one or more rows of data in the chunk with a first set of log events in a change log associated with the datastore, wherein each log event included in the first set of log events occurs after a first log event in the change log and prior to a second log event in the change log; selecting, based on the comparison, one or more non-conflicting rows in the chunk; and transmitting, to an output, one or more log events associated with the one or more non-conflicting rows in the chunk prior to processing a second set of log events in the change log, wherein the second set of log events occur after the second log event.
G06F 16/27 - Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
G06F 16/21 - Design, administration or maintenance of databases
The disclosed computer-implemented method includes accessing information related to a playback session in which at least a portion of requested multimedia content is streamed over a network to a client electronic device. The method further includes accessing network topology information for the network to identify which route through the network was used to provide the requested multimedia content during the playback session, including indicating which end node was used to provide the multimedia content. Still further, the method includes accessing network steering factors that indicate why the requested multimedia content was steered through the identified network route, determining, based on the network steering factors, which end node would have been more suited to providing the requested multimedia content for the playback session, and then transferring the requested multimedia content to the determined end node for provisioning during subsequent playback sessions. Various other methods, systems, and computer-readable media are also disclosed.
H04N 21/472 - End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification or for manipulating displayed content
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04W 40/02 - Communication route or path selection, e.g. power-based or shortest path routing
H04L 29/06 - Communication control; Communication processing characterised by a protocol
H04N 21/258 - Client or end-user data management, e.g. managing client capabilities, user preferences or demographics or processing of multiple end-users preferences to derive collaborative data
H04N 21/647 - Control signaling between network components and server or clients; Network processes for video distribution between server and clients, e.g. controlling the quality of the video stream, by dropping packets, protecting content from unauthorised alteration within the network, monitoring of network load or bridging bet
H04L 12/707 - Route fault prevention or recovery, e.g. rerouting, route redundancy, virtual router redundancy protocol [VRRP] or hot standby router protocol [HSRP] using path redundancy
59.
TECHNIQUES FOR COMPRESSING IMAGES TO ACHIEVE A TARGET QUALITY LEVEL
In various embodiments, an image encoding application determines a first value for an encoding parameter based on a search interval. The image encoding application then encodes a source image using the first value for the encoding parameter to generate a first encoded image. Subsequently, the image encoding application computes a visual quality score for a first reconstructed source image derived from the first encoded image. The image encoding application reduces the search interval based on a comparison between the visual quality score and the target visual quality score. Based on the resulting reduced search interval, the image encoding application determines a second value for the encoding parameter. The image encoding application encodes the source image using the second value for the encoding parameter to generate a second encoded image. Subsequently, the image encoding application transmits the second encoded image to software application(s) for further processing and display.
H04N 19/154 - Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
H04N 19/172 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being an image region, e.g. an object the region being a picture, frame or field
H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
60.
TECHNIQUES FOR AUTOMATICALLY EXTRACTING COMPELLING PORTIONS OF A MEDIA CONTENT ITEM
In various embodiments, a clip application computes a set of appearance values for an appearance metric based on shot sequences associated with a media content item. Each appearance value in the set of appearance values indicates a prevalence of a first character in a different shot sequence associated with the media content item. The clip application then performs one or more clustering operations on the shot sequences based on the set of appearance values to generate a first shot cluster. Subsequently, the clip application generates a clip for the media content item based on the first shot cluster. The clip application transmits the clip to an endpoint device for display. Advantageously, relative to primarily manual approaches, the clip application can more efficiently and reliably generate clips for media content items.
The disclosed computer-implemented method may include accessing media segments that correspond to respective media items. At least one of the media segments may be divided into discrete video shots. The method may also include matching the discrete video shots in the media segments to corresponding video shots in the corresponding media items according to various matching factors. The method may further include generating a relative similarity score between the matched video shots in the media segments and the corresponding video shots in the media items, and training a machine learning model to automatically identify video shots in the media items according to the generated relative similarity score between matched video shots. Various other methods, systems, and computer-readable media are also disclosed.
The disclosed computer-implemented method may include accessing updated data structures that are to be included in a user interface functionality test, where the updated data structures contribute to a user interface. The method may also include accessing live or snapshotted data captured from services running in a production environment, initiating generation of a first user interface instance using the updated data structures and using the accessed live or snapshotted data, and initiating generation of a second user interface instance using a different version of the data structures and using the same accessed live or snapshotted data. The method further includes comparing the first user interface instance to the second user interface instance to identify differences and then determine which outcome-defining effects the updated data structures had on the user interface based on the identified differences between the user interfaces. Various other methods, systems, and computer-readable media are also disclosed.
The disclosed computer-implemented method may include receiving, from a client device, a request for multimedia content, where the request includes both a manifest request that includes client identification data and a license request that includes a license challenge. The method may further include validating the received request for multimedia content using the client identification data in the manifest request and generating a manifest response that includes an identification of a specified multimedia content stream that is to be provided to the client device. The method may also include acquiring at least one license in response to the license request, where the license includes a response to the license challenge having various content keys, and then providing the specified multimedia content stream, including the generated manifest response and the acquired license, to the client device. Various other methods, systems, and computer-readable media are also disclosed.
The disclosed computer-implemented method for smoothing audio gaps using adaptive metadata identifies an initial audio segment and a subsequent audio segment that follows the initial audio segment. The method accesses a first set of metadata that corresponds to a last audio frame of the initial audio segment and accesses a second set of metadata that corresponds to the first audio frame of the subsequent audio segment. The first and second sets of metadata include audio characteristic information for the two audio segments. The method then generates a new set of metadata that is based on both sets of audio characteristics. The method further inserts a new audio frame between the last audio frame of the initial audio segment and the first audio frame of the subsequent audio segment and applies the new set of metadata to the new audio frame. Various other methods, systems, and computer-readable media are also disclosed.
H04N 21/236 - Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator ] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
H04N 21/84 - Generation or processing of descriptive data, e.g. content descriptors
H04N 21/242 - Synchronization processes, e.g. processing of PCR [Program Clock References]
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/44 - Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to MPEG-4 scene graphs
H04N 21/845 - Structuring of content, e.g. decomposing content into time segments
G11B 27/02 - Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
G10L 21/0316 - Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude
G10L 21/0356 - Speech enhancement, e.g. noise reduction or echo cancellation by changing the amplitude for synchronising with other signals, e.g. video signals
G10L 21/055 - Time compression or expansion for synchronising with other signals, e.g. video signals
65.
IMPROVED AUDIO TRANSITIONS WHEN STREAMING AUDIOVISUAL MEDIA TITLES
A playback application is configured to analyze audio frames associated with transitions between segments within a media title to identify one or more portions of extraneous audio. The playback application is configured to analyze the one or more portions of extraneous audio and then determine which of the one or more corresponding audio frames should be dropped. In doing so, the playback application can analyze a topology associated with the media title to determine whether any specific portions of extraneous audio are to be played outside of a logical ordering of audio samples set forth in the topology. These specific portions of extraneous audio are preferentially removed.
In various embodiments, a function build application compiles source code to generate an executable version of a function that has a first function signature. The function build application then replaces a first data type of a first parameter included in the first function signature with a second data type to generate a second function signature for a client stub function. Subsequently, the function build application generates a remote procedure call (RPC) client that includes the client stub function. Notably, the RPC client causes the function to execute when the client stub function is invoked. Advantageously, unlike conventional techniques that require manual generation of strongly typed functions, the function build application automatically customizes the RPC client for the function.
In various embodiments, domain name system (DNS) servers are implemented on a content distribution network (CDN) infrastructure in order to facilitate centralized control of traffic steering. Each server appliance in the CDN infrastructure acts as both an authoritative DNS nameserver and a dynamic request proxy, and each such server appliance is assigned to one of multiple cloud computing system regions. The assignment of server appliances to cloud regions is based on latency measurements collected via client application probes and an optimization that minimizes an overall latency experienced by the client applications subject to constraints that the maximum traffic to each cloud region is less than a capacity constraint for that region, the maximum deviation of traffic to each cloud regions at any point in time is less than a given percentage, and the maximum deviation of traffic between direct and indirect paths is less than a given percentage.
In various embodiments, a service worker processes network requests by proxying the network requests via a content distribution network. The service worker intercepts a network request from a client application, generates a duplicate network request, and changes certain elements of the duplicate network request. The intercepted request can be an initial document request used to load a webpage or a subsequent request that includes an application programming interface (API) call. The service worker transmits the duplicate network request to a content distribution network that proxies the duplicate request to a cloud computing system, thereby accelerating that request.
Various embodiments set forth systems and techniques for training a sentence preprocessing model. The techniques include determining, using a machine translation system, a back translation associated with a ground truth translation of a source sentence in a source language to a target language, wherein the back translation comprises a translation of the ground truth translation from one or more target languages to the source language; determining, using the sentence preprocessing model, a simplified sentence associated with the source sentence; and updating one or more parameters of the sentence preprocessing model based on the simplified sentence and the back translation.
The disclosed computer-implemented method includes accessing data that is to be used as part of a test implementation that has multiple potential outcomes. The method also includes determining that the test implementation is to be carried out using specified testing algorithms that test for at least one of the potential outcomes. The method next includes identifying portions of the accessed data that are to be used in the specified testing algorithms, and compressing the identified portions of the accessed data to remove portions of the accessed data that are unused in the specified testing algorithms. The method also includes executing the test implementation using the specified testing algorithms with the compressed accessed data. Corresponding systems and computer-readable media are also disclosed.
Various embodiments of the present application set forth a computer-implemented method that includes receiving, by a first service operating within a computing system, a modified identity data object from a second service operating within the computing system, where the modified identity data object includes at least one identifier associated with a client of the computing system determining, by the first service, that the second service performed a first action on an identity data object to generate the modified identity data object, and validating the modified identity data object based on whether the second service is authorized to perform the first action.
In various embodiments, an encoder comparison application compares the performance of different configured encoders. In operation, the encoder comparison application generates a first global convex hull of video encode points based on a first configured encoder and a set of subsequences included in a source video sequence. Each video encode point is associated with a different encoded version of the source video sequence. The encoder comparison application also generates a second global convex hull of video encode points based on a second configured encoder and the subsequences. Subsequently, the encoder configuration application computes a performance value for an encoding comparison metric based on the first global convex hull and the second global convex hull. Notably, the first performance value estimates a difference in performance between the first configured encoder and the second configured encoder.
H04N 19/12 - Selection from among a plurality of transforms or standards, e.g. selection between discrete cosine transform [DCT] and sub-band transform or selection between H.263 and H.264
H04N 19/154 - Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
H04N 19/179 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
The disclosed method includes accessing video content encoded at a specified frame rate, and determining a refresh rate for an electronic display on which the video content is to he presented. The method next includes specifying a time interval for the video content over which frame rate conversion is to he applied to synchronize the video content frame rate with the electronic display refresh rate. The method also includes presenting the video content on the electronic display where the playback speed is adjusted for a first part of the interval. At this adjusted speed, the interval is played back using original video frames and multiple frame duplications. The presenting also adjusts playback speed of a second part of the interval. At the adjusted speed, the interval is played back using the original frames and a different number of frame duplications. Various other methods, systems, and computer -readable media are also disclosed.
Various embodiments of the present disclosure relate to a computer-implemented method of receiving an invalidation command that includes a first asset identifier, and a set of extension value fields, identifying a first file that is stored in a first cache device and is associated with an identifier matching the first asset identifier, comparing attributes of the first file to the set of extension value fields, and upon determining that, for each extension value field, at least one attribute of the first file matches at least one value of the extension value field, causing the first file in the first cache device to be preserved, or upon determining that, for at least one extension value, at least one attribute of the first file does not match at least one value of the extension value field, causing the first file to be invalidated.
The disclosed computer-implemented method includes applying transport protocol heuristics to selective acknowledgement (SACK) messages received at a network adapter from a network node. The transport protocol heuristics identify threshold values for operational functions that are performed when processing the SACK messages. The method further includes determining, by applying the transport protocol heuristics to the SACK messages received from the network node, that the threshold values for the transport protocol heuristics have been reached. In response to determining that the threshold values have been reached, the method includes identifying the network node as a security threat and taking remedial actions to mitigate the security threat. Various other methods, systems, and computer-readable media are also disclosed.
H04L 29/06 - Communication control; Communication processing characterised by a protocol
H04L 1/16 - Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
76.
AUTOMATED VIDEO CROPPING USING RELATIVE IMPORTANCE OF IDENTIFIED OBJECTS
The disclosed computer-implemented method may include receiving, as an input, segmented video scenes, where each video scene includes a specified length of video content. The method may further include scanning the video scenes to identify objects within the video scene and also determining a relative importance value for the identified objects. The relative importance value may include an indication of which objects are to be included in a cropped version of the video scene. The method may also include generating a video crop that is to be applied to the video scene such that the resulting cropped version of the video scene includes those identified objects that are to be included based on the relative importance value. The method may also include applying the generated video crop to the video scene to produce the cropped version of the video scene. Various other methods, systems, and computer-readable media are also disclosed.
H04N 21/258 - Client or end-user data management, e.g. managing client capabilities, user preferences or demographics or processing of multiple end-users preferences to derive collaborative data
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
G11B 27/02 - Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
H04N 1/387 - Composing, repositioning or otherwise modifying originals
G06K 9/00 - Methods or arrangements for reading or recognising printed or written characters or for recognising patterns, e.g. fingerprints
H04N 21/234 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs
H04N 21/44 - Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to MPEG-4 scene graphs
H04N 21/4728 - End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification or for manipulating displayed content for selecting a ROI [Region Of Interest], e.g. for requesting a higher resolution version of a selected region
Various embodiments of the present application set forth a computer-implemented method for accessing data comprising receiving, by a first storage controller at a first spoke network and from an entity remote to the first spoke network, a message identifying a first content item, where the first content item is identified based on a task that is to be performed by accessing the first content item, determining, by the first storage controller, a first storage partition that stores the first content item, where the first storage partition is included in a tiered group of storage partitions accessible by the first spoke network, retrieving, by the first storage controller from the first storage partition, the first content item, and causing, by the first storage controller, the first content item to be transmitted to a second spoke network for storage in a second storage partition accessible by the second spoke network.
One embodiment of the present disclosure sets forth a technique for generating translation suggestions. The technique includes receiving a sequence of source-language subtitle events associated with a content item, where each source-language subtitle event includes a different textual string representing a corresponding portion of the content item, generating a unit of translatable text based on a textual string included in at least one source-language subtitle event from the sequence, translating, via software executing on a machine, the unit of translatable text into target-language text, generating, based on the target-language text, at least one target-language subtitle event associated with a portion of the content item corresponding to the at least one source-language subtitle event, and generating, for display, a subtitle presentation template that includes the at least one target-language subtitle event.
Various embodiments disclose a computer-implemented method that includes receiving, subsequent to a first font file being stored in read-only memory, a first font patch file for storage in read-write memory, where each of the first font file and the first font patch file is associated with a first font and includes a different set of glyphs used to render characters for display, and a first set of glyphs included in the first font file is static, determining that a first text string includes a first set of characters to be rendered, retrieving, from at least one of the first font file and the first font patch file depending on whether a first glyph is included in the first set of glyphs, the first glyph corresponding to a first character included in the first set of characters, and rendering a portion of the first text string using the first glyph.
Various embodiments disclose a method for maintaining file versions in volatile memory. The method includes storing, in volatile memory for at least a first portion of a first sync interval, a first version of a file that is not modifiable during the at least the first portion of the first sync interval. The method also includes storing, in volatile memory for at least a second portion of the first sync interval, a second version of the file that is modifiable during the at least the second portion of the first sync interval. The method also includes subsequent to the first sync interval, replacing in nonvolatile memory, a third version of the file with the first version of the file stored in volatile memory. Further, the method includes marking the second version of the file as not modifiable during at least a first portion of a second sync interval.
In various embodiments, a predictive assignment application computes a forecasted amount of processor use for each workload included in a set of workloads using a trained machine-learning model. Based on the forecasted amounts of processor use, the predictive assignment application computes a performance cost estimate associated with an estimated level of cache interference arising from executing the set of workloads on a set of processors. Subsequently, the predictive assignment application determines processor assignment(s) based on the performance cost estimate. At least one processor included in the set of processors is subsequently configured to execute at least a portion of a first workload that is included in the set of workloads based on the processor assignment(s). Advantageously, because the predictive assignment application generates the processor assignment(s) based on the forecasted amounts of processor use, the isolation application can reduce interference in a non-uniform memory access (NUMA) microprocessor instance.
In various embodiments, a proxy application processes requests associated with a network-based service. In operation, the proxy application determines that a first request received from a client application indicates that a response to the first request can be offloaded from a server machine. Prior to transmitting the first request to the server machine, the proxy application transmits a response to the first request to the client application. The response indicates that the server machine has successfully processed the first request. Advantageously, upon receiving the response, the client application is able to initiate a second request irrespective of the server machine.
In various embodiments, an isolation application determines processor assignment(s) based on a performance cost estimate. The performance cost estimate is associated with an estimated level of cache interference arising from executing a set of workloads on a set of processors. Subsequently, the isolation application configures at least one processor included in the set of processors to execute at least a portion of a first workload that is included in the set of workloads based on the processor assignment(s). Advantageously, because the isolation application generates the processor assignment(s) based on the performance cost estimate, the isolation application can reduce interference in a non-uniform memory access (NUMA) microprocessor instance.
Various embodiments of the present application set forth a computer-implemented method for accessing data comprising identifying a first set of read operations occurring during a first time period, where each read operation included in the set of read operations is associated with retrieving a different portion of at least one object from a storage system, determining a byte density associated with the set of read operations, where the byte density indicates a size of contiguous portions of the at least one object that were retrieved during the first time period, and determining, based on the byte density, a pre-buffering block size for a read operation during a second period, where the pre-buffering block size specifies a size of a portion of at least one object that is to be retrieved from the storage system.
A playback application seamlessly advances playback of and interactive media title in response to user selections in a manner that minimizes latency and preserves user immersion in a narrative. The playback application buffers an interstitial segment included in the interactive media title and feeds portions of the interstitial segment to a media player only when those portions are needed for display. When the user selects an option displayed during the interstitial segment, the playback application begins buffering a subsequent media segment and stops feeding portions of the interstitial segment to the media player. The playback application starts feeding blocks of the subsequent media segment to the media player and then seamlessly advances playback to the subsequent media segment.
H04N 21/44 - Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to MPEG-4 scene graphs
H04N 21/845 - Structuring of content, e.g. decomposing content into time segments
H04N 21/8541 - Content authoring involving branching, e.g. to different story endings
86.
TECHNIQUES FOR EFFICIENTLY PERFORMING SUBSEQUENCE-BASED ENCODING FOR A MEDIA TITLE
In various embodiments, an interpolation-based encoding application encodes a first subsequence included in a media title at each encoding point included in a first set of encoding points to generate encoded subsequences. Subsequently, the interpolation-based encoding application performs interpolation operation(s) based on the encoded subsequences to estimate a first media metric value associated with a first encoding point that is not included in the first set of encoding points. The interpolation-based encoding application then generates an encoding recipe based on the encoded subsequences and the first media metric value. The encoding recipe specifies a different encoding point for each subsequence included in the media title. After determining that the encoding recipe specifies the first encoding point for the first subsequence, the interpolation-based encoding application encodes the first subsequence at the first encoding point to generate at least a portion of an encoded version of the media title.
H04N 19/179 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 19/147 - Data rate or code amount at the encoder output according to rate distortion criteria
H04N 19/149 - Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
H04N 19/115 - Selection of the code volume for a coding unit prior to coding
87.
INTERACTIVE INTERFACE FOR IDENTIFYING DEFECTS IN VIDEO CONTENT
The disclosed computer-implemented method may include accessing defect identification data that identifies defects in frames of video content. The method may also include generating, as part of the interactive user interface, an interactive element that presents the frames of video content. The method may further include generating, as part of the interactive user interface, another interactive element that presents selectable metadata items associated with the identified defects in the frames of video content. At least one of the selectable metadata items may include an associated user interface action. Then, upon receiving an input selecting one of the selectable metadata items, the method may include performing the associated user interface action. Various other methods, systems, and computer-readable media are also disclosed.
H04N 21/234 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs
H04N 17/00 - Diagnosis, testing or measuring for television systems or their details
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/84 - Generation or processing of descriptive data, e.g. content descriptors
The disclosed computer-implemented method may include accessing a pre-rendered multimedia item. The pre-rendered multimedia item may have branching logic associated with it, where the branching logic includes branching points that direct non-sequential playback of the pre-rendered multimedia item. The method may also include initializing playback of the pre-rendered multimedia item and accessing, at the branching points, various trigger conditions that direct playback order of different segments of the pre-rendered multimedia item. The method may then include updating, based on the trigger conditions, at least some portion of custom state data. The method may further include playing back the segments of the pre-rendered multimedia item according to the updated state data. Various other methods, systems, and computer-readable media are also disclosed.
In various embodiments, a buffer-based encoding application generates a first convex hull of subsequence encode points based on multiple encoding points and a first subsequence associated with a media title. The buffer-based encoding application then generates a first global convex hull of media encode points based on a transmission buffer constraint, the first convex hull, and a second global convex hull of media encode points. Notably, the second global convex hull is associated with a portion of the media title that occurs before the first subsequence in a playback order for the media title. Subsequently, the subsequence-based encoding application selects a first media encode point included in the first global convex hull based on a media metric and determines a first encoded media sequence based on the selected media encode point. The first encoded media sequence is subsequently streamed to an endpoint device during playback of the media title.
H04N 21/234 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/2662 - Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
H04N 21/44 - Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to MPEG-4 scene graphs
H04N 21/845 - Structuring of content, e.g. decomposing content into time segments
H04N 19/147 - Data rate or code amount at the encoder output according to rate distortion criteria
H04N 19/149 - Data rate or code amount at the encoder output by estimating the code amount by means of a model, e.g. mathematical model or statistical model
H04N 19/15 - Data rate or code amount at the encoder output by monitoring actual compressed data size at the memory before deciding storage at the transmission buffer
H04N 19/152 - Data rate or code amount at the encoder output by measuring the fullness of the transmission buffer
H04N 19/146 - Data rate or code amount at the encoder output
The disclosed computer-implemented method includes receiving an indication that cache data is to be copied from an originating cluster having a specified number of replica nodes to a destination cluster having an arbitrary number of replica nodes. The method further includes copying the cache data to a cache dump and creating a log that identifies where the cache data is stored in the cache dump. The method further includes copying the cache data from the cache dump to the replica nodes of the destination cluster. The copying includes writing the copied data in a distributed manner, such that at least a portion of the copied data is distributed over each of the replica nodes in the destination cluster. Various other methods, systems, and computer-readable media are also disclosed.
In various embodiments, a subsequence-based encoding application generates a first set of subsequence encode points based on multiple encoding points and a first subsequence included in a set of subsequences that are associated with a media title. Notably, each subsequence encode point is associated with a different encoded subsequence. The subsequence-based encoding application then performs convex hull operation(s) across the first set of subsequence encode points to generate a first convex hull. The subsequence-based encoding application then generates an encode list that includes multiple subsequence encode points based on multiple convex hulls, including the first convex hull. Subsequently, the subsequence-based encoding application performs filtering operation(s) on the encode list based on a variability constraint associated with a media metric to generate an upgrade candidate list. Finally, the subsequence-based encoding application generates an encoded media sequence based on the upgrade candidate list and the first convex hull.
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/238 - Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
H04N 19/115 - Selection of the code volume for a coding unit prior to coding
H04N 19/147 - Data rate or code amount at the encoder output according to rate distortion criteria
H04N 19/154 - Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
H04N 19/179 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
92.
TECHNIQUES FOR ENCODING A MEDIA TITLE WHILE CONSTRAINING QUALITY VARIATIONS
In various embodiments, a subsequence-based encoding application generates a convex hull of subsequence encode points based on multiple encoding points and a first subsequence included in a set of subsequences that are associated with a media title. The subsequence-based encoding application then generates a first encode list that includes multiple subsequence encode points based on the first convex hull. Notably, each subsequence encode point included in the first encode list is associated with a different subsequence. The subsequence-based encoding application selects a first subsequence encode point included in the first encode list based on a first variability constraint that is associated with a media metric. The subsequence-based encoding application then replaces the first subsequence encode point included in the first encode list with a second subsequence encode point to generate a second encode list. Finally, the subsequence-based encoding application generates an encoded media sequence based on the second encode list.
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/238 - Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
H04N 19/115 - Selection of the code volume for a coding unit prior to coding
H04N 19/147 - Data rate or code amount at the encoder output according to rate distortion criteria
H04N 19/154 - Measured or subjectively estimated visual quality after decoding, e.g. measurement of distortion
H04N 19/179 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the coding unit, i.e. the structural portion or semantic portion of the video signal being the object or the subject of the adaptive coding the unit being a scene or a shot
H04N 19/192 - Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using adaptive coding characterised by the adaptation method, adaptation tool or adaptation type used for the adaptive coding the adaptation method, adaptation tool or adaptation type being iterative or recursive
93.
TECHNIQUES FOR IDENTIFYING SYNCHRONIZATION ERRORS IN MEDIA TITLES
A neural network system that is trained to identify one or more portions of a media title where synchronization errors are likely to be present. The neural network system is trained based on a first set of media titles where synchronization errors are present and a second set of media titles where synchronization errors are absent. The second set of media titles can be generated by introducing synchronization errors into a set of media titles that otherwise lack synchronization errors. Via training, the neural network system learns to identify specific visual features included in one or more video frames and corresponding audio features that should be played back in synchrony with the associated visual features. Accordingly, when presented with a media title that includes synchronization errors, the neural network can indicate the specific frames where synchronization errors are likely to be present.
The disclosed computer-implemented method includes determining that audio quality is to be adjusted for a multimedia streaming connection over which audio data and video data are being streamed to a content player. The audio data is streamed at a specified audio quality level and the video data is streamed at a specified video quality level. The method also includes determining that a specified minimum video quality level is to be maintained while adjusting the audio quality level. Still further, the method includes dynamically adjusting the audio quality level of the multimedia streaming connection while maintaining the video quality level of the multimedia streaming connection at at least the specified minimum video quality level. Various other methods, systems, and computer-readable media are also disclosed.
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/234 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs
H04N 21/2381 - Adapting the multiplex stream to a specific network, e.g. an IP [Internet Protocol] network
H04N 21/2662 - Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
H04N 21/239 - Interfacing the upstream path of the transmission network, e.g. prioritizing client requests
95.
IDENTIFYING IMAGE AESTHETICS USING REGION COMPOSITION GRAPHS
The disclosed computer-implemented method may include generating a three-dimensional (3D) feature map for a digital image using a fully convolutional network (FCN). The 3D feature map may be configured to identify features of the digital image and identify an image region for each identified feature. The method may also include generating a region composition graph that includes the identified features and image regions. The region composition graph may be configured to model mutual dependencies between features of the 3D feature map. The method may further include performing a graph convolution on the region composition graph to determine a feature aesthetic value for each node according to the weightings in the node's weighted connecting segments, and calculating a weighted average for each node's feature aesthetic value to provide a combined level of aesthetic appeal for the digital image. Various other methods, systems, and computer-readable media are also disclosed.
In various embodiments, a training application generates a preference prediction model based on an interaction matrix and a closed-form solution for minimizing a Lagrangian. The interaction matrix reflects interactions between users and items, and the Lagrangian is formed based on a constrained optimization problem associated with the interaction matrix. A service application generates a first application interface that is to be presented to the user. The service application computes predicted score(s) using the preference prediction model, where each predicted score predicts a preference of the user for a different item. The service application then determines a first item from the items to present to the user via an interface element included in the application interface. Subsequently, the service application causes a representation of the first item to be displayed via the interface element included in the application interface.
In various embodiments, a subsequence-based encoding application generates subsequences based on a source sequence associated with a media title. The subsequence-based encoding application then encodes both a first subsequence and a second subsequence across each of multiple configured encoders and at least one rate control value to generate, respectively, a first set of encoded subsequences and a second set of encoded subsequences. Notably, each configured encoder is associated with a combination of an encoder and a configuration, and at least two configured encoders are different from one another. Subsequently, the subsequence-based encoding application generates encoded media sequences based on the first set of encoded subsequences and the second set of encoded subsequences. Finally, the application selects a first encoded media sequence from the encoded media sequences based on a first target value for a media metric to subsequently stream to a first endpoint device during playback of the media title.
H04N 21/23 - Processing of content or additional data; Elementary server operations; Server middleware
H04N 21/25 - Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication or learning user preferences for recommending movies
A computer-implemented method of displaying video content includes, based on an input to transition playback of a video content item from a first media player that is instantiated in a user interface to a second media player that is instantiated in the user interface, determining a current value of a first state descriptor associated with the first media player; setting a value of a second state descriptor associated with the second media player to match the current value of the first state descriptor; and after setting the value of the second state descriptor, causing the second media player to begin playback of the video content item, wherein the second media player begins playing the video content item based on the value of the second state descriptor.
H04N 21/485 - End-user interface for client configuration
H04N 21/472 - End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification or for manipulating displayed content
99.
DYNAMICALLY ADJUSTING TEXT STRINGS BASED ON MACHINE TRANSLATION FEEDBACK
The disclosed computer-implemented method may include accessing a string of text that includes characters written in a first language. The method may next include translating the text string into different languages using machine translation. The method may next include identifying, among the translated text strings, a shortest string and a longest string. The method may also include calculating a customized string length adjustment ratio for adjusting the length of the accessed text string based on the shortest translated string length and the longest translated string length. Furthermore, the method may include dynamically applying the calculated customized string length adjustment ratio to the accessed text string, so that the length of the accessed text string may be dynamically adjusted according to the customized string length adjustment ratio. The method may also include presenting the adjusted text string in the user interface. Various other methods, systems, and computer-readable media are also disclosed.
A playback application is configured to dynamically generate topology for an interactive media title. The playback application obtains an initial topology and also collects various data associated with a user interacting with the feature. The playback application then modifies the initial topology, based on the collected data, to generate a dynamic topology tailored to the user. The dynamic topology describes the set of choices available to the user during playback as well as which options can be selected by the user when making a given choice. In addition, the playback application also selectively buffers different portions of the interactive media title, based on the collected data, in anticipation of the user selecting particular options for available choices.
H04N 21/2343 - Processing of video elementary streams, e.g. splicing of video streams or manipulating MPEG-4 scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
H04N 21/25 - Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication or learning user preferences for recommending movies
H04N 21/8541 - Content authoring involving branching, e.g. to different story endings
H04N 21/44 - Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to MPEG-4 scene graphs
H04N 21/4725 - End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification or for manipulating displayed content for requesting additional data associated with the content using interactive regions of the image, e.g. hot spots
H04N 21/442 - Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed or the storage space available from the internal hard disk