Unicorn Media, Inc. Patent applications |
Patent application number | Title | Published |
20150207754 | LOAD BALANCING FOR MESH COMPUTING - Techniques for load balancing in a network of nodes can include a first node receiving and/or generating a request having an identifier, task description, and information regarding an entity originating the request. The first node can either perform the task and report back to the originating entity of the completion of the task, or forward the request to a random one of a plurality of other nodes with which the first node is communicatively connected. | 07-23-2015 |
20150095511 | DYNAMIC CHUNK MANIPULATION FOR STREAMING MIXED LIVE AND ON-DEMAND MEDIA: DYNAMIC PERMUTATION LAYER - Timestamps for streams of media that transition from one media source to another (such as from live content to on-demand content, and vice versa) can be rewritten by a server to help ensure error-free streaming by the client. Embodiments can coordinate the creation of a client manifest with the dynamic creation of a requested segment of media (i.e., “chunk”) to determine how to rewrite timestamps of requested chunks such that they are continuous through the transition. | 04-02-2015 |
20150095461 | DYNAMIC CHUNK MANIPULATION FOR STREAMING MIXED LIVE AND ON-DEMAND MEDIA: APPLICATION PROGRAMMING INTERFACE - Timestamps for streams of media that transition from one media source to another (such as from live content to on-demand content, and vice versa) can be rewritten by a server to help ensure error-free streaming by the client. Embodiments can coordinate the creation of a client manifest with the dynamic creation of a requested segment of media (i.e., “chunk”) to determine how to rewrite timestamps of requested chunks such that they are continuous through the transition. | 04-02-2015 |
20140316899 | LIVE AD PROCESSING ENGINE SERVICE - Techniques described herein provide for a live advertising processing engine service to act as an intermediary between client applications and advertising networks. The live advertising processing engine service can provide an interface with which the client can interact, via an application programming interface (API) or directly through the use of a standardized language, thereby allowing client applications to receive advertisement data without the need to be customized to communicate with specific advertising networks. The live advertising processing engine service can further track where, in playback the live content, a client currently is, to indicate to the client—or other application—when advertisement breaks are and/or provide supplemental advertisement information to enable the client to provide a rich user experience. | 10-23-2014 |
20140280270 | DEMOGRAPHIC DETERMINATION FOR MEDIA CONSUMPTION ANALYTICS - A system, method and apparatus are disclosed which may be used to provide demographic and behavior data of a user of a video service provider. The user demographic information may be obtained by obtaining an image of the user, analyzing the image data, and providing the information about the determined demographic data. Behavior data may be obtained from at least one sensor monitoring user actions and correlating the user actions with video content being provided to the user. | 09-18-2014 |
20140214890 | DATABASE SHARD ARBITER - Techniques described herein provide for a shard arbiter to act as an intermediary between querying and/or data-inserting applications and sharded databases. The shard arbiter can provide an interface with which the applications can provide a request (e.g., data insert and/or query) in any of a variety of database languages, and the data is inserted into and/or retrieved from sharded databases without the need for customization or any knowledge of how data is sharded. The shard arbiter can use business rules to determine how data is sharded among databases, and may utilize different types of databases—communicating with each database in its native language. | 07-31-2014 |
20140177964 | VIDEO IMAGE SEARCH - Techniques disclosed herein provide for conducting an image search of video frames using a captured image of a display or a screen capture of a media item during playback. Results of the image search may be used to play back a corresponding video from the point in the video at which the captured image was taken, initiate a second-screen user experience, and/or perform other functions. Techniques are also disclosed for building a library of video frames with which image searches may be conducted. | 06-26-2014 |
20140157308 | ADVERTISING PROCESSING ENGINE SERVICE - Techniques described herein provide for an advertising processing engine service to act as an intermediary between client applications and advertising networks. The advertising processing engine service can provide an interface with which the client can interact, via an application programming interface (API) or directly through the use of a standardized language, thereby allowing client applications to receive advertisement data without the need to be customized to communicate with specific advertising networks. On the other hand, the advertising processing engine service can receive requests from clients and communicate these requests to advertising networks in the corresponding language and/or format they require. | 06-05-2014 |
20130254347 | TRANSCODELESS ON-THE-FLY AD INSERTION - Systems and methods for enabling dynamic advertisement insertion into media files without transcoding are disclosed. The techniques disclosed involve retrieving files of the media and advertisement(s) and converting the files to an MPEG-2 transport stream (MPEG-2 TS) format. The MPEG-2 TS streams are then joined to insert the advertisement at a desired point in the media file. The resulting MPEG-2 TS stream is then converted back to a media file, which can be provided for downloading, or optionally reindexed. Because it does not require transcoding, this process can be performed on-the-fly to provide dynamic insertion of advertisements into media files. Other media file manipulation, including the insertion of non-advertisement media, is contemplated. | 09-26-2013 |
20130254346 | DYNAMIC CHUNKING FOR DELIVERY INSTANCES - Techniques are provided for dynamically creating index files for streaming media based on a determined chunking strategy. The chunking strategy can be determined using historical data of any of a variety of factors, such as Quality of Service (QoS) information. By using historical data in this manner, index files can be generated using chunking strategies that can improve these factors over time. | 09-26-2013 |
20130081110 | GLOBAL ACCESS CONTROL FOR SEGMENTED STREAMING DELIVERY - Various arrangements for controlling access to streaming media assets are presented. Transmission of segments of a media asset to a first user device may be commenced. During transmission of the media asset to the first user device, beaconing data from the first user device may be received and stored as session information. The first user device may no longer be permitted to receive the media asset at least partially due to the first user device no longer being authenticated. Transmission of a remainder of the plurality of media segments to the first user device may be ceased such that the first user device does not receive the media asset in its entirety. | 03-28-2013 |
20130080772 | DYNAMIC ENCRYPTION - Systems and methods for encrypting a media file for streaming and/or downloading over a network are disclosed. These systems and methods may be part of a larger media servicing network that can be used to, among other things, process uploaded media content, provide it for streaming, and collect metric information regarding the streaming. The disclosed systems and methods provide for receiving requests for a media file or a chunk of a media file and responding to these requests by encrypting the requested chunks dynamically and providing the chunks to the requesting entity. These systems and methods, which can be utilized with a dynamic chunk generation and dynamic index file generation, enable a high degree of flexibility in streaming chunked media files and preclude the need to encrypt the chunks prior to streaming. The systems and methods may also be applied to encrypting files for continuous streaming protocols as well as for progressive download. | 03-28-2013 |
20130080596 | DYNAMIC CHUNKING FOR DELIVERY INSTANCES - Systems and methods for dynamically chunking for delivery instances are provided that automatically implement chunking strategies based on one or more chunking considerations related to a request for a media file. These systems and methods may be part of a larger media servicing network that can be used to, among other things, process uploaded media content, provide it for streaming/downloading, and collect metric information regarding the streaming/downloading. The disclosed systems and methods provide for receiving a request having a Uniform Resource Locator (URL) and providing an index file to implement chunking strategies based on chunking considerations associated with the request. | 03-28-2013 |
20130080581 | CLOUD DATA PERSISTENCE ENGINE - Various cloud data persistence systems and methods are described. In some embodiments, a client may request a data object from a server. This data object may contain a link to a media asset and other information linked to the video file, such as a title and duration. This media asset may be stored in a different location. If this first server does not have the data object stored locally, it may contact a second server to determine if it has the data object stored. If the second server does not have the data object stored, it may contact a data object origin server, which may have all existing data objects stored. This data object origin server may then send the data object to the second server, which may in turn transmit the data object to the first server. The first server may then transmit the data object to the client. | 03-28-2013 |
20130080579 | DYNAMICALLY-EXECUTED SYNDICATION SERVICES - Systems and methods for dynamically executing syndication services are provided that automatically implement business rules for syndication based on contextual data corresponding to a request for a media file. These systems and methods may be part of a larger media servicing network that can be used to, among other things, process uploaded media content, provide it for streaming/downloading, and collect metric information regarding the streaming/downloading. The disclosed systems and methods provide for receiving a request having a Uniform Resource Locator (URL) and providing an index file in accordance with business rules based on contextual data associated with the request. Embodiments further enable media content owners to distribute a single URL corresponding to a particular media file among many media providers, allowing a single media delivery and analytics services to provide comprehensive metric information regarding syndication for the all the media providers. | 03-28-2013 |
20130080268 | MULTI-PLATFORM MEDIA SYNDICATION CUSTOMIZATION - Systems and methods for enabling syndication of a media file across multiple environments, or platforms, by interpreting and downscribing script language in which to implement business rules. These systems and methods may be part of a larger media servicing network that can be used to, among other things, process uploaded media content, provide it for streaming, and collect metric information regarding the streaming. The disclosed systems and methods can utilize different software development kits (SDKs) to interpret script and provide platform-specific interpreted script such that business rules provided in the script are dynamically implemented for various device types during runtime. | 03-28-2013 |
20130080267 | SINGLE-URL CONTENT DELIVERY - Systems and methods for providing media with a data network using a single Uniform Resource Locator (URL) are disclosed. These systems and methods may be part of a larger media servicing network that can be used to, among other things, process uploaded media content, provide it for streaming, and collect metric information regarding the streaming. The disclosed systems and methods provide for receiving a URL and providing an index file based, at least in part, on a client identity and requested media file associated with the URL. Embodiments further provide for the use of an advertisement server that can specify advertisement(s) to be shown during the playback of the media file. With every index file created, the advertisement server can update and/or change the advertisement(s) to be shown. | 03-28-2013 |
20120303766 | DYNAMIC AUDIO TRACK SELECTION FOR MEDIA STREAMING - Systems and methods for providing index files for dynamic audio track selection for media streaming can include receiving requests for media file segments (e.g., “chunks”) with a certain audio track and responding to the requests by dynamically generating the corresponding media file segment with the requested audio track. The generated media file segment can then be provided to the requesting entity. | 11-29-2012 |
20120254367 | TRANSCODELESS ON-THE-FLY AD INSERTION - Systems and methods for enabling dynamic advertisement insertion into media files without transcoding are disclosed. The techniques disclosed involve retrieving files of the media and advertisement(s) and converting the files to an MPEG-2 transport stream (MPEG-2 TS) format. The MPEG-2 TS streams are then joined to insert the advertisement at a desired point in the media file. The resulting MPEG-2 TS stream is then converted back to a media file, which can be provided for downloading, or optionally reindexed. Because it does not require transcoding, this process can be performed on-the-fly to provide dynamic insertion of advertisements into media files. Other media file manipulation, including the insertion of non-advertisement media, is contemplated. | 10-04-2012 |
20120246299 | ANALYTICS PERFORMANCE ENHANCEMENTS - A method and apparatus for processing metric information is disclosed in one embodiment. Metric information is gathered from a number of end users. At least some of the reference types are converted to value types and stored in non-mechanical memory. The value types are manipulated to summarize the metric information. The value types are processed using the stack instead of the heap. | 09-27-2012 |
20120246298 | MULTIPLE PHASE DISTRIBUTED REDUCTION - A method and system for metric information processing is disclosed in one embodiment. Metric information is gathered with a plurality of points of presence (POPs) geographically distributed across the Internet. The metric information is processed in a hub-and-spoke fashion with a metric reduction occurring in the POPs and another metric reduction in a kernel application server according to predetermined schemes. The two-stage metric reduction generates a result set including a data structure. The result set can be processed according to a query to generate a report. The data structure and reports have metric information that is recent and updated regularly without use of a database. | 09-27-2012 |
20120185608 | DYNAMIC INDEX FILE CREATION FOR MEDIA STREAMING - Systems and methods for providing index files for streaming media over a network are disclosed. These systems and methods provide for receiving requests for a media file and responding to these requests by generating corresponding index files used in streaming the media file. The index file can then be provided to the requesting entity. These systems and methods, which can be utilized together with a dynamic chunk generator, enable the insertion of advertisements at any point during playback of the media file. | 07-19-2012 |
20120072542 | SMART SYNDICATION - Systems, methods, and machine-readable media are described for providing output feeds having information associated with at least one file. Embodiments include generating an output feed schema used to determine the content of the output feed using information from at least one data object, where each data object comprises a data structure having information, including a universal resource indicator (URI) regarding the at least one file. The output feed schema and the at least one data object can then be used to generate the output feed, which can then be stored. | 03-22-2012 |
20120072541 | DYNAMIC APPLICATION PROGRAMMING INTERFACE - Systems, methods, and machine-readable media are described for retrieving data associated with files using input feeds. Embodiments include generating input feed schemas, which can be used to create data objects from input data of the input feeds. The input data and the corresponding data objects can include information regarding files, such as the universal resource indicator (URI) of a file. The data objects can then be stored. | 03-22-2012 |
20120072465 | DYNAMIC SCHEMA-BASED API MAPPING FOR TRAVERSING INTER-CLOUD APPLICATION BOUNDARIES - Various systems, methods, and machine-readable media are described for providing dynamic schema-based API mapping for traversing inter-cloud application boundaries. Embodiments provide for internal schemas to be created, enabling a system to create internal data objects from external data by using the internal schemas. Application schemas can then be created, enabling the creation of application data objects derived from internal data objects. The application data objects can be passed through an API to an external computing system, and can conform to any format specified by the application schemas. | 03-22-2012 |
20120066386 | ENTERPRISE GRADE RIGHTS MANAGEMENT - Various arrangements for controlling access to a set of media items accessible via multiple channels are presented. An indication of a media item may be stored. Multiple sets of rules may be received, including a first and second set of rules. Requests for access to the media item may be received from a first and second application. The first request may be determined to be is associated with a first channel, wherein the first channel is associated with the first set of rules. Access to the media item may be provide in accordance with the first set of rules. The second request may be determined to be associated with a second channel. Access to the media item may be provided in accordance with the second set of rules. | 03-15-2012 |
20120066285 | PIPELINING FOR MASSIVELY PARALLEL SERVICE ARCHITECTURE - Various systems and methods are described that may allow a server to control various other servers performing services on media assets, such as a video file, which may need to be encoded then copied to a plurality of servers. A first server may be aware of what service needs to be performed on a media asset next. The first server may then notify a second server that this service is to be performed. Once the service has been performed on the media asset, the first server may be notified that the service has been completed. The first server may then determine which, if any, other service needs to be performed on the media asset. The first server may determine and instruct other servers on what services to perform for large numbers of other media assets while the media asset is having a service processed using it. | 03-15-2012 |
20120030313 | CLOUD DATA PERSISTENCE ENGINE - Various cloud data persistence systems and methods are described. In some embodiments, a client may request a data object from a server. This data object may contain a link to a media asset and other information linked to the video file, such as a title and duration. This media asset may be stored in a different location. If this first server does not have the data object stored locally, it may contact a second server to determine if it has the data object stored. If the second server does not have the data object stored, it may contact a data object origin server, which may have all existing data objects stored. This data object origin server may then send the data object to the second server, which may in turn transmit the data object to the first server. The first server may then transmit the data object to the client. | 02-02-2012 |
20120005313 | DYNAMIC INDEXING FOR AD INSERTION IN MEDIA STREAMING - Systems and methods for generating a file index for streaming media over a network are disclosed. These systems and methods provide for receiving requests for an index file from and generating the requested index file dynamically. The index file may be generated in a manner to ensure multiple index file requests are received for streaming a single media file. These systems and methods can be used with systems that chunk media files dynamically to enable a high degree of flexibility in streaming chunked media files and preclude the need to chunk the media files and store the chunks prior to streaming. | 01-05-2012 |
20120005312 | DYNAMIC CHUNKING FOR MEDIA STREAMING - Systems and methods for chunking a media file for streaming over a network are disclosed. These systems and methods provide for receiving requests for chunks of a media file and responding to these requests by generating the requested chunks dynamically. The chunks can then be provided to the requesting entity. These systems and methods, which can be utilized with a dynamic file index generator, enable a high degree of flexibility in streaming chunked media files and preclude the need to chunk the media files and store the chunks prior to streaming. | 01-05-2012 |