MX2014015107A - Metodo y sistema para manipulacion eficiente de manifiestos. - Google Patents

Metodo y sistema para manipulacion eficiente de manifiestos.

Info

Publication number
MX2014015107A
MX2014015107A MX2014015107A MX2014015107A MX2014015107A MX 2014015107 A MX2014015107 A MX 2014015107A MX 2014015107 A MX2014015107 A MX 2014015107A MX 2014015107 A MX2014015107 A MX 2014015107A MX 2014015107 A MX2014015107 A MX 2014015107A
Authority
MX
Mexico
Prior art keywords
session
manifest
advertisement
address
server
Prior art date
Application number
MX2014015107A
Other languages
English (en)
Other versions
MX359563B (es
Inventor
Jeffrey Sherwin
Bryan David Santangelo
Original Assignee
This Technology Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by This Technology Inc filed Critical This Technology Inc
Priority to PCT/US2013/039275 priority Critical patent/WO2014178872A2/en
Publication of MX2014015107A publication Critical patent/MX2014015107A/es
Publication of MX359563B publication Critical patent/MX359563B/es

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06QDATA PROCESSING SYSTEMS OR METHODS, SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL, SUPERVISORY OR FORECASTING PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q30/00Commerce, e.g. shopping or e-commerce
    • G06Q30/02Marketing, e.g. market research and analysis, surveying, promotions, advertising, buyer profiling, customer management or rewards; Price estimation or determination
    • G06Q30/0241Advertisement
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25866Management of end-user data
    • H04N21/25891Management of end-user data being end-user preferences
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management 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, learning user preferences for recommending movies
    • H04N21/262Content 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, generating play-lists
    • H04N21/26208Content 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, generating play-lists the scheduling operation being performed under constraints
    • H04N21/26233Content 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, generating play-lists the scheduling operation being performed under constraints involving content or additional data duration or size, e.g. length of a movie, size of an executable file
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing 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 synchronising decoder's clock; Client middleware
    • H04N21/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs
    • H04N21/44016Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream, rendering scenes according to MPEG-4 scene graphs involving splicing one content stream with another content stream, e.g. for substituting a video clip
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/812Monomedia components thereof involving advertisement data

Abstract

Se describe un método y un sistema para manipular un manifiesto. Un servidor recibe de un aparato inteligente una solicitud de un manifiesto que corresponde a un identificador de sesión. El servidor recupera de un servidor de sesión un manifiesto de sesión basada en el identificador de sesión. El servidor ajusta una compensación basado en una diferencia en una duración de la sesión representado por el manifiesto de sesión a partir de una duración de la sesión representado por un manifiesto de sesión anterior que corresponde a la sesión. Cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, el servidor identifica en una memoria caché al menos un anuncio publicitario que se inserta en la sesión y remplaza al menos una dirección que corresponde al menos a un segmento de al menos un anuncio publicitario en el manifiesto de sesión basándose en la diferencia. El servidor transmite el manifiesto de sesión al aparato inteligente.

Description

MÉTODO Y SISTEMA PARA MANIPULACIÓN EFICIENTE DE MANIFIESTOS DESCRIPCIÓN DE LA INVENCIÓN La presente invención se refiere generalmente a redes de proveedores de servicios de video, y más particularmente, a un método y sistema para manipular de manera eficiente un manifiesto de sesión cuando una duración de un bloque publicitario señalada por el manifiesto cambia de duración.
Tradicionalmente, la programación de difusión y televisión por cable y radio, incluyendo el contenido (es decir, el programa de video o audio) y (la colocación de) anuncios en una corriente de señales de video o audio, ha seguido un modelo lineal. La programación puede ser lineal en el sentido de que un programa comienza y se transmite y se encuentra en progreso cuando un usuario decide ver el contenido de entretenimiento. La Figura 1 ilustra un modelo lineal convencional o de video a la carta (VOD) para la colocación de anuncios publicitarios. El contenido 2 de entretenimiento, cuando se procesa como una corriente de datos digitales sobre una red de cable, puede dividirse en un número de intervalos de tiempo. Los intervalos 4 de tiempo incluyen el tiempo reservado para un programa visto (contenido), tal como "Golden Girls". Los intervalos 6, 8, 9, representan secciones de tiempo reservado para anuncios publicitarios o "beneficios". Estos "beneficios" pueden verse como oportunidades de colocación de anuncios publicitarios. Como se utiliza en la presente, una "oportunidad de colocación" se denominaba tradicionalmente como beneficio y a veces se denomina como intervalo (en el cual se insertará un comercial (por ejemplo, un anuncio o contenido)). Una oportunidad de colocación (PO) es una construcción que representa una oportunidad para insertar un anuncio publicitario o contenido de entretenimiento, y define las reglas para esa oportunidad, tal como su duración, interactividad, propiedad y restricciones téenicas.
Como se utiliza en la presente, el término "vinculo" se refiere a una identificación de señales y contenido dentro de una oportunidad de colocación (PO). Las PO se crean frecuentemente para grandes cantidades de contenido que aún no se han publicado (es decir, cualquier programa en la red TNT por la noche). Cuando el programa sale al aire y se detecta una señal, la señal se vincula con los PO relevantes para ese programa.
Como se utiliza en la presente, el término "impacto" se refiere a una muestra de un anuncio publicitario para un solo espectador. Por ejemplo, si un comercial de 30 segundos se coloca en 50,000 corrientes de video a la carta (VOD) y se sabe que 30,000 de las corrientes en realidad reprodujeron el anuncio, entonces se han generado 30,000 impactos de ese anuncio publicitario.
Como se utiliza en la presente, una "notificación de estado" puede ser, pero no se limita a, una llamada de HTTP desde un servidor de VOD con un ID único que se creó cuando se tomó una decisión.
Como se utiliza en la presente, el término "bloque publicitario" se refiere a todo el espacio en una corriente entre el contenido de entretenimiento. Por ejemplo, un grupo de 4 comerciales de 30 segundos consecutivos entre 2 segmentos de "Two and a Half Men" puede considerarse como un bloque publicitario simple.
Como se utiliza en la presente, un punto de partida estimado de un bloque publicitario en una corriente de señales se conoce como un punto de señal. En el contexto de colocación de anuncios publicitarios, estos puntos de señal pueden denominarse como puntos de señal de anuncio publicitario.
En sistemas no lineales, tales como Video a la Carta (VOD), los intervalos 6, 8, 9 pueden asumir nuevos significados. El intervalo 6 se llama video publicitario anterior, es decir, el espacio en un video que ocurre inmediatamente después de que un usuario hace clic para iniciar un video VOD. El intervalo 9 se conoce como video publicitario posterior, es decir, el espacio después de que todos los segmentos de video VOD han terminado de reproducirse. Los intervalos 8 puede ser videos publicitarios intermedios, es decir, mini-bloques publicitarios en la mitad de un video VOD, o pueden ser intersticiales, es decir, ubicaciones tipo cápsula entre los segmentos de video VOD consecutivos. Las oportunidades de colocación de anuncio publicitario de VOD pueden aparecer basándose en el espacio, tiempo, contenido, y contexto de usuario y pueden ser altamente no lineales (es decir, el usuario elige iniciar la reproducción de contenido y en respuesta, el contenido se inicia). Todos los intervalos 6, 8, 9 en tales listas de reproducción son perfectos para la inserción de anuncios publicitarios, es decir, oportunidades de colocación de anuncios publicitarios.
La Figura 2 representa una configuración de una infraestructura 200 de televisión por cable basada en Internet convencional para realizar las decisiones de colocación de anuncio publicitario en corrientes de señales. En la TV, la red de publicidad primero fue la red nacional, la red de cable, o el operador de cable. Sin embargo, a diferencia de Internet, donde los navegadores acceden/despliegan contenido y después se "envían" por separado a una red de publicidad compartida, la infraestructura 200 de televisión por cable basada en Internet selecciona y ensambla el anuncio publicitario y el contenido y distribuye el resultado combinado a los "aparatos inteligentes" 202a-202n de los clientes (por ejemplo, televisiones listas para Internet, radios, teléfonos inteligentes, computadoras tipo Tablet, PC, etc.).
Recientemente, aparatos inteligentes 202a-202n, tal como televisiones listas para Internet, se han vuelto capaces de recibir contenido de servicios de transmisión continua en Internet, tal como películas de Netflix, radio de transmisión continua Pandora, etc., por WiFi o conexiones directas de Ethernet. Cuando un usuario hace clic en un icono para una "aplicación" que aparece en un televisor que corresponde a uno de estos servicios, el contenido se transmite al aparato inteligente 202a-202n desde una red 204 de distribución de contenido (CDN) directamente a la aplicación que se ejecuta en el aparato inteligente 202a-202n sin la necesidad de una caja de convertidor-descodificador.
Una caja de convertidor-descodificador puede configurarse para descodificar una representación análoga de dos estados de una señal digital, como se conoce en la téenica, que se transmite continuamente e inserta en la caja de convertidor-descodificador a través de una instalación de difusión por un cable coaxial o de fibra óptica y la caja de convertidor-descodificador sintoniza ese canal y despliega el contenido. Cuando un usuario ve el contenido del programa distribuido por Internet, un navegador dentro del aparato inteligente 202a-202n recuperará el video en fragmentos de tiempo predeterminados - fragmentos generalmente de dos, algunas veces de tres, y algunas veces de diez segundos. Los fragmentos de video recuperados se unen perfectamente de forma dinámica en el software de aplicación del aparato inteligente 202a-202n y después se despliegan para que parezcan un video continuo en el aparato inteligente 202a-202n.
Un Operado de Varios Sistemas/Servicios (MSO una organización de TV por cable que posee más de un sistema de cable y puede proporcionar servicio de Internet de banda ancha) puede desear re-difundir corrientes de video en aparatos inteligentes. Desafortunadamente, cada dispositivo conectado, incluyendo aparatos inteligentes, necesita obtener el video en el formato que pueda consumir. Apple, Microsoft, Adobe, etc., tiene formatos muy específicos e incompatibles. Para superar este problema, cada una de estas compañías ha construido instalaciones denominadas redes 204 de distribución de contenido (CDN) donde una "caja de convertidor-descodificador" para cada canal se configura para recibir difusiones de satélites. Una señal recibida por una "caja de convertidor-descodificador" de dispositivos 206 corriente arriba se alimenta a un transcodificador 208 para poner la señal en un formato deseado y fragmentar la señal formateada en los segmentos de datos predeterminados (por ejemplo, 2 segundos). Estos segmentos entonces se almacenan en la CDN 204 en granjas de servidores ubicadas físicamente cerca de donde se distribuirá el contenido.
Para identificar una corriente o "sesión" de datos de canal particular, incluyendo las veces cuando un programa ha terminado y antes de que comience el siguiente programa, es decir, una oportunidad de colocación, un tono cue se inserta en la corriente de datos de canal un tiempo predeterminado antes de que comience el siguiente programa. Un observador 210, el cual puede ser el transcodificador 208, informa al servicio 211 de información de oportunidad de colocación de la llegada del tono cue para colocación subsiguiente de uno o más anuncios publicitarios en la corriente de datos de canal por un servicio 212 de publicidad (ADS). Si el ADS 212 se conoce por el POIS 211, entonces el POIS 211 notifica al ADS 121 de la notificación de tono cue. El servicio 212 de publicidad, a su vez, espera la llegada subsiguiente de las solicitudes de una CDN 204 para poner los anuncios publicitarios en bloques de publicidad (es decir, uno o más de los segmentos) en la corriente de datos de canal (sesión).
Los MSO, las redes nacionales y locales prefieren saber si un anuncio se ha reproducido y visto por un suscriptor. Los fabricantes de equipos han proporcionado tradicionalmente esta característica en una de dos formas: al integrar inteligencia en cada aparato inteligente (por ejemplo, 202a), o al integrar inteligencia en una red de información, por ejemplo, una red de informática en la nube, sin alterar los aparatos inteligentes 202a-202N existentes. Ambas téenicas pueden emplear lo que se conoce como archivo de manifiesto. Como se utiliza en la presente, un archivo de manifiesto, un manifiesto, o un manifiesto de sesión, se refiere a una lista o índice de lo que se contiene en cada uno de los segmentos de una sesión mantenida por la CDN 204. Más particularmente, el manifiesto de sesión puede incluir una lista de URL que señala cada uno de los segmentos o fragmentos y notas del tipo de segmento: contenido o anuncio publicitario.
Cuando se integra inteligencia en un aparato inteligente (por ejemplo, 202a), el aparato inteligente 202a puede (1) mantener una copia del manifiesto de sesión, (2) realizar la función de empalmar un anuncio en una oportunidad de colocación, (3) marcar el manifiesto de sesión para cada segmento reproducido, y (4) informar una proporción de una sesión (por ejemplo, el número de segmentos) reproducida en el MSO o red.
Los MSO y redes, sin embargo, pueden preferir emplear aparatos inteligentes de cualguier fabricante (por ejemplo, 202a). Tanto los MSO como las redes se han estado moviendo hacia proporcionar su propia experiencia de visualización al proporcionar sólo aplicaciones "apps" al equipo de un suscriptor sin alterar el equipo.
Cuando la inteligencia se integra en la red, después las redes de información necesitan mantener un manifiesto separado para cada sesión de espectador. Convencionalmente, un manipulador de manifiestos puede emplearse para proporcionar manifiestos a aparatos inteligentes o MSO. Una deficiencia de manipuladores de manifiestos convencionales es que puede ser necesario que un manipulador de manifiestos mantenga un número muy grande de manifiestos que necesitan ser actualizados periódicamente (por ejemplo, 10-30 segundos) para cada suscriptor. Para algunos MSO, el número de aparatos inteligentes 202a-202N puede estar en los miles a cientos de miles. En ciertas situaciones, algunos o todos los aparatos inteligentes 202a-202N pueden solicitar manifiestos sustancial y simultáneamente. Afortunadamente, los factores de alivio incluyen el número de personas que ven un canal dado simultáneamente y la distribución por zonas.
La probabilidad de que 100,000 aparatos inteligentes 202a-202N todos inicien un VOD es muy, muy baja, por lo que la carga para publicidad de VOD es bastante ligera, debido a que no todos los aparatos inteligentes 202a-202N típicamente se sincronizan. Desafortunadamente, un MSO puede necesitar tomar decisiones de anuncios para cada sesión activa durante el inicio de sesión cuando un espectador hace clic en un control remoto para ver el VOD, aunque es posible que exista un anuncio que pueda colocarse en una hora y media de una corriente de datos correspondiente a una sesión activa. Si un programa transmitido en un canal es muy popular, (por ejemplo, el Súper Bowl), resurge el problema de manejar miles de manifiestos.
Para aliviar este problema, un MSO puede dividir un área geográfica en una pluralidad de zonas geográficas de servicio más pequeñas (por ejemplo, 50 zonas). Un manipulador de manifiestos puede colocarse en cada una de estas zonas para reducir el número de manifiestos que un manipulador de manifiestos necesita manejar. En circunstancias normales, un número aún menor de decisiones de anuncios necesita tomarse por canal (por ejemplo, 50).
Desafortunadamente, incluso para que un pequeño número de manifiestos sea manejado por canal, puede existir la necesidad de mantener múltiples manifiestos para la misma sesión. Manifiestos atendidos en diferentes aparatos inteligentes 202a-202N dentro de una zona pueden volverse "no sincronizados". Como se discute en lo anterior, un manifiesto, el cual representa una lista de reproducción, puede comprender una lista de URL que señalan a un número predeterminado de segmentos para transmitir datos que corresponden a un intervalo de tiempo fijo (por ejemplo, quince (15) "fragmentos" de dos (2) segundos para un total de un manifiesto de 30 segundos). Con referencia ahora a la Figura 3, un primer manifiesto 302 que representa un total de 30 segundos de publicidad (adl) puede comprender, por ejemplo, 15 URL 304a-304o (URL1-URL15). En una zona particular, un MSO puede intercambiar el anuncio de 30 segundos simple (adl) por dos (2) anuncios de 15 segundos como se muestra en un segundo manifiesto 306 (ad2, ad3). Debido a que los segmentos 308a-308p (URL1-URL16) se alinean en limites de dos segundos, el número de URL incrementa por uno a dieciséis (URL16). Con el paso del tiempo, la alineación de manifiesto puede desviarse cuando los anuncios se intercambian continuamente para cambiar la duración total de tiempo de un bloque publicitario, ya sea en una dirección negativa o una dirección positiva como se representa por el manifiesto.
Por lo tanto, existe una necesidad de mantener la integridad de la numeración de URL en un manifiesto, y es necesario determinar dónde intercambiar URL dentro y fuera de un manifiesto cuando la duración de uno o más anuncios cambia. Manipuladores de manifiestos convencionales alivian este problema al mantener una compensación de un manifiesto inicial proporcionado por el transcodificador 208 para cada sesión activa y para cada canal. Se crea una cadena de ejecución separada que comprende una instancia distinta de un manifiesto y se mantiene para cada valor de compensación, para todas las sesiones activas, y para todos los canales activos. Desafortunadamente, esto puede requerir que la potencia de procesamiento en el orden de cientos de miles de cadenas de ejecución, lo que se traduce en una necesidad de mantener y operar un gran número de computadoras de varios sub-procesos. Por consiguiente, lo que seria deseable, pero aún no se ha proporcionado, es un método y sistema para manipular eficientemente un manifiesto de sesión cuando una duración de un bloque publicitario señalado por el manifiesto cambia de duración.
Los problemas descritos en lo anterior se abordan y una solución téenica se alcanza en el arte al proporcionar un método y sistema para manipular un manifiesto. Un manipulador de manifiestos de un servidor recibe de un aparato inteligente una solicitud de un manifiesto que corresponde a un identificador de sesión. El manipulador de manifiestos recupera de un servidor de sesión un manifiesto de sesión basado en el identificador de sesión. El manipulador de manifiestos ajusta una compensación de sesión basándose en una diferencia en una duración de sesión representada por el manifiesto de sesión de una duración de sesión representada por un manifiesto de sesión anterior que corresponde a la sesión. Cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, el manipulador de manifiestos identifica en una memoria caché al menos un anuncio publicitario que se insertará en la sesión y sustituye al menos una dirección que corresponde al menos a un segmento de al menos un anuncio publicitario en el manifiesto de sesión basándose en la diferencia. El manipulador de manifiestos transmite el manifiesto de sesión al aparato inteligente.
En una modalidad, cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, el manipulador de manifiestos instruye a un cliente asociado con un servicio de decisión de anuncio para que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión basándose al menos en una dirección remplazada del manifiesto de sesión.
En una modalidad, instruir a un servicio de anuncios para que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión además puede comprender el servidor que transmite, al servicio de decisión de anuncio, al menos una solicitud de anuncio de la dirección de bloque publicitario que corresponde al identificador de sesión, recibir, del servicio de decisión de anuncio, al menos un anuncio, y almacenar al menos un anuncio publicitario en al menos una memoria caché. Instruir a un servicio de anuncios para que empalme al menos un anuncio en la dirección del bloque publicitario en la sesión además puede comprender, antes del empalme, instruir al servicio de decisión de anuncio para que recupere al menos un anuncio publicitario de la memoria caché.
En una modalidad, la compensación de sesión y el manifiesto de sesión anterior se almacenan en una memoria. La memoria puede ser una memoria de acceso aleatorio estática. El manifiesto de sesión y el manifiesto de sesión anterior difieren cuando la diferencia es no nula. Cuando el aparato inteligente sintoniza otro canal o termina su sesión, el manipulador de manifiestos puede restablecer la compensación de sesión a cero.
En una modalidad, el manipulador de manifiestos del servidor puede recibir un manifiesto original de un transcodificador. El manipulador de manifiestos inicialmente puede asignar una compensación nula al manifiesto original. El manipulador de manifiestos puede derivar y mantener una pluralidad de manifiestos almacenados que tienen diferentes compensaciones del manifiesto original. El manipulador de manifiestos puede remplazar uno de los manifiestos almacenados con el manifiesto de sesión para producir el manifiesto de sesión anterior.
En una modalidad, el manifiesto de sesión y el manifiesto de sesión anterior cada uno puede comprender una pluralidad correspondiente de URL que señala los segmentos de una sesión que corresponde al identificador de sesión. Al menos uno de los URL del manifiesto de sesión y al menos uno de los URL del manifiesto de sesión anterior puede señalar a diferentes segmentos de la sesión.
BREVE DESCRIPCIÓN DE LOS DIBUJOS La presente invención se entenderá más fácilmente a partir de la descripción detallada de las modalidades ejemplares presentadas a continuación, consideradas junto con los dibujos anexos, de los cuales: La Figura 1 ilustra un modelo lineal convencional o de video a la carta para la colocación de publicidad; la Figura 2 representa una configuración de una infraestructura de televisión por cable basada en Internet convencional para realizar decisiones de colocación de publicidad en corrientes de señales; la Figura 3 muestra un diagrama de bloque de dos manifiestos que difieren en número de URL almacenados que resultan cuando se intercambian continuamente anuncios para cambiar la duración total de tiempo de un bloque publicitario; la Figura 4 representa una configuración de una modalidad de un sistema para manipular manifiestos; la Figura 5 es un diagrama de flujo que ilustra una modalidad de un método para acelerar las decisiones de colocación de publicidad en corrientes de datos a partir de un punto de vista de un servidor; la Figura 6 es un diagrama de bloque que ilustra una pluralidad de manifiestos almacenada en una memoria estática, donde cada uno de los manifiestos almacenados tiene una compensación diferente de otro manifiesto; la Figura 7 es un diagrama de flujo que ilustra un ejemplo de un método para manipular un manifiesto; y la Figura 8 ilustra una representación diagramática de una máquina en la forma ejemplar de un sistema informático dentro del cual puede ejecutarse un conjunto de instrucciones, para provocar que la máquina realice cualquiera de una o más de las metodologías discutidas en la presente.
Se entenderá que los dibujos anexos son para propósitos de ilustrar los conceptos de la invención y puede que no sean a escala.
Ciertas modalidades de la presente descripción son compatibles y hacen uso de elementos definidos de acuerdo con el estándar SCTE-130. El estándar SCTE-130 proporciona una interfaz basada en mensajes estandarizados y extensibles que define un conjunto mínimo de servicios lógicos cooperativos necesarios para comunicar oportunidades de colocación, decisiones de colocación y datos de eventos relacionados con colocación necesarios para las mediciones de contabilidad. El SCTE-130 define una infraestructura extensible de interfaces entre un conjunto de servicios lógicos de sistema de publicidad. El estándar SCTE-130 abarca: un conjunto mínimo de servicios lógicos cooperativos necesarios para implementar sistemas de publicidad direccionable avanzados; los tipos de datos centrales y la infraestructura de mensajes extensible que forman un vocabulario necesario para comunicarse entre los servicios lógicos definidos; las interfaces entre estos servicios lógicos utilizan los tipos de datos centrales y mensajes; y, mecanismos para extensibilidad que permiten la innovación mientras conservan retro-compatibilidad con sistemas ya implementados - con lo cual se reduce la complejidad de incorporar nuevas características dentro del estándar.
Las partes normativas del estándar SCTE-130 definen mecanismos para integrar sistemas que implementan características tales como publicidad basada en VOD, lineal, capacidades mejoradas de publicidad, tales como grupos de rotación de publicidad (los grupos de rotación se refieren a oportunidades de colocación que se ejecutan en rotación de modo que el mismo anuncio no se ve inmediatamente después), direccionamiento basado en suscriptor para publicidad o adaptación de contenidos, puntos de extensión para publicidad más avanzada o características de direcciona iento, servicios lógicos que se implementan como uno o más sistemas físicos creados por el mismo vendedor, implementación de un servicio lógico que puede incluir simultáneamente sistemas de uno o más vendedores, y una implementación que puede incorporar uno o más de los servicios lógicos definidos e interfaces.
El estándar SCTE-130 define un conjunto de servicios lógicos que comprende un sistema de publicidad avanzada. Cada servicio lógico por sí mismo puede ser un sistema complejo. En una modalidad, uno o más de los siguientes servicios lógicos pueden utilizarse por o interactuar con ciertas modalidades de la presente invención.
Un Servicio de Administración de Publicidad (ADM) define mensajes en apoyo de actividades de inserción de publicidad. El consumidor primario de estos mensajes es un Servicio de Decisión de Publicidad (ADS). Las interfaces de mensajes expuestas por un ADM permiten decisiones de publicidad preconfiguradas así como modelos de presentación en tiempo real. Una implementación de ADM puede incorporar algunas reglas de selección de publicidad simples (por ejemplo, rotaciones de publicidad), pero las decisiones de publicidad más complejas son responsabilidad de un ADS.
Un Servicio de Decisión de Publicidad (ADS) determina como el contenido publicitario se combina con la activos de contenido sin publicidad (es decir, de entretenimiento). Las decisiones tomadas por un ADS pueden ser directas (es decir, contenido de publicidad especifico puesto en tiempo especifico en un activo especifico) o arbitrariamente complejo (basado en datos de suscriptor, zona de la publicidad, etc.)· Un Servicio de Información de Contenido (CIS) maneja metadatos que describen activos (tanto activos de publicidad como activos sin publicidad) disponibles para los otros servicios lógicos de SCTE-130. El CIS proporciona interfaces de consulta y notificación a los otros servicios lógicos. El servicio de consulta se encuentra disponible en una base con fines específicos y puede solicitarse por cualquier otro servicio lógico en cualquier momento sin ningún registro anterior. Las consultas especifican valores o patrones que se buscan en los metadatos de mensajes de consulta y la información de correlación especifica (o una indicación de error) se regresa en un mensaje de respuesta.
El Servicio de Información de Contenido (CIS) es un motor de almacenamiento y distribución. Almacena metadatos sobre activos de entretenimiento y publicidad; proporciona notificaciones a clientes registrados cuando se modifican los metadatos; registra, recibe y procesa notificaciones de otros servicios de CIS; y soporta consultas de metadatos en tiempo real. El CIS permite que un Administrador de Publicidad (ADM) y/o Servicio de Decisión de Publicidad (ADS) para que recupere y utilizar metadatos contenidos en su procesamiento de decisión de publicidad avanzada.
Un Servicio de Información de Oportunidad de Colocación (POIS) puede contener, mantener y retener descripciones de oportunidades de colocación. El POIS también puede contener atributos y restricciones de cada oportunidad de colocación, cumplimiento de plataforma, derechos y políticas del contenido en el cual existe la oportunidad de colocación. Estas oportunidades de colocación son especificas de contenido, por lo tanto, los atributos y restricciones pueden variar por red, región geográfica, u otra dimensión de distribución de contenido.
El POIS es un motor de almacenamiento y ejecución de inventario de Oportunidad de Colocación (PO). Almacena metadatos y estadísticas de PO; proporciona notificaciones a clientes registrados cuando se modifican metadatos de PO; registra, recibe y procesa notificaciones de otros servicios de POIS; y soporta consultas de metadatos de PO en tiempo real. A través del aparato de POIS, un Administrador de Publicidad (ADM) y/o Servicio de Decisión de Publicidad (ADS) pueden recuperar y utilizar metadatos de oportunidad de colocación en su toma de decisiones de publicidad avanzada.
El Servicio de Información de Suscriptor (SIS) maneja información por suscriptor relevante para decisiones de colocación de publicidad. El SIS proporciona un apeo entre identificadores de suscriptor o cliente, tal como una dirección de MAC, número de serie, etc., y atributos de suscriptor o audiencia, por ejemplo, edad, sexo, ubicación de un suscriptor.
El término "computadora" o "plataforma de computadora" se pretende para incluir cualquier dispositivo de procesamiento de datos, tal como una computadora de escritorio, una computadora tipo laptop, una computadora tipo Tablet, una computadora de infraestructura, un servidor, un dispositivo portátil, un procesador de señales digitales (DSP), un procesador integrado (del cual un ejemplo se describe junto con la Figura 8), o cualquier otro dispositivo capaz de procesar datos. La computadora/plataforma de computadora se configura para incluir uno o más microprocesadores conectados de manera comunicativa a uno o más medios legibles por computadora no transitorios y una o más redes. El término "conectado de manera comunicativa" se pretende para incluir cualquier tipo de conexión, sea alámbrica o inalámbrica, en la cual pueda comunicarse datos. El término "conectado de manera comunicativa" se pretende para incluir, pero no se limita a, una conexión entre dispositivos y/o programas dentro de una sola computadora o entre dispositivos y/o computadoras separadas sobre una red. El término "red" se pretende para incluir, pero no se limita a, OTA (transmisión por aire, ATSC, DVB-T), redes conmutadas por paquetes (TCP/IP, por ejemplo, la Internet), satélite (microondas, corriente de transporte de MPEG o IP), satélite de difusión directa, sistemas de transmisión por cable análogos (RF), y sistemas de transmisión de video digital (ATSC, HD-SDI, HDMI, DVI, VGA), etc.
La Figura 4 representa una configuración de un sistema 400 para manipular manifiestos. El sistema 400 puede ejecutarse en un servidor 402, interconectado por una o más redes (no mostradas) y conectado de manera comunicativa a uno o más ADS 404a-404n. Los ADS 404a-404n se configuran para poner anuncios publicitarios en bloques publicitarios en corrientes de datos de suscriptor a solicitud de una CDN 406 para distribución a uno o más aparatos inteligentes 408a-408n.
En una modalidad, el servidor 402 puede conectarse de manera comunicativa por una o más redes (no mostradas) a dispositivos 410a-410n de cliente. Los dispositivos 410a-410n de cliente se configuran para almacenar y recuperar un número predeterminado de anuncios publicitarios en/de memorias caché 412a-412n correspondientes para distribución a los ADS 404a-404n correspondientes bajo el control del servidor 402 y la CDN 406.
El servidor 402 puede asociarse con o iplementar un CIS 416 para recibir una o más corriente de señales de origen de los dispositivos 418 corriente arriba y los tonos cue correspondientes (es decir, casos de paquetes de SCTE-35) de un observador 420, el cual puede incorporarse dentro de un transcodificador 422. El transcodificador 422 también se configura para distribuir video de IP audio, etc. en "fragmentos" o segmentos predeterminados a la CDN 406 como se describe en lo anterior. El transcodificador 422 también se configura para generar uno o más manifiestos de una duración de tiempo predeterminada (por ejemplo, 30 segundos) que comprende las direcciones (por ejemplo, URL) de los segmentos de una corriente de señales hasta uno o más dispositivos corriente abajo (normalmente, la CDN 406) basándose en una dirección almacenada en el transcodificador 422 durante un proceso de registro. En una modalidad, el dispositivo corriente abajo registrado es el servidor 402.
El CIS 416 también se configura para identificar metadatos de una o más corrientes de señales de origen y distribuir los metadatos identificados al servidor 402. El servidor 402 se configura para pre-asignar un número correspondiente de oportunidades de colocación (PO) no confirmadas sin señales y vincular la corriente de señales de origen a una pluralidad de oportunidades de colocación preparadas de antemano, pero no confirmadas. Parte de los metadatos identificados incluye un identificador de canal asociado con una corriente de señales de origen correspondiente. El CIS 416 se configura para devolver un valor globalmente único, un UUID, denominado como identificador de señal o ID de señal que identifica únicamente una oportunidad de colocación confirmada y su ubicación de inicio dentro del sistema 400 operacional de extremo a extremo. El CIS 416 además se configura para insertar el ID de señal y el identificador de canal en los metadatos de la corriente de señales de origen utilizando el formato de transporte en banda adecuado.
En una modalidad, cuando el dispositivo corriente abajo que se ha registrado con el transcodificador 422 para recibir manifiestos es el servidor 402, el CIS 416 se configura para recibir uno o más manifiestos originales que corresponden a un intervalo de datos de la corriente de señales de origen del transcodificador 422.
En una modalidad, un POIS 424 puede implementarse por el servidor 402. El POIS 424 se configura para "confirmar" las oportunidades de colocación no confirmadas al identificar las ubicaciones de inicio temporales de las oportunidades de colocación no confirmadas (es decir, incluyendo los puntos de señal de publicidad) con respecto a la corriente de contenido y un reloj de pared. El POIS 424 se configura para devolver un valor globalmente único, un UUID, denominado como identificador de señal o ID de señal que identifica únicamente un PO como PO confirmado y su ubicación de inicio dentro del sistema operacional de extremo a extremo. El POIS 424 entonces inserta el ID de señal y el identificador de canal en otros metadatos extraídos de la corriente de señales de origen utilizando el formato de transporte en banda adecuado.
El POIS 424 se configura para iniciar un flujo de trabajo en donde por la señal confirmada, genera el conjunto de oportunidades de colocación confirmadas y activa un activador de decisión anticipada con el ID de señal como los datos de activación. El receptor del activador de decisión anticipada es un ejemplo de un Servicio 426 de Administración de Anuncios de SCTE 130, o ADM 426 asociado con el servidor 402. El ADM 426 se configura para identificar una lista representativa de un número de corrientes de señales de receptor que tienen el identificador de canal. Para identificar la lista, en una modalidad, el ADM 426 transmite y recibe mensajes y datos hasta/desde el administrador 428 de sesión internamente implementado por el servidor 402. En una modalidad, la ADM 426 transmite el identificador de canal al administrador 428 de sesión, el cual proporciona el ADM 426 con una lista de identidades de cliente indicativas de un número de corrientes de transporte activas (por ejemplo, un número de sesiones) que tienen el identificador de canal, por ejemplo, una lista de corrientes de señales de receptor que tienen el mismo identificador de canal que actualmente los suscriptores actualmente "ven". El ADM 426 también se configura para obtener una pluralidad de anuncios publicitarios que corresponden a la lista de todas las sesiones activas de uno o más ADS 404a-404n. El ADM 426 recibe, de los ADS 404a-404n, la pluralidad de anuncios publicitarios dirigidos a la lista representativa de la pluralidad de corrientes de señales activas.
El ADM 426 utiliza el ID de señal más un conjunto de criterios de destino localmente configurados o aprendidos para iniciar un conjunto único de solicitudes de decisión de anuncio. Las solicitudes de decisión de anuncio evolucionan en solicitudes de decisión de anuncio dirigidas a los propietarios de decisión adecuados y los resultados son un conjunto de decisiones de colocación de anuncio con respecto a las oportunidades de colocación generadas como resultado de la confirmación de señal.
El ADM 426 también se configura para almacenar la lista obtenida de anuncios publicitarios en una o más memorias caché 412a-412n bajo el control de clientes 410a-410n correspondientes asociados con uno o más ADS 404a-404n. El ADM 426 asocia el ID de señal único con cada uno de los anuncios publicitarios dirigidos/no dirigidos y almacena los anuncios publicitarios dirigidos/no dirigidos en una o más memorias caché 412a-412n. Puesto que existen de miles a millones de anuncios que se almacenan en una o más memorias caché 412a-412n, en una modalidad, el ADM 426 se configura para dividir un intervalo de tiempo entre la recepción de un tono cue y la llegada de una punto de señal de anuncio publicitario correspondiente en un número predeterminado de intervalos de sub-tiempo y dividir la corriente de señales en un número predeterminado de corrientes de sub-señales.
En una modalidad, el ADM 426 además se configura para implementar un manipulador 430 de manifiestos y una memoria 432, la cual, por ejemplo, puede ser una memoria 432 de acceso aleatorio estática. El manipulador 430 de manifiestos se configura para recibir uno o más manifiestos originales del CIS 416. Para cada sesión activa en la lista representativa de la pluralidad de sesiones activas, el manipulador 430 de manifiestos asocia el manifiesto original con el identificador de canal correspondiente, un identificador de sesión, y una compensación inicial de cero en la memoria 432 (estática). El manipulador 430 de manifiestos se configura para derivar y mantener en la memoria (estática) una pluralidad de manifiestos almacenados que tienen diferentes compensaciones del manifiesto original.
En una modalidad, el manipulador 430 de manifiestos se configura para recibir de un aparato inteligente (por ejemplo, 408a) una solicitud de un manifiesto que corresponde a un identificador de sesión y un identificador de canal. El manipulador 430 de manifiestos se configura para recuperar del administrador 428 de sesión un manifiesto de sesión basado en el identificador de sesión. El manipulador 430 de manifiestos se configura para ajustar una compensación de sesión basada en una diferencia en una duración de sesión representada por el manifiesto de sesión de una duración de sesión representada por un manifiesto de sesión anterior que correspondiente a la sesión. Cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, el manipulador 430 de manifiestos se configura para identificar en una memoria caché (por ejemplo, 412a) al menos un anuncio publicitario que se insertará en la sesión y sustituye al menos una dirección que corresponde al menos a un segmento de al menos un anuncio publicitario en el manifiesto de sesión basándose en la diferencia. El manipulador 430 de manifiestos se configura para transmitir el manifiesto de sesión al aparato inteligente (por ejemplo, 408a).
En una modalidad, cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, el manipulador 430 de manifiestos se configura para instruir a un cliente (por ejemplo, 410a) asociado con un servicio de decisión de anuncio (por ejemplo, ADS 404a) para que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión basándose en al menos una dirección remplazada del manifiesto de sesión.
En una modalidad, instruir a un servicio de decisión de anuncio (por ejemplo, 404a) para que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión además puede comprender el servidor 402 que transmite, al servicio de decisión de anuncio (por ejemplo, 404a), al menos una solicitud de anuncio de la dirección del bloque publicitario que corresponde al identificador de sesión, recibir, del servicio de decisión de anuncio publicitario (por ejemplo, 404a), al menos un anuncio publicitario, y almacenar al menos un anuncio publicitario en al menos una memoria caché (por ejemplo, 412a). Instruir a un servicio de decisión de anuncio (por ejemplo, 404a) para que empalme al menos un anuncio en la dirección del bloque publicitario en la sesión además puede comprender antes del empalme, instruir al servicio de decisión de anuncio (por ejemplo, 404a) a que recupere al menos un anuncio publicitario de la memoria caché (por ejemplo, 412a).
En una modalidad, el manipulador 430 de manifiestos se configura para almacenar la compensación de sesión y el manifiesto de sesión anterior en la memoria 432. La memoria 432 puede ser una memoria de acceso aleatorio estática. El manifiesto de sesión y el manifiesto de sesión anterior difieren cuando la diferencia es no nula. Cuando el aparato inteligente (por ejemplo, 408a) sintoniza otro canal o termina su sesión, el manipulador 430 de manifiestos puede restablecer la compensación de sesión en cero.
En una modalidad, el manipulador 430 de manifiestos del servidor 402 puede recibir un manifiesto original del transcodificador 422. El manipulador 430 de manifiestos inicialmente puede asignar una compensación nula al manifiesto original. El manipulador 430 de manifiestos puede derivar y mantener una pluralidad de manifiestos almacenados que tienen diferentes compensaciones del manifiesto original. El manipulador 430 de manifiestos puede remplazar uno de los manifiestos almacenados con el manifiesto de sesión para producir el manifiesto de sesión anterior.
La Figura 5 es un diagrama de flujo que ilustra una modalidad de un método 500 para acelerar las decisiones de colocación de publicidad en corrientes de datos a partir de un punto de vista de un servidor 402, de acuerdo con una modalidad de la presente invención. En el bloque 505, el servidor 402 ingiere una corriente de señales de origen del transcodificador 422. Más particularmente, el CIS 416 asociado con el servidor 402 ingiere una corriente de señales de origen (por ejemplo, en formato de MPEG-2) que tiene un identificador de canal de los dispositivos 418 corriente arriba.
Un transcodificador 422 asociado con un formato de vendedor especifico para la corriente de señales de origen (por ejemplo, TBS) recibe la corriente de señales y convierte la corriente de señales en video de IP. En el proceso, un observador 420, el cual puede incluirse en el transcodificador 422, indica la presencia de un tono cue de SCTE-35. En una modalidad, la indicación de que una oportunidad de colocación de publicidad se ubica en la corriente de señales es un caso de un paquete de SCTE-35 indicativo de un tono cue. El tono cue también proporciona una indicación de que una oportunidad de colocación de anuncio publicitario se ubica en la corriente de señales un periodo de tiempo antes del punto de señal de anuncio publicitario en la corriente de señales. El observador 420 del transcodificador 422 entonces coloca una solicitud web en el CIS 416 para informar al CIS 416 que el tono cue para un ID de canal especifico se ha observado.
El transcodificador 422 puede identificar el servidor 402 como registrado previamente para recibir una serie de manifiestos originales asociados con la corriente de señales de origen (por ejemplo, TBS). Como resultado del transcodificador 422 que divide la corriente de señales de origen en una pluralidad de intervalos de datos de una duración predeterminada (por ejemplo, 30 segundos), y para cada intervalo de datos, en una pluralidad de segmentos o "fragmentos" (por ejemplo, 2 segundos). El transcodificador 422 además se configura para construir y transmitir un manifiesto original al servidor 402. En el bloque 510, el CIS 416 además recibe el manifiesto original que corresponde a un intervalo de datos de la corriente de señales de origen desde el transcodificador 422. En el bloque 515, el CIS 416 transmite el manifiesto original al manipulador 430 de manifiestos para procesamiento adicional que se describirá a continuación.
La llegada del paquete de SCTE-35 es una indicación de un número de oportunidades de colocación (PO) teóricas para el ID del canal especifico (por ejemplo, TBS). Cada PO no confirmada tiene una ubicación de inicio estimada conocida como punto de señal. El punto de la señal necesita ser confirmado. Cuando se encuentra una ubicación de inicio de inserción de anuncio real en tiempo real, un proceso de software en el POIS 424 confirma el tiempo real del punto de señal. Este punto de señal confirmado resulta en la generación de PO confirmados que ahora están listos para inserción de anuncios.
Cuando el CIS 416 recibe las oportunidades de colocación teóricas, el CIS 416 se configura para pre-asignar un número correspondiente de oportunidades de colocación no confirmadas sin señales y para vincular la corriente de señales de origen con una pluralidad de oportunidades de colocación preparadas pero no confirmadas. Vincular la corriente de señales de origen con una pluralidad de oportunidades de colocación preparadas pero no confirmadas incluye el CIS 416 que extrae los metadatos que incluyen el identificador de canal de la corriente de señales de origen. Como se utiliza en la presente, el término "vincular" se refiere a una identificación de las señales y contenido dentro de un PO. Los PO se crean frecuentemente para grandes cantidades de contenido que aún no se publican (es decir, cualquier programa en la red de TNT por la noche).
Cuando un programa "sale al aire" y se detecta una corriente de señales de origen, la corriente de señales de origen se vincula con los PO relevantes para ese programa.
Cuando se generan PO confirmados, el mismo identificador de punto de señal que generó los PO se reenvía y captura por un proceso de resolución de decisión de anuncio de escucha en el ADM 426 asociado con el servidor 402. Este reenvió de punto de señal se denomina activador de decisión de colocación anticipada (o activador de decisión para abreviar) que inicia una secuencia de procesos de software. A medida que se adquiriere contenido por la CDN 406, la CDN 406 notifica al POIS 424, y el POIS 424 "confirma" la ubicación de inicio temporal de una oportunidad de colocación con respecto a la corriente de señales de origen y un reloj de pared. Los POIS 424 devuelve un valor globalmente único, un UUID, denominado como identificador de señal o ID de señal que identifica únicamente un PO como PO confirmado y su ubicación de inicio dentro del sistema operacional de extremo a extremo. El POIS 424 entonces inserta el ID de señal y el identificador de canal en otros metadatos extraídos de la corriente de señales de origen utilizando el formato de transporte en banda adecuado.
En paralelo, el POIS 424 inicia un flujo de trabajo por el cual el POIS genera un conjunto de oportunidades de colocación confirmadas en la corriente de señales de origen y activa un activador de decisión anticipada con el ID de señal como los datos de activación. El receptor de activador de decisión anticipada es un caso de un Servicio 426 de Administración de Anuncios de SOTE 130, o ADM 426 asociado con el servidor 402.
En el bloque 520, el ADM 426 del servidor 402 identifica un representante de un número de corrientes de señales de receptor que tiene identificador de canal antes de la vigencia del periodo de tiempo. La lista representativa de una pluralidad de corrientes de señales de receptor que tienen el identificador de canal corresponde con el número de oportunidades de colocación confirmadas. Para identificar la lista, el ADM 426 transmite el identificador de canal al administrador 428 de sesión, el cual proporciona al ADM 426 una lista de identificadores de sesión indicativa de un número de receptores que actualmente ve un canal que corresponde al identificador de canal.
En el bloque 525, el ADM 426 del servidor 402 obtiene de uno o más ADS 404a-404n una pluralidad de anuncios que corresponde a la lista correlacionada con los identificadores de sesión y el identificador de canal. El ADM 426 recibe de los ADS 404a-404n, la pluralidad de anuncios publicitarios que corresponde a la lista representativa de la pluralidad de corrientes de señales de receptor que tiene el identificador de canal.
En el bloque 530, el ADM 426 del servidor 402 almacena la lista obtenida de anuncios publicitarios en al menos una memoria caché 412a-412n en uno o más ADS 404a-404n. Aunque se almacene la lista de anuncios publicitarios en al menos una memoria caché 412a-412n, el ADM 426 asocia los ID de señal únicos con cada uno de la lista de anuncios publicitarios. Almacenar la lista obtenida de anuncios publicitarios en al menos una memoria caché 412a-412n puede incluir transmitir la lista de anuncios publicitarios al menos a un JAR (es decir, un archivo de Java) asociado con uno o más clientes 410a-410n. Puesto que pueden existir de miles a millones de anuncios que se almacenan en las memorias caché 412a-412n, en una modalidad, el ADM 426 divide el intervalo de tiempo de la recepción de un tono cue en una llegada esperada del punto de señal correspondiente en la corriente de señales de origen en un número predeterminado de intervalos de sub-tiempo y divide el número (es decir, el conteo) de corrientes de señales recibidas en un número predeterminado de corrientes de sub-señales. El número predeterminado de corrientes de sub-señales se distribuye por el número predeterminado de intervalos de subtiempo en las memorias caché 412a-412n asociadas con los clientes 410a-410n.
En el bloque 535, para cada sesión activa en la lista, el manipulador 430 de manifiestos asocia el manifiesto original con un identificador de canal, un identificador de sesión, y una compensación inicial de cero en una memoria 432. En una modalidad, la memoria 432, por ejemplo, puede ser, una memoria estática. La compensación indica que el número de segmentos y los URL correspondientes de un manifiesto de sesión que se distribuirá a un aparato inteligente (por ejemplo, 408a) se desvia del número de segmento en un manifiesto de sesión anterior correspondiente (véase Figura 7).
En el bloque 540, el manipulador 430 de manifiestos deriva y mantiene en la memoria estática (véase Figura 6) una pluralidad de manifiestos 602 almacenados que tienen diferentes compensaciones del manifiesto original. En una modalidad, los manifiestos estáticamente almacenados/y el número correspondiente de segmentos por manifiesto almacenado pueden numerarse consecutivamente desde un valor negativo esperado mínimo, pasando por 0, hasta un valor esperado máximo positivo. A medida que se recuperan e insertan los anuncios en bloques publicitarios, el valor de la compensación puede cambiar y un manifiesto de sesión "anterior" original o no original puede remplazarse (véase Figura 7), dependiendo de la duración de uno o más anuncios que se insertarán en el bloque publicitario.
La Figura 7 es un diagrama de flujo que ilustra un ejemplo de un método 700 para manipular un manifiesto. El método 700 puede realizarse por un sistema 400 informático de la Figura 4 y puede comprender hardware (por ejemplo, circuitería, lógica dedicada, lógica programable, microcódigo, etc.), software (por ejemplo, instrucciones ejecutadas en un dispositivo de procesamiento), o una combinación de los mismos. En un ejemplo, el método 700 se realiza por el manipulador 430 de manifiestos del servidor 402 de la Figura 4.
Como se muestra en la Figura 7, en el bloque 705, el manipulador 430 de manifiestos del servidor 402 recibe una solicitud de un manifiesto que corresponde a un identificador de sesión de un aparato inteligente (por ejemplo, 408a). En el bloque 710, el manipulador 430 de manifiestos identifica un manifiesto de sesión del administrador 432 de sesión y una compensación basada en el identificador de sesión. El manifiesto de sesión y la compensación actual se identifican como uno de los manifiestos almacenados y compensaciones ubicadas en la memoria 432 estática.
En el bloque 715, el manipulador 430 de manifiestos ajusta una compensación de sesión basándose en una diferencia en una duración de sesión representada por el manifiesto de sesión de una duración de sesión representada por un manifiesto de sesión anterior almacenado en la memoria 432 que corresponde a la sesión. En una modalidad, basándose en el identificador de sesión, el manipulador 430 de manifiestos identifica un cliente (por ejemplo, 404a) del cual obtiene la duración de tiempo de al menos un anuncio. El manipulador 430 de manifiestos ajusta la compensación de sesión basándose en la duración de al menos un anuncio recuperado. El manipulador 430 de manifiestos remplaza la compensación de sesión previamente almacenada en la memoria 432 con la compensación de sesión ajustada.
En el bloque 720, cuando el manifiesto actual comprende una dirección de un bloque publicitario, el manipulador 430 de manifiestos identifica en una memoria caché (por ejemplo, 412a) al menos un anuncio publicitario que se insertará en la sesión y remplaza al menos una dirección que corresponde al menos a un segmento de al menos un anuncio publicitario en el manifiesto de sesión basado en la diferencia. El manipulador 430 de manifiestos remplaza el manifiesto de sesión anterior (el cual puede ser un manifiesto de sesión original u otro manifiesto anterior actualizado) en la memoria 432 con el manifiesto de sesión actualizado.
En el bloque 720, el manipulador 430 de manifiestos transmite el manifiesto de sesión actualizado al aparato inteligente (por ejemplo, 408a).
Si la compensación ajustada no cambia debido a que la duración total del bloque publicitario no cambia, o si sólo existe contenido dirigido por el manifiesto actual, entonces el manifiesto previamente almacenado es una copia del manifiesto actual. El manifiesto previamente almacenado es una copia de otro manifiesto diferente del manifiesto actual cuando la compensación de sesión cambia el valor. Además, cuando el aparato inteligente (por ejemplo, 408a) sintoniza otro canal o termina su sesión, la compensación de sesión se restablece en cero. El método de la Figura 7 se repite siempre que el transcodificador 422 distribuya un nuevo manifiesto original a medida que la corriente de transporte avance en el tiempo transmitido.
En una modalidad, cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, el servidor 402 puede instruir a un cliente (por ejemplo, 410a) asociado con un servicio de decisión de anuncio (por ejemplo, 404a) para que empalme al menos un anuncio publicitario de una memoria caché asociada (por ejemplo, 412a) en la dirección del bloque publicitario en la sesión basada en al menos una dirección remplazada del manifiesto de sesión. Instruir a un servicio de decisión de anuncio (por ejemplo, 404a) para que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión además puede comprender el servidor 402 que transmite, al servicio de decisión de anuncio (por ejemplo, 404a), al menos una solicitud de anuncio de la dirección del bloque publicitario que corresponde al identificador de sesión, recibir, del servicio de decisión de anuncio (por ejemplo, 404a) al menos un anuncio publicitario, y almacenar al menos un anuncio publicitario en la memoria caché asociada (por ejemplo, 412a). Instruir a un servicio de decisión de anuncio (por ejemplo, 404a) para que empalme al menos un anuncio en la dirección del bloque publicitario en la sesión además puede comprender, antes de empalmar, el manipulador 430 de manifiestos que instruye al servicio de decisión de anuncio (por ejemplo, 404a) para que recupere al menos un anuncio publicitario de la memoria caché asociada (por ejemplo, 412a).
La Figura 8 ilustra una representación diagramática de una máquina en la forma ejemplar de un sistema 800 informático dentro del cual puede ejecutarse un conjunto de instrucciones, para provocar que la máquina realice cualquiera de una o más de las metodologías descritas en la presente. En algunos ejemplos, la máquina puede conectarse (por ejemplo, conectarse en red) a otras máquinas en una LAN, una intranet, una extranet o la Internet. La máquina puede operar en la capacidad de una máquina de servidor en el ambiente de red de cliente-servidor. La máquina puede ser una computadora personal (PC), una caja de convertidor-descodificador (STB), un servidor, un enrutador de red, conmutador o puente, o cualquier máquina capaz de ejecutar un conjunto de instrucciones (secuenciales u otras) que especifican acciones que deben tomarse por esa máquina. Además, aunque sólo se ilustra una sola máquina, el término "máquina" también deberá incluir cualquier colección de máquinas que, ejecuten individual o conjuntamente un conjunto (o varios conjuntos) de instrucciones para realizar cualquiera de una o más de las metodologías discutidas en la presente.
El sistema 800 informático ejemplar incluye un dispositivo 802 de procesamiento (procesador), una memoria 804 principal (por ejemplo, memoria de sólo lectura (ROM), memoria flash, memoria de acceso aleatorio dinámica (DRAM), tal como DRAM sincrónica (SDRAM)), una memoria 806 estática (por ejemplo, memoria flash, memoria de acceso aleatorio estática (SRAM)), y un dispositivo 816 de almacenamiento de datos, que se comunican entre sí mediante un bus 808.
El procesador 802 representa uno o más dispositivos de procesamiento de propósito general tales como un microprocesador, unidad de procesamiento central, o similares. Más particularmente, el procesador 802 puede ser un microprocesador de cómputo de conjunto de instrucciones complejas (CISC), microprocesador de cómputo de conjunto de instrucciones reducidas (RISC), microprocesador de palabras de instrucción muy largas (VLIW) o un procesador que implementa otros conjuntos de instrucciones o procesadores que implementan una combinación de conjuntos de instrucciones. El procesador 802 también puede ser uno o más dispositivos de procesamiento de propósito especial tales como un circuito integrado de aplicación especifica (ASIC), una disposición de puerta programable de campo (FPGA), un procesador de señales digitales (DSP), un procesador de red, o similares. El manipulador 830 de manifiestos mostrado en la Figura 4 puede ejecutarse por el procesador 802 configurado para realizar las operaciones y etapas discutidas en la presente.
El sistema 800 informático además puede incluir un dispositivo 822 de interfaz de red. El sistema 800 informático también puede incluir una unidad 810 de visualización de video (por ejemplo, una pantalla de cristal liquido (LCD) o un tubo de rayos catódicos (CRT)), un dispositivo 812 de entrada alfanumérica (por ejemplo, un teclado), un dispositivo 814 de control de cursor (por ejemplo, un ratón), y un dispositivo 820 de generación de señales (por ejemplo, un altavoz).
Una disquetera 816 puede incluir un medio 824 legible por computadora en el cual se almacenan uno o más conjuntos de instrucciones (por ejemplo, instrucciones del manipulador 430 de manifiestos) que representa una o más de las metodologías o funciones descritas en la presente. Las instrucciones del manipulador 430 de manifiestos también pueden residir, completamente o al menos parcialmente, dentro de la memoria 804 principal y/o dentro del procesador 802 durante la ejecución del mismo por el sistema 800 informático, la memoria 804 principal y el procesador 802 también constituyen el medio legible por computadora. Las instrucciones del manipulador 430 de manifiestos además pueden transmitirse o recibirse por una red mediante el dispositivo 822 de interfaz de red.
Aunque el medio 824 de almacenamiento legible por computadora mostrado en un ejemplo es un medio simple, el término "medio de almacenamiento legible por computadora" debe tomarse para incluir un medio no transitorio simple o varios medios no transitorios (por ejemplo, una base de datos centralizada y/o distribuida, y/o memorias caché asociadas y servidores) que almacenan uno o más conjuntos de instrucciones. El término "medio de almacenamiento legible por computadora" también debe considerarse que incluye cualquier medio que sea capaz de almacenar, codificar o transportar un conjunto de instrucciones para su ejecución por la máquina y que provocan que la máquina realice una o más de las metodologías de la presente descripción. El término "medio de almacenamiento legible por computadora" por consiguiente, debe considerarse que incluye, pero no se limita a, memorias de estado sólido, medios ópticos y medios magnéticos.
En la descripción anterior, se establecen numerosos detalles. Es aparente, sin embargo, para alguien de experiencia ordinaria en la téenica que tiene el beneficio de esta descripción, que ejemplos de la descripción pueden ponerse en práctica sin estos detalles específicos. En algunos casos, estructuras bien conocidas y dispositivos se muestran en forma de diagrama de bloque, en lugar de en detalle, para evitar oscurecer la descripción.
Algunas porciones de la descripción detallada se presentan en términos de algoritmos y representaciones simbólicas de operaciones sobre bits de datos dentro de una memoria de computadora. Estas descripciones algorítmicas y representaciones son los medios utilizados por aquellos expertos en la técnica de procesamiento de datos para transmitir más eficazmente la sustancia de su trabajo a otros con experiencia en la técnica. Un algoritmo aquí, y generalmente, se concibe por ser una secuencia auto-constante de etapas que conllevan a un resultado deseado. Las etapas son aquellas que requieren manipulaciones físicas de cantidades físicas. Normalmente, aunque no de manera necesaria, estas cantidades adoptan la forma de señales eléctricas o magnéticas capaces de almacenarse, transferirse, combinarse, compararse y de cierto modo manipularse. Algunas veces ha demostrado ser conveniente, principalmente por razones de uso común, para llamar a estas señales bits, valores, elementos, símbolos, letras, términos, números o similares.
Debe tenerse en cuenta, sin embargo, que todos estos y términos similares se asociarán con las cantidades físicas adecuadas y sólo son etiquetas convenientes aplicadas a estas cantidades. A menos que se establezca específicamente lo contrario como es aparente a partir de la discusión anterior, se aprecia que durante la descripción, discusiones que utilizan los términos tales como "recibir", "escribir", "mantener", o similares, se refieren a las acciones y procesos de un sistema informático, o dispositivo de cómputo electrónico similar, que manipula y transforma datos representados como cantidades físicas (por ejemplo, electrónicas) dentro de los registros y memorias del sistema informático en otros datos similarmente representados como cantidades físicas dentro de las memorias o registros del sistema informático u otros dispositivos de almacenamiento, transmisión o visualización de información.
Los ejemplos de la descripción también se refieren a un aparato pará realizar las operaciones en la presente. Este aparato puede construirse especialmente para los propósitos requeridos, o puede comprender una computadora de propósito general selectivamente activada o reconfigurada por un programa informático almacenado en la computadora. Tal programa de computadora puede almacenarse en un medio de almacenamiento legible por computadora, tal como, pero no limitado a, cualquier tipo de disco que incluya discos flexibles, discos ópticos, CD-ROM, y discos magnéticos-ópticos, memorias de sólo lectura (ROM), memorias de acceso aleatorio (RAM), EPROM, EEPROM, tarjetas magnéticas u ópticas, o cualquier tipo de medios adecuados para almacenar instrucciones electrónicas.
Los algoritmos y despliegues presentados en la presente no se relacionan inherentemente con ninguna computadora particular u otro aparato. Varios sistemas de propósito general pueden utilizarse con programas de acuerdo con las enseñanzas en la presente, o pueden probar ser convenientes para construir un aparato más especializado para realizar las etapas de método requeridas. La estructura ejemplar para una variedad de estos sistemas se desprende a partir de la descripción en la presente. Además, la presente descripción no se describe con referencia a ningún lenguaje de programación particular. Se apreciará que una variedad de lenguajes de programación pueden utilizarse para implementar las enseñanzas de la descripción como se describe en la presente.
Se entenderá que la descripción anterior se pretende para ser ilustrativa, y no restrictiva. Muchos otros ejemplos serán aparentes para aquellos de experiencia en la téenica al leer y entender la descripción anterior. El alcance de la descripción, por lo tanto, debe determinarse con referencia a las reivindicaciones anexas, junto con el alcance total de equivalentes a los cuales tienen derecho tales reivindicaciones

Claims (20)

REIVINDICACIONES
1. Un método implementado por computadora para manipular un manifiesto, el método caracterizado porque comprende las etapas de: recibir, por un servidor de un aparato inteligente, una solicitud de un manifiesto que corresponde a un identificador de sesión; recuperar, por el servidor de un servidor de sesión, un manifiesto de sesión basado en el identificador de sesión; ajustar, por el servidor, una compensación de sesión basándose en una diferencia en una duración de sesión representada por el manifiesto de sesión de una duración de sesión representada por un manifiesto de sesión anterior que corresponde a la sesión; cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, identifica en una memoria caché por el servidor al menos un anuncio publicitario que se insertará en la sesión y sustituye al menos una dirección que corresponde al menos a un segmento de al menos un anuncio publicitario en el manifiesto de sesión basándose en la diferencia; y transmitir al aparato inteligente el manifiesto de sesión.
2. El método de conformidad con la reivindicación 1, caracterizado porque, cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, instruye, por el servidor, a un cliente asociado con un servicio de decisión de anuncio a que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión basándose al menos en una dirección remplazada del manifiesto de sesión.
3. El método de conformidad con la reivindicación 2, caracterizado porque instruir a un servicio de anuncios a que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión además comprende: transmitir, al servicio de decisión de anuncio utilizando el servidor, al menos una solicitud de anuncio para la dirección del bloque publicitario que corresponde al identificador de sesión; recibir, del servicio de decisión de anuncio en el servidor, al menos un anuncio publicitario; y almacenar, utilizando el servidor, al menos un anuncio publicitario en al menos una memoria caché.
4. El método de conformidad con la reivindicación 3, caracterizado porque instruir a un servicio de anuncios para que empalme al menos un anuncio en la dirección del bloque publicitario en la sesión además comprende, antes de empalmar, instruir al servicio de decisión de anuncio a que recupere al menos un anuncio publicitario de la memoria caché.
5. El método de conformidad con la reivindicación 1, caracterizado porque la compensación de sesión y el manifiesto de sesión anterior se almacenan en una memoria.
6. El método de conformidad con la reivindicación 5, caracterizado porque la memoria es una memoria de acceso aleatorio estática.
7. El método de conformidad con la reivindicación 1, caracterizado porque el manifiesto de sesión y el manifiesto de sesión anterior difieren cuando la diferencia es no nula.
8. El método de conformidad con la reivindicación 1, caracterizado porque, cuando el aparato inteligente sintoniza otro canal o termina su sesión, restablece la compensación en cero.
9. El método de conformidad con la reivindicación 1, caracterizado además porque comprende recibir, por el servidor, un manifiesto original de un transcodificador.
10. El método de conformidad con la reivindicación 9, caracterizado además porque comprende asignar una compensación nula al manifiesto original.
11. El método de conformidad con la reivindicación 9, caracterizado además porque comprende, derivar y mantener, por el servidor, una pluralidad de manifiestos almacenados que tienen diferentes compensaciones del manifiesto original.
12. El método de conformidad con la reivindicación 11, caracterizado además porque comprende, remplazar uno de la pluralidad de manifiestos almacenados con el manifiesto de sesión para producir el manifiesto de sesión anterior.
13. El método de conformidad con la reivindicación 1, caracterizado porque el manifiesto de sesión y el manifiesto de sesión anterior cada uno comprenden una pluralidad correspondiente de URL que señala a los segmentos de una sesión que corresponde al identificador de sesión.
14. El método de conformidad con la reivindicación 13, caracterizado porque al menos uno de la pluralidad de URL del manifiesto de sesión y al menos uno de la pluralidad de URL del punto de manifiesto de sesión anterior en diferentes segmentos de la sesión
15. Un sistema de computadora para manipular un manifiesto, caracterizado porque comprende: una memoria; un dispositivo de procesamiento, acoplado a la memoria, el dispositivo de procesamiento configurado para: recibir, de un aparato inteligente, una solicitud de un manifiesto que corresponde a un identificador de sesión; recuperar, de un servidor de sesión, un manifiesto de sesión basado en el identificador de sesión; ajustar una compensación de sesión basada en una diferencia en una duración de sesión representada por el manifiesto de sesión de un duración de sesión representada por un manifiesto de sesión anterior que corresponde a la sesión; cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, identificar en una memoria caché al menos un anuncio publicitario que se insertará en la sesión y remplazará al menos una dirección que corresponde al menos a un segmento de al menos un anuncio publicitario en el manifiesto de sesión basándose en la diferencia; y transmitir al aparato inteligente, el manifiesto de sesión.
16. El sistema de conformidad con la reivindicación 15, caracterizado porque, cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, instruye a un cliente asociado con un servicio de decisión de anuncio a que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión basándose en al menos una dirección remplazada del manifiesto de sesión.
17. El sistema de conformidad con la reivindicación 16, caracterizado porque instruir a un servicio de anuncios para que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión además comprende: transmitir, al servicio de decisión de anuncio, al menos una solicitud de anuncio de la dirección del bloque publicitario que corresponde al identificador de sesión; recibir, del servicio de decisión de anuncio, al menos un anuncio publicitario; y almacenar al menos un anuncio publicitario en la memoria caché.
18. Un medio de almacenamiento legible por computadora no transitorio que incluye instrucciones que, cuando se ejecutan por un sistema de procesamiento, provocan que el sistema de procesamiento realice operaciones para manipular un manifiesto, caracterizado porque comprende: recibir, de un aparato inteligente, una solicitud de un manifiesto que corresponde a un identificador de sesión; recuperar, de un servidor de sesión, un manifiesto de sesión basada en el identificador de sesión; ajustar una compensación de sesión basada en una diferencia en un duración de sesión representada por el manifiesto de sesión de un duración de sesión representada por un manifiesto de sesión anterior que corresponde a la sesión; cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, identifica en una memoria caché al menos un anuncio publicitario que se insertará en la sesión y remplazará al menos una dirección que corresponde al menos a un segmento de al menos un anuncio publicitario en el manifiesto de sesión basándose en la diferencia; y transmitir el manifiesto de sesión al aparato inteligente .
19. El medio de almacenamiento legible por computadora no transitorio de conformidad con la reivindicación 18, caracterizado porque, cuando el manifiesto de sesión comprende una dirección de un bloque publicitario, instruye a un cliente asociado con un servicio de decisión de anuncio para que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión basándose en al menos una dirección remplazada del manifiesto de sesión.
20. El medio de almacenamiento legible por computadora no transitorio de conformidad con la reivindicación 19, caracterizado porque instruir a un servicio de anuncios para que empalme al menos un anuncio publicitario en la dirección del bloque publicitario en la sesión además comprende: transmitir, al servicio de decisión de anuncio, al menos una solicitud de anuncio de la dirección del bloque publicitario que corresponde al identificador de sesión; recibir, del servicio de decisión de anuncio, al menos un anuncio publicitario; y almacenar al menos un anuncio publicitario en al menos una memoria caché.
MX2014015107A 2013-05-02 2013-05-02 Método y sistema para manipulación eficiente de manifiestos. MX359563B (es)

Priority Applications (1)

Application Number Priority Date Filing Date Title
PCT/US2013/039275 WO2014178872A2 (en) 2013-05-02 2013-05-02 Method and system for efficient manifest manipulation

Publications (2)

Publication Number Publication Date
MX2014015107A true MX2014015107A (es) 2015-08-06
MX359563B MX359563B (es) 2018-10-01

Family

ID=51844079

Family Applications (1)

Application Number Title Priority Date Filing Date
MX2014015107A MX359563B (es) 2013-05-02 2013-05-02 Método y sistema para manipulación eficiente de manifiestos.

Country Status (5)

Country Link
EP (1) EP2883201A4 (es)
BR (1) BR112014029971B1 (es)
CA (1) CA2875845C (es)
MX (1) MX359563B (es)
WO (1) WO2014178872A2 (es)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11044520B2 (en) 2016-12-29 2021-06-22 Telefonaktiebolaget Lm Ericsson (Publ) Handling of video segments in a video stream
US10887799B2 (en) 2019-01-10 2021-01-05 Cisco Technology, Inc. SRv6 user-plane-based triggering methods and apparatus for session or flow migration in mobile networks

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8949882B2 (en) 2007-12-06 2015-02-03 This Technology, Inc. System and method for enabling content providers to identify advertising opportunities
US8914824B2 (en) * 2009-01-07 2014-12-16 Microsoft Corporation Video ad delivery using configurable video ad policies
EP2912791B1 (en) 2010-03-05 2019-05-01 Samsung Electronics Co., Ltd Method and apparatus for generating and reproducing adaptive stream based on file format, and recording medium thereof
AU2010202741B1 (en) * 2010-06-30 2010-12-23 Brightcove Inc. Dynamic chunking for media streaming
US9456015B2 (en) * 2010-08-10 2016-09-27 Qualcomm Incorporated Representation groups for network streaming of coded multimedia data
KR20120060134A (ko) * 2010-08-16 2012-06-11 삼성전자주식회사 광고 재생 방법 및 장치
US8677428B2 (en) * 2010-08-20 2014-03-18 Disney Enterprises, Inc. System and method for rule based dynamic server side streaming manifest files
US20120198492A1 (en) * 2011-01-31 2012-08-02 Cbs Interactive, Inc. Stitching Advertisements Into A Manifest File For Streaming Video
US8234350B1 (en) * 2011-12-19 2012-07-31 Seachange International, Inc. Systems and methods for generating targeted manifest files

Also Published As

Publication number Publication date
WO2014178872A3 (en) 2015-04-02
CA2875845A1 (en) 2014-11-06
BR112014029971A2 (pt) 2017-06-27
EP2883201A4 (en) 2016-03-09
BR112014029971B1 (pt) 2022-08-09
MX359563B (es) 2018-10-01
EP2883201A2 (en) 2015-06-17
BR112014029971A8 (pt) 2021-05-25
WO2014178872A2 (en) 2014-11-06
CA2875845C (en) 2020-08-25

Similar Documents

Publication Publication Date Title
US10038925B2 (en) Server side adaptive bit rate reporting
US8799943B1 (en) Method and system for efficient manifest manipulation
US8863164B1 (en) Server side adaptive bit rate reporting
US20130291014A1 (en) Method and system for uniformly marking and identifying placement opportunity locations for facilitating accelerated decision resolution
EP2845387B1 (en) Method for ingesting multiple signals of the same meaning
US8667531B2 (en) Method for advertising decision resolution acceleration based on lookahead opportunity triggering
MX2014015107A (es) Metodo y sistema para manipulacion eficiente de manifiestos.
US10735824B2 (en) In-band trick mode control
CA2871917C (en) Server side adaptive bit rate reporting

Legal Events

Date Code Title Description
PD Change of proprietorship

Owner name: COMCAST CABLE COMMUNICATIONS MANAGEMENT, LLC