KR20010103709A - 다이나믹 프로토타입을 이용하여 멀티미디어 스트림을제어하기 위한 방법 및 시스템 - Google Patents
다이나믹 프로토타입을 이용하여 멀티미디어 스트림을제어하기 위한 방법 및 시스템 Download PDFInfo
- Publication number
- KR20010103709A KR20010103709A KR1020017006916A KR20017006916A KR20010103709A KR 20010103709 A KR20010103709 A KR 20010103709A KR 1020017006916 A KR1020017006916 A KR 1020017006916A KR 20017006916 A KR20017006916 A KR 20017006916A KR 20010103709 A KR20010103709 A KR 20010103709A
- Authority
- KR
- South Korea
- Prior art keywords
- interface
- animation
- parameter
- scene
- quantization
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 21
- 238000013139 quantization Methods 0.000 description 24
- 238000013461 design Methods 0.000 description 4
- 238000013515 script Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 3
- 238000002474 experimental method Methods 0.000 description 3
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000004590 computer program Methods 0.000 description 2
- 238000004088 simulation Methods 0.000 description 2
- 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 2
- 238000012546 transfer Methods 0.000 description 2
- 230000009466 transformation Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000003993 interaction Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000007639 printing Methods 0.000 description 1
- 230000008569 process Effects 0.000 description 1
- 238000012545 processing 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
다이나믹 인터페이스를 이용하여 멀티미디어 콘텐츠를 인코딩하기 위한 방법 및 시스템이 개시된다. 장면의 콘텐츠에 확장가능하고 프로그램적인 인터페이스를 제공함으로써, 장면내의 각 오브젝트의 각 특성이 각 프레임에 대해 비디오 스트림내에 명확하게 지정되는 장면에서보다 더 효율적으로 장면을 인코딩할 수 있다.
Description
동시 계류중인 출원서의 교차 참조
본 출원서는 본 발명의 발명자에 의해 동일자로 출원된 (1) 미국출원번호 09/205,191인 "데이터 어레이의 예측 인코딩을 위한 방법 및 시스템, (2) 미국출원번호 09/205,190인 "3D 생성 장면내의 로테이션과 노멀을 인코딩하기 위한 방법 및 시스템"과 관련된 것으로, 참고로 이들 출원서를 첨부하였다.
많은 컴퓨터 생성 이미지는 이전에는 모든 프레임내의 모든 픽셀을 동시에 지정함으로써 생성되었지만, 현대의 컴퓨터 이미지 시퀀스는 복수의 멀티미디어 오브젝트(예를들면, 비디오 및 2D 또는 3D 그래픽스 프리미티브(primitive))- 때때로, 하나 이상의 사운드 트랙과 함께 -를 병합함으로써 생성되곤 한다. 멀티미디어 영역에서는 언어를 이용하여 이미지 및/또는 장면들을 만들어낸다. 예를 들면, 하이퍼텍스트 마크업 언어(HTML)는 텍스트와 그래픽스의 2차원(2D) 구성을 지정한다. 마찬가지로, 가상 현실 마크업 언어(VRML)는 3차원(3D) 월드를 기술한다.
또한, 멀티미디어 언어는 구성된 이미지의 다이나믹 변환에 대한 확장(extension)을 포함하기도 한다. HTML은 다이나믹 HTML(DHTML) 확장을 포함하는데, 이는 1998년 O'Reilly & Associate, Inc.에 의해 출판된 Danny Goodman에 의한 Dynamic HTML: The Definitive Reference에 기재되어 있으며, 이것을 참고로 첨부하였다. 더구나, HTML에 대한 XML 확장은 네이티브 언어가 변형되고 확장되는 방법을 기술하는 메타-언어를 제공한다.
마찬가지로, VRML은 새로운 프리미티브(primitive)가 "프로토타입"이 되는 것을 가능하게 하는 "PROTO" 정의에 대한 지원을 포함한다. 정의의 일부는 VRML 환경에 의해 실행되어 새롭게 프로토타입된 기능을 제공하는 하나의 코드 블럭 또는 복수의 코드 블럭들이다.
동화상 전문가 그룹(MPEG, Motion Pictures Expert Group)은 이미지 스트림의 인코딩 및 디코딩에 필요한 기술을 연구하기 위해 형성되었다. 그 결과로서 나타난 표준(지금은 MPEG-1이라고 불려짐)이 2개의 추가 MPEG 표준, 즉 MPEG-2 및 MPEG-4에 대한 기초를 이루고 있다. MPEG-4는 진행 중인 표준으로서, 본 발명의 기본을 제공하고 있다. 최종 위원회 표준안은 ISO/IEC FCD 14496-1 MPEG-4 Systems and -2 MPEG-4 Visual이고, 그 내용을 참고로 첨부하였다. 이들 잠정안은 멀티미디어 콘텐츠를 인코딩하는 여러가지 방법을 포함한다. 그러한 방법은 (1)장면 파라미터에 대한 양자화 방법, (2) 멀티미디어 장면을 인코딩하고 전송하기 위한 애니메이션 스트림, 및 (3) 멀티미디어 정보를 시간에 걸쳐 변형하는 업데이트 스트림을 포함한다. MPEG-4의 최종안은 (1) 장면에 대한 이진 포맷(이하, BIFS)내의 양자화, (2) BIFS를 이용한 애니메이션(이하, "BIFS-Anim"), (3) BIFS를 이용한 업데이트 제어(이하, "BIFS-Command")에 대한 지원을 포함한다.
BIFS내의 양자화를 이용하는 것은 노드와 필드를 양자화 카테고리로 태깅(tagging)하는 것을 포함한다. 각 노드의 각 필드는 양자화 카테고리에 할당되고, 이 양자화 카테고리는 양자화 프로세스시 파라미터화하기 위해 양자화 파라미터 구조에 제공될 때, 필드에 인가된다.
BIFS-Anim은 멀티미디어 데이터의 스트리밍- 및 파일-기반 애니메이션을 위한 인코딩 방법을 정의한다. BIFS-Anim은 3가지 기본요소, 즉 (1) 장면 그래프, (2) 애니메이션 마스크, 및 (3) 애니메이션 프레임을 포함한다. 장면은 (a) 정적인 언태깅된 오브젝트(untagged object), 및 (b) 변형되어질 태깅된 오브젝트를 포함한다. 애니메이션 마스크는 애니메이션 스트림에 의해 변형되어질 태깅된 오브젝트의 특성을 설정한다.
BIFS Command는 BIFS 노드 및 장면 그래프를 업데이트하는 프로토콜이다. 이것은 전체 화면을 다른 하나로 교체하라는 명령을 전송하고, 태깅된 오브젝트의 일부를 제거하거나 장면내의 태깅된 오브젝트의 특성값을 변화시킴으로써 변화를 장면으로 이동할 수 있게 한다.
본 발명은 컴퓨터 생성 이미지 시퀀스를 인코딩하는 개선된 방법에 관한 것으로, 특히 비디오 스트림의 일부가 양자화되고, 애니매이션되며, 또는 그렇지 않으면 갱신되는 방법을 인코딩하기 위해 프로토타입(prototype)을 이용하는 것에 관한 것이다.
도 1은 본 발명의 방법을 구현하기 위한 컴퓨터의 모식도.
도 2는 인터페이스 선언(declaration)과 장면 선언과의 내부 관계를 도시한 블럭 다이어그램.
도 3은 인터페이스 선언의 의사-코드(pseudo-code) 예를 도시한 도면.
본 발명의 목적은 멀티미디어 콘텐츠 언어 및/또는 멀티미디어 배치(placement) 언어에 대한 다이나믹 프로그래밍 인터페이스 및/또는 확장을 제공하는 것이다.
본 발명의 다른 목적은 애니메이션, 변형 및 양자화 방법으로의 링크를 제공하고, 장면들이 효율적으로 표현되고, 애니메이션되며, 변형될 수 있도록 장면에 대한 새로운 프로토타입을 제공하는 것이다.
본 발명의 이러한 목적 및 다른 목적들은 (1) 다이나믹 인터페이스를 이용하여 멀티미디어 콘텐츠를 인코딩하기 위한 컴퓨터 구현 방법, (2) 다이나믹 인터페이스를 이용하여 멀티미디어 콘텐츠를 인코딩하기 위한 시스템, 및 (3) 다이나믹 인터페이스를 이용하여 멀티미디어 콘텐츠를 인코딩하기 위한 컴퓨터 프로그램 제품 중 하나 이상에 의해 충족된다.
첨부된 도면을 참조로 한 이하의 상세한 설명을 통해, 본 발명을 더 완전하게 이해할 수 있을 뿐만 아니라, 본 발명의 많은 장점들이 훨씬 더 명백하게 될 것이다.
이제, 도면을 참조하면, 수개의 도면에 걸쳐 동일하거나 대응하는 부분은 동일한 참조 번호로 나타내었다. 도 1은 다이나믹 인터페이스를 이용하여 멀티미디어 콘텐츠를 인코딩하기 위한 컴퓨터 시스템의 모식도이다. 컴퓨터(100)는 본 발명의 방법을 구현하는 것으로서, 컴퓨터 하우징(102)은 CPU(106), 메모리(108, 예를들면 DRAM, ROM, EPROM, EEPROM, SRAM, 및 플래시 RAM), 및 다른 선택적인 특별 목적의 논리 디바이스(예를들면, ASIC) 또는 구성가능한 논리 디바이스(예를 들면 GAL 및 재프로그램가능한 FPGA)를 포함하는 마더보드(104)를 하우징한다. 컴퓨터(100)는 또한 복수의 입력 장치(예를 들면, 키보드(122) 및 마우스(124)), 및 모니터(120)를 제어하기 위한 디스플레이 카드(110)를 포함한다. 또한, 컴퓨터 시스템(100)은 적절한 디바이스 버스(예를들면 SCSI 버스, 인핸스드(enhanced) IDE 버스, 또는 울트라 DMA 버스)를 이용하여 접속되는 플로피 디스크 드라이브(114), 다른 착탈 가능한 매체 디바이스(119, 예를 들면 컴팩트 디스크, 테이프, 착탈가능한 광학 매체(도시되지 않음)), 및 하드 디스크(112) 또는 다른 고정된 고밀도 매체 드라이브를 구비한다. 컴퓨터(100)는 동일한 디바이스 버스 또는 다른 디바이스 버스에 접속되는 컴팩트 디스크 판독기(118), 컴팩트 디스크 판독/기록 유닛(도시되지 않음) 또는 컴팩트 디스크 쥬크 박스(도시되지 않음)를 추가적으로 더 포함할 수도 있다. 컴팩트 디스크(119)가 CD 캐디내에 도시되어 있지만, 캐디가 필요없는 CD-ROM 드라이브에 직접 삽입될 수도 있다. 다른 실시예에서는, 본 발명은 (1) 셋톱 박스 (2) 비디오 보드, 및/또는 (3) 수신기/재생 유닛의 하나 또는 그 조합으로서 구현된다. 또 다른 실시예에서는, 프린터(도시되지 않음)는 멀티미디어콘텐츠를 인코딩하기 위한 인터페이스의 프린팅 리스트를 제공한다.
시스템은 적어도 하나의 컴퓨터 판독가능 매체를 포함하고 있다. 컴퓨터 판독가능 매체의 예로서는 컴팩트 디스크(119), 하드 디스크(112), 플로피디스크, 테이프, 광자기 디스크, PROM(EPROM, EEROM, 플래시 EPROM), DRAM, SRAM, SDRAM 등을 들 수 있다. 본 발명은 컴퓨터 판독가능 매체의 어느 하나 또는 조합에 저장되고, 컴퓨터(100)의 하드웨어를 제어하며 컴퓨터(100)와 사용자간의 상호작용을 가능하게 하는 소프트웨어를 포함한다. 그러한 소프트웨어는 디바이스 드라이브, 오퍼레이팅 시스템 및 개발 도구(tool)와 같은 사용자 어플리케이션을 포함할 수도 있다. 여기에서 예로 든 상기 소프트웨어는 제한적으로 해석해서는 안된다. 그러한 컴퓨터 판독가능 매체는 다이나믹 인터페이스를 이용하여 멀티미디어 콘텐츠를 인코딩하기 위한 본 발명의 컴퓨터 프로그램 제품을 더 포함한다. 본 발명의 컴퓨터 코드 디바이스는 스크립트(script), 인터프리터(interpreter), 다이나믹 링크 라이브러리(dynamic link library), 자바 클래스, 및 완전 실행 파일을 포함하여(이것으로 한정되는 것은 아님) 기계어변환된(interpreted) 또는 실행가능한(executable) 코드 메카니즘의 어느 하나가 될 수 있다.
도 2에 도시한 바와 같이, 멀티미디어 스트림이 본 발명에 의해 수신되어 장면 컴포넌트와 인터페이스 컴포넌트로 디코딩된다. 장면 컴포넌트는 (1) 장면내의 디지털 오브젝트 및 (2) 이들 오브젝트들이 업데이트되거나 애니메이션되는 방법에 관한 정보를 포함한다. 인터페이스 컴포넌트는 디코딩 후에는 내부적으로 저장되는 인터페이스 정의를 포함하고, 하나의 실시예에서 상기 정의들은 적어도 부분적으로 InterfaceCodingTable에 저장된다. 특히, InterfaceCodingTable은 새로운 인터페이스에 부가되고, 디지털 콘텐츠 언어(예를들면, MPEG-4 BIFS 또는 VRML)의 방법들(예를들면, 양자화, 애니메이션 및 업데이트 방법)을 장면 컴포넌트에 적용하기 위해, 주어진 인터페이스 정의의 코딩 요소(element)를 저장한다.
InterfaceCodingTable은 이하의 정보, 즉 (1) 업데이트 모드, (2) 애니메이션 모드(또는 Anim-mode), (3) 양자화 카테고리, (4) 양자화 파라미터, 및 (5) 애니메이션 카테고리를 포함한다. 업데이트 모드를 이용하여, 임의의 파라미터를 "인(in)" 타입으로서 선언할 수 있다. 파라미터의 타입을 정의하는 것을 내재적으로 또는 명백하게 지원하는 언어(예를들면, VRML)에서는, 파라미터들이 "인" 타입으로서 분리되어 정의될 필요는 없다. 구체적으로는, VRML은 파라미터들이 EventIn, ExposedField, EventOut, 및 Field로서 정의되는 것을 가능하게 한다. EventIn 및 ExposedField 모두는 정의상 "인" 타입 파라미터이다. "인"타입 파라미터가 이용되는 경우, "인" 타입은 인터페이스가 멀티미디어 스트림(예를들면, BIFS-Command 스트림과 같은 업데이트 스트림을 통해)으로부터 추가 업데이트를 수신할 수도 있다는 것을 나타낸다. Anim-mode는 파라미터를 대응하는 애니메이션 카테고리로 태깅함으로써, 인터페이스내의 임의의 파라미터에 따라 동작할 수 있다. 또한, Quant mode는 파라미터를 대응하는 애니메이션 카테고리로 태깅하고 선택적인 추가 양자화 파라미터를 전송함으로써, 인터페이스내의 임의의 파라미터에 따라 동작할 수 있다.
멀티미디어 스트림은 InterfaceCodingTable(ICT) 정보를 다음과 같이, 즉(1) 양자화를 제어하고, (2) 대응하는 인터페이스의 부분을 업데이트하며, 및 (3) 인터페이스를 통해 애니메이션을 수행하는데 이용할 수 있다. 구체적으로는, 장면으로부터의 다른 컨텍스트(contextual) 정보 뿐만 아니라 ICT 값 qp[i]를 이용하여 인터페이스 파라미터 ai에 연관된 양자화 카테고리 qc[i]가 인가된다. 이것은 인터페이스 선언이 거의 최적으로 압축되는 것을 가능하게 한다. "인 모드"로 태깅된 임의의 주어진 인터페이스 파라미터 ai는 주어진 시점에서 인터페이스 값들을 변형시킬 업데이트 스트림에 의해 변형될 수도 있다. 인터페이스는 값들중 하나를 연속적으로 업데이트하는 연속적인 애니메이션 스트림을 이용하여 애니메이션될 수도 있다. 애니메이션 카테고리 ac[i]는 그 경우에 이용된다.
InterfaceCodingTable은 InterfaceDeclaration의 일부이고, 도 3에 도시된 예의 구조를 가지고 있다. 구체적인 파라미터는 이하에 기재되어 있다.
ICT mask : 각 파라미터에 대해 어느 정보가 가용한지를 설정하는 부울값(Boolean value)의 마스크.
useQuant : 각 파라미터에 대해 양자화 파라미터가 전송되는지를 설정하는 부울(Boolean)
useUpdate : 각 파라미터에 대해 업데이트 카테고리 정보 뿐만 아니라 "인 모드" 상의 정보가 전송되는지를 설정하는 부울. 상기 설명한 바와 같이, 파라미터가 업데이트될 수 있는지를 정의하는 것을 이미 개별적으로 지원하는 언어에서는 이 파라미터는 선택적이다.
useAnim : 각 파라미터에 대해 "dyn 모드"상의 정보와 애니메이션 카테고리가 전송되는지를 설정하는 부울.
인터페이스내의 각 파라미터 ai에 대해 추가적인 프로세싱이 수행된다. PROTOinterfaceDefinition을 참조하여 아래에 설명하는 바와 같이, 파라미터의 수는 변수 "numFields"에 지정된다. 그러므로, 각 파라미터에 대해 이하의 정보가 (선택적으로) 지정된다.
In mode data : 인터페이스의 이 파라미터가 업데이트 가능한지 여부를 나타내는 정보. 이 정보는 또한 인터페이스 선언으로부터 얻을 수도 있다.
quant category data : 이용되는 양자화 카테고리. 이 데이터는 "useQuant"가 참인 경우에 이용된다.
quant parameter data : 이 카테고리에 대한 특정 양자화 파라미터, 즉, 최소 및 최대값, 및 카테고리의 특정 양자화/역 양자화 방법에 따라 압축에 이용되는 정보. 이 데이터는 "useQuant"가 참인 경우에 이용된다.
anim parameter data : 특정 필드에 대해 선정된 애니메이션 방법. 이 데이터는 "useAnim"이 참인 경우에 이용된다.
MPEG-4 및 VRML의 내용에서, 본 발명은 PROTOs 및 EXTERNPROTOs를 통해 새로운 인터페이스가 정의되는 것을 가능하게 한다. PROTOs와 EXTERNPROTOs와의 유일한 차이점은 인터페이스를 구현하는 코드가 전자의 경우에는 동일한 기술(dercription)(PROTO)내부에 제공되고, 후자의 경우에는 외부 리소스내에 제공된다는 점에 있다.
어느 경우든, 프로토타입 선언을 갖는 ICT를 이용함으로써, 후에 노드를 인코딩하고, 애니메이션하며 업데이트하는 모든 필요한 파라미터로 필드 선언이 태깅되는 것을 가능하게 한다. MPEG-4에서, ICT는 이하의 정보, 즉 (1) 양자화 카테고리(표 1 참조), (2) 애니메이션 카테고리(표 2 참조), 및 (3) 양자화 파라미터(필드에 대한 최소 및 최대값을 포함하는)를 포함한다.
양자화 카테고리 | |
카테고리 | 기술 |
0 | 없음 |
1 | 3D 위치 |
2 | 2D 위치 |
3 | 그리기 순서 |
4 | SF 컬러 |
5 | 텍스쳐 좌표 |
6 | 각도 |
7 | 스케일 |
8 | 보간기 키 |
9 | 노멀 |
10 | 로테이션 |
11 | 오브젝트 크기 3D(1) |
12 | 오브젝트 크기 2D(2) |
13 | 선형 스칼라 양자화 |
14 | 좌표 인덱스 |
15 | 예비 |
애니메이션 카테고리 | |
카테고리 | 기술 |
0 | 없음 |
1 | 위치 3D |
2 | 위치 2D |
3 | 예비 |
4 | 컬러 |
5 | 예비 |
6 | 각도 |
7 | 플로우트 |
8 | 바운드 플로우트(Bound float) |
9 | 노멀 |
10 | 로테이션 |
11 | 크기 3D |
12 | 크기 2D |
13 | 정수 |
14 | 예비 |
15 | 예비 |
PROTO 정의와 함께 이러한 정보를 가지고서, MPEG-4 터미널은 노드를 인코딩하고 업데이트하며 애니메이션하는데 필요한 Node Coding Table을 생성할 수 있다. 이하는 DirectionalLight 노드에 대한 NodeCodingTable의 전형적인 예이다. 양자화(Q) 및 애니메이션(A) 타입 뿐만 아니라 최소 및 최대값이 제공된다. 모든 id들은 필드 선언으로부터 자동적으로 연역된다. NodeDataTypes(SFWorldNode, SF3Dnode) 및 그들의 상응하는 id가 노드가 이용될 수 있는 컨텍스트(context)를 결정하는데 이용된다. PROTO는 특정 노드 카테고리를 수신한다.
DirectionalLight | SFWorldNodeSF3DNode | [000100][000] | |||||
필드명 | DEF id | IN id | OUT id | DYN id | [m, M] | Q | A |
주위 세기(ambientIntensity) | 000 | 000 | 000 | 00 | [0,1] | 4 | 2 |
컬러 | 001 | 001 | 001 | 01 | [0,1] | 4 | 2 |
방향 | 010 | 010 | 010 | 10 | 9 | 6 | |
세기 | 011 | 011 | 011 | 11 | [0,1] | 4 | 2 |
온(on) | 100 | 100 | 100 |
MPEG-4 타입 | |
Bool | 0000 |
플로우트(float) | 0001 |
시간 | 0010 |
스트링 | 0011 |
Int32 | 0100 |
스트링 | 0101 |
Vec3f | 0110 |
Vec2f | 0111 |
컬러 | 1000 |
로테이션 | 1001 |
이진 구문(Binary Syntax)
다음은 대응하는 InterfaceCoding Table을 갖는 PROTO 정의에 대한 이진 구문이다. 이진 비트 스트림 구문은 MPEG-4 MSDL 언어에 의해 구체화된다.
본 발명의 실시예는 MPEG-4의 PROTOtypes을 이용하여 복수의 엔지니어가 이격된 위치로부터 하나의 모델/디자인(예를들면, 보트 모델)에 동시에 작업을 하면서 실시간으로 변화를 볼 수 있는 합작용(collaborative) 전문 어플리케이션을 구현할 수 있다. 엔지니어들은 낮은 비트 레이트 네트워크 접속에 맞는 가장 효율적인 압축 전송을 이용하면서도, 디자인에 실험을 수행하고 실험 결과를 모든 지역에서 동시에 얻을 수 있는 것을 원한다. 더구나, 상기 시스템은 다양한 디자인을 수용할 만큼 일반적이어야 한다. 이러한 어플리케이션에, 각각의 경우에 대해 특정하고 내재적으로는 차선인 어플리케이션을 설계하는 대신에, MPEG-4 프레임워크를 이용함으로써, 모든 통신 및 어플리케이션 디자인에 대해 일반적이고 효율적인 프레임워크를 얻을 수 있다.
이 예에 대하여, 20,000개의 버텍스(vertex)로 이루어지는 10,000 폴리건(polygon)을 포함하는 3D 보트 모델을 가정하자. 이 실험에서, 엔지니어는 특정 바람에 기인한 보트의 변형을 분석하고 제어하고자 한다. 일반적으로 상기 변형은 수개의 파라미터, 예를들면 바람의 속도, 방향, 및 파도의 높이에 의해 좌우될 것이다. 그러면, 보트는 MPEG-4 인핸스드 PROTO로 정의되고, 새로운 값을 수신했을 때, PROTO내의 스크립트(Script)가 새로운 버텍스 파라미터를 계산한다. 이러한 방식으로, 엔지니어들은 생생한 시뮬레이션을 수행하고, 20,000 버텍스를 재전송하지 않고, BIFS-Anim 프로토콜을 이용하여 최적으로 코딩된 단지 소수의 파라미터를 전송할 수 있다. 부가적으로, 새로운 결과들이 테스트될 때마다, 엔지니어들은 BIFS-Command 프로토콜을 이용하여 새로운 셋트의 파라미터를 전송하기만 하면 된다.
상기 예에 기초하여, 이하의 PROTOtype이 정의될 수 있다.
ICT 파라미터
이하의 코딩 파라미터는 ICT에 연관될 수 있다.
WindBoat | PROTO | [000] | |||||
필드 명 | DEF id | IN id | OUT id | DYN id | [m, M] | Q | A |
바람속도 | 00 | 00 | 00 | 00 | [-I, +I] | 11 | 1 |
바람방향 | 01 | 01 | 01 | 01 | [0,1] | 9 | 9 |
파도높이 | 10 | 10 | 10 | 10 | [0,100] | 13 8 | 11 |
본 발명은 기능을 추가할 뿐만 아니라, 더욱 효율적으로 코딩된 비트 스트림을 제공한다. PROTO 인터페이스를 이용하지 않고 전송된 정보와 이용하여 전송된 정보를 비교함으로써, 비트 레이트를 비교할 수 있다. PROTO 예시(보트를 장면에 넣는 것), PROTO 업데이트(값들을 이격되게 변화시킴), 또는 애니메이션에 대해 이득이 측정될 수 있다. 전송되는 각 데이터의 바이트 크기가 비교된다. 주의할 점은 ICT가 없는 통상의 PROTO를 이용하였다면, 업데이트 및 애니메이션 기능은 이용할 수 없다는 점이다.
실험 | 미처리 데이터사이즈(바이트) | VRML PROTO 데이터 사이즈(바이트) | MPEG-4 BIFS PROTO 사이즈(바이트) |
예시(n개의 보트시뮬레이션 장면) | n*400,000 | 400,000+35*n | 30,000+n*5 |
업데이트 | 240,000 | 비가용 | 5 |
애니메이션(평균 애니메이션프레임당) | 240,000 | 비가용 | 3 |
제2의 예로서, 본 발명을 바운딩하는 공을 애니메이션하는데 이용할 수 있다. 각 프레임내의 공의 각 폴리곤을 업데이트하는 명령 스트림을 전송하는 대신에, 애니메이션을 제어하는 인터페이스가 생성된다. 인터페이스는 지면으로부터 공의 높이를 제어하는 파라미터를 정의한다. 공을 애니메이션하기 위해서는, 높이 파라미터만이 각 프레임마다 변할 필요가 있다-인터페이스의 스크립트는 버텍스의 실제 업데이팅을 수행한다. 마찬가지로, 공 인터페이스가 컬러에 대한 제2 파라미터를 포함하고 있다면, 폴리곤의 컬러를 개별적으로 애니메이션하는 것보다는 스크립트에 의해 각 폴리곤의 색깔이 변할 것이다.
본 발명을 언어에 의해 제공되는 네이티브 방법을 확장하는 인터페이스의 측면에서 설명했지만, 본 발명은 인터페이스를 인터페이스에 제공하는 것에 관한 것을 더 포함한다. 오브젝트들이 슈퍼 클래스로부터 방식(behavior)을 전수받는 것과 같이, 인터페이스도 이전 예시된 인터페이스로부터 기능을 전수받을 수 있다.
본 기술계의 통상의 기술자에게는 명백한 바와 같이, 본 발명의 사상를 벗어나지 않는 범주내에서 방법 및 시스템을 다르게 실시할 수도 있다. 그러므로, 본 명세서는 발명의 범위를 한정하기 위한 것이 아니며, 본 발명의 범주는 청구 범위의 범주에 의해서만 정의된다.
Claims (3)
- 디지털 콘텐츠 언어의 네이티브 성능(native capabilities)을 확장하기 위한 멀티미디어 시스템에 있어서,프로세서;네이티브 성능의 셋트를 구비한 디지털 콘텐츠 언어를 포함하는 비휘발성 메모리; 및디지털 오브젝트 및 상기 프로세서에 의해 실행되는 인터페이스의 프로토타입을 수신하여 상기 디지털 콘텐츠 언어의 상기 네이티브 성능의 상기 셋트를 확장하기 위한 재프로그램가능한 메모리 - 상기 인터페이스의 상기 프로토타입은 (a) 값들을 양자화하기 위한 양자화 방법, (b) 상기 디지털 오브젝트들의 애니메이션, 및 (c) 상기 디지털 오브젝트들의 업데이트 중 적어도 하나를 이용하는 방법을 정의함-를 포함하는 멀티미디어 시스템.
- 제1항에 있어서, 상기 디지털 콘텐츠 언어는 프로토타입 확장을 포함하는 가상현실 마크업 언어(VRML)인 멀티미디어 시스템.
- 제2항에 있어서, MPEG-4 BIFS 프로토콜을 위한 디코더 - 상기 디코더는 디코딩된 값을 상기 인터페이스의 상기 프로토타입에 전송함 -를 더 포함하는 멀티미디어 시스템.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US09/205,192 | 1998-12-04 | ||
US09/205,192 US6195088B1 (en) | 1998-12-04 | 1998-12-04 | Method and system for controlling multimedia streams using dynamic prototypes |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20010103709A true KR20010103709A (ko) | 2001-11-23 |
KR100510221B1 KR100510221B1 (ko) | 2005-08-30 |
Family
ID=22761189
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR10-2001-7006916A KR100510221B1 (ko) | 1998-12-04 | 1999-11-30 | 다이나믹 프로토타입을 이용하여 멀티미디어 스트림을 제어하기 위한 시스템, 방법 및 수신기 |
Country Status (11)
Country | Link |
---|---|
US (1) | US6195088B1 (ko) |
EP (1) | EP1138024A4 (ko) |
JP (2) | JP3908462B2 (ko) |
KR (1) | KR100510221B1 (ko) |
CN (1) | CN1203454C (ko) |
AU (1) | AU753885B2 (ko) |
BR (1) | BRPI9915937B1 (ko) |
CA (1) | CA2352293C (ko) |
IL (1) | IL143437A0 (ko) |
NO (1) | NO319076B1 (ko) |
WO (1) | WO2000034922A1 (ko) |
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 |
CN100508560C (zh) * | 2000-01-26 | 2009-07-01 | 索尼公司 | 信息处理设备和处理方法 |
US7085995B2 (en) * | 2000-01-26 | 2006-08-01 | Sony Corporation | Information processing apparatus and processing method and program storage medium |
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 |
WO2007146967A2 (en) | 2006-06-12 | 2007-12-21 | 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 IL IL14343799A patent/IL143437A0/xx unknown
- 1999-11-30 AU AU19088/00A patent/AU753885B2/en not_active Ceased
- 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 JP JP2000587310A patent/JP3908462B2/ja not_active Expired - Fee Related
- 1999-11-30 CN CNB998140759A patent/CN1203454C/zh not_active Expired - Fee Related
- 1999-11-30 BR BRPI9915937A patent/BRPI9915937B1/pt not_active IP Right Cessation
- 1999-11-30 EP EP99962696A patent/EP1138024A4/en not_active Withdrawn
- 1999-11-30 CA CA002352293A patent/CA2352293C/en 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 |
---|---|
NO20012722L (no) | 2001-07-30 |
CN1203454C (zh) | 2005-05-25 |
JP2007151119A (ja) | 2007-06-14 |
EP1138024A4 (en) | 2005-06-29 |
BRPI9915937B1 (pt) | 2016-05-10 |
IL143437A0 (en) | 2002-04-21 |
CA2352293C (en) | 2009-09-15 |
AU753885B2 (en) | 2002-10-31 |
JP3908462B2 (ja) | 2007-04-25 |
JP2002532924A (ja) | 2002-10-02 |
CA2352293A1 (en) | 2000-06-15 |
NO20012722D0 (no) | 2001-06-01 |
AU1908800A (en) | 2000-06-26 |
NO319076B1 (no) | 2005-06-13 |
BR9915937A (pt) | 2001-08-21 |
CN1329737A (zh) | 2002-01-02 |
EP1138024A1 (en) | 2001-10-04 |
WO2000034922A1 (en) | 2000-06-15 |
KR100510221B1 (ko) | 2005-08-30 |
US6195088B1 (en) | 2001-02-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
KR100510221B1 (ko) | 다이나믹 프로토타입을 이용하여 멀티미디어 스트림을 제어하기 위한 시스템, 방법 및 수신기 | |
Hoppe | Efficient implementation of progressive meshes | |
Signes et al. | MPEG-4's binary format for scene description | |
US6445389B1 (en) | Compression of polygonal models with low latency decompression | |
JP2007116725A (ja) | データアレイの予測符号化方法およびシステム | |
US6898320B2 (en) | Method for processing nodes in 3D scene and apparatus thereof | |
US20220414940A1 (en) | Information processing apparatus and method | |
US6549206B1 (en) | Graphic scene animation signal, corresponding method and device | |
AU739379B2 (en) | Graphic scene animation signal, corresponding method and device | |
CN113938666A (zh) | 基于关键帧的视频数据传输方法、装置及存储介质 | |
MXPA01005521A (en) | Method and system for controlling multimedia streams using dynamic prototypes | |
KR102618063B1 (ko) | 3차원 포인트 클라우드 압축 방법 및 장치 | |
Burgos et al. | MPEG 3D graphics representation | |
KR20050103297A (ko) | 디스플레이용 그래픽 애니메이션의 기술 관리 방법 및 이방법의 구현을 위한 수신기 및 시스템 | |
Liu et al. | Analytically-defined collaborative shape modeling in VRML | |
Lavagetto et al. | The Facial Animation Engine | |
CN117061770A (zh) | 一种点云处理方法、装置、设备、存储介质及产品 | |
De Floriani et al. | INTERNATIONAL ORGANISATION FOR STANDARDISATION ORGANISATION INTERNATIONALE DE NORMALISATION ISO/IEC JTC1/SC29/WG11 CODING OF MOVING PICTURES AND AUDIO |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
J201 | Request for trial against refusal decision | ||
AMND | Amendment | ||
B701 | Decision to grant | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120816 Year of fee payment: 8 |
|
FPAY | Annual fee payment |
Payment date: 20130805 Year of fee payment: 9 |
|
LAPS | Lapse due to unpaid annual fee |