BRPI9915937B1 - sistema de multimídia para estender as capacidades nativas de uma linguagem de conteúdo digital - Google Patents
sistema de multimídia para estender as capacidades nativas de uma linguagem de conteúdo digital Download PDFInfo
- Publication number
- BRPI9915937B1 BRPI9915937B1 BRPI9915937A BR9915937A BRPI9915937B1 BR PI9915937 B1 BRPI9915937 B1 BR PI9915937B1 BR PI9915937 A BRPI9915937 A BR PI9915937A BR 9915937 A BR9915937 A BR 9915937A BR PI9915937 B1 BRPI9915937 B1 BR PI9915937B1
- Authority
- BR
- Brazil
- Prior art keywords
- interface
- memory
- objects
- digital content
- language
- Prior art date
Links
- 238000013139 quantization Methods 0.000 claims description 16
- 230000005540 biological transmission Effects 0.000 claims description 2
- 230000006835 compression Effects 0.000 claims description 2
- 238000007906 compression Methods 0.000 claims description 2
- 238000000034 method Methods 0.000 abstract description 17
- 238000011002 quantification Methods 0.000 description 8
- 238000013461 design Methods 0.000 description 4
- XXUZFRDUEGQHOV-UHFFFAOYSA-J strontium ranelate Chemical compound [Sr+2].[Sr+2].[O-]C(=O)CN(CC([O-])=O)C=1SC(C([O-])=O)=C(CC([O-])=O)C=1C#N XXUZFRDUEGQHOV-UHFFFAOYSA-J 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 3
- 238000004590 computer program Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 101100521334 Mus musculus Prom1 gene Proteins 0.000 description 1
- 230000003190 augmentative effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000003086 colorant Substances 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 238000010586 diagram Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/20—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding
- H04N19/25—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using video object coding with scene description coding, e.g. binary format for scenes [BIFS] compression
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/60—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding
- H04N19/61—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals using transform coding in combination with predictive coding
-
- 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/234—Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N19/00—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
- H04N19/70—Methods or arrangements for coding, decoding, compressing or decompressing digital video signals characterised by syntax aspects related to video coding, e.g. related to compression standards
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Processing Or Creating Images (AREA)
- Compression Or Coding Systems Of Tv Signals (AREA)
- Compression, Expansion, Code Conversion, And Decoders (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
patente de invenção:<b>''método e sistema para controlar fluxos de multimídia utilizando protótipos dinâmicos''<d>. a presenta invenção refere-se a um método e um sistema para codificar um conteúdo de multimídia utilizando interfaces dinâmicas. pelo fornecimento de uma interface extensível, programática para o conteúdo de uma cena, a cena pode ser mais eficientemente codificada do que uma cena na qual cada característica de cada objeto na cena é explicitamente especificada no fluxo de vídeo para cada quadro.
Description
Relatório Descritivo da Patente de Invenção para "SISTEMA DE MULTIMÍDIA PARA ESTENDER AS CAPACIDADES NATIVAS DE UMA LINGUAGEM DE CONTEÚDO DIGITAL".
CAMPO DA INVENÇÃO A presente invenção refere-se à um método aperfeiçoado para codificar seqüências de imagens geradas por computador, e mais particularmente à utilização de protótipos para codificar como as porções de um fluxo de vídeo devem ser quantificadas, animadas ou de outro modo atualizadas.
FUNDAMENTO DA INVENÇÃO
Apesar de que muitas imagens geradas por computador foram anteriormente geradas pela especificação de cada pixel em cada quadro juntos, as sequências de imagens de computador modernas frequentemente são criadas pela fusão de objetos de multimídia plurais (por exemplo, primitivos de vídeo e de gráficos em 2D e 3D) - algumas vezes com uma ou mais trilhas sonoras. Na área de multimídia, as imagens e/ou cenas são compostas utilizando uma linguagem. Por exemplo, a Linguagem de Marcação de HiperTexto (HTML) especifica a composição de texto bidimensional (2D) e os gráficos. Similarmente, a Linguagem de Marcação de Realidade Virtual (VRML) descreve os mundos tridimensionais (3D).
As linguagens de multimídia também agora incluem extensões para uma alteração dinâmica das imagens compostas. A HTML agora inclui extensões de HTML Dinâmica (DHTML), tais como estão descritas em HTML Dinâmica: A Referência Definitiva, por Danny Goodman, publicado por 0’Reilly & Associates, inc., 1998, o conteúdo do qual é incorporado aqui por referência. Mais ainda, as extensões XML para HTML fornecem uma meta-linguagem para descrever como a linguagem nativa deve ser modificada ou estendida.
Similarmente, a VRML inclui um suporte para "PROTO" definições as quais permitem que novos primitivos sejam "prototipados". Parte de uma definição é um bloco de códigos ou blocos de códigos plurais que são executados pelo ambiente de VRML para fornecer uma funcionalidade re- centemente prototipada. O Grupo de Especialistas de Filmes (MPEG) foi formado para investigar as tecnologias necessárias para a codificação e a decodificação de fluxos de imagens. O padrão resultante (agora referido como "MPEG-1") serviu como uma base para dois padrões MPEG adicionais: MPEG-2 e MPEG-4. O MPEG-4 é um padrão que está "em desenvolvimento". Os desenhos finais do comitê são os Sistemas ISO/IEC FCD 14496-1 MPEG-4 e -2 MPEG-4 Visual, o conteúdo dos desenhos finais do comitê estão incorporados aqui por referência. Estes desenhos incluem vários métodos para codificar o conteúdo de multimídia. Tais métodos incluem: (1) métodos de quantificação para parâmetros de cena, (2) fluxos de animação para codificar e transmitir as cenas de multimídia, e (3) atualizar os fluxos para modificar as informações de multimídia ao longo do tempo. O desenho finalizado de MPEG-4 inclui suporte para: (1) quantificação em Formato Binário para Cenas (daqui por diante "BIFS"), (2) animação utilizando BIFS (daqui por diante "BIFS-Anim") e (3) controle de atualização utilizando BIFS (daqui por diante "BIFS-Comando").
Utilizando a quantificação sob BIFS inclui identificar nós e campos com uma categoria de quantificação. A cada campo de cada nó é designada uma categoria de quantificação, a qual é aplicada ao campo quando é dada uma estrutura de parâmetro de quantificação para parametrizar durante o processo de quantificação. BIFS-Anim define um método de codificação para uma animação baseada em fluxo e arquivo de dados de multimídia. O BIFS-Anim inclui 3 componentes básicos: (1) um gráfico da cena, (2) uma máscara de animação, e (3) quadros de animação. A cena inclui (a) objetos não identificados que são estáticos e (b) objetos identificados que devem ser modificados. A máscara de animação determina as propriedades dos objetos identificados que devem ser modificados pelo fluxo de animação. O BIFS-Comando é um protocolo para atualizar os nós de BIFS e um gráfico de cena. Ele permite o transporte de mudanças para a cena enviando comandos para substituir a cena toda por outra, removendo alguns dos objetos identificados, ou mudando os valores das propriedades dos objetos identificados na cena.
SUMÁRIO DA INVENÇÃO É um objeto da presente invenção fornecer interfaces e/ou extensões de programação dinâmica para uma linguagem de conteúdo de multimídia e/ou uma linguagem de colocação de multimídia . É um outro objeto da presente invenção fornecer conexões para os métodos de animação, modificação e quantificação e fornecer novos protótipos para as cenas, de tal modo que as cenas possam ser representadas, animadas e modificadas eficientemente.
Estes e outros objetos da presente invenção são tratados por um ou mais de (1) um método implementado em computador para codificar o conteúdo de multimídia utilizando interfaces dinâmicas, (2) um sistema para codificar o conteúdo de multimídia utilizando interfaces dinâmicas, e (3) um produto de programa de computador para codificar o conteúdo de multimídia utilizando interfaces dinâmicas.
BREVE DESCRIÇÃO DOS DESENHOS
Uma apreciação mais completa da invenção e muitas das suas vantagens resultantes se tornarão prontamente aparentes com referência à descrição detalhada seguinte, particularmente quando considerada em conjunto com os desenhos acompanhantes, nos quais: Figura 1 é uma ilustração esquemática de um computador para implementar o método da presente invenção;
Figura 2 é um diagrama de blocos da inter-relação entre uma declaração de interface e uma declaração de cena; e Figura 3 é um exemplo de pseudocódigo para uma declaração de interface.
DESCRIÇÃO DA MODALIDADE PREFERIDA
Referindo agora aos desenhos, em que os números de referência iguais designam as partes idênticas ou correspondentes através das diversas vistas, a Figura 1 é uma ilustração esquemática de um sistema de computador para codificar um conteúdo de multimídia utilizando as interfa- ces dinâmicas. Um computador 100 implementa o método da presente invenção, em que o gabinete do computador 102 aloja uma placa mãe 104 a qual contém uma CPU 106, uma memória 108 (por exemplo, DRAM, ROM, EPROM, EEPROM, SRAM, SDRAM, e RAM Instantânea), e outros dispositivos lógicos de uso especial opcionais (por exemplo, ASICs) ou dispositivos lógicos configuráveis (por exemplo, GAL e FPGA reprogramável). O computador 100 também inclui dispositivos de entrada plurais, (por exemplo, um teclado 122 e um mouse 124), e uma placa de vídeo 110 para controlar o monitor 120. Em adição, o sistema de computador 100 ainda inclui um leitor de disco flexível 114; outros dispositivos de mídia removível (por exemplo, disco compacto 119, fita, e mídia magneto-ótica removível (não mostrada)); e um disco rígido 112, ou outros leitores de mídia de alta densidade fixos, conectados utilizando um barramento de dispositivos apropriado (por exemplo, um barramento SCSI um barramento IDE Aumentado, ou um barramento Ultra DMA). Também conectado no mesmo barramento de dispositivos ou em outro barramento de dispositivos, o computador 100 pode incluir adicionalmente um leitor de disco compacto 118, uma unidade de leitor / escritor de disco compacto (não mostrada) ou um toca-discos de disco compacto (não-mostrado). Apesar do disco compacto 119 ser mostrado em um suporte de CD, o disco compacto 119 pode ser inserido diretamente em leitores de CD-ROM que não requerem suportes. Em uma modalidade alternativa, a presente invenção é implementada como uma ou de uma combinação de: (1) uma caixa de decodificação (“set-top box”), (2) uma placa de vídeo, e/ou (3) uma unidade de recepção / reprodução. Em ainda outra modalidade alternativa, uma impressora (não mostrada) fornece listagens impressas de interfaces para a codificação do conteúdo de multimídia. O sistema inclui pelo menos um meio legível por computador. Exemplos do meio legível por computador são os discos compactos 119, os discos rígidos 112, os discos flexíveis, as fitas, os discos magneto-óticos, PROMs (EPROM, EEPROM, EPROM Instantânea), DRAM, SRAM, SDRAM, etc. Armazenada em qualquer uma ou em uma combinação de mídias legíveis por computador, a presente invenção inclui um software para controlar tanto o hardware do computador 100 quanto para permitir que o computador 100 interaja com um usuário humano. Tal software pode incluir, mas não está limitada a, dispositivos acionadores, sistemas de operação e aplicações do usuário, tais como as ferramentas de desenvolvimento. Tal mídia legível por computador ainda inclui o produto de programa de computador da presente invenção para codificar o conteúdo de multimídia utilizando as interfaces dinâmicas. Os dispositivos de código de computador da presente invenção podem ser qualquer mecanismo de código interpretado ou executável, incluindo, mas não limitado a rotinas, interpretadores, bibliotecas de conexão dinâmica, classes Java, e programas executáveis completos.
Como mostrado na Figura 2, um fluxo de multimídia é recebido pela presente invenção e decodificado em componentes de cena e componentes de interface. Os componentes de cena incluem informações tanto sobre (1) objetos digitais na cena quanto (2) como estes objetos são atualizados ou animados. Os componentes de interface incluem as definições de interface que, após a decodificação, são armazenados internamente, e, em uma modalidade, as definições são armazenadas, pelo menos parcialmente, em uma Tabela de Codificação de Interface. Em particular, a Tabela de Codificação de Interface se anexa a uma nova interface e armazena os elementos de codificação de uma dada definição de interface de modo a aplicar os métodos (por exemplo, os métodos de quantificação, animação e atualização) da linguagem de conteúdo digital (por exemplo, MPEG-4 BIFS ou VRML) aos componentes de cena.
Uma Tabela de Codificação de Interface inclui as seguintes informações: (1) um modo de atualização, (2) um modo de animação (ou um modo Anim), (3) uma categoria de quantificação, (4) parâmetros de quantificação, e (5) uma categoria de animação. Utilizando o modo de atualização, qualquer parâmetro pode ser declarado como um tipo "entrada”. Nas linguagens (por exemplo, a VRML) que sustenta definir os tipos de parâmetros, ou implicitamente ou explicitamente, os parâmetros não precisam ser definidos separadamente como um tipo “entrada”. Especificamente, a VRML permite que os parâmetros sejam definidos como Evento de Entrada (Eventln), Campo Exposto (ExposedField), Evento de Saída (EventOut), e Campo (Fi-eld). Tanto Evento de entrada (Eventln) quanto Campo Exposto (ExposedField) são, por definição parâmetros do tipo “entrada”. Quando utilizado, um tipo “entrada” indica que a interface pode receber atualizações adicionais do fluxo de multimídia (por exemplo, através de um fluxo de atualização tal como um fluxo de BIFS-Comando). O modo Anim pode operar sobre qualquer parâmetro na interface identificando um parâmetro com a categoria de animação correspondente. O modo de quantificação pode também operar sobre qualquer parâmetro na interface, identificando um parâmetro com a categoria de quantificação correspondente, e transmitindo parâmetros de quantificação adicionais opcionais.
Os fluxos de multimídia podem utilizar as informações da Tabela de Codificação de Interface (ICT) como segue: (1) para controlar a quantificação, (2) para atualizar uma porção de uma interface correspondente, e (3) para executar a animação através da interface. Especificamente, uma categoria de quantificação qc[i] associada com um parâmetro de interface ai é aplicado utilizando o valor da ICT qp[i] assim como outras informações con-textuais da cena. Isto permite que a declaração de interface seja comprimida quase que otimamente. Qualquer parâmetro de interface ai dado identificado em “modo de entrada (in)” pode ser modificado por um fluxo de atualização que modificará os valores da interface em um dado ponto no tempo. A interface pode ser animada utilizando um fluxo de animação contínuo para atualizar continuamente um dos valores. A categoria de animação ac[i] é utilizada neste caso. A Tabela de Codificação de Interface é parte da Declaração de Interface que tem a estrutura mostrada pelo exemplo na Figura 3. Os parâmetros particulares estão descritos abaixo. máscara ICT: Máscara de valores Booleanos para determinar qual informação está disponível para cada parâmetro. useQuant: Booleano para determinar se um parâmetro de quantificação é enviado para cada parâmetro. useUpdate: Booleano para determinar se a informação sobre o “modo de entrada (in)” é enviada para cada parâmetro assim como a informação de atualizar categoria. Como descrito acima, nas linguagens que já suportam definir independentemente se um parâmetro pode ser atualizado, este parâmetro é opcional. useAnim: Booleano para determinar se a informação sobre o "modo dyn" e a categoria de animação são enviados para cada parâmetro. Um processamento adicional é executado para cada parâmetro ai na interface. Como descrito abaixo com referência à Definição de PROTOinterface, o número de parâmetros é especificado na variável "numCampos". Assim, para cada parâmetro, as seguintes informações são (opcionalmente) especificadas: dados do modo de entrada: Informações sobre se este parâmetro da interface é "atualizável". Estas informações também podem vir da declaração de interface. dados de categoria quant: A categoria de quantificação a ser utilizada. Estes dados são usados quando "useQuant" é verdadeiro. dados de parâmetro quant: Os parâmetros de quantificação específicos para esta categoria: valores min e máx, e informações utilizadas para compressão - de acordo com o método de quantificação específica / quantificação inversa da categoria. Estes dados são utilizados quando "useQuant" é verdadeiro. dados de parâmetro anim: O esquema de animação escolhido para o campo específico. Estes dados são utilizados quando "useAnim" é verdadeiro.
No contexto de MPEG-4 e de VRML, a presente invenção permite que novas interfaces sejam definidas através de PROTOs e EXTERN-PROTOs. A única diferença entre PROTOs e EXTERNPROTOs é que o código que implementa a interface é fornecido no primeiro caso dentro da mesma descrição (PROTO), enquanto que no segundo caso é fornecida em um recurso externo.
Em ambos os caso, a utilização de uma ICT com a declaração de protótipo permite que as declarações de campo sejam identificadas com todos os parâmetros necessários para codificar, animar e atualizar os nós posteriormente. Em MPEG-4, a ICT inclui as seguintes informações: (1) uma categoria de quantificação (ver Tabela 1), (2) uma categoria de animação (ver Tabela 2), e (3) parâmetros de quantificação (incluindo os valores mínimos e máximos para o campo). TABELA 1: Categorias de Quantificação TABELA 2: Categorias de Animação Com esta informações juntamente com a definição PROTO, um terminal de MPEG-4 será capaz de gerar uma Tabela de Codificação de Nós necessária para codificar, atualizar e animar um nó. Abaixo está um exemplo típico de uma Tabela de Codificação de Nós para um nó de Luz Direcional. Os valores mín. e max assim como os tipos de Quantificação (Q) e Animação (A) são fornecidos. Todas as ids são automaticamente deduzidas da declaração de campo. Os Tipos de Dados de Nós (SFWorldNode, SF3Dnode) e as suas ids correspondentes são utilizados para determinar o contexto no qual o nó pode ser utilizado. Os PROTOs recebem uma categoria de nó específica. TABELA 4 : Tipos de MPEG-4 Sintaxe Binária O seguinte é a sintaxe binária para a definição de PROTO com a Tabela de Codificação de Interface correspondente. A sintaxe de fluxo de bits binária é especificada acompanhando a linguagem de MPEG-4 MSDL. 1.0 PROTOdeclaration PROTOdeclaration () { PROTOcode(); protoCodingtabie (); } 2.0 PROTOinterfacelDefinition class PROTOinterfaceDefinítion { bit (id Bits) id; //A identificação de usuário para referência ao Proto Bit (5) type; // tipo contextual, usando últimos 5 bits, tabela 1. bit (4) fieldBits; // Número de números de especificação de campos bit (fieldBits) numfields; // Número de camposm e eventos no proto for (l=0); KNUMflELDS; ++I) { bit (2) eventType; // Evento de entrada (Eventln), Evento de Saída (EventOut), campo ou campo exporto bit (6) fieldType; // O tipo de cmapo, usando tabela 1 3.0 PROTOcode class PROTOcode { bit (1) isExtern // Este é um proto externo if (isExtern) { // Ler URL para localização de defs de PROTO MFUrl locations; } else { do { SFNode node (SFWorldNodeType, true); bit (1) moreNodes; } while (moreNodes); 4.0 SFNode class SFNode (ir.t nodeDataType,boolean ISED) ( bit(l) isReused ; if (isReused) ( bit(BIFSConfig.nodelDbits! nodelD; ) else ( bit (GetNDTnbBits(nodeDataType)> localNodeType; nodeType - GetNodeType (nodeDataType, localNodeType ) ; bit(l) isUpdateable; if (isUpdateable) { bit(BIFSConfig.nodelDbits) nodelD; ) bit(l) MaskAccess; if (MaskAccess) ( if (ISED) isedMaskNodeDescription node(MakeNode(nodeDataType, nodeType)); else MaskNoaeDescrcpcicn mnode(MakeNode(nodeDataType, nodeType));
I else { if (ISED) isedLiscNodeDescription mnode(MakeNode(nodeDataType, nodeType >); else ListNodeDescription lnode(MakeNode(nodeDataType, nodeType)); ) ) ) 5.0 isedMaskNodeDescription class isedMaskNodeDescription(NadeData node) ( for (i=0; i<node.numDEFfields; i + +) ( bit(l) Mask; if (Mask) ( if (node. nodeType =*· PROTO) { bit(1) ISedField; if (IsedField) bit(node.numDEFfields;) protoField; else Field value (node.field(node.de£2all[i]] ) ; > else | Field value(node.field[node.def2all[i]]); ) ) I Ζ/ I ο . 6.0 isedUstNodeDescription class isedListNodeDescription (NodeData node) { bit(l) endFlaa; while (!EndFlag)( int (node.r.DEFbits) fieldRef; if [node. r.odeType =«■ PROTO) ( bitU) ISedField; if (IsedField) bit(node . numDDFf ields ,·) protoField; el se Field value(node.field[node.def2allfi]]) ; > else { Field value(node . field(node.def2allIi])); bit(l) endFlag; ) ) 7.0 protoCodingTable InterfaceCodingTablei) ;
InterfaceCodingMask;
InterfaceCodingParameters; > 8.0 pratoCodingMask InterfaceCodingMask[) ( boolean useQuant; boolean useUpdate,' boolean useAnim; ) 9.0 protoCodingParameters InterfaceCodingParameters() ( for (i =0; i < proto.NbdefFields; i++) i if (useQuant) ( ui nt(4) quantCategory; if (quantCategory «·« 13) uint(5) nbBits,· bit(l) hasMinMax; if (hasMinMax) ( SFField(fieldType) minFieldValue; SFField (fieldType) i"·'--*'- - ’ HValue;
I ) / / REM: aqui não precisamos de um "isDpdatable" / / já que ele vem de maneira automática / / do "event and field type" if (useAnim) { boolean isDyní if (isDyn) { uint(4) animCategory; ) i ) Uma utilização ilustrativa da presente invenção utiliza os PRO-TOtipos em uma aplicação de MPEG-4 para implementar uma aplicação pro- fissional colaborativa que permite que múltiplos engenheiros trabalhem simultaneamente em um modelo / projeto (por exemplo, um modelo de barco) de locais remotos e ainda vejam as mudanças em tempo real. Os engenheiros executam as experiências no projeto e querem que todos os locais obtenham os resultados das experiências simultaneamente, enquanto utilizando a transmissão mais eficientemente comprimida para se adaptar a uma conexão de rede de baixa taxa de bits. Mais ainda, o sistema deve ser genérico o bastante para acomodar vários projetos. Utilizando a estrutura de MPEG-4 para esta aplicação, uma estrutura genérica e eficiente é obtida para todo o projeto de comunicação e de aplicação, ao invés de designar uma aplicação específica, e potencialmente sub-ótima, para cada caso.
Para este exemplo, um modelo de barco em 3D que inclui 10.000 polígonos feitos com 20.000 vértices é assumido. Na experiência, os engenheiros querem analisar e controlar a deformação do barco que resulta de certos ventos. Geralmente a deformação seria controlada por diversos parâmetros, por exemplo, a velocidade e a direção do vento, e a altura das ondas. O barco é então definido como um PROTO aumentado em MPEG-4, e quando da recepção de novos valores, uma Rotina dentro do PROTO calcula os novos parâmetros dos vértices. Deste modo, os engenheiros podem executar uma simulação ao vivo e transmitir, utilizando o protocolo BIFS-Anim somente por alguns parâmetros codificados otimamente, ao invés de reenviar os 20.000 vértices. Adicionalmente, cada vez que novos resultados devem ser testados, os engenheiros precisam somente transmitir um novo conjunto de parâmetros utilizando o protocolo de BIFS-Comando.
Baseado no exemplo, o seguinte PROTOtipo pode ser definido: PROTO WindBoat [ exposedField SFVec3f windSpeed exposedField SFVec3f windOriervtaticn exposedField SFFloan waveHeight ] í Script { # ( Mudar vfétices de acordo com parâmetros } InaexedFaceSet # Modelo 3D do barco } Parâmetros da ICT
Os seguintes parâmetros de codificação podem ser associados na ICT.
Além de adicionar funcionalidade, a presente invenção produz os fluxos de bits codificados mais eficientemente. Comparações de taxas de bits podem ser feitas comparando as informações transmitidas sem e com a utilização da Interface PROTO. O ganho pode ser medido por um instanta-neamento PROTO (colocando um barco em uma cena), para uma atualização de PROTO (mudar valores remotamente), ou para animação. O tamanho em bytes para cada dado a ser transmitido é comparado. Note que se PROTOs comuns sem ICT fossem utilizados, então a funcionalidade de atualização e de animação não estaria disponível.
Como um segundo exemplo, a presente invenção pode ser utilizada para animar uma bola que pula. Ao invés de enviar um fluxo de comandos para atualizar cada polígono da bola em cada quadro, uma interface é criada a qual controla a animação. A interface define um parâmetro para controlar a altura da bola do solo. De modo a animar a bola, somente o parâmetro de altura precisa ser mudado para cada quadro - a rotina da interface executa a atualização real dos vértices. Similarmente, se a interface da bola incluía um segundo parâmetro para a cor, a cor de cada polígono seria mudada por uma rotina ao invés de pela animação das cores dos polígonos individualmente.
Apesar da presente invenção ter sido descrito acima em termos de uma interface que estende os métodos nativos fornecidos por uma lin- guagem, a presente invenção está ainda direcionada para fornecer interfaces para interfaces. Do mesmo modo como os objetos podem herdar um comportamento das classes superiores, assim podem as interfaces herdar uma funcionalidade de interfaces anteriormente instantaneadas.
Como seria evidente para alguém versado na técnica, o método e o sistema da presente invenção pode ser praticado de outro modo além do explicitamente apresentado aqui sem se afastar do espírito da invenção. Portanto, a especificação não pretende ser limitante, e somente o escopo das reivindicações define os limites da invenção.
Claims (4)
1. Sistema de multimídia para estender as capacidades nativas de uma linguagem de conteúdo digital que compreende: um processador (106); uma primeira memória (108) incluindo uma linguagem de conteúdo digital com conjunto de capacidades nativas; e um decodificador para receber dados de BIFS de um fluxo MPEG-4, o decodificador transmitindo dados de BIFS decodificados como um fluxo de bits binários para uma interface a ser executada pelo processador (106) para quantizar, animar e atualizar os objetos digitais; caracterizado pelo fato de que ainda compreende: uma segunda memória (108) para receber, em um fluxo de entrada de vídeo, objetos digitais codificados e o referido protótipo da interface a ser executada pelo processador (106) para estender dinamicamente o conjunto de capacidades nativas da linguagem de conteúdo digital conforme definições do protótipo, as definições de protótipo definindo a interface como uma interface de compressão binária pela qual pelo menos valores dos objetos digitais recebidos são quantizados de forma parametrizada, os objetos digitais recebidos são animados de forma parametrizada e os objetos digitais recebidos são atualizados de forma parametrizada, sendo que o referido decodificador realiza a mencionada transmissão do referido fluxo de bits binários para a interface para a realização dinâmica da quantização, animação e atualização dos objetos digitais.
2. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que a linguagem de conteúdo digital é uma linguagem de marcação de realidade virtual que inclui uma extensão de protótipo.
3. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que a primeira memória (108) compreende uma memória não volátil.
4. Sistema, de acordo com a reivindicação 1, caracterizado pelo fato de que a segunda memória (108) compreende uma memória repro-gramável.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/205,192 US6195088B1 (en) | 1998-12-04 | 1998-12-04 | Method and system for controlling multimedia streams using dynamic prototypes |
PCT/US1999/026031 WO2000034922A1 (en) | 1998-12-04 | 1999-11-30 | Method and system for controlling multimedia streams using dynamic prototypes |
Publications (2)
Publication Number | Publication Date |
---|---|
BR9915937A BR9915937A (pt) | 2001-08-21 |
BRPI9915937B1 true BRPI9915937B1 (pt) | 2016-05-10 |
Family
ID=22761189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
BRPI9915937A BRPI9915937B1 (pt) | 1998-12-04 | 1999-11-30 | sistema de multimídia para estender as capacidades nativas de uma linguagem de conteúdo digital |
Country Status (11)
Country | Link |
---|---|
US (1) | US6195088B1 (pt) |
EP (1) | EP1138024A4 (pt) |
JP (2) | JP3908462B2 (pt) |
KR (1) | KR100510221B1 (pt) |
CN (1) | CN1203454C (pt) |
AU (1) | AU753885B2 (pt) |
BR (1) | BRPI9915937B1 (pt) |
CA (1) | CA2352293C (pt) |
IL (1) | IL143437A0 (pt) |
NO (1) | NO319076B1 (pt) |
WO (1) | WO2000034922A1 (pt) |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6654931B1 (en) * | 1998-01-27 | 2003-11-25 | At&T Corp. | Systems and methods for playing, browsing and interacting with MPEG-4 coded audio-visual objects |
US6934906B1 (en) | 1999-07-08 | 2005-08-23 | At&T Corp. | Methods and apparatus for integrating external applications into an MPEG-4 scene |
US7085995B2 (en) * | 2000-01-26 | 2006-08-01 | Sony Corporation | Information processing apparatus and processing method and program storage medium |
WO2001056281A1 (fr) * | 2000-01-26 | 2001-08-02 | Sony Corporation | Procede et systeme informatique et support d'enregistrement de programmes |
US6833840B2 (en) * | 2000-02-14 | 2004-12-21 | Optibase Ltd | PROTO implementation in MPEG-4 |
US6898320B2 (en) * | 2000-03-14 | 2005-05-24 | Samsung Electronics Co., Ltd. | Method for processing nodes in 3D scene and apparatus thereof |
US8296805B2 (en) * | 2000-05-30 | 2012-10-23 | Sony Corporation | Command description scheme providing for dynamic update of instance documents and their associated schema |
DE10030764A1 (de) * | 2000-06-23 | 2002-01-10 | Realspace Gmbh | Verfahren, Computerprogrammprodukt, Computersystem, Netzwerkserver und Netzwerkclient zur Erzeugung einer veränderlichen Darstellung eines Objektes |
US20020120652A1 (en) * | 2000-10-20 | 2002-08-29 | Rising Hawley K. | Two-stage mapping for application specific markup and binary encoding |
EP1258837A1 (en) * | 2001-05-14 | 2002-11-20 | Thomson Licensing S.A. | Method to generate mutual photometric effects |
US7290057B2 (en) * | 2002-08-20 | 2007-10-30 | Microsoft Corporation | Media streaming of web content data |
US6937244B2 (en) * | 2003-09-23 | 2005-08-30 | Zhou (Mike) Hong | Apparatus and method for reducing the memory traffic of a graphics rendering system |
KR20050034811A (ko) * | 2003-10-10 | 2005-04-15 | 한국전자통신연구원 | 이질적 환경 하에서 멀티미디어 서비스의 서비스질 지원을위한 시스템적인 형식 변환 방법 및 시스템 |
KR100695126B1 (ko) * | 2003-12-02 | 2007-03-14 | 삼성전자주식회사 | 그래픽 데이터 압축에 관한 메타표현을 이용한 입력파일생성 방법 및 시스템과, afx부호화 방법 및 장치 |
US7739599B2 (en) * | 2005-09-23 | 2010-06-15 | Microsoft Corporation | Automatic capturing and editing of a video |
US7643673B2 (en) * | 2006-06-12 | 2010-01-05 | Google Inc. | Markup language for interactive geographic information system |
US7945142B2 (en) | 2006-06-15 | 2011-05-17 | Microsoft Corporation | Audio/visual editing tool |
CN101715145B (zh) * | 2008-10-06 | 2012-08-15 | 辉达公司 | 利用级联存储器评估处理能力的设备和方法 |
KR101685922B1 (ko) * | 2010-04-05 | 2016-12-13 | 삼성전자주식회사 | 가상 세계 처리 장치 및 방법 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6002803A (en) * | 1997-03-11 | 1999-12-14 | Sharp Laboratories Of America, Inc. | Methods of coding the order information for multiple-layer vertices |
US6031548A (en) * | 1997-06-13 | 2000-02-29 | International Business Machines Corporation | Progressive multi-level transmission and display of triangular meshes |
US5956039A (en) * | 1997-07-25 | 1999-09-21 | Platinum Technology Ip, Inc. | System and method for increasing performance by efficient use of limited resources via incremental fetching, loading and unloading of data assets of three-dimensional worlds based on transient asset priorities |
US5999944A (en) * | 1998-02-27 | 1999-12-07 | Oracle Corporation | Method and apparatus for implementing dynamic VRML |
US6031872A (en) * | 1998-06-16 | 2000-02-29 | Daewoo Electronics Co., Ltd. | Method and apparatus for encoding a video signal |
-
1998
- 1998-12-04 US US09/205,192 patent/US6195088B1/en not_active Expired - Lifetime
-
1999
- 1999-11-30 AU AU19088/00A patent/AU753885B2/en not_active Ceased
- 1999-11-30 IL IL14343799A patent/IL143437A0/xx unknown
- 1999-11-30 CA CA002352293A patent/CA2352293C/en not_active Expired - Fee Related
- 1999-11-30 EP EP99962696A patent/EP1138024A4/en not_active Withdrawn
- 1999-11-30 JP JP2000587310A patent/JP3908462B2/ja not_active Expired - Fee Related
- 1999-11-30 KR KR10-2001-7006916A patent/KR100510221B1/ko not_active IP Right Cessation
- 1999-11-30 WO PCT/US1999/026031 patent/WO2000034922A1/en not_active Application Discontinuation
- 1999-11-30 BR BRPI9915937A patent/BRPI9915937B1/pt not_active IP Right Cessation
- 1999-11-30 CN CNB998140759A patent/CN1203454C/zh not_active Expired - Fee Related
-
2001
- 2001-06-01 NO NO20012722A patent/NO319076B1/no not_active IP Right Cessation
-
2006
- 2006-11-24 JP JP2006317220A patent/JP2007151119A/ja not_active Withdrawn
Also Published As
Publication number | Publication date |
---|---|
EP1138024A1 (en) | 2001-10-04 |
CN1203454C (zh) | 2005-05-25 |
AU1908800A (en) | 2000-06-26 |
WO2000034922A1 (en) | 2000-06-15 |
JP3908462B2 (ja) | 2007-04-25 |
CN1329737A (zh) | 2002-01-02 |
NO20012722L (no) | 2001-07-30 |
NO20012722D0 (no) | 2001-06-01 |
KR100510221B1 (ko) | 2005-08-30 |
KR20010103709A (ko) | 2001-11-23 |
US6195088B1 (en) | 2001-02-27 |
JP2002532924A (ja) | 2002-10-02 |
NO319076B1 (no) | 2005-06-13 |
JP2007151119A (ja) | 2007-06-14 |
AU753885B2 (en) | 2002-10-31 |
BR9915937A (pt) | 2001-08-21 |
CA2352293A1 (en) | 2000-06-15 |
EP1138024A4 (en) | 2005-06-29 |
IL143437A0 (en) | 2002-04-21 |
CA2352293C (en) | 2009-09-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
BRPI9915937B1 (pt) | sistema de multimídia para estender as capacidades nativas de uma linguagem de conteúdo digital | |
Signes et al. | MPEG-4's binary format for scene description | |
RU2360275C2 (ru) | Уровень интеграции сред | |
US6741242B1 (en) | Multimedia documents integrating and displaying system | |
US20100033484A1 (en) | Personal-oriented multimedia studio platform apparatus and method for authorization 3d content | |
US6898320B2 (en) | Method for processing nodes in 3D scene and apparatus thereof | |
JP2007116725A (ja) | データアレイの予測符号化方法およびシステム | |
WO2024037247A1 (zh) | 一种点云媒体的数据处理方法及相关设备 | |
US20030001877A1 (en) | Device for converting a BIFS text format into a BIFS binary format | |
Flotyński et al. | Building multi-platform 3D virtual museum exhibitions with Flex-VR | |
US6549206B1 (en) | Graphic scene animation signal, corresponding method and device | |
Thomas et al. | MPEG media enablers for richer XR experiences | |
KR100316752B1 (ko) | 장면의 공간과 시간 묘사의 표현으로 다른 데이터 타입의 정보를 실수값 입력장치에 연결하는 방법 | |
AU739379B2 (en) | Graphic scene animation signal, corresponding method and device | |
KR100657940B1 (ko) | 깊이 영상 기반 표현 데이터 압축에 관한 메타표현을이용한 입력파일 생성 방법 및 시스템과, afx부호화방법 및 장치 | |
Mitrea et al. | BiFS-based approaches to remote display for mobile thin clients | |
MXPA01005521A (en) | Method and system for controlling multimedia streams using dynamic prototypes | |
US20240193862A1 (en) | Information processing device and method | |
Signès et al. | MPEG-4: Scene Representation and Interactivity | |
Laier et al. | Content-based multimedia data access in Internet video communication | |
Entrekin et al. | Television Graphics | |
Kaczor et al. | MPEG-4 binary format codec for scene description | |
Batali et al. | The Evolution of RIB-Plumbing the Production Pipeline |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
B25G | Requested change of headquarter approved |
Owner name: FRANCE TELECOM (FR) Free format text: SEDE ALTERADA CONFORME SOLICITADO NA PETICAO NO 020050079347/RJ DE 09/08/2005. |
|
B07A | Application suspended after technical examination (opinion) [chapter 7.1 patent gazette] | ||
B09B | Patent application refused [chapter 9.2 patent gazette] |
Free format text: INDEFIRO O PEDIDO DE ACORDO COM O ART.8O COMBINADO COM ART. 13O DA LPI E ART. 10 INCISOS V E VI DA LPI |
|
B12B | Appeal against refusal [chapter 12.2 patent gazette] | ||
B16A | Patent or certificate of addition of invention granted [chapter 16.1 patent gazette] |
Free format text: PRAZO DE VALIDADE: 10 (DEZ) ANOS CONTADOS A PARTIR DE 10/05/2016, OBSERVADAS AS CONDICOES LEGAIS. |
|
B21F | Lapse acc. art. 78, item iv - on non-payment of the annual fees in time | ||
B24J | Lapse because of non-payment of annual fees (definitively: art 78 iv lpi, resolution 113/2013 art. 12) |