BRPI0621785A2 - suporte para dispositivos de reprodução interativos para serviço de conteúdo sob demanda não hierárquico ciente do desempenho - Google Patents
suporte para dispositivos de reprodução interativos para serviço de conteúdo sob demanda não hierárquico ciente do desempenho Download PDFInfo
- Publication number
- BRPI0621785A2 BRPI0621785A2 BRPI0621785-0A BRPI0621785A BRPI0621785A2 BR PI0621785 A2 BRPI0621785 A2 BR PI0621785A2 BR PI0621785 A BRPI0621785 A BR PI0621785A BR PI0621785 A2 BRPI0621785 A2 BR PI0621785A2
- Authority
- BR
- Brazil
- Prior art keywords
- sub
- clip
- clips
- continuously
- video
- Prior art date
Links
- 230000002452 interceptive effect Effects 0.000 title abstract description 3
- 238000000034 method Methods 0.000 claims abstract description 39
- 238000012546 transfer Methods 0.000 claims abstract description 36
- 230000005540 biological transmission Effects 0.000 claims description 14
- 230000008569 process Effects 0.000 description 13
- 238000013459 approach Methods 0.000 description 8
- 230000000295 complement effect Effects 0.000 description 7
- 238000010586 diagram Methods 0.000 description 5
- 238000012360 testing method Methods 0.000 description 5
- 238000009395 breeding Methods 0.000 description 2
- 230000001488 breeding effect Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 238000013019 agitation Methods 0.000 description 1
- 238000004364 calculation method Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000011664 signaling Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/238—Interfacing the downstream path of the transmission network, e.g. adapting the transmission rate of a video stream to network bandwidth; Processing of multiplex streams
- H04N21/2387—Stream processing in response to a playback request from an end-user, e.g. for trick-play
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N7/00—Television systems
- H04N7/16—Analogue secrecy systems; Analogue subscription systems
- H04N7/173—Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
- H04N7/17309—Transmission or handling of upstream communications
- H04N7/17318—Direct or substantially direct transmission and handling of requests
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/21815—Source of audio or video content, e.g. local disk arrays comprising local storage units
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/437—Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/472—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
- H04N21/47202—End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1061—Peer-to-peer [P2P] networks using node-based peer discovery mechanisms
- H04L67/1068—Discovery involving direct consultation or announcement among potential requesting and potential source peers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/108—Resource delivery mechanisms characterised by resources being split in blocks or fragments
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/104—Peer-to-peer [P2P] networks
- H04L67/1074—Peer-to-peer [P2P] networks for supporting data block transmission mechanisms
- H04L67/1078—Resource delivery mechanisms
- H04L67/1085—Resource delivery mechanisms involving dynamic management of active down- or uploading connections
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Multimedia (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Computer Networks & Wireless Communication (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Television Signal Processing For Recording (AREA)
- Information Transfer Between Computers (AREA)
Abstract
SUPORTE PARA DISPOSITIVOS DE REPRODUçãO INTERATIVOS PARA SERVIçO DE CONTEúDO SOB DEMANDA NãO HIERARQUICO CIENTE DO DESEMPENHO. Um método e aparelho são descritos compreendendo detectar uma operação de reprodução de vídeo, determinar um ponto de reprodução alvo para a operação de reprodução e detectar um tipo de sub-clipe no qual recai o referido ponto de reprodução alvo. O mé- todo e aparelho também recebem um sub-clipe de vídeo principal transmitido continuamente, determina um conjunto de sub-clipes de vídeo necessários, localiza um do conjunto de sub-clipes de vídeo necessários e transfere o sub-clipe de vídeo localizado.
Description
"SUPORTE PARA DISPOSITIVOS DE REPRODUÇÃO INTERATIVOS PARA SERVIÇO DE CONTEÚDO SOB DEMANDA NÃO HIERÁRQUICO CIENTE DO DESEMPENHO"
Campo da Invenção
A presente invenção refere-se ao suporte para interatividade do usuário/operações de um dispositivo de reprodução de vídeo para um serviço de vídeo sob demanda não hie- rárquico ciente do desempenho.
Antecedentes da Invenção
Tradicionalmente, o modelo de serviço de cliente-servidor tem sido usado para pro- ver o serviço de transmissão contínua. Um cliente envia uma solicitação para um servidor, que então transmite continuamente o conteúdo para o cliente se o servidor tem recursos suficientes para atender a solicitação do cliente e existe largura de banda suficiente ao longo da trajetória entre o servidor e o cliente.
Devido à computação limitada e recurso de armazenamento no servidor e largura de banda limitada na rede que conecta o servidor e clientes, a capacidade escalar tem sido uma preocupação com o serviço de transmissão contínua de cliente-servidor. Recentemen- te, técnicas não hierárquicas foram introduzidas no serviço de transmissão contínua. Pares são implementados com as capacidades dos clientes e servidores e contribuem para ameni- zar a carga de trabalho imposta no servidor e distribuir as exigências de largura de banda através da rede ativamente colocando em cache o conteúdo e atendendo outros pares. Os estudos mostraram que as técnicas não hierárquicas melhoram grandemente a capacidade escalar do sistema, possibilitando que o sistema atenda muito mais usuários.
Tem existido esforços significativos para tratar o problema da capacidade escalar apresentada na transmissão contínua do serviço de mídia usando redes não hierárquicas. Esses esforços podem ser classificados em duas categorias particularmente transmissão contínua ao vivo não hierárquica e transmissão contínua de vídeo armazenado não hierár- quico ou vídeo sob demanda. Embora ambos os serviços esforcem-se para suportar um grande número de usuários enquanto oferecendo aos usuários boa qualidade de visualiza- ção, eles também enfrentam diferentes desafios técnicos. Na transmissão contínua ao vivo não hierárquica, a minimização do retardo de partida sem sacrificar a capacidade escalar do sistema é o desafio. No serviço de vídeo sob demanda não hierárquico, permitir o comparti- lhamento de usuários assíncronos é o desafio .
Os esquemas de transferência não hierárquicos também se distinguem pelas técni- cas de disseminação de dados diferentes. Dois métodos de disseminação de dados foram investigados - particularmente a abordagem com base na sobreposição e a abordagem con- duzida pelos dados. Na abordagem com base na sobreposição, os pares formam uma ma- lha ou estrutura de árvore onde relações de pai-filho são formadas entre os pares. Um par filho recebe dados do seu pai. Em contraste, os pares na abordagem conduzida pelos dados não têm relações fixas de pai-filho. Os pares procuram os dados ausentes e recuperam os dados ausentes sempre que disponíveis. Embora a abordagem com base na sobreposição seja amplamente usada nos esforços anteriores não hierárquicos, a abordagem conduzida pelos dados está se tornando mais popular desde que ela trata da agitação e do problema da largura de banda assimétrica efetivamente.
Embora a maior parte dos esforços da técnica anterior exiba boa capacidade esca- lar e suporte um maior número de usuários comparado com um modelo de serviço tradicio- nal de cliente-servidor, os esquemas da técnica anterior são de melhor resultado por nature- za e o suporte das exigências de desempenho do sistema não foi totalmente investigado. O uso de um serviço de vídeo sob demanda não hierárquico ciente do desempenho também significa que as operações envolvendo a interatividade do usuário com um dispositivo de reprodução de vídeo devem ser manipuladas diferentemente. Até o momento, a técnica an- terior não tratou a manipulação de tais operações de dispositivo de reprodução de vídeo.
Sumário da Invenção
O serviço de vídeo sob demanda não hierárquico ciente do desempenho permite que os usuários selecionem e assistam conteúdo de vídeo através de uma rede sempre que eles desejam. Em uma aplicação relacionada, o compartilhamento de vídeo não hierárquico segmentado foi descrito. Esse possibilitou o compartilhamento de conteúdo em um ambiente de vídeo sob demanda. O desempenho foi tratado pela transferência de dados não hierár- quicos e transmissão contínua complementar auxiliada pelo servidor.
A presente invenção é direcionada para suportar a interatividade do usuá- rio/operações para dispositivos de reprodução de vídeo para um serviço de vídeo sob de- manda não hierárquico ciente do desempenho. Tais operações incluem saltar para fren- te/para trás, pausar/reiniciar, avanço rápido e reverso rápido.
Um método e aparelho para suportar as operações de reprodução de vídeo para
um serviço de vídeo sob demanda não hierárquico são descritos compreendendo detectar uma operação de reprodução de vídeo e detectar um tipo de sub-clipe. O método e aparelho também recebem um sub-clipe de vídeo principal transmitido continuamente, determina um conjunto de sub-clipes de vídeo necessários, localiza um do conjunto de sub-clipes de vídeo necessários e transfere o sub-clipe de vídeo localizado.
Breve Descrição dos Desenhos
A presente invenção é entendida melhor a partir da descrição detalhada seguinte quando lida em conjunto com os desenhos acompanhantes. Os desenhos incluem as figuras seguintes brevemente descritas abaixo onde números semelhantes nas figuras representam elementos similares:
A figura 1 é um diagrama esquemático de uma rede não hierárquica de acordo com a presente invenção. A figura 2 é um fluxograma do processo para calcular o número real de sub-clipes transmitidos continuamente.
A figura 3 é um diagrama esquemático de um dispositivo de reprodução de vídeo.
A figura 4 é um fluxograma representando o processo de controle de admissão do lado do usuário/cliente.
A figura 5 é um diagrama de blocos das operações de reprodução de vídeo dentro de um dispositivo de reprodução de vídeo.
A figura 6 é um fluxograma da operação de um módulo de controle exemplar de a- cordo com a presente invenção.
Descrição detalhada das modalidades preferidas
Os usuários do serviço de vídeo sob demanda assistem porções diferentes do ví- deo em qualquer dado momento. A fim de possibilitar o compartilhamento do conteúdo entre usuários e maximizar a quantidade de conteúdo que é distribuído através de uma rede não hierárquica, é assumido que cada usuário tenha a capacidade de armazenamento para co- locar em cache uma cópia parcial e/ou toda a cópia do conteúdo que foi reproduzido. Essa é uma suposição razoável dada a capacidade de armazenamento rapidamente crescente dos dispositivos de reprodução de vídeo. Deve ser observado que um dispositivo de reprodução de vídeo é qualquer dispositivo capaz de receber e reproduzir vídeo (armazenado ou ao vivo) incluindo, mas não limitado a computadores, laptops, assistentes digitais pessoais (PDAs) e dispositivos móveis. Uma rede não hierárquica não é limitada a uma rede de linha ligada por fiação e pode ser uma rede de linha sem fio ou ligada por fiação ou uma rede hí- brida, utilizando ambas as conexões de linha ligada por fiação e sem fio.
No método e aparelho de vídeo sob demanda não hierárquico segmentado da pre- sente invenção, um videoclipe é dividido em múltiplos segmentos de comprimento igual, denominados sub-clipes. O tempo de reprodução do início do sub-clipe é definido como o prazo desse sub-clipe. Os sub-clipes principais são transmitidos continuamente para o dis- positivo de reprodução de vídeo de modo que os usuários podem começar a reprodução imediatamente. Enquanto isso, uma rede não hierárquica é estabelecida entre os usuários a fim de pré-recuperar os dados dos sub-clipes sucessores. De acordo com o esquema ciente de desempenho do sistema da presente invenção, os dados de um sub-clipe têm que ser pré-recuperados antes do seu prazo. Depois que a reprodução de um sub-clipe iniciou, ne- nhuma transferência não hierárquica desse sub-clipe é permitida desde que os dados recen- temente transferidos podem estar desatualizados. Transmissão contínua complementar do servidor original é iniciada desse ponto em diante para melhor desempenho do sistema. A transmissão contínua complementar é descrita abaixo.
Um exemplo é usado para ilustrar como o vídeo sob demanda não hierárquico segmentado atende solicitações que chegam. Nesse exemplo, é assumido que os usuários são capazes de colocar em cache toda a cópia de vídeo. A mesma técnica se aplica mesmo se somente uma porção da cópia de vídeo é colocada em cache. É também assumido que o servidor somente transmite continuamente o primeiro sub-clipe e os dados dos sub-clipes seguintes são transferidos usando a rede não hierárquica. O algoritmo para calcular o núme- ro de sub-clipes transmitidos continuamente será apresentado e descrito abaixo.
Com referência agora à figura 1, o cliente/usuário 1 faz uma solicitação/demanda por vídeo a partir do servidor no tempo ti. O servidor transmite continuamente o sub-clipe 1 (o primeiro sub-clipe de vídeo) para o cliente 1 imediatamente, de modo que o cliente 1 pode prontamente começar a reprodução. Ao mesmo tempo, uma tentativa é feita para localizar um par tendo/caching o sub-clipe 2 dentro da rede não hierárquica. Nesse momento, o único par na rede não hierárquica tendo/caching o sub-clipe 2 é o servidor, que pode se comportar como um par. Ambos o cliente 1 e o servidor (no mínimo) são membros da rede não hierár- quica. No tempo t2, o cliente 1 está reproduzindo o sub-clipe 1, enquanto o sub-clipe 2 está sendo transferido (não transmitido continuamente) do servidor. O cliente/usuário 2 faz uma solicitação/demanda pelo mesmo vídeo do servidor e imediatamente começa a reprodução do sub-clipe 1, que foi transmitido continuamente do servidor para o cliente 2. Ambos o ser- vidor e o cliente 1 começam a transferência (não transmissão contínua) do sub-clipe 2 para o cliente 2. Nesse momento, o servidor, o cliente 1 e o cliente 2 são pares na rede não hie- rárquica. No tempo t3, o cliente 3 faz uma solicitação/demanda pelo mesmo vídeo do servi- dor e imediatamente começa a reprodução do sub-clipe 1, que foi transmitido continuamente do servidor. Entretanto, o cliente 1 está reproduzindo o sub-clipe 3 e está transferindo os dados/vídeos do sub-clipe 4. O cliente 2 está reproduzindo o sub-clipe 2 e transferindo o sub-clipe 3. Nesse momento, o servidor, o cliente 1, o cliente 2 e o cliente 3 (pelo menos) são membros da rede não hierárquica. O cliente 3 pode transferir o sub-clipe 2 do servidor, cliente 1 e cliente 2. À medida que o tempo progride, a reprodução de vídeo do par continua. A transferência não hierárquica pré-recupera os dados do sub-clipe que segue o sub-clipe atualmente sendo reproduzido, como mostrado na figura 1, com tempo atual de U- No tempo t5, o cliente 1 já terminou a sua reprodução de vídeo e saiu do sistema. O cliente 2 está re- produzindo o último sub-clipe e o cliente 3 está reproduzindo o sub-clipe 4 e transferindo o sub-clipe 5. O servidor e o segundo cliente são pares na rede não hierárquica para finalida- des de transferência do sub-clipe 5. Finalmente, o cliente 2 também saiu do sistema depois de terminar a reprodução do vídeo. O cliente 3 está assistindo/reproduzindo o sub-clipe 5 e sairá do sistema no fim do sub-clipe 5.
Como discutido acima, embora cuidado extra seja tomado para tratar os problemas de desempenho (chegada apropriada dos sub-clipes em/pelo usuário), alguns dados podem ainda estar ausentes no momento do prazo (ou um pouco antes do prazo) quando a transfe- rência não hierárquica termina. Como usar o servidor para transmitir continuamente os da- dos ausentes de modo a melhorar mais o desempenho de reprodução de vídeo do par é agora descrito. Isso é chamado transmissão contínua complementar aqui. À medida que o prazo se aproxima, o cliente do par prepara um vetor de dados ausentes Vausente, que é um mapa de bits que usa um primeiro indicador, por exemplo, "1" para indicar que um bloco é recebido, e um segundo indicador, por exemplo, "0" para indicar que um bloco está ainda faltando. O vetor dos dados ausentes é enviado para o servidor (sinalização). O servidor começa a transmitir continuamente os dados ausentes na taxa de reprodução normal à me- dida que o prazo se aproxima de modo que os dados/vídeo ausentes podem ser preenchi- dos em tempo para a reprodução do vídeo no par.
O suporte da interatividade do usuário, isto é, operações de reprodução do disposi- tivo de vídeo, é um aspecto importante do serviço de vídeo sob demanda. Os usuários que invocam as operações de salto para frente/para trás desejam reproduzir o vídeo de um pon- to arbitrário dentro do clipe na taxa de reprodução normal. Deixemos o ponto de reprodução alvo, ou TPP representar o novo ponto de reprodução planejado. Se o TPP é mais tarde do que o ponto de reprodução atual, essa é uma operação de salto para frente. De outra forma, ela é uma operação de salto para trás.
Como mostrado acima na figura 1, existem quatro tipos de sub-clipes no serviço de vídeo sob demanda não hierárquico ciente do desempenho: sub-clipes vazios, sub-clipes transferidos, sub-clipes no processo de transferência e sub-clipes transmitidos continuamen- te. Dependendo do tipo de sub-clipe que o ponto de reprodução alvo (TPP) se situa, as ope- rações de salto para frente/para trás são manipuladas diferentemente. No seguinte, como calcular o número máximo de sub-clipes que podem precisar ser transmitidos continuamente do servidor diretamente é descrito primeiro. O número real de sub-clipes transmitidos conti- nuamente, com base no tipo de sub-clipe no qual o TPP se situa e os tipos de sub-clipes seguintes são também descritos. Finalmente, como modificar os prazos do sub-clipe a fim de suportar as operações de salto para frente/para trás é descrito.
O número de sub-clipes transmitidos continuamente é maximizado quando nenhum dado depois do ponto de reprodução alvo (TPP) é colocado em cache no armazenamento temporário. Em tal cenário, o suporte das operações de salto para frente/para trás é similar a iniciar um novo vídeo a partir do TPP. Suponha que o TPP se situa dentro do sub-clipe i. Abaixo o método para calcular o número máximo de sub-clipes transmitidos continuamente é descrito, assumindo que nenhum dado está em cache para o sub-clipe k, para k > i.
O intervalo de tempo do TPP para o fim do sub-clipe i é representado por tsobra (tlefto. ver), e o número máximo de sub-clipes transmitidos continuamente é representado por n. Assim, a relação
<formula>formula see original document page 6</formula>
onde renlace descendente (rdownlink) é a velocidade do enlace descendente, rreprodução (rplay- back) é a taxa de reprodução e L é a duração que o sub-clipe é deduzida. Desde que ri tem que ser um número inteiro, e tem que ser menor do que o número total de sub-clipes depois do sub-clipe i,
<formula>formula see original document page 7</formula>
(Equação 1)
onde (.)* é uma função não negativa e A/é o número total de sub-clipes.
A seguir, o número real de sub-clipes necessários para serem transmitidos continu- amente é investigado. Existem quatro tipos de sub-clipes no serviço de vídeo sob demanda não hierárquico ciente do desempenho: sub-clipe vazio, sub-clipe transferido, sub-clipe transmitido continuamente e sub-clipe no processo de transferência. Ambos os sub-clipes transmitidos continuamente e sub-clipes no processo de transferência colocam em cache porções dos dados do sub-clipe de modo que eles são tratados aqui da mesma forma como sub-clipes vazios. Isso simplifica o problema e um número conservador de sub-clipes trans- mitidos continuamente é assim calculado. A aplicação da transmissão contínua complemen- tar se uma porção dos dados está disponível no armazenamento temporário é recomenda- da.
A figura 2 é um fluxograma do processo para calcular o número real de sub-clipes transmitidos continuamente para as operações de avanço rápido, salto para frente e salto para trás. O valor de retorno é inicializado em 205. O contador do sub-clipe atual é iniciali- zado para o próximo sub-clipe em 210. Uma determinação é feita em 215 se o sub-clipe atual está totalmente em cache. Se o sub-clipe atual está totalmente em cache, então retor- nar com o valor de retorno em 220. Se o sub-clipe atual não está totalmente em cache, en- tão incrementar o valor de retorno em 225 e a seguir incrementar o contador do sub-clipe atual em 230. O processo essencialmente circula através dos ri sub-clipes. Se o sub-clipe k está totalmente em cache, toda a largura de banda do enlace descendente fica disponível para transferir os dados do próximo sub-clipe vazio. Desde que a velocidade do enlace des- cendente é sempre maior do que a taxa de reprodução (de outra forma nenhum serviço de vídeo sob demanda pode ser provido em primeiro lugar), o sub-clipe vazio será totalmente transferido antes do seu prazo. Portanto, quaisquer sub-clipes vazios depois do sub-clipe k podem ser transferidos antes dos seus prazos, e nenhuma transmissão contínua direta é necessária.
A seguir, como ajustar os prazos do sub-clipe para acomodar as operações de salto para frente/para trás é considerado. Deixemos t representar o tempo atual e dk representar
o novo prazo do k° sub-clipe. A seguir, a equação seguinte é deduzida
<formula>formula see original document page 7</formula>
(Equação 2)
para i < k< N, onde L é a duração de um sub-clipe. O suporte da operação de pausa no serviço de vídeo sob demanda não hierárquico ciente do desempenho é direto - apenas parar a reprodução de vídeo e pausar qualquer transmissão contínua ou transferência em andamento. Os prazos do sub-clipe são alterados para serem infinitos para adiar o processo de transferência. Observe que a operação de pausa ocorre somente nos sub-clipes transmitidos continuamente e sub-clipes transferidos.
A operação de reinicio é manipulada diferentemente dependendo do tipo de sub- clipe. Suponha que o vídeo é pausado no sub-clipe /'. Se o sub-clipe atual é um sub-clipe transmitido continuamente, o usuário através do dispositivo de reprodução de vídeo sinaliza o servidor para reiniciar a reprodução. O servidor também reinicia a transmissão contínua dos sub-clipes que foram designados para serem transmitidos continuamente antes que a operação de pausa fosse invocada. A lógica atrás disso é que todas as ações ficam tempo- rariamente suspensas pela operação de pausa, e a operação de reinicio reinicia a transmis- são contínua sem mudar o estado do sistema. Enquanto isso, os prazos do sub-clipe são modificados para refletir o tempo decorrido incorrido pela operação de pausa. Suponha que o tempo de reprodução do ponto de reinicio para o começo do sub-clipe seguinte i +1 é tSObra e o tempo atual é t, a equação (2) é usada para calcular os novos prazos.
Se o ponto de pausa cai em um sub-clipe transferido, o usuário através do disposi- tivo de reprodução de vídeo reinicia a reprodução do sub-clipe atual imediatamente, reinicia o processo de transferência e os prazos dos sub-clipes seguintes são modificados usando a equação (2) também.
Para a operação de avanço rápido, o vídeo é reproduzido em uma taxa maior do que a taxa de reprodução normal. O fator de aceleração da operação de avanço rápido é representado por δ A taxa de reprodução para a operação de avanço rápido é δ · reprodução-
No seguinte, o número máximo de sub-clipes transmitidos continuamente, ri é cal- culado primeiro. A seguir, o número real de sub-clipes transmitidos continuamente é calcu- lado. Finalmente, a modificação dos prazos do sub-clipe é executada. Será óbvio que existe uma forte correlação entre a operação de salto para frente e a operação de avanço rápido.
O intervalo de tempo do ponto de reprodução de partida para o fim do sub-clipe a- tual é representado por tsobra. A taxa de reprodução para a operação de avanço rápido é re- presentada como rreproducao, isto é, rreproducao = δ · rreproducao. Assim, a seguinte relação é deduzi- da
(rdownlink ~ rplayback)(tleflover -n L)/δ ≥ rplaybackL (Equacao 3).
Deve ser observado que o segundo termo no lado esquerdo da equação (3) é divi- dido por δ para refletir o fato que a taxa de reprodução é acelerada por um fator de δ. Desde que n tem que ser um número inteiro e não maior do que N-i, a seguinte relação pode ser deduzida: <formula>formula see original document page 9</formula> (Equação 4)
O método da figura 2 pode ser aplicado para encontrar o número real de sub-clipes transmitidos continuamente. O prazo ajustado para o sub-clipe k, i <k< Né assim
<formula>formula see original document page 9</formula>
O tempo de sobra para a operação de reverso rápido é o intervalo de tempo do ponto de reprodução atual para o começo do sub-clipe atual. Usando Uobra para representar o tempo de sobra para a operação de reverso rápido, o número máximo de sub-clipes transmitidos continuamente é:
<formula>formula see original document page 9</formula>
(Equação 6)
A equação 4 e a equação 6 são similares, exceto pelo último termo, que pode ser explicado pelas direções de reprodução opostas. Também deve ser observado que ambas as operações de avanço rápido e reverso rápido podem ser implementadas para múltiplas velocidades em qualquer direção.
O método ilustrado na figura 2 precisa somente ser modificado ligeiramente para calcular o número real de sub-clipes transmitidos continuamente para a operação de reverso rápido. Mais especificamente, k é retrocedido (decrementado) de N para i-n na etapa 230.
O prazo para o sub-clipe k, l<k<i, pode ser calculado como segue:
<formula>formula see original document page 9</formula>
A figura 3 é um diagrama esquemático de um dispositivo de reprodução de vídeo. As operações de reprodução de vídeo são suportadas através de um botão no dispositivo de reprodução de vídeo ou através de um botão ativado por um usuário de um dispositivo de controle remoto ou um comando de software ativado, por exemplo, por um comando de voz. Os dispositivos para invocar as operações de reprodução de vídeo não são limitados a es- ses sugeridos acima, que são modalidades meramente ilustrativas de tal modo para invocar as operações de reprodução de vídeo.
A figura 4 é um fluxograma representando o processo de controle de admissão do lado do usuário/cliente. No lado do usuário/cliente, depois que o cliente recebe a resposta do servidor, uma verificação é feita para determinar se a solicitação/demanda foi admitida testando o valor de N (o número principal dos sub-clipes a serem transmitidos continuamen- te para o cliente a partir do servidor) em 405. Se o valor de N é maior do que zero, então a solicitação/demanda foi admitida e o usuário começa a receber os N sub-clipes transmitidos continuamente em 410. Deve ser observado que o ajuste de N = -1 no lado do servidor e o teste de N > 0 no lado do usuário/cliente é apenas uma implementação possível. O teste de admissão da solicitação poderia, por exemplo, ser implementado por meio de um indicador ou qualquer outro modo adequado. O número do sub-clipe atual, Nc, é ajustado para N+1 (o próximo sub-clipe - o sub-clipe a ser transferido) em 415. Um teste é então executado em 420 para determinar se existem mais sub-clipes para transferir. Se a solicitação/demanda não foi admitida ou todos os sub-clipes do vídeo foram recebidos pelo usuário, então o pro- cesso termina. Enquanto isso, um par dentro da rede hierárquica tendo/caching o (N + 1)° sub-clipe é localizado e começa a transferência do (N + 1)° sub-clipe para o par que precisa do (N + 1)° sub-clipe em 425. Se for determinado que o prazo, d, para a transferência (me- dida contra o tempo atual, t) não foi alcançado em 430, então a transferência continua em 435. Se for determinado que o prazo, d, foi alcançado (quando medido contra o tempo atual, t) em 430, então um vetor de dados ausentes é preparado em 440. Na realidade, o vetor de dados ausentes é preparado ligeiramente antes do prazo ou quando é determinado que a transferência não pode ser completada antes do prazo, d. Se a transferência não pode ser completada antes do prazo, então um teste é executado para determinar se a transmissão contínua complementar é necessária em 445. A transmissão contínua complementar será descrita em mais detalhes abaixo. Enquanto isso, o contador do sub-clipe atual é incremen- tado em 455. Se a transmissão contínua complementar é necessária para garantir que o desempenho do sistema (chegada de sub-clipes pelo usuário antes dos prazos) seja encon- trado, então a transmissão contínua complementar é invocada em 450. Quando o prazo, d, para a transferência do (N + 1)° sub-clipe é alcançado, o usuário começa a reproduzir o (N + 1)° sub-clipe e um par dentro da rede não hierárquica tendo/caching o sub-clipe seguinte é localizado e começa o processo de transferência do sub-clipe de vídeo.
A figura 5 é um diagrama de blocos das operações de reprodução de vídeo dentro de um dispositivo de reprodução de vídeo, onde os módulos operacionais são dirigidos por um módulo de controle. O módulo de controle chama/invoca os módulos funcionais/de ope- ração de reprodução de vídeo correspondentes para quaisquer solicitações de reprodução. Deve ser observado que uma operação de reprodução direta não é discutida aqui já que ela é o assunto de uma operação relacionada.
A figura 6 é um fluxograma da operação de um módulo de controle exemplar de a- cordo com a presente invenção. O módulo de controle determina o tipo do sub-clipe em 605. O tipo da operação é determinado por 610, 620, 630, 640, 650 e 660. Se o usuário pressio- nou um botão (ou falou um comando) para invocar uma função não suportada, então ela é ignorada. Ao invés de uma série de pontos de decisão, um único ponto de decisão "típico do caso" poderia ser implementado. Se a operação de reprodução de vídeo é um salto para frente (JF), então em 615 uma determinação do número máximo de sub-clipes necessários para transmitir continuamente é feita, a determinação do número real de sub-clipes a ser transmitido continuamente é feita com base no que já está totalmente em cache, a transmis- são contínua do sub-clipe contendo o TPP é iniciada (se o sub-clipe contendo o TPP não está totalmente em cache), novos prazos de sub-clipes são calculados, a reprodução é inici- ada e a transferência dos sub-clipes além dos sub-clipes transmitidos continuamente é inici- ada. O mesmo procedimento se aplica para a operação de salto para trás.
Se a operação de reprodução de vídeo é uma operação de pausa, então em 635, a reprodução do vídeo é parada, a transmissão contínua é parada, a transferência é parada e os prazos do sub-clipe são ajustados para infinito. Se a operação de reprodução de vídeo é uma operação de reinicio, então em 645, novos prazos do sub-clipe são calculados como um resultado da operação de pausa, se sub-clipes estavam sendo transmitidos continua- mente, então reiniciar a transmissão contínua dos sub-clipes, iniciar a reprodução do vídeo e reiniciar a transferência de quaisquer sub-clipes que foram programados para serem transfe- ridos.
Se a operação de reprodução de vídeo é uma operação de avanço rápido, então em 655, um cálculo é feito da nova taxa de reprodução acelerada, uma determinação do número máximo de sub-clipes necessários para transmitir continuamente é feita, uma de- terminação do número real de sub-clipes a serem transmitidos continuamente é feita com base no que já está totalmente em cache, a transmissão contínua do sub-clipe contendo o TPP é iniciada (se o sub-clipe contendo o TPP não está totalmente em cache), novos prazos de sub-clipes são calculados, a reprodução é iniciada e a transferência dos sub-clipes além dos sub-clipes transmitidos continuamente é iniciada. O procedimento similar se aplica para a operação de reverso rápido, exceto que a equação 6 substitui a equação 4 no cálculo do número real de sub-clipes transmitidos continuamente. Deve ser lembrado que ambos o avanço rápido e o reverso rápido podem ser implementados para múltiplas velocidades em qualquer direção.
É para ser entendido que a presente invenção pode ser implementada em várias formas de hardware, software, firmware, processadores de uso especial ou uma combina- ção desses. De preferência, a presente invenção é implementada como uma combinação de hardware e software. Além do mais, o software é, de preferência, implementado como um programa aplicativo personificado de modo tangível em um dispositivo de armazenamento de programa. O programa aplicativo pode ser transferido para, e executado por, uma má- quina compreendendo qualquer arquitetura adequada. De preferência, a máquina é imple- mentada em uma plataforma de computador tendo hardware tal como uma ou mais unida- des de processamento central (CPU), uma memória de acesso aleatório (RAM) e interfa- ce(s) de entrada/saída (l/O). A plataforma de computador também inclui um sistema opera- cional e código de microinstrução. Os vários processos e funções descritos aqui podem ser parte do código de microinstrução ou parte do programa aplicativo (ou uma combinação desses), que é executado através do sistema operacional. Além do que, vários outros dispo- sitivos periféricos podem ser conectados na plataforma de computador tais como um dispo- sitivo de armazenamento de dados adicional e um dispositivo de impressão.
É também para ser entendido que, pelo fato de que alguns componentes do siste- ma constituinte e etapas do método representados nas figuras acompanhantes são, de pre- ferência, implementados em software, as conexões reais entre os componentes do sistema (ou as etapas do processo) podem diferir dependendo da maneira na qual a presente inven- ção é programada. Dados os ensinamentos daqui, um versado na técnica relevante será capaz de considerar essas e implementações ou configurações similares da presente inven- ção.
Claims (18)
1. Método para suportar operações de reprodução de vídeo para um serviço de ví- deo sob demanda não hierárquico, o dito método CARACTERIZADO pelo fato de que com- preende: detectar uma operação de reprodução de vídeo e detectar um tipo de sub-clipe.
2. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que também compreende: receber um sub-clipe de vídeo principal transmitido continuamente, determinar um conjunto de sub-clipes de vídeo necessários, localizar um do dito conjunto de sub-clipes de vídeo necessários e transferir o dito sub-clipe de vídeo localizado.
3. Método, de acordo com a reivindicação 1, CARACTERIZADO pelo fato de que o dito serviço de vídeo sob demanda não hierárquico é ciente do desempenho.
4. Método, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de salto para frente e também compreende: determinar um número máximo de sub-clipes a transmitir continuamente, determinar um número real de sub-clipes a transmitir continuamente, transmitir continuamente um sub-clipe contendo um ponto de reprodução alvo, calcular prazos do sub-clipe, iniciar a reprodução do vídeo, transferir sub-clipes seguinte ao dito sub-clipe transmitido continuamente.
5. Método, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de salto para trás e também compreende: determinar um número máximo de sub-clipes a transmitir continuamente, determinar um número real de sub-clipes a transmitir continuamente, transmitir continuamente um sub-clipe contendo um ponto de reprodução alvo, iniciar a reprodução do vídeo em um sub-clipe contendo um ponto de reprodução alvo, calcular prazos do sub-clipe e transferir sub-clipes seguinte ao dito sub-clipe transmitido continuamente.
6. Método, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de pausa e também compreende: parar a reprodução do vídeo, parar a transmissão contínua do sub-clipe, parar a transferência do sub-clipe e ajustar os prazos do sub-clipe para infinito.
7. Método, de acordo com a reivindicação 6, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de reinicio e também compreende: calcular novos prazos do sub-clipe, reiniciar a transmissão contínua do sub-clipe, se os sub-clipes estavam sendo transmitidos continuamente, iniciar a reprodução do vídeo e reiniciar a transferência do sub-clipe de quaisquer sub-clipes que estavam sendo transferidos quando a dita operação de pausa foi invocada.
8. Método, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de avanço rápido e também compreende: calcular uma taxa de reprodução acelerada, determinar um número máximo de sub-clipes a transmitir continuamente, determinar um número real de sub-clipes a transmitir continuamente, transmitir continuamente os sub-clipes, calcular os prazos do sub-clipe, iniciar a reprodução do vídeo, transferir os sub-clipes seguintes ao dito sub-clipe transmitido continuamente.
9. Método, de acordo com a reivindicação 2, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de reverso rápido e também compreende: calcular uma taxa de reprodução acelerada, determinar um número máximo de sub-clipes a transmitir continuamente, determinar um número real de sub-clipes a transmitir continuamente, transmitir continuamente os sub-clipes, iniciar a reprodução de vídeo, calcular os prazos do sub-clipe e transferir os sub-clipes precedentes ao dito sub-clipe transmitido continuamente.
10. Aparelho para suportar operações de reprodução de vídeo para um serviço de vídeo sob demanda não hierárquico, CARACTERIZADO pelo fato de que compreende: dispositivo para detectar um tipo de sub-clipe e dispositivo para detectar uma operação de reprodução de vídeo.
11. Aparelho, de acordo com a reivindicação 10, CARACTERIZADO pelo fato de que também compreende: dispositivo para receber um sub-clipe de vídeo principal transmitido continuamente, dispositivo para determinar um conjunto de sub-clipes de vídeo necessários, dispositivo para localizar um do dito conjunto de sub-clipes de vídeo necessários e dispositivo para transferir o dito sub-clipe de vídeo localizado.
12. Aparelho, de acordo com a reivindicação 10, CARACTERIZADO pelo fato de que o dito serviço de vídeo sob demanda não hierárquico é ciente do desempenho.
13. Aparelho, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de salto para frente e também compre- ende: dispositivo para determinar um número máximo de sub-clipes a transmitir continu- amente, dispositivo para determinar um número real de sub-clipes a transmitir continuamen- te, dispositivo para transmitir continuamente um sub-clipe contendo um ponto de re- produção alvo, dispositivo para calcular prazos do sub-clipe, dispositivo para iniciar a reprodução do vídeo, dispositivo para transferir sub-clipes seguinte ao dito sub-clipe transmitido continu- amente.
14. Aparelho, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de salto para trás e também compreen- de: dispositivo para determinar um número máximo de sub-clipes a transmitir continu- amente, dispositivo para determinar um número real de sub-clipes a transmitir continuamen- te, dispositivo para transmitir continuamente um sub-clipe contendo um ponto de re- produção alvo, dispositivo para iniciar a reprodução do vídeo em um sub-clipe contendo um ponto de reprodução alvo, dispositivo para calcular prazos do sub-clipe e dispositivo para transferir sub-clipes seguinte ao dito sub-clipe transmitido continu- amente.
15. Aparelho, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de pausa e também compreende: dispositivo para parar a reprodução do vídeo, dispositivo para parar a transmissão contínua do sub-clipe, parar a transferência do sub-clipe e ajustar os prazos do sub-clipe para infinito.
16. Aparelho, de acordo com a reivindicação 15, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de reinicio e também compreende: dispositivo para calcular novos prazos do sub-clipe, dispositivo para reiniciar a transmissão contínua do sub-clipe, se os sub-clipes es- tavam sendo transmitidos continuamente, dispositivo para iniciar a reprodução do vídeo e dispositivo para reiniciar a transferência do sub-clipe de quaisquer sub-clipes que estavam sendo transferidos quando a dita operação de pausa foi invocada.
17. Aparelho, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de avanço rápido e também compreen- de: dispositivo para calcular uma taxa de reprodução acelerada, dispositivo para determinar um número máximo de sub-clipes a transmitir continu- amente, dispositivo para determinar um número real de sub-clipes a transmitir continuamen- te, dispositivo para transmitir continuamente os sub-clipes, dispositivo para calcular os prazos do sub-clipe, dispositivo para iniciar a reprodução do vídeo, dispositivo para transferir os sub-clipes seguintes ao dito sub-clipe transmitido con- tinuamente.
18. Aparelho, de acordo com a reivindicação 11, CARACTERIZADO pelo fato de que a dita operação de reprodução de vídeo é uma de reverso rápido e também compreen- de: dispositivo para calcular uma taxa de reprodução acelerada, dispositivo para determinar um número máximo de sub-clipes a transmitir continu- amente, dispositivo para determinar um número real de sub-clipes a transmitir continuamen- te, dispositivo para transmitir continuamente os sub-clipes, dispositivo para iniciar a reprodução de vídeo, dispositivo para calcular os prazos do sub-clipe e dispositivo para transferir os sub-clipes precedentes ao dito sub-clipe transmitido continuamente.
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| PCT/US2006/024975 WO2008002296A1 (en) | 2006-06-27 | 2006-06-27 | Support for interactive playback devices for performance aware peer-to-peer video-on-demand service |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| BRPI0621785A2 true BRPI0621785A2 (pt) | 2011-12-20 |
Family
ID=38845927
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| BRPI0621785-0A BRPI0621785A2 (pt) | 2006-06-27 | 2006-06-27 | suporte para dispositivos de reprodução interativos para serviço de conteúdo sob demanda não hierárquico ciente do desempenho |
Country Status (7)
| Country | Link |
|---|---|
| US (1) | US8688852B2 (pt) |
| EP (1) | EP2036346A4 (pt) |
| JP (1) | JP2009543439A (pt) |
| KR (1) | KR101207050B1 (pt) |
| CN (1) | CN101480051B (pt) |
| BR (1) | BRPI0621785A2 (pt) |
| WO (1) | WO2008002296A1 (pt) |
Families Citing this family (18)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US8238727B2 (en) * | 2005-06-03 | 2012-08-07 | The Nielsen Company (Us), Llc | Methods and apparatus to detect a time-shift event associated with the presentation of media content |
| US8019830B2 (en) * | 2007-04-16 | 2011-09-13 | Mark Thompson | Methods and apparatus for acquiring file segments |
| US20090199250A1 (en) * | 2007-08-08 | 2009-08-06 | Harmonic Inc. | Methods and System for Data Transfer Over Hybrid Fiber Cable Infrastructure |
| US8015311B2 (en) * | 2007-09-21 | 2011-09-06 | Polytechnic Institute Of New York University | Reducing or minimizing delays in peer-to-peer communications such as peer-to-peer video streaming |
| US20090132355A1 (en) * | 2007-11-19 | 2009-05-21 | Att Knowledge Ventures L.P. | System and method for automatically selecting advertising for video data |
| US8683354B2 (en) * | 2008-10-16 | 2014-03-25 | At&T Intellectual Property I, L.P. | System and method for distributing an avatar |
| US8782267B2 (en) | 2009-05-29 | 2014-07-15 | Comcast Cable Communications, Llc | Methods, systems, devices, and computer-readable media for delivering additional content using a multicast streaming |
| JP5054215B2 (ja) * | 2010-05-13 | 2012-10-24 | キヤノン株式会社 | 映像再生装置およびその制御方法およびプログラム |
| US9767194B2 (en) | 2011-11-07 | 2017-09-19 | International Business Machines Corporation | Media file abbreviation retrieval |
| US9483110B2 (en) | 2011-11-07 | 2016-11-01 | International Business Machines Corporation | Adaptive media file rewind |
| US9544366B2 (en) | 2012-12-19 | 2017-01-10 | Hive Streaming Ab | Highest bandwidth download request policy in a live streaming P2P network |
| US9680926B2 (en) | 2012-12-19 | 2017-06-13 | Hive Streaming Ab | Nearest peer download request policy in a live streaming P2P network |
| US9591070B2 (en) * | 2012-12-19 | 2017-03-07 | Hive Streaming Ab | Multiple requests for content download in a live streaming P2P network |
| CN104254020B (zh) * | 2013-09-25 | 2015-12-02 | 腾讯科技(深圳)有限公司 | 媒体数据的播放方法、装置及终端 |
| US9852163B2 (en) | 2013-12-30 | 2017-12-26 | The Nielsen Company (Us), Llc | Methods and apparatus to de-duplicate impression information |
| US11151898B1 (en) * | 2020-04-15 | 2021-10-19 | Klatt Works, Inc. | Techniques for enhancing workflows relating to equipment maintenance |
| JP7559437B2 (ja) * | 2020-09-01 | 2024-10-02 | ヤマハ株式会社 | 通信制御方法 |
| US11520980B2 (en) | 2020-11-25 | 2022-12-06 | Klatt Works, Inc. | Techniques for enhancing an electronic document with an interactive workflow |
Family Cites Families (26)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| US20020114465A1 (en) | 2000-01-05 | 2002-08-22 | Shen-Orr D. Chaim | Digital content delivery system and method |
| US6949022B1 (en) * | 2000-11-22 | 2005-09-27 | Trilogy Development Group, Inc. | Distributed secrets for validation of gaming transactions |
| WO2002082275A1 (en) * | 2001-04-09 | 2002-10-17 | Monitoring Technology Corporation | Data recording and playback system and method |
| US6996618B2 (en) * | 2001-07-03 | 2006-02-07 | Hewlett-Packard Development Company, L.P. | Method for handling off multiple description streaming media sessions between servers in fixed and mobile streaming media systems |
| US7451205B2 (en) * | 2001-10-01 | 2008-11-11 | Hewlett-Packard Development Company, L.P. | Multimedia stream pre-fetching and redistribution in servers to accommodate mobile clients |
| US7133368B2 (en) * | 2002-02-01 | 2006-11-07 | Microsoft Corporation | Peer-to-peer method of quality of service (QoS) probing and analysis and infrastructure employing same |
| AU2003221854A1 (en) * | 2002-04-11 | 2003-10-27 | Ong Corp. | System for managing distribution of digital audio content |
| US8200747B2 (en) * | 2002-07-12 | 2012-06-12 | Hewlett-Packard Development Company, L.P. | Session handoff of segmented media data |
| US20040210663A1 (en) * | 2003-04-15 | 2004-10-21 | Paul Phillips | Object-aware transport-layer network processing engine |
| CN1276662C (zh) * | 2003-04-28 | 2006-09-20 | 中广大正信息科技有限公司 | 基于组播的广播式视频点播系统及其点播方法 |
| US20040225713A1 (en) * | 2003-05-07 | 2004-11-11 | Link2Link Corp. | System and method for multi-way remote and local device control, enabling recording and replay of control commands and data |
| US20050108203A1 (en) * | 2003-11-13 | 2005-05-19 | Chunqiang Tang | Sample-directed searching in a peer-to-peer system |
| US20050119976A1 (en) * | 2003-11-14 | 2005-06-02 | Crossflux Inc. | System and method for managing the performance of digital media in computer networks |
| US7555543B2 (en) * | 2003-12-19 | 2009-06-30 | Microsoft Corporation | Server architecture for network resource information routing |
| US7809388B1 (en) * | 2004-02-26 | 2010-10-05 | Core Mobility, Inc. | Selectively replaying voice data during a voice communication session |
| US20050210394A1 (en) * | 2004-03-16 | 2005-09-22 | Crandall Evan S | Method for providing concurrent audio-video and audio instant messaging sessions |
| US8234414B2 (en) * | 2004-03-31 | 2012-07-31 | Qurio Holdings, Inc. | Proxy caching in a photosharing peer-to-peer network to improve guest image viewing performance |
| US8868772B2 (en) | 2004-04-30 | 2014-10-21 | Echostar Technologies L.L.C. | Apparatus, system, and method for adaptive-rate shifting of streaming content |
| US7698386B2 (en) * | 2004-11-16 | 2010-04-13 | Qurio Holdings, Inc. | Serving content from an off-line peer server in a photosharing peer-to-peer network in response to a guest request |
| US7668914B2 (en) * | 2005-03-28 | 2010-02-23 | Alcatel Lucent | Milestone synchronization in broadcast multimedia streams |
| TWI298128B (en) * | 2005-10-20 | 2008-06-21 | Ind Tech Res Inst | Method and system for managing distributed storage of digital contents |
| US8775655B2 (en) * | 2005-10-21 | 2014-07-08 | Roxbeam Media Network Corporation | System and method for presenting streaming media content |
| US8005889B1 (en) * | 2005-11-16 | 2011-08-23 | Qurio Holdings, Inc. | Systems, methods, and computer program products for synchronizing files in a photosharing peer-to-peer network |
| US20070174246A1 (en) * | 2006-01-25 | 2007-07-26 | Sigurdsson Johann T | Multiple client search method and system |
| US7672235B1 (en) * | 2006-06-14 | 2010-03-02 | Roxbeam Media Network Corporation | System and method for buffering real-time streaming content in a peer-to-peer overlay network |
| JP4518169B2 (ja) * | 2008-03-24 | 2010-08-04 | ブラザー工業株式会社 | ツリー型放送システム、モード切替指示方法、放送装置、及び放送処理プログラム |
-
2006
- 2006-06-27 BR BRPI0621785-0A patent/BRPI0621785A2/pt not_active IP Right Cessation
- 2006-06-27 JP JP2009518064A patent/JP2009543439A/ja active Pending
- 2006-06-27 US US12/227,961 patent/US8688852B2/en not_active Expired - Fee Related
- 2006-06-27 WO PCT/US2006/024975 patent/WO2008002296A1/en not_active Ceased
- 2006-06-27 EP EP06774101A patent/EP2036346A4/en not_active Withdrawn
- 2006-06-27 KR KR1020087031542A patent/KR101207050B1/ko not_active Expired - Fee Related
- 2006-06-27 CN CN200680055168.6A patent/CN101480051B/zh not_active Expired - Fee Related
Also Published As
| Publication number | Publication date |
|---|---|
| KR101207050B1 (ko) | 2012-11-30 |
| US8688852B2 (en) | 2014-04-01 |
| JP2009543439A (ja) | 2009-12-03 |
| CN101480051A (zh) | 2009-07-08 |
| EP2036346A4 (en) | 2009-09-16 |
| WO2008002296A1 (en) | 2008-01-03 |
| CN101480051B (zh) | 2011-06-29 |
| KR20090030277A (ko) | 2009-03-24 |
| EP2036346A1 (en) | 2009-03-18 |
| US20090202221A1 (en) | 2009-08-13 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| BRPI0621785A2 (pt) | suporte para dispositivos de reprodução interativos para serviço de conteúdo sob demanda não hierárquico ciente do desempenho | |
| CN101480050B (zh) | 性能感知的对等内容点播 | |
| ES2405627T3 (es) | Método y dispositivo para reducir el retardo de la reproducción de medios | |
| US9043504B2 (en) | Interfaces for digital media processing | |
| US10291673B2 (en) | Transcoding method and system, and distributed file apparatus | |
| BRPI0706409B1 (pt) | Método e sistema de distribuição de conteúdo multimídia | |
| WO2013155457A1 (en) | Live streaming video processing | |
| US12126664B2 (en) | Data download method and apparatus, computer device, and storage medium | |
| CN107920108A (zh) | 一种媒体资源的推送方法、客户端及服务器 | |
| JP2004080145A (ja) | 映像サーバシステム及びその映像再生方法 | |
| Liang et al. | ipass: Incentivized peer-assisted system for asynchronous streaming | |
| US11445246B1 (en) | Activity-based selection of replacement content | |
| Basu et al. | Implementation of dynamic service aggregation for interactive video delivery | |
| US11870830B1 (en) | Embedded streaming content management | |
| CN116527992A (zh) | 视频播放分辨率的切换方法及装置 | |
| AU2017321255A1 (en) | Data replication in scalable messaging system | |
| CN102638704B (zh) | 性能感知的对等内容点播 | |
| US12506926B2 (en) | HLS live seamless resume from pause | |
| US12047618B1 (en) | Seamless audience-aware encoding profile switching | |
| KR20200017323A (ko) | 다중화 스트리밍 및 네트워크 장치 및 그 동작 방법 | |
| Chen et al. | Multiple-server movie-retrieval strategies for distributed multimedia applications: A play-while-retrieve approach | |
| KR20070060990A (ko) | 고성능 스트리밍 서버 시스템에서 컨텐트 설치장치 및 방법 | |
| JP2004080632A (ja) | 動画配信システム及び方法 | |
| KR101083013B1 (ko) | 데이터 전송 시스템 및 데이터 전송 방법 | |
| WO2012113255A1 (zh) | 传输流媒体数据的方法及流化传输装置 |
Legal Events
| Date | Code | Title | Description |
|---|---|---|---|
| B08F | Application dismissed because of non-payment of annual fees [chapter 8.6 patent gazette] | ||
| B08K | Patent lapsed as no evidence of payment of the annual fee has been furnished to inpi [chapter 8.11 patent gazette] | ||
| B15K | Others concerning applications: alteration of classification |
Ipc: H04N 7/173 (2011.01) |