BR112019024004A2 - Disposição temporal de um evento de rearmazenamento temporário - Google Patents

Disposição temporal de um evento de rearmazenamento temporário Download PDF

Info

Publication number
BR112019024004A2
BR112019024004A2 BR112019024004-7A BR112019024004A BR112019024004A2 BR 112019024004 A2 BR112019024004 A2 BR 112019024004A2 BR 112019024004 A BR112019024004 A BR 112019024004A BR 112019024004 A2 BR112019024004 A2 BR 112019024004A2
Authority
BR
Brazil
Prior art keywords
temporary
storage
video item
specified
points
Prior art date
Application number
BR112019024004-7A
Other languages
English (en)
Inventor
Katsavounidis Ioannis
Watson Mark
Hipple Aaron
Wolcott Will
Original Assignee
Netflix, 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 Netflix, Inc. filed Critical Netflix, Inc.
Publication of BR112019024004A2 publication Critical patent/BR112019024004A2/pt

Links

Classifications

    • 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/433Content storage operation, e.g. storage operation in response to a pause request, caching operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/70Information retrieval; Database structures therefor; File system structures therefor of video data
    • G06F16/78Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/783Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • 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/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/44004Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving video buffer management, e.g. video decoder buffer or video display buffer
    • 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 or rendering scenes according to encoded video stream scene graphs
    • H04N21/44008Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/23406Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving management of server-side video buffer
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/61Network physical structure; Signal processing
    • H04N21/6106Network physical structure; Signal processing specially adapted to the downstream path of the transmission network
    • H04N21/6125Network physical structure; Signal processing specially adapted to the downstream path of the transmission network involving transmission via Internet

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Library & Information Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Television Signal Processing For Recording (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Advance Control (AREA)
  • Electrotherapy Devices (AREA)

Abstract

um método inclui receber, com um sistema de computação, dados representando um item de vídeo em um armazenamento temporário. o método inclui adicionalmente enviar o item de vídeo do armazenamento temporário para um sistema de exibição. o método inclui adicionalmente a determinação de que a utilização do armazenamento temporário cai abaixo de um limiar predeterminado. o método inclui adicionalmente, em resposta a determinar que a utilização do armazenamento temporário cai abaixo do limiar predeterminado, determinar que existe um ponto de rearmazenamento temporário especificado dentro de um intervalo de tempo predeterminado. o método inclui adicionalmente pausar, com o sistema de computação, o item de vídeo no ponto de rearmazenamento temporário especificado em resposta a determinar que existe o ponto de rearmazenamento temporário especificado dentro do intervalo de tempo predeterminado.

Description

DISPOSIÇÃO TEMPORAL DE UM EVENTO DE REARMAZENAMENTO TEMPORÁRIO
REFERÊNCIA CRUZADA PARA PEDIDOS RELACIONADOS
[001] Este pedido reivindica prioridade para o pedido de patente US 15/610053, depositado em 31 de maio de 2017, cuja revelação é exposta na sua totalidade.
CAMPO TÉCNICO
[002] A presente revelação de uma maneira geral diz respeito a fluxo continuo de video, e mais particularmente ao momento de um evento de rearmazenamento temporário dentro de um fluxo de video.
ANTECEDENTES
[003] Embora consumidores possam acessar itens de mídia, tais como filmes e shows de televisão, ao receber sinais através do ar ou ao se inscreverem para um provedor de televisão a cabo ou por satélite, de modo crescente consumidores estão acessando conteúdo em sistemas baseados em Internet. Alguns sistemas baseados em Internet permitem a usuários transferir ou fluir conteúdo pela Internet para uma variedade de dispositivos clientes. Por exemplo, um sistema de mídia baseado em Internet pode fornecer conteúdo para usuários por meio de um computador pessoal, um conversor de sinais ou de um dispositivo móvel pessoal, tal como um smartphone ou tablet. Em particular, sistemas de mídia de fluxo contínuo permitem usuários a acessar conteúdo de mídia em um formato de vídeo de fluxo contínuo, de tal maneira que os usuários podem começar a consumir (por exemplo, ver e/ou escutar) conteúdo antes de a totalidade do conteúdo ser entregue para um dado dispositivo cliente do usuário. Um sistema como este
Petição 870190117673, de 14/11/2019, pág. 15/79
2/52 habilita usuários acessar conteúdo enquanto evita um processo de transferência potencialmente longo antes de começar a consumir seu conteúdo selecionado.
[004] Ao transferir em fluxo contínuo um item de mídia, o usuário não tem que transferir o item de mídia total antes de ser capaz de ver o item de mídia. Em vez disto, o usuário pode começar a consumir o item de mídia quase imediatamente após os dados representando a mídia serem entregues para o dispositivo do usuário. À medida que os dados representando o item de mídia são entregues para o dispositivo do usuário, eles são colocados temporariamente em um armazenamento temporário. O armazenamento temporário permite uma experiência de visão mais uniforme porque se a conexão de rede entre o dispositivo do usuário e o servidor, do qual dados estão sendo transferidos em fluxo contínuo, for interrompida ou tornada lenta temporariamente o consumo do item de mídia pode continuar usando dados no armazenamento temporário. De modo ideal, a taxa na qual dados são entregues para o armazenamento temporário é maior que a taxa na qual dados são lidos no armazenamento temporário para exibição no dispositivo cliente. Entretanto, em alguns casos, os dados são lidos no armazenamento temporário mais rapidamente do que eles são entregues para o armazenamento temporário. No caso em que a utilização de armazenamento temporário (isto é, a quantidade de dados correntemente dentro do armazenamento temporário) cai para zero, então o fluxo de mídia tipicamente é pausado até que dados suficientes possam ser entregues para o armazenamento temporário. Isto pode diminuir a qualidade de experiência para um espectador, uma
Petição 870190117673, de 14/11/2019, pág. 16/79
3/52 vez que esta paralização abrupta de reprodução é percebida pelo espectador como uma tela congelada - algumas vezes sobreposta com um icone de ampulheta ou de roda giratória e uma ausência correspondente de áudio, isto é, silêncio. 0 usuário de uma maneira geral não terá conhecimento da quantidade de dados no armazenamento temporário, e assim o usuário percebe a paralização de reprodução como um evento de tempo aleatório. Quando dados suficientes são recebidos de novo no armazenamento temporário, reprodução do item de midia pode reiniciar repentinamente. A reprodução descontínua resultante do item de midia não é agradável para o usuário.
DESCRIÇÃO RESUMIDA DOS DESENHOS
[005] A figura 1 é um diagrama mostrando um sistema de computação servidor ilustrativo e um sistema de computação cliente que podem ser usados para executar disposição ideal de um evento de rearmazenamento temporário, de acordo com algumas modalidades da presente revelação.
[006] A figura 2 é um diagrama mostrando pontos de rearmazenamento temporário especificados dentro de um item de video, de acordo com algumas modalidades da presente revelação.
[007] As figuras 3A, 3B, 3C e 3D são diagramas mostrando uso dos pontos de rearmazenamento temporário especificados para eventos de rearmazenamento temporário especificados, de acordo com algumas modalidades da presente revelação.
[008] As figuras 4A e 4B são tabelas mostrando vários metadados que podem ser atribuídos a partes de um item de video para ajudar a identificar pontos de rearmazenamento
Petição 870190117673, de 14/11/2019, pág. 17/79
4/52 temporário especificados, de acordo com algumas modalidades da presente revelação.
[009] A figura 5 é um diagrama mostrando detecção de características indicando uma tomada ampliada em uma parte de um item de video, de acordo com algumas modalidades da presente revelação.
[010] A figura 6 é um diagrama mostrando detecção de características indicando uma tomada de estabelecimento em uma parte de um item de vídeo, de acordo com algumas modalidades da presente revelação.
[Oil] A figura 7 é um diagrama mostrando detecção de características indicando uma tomada de redução em uma parte de um item de vídeo, de acordo com algumas modalidades da presente revelação.
[012] A figura 8 é um fluxograma mostrando um método ilustrativo para pausar um item de vídeo em um ponto de rearmazenamento temporário especificado, de acordo com algumas modalidades da presente revelação.
[013] Estes desenhos serão mais bem entendidos pelas pessoas de conhecimento comum na técnica por meio de referência à descrição detalhada a seguir.
DESCRIÇÃO DETALHADA
[014] Com referência para os desenhos descritos anteriormente de forma resumida, aplicações exemplares de sistemas e métodos de acordo com a presente revelação são descritos nesta seção. Estes exemplos são fornecidos para adicionar contexto e ajudar no entendimento da invenção. Assim, estará aparente para os versados na técnica que a presente invenção pode ser praticada sem alguns ou todos estes detalhes específicos. Em outras instâncias, etapas ou
Petição 870190117673, de 14/11/2019, pág. 18/79
5/52 operações de processo bem conhecidas não são descritas detalhadamente a fim de evitar obscurecer desnecessariamente a presente revelação. Adicionalmente, outras aplicações dos conceitos e princípios descritos neste documento são possíveis, de maneira que os exemplos seguintes não devem ser considerados como limitantes. Os princípios e conceitos descritos neste documento podem ser aplicados para selecionar um momento otimizado para um evento de rearmazenamento temporário que pode diminuir pelo menos alguns dos aspectos negativos de rearmazenamento temporário para espectadores de itens de mídia transferidos em fluxo contínuo.
[015] Na descrição detalhada a seguir, referências são feitas para os desenhos anexos, os quais formam uma parte da descrição e nos quais estão mostradas, a título de ilustração, modalidades específicas da presente revelação. Embora estas modalidades sejam descritas com detalhes suficientes para habilitar os versados na técnica para praticar a invenção, é entendido que estes exemplos não são limitantes, de maneira que outras modalidades podem ser usadas, e mudanças podem ser feitas sem divergir do espírito e escopo da invenção.
[016] Tal como descrito anteriormente, em implementações de fluxo contínuo convencionais, se dados não forem entregues para o dispositivo cliente rápido o suficiente, o vídeo deve ser pausado para esperar por mais dados. Após uma quantidade suficiente de dados ter sido recebida, o vídeo pode reiniciar. Vários fatores tais como condições de rede podem afetar a capacidade do dispositivo cliente para receber dados de forma rápida o suficiente.
Petição 870190117673, de 14/11/2019, pág. 19/79
6/52
Como frequentemente existe pouco, ou nenhum, controle sobre condições de rede, tais pausas podem aparecer como aleatórias para o usuário, frequentemente interrompendo elementos de história importantes. Estas interrupções tipicamente são percebidas como uma tela congelada sem áudio. Ao usuário também pode ser apresentada uma indicação de atraso, tal como uma mensagem Armazenando Temporariamente, uma roda girando ou um icone de ampulheta. Estas pausas, as quais permitem que o armazenamento temporário seja enchido completamente com dados adicionais, serão referidas como eventos de rearmazenamento temporário.
[017] Eventos de rearmazenamento temporário frustram um espectador porque eles interrompem a experiência de visão. Rearmazenamento temporário pode ser ainda mais indesejável quando o video é pausado no meio de uma cena importante ou diálogo importante. Portanto, a presente revelação diz respeito a métodos e sistemas que otimizam a disposição de pausas para eventos de rearmazenamento temporário necessários a fim de evitar uma pausa no fluxo de video em um momento indesejável. Em outras palavras, se eventos de rearmazenamento temporário devem ocorrer, então os pontos de rearmazenamento temporário podem ser estabelecidos para ocorrer em momentos que são menos inconvenientes para o usuário em vez de aleatoriamente.
[018] Em um exemplo, as localizações para pontos de rearmazenamento temporário podem ser identificadas dentro de uma parte particular de conteúdo tal como um item de video. Estas localizações identificadas serão referidas como pontos de rearmazenamento temporário especificados. Os
Petição 870190117673, de 14/11/2019, pág. 20/79
7/52 pontos de rearmazenamento temporário especificados podem corresponder a momentos ou periodos dentro do item de video que são menos inconvenientes para rearmazenamento temporário. Por exemplo, os pontos de rearmazenamento temporário especificados podem corresponder a mudanças de cenas, mudanças de tomadas ou pausas em diálogo. Em um exemplo, se utilização de armazenamento temporário ficar muito baixa, então o item de video pode ser pausado em um dos pontos de rearmazenamento temporário especificados, mesmo se a utilização de armazenamento temporário ainda não estiver abaixo do ponto no qual de outro modo um evento de rearmazenamento temporário seria ativado. Em outras palavras, o fluxo de video pode ser pausado para rearmazenamento temporário antes de uma pausa como esta para rearmazenamento temporário que ocorreria em uma implementação convencional de fluxo continuo de video onde rearmazenamento temporário ocorre mediante exaustão de armazenamento temporário. Adicionalmente, em alguns exemplos, se a conexão de rede de um servidor de fluxo continuo para um sistema cliente for de tal maneira que a taxa na qual dados são entregues para o armazenamento temporário é menor que a taxa na qual dados são consumidos, então o item de video pode ser pausado por pouco tempo em certos pontos de rearmazenamento temporário especificados em vez de em pontos aparentemente aleatórios dentro do video por causa de exaustão de dados dentro do armazenamento temporário.
[019] A figura 1 é um diagrama mostrando um sistema de computação servidor ilustrativo 102 e um sistema de computação cliente 120 que podem ser usados para executar
Petição 870190117673, de 14/11/2019, pág. 21/79
8/52 disposição ideal de um evento de rearmazenamento temporário. 0 sistema de computação servidor 102 pode ser um dos muitos servidores que são possuídos, operados ou gerenciados de outro modo por um serviço de mídia de fluxo contínuo. O sistema de computação servidor 102 inclui um processador 108, uma memória 104, um módulo de identificação de ponto de rearmazenamento temporário 110 e uma interface de rede 112. O sistema de computação servidor 102 pode incluir adicionalmente, por exemplo, servidores autônomos e de classe empresarial operando um sistema operacional (OS) de servidor tal como um MICROSOFT® OS, um UNIX® OS, um LINUX® OS ou um outro sistema operacional baseado em servidor 102 adequado. O sistema de computação servidor 102 pode ser um servidor em uma rede de distribuição de conteúdo. Deve ser percebido que o sistema de computação servidor 102 ilustrado na figura 1 pode ser implementado de outros modos e que as operações executadas e/ou os serviços fornecidos por tais servidores podem ser combinados ou separados para uma dada implementação e podem ser realizados por um número maior ou número menor de dispositivos servidores individuais.
[020] O processador 108 pode incluir um ou mais processadores individuais ou núcleos de processamento. De modo similar, a memória 104 pode incluir um ou mais dispositivos de memória de tipos diferentes. A memória 104 pode armazenar instruções legíveis por máquina para execução no processador 108. Tais instruções podem ser associadas com várias aplicações assim como um sistema operacional. Adicionalmente, a memória 104 pode armazenar os itens de vídeo 106 para transferir em fluxo contínuo.
Petição 870190117673, de 14/11/2019, pág. 22/79
9/52
Tais itens de video 106 podem incluir, por exemplo, filmes completos, episódios de uma série, ou partes de um filme ou episódio. Outros tipos de itens de video também são contemplados. Os itens de video 106 podem ser codificados em um formato legivel por máquina que seja apropriado para armazenamento e/ou fluxo continuo. Mais especificamente, os itens de video 106 podem incluir um conjunto de dados que especifica uma série de quadros, cada quadro incluindo uma imagem ou informação que pode ser processada para obter uma imagem. Quando os quadros são exibidos em sequência, eles produzem um video. Os itens de video 106 podem ser codificados usando várias tecnologias que compactam os dados. Os dados que compreendem os itens de video 106 podem incluir também dados de áudio correspondendo aos dados de video. Em outras palavras, os dados de áudio são alinhados temporalmente com os dados de video.
[021] Tal como notado, a memória 104 pode incluir uma pluralidade de módulos de memória. Os módulos de memória podem ser de tipos variáveis. Parte da memória 104 pode ser memória volátil tal como Memória de Acesso Aleatório (RAM). Parte da memória 104 pode ser memória não volátil tal como unidades de discos rigidos ou Unidades de Estado Sólido (SSDs). Além de armazenar instruções legiveis por máquina que formam aplicações, a memória 104 pode armazenar os itens de video 106 para análise e para transferência em fluxo continuo. A memória 104 também pode armazenar os resultados de tal análise, tais como as localizações ou tempos dentro dos itens de video 106 correspondendo a pontos de rearmazenamento temporário especificados.
[022] O sistema de computação servidor 102 inclui uma
Petição 870190117673, de 14/11/2019, pág. 23/79
10/52 interface de rede 112 que permite ao sistema de computação servidor 102 se comunicar com outros sistemas de computação por meio de uma rede 114 tal como a Internet. A interface de rede 112 inclui o hardware, software ou combinação de ambos para codificar dados para transmissão pela rede 114. A interface de rede 112 pode utilizar uma variedade de tecnologias de comunicação tais como Ethernet, fibra ótica e tecnologias de comunicação sem fio.
[023] Em alguns exemplos, um sistema de computação servidor 102 que armazena os itens de vídeo 106 pode realizar a análise dos itens de vídeo 106 para identificar pontos de rearmazenamento temporário. Em tais exemplos, o sistema de computação servidor 102 pode incluir um módulo de identificação de ponto de rearmazenamento temporário 110. O módulo de identificação de ponto de rearmazenamento temporário 110 inclui o hardware, software ou combinação de ambos que analisa os dados representando os itens de vídeo 106 e identifica a disposição de pontos de rearmazenamento temporário. Os pontos de rearmazenamento temporário identificados podem ser representados em uma variedade de modos. Em um exemplo, os pontos de rearmazenamento temporário identificados podem ser representados como pontos no tempo (por exemplo, uma etiqueta de tempo incluindo minutos, segundos e frações de um segundo) dentro dos itens de vídeo 106. Em alguns exemplos, os quadros correspondendo aos pontos de rearmazenamento temporário podem ser etiquetados com metadados que indicam que tais quadros correspondem a pontos de rearmazenamento temporário. A disposição dos pontos de rearmazenamento temporário identificados pode ser transmitida para o
Petição 870190117673, de 14/11/2019, pág. 24/79
11/52 sistema de computação cliente 120 no inicio do fluxo continuo, tal como em um arquivo de manifesto ou em um arquivo de metadados apontado para o arquivo de manifesto, ou durante o processo de fluxo continuo. O arquivo de manifesto também pode apontar para a localização de um ou mais fluxos disponíveis para um usuário para o mesmo conteúdo audiovisual, os fluxos tendo taxas de bits e/ou qualidades diferentes. Um sistema de computação cliente 120 com uma conexão de qualidade alta pela rede 114 para o sistema de computação servidor 102 pode selecionar um fluxo de qualidade alta dentre uma pluralidade de fluxos identificados no arquivo de manifesto. Um sistema de computação cliente 120 com uma conexão de qualidade baixa (por exemplo, largura de banda baixa) pode selecionar um fluxo de qualidade baixa. No caso em que a qualidade da conexão pela rede 114 muda, o sistema de computação cliente 120 pode começar a acessar um fluxo diferente tal como apropriado para prover o usuário com uma experiência ideal. A disposição de pontos de rearmazenamento temporário pode ser indicada em dados contidos nos fluxos, tais como em quadros individuais, ou em um arquivo separado. Por exemplo, pontos de rearmazenamento temporário podem ser incluídos em mensagens de Informação Suplementar de Aprimoramento (SEI) tais como são incluídas por meio de codecs H.264 ou de outros métodos comparáveis de transmitir informação suplementar, tal como legenda ou texto descritivo, em um fluxo de dados.
[024] Em alguns exemplos, o módulo de identificação de ponto de rearmazenamento temporário 110 identifica pontos de rearmazenamento temporário dentro de um item de video
Petição 870190117673, de 14/11/2019, pág. 25/79
12/52
106 antes de esse item de video 106 ser transferido em fluxo continuo. Por exemplo, se o item de vídeo 106 estiver sendo somente armazenado e não sendo transferido em fluxo contínuo correntemente, então o módulo de identificação de ponto de rearmazenamento temporário 110 pode usar esse tempo para executar uma análise do item de vídeo 10 6 para determinar os pontos de rearmazenamento temporário. Em algumas modalidades, a análise pode ser realizada quando o item de vídeo 106 está sendo codificado a partir de um formato otimizado para armazenamento de alta fidelidade para um formato compactado adequado para transferir vídeo em fluxo contínuo. Em alguns exemplos, os pontos de rearmazenamento temporário podem ser identificados antes de o item de vídeo 106 ser transferido para o sistema de computação servidor 102. Em alguns exemplos, os pontos de rearmazenamento temporário podem ser identificados por um servidor separado (não mostrado) posicionado dentro da rede 114 entre o sistema de computação servidor 102 que armazena o item de vídeo 106 e o sistema de computação cliente 120 que consome o item de vídeo 106.
[025] O processo de fluxo contínuo envolve transferir dados representando um item de vídeo selecionado dos itens de vídeo 106 do sistema de computação servidor 102 para um sistema de computação cliente 120 por meio de uma rede 114 tal como a Internet. No presente exemplo, o sistema de computação cliente 120 inclui um processador 128, uma memória 122, uma interface de rede 12 6, um módulo de identificação de ponto de rearmazenamento temporário 130 e um sistema de exibição 132. Em alguns exemplos, o sistema de computação cliente 120 pode ser, por exemplo, um
Petição 870190117673, de 14/11/2019, pág. 26/79
13/52 computador de mesa, laptop, console de vídeo ou dispositivo de computação tipo tablet.
[026] Tal como a memória 104 do servidor 102, a memória 122 do sistema de computação cliente 120 pode incluir um ou mais dispositivos de memória de tipos diferentes. A memória 104 pode armazenar instruções legiveis por máquina para execução no processador 128. Tais instruções podem ser associadas com várias aplicações assim como um sistema operacional. Adicionalmente, a memória 122 pode incluir um armazenamento temporário 124. O armazenamento temporário 124 é uma parte de memória usada para armazenar temporariamente dados que são recebidos através da rede 114 antes de os dados serem processados para exibição para um usuário 116 por meio do sistema de exibição 132. A taxa na qual dados são consumidos pode depender da resolução e/ou taxa de bits do fluxo corrente. Por exemplo, se a resolução ou taxa de bits do fluxo for relativamente alta, então mais dados são usados para produzir o video. Assim, mais dados são consumidos dentro de um periodo de tempo particular a fim de apresentar o item de video para o usuário 116. De modo oposto, se a resolução ou taxa de bits do fluxo for relativamente baixa, então menos dados são usados para produzir o video. Assim, menos dados são consumidos dentro de um periodo de tempo particular a fim de apresentar o video para o usuário 116. Portanto, o tamanho do armazenamento temporário 124 pode ser estabelecido ou adaptado com base na taxa de bits do fluxo de item de video selecionado.
[027] Em alguns exemplos, o sistema de computação cliente 120 pode ser responsável pela identificação de
Petição 870190117673, de 14/11/2019, pág. 27/79
14/52 pontos de rearmazenamento temporário dentro de um item de vídeo 10 6. Em tais casos, o sistema de computação cliente 120 inclui um módulo de identificação de ponto de rearmazenamento temporário 130. Em alguns exemplos, o módulo de identificação de ponto de rearmazenamento temporário 130 pode ser configurado para analisar o conteúdo 106 à medida que ele é recebido a fim de identificar pontos de rearmazenamento temporário. Em outras palavras, pontos de rearmazenamento temporário são identificados in situ no sistema de computação cliente 120. Isto pode eliminar a necessidade de análise e geração de metadados associados com identificação de pontos de rearmazenamento temporário pelo sistema de computação servidor 102.
[028] Tal como a interface de rede 112 do sistema servidor 102, a interface de rede 126 do sistema de computação cliente 120 inclui o hardware, software ou combinação de ambos para codificar e decodificar dados para comunicações pela rede 114. Estes dados são recebidos do sistema servidor 102 através da rede 114 por meio da interface de rede 12 6, e os dados são colocados dentro do armazenamento temporário 124.
[029] O sistema de exibição 132 inclui os componentes usados para apresentar itens de vídeo para o usuário 116. Por exemplo, o sistema de exibição 132 pode incluir hardware e software de processamento de vídeo e áudio. O sistema de exibição 132 pode incluir também um dispositivo de saída de vídeo tal como um monitor ou tela. O sistema de exibição 132 pode incluir também dispositivos de saída de áudio tais como alto-falantes ou fones de ouvido ou
Petição 870190117673, de 14/11/2019, pág. 28/79
15/52 conexões configuradas para se comunicar com dispositivos de saida de áudio.
[030] A figura 2 é um diagrama mostrando os pontos de rearmazenamento temporário especificados 202, 204, 206, 208. De acordo com o presente exemplo, um item de vídeo 200 inclui os pontos de rearmazenamento temporário 202 correspondendo a mudanças de cenas, os pontos de rearmazenamento temporário 204 correspondendo a mudanças de tomadas, os pontos de rearmazenamento temporário 206 correspondendo a pausas de diálogos, e os pontos de rearmazenamento temporário 208 correspondendo a imagens tendo certas particularidades visuais, tais como brilho baixo. Outros critérios podem ser usados para predeterminar localizações adequadas para eventos de rearmazenamento temporário.
[031] Em alguns exemplos, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode analisar os dados representando o item de vídeo 200 e identificar cada mudança de cena. Uma cena de uma maneira geral se refere a uma seção de um filme envolvendo uma ação particular em uma única localização e durante um período de tempo contínuo. O módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode detectar mudanças de cenas através de uma variedade de meios diferentes. Em um exemplo, os dados representando as cores na imagem podem ser analisados para determinar que uma aparência geral de cor muda de um quadro para o seguinte. Por exemplo, uma cena de recinto aberto pode ter uma variedade de cores na imagem enquanto que uma mudança de cena para uma cena de recinto de fechado pode ter uma variedade diferente de
Petição 870190117673, de 14/11/2019, pág. 29/79
16/52 cores. Adicionalmente, os dados representando a parte de áudio podem ser analisados para determinar que o áudio ambiente do vídeo mudou, sugerindo assim uma mudança de cena. Por exemplo, uma cena na qual um personagem está dirigindo um carro pode incluir os sons do carro e de tráfego. A cena pode então mudar para uma cena em um ambiente sossegado em que personagens estão conversando uns com os outros. Tal mudança em áudio ambiente pode ajudar a identificar uma mudança de cena. Como as mudanças de cenas tipicamente apresentam um deslocamento natural na história, elas podem ser menos inconvenientes para um evento de rearmazenamento temporário. Assim, os quadros correspondendo a mudanças de cenas podem ser identificados como os pontos de rearmazenamento temporário 202.
[032] Em alguns exemplos, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode analisar os dados representando o item de vídeo 200 e identificar cada mudança de tomada tal como descrito adicionalmente neste documento. Uma tomada de uma maneira geral pode representar uma parte do vídeo que inclui um giro de câmera contínuo. Uma tomada de uma maneira geral também pode representar filmagem contínua entre duas edições ou cortes. O módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode detectar tomadas em uma variedade de modos. Em um exemplo, as características dentro de cada quadro são analisadas. Tais características podem incluir a coloração do quadro ou o brilho do quadro. Adicionalmente, algoritmos de processamento de imagens podem identificar características tais como formas, bordas e cantos para serem capazes de rastrear estas características através de
Petição 870190117673, de 14/11/2019, pág. 30/79
17/52 múltiplos quadros. Se um quadro particular for substancialmente diferente do quadro anterior, então pode ser determinado que ocorreu um corte. Em outras palavras, a tomada anterior foi finalizada e uma nova tomada foi iniciada. Algumas vezes, mudanças de tomadas ocorrem no meio de diálogo ou no meio de uma outra fonte sonora continua, tal como um jato passando. Em alguns casos, mudanças de tomadas não ocorrem no meio do diálogo. Assim, uma distinção pode ser feita entre mudanças de tomadas que ocorrem durante diálogo ou durante uma fonte sonora contínua e mudanças de tomadas que ocorrem entre diálogos ou sem fontes sonoras contínuas. Um evento de rearmazenamento temporário em uma mudança de tomada que ocorre entre diálogos ou fontes sonoras contínuas pode ser percebido pelo usuário 116 como menos inconveniente. Portanto, os quadros correspondendo a tais mudanças de tomadas podem ser identificados como os pontos de rearmazenamento temporário 204.
[033] Em alguns exemplos, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode analisar os dados de áudio dentro do item de vídeo 200 e identificar pausas em diálogo. Diálogo pode ser detectado por meio da detecção de transientes de áudio na faixa de frequência apropriada ou com um detector de atividade de voz. Várias funções e extração de características de áudio podem ser usadas para analisar os dados e determinar quando personagens estão falando e quando eles não estão. Em alguns exemplos, se a duração de uma pausa no meio de um diálogo estiver acima de um limiar predefinido, então algum ponto de tempo dentro dessa pausa pode ser identificado
Petição 870190117673, de 14/11/2019, pág. 31/79
18/52 como um ponto de rearmazenamento temporário 206.
[034] Em alguns exemplos, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode analisar os dados representando o item de video 200 com relação a pontos nos quais as propriedades visuais têm particularidades especificadas tais como brilho baixo ou brilho baixo relativo. Por exemplo, uma parte visualmente mais escura do item de video pode ser definida como qualquer ponto dentro do item de video 200 no qual o brilho total da imagem está abaixo de um valor limiar absoluto ou que o brilho da imagem está abaixo de um valor limiar com base na imagem ou quadro precedente. Durante tais partes, podem existir menos atributos característicos dentro do video que são de interesse particular para um espectador. Assim, tais partes visualmente mais escuras podem ser menos inconvenientes para um evento de rearmazenamento temporário. Portanto, tais partes podem ser identificadas como pontos de rearmazenamento temporário 208.
[035] Em alguns exemplos, em vez de um único ponto no tempo, uma única etiqueta de tempo ou um único quadro dentro do item de video 200 ser identificado como um ponto de rearmazenamento temporário, uma faixa de tempo de rearmazenamento temporário 210 pode ser identificada. Por exemplo, pode ser determinado que uma faixa de tempo particular 210 corresponde a um marcador auditivo tal como uma pausa em diálogo, uma mudança de ambiente, silêncio, ou qualquer outro som que facilite laço, alongamento de tempo ou sintese de um som similar. Em alguns exemplos, a faixa de tempo 210 pode corresponder a um marcador visual tal como uma parte visualmente mais escura do item de video
Petição 870190117673, de 14/11/2019, pág. 32/79
19/52
200. Em tais casos, qualquer período de tempo dentro dessa faixa de tempo 210 pode ser considerado menos inconveniente para um evento de rearmazenamento temporário.
[036] Em alguns exemplos, certos tipos de pontos de rearmazenamento temporário podem ser preferidos em relação a outros. Por exemplo, se possível, pode ser mais preferível pausar para um evento de rearmazenamento temporário durante uma mudança de cena do que durante uma mudança de tomada. De modo similar, pode ser mais preferível pausar para um evento de rearmazenamento temporário durante uma mudança de cena do que durante uma pausa em diálogo. Assim, os pontos de rearmazenamento temporário podem ser atribuídos com um valor de classificação. A lógica que determina quando o ponto de rearmazenamento temporário deve ser usado para um evento de rearmazenamento temporário pode levar em conta o valor de classificação do ponto de rearmazenamento temporário imediato. Por exemplo, se a necessidade de um evento de rearmazenamento temporário for mais imediata, então pontos de rearmazenamento temporário classificados mais baixos tais como aqueles correspondendo a partes visualmente mais escuras ou pausas em diálogo podem ser usados para eventos de rearmazenamento temporário. Se, entretanto, a necessidade de um evento de rearmazenamento temporário for menos imediata, então somente pontos de rearmazenamento temporário classificados mais altos, tais como uma mudança de cena, podem ser usados para um evento de rearmazenamento temporário. Em algumas modalidades, um evento de rearmazenamento temporário pode ocorrer por padrão em certos pontos de rearmazenamento temporário, tal como em
Petição 870190117673, de 14/11/2019, pág. 33/79
20/52 uma mudança de cena escura, isto é, onde uma cena fica preta ou descolore para preto, acompanhada por silêncio em dados de áudio. O rearmazenamento temporário pode ser realizado a não ser que a quantidade de dados no armazenamento temporário exceda um certo limiar, tal como dez segundos, trinta segundos ou um minuto. Em tais instâncias, o rearmazenamento temporário pode ser realizado para uma pequena quantidade de tempo. Por exemplo, o rearmazenamento temporário pode ser realizado para menos que um segundo ou menos que meio segundo. Incluir tais pausas quando é improvável que o usuário 116 perceba a pausa pode habilitar o armazenamento temporário para ser expandido em antecipação a quaisquer quedas em conectividade de rede, tal como ao comutar entre torres de células.
[037] Uso dos pontos de rearmazenamento temporário pode variar dependendo de uma variedade de condições associadas com o sistema de computação cliente 120 recebendo o fluxo de video. Por exemplo, várias condições de rede podem afetar uso dos pontos de rearmazenamento temporário. Se a conexão de rede entre o provedor de serviço de fluxo continuo e o sistema de computação cliente 120 for mais lenta que a taxa ideal para transferir em fluxo continuo em uma resolução particular, então o sistema de computação cliente 120 pode ser configurado para pausar em pontos de rearmazenamento temporário particulares a fim de manter a utilização de armazenamento temporário acima do limiar desejado. Por exemplo, o sistema de computação cliente 120 pode pausar por alguns segundos ou por menos que um segundo em cada mudança de cena a fim de assegurar que a utilização
Petição 870190117673, de 14/11/2019, pág. 34/79
21/52 de armazenamento temporário não cai abaixo do limiar desejado. Em alguns exemplos, se a taxa na qual conteúdo pode ser entregue pela rede para o sistema de computação cliente 120 for mais baixa, então o sistema de computação cliente pode pausar em pontos de rearmazenamento temporário classificados mais baixos tais como pausas em diálogo igualmente.
[038] Em alguns exemplos, a duração de cada pausa pode depender da taxa corrente na qual dados para o item de video 200 estão sendo entregues para o sistema de computação cliente 120. De uma maneira geral, uma taxa mais baixa pode ser manuseada ao pausar por períodos de tempo mais longos nos pontos de rearmazenamento temporário. De modo oposto, uma taxa mais alta pode ser manuseada ao pausar para períodos de tempo menores nos pontos de rearmazenamento temporário. A duração de tais pausas pode ser ajustada dinamicamente à medida que condições de rede mudam durante o processo de fluxo contínuo. Por exemplo, se condições de rede melhorarem, a duração de tais pausas pode ser encurtada. Em alguns exemplos, se condições de rede melhorarem substancialmente, pode ser determinado que pausas não são necessárias para manter utilização de armazenamento temporário acima do limiar desejado. De modo oposto, se condições de rede degradarem, então pausas maiores podem ser aplicadas nos pontos de rearmazenamento temporário. Portanto, uma taxa corrente de rearmazenamento temporário pode ser utilizada na determinação dos comprimentos de tempo usados para rearmazenamento temporário, assim como os tipos de pontos de rearmazenamento temporário que são usados para
Petição 870190117673, de 14/11/2019, pág. 35/79
22/52 rearmazenamento temporário.
[039] A duração das pausas para eventos de rearmazenamento temporário também pode variar dependendo da classificação ou tipo de um ponto de rearmazenamento temporário particular. Por exemplo, um ponto de rearmazenamento temporário classificado mais alto tal como um correspondendo com uma mudança de cena pode ter pausas maiores já que tais pontos são menos intrusivos para a experiência de visão. De modo oposto, pontos de rearmazenamento temporário classificados mais baixos tais como intervalos em diálogo podem ter pausas menores já que tais pontos podem ser ligeiramente mais intrusivos para a experiência de visão. Por exemplo, considerando as condições particulares, uma pausa de um segundo pode ser usada durante uma mudança de cena enquanto que uma pausa de menos que 500 milissegundos pode ser usada durante um intervalo em diálogo.
[040] As figuras 3A-D são diagramas mostrando uso dos pontos de rearmazenamento temporário especificados 306 para eventos de rearmazenamento temporário, de acordo com algumas modalidades da presente revelação. Em alguns exemplos, pausar para eventos de rearmazenamento temporário pode ser ativada quando a utilização de armazenamento temporário 310 cai abaixo de um limiar predefinido 308. A utilização de armazenamento temporário 310 pode ser definida em uma variedade de modos. Em um exemplo, a utilização de armazenamento temporário 310 pode ser definida pela quantidade de dados correntemente dentro do armazenamento temporário não consumida. Em alguns exemplos, a utilização de armazenamento temporário 310 pode ser
Petição 870190117673, de 14/11/2019, pág. 36/79
23/52 definida pela quantidade de tempo de reprodução para o item de video dentro do armazenamento temporário. Por exemplo, pode existir o caso em que o armazenamento temporário tem dados suficientes para um minuto e 32 segundos de tempo de reprodução.
[041] As figuras 3A-D ilustram uma linha de tempo para um item de video 200. A linha 302 representa o ponto no tempo dentro do item de video 200 que está sendo exibido correntemente para visualização. A linha 304 representa o ponto no tempo dentro do item de video 200 no qual o armazenamento temporário será consumido assumindo que novos dados não serão recebidos. Em outras palavras, se mais dados não forem entregues para o armazenamento temporário, o item de video pode continuar reproduzindo até o ponto representado pela linha 304. Assim, a faixa no tempo entre a linha 302 e a linha 304 representa a utilização de armazenamento temporário 310.
[042] A figura 3A mostra que a utilização de armazenamento temporário 310 corrente está acima de um limiar predefinido. Assim, apresentação do item de video operará como normal. Na figura 3B, à medida que o item de video é reproduzido, a utilização de armazenamento temporário 310 cai abaixo do limiar predefinido 308. Isto pode acontecer porque a taxa na qual dados são entregues para o armazenamento temporário é menor que a taxa na qual os dados são processados para apresentação no sistema de exibição 132. Portanto, pode ser determinado que a utilização de armazenamento temporário 310 está projetada para cair para um ponto no qual um evento de rearmazenamento temporário é necessário. Sistemas de fluxos
Petição 870190117673, de 14/11/2019, pág. 37/79
24/52 contínuos convencionais podem simplesmente pausar em qualquer ponto em que é determinado que evento de rearmazenamento temporário é necessário ou no ponto em que todos os dados no armazenamento temporário tenham sido processados. Entretanto, de acordo com princípios revelados neste documento, um ponto de rearmazenamento temporário predeterminado ou pré-identifiçado pode ser usado como o ponto no qual o evento de rearmazenamento temporário ocorre. Como o ponto de rearmazenamento temporário corresponde a um ponto no item de vídeo 200 que é menos intrusivo, o usuário 116 pode ter melhor experiência.
[043] A figura 3C mostra que a linha 302 alcançou o ponto de rearmazenamento temporário 306. Neste ponto de rearmazenamento temporário, o item de vídeo 200 pode ser pausado para permitir rearmazenamento temporário. A apresentação do item de vídeo 200 no sistema de exibição 132 pode ser parada temporariamente. A figura 3D ilustra um ponto no tempo após o item de vídeo 200 ter sido pausado e antes de reiniciar. Tal como ilustrado, o tempo adicional fornecido pela pausa permite que mais dados sejam adicionados ao armazenamento temporário, expandindo assim a utilização de armazenamento temporário 310 para um ponto bem acima do limiar predefinido 308. Em alguns exemplos, a pausa para rearmazenamento temporário no ponto de rearmazenamento temporário 306 pode ser por um período de tempo exigido para permitir que a utilização de armazenamento temporário alcance um tamanho predeterminado antes de reiniciar. Em algumas modalidades, a duração da pausa para rearmazenamento temporário pode ser determinada por meio de pontos de rearmazenamento temporário
Petição 870190117673, de 14/11/2019, pág. 38/79
25/52 subsequentes. Por exemplo, o item de vídeo 200 pode ser pausado para rearmazenamento temporário até que um outro ponto de rearmazenamento temporário ou um outro ponto de rearmazenamento temporário de um certo tipo esteja presente nos dados armazenados temporariamente. Ou uma certa quantidade de tempo ou de dados pode ser adicionada após o rearmazenamento temporário subsequente como um enchimento de rearmazenamento temporário. Por exemplo, uma pausa para rearmazenamento temporário pode continuar até que os dados associados com o segundo ponto de rearmazenamento temporário 306 representado tenham sido adicionados ao armazenamento temporário ou até que uma quantidade limiar de dados adicionais após os dados associados com o segundo ponto de rearmazenamento temporário representado 306 tenham sido adicionados.
[044] Em alguns exemplos, o sistema cliente que está exibindo o vídeo pode avaliar a utilização corrente do armazenamento temporário em cada ponto de rearmazenamento temporário especificado. Se, em um ponto de rearmazenamento temporário particular especificado, a utilização de armazenamento temporário estiver abaixo de um limiar particular, então o item de vídeo pode ser pausado nesse ponto de rearmazenamento temporário particular especificado. Adicionalmente, a utilização corrente do armazenamento temporário pode ajudar a determinar quanto tempo o item de vídeo deve ser pausado nesse ponto de rearmazenamento temporário particular. Por exemplo, se a utilização de armazenamento temporário corrente estiver próxima ao limiar, então a pausa pode ser relativamente curta. Entretanto, se a utilização de armazenamento
Petição 870190117673, de 14/11/2019, pág. 39/79
26/52 temporário corrente estiver muito abaixo do limiar, então a pausa pode ser relativamente longa. No caso em que a utilização de armazenamento temporário está acima do limiar, pode então não existir necessidade para pausar o item de vídeo nesse ponto de rearmazenamento temporário.
[045] As figuras 4A e 4B são tabelas mostrando metadados que podem ser atribuídos a tomadas e quadros dentro de uma parte de conteúdo para ajudar a identificar pontos de rearmazenamento temporário. Em alguns exemplos, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode incluir o hardware, software ou combinação de ambos para analisar os dados de um item de vídeo 200 e identificar tomadas e quadros diferentes dentro do item de vídeo 200. Por exemplo, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode indicar o ponto de início e ponto de término para cada tomada diferente dentro do item de vídeo 200 ou para cada tomada diferente dentro de uma parte armazenada correntemente de forma temporária do item de vídeo 200, dependendo da implementação. O módulo de identificação de ponto de rearmazenamento temporário 110, 130 também pode identificar uma seleção de quadros dentro do item de vídeo 200. O módulo de identificação de ponto de rearmazenamento temporário 110, 130 também pode analisar as imagens associadas com cada um dos quadros para detectar várias características dentro dos quadros. Tais características podem incluir, por exemplo, as faces de personagens aparecendo na tomada ou quadro. Com base em tais características, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode designar metadados
Petição 870190117673, de 14/11/2019, pág. 40/79
27/52 para as várias imagens e tomadas detectadas dentro do item de video 200. Tais metadados podem então ser usados para designar pontos de rearmazenamento temporário dentro do item de video 200 assim como valores de classificações para esses pontos de rearmazenamento temporário. Por exemplo, uma pausa para rearmazenamento temporário pode ser preferível durante um tempo em que um primeiro ator é exibido em vez de um segundo ator.
[046] Um quadro corresponde a uma imagem estática que quando combinado com outros quadros em sequência produz uma imagem em movimento. Os dados que formam o item de video 200 podem descrever cada quadro dentro do item de video 200. O módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode analisar uma pluralidade de quadros dentro do item de video 200 e designar metadados para cada um desses quadros com base em características detectadas dentro de desses quadros. Uma série de quadros pode formar uma tomada. Uma tomada de uma maneira geral pode representar uma parte do video que inclui um giro de câmera continuo. Uma tomada de uma maneira geral também pode representar filmagem continua entre duas edições ou cortes. O módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode detectar tomadas em uma variedade de modos. Em um exemplo, as características dentro de cada quadro são analisadas usando algoritmos de processamento de imagens. Tais características podem incluir a coloração do quadro, o brilho do quadro, ou características identificáveis por máquina tais como formas e bordas. Se um quadro particular for substancialmente diferente do quadro anterior, então
Petição 870190117673, de 14/11/2019, pág. 41/79
28/52 pode ser determinado que um corte ocorreu. Em outras palavras, a tomada anterior terminou e uma nova tomada foi iniciada. Após várias tomadas terem sido identificadas, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode identificar diferenças entre as características de quadros diferentes dentro das tomadas. Estas diferenças podem ser usadas para categorizar a tomada e designar vários metadados para a tomada.
[047] O módulo de identificação de ponto de rearmazenamento temporário 110, 130 também analisa cada tomada a fim de designar metadados, incluindo uma categoria de tomada, para essa tomada. Isto pode ser feito ao analisar os dados legíveis por máquina que representam quadros dentro da tomada. Em um exemplo, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 seleciona pelo menos dois quadros dentro de uma tomada particular. O módulo de identificação de ponto de rearmazenamento temporário 110, 130 analisa as características descobertas dentro desses quadros e identifica as diferenças entre as características desses quadros. Se, por exemplo, as relações espaciais entre várias características de um quadro forem maiores que as relações espaciais entre várias características do outro quadro, pode ser determinado que a tomada é uma tomada de redução. Se, por exemplo, as características de um quadro forem determinadas como sendo aquelas da face de um personagem, e as características do outro quadro também forem determinadas como sendo aquelas da face do personagem, pode ser determinado que a tomada é uma tomada ampliada se a face ocupar mais que uma quantidade limiar do
Petição 870190117673, de 14/11/2019, pág. 42/79
29/52 quadro. Se, por exemplo, for determinado que as características de um quadro deslocaram em relação às características no outro quadro em um modo particular, pode ser determinado que a tomada é uma tomada de estabelecimento. Outros tipos de tomadas são contemplados igualmente. Em alguns exemplos, o tipo de tomada em que um ponto de rearmazenamento temporário existe pode afetar o valor de classificação desse ponto de rearmazenamento temporário. Por exemplo, pode ser menos inconveniente pausar durante uma tomada de estabelecimento do que durante uma tomada ampliada.
[048] O módulo de identificação de ponto de rearmazenamento temporário 110, 130 também pode analisar um número selecionado de quadros dentro do item de video 200. Analisar os quadros dentro do item de vídeo 200 pode envolver examinar os dados legíveis por máquina que representam o item de vídeo 200. Em alguns exemplos, cada único quadro do item de vídeo pode ser analisado. Em alguns exemplos, entretanto, cada número X de quadros pode ser analisado. Em alguns exemplos, X pode estar dentro de uma faixa de cerca de 5 a 60. Outros valores para X também são contemplados. O módulo de identificação de ponto de rearmazenamento temporário 110, 130 também pode designar metadados para cada quadro analisado.
[049] A figura 4A mostra uma tabela ilustrativa 400 que inclui metadados para um quadro particular, também referidos como metadados de quadro. Os metadados podem indicar as propriedades visuais 401 do quadro, as propriedades estruturais 403 do quadro e as propriedades temporais 405 do quadro. As propriedades visuais 401
Petição 870190117673, de 14/11/2019, pág. 43/79
30/52 incluem o brilho 402, a nitidez 404 e o contraste 406. Outras propriedades visuais podem incluir a composição de cor do quadro ou temperatura de cor. As propriedades estruturais 403 incluem as faces de quadro 408 e a saliência de quadro 410. As propriedades temporais 405 incluem o movimento de quadro 412 e a direção de quadro 414 .
[050] O módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode designar um valor de brilho 402 para um quadro com base no valor médio de brilho associado com cada pixel dentro do quadro. Especificamente, o módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode examinar os dados que representam o quadro. Esses dados podem definir valores de cor para cada pixel dentro do quadro. Por exemplo, se os dados para o pixel forem representados no espaço de cores YUV, também conhecido como YCbCr, o valor de Y é representativo da luminância de pixel. Por exemplo, se os dados para o pixel forem representados no espaço de cores RGB, então o brilho para um pixel particular pode ser definido como o valor de cor médio para o pixel (por exemplo, Br = (R+G+B)/3, onde Br é o brilho, R é o valor de cor vermelha, G é o valor de cor verde e B é o valor de cor azul). Outros modos para determinar um valor de brilho são contemplados.
[051] O módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode designar um valor de nitidez 404 e um valor de contraste 406 para o quadro com base em uma análise dos dados que definem o quadro. Por exemplo, o módulo de identificação de ponto de
Petição 870190117673, de 14/11/2019, pág. 44/79
31/52 rearmazenamento temporário 110, 130 pode aplicar uma função para determinar um valor de nitidez e um valor de contraste do quadro. Nitidez, referida algumas vezes como agudeza, é uma medida de quão fortemente o contraste de uma imagem é percebido. Contraste se refere às diferenças de cor dentro da imagem. Vários métodos para determinar um valor de nitidez e um valor de contraste com base nos dados que representam o quadro podem ser usados.
[052] O módulo de identificação de ponto de rearmazenamento temporário 110, 130 também pode identificar as faces 408 que aparecem na tomada. Por exemplo, pode ser determinado com base em uma análise de características dentro do quadro que o quadro inclui uma ou mais faces. Várias funções de reconhecimento facial podem ser aplicadas para identificar a presença das faces e então identificar as faces reais representadas nos dados. Como um exemplo, o algoritmo de Viola-Jones é uma escolha popular para detectar faces. As faces dos vários personagens no quadro também podem estar atribuídas a um valor de popularidade. Este valor de popularidade pode ser derivado em uma variedade de modos. Em um exemplo, o valor de popularidade é baseado em uma porcentagem de tempo em que esse personagem aparece no item de video. Em alguns exemplos, fontes externas podem ser usadas para determinar a popularidade do personagem. Por exemplo, um valor de popularidade pode ser predefinido por um usuário humano. Em alguns exemplos, uma análise de informação disponível publicamente tal como páginas de rede e midias sociais pode ser aplicada a fim de designar um valor de popularidade para um personagem particular. A popularidade dos
Petição 870190117673, de 14/11/2019, pág. 45/79
32/52 personagens em uma tomada ou cena particular também pode afetar o valor de classificação de pontos de rearmazenamento temporário dentro dessa tomada ou cena. Por exemplo, pausar para rearmazenamento temporário enquanto mostra um personagem ou ator mais popular pode ser preferível.
[053] O módulo de identificação de ponto de rearmazenamento temporário 110, 130 pode designar dados de saliência para um quadro. Os dados de saliência podem incluir, por exemplo, um mapa de saliência. Um mapa de saliência identifica a singularidade de partes de uma imagem. Por exemplo, a singularidade de cor de uma parte (por exemplo, pixel ou conjunto de pixels adjacentes) de uma imagem pode ser identificada com um valor. Um mapa de saliência pode incluir também um valor de saliência atribuído à pessoa ou objeto focalizado na imagem. Por exemplo, o valor de saliência pode identificar quanto que a pessoa ou objeto sobressai em relação ao plano de fundo no qual esse objeto ou pessoa é colocado.
[054] O módulo de identificação de ponto de rearmazenamento temporário 110, 130 também pode determinar características temporais do quadro. Por exemplo, ao analisar os dados representando o quadro, e quadros adjacentes, pode ser determinado que um objeto ou pessoa particular focalizada está deslocando em uma velocidade e direção particulares em relação a outros objetos ou ao plano de fundo da imagem. Esta informação pode ser determinada para designar um valor de movimento de quadro 412 e um valor de direção de quadro 414.
[055] O valor de movimento de quadro 412 e o valor de
Petição 870190117673, de 14/11/2019, pág. 46/79
33/52 direção de quadro 414 podem ser usados para determinar um ponto de rearmazenamento temporário especificado. Por exemplo, se existir uma grande quantidade de movimento dentro do item de video em um quadro particular, então isto pode indicar que mais ação está ocorrendo durante a cena. Assim, pode ser mais inconveniente causar um evento de rearmazenamento temporário nesse quadro. Se, entretanto, existir menos movimento, então ele pode ser um quadro menos inconveniente para um evento de rearmazenamento temporário. Portanto, um quadro que tem um valor de movimento de quadro 412 que é menor que um valor limiar de movimento predeterminado pode ser identificado como um ponto de rearmazenamento temporário especificado. Em alguns exemplos, um quadro com um valor de movimento baixo pode ter um valor de classificação que é menor que o de um quadro correspondendo a uma mudança de tomada ou mudança de cena.
[056] O módulo de identificação de ponto de rearmazenamento temporário 110, 130 também pode determinar o valor de classificação de ponto de rearmazenamento temporário 416 para o quadro. O valor de classificação de ponto de rearmazenamento temporário pode ser baseado em uma variedade de fatores associados com o quadro ou com a posição do quadro dentro de uma tomada ou cena. Por exemplo, o valor de classificação pode variar de 0-100, com zero sendo uma escolha ruim para um ponto de rearmazenamento temporário e 100 sendo a escolha ideal para um ponto de rearmazenamento temporário. Assim, um quadro que está posicionado dentro de diálogo e representa um personagem importante falando pode ter um valor de
Petição 870190117673, de 14/11/2019, pág. 47/79
34/52 classificação de ponto de rearmazenamento temporário de zero e o quadro correspondendo a um desaparecimento gradual ou aparecimento gradual no final ou inicio de uma cena pode ter um valor de classificação de ponto de rearmazenamento temporário mais próximo de 100. Adicionalmente, um quadro que está posicionado no final ou inicio de uma tomada pode ter um valor de classificação de ponto de rearmazenamento temporário próximo a 75, por exemplo. O valor de classificação de ponto de rearmazenamento temporário 416 também pode ser afetado pelas outras propriedades 401, 403, 405 do quadro e por outras considerações tais como descritas neste documento. Em algumas modalidades nas quais o módulo de identificação de ponto de rearmazenamento temporário 110 executando no sistema de computação servidor 102 determina as propriedades 401, 403 e 405, o sistema de computação cliente 120 utiliza estes metadados para produzir metadados adicionais incluindo o valor de classificação de ponto de rearmazenamento temporário 416.
[057] A figura 4B mostra uma tabela ilustrativa 420 que inclui metadados para uma tomada particular, também referidos como metadados de tomada. De acordo com o presente exemplo, os metadados incluem uma categoria de tomada 422, as propriedades visuais 424, as propriedades estruturais 426 e as propriedades temporais 428.
[058] A categoria de tomada 422 identifica o tipo de tomada. Por exemplo, categorias de tomadas podem incluir, mas não estão limitadas a isto, uma tomada ampliada, uma tomada de estabelecimento, uma tomada de redução ou uma outra categoria de tomadas utilizadas nas indústrias de televisão e de filmes. Outros tipos de categorias de
Petição 870190117673, de 14/11/2019, pág. 48/79
35/52 tomadas também podem ser definidos. Tal como descrito anteriormente, uma categoria de tomada pode ser definida com base em diferenças de características entre pelo menos dois quadros diferentes dentro da tomada.
[059] Os dados de propriedades visuais 424 podem incluir informação tal como brilho, nitidez e contraste. Estes podem ser representados como valores médios para a tomada. Por exemplo, uma amostra de quadros da tomada pode ser analisada e ter a média calculada para determinar vários valores de propriedades visuais. Os dados de propriedades estruturais 426 podem incluir características estruturais da tomada tais como quais personagens aparecem na tomada. Os dados de propriedades temporais 428 podem indicar a direção, se alguma, na qual a tomada está deslocando ou na qual um objeto identificado na tomada está deslocando. Os dados de propriedades temporais 428 também podem indicar a direção na qual quaisquer objetos focalizados estão deslocando em relação ao plano de fundo. Outras partes de informação que podem ser úteis para identificar pontos de rearmazenamento temporário podem ser incluídas com a metadados de tomada.
[060] A figura 5 é um diagrama mostrando detecção de características indicando uma tomada ampliada. A figura 5 ilustra uma imagem dos dois quadros diferentes 502, 504. No presente exemplo, o primeiro quadro 502 corresponde a um quadro mais cedo dentro da tomada e o segundo quadro 504 corresponde a um quadro mais tarde dentro da tomada. Os quadros 502, 504 são analisados para identificar certas características dentro de cada quadro 502, 504. Em alguns exemplos, as características podem ser identificadas como
Petição 870190117673, de 14/11/2019, pág. 49/79
36/52 características primárias e características secundárias. No presente exemplo, os quadros 502, 504 têm uma característica primária 506a, 506b que é a face de um único personagem aparecendo na tomada. Adicionalmente, os quadros 502, 504 incluem as características secundárias 508a, 508b, tais como uma parte da roupa do personagem (neste exemplo, a gravata do personagem).
[061] Em alguns exemplos, várias funções podem ser aplicadas para identificar características primárias e características secundárias. De uma maneira geral, faces de personagens serão designadas como características primárias. Outros objetos que sobressaiam em relação ao restante do plano de fundo podem ser designados como características secundárias. Se não existirem faces dentro de uma tomada, então outros mecanismos podem ser usados para identificar uma característica primária. Por exemplo, o objeto que mais sobressai pode ser designado como a característica primária. Alternativamente, característica primária pode não ser identificada e somente características secundárias podem ser identificadas. Em alguns exemplos, pode não existir distinção feita entre características primárias e secundárias.
[062] A categoria de tomada pode ser atribuída ao comparar as características entre os dois quadros. Na figura 5, uma comparação da característica primária 506a do primeiro quadro 502 com a característica primária correspondente 506b do segundo quadro 504 mostra que existe pouca diferença em tamanho ou posição da característica primária 506. As linhas de traços entre as características são substancialmente paralelas e horizontais. Isto indica
Petição 870190117673, de 14/11/2019, pág. 50/79
37/52 que existe pouco movimento entre o primeiro quadro 502 e o segundo quadro 504. Adicionalmente, a comparação entre a característica secundária 508a do primeiro quadro 502 e a característica secundária 508b do segundo quadro 504 mostra que existe pouca diferença na posição da característica secundária 508. Adicionalmente, a característica primária 506 ocupa uma certa quantidade de espaço dentro do quadro. Por exemplo, a característica primária 506 pode ter dimensões gerais que incluem pelo menos uma dimensão que é maior que um terço da dimensão correspondente do quadro geral. Por exemplo, a face identificada como as características primárias 506a, 506b tem uma altura que é maior que um terço da altura total do quadro. O valor limiar de um terço é fornecido a título de exemplo; outros valores ou porcentagens podem ser usados em outras modalidades. Com base nesta informação, pode ser determinado que a tomada é uma tomada ampliada. Assim, a tomada pode ser categorizada de modo correspondente.
[063] A figura 6 é um diagrama mostrando detecção de características indicando uma tomada de estabelecimento. A figura 6 ilustra imagens dos dois quadros diferentes 602, 604. As características 606a, 606b detectadas nos quadros são pessoas e as características secundárias 608a, 608b detectadas nos quadros 602, 604 incluem cenário. A categoria de tomada pode ser atribuída ao comparar as características entre os dois quadros 602, 604. Uma comparação da relação entre a característica primária 606a e a característica secundária 608a do primeiro quadro com a relação entre a característica primária 606b e a característica secundária 608b do segundo quadro 604 mostra
Petição 870190117673, de 14/11/2019, pág. 51/79
38/52 que a distância entre as duas muda e que uma dimensão relativa (por exemplo, altura) das características identificadas muda enquanto que uma outra dimensão (por exemplo, largura) não muda ou não muda tanto. Isto pode indicar que a tomada inclui movimento vertical da câmera em relação às características identificadas. Em outras palavras, as linhas de traços entre pontos correspondentes nos quadros não são completamente horizontais, mas em vez disto são ligeiramente diagonais. A inclinação relativamente não profunda das linhas indica que embora exista algum movimento entre os dois quadros 502, 504 ele não é um movimento repentino ou rápido. Adicionalmente, as características primárias 606a (isto é, as pessoas) ocupam uma quantidade relativamente pequena de espaço quando comparado à imagem. Com base nesta informação, pode ser determinado que a tomada é uma tomada de estabelecimento. Assim, a tomada pode ser categorizada de modo correspondente.
[064] A figura 7 é um diagrama mostrando detecção de características indicando uma tomada de redução. A figura 7 ilustra imagens dos dois quadros diferentes 702, 704. As características 706a, 706b detectadas nos quadros incluem um objeto de focalização no qual o personagem está olhando. A categoria de tomada pode ser atribuída ao comparar as características entre os dois quadros 702, 704. Uma comparação entre o tamanho relativo das características 706a no primeiro quadro e o tamanho relativo das características 706b no segundo quadro 704 mostra que o tamanho relativo muda. Especificamente, as características 706b no segundo quadro 704 são menores que as
Petição 870190117673, de 14/11/2019, pág. 52/79
39/52 características correspondentes 706a do primeiro quadro 702. A natureza convergente das linhas de traços entre pontos correspondentes sugere que as características correspondentes no segundo quadro 704 são menores do que elas são no primeiro quadro 702. Com base nesta informação, pode ser determinado que a tomada é uma tomada de redução. Assim, a tomada pode ser categorizada de modo correspondente. Se tivesse sido determinado que as características 706b no segundo quadro 704 eram maiores que as características correspondentes 706a do primeiro quadro 702, então terra sido determinado que a tomada é uma tomada de ampliação.
[065] As figuras 5-7 ilustram alguns exemplos de detecção de características dentro de tomadas para designar uma categoria de tomada para tais tomadas. Outros tipos de tomadas podem ser detectados igualmente. Adicionalmente, outros tipos de funções para identificar tipos diferentes de tomadas podem ser usados em algumas modalidades dos módulos de identificação de pontos de rearmazenamento temporário descritos neste documento.
[066] A figura 8 é um fluxograma mostrando um método ilustrativo para pausar item de vídeo em pontos de rearmazenamento temporário especificados. O método 800 inclui várias etapas ou operações enumeradas. Modalidades do método 800 podem incluir etapas adicionais antes, depois, entre ou como parte das etapas enumeradas. Algumas modalidades podem omitir uma ou mais das operações enumeradas. Adicionalmente, algumas modalidades do método 800 incluem mídias não transitórias legíveis por máquina tendo instruções armazenadas nas mesmas que induzem um
Petição 870190117673, de 14/11/2019, pág. 53/79
40/52 processador para realizar todas ou algumas das operações descritas. De acordo com o presente exemplo, o método 800 inclui uma operação 802 para receber um item de vídeo de fluxo contínuo em um armazenamento temporário ou extrair ou ler dados que compreendem o item de vídeo de fluxo contínuo. O item de vídeo pode ser, por exemplo, um filme completo ou um episódio de uma série. Outros exemplos de itens de vídeo também são contemplados. O item de vídeo pode ser entregue como um fluxo. Em outras palavras, o item de vídeo é exibido por um dispositivo cliente enquanto dados ainda estão sendo transferidos para o dispositivo cliente por um dispositivo servidor. Assim, o item de vídeo pode começar apresentação antes de ser transferido totalmente para o dispositivo cliente.
[067] O método 800 inclui adicionalmente uma operação 804 para enviar o item de vídeo do armazenamento temporário para um sistema de exibição. O sistema de exibição pode incluir, por exemplo, um dispositivo de saída visual tal como uma tela e um dispositivo de saída de áudio, tal como um conjunto de alto-falantes ou uma conexão para isto. Enviar o item de vídeo do armazenamento temporário para o sistema de exibição consome os dados dentro do armazenamento temporário. Ao visualizar itens de vídeo de fluxo contínuo desta maneira, dados representando um item de vídeo são recebidos do servidor remoto em um armazenamento temporário local. Convencionalmente, se tais dados dentro do armazenamento temporário forem consumidos para apresentação antes de dados adicionais serem entregues, o item de vídeo tem que ser pausado para permitir rearmazenamento temporário. Tais eventos de
Petição 870190117673, de 14/11/2019, pág. 54/79
41/52 rearmazenamento temporário não levam em conta aspectos do conteúdo sendo renderizado e podem reduzir a qualidade de experiência pelo espectador.
[068] O método 800 inclui adicionalmente uma operação 806 para determinar que existe um ponto de rearmazenamento temporário especificado dentro de um intervalo de tempo predeterminado. O ponto de rearmazenamento temporário especificado pode corresponder a uma mudança de cena, uma mudança de tomada ou a outro ponto dentro do item de video que seja menos inconveniente para uma pausa. Os pontos de rearmazenamento temporário podem ser identificados antes de o item de vídeo ser transferido em fluxo contínuo ou podem ser identificados pelo sistema de computação cliente à medida que dados são colocados no armazenamento temporário. O intervalo de tempo predeterminado pode corresponder aos dados que estão correntemente dentro do armazenamento temporário. Especificamente, o intervalo de tempo predeterminado pode se estender entre o ponto no qual o vídeo está correntemente e o ponto no qual o armazenamento temporário é consumido totalmente. Em alguns exemplos, pode não existir ponto de rearmazenamento temporário especificado dentro dos dados não consumidos dentro do armazenamento temporário. Entretanto, pode existir o caso em que um ponto de rearmazenamento temporário como este aparecerá antes de o armazenamento temporário ser totalmente consumido ou um evento de rearmazenamento temporário será ativado de outro modo. Modalidades do método 800 podem incluir uma operação de selecionar um ponto de rearmazenamento temporário particular dentre uma pluralidade de potenciais pontos de rearmazenamento
Petição 870190117673, de 14/11/2019, pág. 55/79
42/52 temporário, em resposta a determinar que a utilização de armazenamento temporário cai abaixo de um limiar predeterminado. A utilização de armazenamento temporário pode ser determinada como caindo para abaixo do limiar predeterminado quando a quantidade de dados no armazenamento temporário cai abaixo de um valor de dados predeterminado ou quando a quantidade de dados no armazenamento temporário está diminuindo em uma taxa preditiva de cair para abaixo de um limiar predeterminado dentro de uma quantidade de tempo predeterminada. Portanto, a determinação pode ser uma determinação real ou uma determinação preditiva. Adicionalmente, algumas modalidades do método 800 podem incluir uma operação de avaliar o armazenamento temporário para determinar um nível de armazenamento temporário cheio ou qual porcentagem de memória alocada para o armazenamento temporário está realmente ocupada a fim de determinar se uma pausa para rearmazenamento temporário é necessária. Em algumas modalidades, a avaliação de armazenamento temporário cheio pode ser usada para determinar de quanto tempo uma pausa para rearmazenamento temporário deve ser ou quando uma pausa deve ser parada.
[069] O método 800 inclui adicionalmente uma operação 808 para pausar o item de vídeo no ponto de rearmazenamento temporário especificado, em resposta a determinar que existe um ponto de rearmazenamento temporário especificado dentro do intervalo de tempo predeterminado e que rearmazenamento temporário deve ser realizado para evitar esvaziamento completo do armazenamento temporário. Ao pausar o item de vídeo no ponto de rearmazenamento
Petição 870190117673, de 14/11/2019, pág. 56/79
43/52 temporário especificado em vez de em um ponto aleatório determinado somente pela quantidade de dados no armazenamento temporário, a inconveniência do evento de rearmazenamento temporário é reduzida. Assim, um espectador é provido com uma experiência melhor durante a visualização do conteúdo de fluxo continuo. Em algumas instâncias, um rearmazenamento temporário pode ser realizado sem o espectador perceber a pausa para rearmazenamento temporário. Portanto, enquanto que implementações convencionais de eventos de rearmazenamento temporário de uma maneira geral incluem alguma alteração da cena apresentada para o usuário para comunicar que rearmazenamento temporário está sendo realizado (por exemplo, uma roda girando aparece sobre um quadro), algumas modalidades da presente revelação podem não incluir qualquer indicação para o usuário de que um evento de rearmazenamento temporário está ocorrendo. Por causa de o rearmazenamento temporário ser realizado em um momento apropriado identificado o rearmazenamento temporário é menos perceptível para os usuários. Por exemplo, adicionar um único segundo mostrando um quadro preto em um desaparecimento gradual identificado pode não ser percebido pelo usuário como rearmazenamento temporário, mas simplesmente como uma transição maior no item de video.
[070] Adicionalmente, algumas modalidades do sistema de computação cliente 120 podem pausar a reprodução do item de video ao alongar conteúdo de video e/ou de áudio que está presente no armazenamento temporário. O sistema de computação cliente 120 pode interpolar informação de video e áudio de maneira que uma dada parte de video seja
Petição 870190117673, de 14/11/2019, pág. 57/79
44/52 alongada para aumentar no tempo. Por exemplo, o armazenamento temporário 124 pode incluir dados que podem ser processados em cinco segundos de video. Alguns ou todos estes dados podem ser alongados ao incluir quadros adicionais ou ao exibir quadros por periodos de tempo maiores para fazer com que os dados sejam apresentados em seis segundos, em vez de cinco. 0 áudio pode ser alongado correspondentemente em um modo que não altera a afinação. Em algumas modalidades, um espectro de Fourier da parte pertinente do áudio de armazenamento temporário pode ser usado para criar um perfil espectral para sintetizar conteúdo de áudio similar. Por exemplo, uma tomada de estabelecimento identificado em um item de midia pode ser alongada de dez segundos para doze segundos para permitir que dois segundos de rearmazenamento temporário ocorram enquanto a tomada de estabelecimento é mostrada. 0 sistema de computação cliente 120 pode identificar a tomada de estabelecimento por meio de metadados incluindo uma etiqueta que indica um ponto de rearmazenamento temporário associado com a tomada. Portanto, o sistema de computação cliente 120 pode fornecer uma resposta de rearmazenamento temporário com base no tipo de ponto de rearmazenamento temporário sendo usado para rearmazenamento temporário.
[071] Em algumas modalidades, após um ponto de rearmazenamento temporário ter sido selecionado, o sistema de computação cliente 120 pode aplicar um desaparecimento gradual aos dados que ainda têm que ser exibidos pelo sistema de exibição 132. O desaparecimento gradual pode ser fornecido para video e/ou áudio incluido nos dados armazenados temporariamente. Em algumas modalidades, quando
Petição 870190117673, de 14/11/2019, pág. 58/79
45/52 é provável que o rearmazenamento temporário gaste uma quantidade significativa de tempo (por exemplo, mais que 3, 5 ou 10 segundos) um conteúdo de áudio predeterminado pode ser apresentado. De modo similar, um conteúdo de vídeo predeterminado pode ser apresentado, tal como um quadro mostrando o título do item de vídeo ou um quadro associado com um capítulo ou segmento do item de vídeo. Quando um conteúdo de áudio predeterminado é apresentado, o conteúdo pode ser projetado para laço e pode ser obtido do item de vídeo propriamente dito, tal como uma trilha sonora do item de vídeo. Tais abordagens podem permitir uma melhor experiência de usuário durante períodos de rearmazenamento temporário de extensão e podem ser incluídas em modalidades do método 800.
[072] Em alguns exemplos, se uma pausa de rearmazenamento temporário exceder um certo limiar, ao espectador pode ser mostrado uma apresentação de intervalo até que o armazenamento temporário receba dados suficientes para prosseguir com apresentação da parte de conteúdo original. A apresentação de intervalo pode ser, por exemplo, os últimos 10-15 segundos da parte de conteúdo antes de a pausa ocorrer. Em alguns exemplos, o conteúdo de intervalo pode ser reproduzido após o armazenamento temporário ter recebido dados suficientes para prosseguir de maneira que o espectador veja os 10-15 segundos imediatamente antes de a reprodução de vídeo reiniciar. Em alguns exemplos, o espectador pode ser notificado de que uma recapitulação como esta está sendo apresentada.
[073] Em alguns exemplos, os valores de classificações podem ser determinados em parte usando analítica para dados
Petição 870190117673, de 14/11/2019, pág. 59/79
46/52 coletados usando vários experimentos. Por exemplo, experimentos visuais subjetivos podem ser conduzidos nos quais questões são fluxos de video interrompidos simulados mostrados e é solicitado para classificar a excelência/qualidade de cada. Então, as pontuações subjetivas podem ser usadas em combinação com os princípios descritos anteriormente. Em alguns exemplos, modelos de aprendizado de máquina podem ser usados, tais como Máquinas de Vetores de Suporte, Redes Neurais ou outros. Tais modelos podem ser usados para treinar os sistemas em como designar valores de classificações em um modo ideal. Então, as coleções adicionais de dados são recebidas, e os pontos de rearmazenamento temporário e valores associados de classificações podem ser recalculados.
[074] Alguns exemplos de sistemas de processamento descritos neste documento podem incluir midias tangíveis não transitórias legíveis por máquina que incluem código executável que, quando executado por um ou mais processadores, pode induzir o um ou mais processadores para realizar as operações do método 800 tal como descrito anteriormente. Algumas formas comuns de mídias legíveis por máquina que podem incluir as operações do método 800 são, por exemplo, disquete, disco flexível, disco rígido, fita magnética, qualquer outro meio magnético, CD-ROM, qualquer outro meio ótico, cartões perfurados, fita de papel, qualquer outro meio físico com padrões de furos, RAM, PROM, EPROM, FLASH-EPROM, qualquer outro chip ou cartucho de memória, e/ou qualquer outro meio no qual um processador ou computador é adaptado para ler.
[075] Modalidades da presente revelação podem melhorar
Petição 870190117673, de 14/11/2019, pág. 60/79
47/52 sistemas servidores e clientes utilizados em um ambiente de mídia de fluxo contínuo ao otimizar a disposição de eventos de rearmazenamento temporário. A disposição otimizada pode ser determinada com base nos dados sendo transferidos em fluxo contínuo, no conteúdo dos dados sendo transferidos em fluxo contínuo e em condições de rede experimentadas pelo dispositivo cliente. A disposição otimizada pode melhorar estes sistemas de computação a fim de possibilitar uma experiência de usuário aperfeiçoada.
[076] Embora modalidades ilustrativas tenham sido mostradas e descritas, uma faixa ampla de modificação, mudança e de substituição é contemplada na revelação anterior e em algumas instâncias, algumas características das modalidades podem ser empregadas sem um uso correspondente de outras características. Uma pessoa de conhecimento comum na técnica reconhecerá muitas variações, alternativas e modificações. As reivindicações devem ser interpretadas amplamente e em um modo consistente com o escopo das modalidades reveladas neste documento. Portanto, certos aspectos da presente revelação são relatados nas seguintes cláusulas numeradas:
1. um método compreendendo: receber, com um sistema de computação, dados representando um item de vídeo em um armazenamento temporário; enviar, com o sistema de computação, o item de vídeo do armazenamento temporário para um sistema de exibição; determinar, com o sistema de computação, que utilização do armazenamento temporário cai abaixo de um limiar predeterminado; em resposta a determinar que a utilização do armazenamento temporário cai abaixo do limiar predeterminado, determinar que existe um
Petição 870190117673, de 14/11/2019, pág. 61/79
48/52 ponto de rearmazenamento temporário especificado dentro de um intervalo de tempo predeterminado; e pausar, com o sistema de computação, o item de video no ponto de rearmazenamento temporário especificado em resposta a determinar que existe o ponto de rearmazenamento temporário especificado dentro do intervalo de tempo predeterminado;
2. o método da cláusula 1, compreendendo adicionalmente reiniciar o item de video após uma quantidade de tempo predeterminada, a quantidade de tempo predeterminada sendo baseada em uma taxa na qual o item de vídeo é recebido pelo armazenamento temporário;
3. o método de qualquer uma das cláusulas 1-2, em que o ponto de rearmazenamento temporário especificado corresponde a uma de: uma mudança de tomada e uma mudança de cena;
4. o método de qualquer uma das cláusulas 1-3, em que o ponto de rearmazenamento temporário especificado corresponde a um no qual um valor de movimento de quadro está abaixo de um limiar de valor de movimento predeterminado;
5. o método de qualquer uma das cláusulas 1-4, em que o ponto de rearmazenamento temporário especificado corresponde a um ponto no qual valores representando propriedades visuais estão abaixo de um limiar de propriedade visual predefinido;
6. o método de qualquer uma das cláusulas 1-5, em que o ponto de rearmazenamento temporário especificado é uma pausa em um diálogo do item de vídeo;
7. o método de qualquer uma das cláusulas 1-6, em que o ponto de rearmazenamento temporário especificado é
Petição 870190117673, de 14/11/2019, pág. 62/79
49/52 selecionado dentre uma pluralidade de potenciais pontos de rearmazenamento temporário dentro do item de vídeo, a pluralidade de potenciais pontos de rearmazenamento temporário tendo tipos diferentes, os tipos diferentes sendo atribuídos valores de classificações diferentes;
8. o método da cláusula 7, em que pausar o item de vídeo ocorre somente se o ponto de rearmazenamento temporário especificado estiver acima de uma classificação específica;
9. o método de qualquer uma das cláusulas 1-8, em que o ponto de rearmazenamento temporário especificado é identificado no item de vídeo antes de o item de vídeo ser transferido em fluxo contínuo para o sistema de computação;
10. o método de qualquer uma das cláusulas 1-9, em que o ponto de rearmazenamento temporário especificado é identificado pelo sistema de computação enquanto uma parte do item de vídeo na qual o ponto de rearmazenamento temporário especificado está posicionado está dentro do armazenamento temporário;
11. um método compreendendo: receber, com um sistema de computação, primeiros dados representando um item de vídeo em um armazenamento temporário e segundos dados indicando um conjunto de pontos de rearmazenamento temporário especificados para o item de vídeo; enviar, com o sistema de computação, os primeiros dados representando o item de vídeo do armazenamento temporário para um sistema de exibição; determinar que uma taxa na qual os primeiros dados são recebidos é menor que uma taxa na qual os primeiros dados são enviados do armazenamento temporário para o sistema de exibição por uma quantidade limiar; e em
Petição 870190117673, de 14/11/2019, pág. 63/79
50/52 resposta a determinar que a taxa na qual os primeiros dados são recebidos é menor que a taxa na qual os primeiros dados são enviados para o sistema de exibição pela quantidade limiar, pausar o fluxo de midia em um do conjunto de pontos de rearmazenamento temporário especificados;
12. o método da cláusula 11, em que o conjunto de pontos de rearmazenamento temporário especificados inclui mudanças de tomadas, mudanças de cenas, cenas com particularidades visuais predefinidas e pausas em diálogo;
13. o método da cláusula 12, em que tipos diferentes de pontos de rearmazenamento temporário são atribuídos com classificações diferentes;
14. o método da cláusula 13, em que o um do conjunto de pontos de rearmazenamento temporário especificados é selecionado com base em uma diferença entre a taxa na qual os primeiros dados são recebidos e a taxa na qual os primeiros dados são enviados do armazenamento temporário para o sistema de exibição;
15. o método da cláusula 14, em que um subconjunto de pontos de rearmazenamento temporário aceitáveis do qual o ponto de rearmazenamento temporário selecionado é selecionado inclui tipos adicionais de pontos de rearmazenamento temporário à medida que a diferença aumenta;
16. o método de qualquer uma das cláusulas 13-15, compreendendo adicionalmente pausar o fluxo de midia em uma pluralidade de pontos de rearmazenamento temporário do conjunto de pontos de rearmazenamento temporário, em que uma pausa em cada um da pluralidade de pontos de rearmazenamento temporário selecionados é por um periodo de
Petição 870190117673, de 14/11/2019, pág. 64/79
51/52 tempo diferente baseado em um valor de classificação atribuído a esse ponto de rearmazenamento temporário;
17. o método de qualquer uma das cláusulas 11-16, em que um período de tempo para o qual o item de vídeo é pausado é baseado em uma predição de quando o armazenamento temporário estará abaixo de um valor predeterminado;
18. um método de otimizar disposição de um evento de rearmazenamento temporário em reprodução de mídia de fluxo contínuo, o método compreendendo: receber, com um sistema de computação servidor, um item de vídeo de fluxo contínuo; realizar processamento de imagens para identificar uma pluralidade de pontos de rearmazenamento temporário especificados no item de vídeo de fluxo contínuo; armazenar, em uma memória, informação caracterizando a pluralidade identificada de pontos de rearmazenamento temporário especificados; e transmitir a informação caracterizando a pluralidade identificada de pontos de rearmazenamento temporário especificados por meio de uma rede para um sistema de computação cliente;
19. o método da cláusula 18, em que a informação caracterizando a pluralidade identificada de pontos de rearmazenamento temporário especificados inclui pelo menos um de: etiquetas de tempo e números de quadros associados com um ponto de rearmazenamento temporário especificado e uma etiqueta indicando um tipo de ponto de rearmazenamento temporário associado com cada ponto de rearmazenamento temporário especificado;
20. o método da cláusula 18, compreendendo adicionalmente transmitir o item de vídeo de fluxo contínuo para o sistema de computação cliente, em que transmitir o
Petição 870190117673, de 14/11/2019, pág. 65/79
52/52 item de vídeo de fluxo contínuo é realizado em conexão com transmitir a informação caracterizando a pluralidade identificada de pontos de rearmazenamento temporário especificados.

Claims (20)

1. Método, caracterizado pelo fato de que compreende:
receber, com um sistema de computação, dados representando um item de vídeo em um armazenamento temporário;
enviar, com o sistema de computação, o item de vídeo do armazenamento temporário para um sistema de exibição;
determinar, com o sistema de computação, que utilização do armazenamento temporário cai abaixo de um limiar predeterminado;
em resposta a determinar que a utilização do armazenamento temporário cai abaixo do limiar predeterminado, determinar, com o sistema de computação, que existe um ponto de rearmazenamento temporário especificado dentro de um intervalo de tempo predeterminado; e pausar, com o sistema de computação, o item de vídeo no ponto de rearmazenamento temporário especificado em resposta a determinar que existe o ponto de rearmazenamento temporário especificado dentro do intervalo de tempo predeterminado.
2. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que compreende adicionalmente reiniciar o item de vídeo após uma quantidade de tempo predeterminada, a quantidade de tempo predeterminada sendo baseada em uma taxa na qual o item de vídeo é recebido pelo armazenamento temporário.
3. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o ponto de rearmazenamento
Petição 870190117673, de 14/11/2019, pág. 67/79
2/6 temporário especificado corresponde a uma de: uma mudança de tomada e uma mudança de cena.
4. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o ponto de rearmazenamento temporário especificado corresponde a um no qual um valor de movimento de quadro está abaixo de um limiar de valor de movimento predeterminado.
5. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o ponto de rearmazenamento temporário especificado corresponde a um ponto no qual valores representando propriedades visuais estão abaixo de um limiar de propriedade visual predefinido.
6. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o ponto de rearmazenamento temporário especificado é um marcador auditivo dentro do item de vídeo.
7. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o ponto de rearmazenamento temporário especificado é selecionado dentre uma pluralidade de potenciais pontos de rearmazenamento temporário dentro do item de vídeo, a pluralidade de potenciais pontos de rearmazenamento temporário tendo tipos diferentes, os tipos diferentes sendo atribuídos valores de classificações diferentes.
8. Método, de acordo com a reivindicação 7, caracterizado pelo fato de que pausar o item de vídeo ocorre somente se o ponto de rearmazenamento temporário especificado estiver acima de uma classificação específica.
9. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o ponto de rearmazenamento
Petição 870190117673, de 14/11/2019, pág. 68/79
3/6 temporário especificado é identificado no item de vídeo antes de o item de vídeo ser transferido em fluxo contínuo para o sistema de computação.
10. Método, de acordo com a reivindicação 1, caracterizado pelo fato de que o ponto de rearmazenamento temporário especificado é identificado pelo sistema de computação enquanto uma parte do item de vídeo na qual o ponto de rearmazenamento temporário especificado está posicionado está dentro do armazenamento temporário.
11. Método, caracterizado pelo fato de que compreende:
receber, com um sistema de computação, primeiros dados representando um item de vídeo em um armazenamento temporário e segundos dados indicando um conjunto de pontos de rearmazenamento temporário especificados para o item de vídeo;
enviar, com o sistema de computação, os primeiros dados representando o item de vídeo do armazenamento temporário para um sistema de exibição;
determinar que uma taxa na qual os primeiros dados são recebidos é menor que uma taxa na qual os primeiros dados são enviados do armazenamento temporário para o sistema de exibição por uma quantidade limiar; e em resposta a determinar que a taxa na qual os primeiros dados são recebidos é menor que a taxa na qual os primeiros dados são enviados para o sistema de exibição pela quantidade limiar, pausar o fluxo de mídia em um do conjunto de pontos de rearmazenamento temporário especificados.
12. Método, de acordo com a reivindicação 11,
Petição 870190117673, de 14/11/2019, pág. 69/79
4/6 caracterizado pelo fato de que o conjunto de pontos de rearmazenamento temporário especificados inclui mudanças de tomadas, mudanças de cenas, cenas com particularidades visuais predefinidas e pausas em diálogo.
13. Método, de acordo com a reivindicação 12, caracterizado pelo fato de que tipos diferentes de pontos de rearmazenamento temporário são atribuídas classificações diferentes.
14. Método, de acordo com a reivindicação 13, caracterizado pelo fato de que o um do conjunto de pontos de rearmazenamento temporário especificados é selecionado com base em uma diferença entre a taxa na qual os primeiros dados são recebidos e a taxa na qual os primeiros dados são enviados do armazenamento temporário para o sistema de exibição.
15. Método, de acordo com a reivindicação 14, caracterizado pelo fato de que um subconjunto de pontos de rearmazenamento temporário aceitáveis do qual o ponto de rearmazenamento temporário selecionado é selecionado inclui tipos adicionais de pontos de rearmazenamento temporário à medida que a diferença aumenta.
16. Método, de acordo com a reivindicação 13, caracterizado pelo fato de que compreende adicionalmente pausar o fluxo de mídia em uma pluralidade de pontos de rearmazenamento temporário do conjunto de pontos de rearmazenamento temporário, em que uma pausa em cada um da pluralidade de pontos de rearmazenamento temporário selecionados é por um período de tempo diferente baseado em um valor de classificação atribuído a esse ponto de rearmazenamento temporário.
Petição 870190117673, de 14/11/2019, pág. 70/79
5/6
17. Método, de acordo com a reivindicação 11, caracterizado pelo fato de que um periodo de tempo para o qual o item de video é pausado é baseado em uma predição de quando o armazenamento temporário estará abaixo de um valor predeterminado.
18. Método de otimizar disposição de um evento de rearmazenamento temporário em reprodução de midia de fluxo continuo, o método caracterizado pelo fato de que compreende:
receber, com um sistema de computação servidor, um item de video de fluxo continuo;
realizar processamento de imagens para identificar uma pluralidade de pontos de rearmazenamento temporário especificados no item de video de fluxo continuo;
armazenar, em uma memória, informação caracterizando a pluralidade identificada de pontos de rearmazenamento temporário especificados; e transmitir a informação caracterizando a pluralidade identificada de pontos de rearmazenamento temporário especificados por meio de uma rede para um sistema de computação cliente.
19. Método, de acordo com a reivindicação 18, caracterizado pelo fato de que a informação caracterizando a pluralidade identificada de pontos de rearmazenamento temporário especificados inclui pelo menos um de: etiquetas de tempo e números de quadros associados com um ponto de rearmazenamento temporário especificado e uma etiqueta indicando um tipo de ponto de rearmazenamento temporário associado com cada ponto de rearmazenamento temporário especificado.
Petição 870190117673, de 14/11/2019, pág. 71/79
6/6
20. Método, de acordo com a reivindicação 18, caracterizado pelo fato de que compreende adicionalmente transmitir o item de video de fluxo contínuo para o sistema de computação cliente, em que transmitir o item de vídeo de fluxo contínuo é realizado em conexão com transmitir a informação caracterizando a pluralidade identificada de pontos de rearmazenamento temporário especificados.
BR112019024004-7A 2017-05-31 2018-05-21 Disposição temporal de um evento de rearmazenamento temporário BR112019024004A2 (pt)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/610,053 2017-05-31
US15/610,053 US10425683B2 (en) 2017-05-31 2017-05-31 Temporal placement of a rebuffering event
PCT/US2018/033729 WO2018222435A1 (en) 2017-05-31 2018-05-21 Temporal placement of a rebuffering event

Publications (1)

Publication Number Publication Date
BR112019024004A2 true BR112019024004A2 (pt) 2020-06-02

Family

ID=63586813

Family Applications (1)

Application Number Title Priority Date Filing Date
BR112019024004-7A BR112019024004A2 (pt) 2017-05-31 2018-05-21 Disposição temporal de um evento de rearmazenamento temporário

Country Status (10)

Country Link
US (5) US10425683B2 (pt)
EP (1) EP3632121A1 (pt)
JP (1) JP7155164B2 (pt)
KR (1) KR102489164B1 (pt)
CN (1) CN110679153B (pt)
AU (1) AU2018275194B2 (pt)
BR (1) BR112019024004A2 (pt)
CA (1) CA3064557C (pt)
MX (1) MX2019014297A (pt)
WO (1) WO2018222435A1 (pt)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11025986B2 (en) 2017-05-31 2021-06-01 Netflix, Inc. Temporal placement of a rebuffering event

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10848819B2 (en) 2018-09-25 2020-11-24 Rovi Guides, Inc. Systems and methods for adjusting buffer size
US11265597B2 (en) * 2018-10-23 2022-03-01 Rovi Guides, Inc. Methods and systems for predictive buffering of related content segments
CN113727386B (zh) * 2021-08-09 2023-06-23 中国联合网络通信集团有限公司 一种通信方法及装置

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2002359833A (ja) 2001-03-27 2002-12-13 Hitachi Ltd データ通信システムおよび送信装置、通信端末
EP2919453B1 (en) * 2001-07-19 2019-04-10 British Telecommunications public limited company Video stream switching
JP4310158B2 (ja) 2002-10-08 2009-08-05 キヤノン株式会社 受信装置及び受信方法
US8355434B2 (en) * 2005-01-10 2013-01-15 Qualcomm Incorporated Digital video line-by-line dynamic rate adaptation
US8548048B2 (en) * 2005-10-27 2013-10-01 Qualcomm Incorporated Video source rate control for video telephony
US8504709B2 (en) * 2006-05-03 2013-08-06 Sony Corporation Adaptive streaming buffering
US20080109556A1 (en) * 2006-11-07 2008-05-08 Sony Ericsson Mobile Communications Ab Adaptive insertion of content in streaming media
CN102088395B (zh) * 2009-12-02 2014-03-19 杭州华三通信技术有限公司 一种调整媒体数据缓存的方法和装置
US20110283014A1 (en) * 2010-05-14 2011-11-17 Rahul Malik Distribution of Multimedia Content over a Network
EP2547062B1 (en) * 2011-07-14 2016-03-16 Nxp B.V. Media streaming with adaptation
US20130326551A1 (en) * 2012-05-30 2013-12-05 Debdeep CHATTERJEE Wireless multimedia quality of experience reporting
US9584787B1 (en) * 2012-06-08 2017-02-28 Amazon Technologies, Inc. Performance optimization for streaming video
EP2949123A2 (en) * 2013-02-27 2015-12-02 Apple Inc. Adaptive streaming techniques
US20140282690A1 (en) * 2013-03-12 2014-09-18 International Business Machines Corporation Pre-Defined Streaming Media Buffer Points
US9497682B2 (en) * 2013-06-07 2016-11-15 Intel Corporation Central processing unit and methods for supporting coordinated multipoint transmission in an LTE network
US20150312369A1 (en) * 2013-06-26 2015-10-29 Intel Corporation Checkpoints for media buffering
CN103530253B (zh) * 2013-09-30 2016-08-17 华为技术有限公司 集群多全局缓冲池系统、中心节点、计算节点及管理方法
EP2916544A1 (en) * 2014-03-06 2015-09-09 Alcatel Lucent Method to determine the quality of a video stream
WO2016123721A1 (en) * 2015-02-07 2016-08-11 Zhou Wang Method and system for smart adaptive video streaming driven by perceptual quality-of-experience estimations
US9912604B2 (en) * 2015-07-29 2018-03-06 Nxp Usa, Inc. Reduction of silicon area for ethernet PFC protocol implementation in queue based network processors
CN105933624A (zh) * 2016-06-17 2016-09-07 武汉斗鱼网络科技有限公司 一种用于网站视频录制方法及装置
US10425683B2 (en) 2017-05-31 2019-09-24 Netflix, Inc. Temporal placement of a rebuffering event

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11025986B2 (en) 2017-05-31 2021-06-01 Netflix, Inc. Temporal placement of a rebuffering event
US11388472B2 (en) 2017-05-31 2022-07-12 Netflix, Inc. Temporal placement of a rebuffering event
US11863814B2 (en) 2017-05-31 2024-01-02 Netflix, Inc. Temporal placement of a rebuffering event

Also Published As

Publication number Publication date
AU2018275194A1 (en) 2019-11-07
US20180352292A1 (en) 2018-12-06
AU2018275194B2 (en) 2022-10-13
US20240089530A1 (en) 2024-03-14
US20220345776A1 (en) 2022-10-27
CA3064557C (en) 2022-03-29
EP3632121A1 (en) 2020-04-08
KR20200013658A (ko) 2020-02-07
US20200007930A1 (en) 2020-01-02
JP2020522193A (ja) 2020-07-27
KR102489164B1 (ko) 2023-01-13
US11388472B2 (en) 2022-07-12
MX2019014297A (es) 2020-01-27
WO2018222435A1 (en) 2018-12-06
JP7155164B2 (ja) 2022-10-18
US11863814B2 (en) 2024-01-02
US20210289258A1 (en) 2021-09-16
US10425683B2 (en) 2019-09-24
US11025986B2 (en) 2021-06-01
CN110679153A (zh) 2020-01-10
CA3064557A1 (en) 2018-12-06
CN110679153B (zh) 2022-06-07

Similar Documents

Publication Publication Date Title
US11863814B2 (en) Temporal placement of a rebuffering event
US10122779B2 (en) Switching media streams in a client system based on environmental changes
US10904617B1 (en) Synchronizing a client device with media content for scene-specific notifications
US11665379B2 (en) Rendering image content as time-spaced frames
EP3525475A1 (en) Electronic device and method for generating summary image of electronic device
US20210400334A1 (en) Method and apparatus for loop-playing video content
US20220256215A1 (en) Systems and methods for adaptive output
US20220217435A1 (en) Supplementing Entertainment Content with Ambient Lighting
JP6641230B2 (ja) 映像再生装置及び映像再生方法
WO2021243044A1 (en) Methods and systems for synchronizing multimedia
US20230224521A1 (en) Electronic device and operation method thereof
US20220394323A1 (en) Supplmental audio generation system in an audio-only mode
US20230276111A1 (en) Video processing
CN115665482A (zh) 视频渲染方法、装置、计算机设备和存储介质
KR20170034311A (ko) 멀티미디어 컨텐츠를 플레이백하기 위한 장치 및 방법

Legal Events

Date Code Title Description
B350 Update of information on the portal [chapter 15.35 patent gazette]