KR100989459B1 - 비디오 프레임 시퀀스를 제공하는 장치 및 방법, 장면 모델을 제공하는 장치 및 방법, 장면 모델, 메뉴 구조를 생성하는 장치 및 방법 그리고 컴퓨터 프로그램 - Google Patents

비디오 프레임 시퀀스를 제공하는 장치 및 방법, 장면 모델을 제공하는 장치 및 방법, 장면 모델, 메뉴 구조를 생성하는 장치 및 방법 그리고 컴퓨터 프로그램 Download PDF

Info

Publication number
KR100989459B1
KR100989459B1 KR1020087022184A KR20087022184A KR100989459B1 KR 100989459 B1 KR100989459 B1 KR 100989459B1 KR 1020087022184 A KR1020087022184 A KR 1020087022184A KR 20087022184 A KR20087022184 A KR 20087022184A KR 100989459 B1 KR100989459 B1 KR 100989459B1
Authority
KR
South Korea
Prior art keywords
video frame
video
scene model
scene
user
Prior art date
Application number
KR1020087022184A
Other languages
English (en)
Other versions
KR20080114725A (ko
Inventor
더크 로제
토르스텐 블랑크
올리버 슈나이더
Original Assignee
네로 아게
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 네로 아게 filed Critical 네로 아게
Publication of KR20080114725A publication Critical patent/KR20080114725A/ko
Application granted granted Critical
Publication of KR100989459B1 publication Critical patent/KR100989459B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • H04N5/92Transformation of the television signal for recording, e.g. modulation, frequency changing; Inverse transformation for playback
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/02Editing, e.g. varying the order of information signals recorded on, or reproduced from, record carriers
    • G11B27/031Electronic editing of digitised analogue information signals, e.g. audio or video signals
    • G11B27/034Electronic editing of digitised analogue information signals, e.g. audio or video signals on discs
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B27/00Editing; Indexing; Addressing; Timing or synchronising; Monitoring; Measuring tape travel
    • G11B27/10Indexing; Addressing; Timing or synchronising; Measuring tape travel
    • G11B27/34Indicating arrangements 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/76Television signal recording
    • H04N5/91Television signal processing therefor
    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B2220/00Record carriers by type
    • G11B2220/20Disc-shaped record carriers
    • G11B2220/25Disc-shaped record carriers characterised in that the disc is based on a specific recording technology
    • G11B2220/2537Optical discs
    • G11B2220/2562DVDs [digital versatile discs]; Digital video discs; MMCDs; HDCDs

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Signal Processing (AREA)
  • Processing Or Creating Images (AREA)
  • Studio Circuits (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

장면을 정의하는 장면 모델에 기반하여 비디오 프레임 시퀀스를 제공하는 장치는 장면 모델에 기반하여 복수의 비디오 프레임 시퀀스를 제공하는 비디오 프레임 생성기를 포함한다. 상기 비디오 프레임 생성기는 미리 정하여진 객체 이름 또는 미리 정하여진 객체 속성을 갖는 장면 모델 객체를 장면 모델 내에서 식별하여, 식별된 장면 모델 객체를 획득한다. 상기 비디오 프레임 생성기는 나아가 사용자 제공 컨텐츠가 상기 식별된 장면 모델 객체의 표면상에서 표시되거나 상기 식별된 장면 모델 객체의 대체로서 비디오 프레임 시퀀스를 생성한다. 비디오 매체의 메뉴 구조를 생성하는 장치는 비디오 프레임 시퀀스를 제공하는 장치를 포함한다. 비디오 프레임 시퀀스를 제공하는 장치는 장면 모델, 추가 정보 그리고 메뉴 구조 관련 특성에 기반하여 비디오 매체의 메뉴 구조의 일부가 되는 비디오 프레임 시퀀스를 생성한다. 상기 개념은 비디오 장면 전환 및 메뉴 구조의 용이한 생성을 가능케 한다.
비디오 프레임 시퀀스 제공, 비디오 프레임, 비디오 프레임 시퀀스, 장면 모델, 메뉴 구조

Description

비디오 프레임 시퀀스를 제공하는 장치 및 방법, 장면 모델을 제공하는 장치 및 방법, 장면 모델, 메뉴 구조를 생성하는 장치 및 방법 그리고 컴퓨터 프로그램{APPARATUS AND METHOD FOR PROVIDING A SEQUENCE OF VIDEO FRAMES, APPARATUS AND METHOD FOR PROVIDING A SCENE MODEL, SCENE MODEL, APPARATUS AND METHOD FOR CREATING A MENU STRUCTURE AND COMPUTER PROGRAM}
전반적으로 본 발명은 비디오 프레임 시퀀스를 제공하는 장치 및 방법, 장면 모델을 제공하는 장치 및 방법, 장면 모델, 메뉴 구조를 제공하는 장치 및 방법 그리고 컴퓨터 프로그램에 관한 것이다. 특히, 본 발명은 상호작용적 메뉴 및 비디오 장면을 생성하기 위해 살아 움직이는 장면을 자동적으로 생성하는 개념에 관한 것이다.
최근 몇 년 동안, 가정용 엔터테인먼트 기기의 성능은 꾸준히 향상되어왔다. 한편, 소비자들은 그들 자신의 디지털 비디오를 제작하고 저장매체에 그 디지털 비디오를 저장할 수도 있다. 그러나, 현재까지도 비디오 장면 간이나 메뉴 페이지 간 또는 메뉴 페이지와 비디오 장면 간의 정교한 장면 전환을 생성하는 일은 프로그래밍 언어에 대한 깊은 지식 없이는 쉽지 않다.
또한, 소비자들에게 정교한 비디오 장면 전환을 생성하는 해결책을 제공하고 자 하는 소프트웨어 회사들에게 있어서도, 이러한 작업은 매우 큰 노력을 수반하는데, 일반적으로 장면 전환을 생성하는 알고리즘에 대하여 별도 코드를 제공하는 것이 필요하기 때문이다.
상술한 관점에서 본 발명의 목적은 맞춤형 비디오 프레임 시퀀스를 유연하게 제작할 수 있도록 하는 비디오 프레임 시퀀스 생성 개념을 제공하는 것이다. 또 다른 목적은 비디오 매체의 메뉴 구조를 생성하기 위한 사용자 친밀한 개념을 제공하는 것이다.
상기 목적은 제1항에 따른 장치, 제16항에 따른 장치, 제18항에 따른 장면 모델, 제23항 또는 제24항에 따른 방법, 제25항에 따른 비디오 매체의 메뉴 구조 생성 장치, 제30항에 따른 비디오 매체의 메뉴 구조 생성 방법, 그리고 제31항에 따른 컴퓨터 프로그램에 의해 달성된다.
본 발명은 제1항에 따라 장면을 정의하는 장면 모델에 기반하여 비디오 프레임 시퀀스를 제공하는 장치에 관한 발명이다.
사용자 제공 컨텐츠를 상기 장면 모델의 식별된 장면 모델 객체의 식별된 표면상에 표시하거나, 상기 장면 모델의 식별된 장면 모델 객체를 대체하여 표시함으로써 비디오 프레임 시퀀스가 효율적이고 유연하게 생성될 수 있다는 점이 본 발명의 핵심 아이디어이다.
장면 모델에 있어서 장면 모델 객체나 장면 모델 객체의 표면은 미리 정하여진 객체 이름, 표면 이름, 객체 속성 또는 표면 속성에 의해 식별될 수 있다. 따라서 일단 어떤 객체나 표면이 식별되면, 식별된 객체 또는 표면을 포함하는 장면 모델에 기반한 비디오 프레임 시퀀스를 생성하는 비디오 프레임 생성기가 상기 식별된 표면상에 또는 상기 식별된 객체의 대체물로서 사용자 제공 컨텐츠를 표시하도록 할 수 있는데, 상기 사용자 제공 컨텐츠는, 예를 들어, 사용자 제공 이미지, 사용자 제공 비디오 프레임 또는 사용자 제공 비디오 시퀀스와 같은 것들이다.
따라서, 2차원 사용자 정의 컨텐츠가 미리 정의된 장면 모델에 삽입될 수 있는데, 상기 미리 정의된 장면 모델 객체의 표면 또는 외관이 플레이스 홀더(place-holder) 표면으로서 이용된다.
선택적으로, 상기 장면 모델 내의 식별된 플레이스 홀더 객체를 사용자 제공 3차원 객체로 대체함으로써 3차원 사용자 제공 객체(또는 사용자 제공 컨텐츠)는 장면 모델에 기반하여 기술된 비디오 프레임 시퀀스로 삽입될 수 있다.
즉, 장면 모델 내의 표면 및 객체는 (예를 들어, 이미지, 비디오 프레임, 비디오 프레임 시퀀스 또는 3차원 객체의 형태를 가지는) 사용자 제공 컨텐츠의 플레이스 홀더로서 이용될 수 있다.
상기 플레이스 홀더 객체는 미리 정하여진 이름 또는 미리 정하여진 객체 속성에 의해 식별될 수 있다. 제공 컨텐츠는 상기 장면 모델과 상기 사용자 제공 컨텐츠에 기반하여 복수의 비디오 프레임으로 구성된 시퀀스를 생성하는 상기 비디오 프레임 생성기에 의하여 상기 장면 모델로 삽입될 수 있다.
본 발명은 나아가 제16항에 따라 3차원 비디오 장면을 정의하는 장면 모델을 제공하는 장치에 관한 발명이다. 상기 장치는 비디오 장면 및 플레이스 홀더 삽입기의 기술(description)을 수신하는 인터페이스를 포함한다. 본 발명의 핵심 아이디어에 따라, 플레이스 홀더 삽입기는 플레이스 홀더 이름 또는 플레이스 홀더 속성을 상기 장면 모델에 삽입하는데, 플레이스 홀더 이름 또는 플레이스 홀더 속성은 객체 또는 표면이 사용자 제공 컨텐츠와 결합되도록 지시한다. 즉, 장면 모델 제공 장치는 비디오 프레임 시퀀스를 제공하는 발명 장치에서 사용되는 장면 모델을 생성한다. 이를 위하여, 장면 모델 제공 장치는 플레이스 홀더 표면 또는 플레이스 홀더 객체를 장면 모델에 삽입하는데, 상기 장면 모델은 비디오 프레임 시퀀스 제공 장치에 의해 식별될 수 있고, 상기 사용자 제공 컨텐츠를 표시하기 위해 사용될 수 있다.
본 발명은 나아가 제18항에 따라 장면 모델을 생성하는데, 상기 장면 모델은 플레이스 홀더 객체 또는 플레이스 홀더 표면을 상기 사용자 제공 컨텐츠와 연결시키는 적어도 하나의 플레이스 홀더 객체 또는 적어도 하나의 플레이스 홀더 이름 또는 적어도 하나의 플레이스 홀더 속성을 가진다. 따라서, 상기 장면 모델 발명은 비디오 프레임 시퀀스 제공 장치와 함께 사용될 수 있다.
본 발명은 나아가 제23항 및 제24항에 따른 방법에 관한 발명이다.
본 발명은 제25항에 따라 비디오 매체의 메뉴 구조를 생성하는 장치에 관한 발명이다.
비디오 매체의 메뉴 구조를 생성하는 발명 방법은 상기 메뉴 구조 관련 정보를 상기 장면 모델과 결합함으로써 상기 비디오 구조가 상기 메뉴 구조 관련 정보에 자동적으로 맞추어 구성되는 이점이 있다. 따라서, 상기 메뉴 구조 생성 장치에 의해 제작된 비디오 프레임은 메뉴 구조 관련 정보를 사용하여 구성된다.
즉, 상기 장면 모델에 의해 기술된 상기 장면은 메뉴 구조 관련 정보에 의존하여 변경된다. 따라서, 비디오 프레임 시퀀스는 사용자 요구에 맞추어 구성되는데, 여전히 상기 장면 모델에 기반한다. 따라서, 사용자 제공 컨텐츠는 상기 비디오 프레임 시퀀스를 맞춤화하는 가운데 상기 비디오 프레임 시퀀스에 삽입된다. 그러나, 전반적인 장면은 여전히 장면 모델에 의해 기술되며, 상기 장면 모델은 장면을 미리 정의하는 템플릿(template)으로 이용된다.
본 발명은 나아가 제30항에 따라 비디오 매체의 메뉴 구조를 생성하는 방법과, 제31항에 따른 컴퓨터 프로그램에 관한 발명이다.
본 발명의 추가적인 유리한 실시예는 종속항으로 정의된다.
이어서 본 발명의 바람직한 실시예가 첨부된 도면을 참조하여 기술될 것이다.
도 1은 장면을 정의하는 장면 모델 및 사용자 제공 컨텐츠에 기반하여 비디오 프레임 시퀀스를 제공하는 발명 장치의 블록도를 나타낸다.
도 2는 입방체를 나타내는 장면 모델의 도면을 나타낸다.
도 3은 도 2에 나타난 장면 모델을 기술하는 리스트를 나타낸다.
도 4는 시간에 따라 변동하는 장면 모델 및 두 개의 사용자 정의 비디오 프레임 시퀀스에 의해 정의된 바와 같이, 제1 비디오 프레임 시퀀스와 제2 비디오 프레임 시퀀스 간의 장면 전환을 나타내는 도면이다.
도 5는 장면 모델 및 사용자 제공 컨텐츠에 기반하여 프레임을 렌더링하는 방법을 나타내는 흐름도이다.
도 6은 사용자 제공 컨텐츠와 장면의 기하학적 구조를 이용하여 특정한 비디오 프레임을 생성하는 방법을 나타내는 흐름도이다.
도 7은 생성되는 비디오 프레임 시퀀스의 생성에 있어서 제1 비디오 프레임 시퀀스 및 제2 비디오 프레임 시퀀스의 사용을 나타내는 도면이다.
도 8은 플레이스 홀더 객체를 3차원 텍스트 객체로 대체하는 것을 나타내는 도면이다.
도 9는 두 개의 메뉴 페이지 간 시퀀스를 나타내는 도면이다.
도 10은 소개 영화의 개념적으로 대략적인 진행을 나타내는 도면이다.
도 11은 "챕터 선택 메뉴 -> 영화 시작" 중간 시퀀스의 개념적으로 대략적인 애니메이션을 나타내는 도면이다.
도 12는 메인 메뉴 및 서브 메뉴 간 시퀀스를 나타내는 도면이다.
도 13은 6개 챕터 버튼을 갖는 smart3D 장면 그래프를 나타내는 도면이다.
도 14는 4개 챕터를 갖는 메뉴의 예를 나타내는 도면이다.
도 15는 8개 메인 챕터를 갖는 메뉴의 예를 나타내는 도면으로서, 사용자는 다음/이전 메뉴 페이지로 이동할 수 있다.
도 16은 8개 메인 챕터를 갖는 메뉴의 예를 나타내는 도면으로서, 제1 메인 챕터는 4개 서브 챕터를 가지고, 사용자는 "위" 버튼을 선택함으로써 메인 메뉴로 다시 이동할 수 있다.
도 17은 메인 메뉴의 템플릿의 예를 나타내는 도면으로서, 상술한 예는 smart3D 내부 표현에 기반하여 렌더링된다.
도 18은 비디오 프레임 시퀀스를 생성하는 발명 방법을 나타내는 흐름도이다.
도 19는 비디오 타이틀 선택을 위한 사용자 인터페이스를 나타내는 도면이다.
도 20은 미리 정의된 smart3D 템플릿 선택을 위한 사용자 인터페이스를 나타내는 도면이다.
도 21은 smart3D 템플릿을 사용자 요구에 맞추어 조정하는 사용자 인터페이스를 나타내는 도면이다.
도 22는 smart3D 엔진에 의해 생성된 사용자 정의 메뉴 구조를 표시하는 사용자 인터페이스를 나타내는 도면이다.
도 23은 "모니터들" 메뉴의 하이라이트 마스크를 나타내는 도면으로서, 6개 버튼 및 3개 이동 키(화살표)를 포함한다.
도 24는 Nero smart3D 환경의 일반적인 작업 흐름을 나타내는 도면이다.
도 1은 본 발명에 따른, 장면을 정의하는 장면 모델에 기반하여 비디오 프레임 시퀀스를 제공하는 장치의 블록도이다. 도 1의 장치는 전반적으로 도면부호 100으로 지시된다. 상기 장치(100)는 비디오 프레임 생성기(110)를 포함한다. 상기 비디오 프레임 생성기(110)는 장면 모델(112)과 사용자 제공 컨텐츠(114)를 수신한 다. 나아가, 상기 비디오 프레임 생성기(110)는 비디오 프레임 시퀀스(116)를 제공한다.
상기 비디오 프레임 생성기가 수신하는 상기 장면 모델(112)은 객체 이름 또는 객체 속성을 갖는 적어도 하나의 장면 모델 객체를 포함한다는 점에 주목하여야 한다. 예를 들어, 상기 장면 모델은 2차원 또는 바람직하게는 3차원 공간에 배열된 복수의 객체들의 기술(description)을 포함할 수 있다. 적어도 하나의 객체는 최소한 각각의 객체와 연결된 객체 이름 또는 객체 속성을 가져야 한다.
그 밖에, 상기 사용자 제공 컨텐츠(114)는, 예를 들어, 이미지, 비디오 프레임, 비디오 프레임 시퀀스 또는 적어도 하나의 2차원 또는 3차원 객체의 기술을 포함할 수 있다.
상기 비디오 프레임 생성기(110)는 장면 모델 및 사용자 제공 컨텐츠에 기반하여 복수의 비디오 프레임으로 구성된 시퀀스(116)를 제공한다. 상기 비디오 프레임 생성기(110)는 상기 장면 모델(112) 내에서 미리 정하여진 객체 이름 또는 미리 정하여진 객체 속성을 갖는 장면 모델 객체를 식별하여, 장면 모델 객체를 획득한다. 미리 정하여진 객체 이름 또는 미리 정하여진 객체 속성을 갖는 장면 모델 객체를 식별하는 과정은 상기 식별된 장면 모델 객체의 특정 표면을 식별하는 과정을 포함한다.
그 밖에, 상기 비디오 프레임 생성기(110)는 비디오 프레임 시퀀스를 생성하는데, 상기 사용자 제공 컨텐츠(114)가 상기 식별된 장면 모델 객체의 표면상에 표시된다. 선택적으로, 상기 비디오 프레임 생성기(110)는 상기 식별된 장면 모델 객 체를 대체하여 상기 사용자 제공 컨텐츠(114)를 표시할 수 있다.
만약 상기 사용자 제공 컨텐츠(114)가 이미지, 비디오 프레임 또는 비디오 프레임 시퀀스라면, 상기 식별된 장면 모델 객체의 표면에 사용자 제공 컨텐츠를 표시하는 것이 바람직하다는 점에 주목하여야 한다. 다른 한편으로, 만약 상기 사용자 제공 컨텐츠(114)가 2차원 대체 장면 모델 객체 또는 3차원 대체 장면 모델 객체라면, 상기 식별된 장면 모델 객체를 상기 사용자 제공 컨텐츠(114)로 대체하는 것이 바람직하다.
따라서, 상기 비디오 프레임 생성기(110)는 상기 사용자 제공 컨텐츠가 상기 장면 모델(112)에 의해 제어되어 표시되는 비디오 프레임 시퀀스(116)를 제공한다. 따라서, 상기 장면 모델(112)은 상기 비디오 프레임 시퀀스(116)의 템플릿으로 고려될 수 있는데, 상기 장면 모델은 상기 표시되는 장면을 기술하고, 상기 표시되는 장면은 상기 사용자 제공 컨텐츠에 의해 보충된다.
이하에서, 상기 장면 모델(112), 상기 사용자 제공 컨텐츠(114), 그리고 상기 비디오 프레임 시퀀스(116)의 생성에 관한 세부 사항이 기술될 것이다.
도 2는 본 발명에서 사용되는 전형적인 장면 모델의 그래픽적인 표현을 나타낸다. 상기 장면 모델은 전반적으로 도면번호 200으로 지시된다. 상기 장면 모델(200)은 입방체(210) 및 관찰 지점(212)을 포함한다. 상기 입방체(210) 및 상기 관찰 지점(212)은 3차원 공간에서 배열되는데, 상기 입방체(210) 및 상기 관찰 지점(212)의 위치 및 방위는 좌표계(220)를 참조하여 기술될 수 있다. x, y, z 방향을 갖는 복수의 가능한 좌표계 중 오직 하나만이 도시되었으나, 어떠한 임의의 좌 표계도 사용될 수 있다.
또한 "입방체1"로 지시되는 상기 입방체(210)가 모두 6개의 표면을 포함하고, 그 중 3개가 보여진다는 점에 주목하여야 한다. 예를 들어, 상기 입방체(210)는 제1 표면(230), 제2 표면(232) 그리고 제3 표면(234)을 포함한다. 나아가, 상기 입방체의 위치와 방위를 기술하기 위해 상기 입방체 내 바람직한 지점 및 상기 입방체 내 바람직한 방향이 정의될 수 있음에 주목하여야 한다. 예를 들어, 상기 입방체의 상기 위치 및 방위는 상기 입방체(210)의 중심(또는 무게 중심) 위치와 상기 입방체(210)의 바람직한 방향에 기반하여 기술될 수 있다. 상기 바람직한 방향은, 예를 들어, 상기 제1 표면(230)에서 바깥 방향으로 상기 제1 표면(230)에 수직인 방향일 수 있다. 따라서, 상기 입방체(210)의 위치는 상기 좌표계(220)의 원점(222)에 대한 상기 입방체의 위치를 지시하는 3개의 스칼라 좌표계(예를 들어, 좌표 x, y, z)에 의해 기술될 수 있다. 나아가, 2개의 추가적인 좌표(예를 들어, 2개의 각도 좌표 Φ, θ)가 상기 입방체(210)의 상기 바람직한 방향 또는 방위를 정의하기 위해 사용될 수 있다.
나아가, 상기 장면 모델(220)은 상기 관찰 지점(212), 예를 들어, 상기 좌표계(220)의 원점(222)에 대한 3개의 좌표에 의해 기술되는 위치를 포함한다. 또한, 선택적으로 관찰 방향 또는 관찰 구역이 관찰 지점(212)에 대해 정의될 수 있다. 즉, 상기 관찰 지점(212)에 위치하는 것으로 가정되는 관찰자가 바라보는 방향 및/또는 관찰자에게 보여지는 상기 장면 모델의 영역으로 정의될 수 있다. 나아가, 상기 관찰 지점(212)에 대하여, 수평 시야각 및/또는 수직 시야각이 상기 장면 모 델(220)의 어느 부분이 상기 관찰 지점(212)에 위치한 상기 관찰자에게 보여지는지를 지시함으로써 정의될 수 있다.
일반적으로, 상기 장면 모델(200)은 (예를 들어, 시야각의 관점에서) 상기 장면 모델(200)의 어느 부분이 상기 관찰 지점(212)에 있는 관찰자에게 보여지는지에 대한 정의를 포함한다.
즉, 상기 장면 모델(200)은 적어도 하나의 객체(예를 들어, 입방체(210)), 적어도 하나의 객체의 특성(예를 들어, 이름 또는 속성), 그리고, 선택적으로, 관측자에 관한 그리고 상기 관찰 지점(212)에 있는 상기 관찰자에게 보여지는 상기 장면 모델(200)의 부분을 정의하는 특성에 대한 정의를 포함한다.
도 3은, 도 2의 상기 장면 모델에 대하여, 장면 모델의 전형적인 리스트를 나타낸다. 도 3의 리스트는 전반적으로 도면번호 300으로 지시된다.
여기서 장면 모델 리스트는, 예를 들어, 구조화된 기술 언어(예를 들어, XML 기술 언어 또는 상용 기술 언어)로 정의될 수 있고, 상기 장면 모델 리스트는 어떤한 가능한 기술 형식도 취할 수 있다는 점에 주목하여야 한다. 또한, 이하의 예에서 약술되는 모든 특성은 임의적 사항으로 고려되어야 하며, 다른 특성으로 대체될 수 있고, 또는 완전히 생략될 수도 있다는 점에 주목하여야 한다.
도 3을 참조하면, 상기 리스트(300)는 상기 장면 모델(200)이 입방체(210)를 포함하고 있음을 나타낸다. 상기 리스트(300)에서, 식별자 "입방체1"은 상기 입방체(210)를 지시하기 위해 사용된다. 상기 리스트(300)는 복수의 입방체(210) 특성을 포함한다. 상기 특성은, 예를 들어, 상기 입방체(210)의 속성으로 생각되는 이 름("이름" 특성)과 예를 들어 직교좌표계 (x, y, z) 내에서의 상기 입방체(210)의 위치("위치" 속성)를 포함할 수 있다. 상기 장면 모델을 정의하는 상기 리스트(300)는 또한 예를 들어 각도 파라미터 θ, Φ에 기반하여 상기 입방체(210)의 회전을 정의하는 파라미터(parameters)를 포함할 수 있다.
게다가, 상기 장면 모델(200)의 상기 기술(300)은 상기 입방체(210)의 표면에 관한 세부 항목을 포함할 수 있다. 예를 들어, ("표면 1" 속성으로 지시되는) 상기 제1 표면(230)의 기술은 상기 제1 표면(230)의 텍스처에 대한 정보("텍스처" 속성), 상기 제1 표면(230)의 소재에 관한 정보("소재 1") 및/또는 상기 제1 표면(230)의 추가 정보("속성")를 포함할 수 있다.
주어진 예에서, 상기 장면 모델(200)의 상기 장면 모델 명세(300)는 상기 제1 표면(230)이 상기 텍스처 "비디오 1"을 가진다고 정의하고, 제1 사용자 제공 비디오 컨텐츠가 상기 입방체(210)의 상기 제1 표면(230) 상에 표시되어야 한다고 지시한다.
추가 속성이 (상기 리스트 또는 장면 모델 명세(300)에서 "표면 2"로 지시되는) 상기 제2 표면을 위해 주어질 수 있다. 예를 들어, 상기 제2 표면(232)("표면 2")은 "비디오 2"로 이름 붙여진 상기 텍스처을 가지는 것으로 정의되는데, 상기 제2 사용자 제공 비디오 컨텐츠가 상기 제2 표면(232) 상에 표시되어야 함을 지시한다. 유사한 특성 또는 속성이 상기 입방체(210)의 다른 표면들에 대해 주어질 수 있다.
상기 리스트(300)의 상기 장면 모델 명세는 나아가 상기 관찰 지점(212)에 관한 정보를 포함한다. 예를 들어, 상기 관찰 지점(212)의 위치가 직교좌표계 (x, y, z)와 관찰 지점에 기반하여 주어질 수 있다("위치" 속성 참조). 게다가, 각각의 파라미터에 기반하여 상기 관찰 지점에 대해 관찰 방향(즉, 상기 관찰 지점(212)에 위치한 관찰자가 바라보는 방향)이 정의될 수 있다("관찰 방향" 속성). 그 밖에, 선택적으로 시야각이 상기 관찰 지점(212)의 상기 관찰자에 대하여 정의될 수 있다("시야각" 속성). 상기 시야각은 상기 장면 모델의 어느 부분이 상기 관찰 지점(212)의 상기 관찰자에게 보여지는지를 정의한다.
나아가, 상기 리스트(300)의 상기 장면 모델 명세는 선택적으로 상기 장면 모델 내의 어떤 객체의 움직임을 기술할 수 있다. 예를 들어, 시간의 경과에 따라 상기 입방체(210)가 어떻게 움직이는지 기술할 수 있는데, 상기 입방체(210)의 일련의 위치 및/또는 방위 파라미터에 기반하여 기술될 수 있다. 선택적으로, 상기 입방체(210)의 움직임의 방향 및/또는 상기 입방체(210)의 움직임의 속도가 상기 리스트(300)의 상기 장면 모델 명세에 의해 기술될 수 있다. 여기서 상기 리스트(300)의 상기 장면 모델 명세가 시간의 경과에 따른 상기 입방체(210)의 위치 전개 및 방위의 기술 모두를 포함할 수 있다.
나아가, 상기 리스트(300)의 상기 장면 모델 명세는 선택적으로 또는 추가적으로 시간의 경과에 따른 상기 관찰 지점의 위치 변동 및/또는 시간의 경과에 따른 상기 관찰자의 관찰 방향의 변동 및/또는 시간의 경과에 따른 상기 관찰자의 시야각의 변동의 기술을 포함할 수 있다.
즉, 상기 장면 모델 명세는 어떤 주어진 시점에서 상기 장면 모델의 기술 및 시간의 경과에 따른 상기 장면 모델의 시간상 변동의 기술 모두를 포함할 수 있다.
상기 비디오 프레임 생성기(110)는, 바람직한 예에 있어서, (예를 들어, 상기 리스트(300)에 의해 주어진 바와 같은) 상기 장면 모델 명세를 평가하고 상기 장면 모델 명세에 기반하여 상기 비디오 프레임 시퀀스(316)를 생성한다. 예를 들어, 상기 비디오 프레임 생성기(110)는 제1 비디오 프레임을 얻기 위하여 제1 시점에서 유효한 상기 장면 모델 명세를 평가할 수 있다. 상기 비디오 프레임 생성기(110)는 나아가 제2 시점의 제2 비디오 프레임을 얻기 위하여 제2 시점에서 유효한 상기 장면 모델 명세를 평가할 수 있다. 제2 시점에 대한 상기 장면 모델 명세는 제2 시점에서 유효한 개별 장면 모델 명세로서 주어지거나, 또는 제1 시점에 대한 상기 장면 모델 명세 및 제1 시점과 제2 시점 사이의 상기 장면 모델의 변화를 기술하는 시간 변동 기술 또는 움직임 기술을 이용하여 결정될 수 있다.
도 4는 상기 비디오 프레임 생성기(110)를 이용하여 상기 장면 모델(112)과 사용자 제공 컨텐츠(114)에 기반하여 비디오 프레임 시퀀스를 생성하는 과정을 나타내는 예시 도면이다. 도 4의 도면은 전반적으로 도면번호 400으로 지시된다. 도면(400)의 왼쪽 열(410)은 서로 다른 시점에서의 장면 모델의 탑뷰(top view)를 나타낸다. 제2 열(420)은 서로 다른 시점에서의 상기 비디오 프레임 시퀀스(116)의 생성되는 비디오 프레임을 나타낸다. 제1 행(430)은 제1 시점에서의 장면 모델의 탑뷰와 상기 비디오 프레임 시퀀스(116)의 대응되는 비디오 프레임을 나타낸다. 제1 시점에 대한 장면 모델은 제1 표면(434)과 제2 표면(436)를 갖는 입방체(432)의 탑뷰를 나타낸다. 여기서 상기 입방체(432)는 도 2의 상기 입방체(210)와 동등하다 는 점에 주목하여야 한다. 상기 입방체(432)의 상기 제1 표면(434)는 상기 입방체(210)의 상기 제1 표면(230)과 동등하고, 상기 입방체(432)의 상기 제2 표면(436)은 상기 입방체(210)의 상기 제2 표면(232)에 상당한다. 상기 입방체(432)의 상기 제1 표면(434)은 상기 제1 표면(432)이 제1 사용자 제공 컨텐츠와 연결되어 있음을 지시하는 속성(예를 들어, 이름, 소재 지시자, 텍스처 지시자 또는 어떤 속성)을 가진다. 도 4의 예에서, 상기 제1 표면(434)은 제1 사용자 제공 이미지, 제1 사용자 제공 비디오 프레임 또는 제1 사용자 제공 시퀀스와 연결되어 있다고 가정된다. 나아가, 상기 제2 표면(136)은 (대응하는 속성 설정에 의하여) 제2 사용자 제공 이미지, 제2 사용자 제공 비디오 프레임 또는 제2 사용자 제공 시퀀스와 연결되어 있다고 가정된다. 나아가 최초 시점에 상기 장면 모델은 관찰 지점(438), 시야각(439)의 기술을 포함한다. 상기 시야각(439)은 상기 관찰 지점(438)의 관찰자가 상기 제1 표면(434)의 전체 화면 이미지를 볼 수 있도록 선택된다.
상기 최초 시점에 대한 장면 모델에 기반하여, 상기 비디오 프레임 생성기(110)는 상기 장면 모델에 의해 기술되는 장면을 나타내는 비디오 프레임을 상기 관찰 지점(438)의 상기 관찰자에게 보여지는 대로 생성하는데, 상기 관찰 지점(438)의 상기 관찰자는 상기 시야각(439)에 따라 바라볼 수 있다. 따라서, 상기 비디오 프레임 생성기(110)에 의하여 생성된 비디오 프레임(440)은 상기 관찰 지점(438)의 상기 관찰자에게 보여지는 상기 장면 모델의 영역을 보여준다. 상기에서 정의한 바와 같이, 상기 장면 모델은 상기 관찰 지점(438)의 상기 관찰자가 상기 제1 표면(434)의 전체 화면 이미지를 인식할 수 있고, 상기 프레임(440)이 상기 표 면(434)의 전체 화면 이미지를 나타낼 수 있도록 정의된다. 상기 제1 사용자 제공 이미지, 상기 제1 사용자 제공 비디오 프레임 또는 상기 제1 사용자 제공 비디오 시퀀스가 상기 제1 표면(434)과 연결되어 있는 상기 장면 모델에서 정의된 바와 같이, 상기 제1 시점에 대해 생성된 상기 비디오 프레임(440)은 상기 제1 사용자 제공 이미지의 전체 화면 이미지, 상기 제1 사용자 제공 비디오 프레임의 전체 화면 이미지, 또는 상기 제1 사용자 제공 비디오 시퀀스의 비디오 프레임의 전체 화면 이미지를 나타낸다.
상기 제2 행(444)은 제2 시점의 장면 모델과 대응되는 생성된 비디오 프레임을 나타낸다. 상기 제2 시점의 상기 장면 모델(446)은 상기 제1 시점의 장면 모델(431)과 유사하다. 그러나, 상기 제1 시점과 상기 제2 시점 사이에 상기 관찰 지점(438)이 상기 입방체(432)로부터 멀어졌다는 점에 주목하여야 한다. 따라서, 상기 제2 시점의 새로운 관찰 지점(448)은 이전의 관찰 지점과 비교하였을 때 상기 입방체(432)로부터 더 멀다. 그러나, 간단히 하기 위해 상기 제2 시점의 상기 시야각(449)은 (비록 시야각(449)이 시야각(439)과 다를 수 있더라도) 상기 제1 시점의 상기 시야각(439)과 동일하다고 가정한다. 따라서, 상기 제2 시점의 상기 관찰 지점(448)의 관찰자는 상기 제1 시점의 상태와 비교하였을 때 더 큰 장면 부분을 볼 것이다. 즉, 상기 제2 시점에서 상기 관찰 지점(448)의 관찰자는 상기 입방체(432)의 상기 제1 표면(436)뿐만 아니라, 상기 입방체(432)의 주위 일부도 (그리고 아마도 상기 입방체의 상위 평면도) 본다.
따라서, 상기 제2 시점의 상기 장면 모델(446)에 기반하여, 상기 비디오 프 레임 생성기(110)는 제2 비디오 프레임(450), 상기 입방체(432)의 이미지(예를 들어, 3차원 이미지)를 보여주는 상기 제2 비디오 프레임(450)을 생성한다. 제2 프레임(450)에서 상기 입방체의 상기 제1 표면(436)을 볼 수 있고, 상기 제1 표면(436)이 상기 제1 사용자 제공 이미지, 상기 제1 사용자 제공 비디오 프레임 또는 상기 제1 사용자 제공 비디오 프레임 시퀀스(이하에서 3가지 선택 사항이 상기 제1 사용자 제공 컨텐츠로 지정될 것이다)와 연결되어 있으므로, 상기 제1 사용자 제공 컨텐츠는 상기 제2 비디오 프레임(430)에서 상기 입방체(432)의 상기 제1 표면(436) 상에 표시될 것이다. 이를 성취하기 위해, 상기 비디오 프레임 생성기(410)는, 예를 들어, 상기 제2 생성되는 비디오 프레임(450)을 생성할 때 상기 입방체(432)의 상기 제1 표면(436)의 텍스처로서 상기 제1 사용자 제공 컨텐츠를 이용한다.
여기서 상기 제1 시점에서의 상기 제1 사용자 제공 컨텐츠가 상기 제2 시점에서의 상기 제1 사용자 제공 컨텐츠와 다를 수 있음에 주목하여야 한다. 예를 들어, 상기 비디오 프레임 생성기(110)는 상기 제1 시점에서의 (예를 들어, 사용자 제공 비디오 시퀀스의) 제1 비디오 프레임, 그리고 상기 제2 시점에서의 (예를 들어, 사용자 제공 비디오 시퀀스의) 제2 비디오 프레임을 사용할 수 있다.
상기 제2 시점에서 상기 제1 사용자 제공 컨텐츠는 제2 생성되는 비디오 프레임 상에서는 더 이상 전체 화면 이미지로 보여지지 않고, 도리어 상기 입방체(432)의 상기 제1 표면(434)을 채우는 텍스처으로 나타난다는 점에 주목하여야 한다. 따라서, 상기 제1 사용자 제공 컨텐츠는 단지 상기 제2 생성되는 비디오 프레임(450)의 일부를 채울 뿐이다.
제3 행(454)은 장면 모델(456)과 결과물인 제3 생성되는 비디오 프레임(460)을 나타낸다. 도 4에 나타난 예를 통해, 제3 시점에서의 상기 장면 모델(456)은 상기 입방체(434)가 수직 축(도면 평면에 수직인 것으로 여겨진)을 따라 회전한다는 점에서만 상기 제2 시점의 상기 장면 모델(446)과 다른 것으로 여겨진다는 점에 주목하여야 한다.
따라서, 상기 관찰 지점(448)의 관찰자는 상기 입방체(432)의 상기 제1 표면(434)과 상기 제2 표면(436) 모두를 볼 수 있다. 결과물인 제3 생성되는 비디오 프레임(460) 역시 보여진다. 제2 사용자 제공 컨텐츠 (예를 들어, 제2 사용자 제공 이미지, 제2 사용자 제공 비디오 프레임 또는 제2 사용자 제공 비디오 시퀀스)는 상기 입방체(432)의 상기 제2 표면(436)과 연결되어 있다. 그러므로, 상기 제2 사용자 제공 컨텐츠는 상기 제3 생성되는 비디오 프레임(460)에서 상기 입방체(432)의 상기 제2 표면(436)에 나타난다. 즉, 상기 비디오 프레임 생성기(110)가 상기 장면 모델(456)과 상기 제2 사용자 제공 컨텐츠에 기반하여 상기 제3 비디오 프레임(460)을 생성할 때, 상기 제2 사용자 제공 컨텐츠는 상기 프레임(432)의 상기 제2 표면(436)에 대한 텍스처으로 사용된다. 유사하게, 상기 비디오 프레임 생성기(110)가 상기 제3 생성되는 비디오 프레임(460)을 생성할 때, 상기 제1 사용자 제공 컨텐츠는 상기 입방체(432)의 상기 제1 표면(434)에 대한 텍스처으로 사용된다. 게다가, 상기 제1 사용자 제공 컨텐츠와 상기 제2 사용자 제공 컨텐츠가 제3 생성되는 비디오 프레임(460)에서 동시에 나타나는데, 상기 제1 사용자 제공 컨텐츠와 상기 제2 사용자 제공 컨텐츠가 상기 입방체(432)의 두 개의 다른 표면상에 나타난다는 점에 주목하여야 한다.
보다 일반화하면, 본 발명은 상기 제1 사용자 제공 컨텐츠와 상기 제2 사용자 제공 컨텐츠를 서로 다른 표면상에서 동시에 보여줄 수 있는 해결책을 제공하는데, 상기 제1 사용자 제공 컨텐츠와 상기 제2 사용자 제공 컨텐츠가 나타나는 상기 서로 다른 표면은 하나의 (전형적으로 3차원인) 객체 또는 서로 다른 (전형적으로 3차원인) 객체들에 속할 수 있다.
제4 행(464)은 제4 시점에서의 장면 모델(466)과 대응하는 생성되는 비디오 프레임(470)을 보여준다. 상기 장면 모델(466)에서 볼 수 있듯이, 상기 장면 모델(466)은 단지 상기 입방체(432)가 좀 더 회전한다는 점에서만 상기 장면 모델(456)과 차이가 날 뿐인데, 이는 상기 입방체(432)의 상기 제2 평면(436)이 상기 관찰 지점(448)을 향하게 하기 위함이다. 상기 비디오 프레임 생성기(110)는 상기 장면 모델(466)에 기반하여 상기 제4 생성되는 비디오 프레임(470)을 생성한다. 결과물인 상기 제4 생성되는 비디오 프레임(470)은, 상기 제2 사용자 제공 컨텐츠가 상기 입방체(432)의 상기 제2 표면(436)의 텍스처로서 나타나고, 상기 입방체(432)의 상기 제2 표면(436)이 상기 관찰 지점을 향한다는 점에서, 상기 제2 생성되는 비디오 프레임(450)과 유사하다.
제5 행(474)은 장면 모델(476)과 제5 생성되는 비디오 프레임(480)을 보여준다. 상기 제5 장면 모델(476)은, 상기 제5 장면 모델(476)에서의 상기 제4 관찰 지점(482)이 상기 제4 장면 모델(466)에서의 상기 관찰 지점(448)보다 상기 입방체(432)에 더 가까이 위치한다는 점에서, 상기 제4 장면 모델(466)과 다르다. 바람 직하게는, 상기 관찰 지점(482)과 상기 입방체(432)는 상기 장면 모델(476)에서 상기 관찰 지점(482)의 상기 관찰자가 상기 제2 표면(436)을 전체 화면 이미지로 볼 수 있도록 위치한다. 결과적으로, 제5 생성되는 비디오 프레임은 상기 제2 사용자 제공 컨텐츠를 전체 화면 이미지로 나타낸다.
상술한 바를 요약하면, 상기 다섯 개의 생성되는 비디오 프레임 시퀀스(440, 450, 460, 470, 480)는 상기 제1 사용자 제공 컨텐츠와 상기 제2 사용자 제공 컨텐츠 간의 전환을 보여주는데, 여기서 상기 제1 생성되는 비디오 프레임(440)은 상기 제1 사용자 제공 컨텐츠의 전체 화면 이미지를 보여주고, 상기 제5 생성되는 비디오 프레임은 상기 제2 사용자 제공 컨텐츠의 전체 화면 이미지를 보여준다.
다른 실시예에서, 상기 장면 모델(431, 446, 456, 466, 476)은 두 개의 장면간의 또 다른 장면 전환을 나타낼 수 있다. 예를 들어, 상기 장면 모델(431, 446, 456, 466, 476)은 복수의 메뉴 아이템을 표시하는 메뉴 페이지와 사용자 제공 컨텐츠 간의 장면 전환을 기술할 수 있다. 예를 들어, 상기 제1 장면 모델(431)은 상기 메뉴 페이지의 전체 화면 이미지를 기술하고, 마지막 장면 모델(476)은 상기 사용자 제공 컨텐츠의 전체 화면 이미지를 기술할 수 있다. 이 경우 중간 장면 모델(446, 456, 466)은 상기 제1 장면 모델(431)과 상기 마지막 장면 모델(476)간의 보다 부드러운 장면 전환의 중간 단계를 기술한다.
다른 실시예에서, 상기 장면 모델(431, 446, 456, 466, 476)은 제1 복수의 메뉴 아이템을 표시하는 제1 메뉴 페이지와 제2 복수의 메뉴 아이템을 표시하는 제2 메뉴 페이지 간의 장면 전환을 기술할 수 있다. 이 경우, 상기 제1 장면 모델은 상기 제1 메뉴 페이지의 전체 화면 이미지를 기술하고, 상기 마지막 장면 모델(476)은 상기 제2 메뉴 페이지의 전체 화면 이미지를 기술한다. 상기 중간 장면 모델(446, 456, 466)은 상기 제1 장면 모델(431)과 상기 마지막 장면 모델(476)간의 장면 전환의 중간 단계를 기술할 수 있다.
다른 실시예에서, 상기 장면 모델(431, 446, 456, 466, 476)은 사용자 제공 컨텐츠와 메뉴 페이지 간의 장면 전환을 기술할 수 있다. 이 경우, 상기 제1 장면 모델(431)은 상기 사용자 제공 컨텐츠의 이미지를 기술하고, 상기 마지막 장면 모델(476)은 상기 메뉴 페이지의 이미지를 기술할 수 있다. 상기 메뉴는 제1 시점(예를 들면, 표준화된 시간 파라미터에 대하여 t=0인 시점) 또는 제2 시점(예를 들면, 표준화된 시간 파라미터에 대하여 t=1인 시점)에서의 3차원 장면 이미지이다. 상기 중간 장면 모델(446, 456, 466)은 상기 제1 장면 모델(431)과 상기 마지막 장면 모델(476)간의 (되도록이면 부드러운) 장면 전환을 기술할 수 있다.
또 다른 가능한 구현은 상기 제1 열(430)이 사용자 제공 컨텐츠의 표현을 나타내는 것인데, 상기 사용자 제공 컨텐츠는 상기 비디오 프레임(440)에서 표시되는 것이다. 게다가, 상기 제3 열(454)은 (여느 경우와 같은 6개 버튼 대신에) 3개 버튼을 갖는 메뉴의 표현을 나타낸다. (비디오 프레임(460)에서 보여지는) 상기 입방체의 상기 세 개의 보여지는 표면은 상기 제3 열(454)에서 보는 바와 같이 장면에서 버튼으로 이용될 수 있다.
도 5는 비디오 프레임을 렌더링하는 방법의 블록도를 나타내는데, 상기 비디오 프레임 생성기(110)에 의해 적용될 수 있다. 도 5의 방법은 전반적으로 도면번 호 500으로 지시된다. 도 5의 방법(500)은 비디오 프레임 시퀀스를 생성하기 위해 복수의 프레임에 대하여 복수 횟수만큼 실행될 수 있다.
상기 방법(500)은, 제1 단계(510)에서, 비디오 프레임에 대한 사용자 컨텐츠를 획득하는데, 상기 비디오 프레임은 설명을 위하여 인덱스 f를 가진다.
상기 방법(500)은 나아가, 제2 단계(520)에서, 상기 비디오 프레임 f에 대한 장면의 기하학적 구조를 획득한다.
상기 방법(500)은 나아가, 제3 단계(530)에서, (상기 비디오 프레임 f에 대한) 상기 사용자 제공 컨텐츠와 (상기 비디오 프레임 f에 대한) 상기 장면의 기하학적 구조를 이용하여 비디오 프레임 f를 생성한다.
상기 방법(500)은 나아가, 제4 단계(540)에서, 렌더링된 비디오 프레임 f를 제공한다.
결정 단계(550)에서 렌더링할 프레임이 더 남아 있다면, 단계(510, 520, 530, 540)들이 반복된다.
상기 프레임 f에 대한 상기 사용자 컨텐츠를 획득하는 상기 제1 단계(510)는 상기 프레임 f에 대해 어느 사용자 컨텐츠가 사용될지를 결정한다. 예를 들어, 렌더링되어야 하는 비디오 프레임 시퀀스의 모든 프레임들이 상기 동일한 (불변의) 사용자 제공 컨텐츠를 사용한다면, 이전에 처리된 비디오 프레임을 위해 획득되었던 상기 사용자 제공 컨텐츠가 재사용될 수 있다. 그러나, 서로 다른 사용자 제공 컨텐츠가 상기 생성되는 (또는 렌더링되는) 비디오 프레임 시퀀스의 서로 다른 프레임에 대해 사용되어야 한다면, 연결된 사용자 제공 컨텐츠가 획득된다.
만약, 예를 들어, 상기 사용자 제공 컨텐츠가 비디오 프레임 시퀀스라면, 상기 사용자 제공 비디오 프레임 시퀀스의 상기 서로 다른 프레임들은 상기 생성되는 (또는 렌더링되는) 비디오 프레임 시퀀스의 서로 다른 프레임들과 연결될 수 있다. 따라서, 단계(510)에서, 비디오 프레임의 사용자 제공 비디오 프레임 시퀀스의 어느 프레임이 상기 이전에 렌더링된 비디오 프레임의 생성에 사용되어야 했는지 식별된다.
여기서 하나의 생성되는 (또는 렌더링되는) 비디오 프레임의 생성에 있어서 하나 또는 복수의 사용자 제공 비디오 프레임이 사용될 수 있다는 점에 주목하여야 한다. 예를 들어, 하나의 생성되는 (또는 렌더링되는) 비디오 프레임 내에 제1 사용자 제공 비디오 프레임 시퀀스의 대응하는 비디오 프레임과 제2 사용자 제공 비디오 프레임 시퀀스의 대응하는 프레임을 포함하는 것이 가능하다. 사용된 비디오 프레임의 예가 도 7를 참조하여 나타나 있다.
상기 제2 단계(520)에서 상기 현재 처리되는 프레임 f에 대한 장면의 기하학적 구조가 획득된다. 상기 장면의 기하학적 구조는, 예를 들어, 각 프레임에 존재하는 기하학적 객체를 묘사하는 기술 언어(description language)의 형태로 주어질 수 있다. 예를 들어, 프레임 f에 대한 상기 장면의 기하학적 구조는 도 3의 리스트(300)와 유사한 기술 언어로 기술될 수 있다. 즉, 상기 장면 기술은 각 프레임에서 표시되는 기하학적 형상 또는 구성 요소의 리스트를 포함할 수 있는데, 기하학적 객체 또는 형상과 연결되어 있는 복수의 속성 또는 특성이 수반될 수 있다. 그러한 특성은, 예를 들어, 객체의 위치 및/또는 방위, 객체의 크기, 객체의 이름, 객체의 소재, 객체나 객체의 개개 평면과 연결되는 텍스처, 객체의 투명도, 기타 등등을 포함할 수 있다. 여기서 어떠한 특성도 가상 현실 세계의 기술(description)에 있어 알려진 기하학적 객체 또는 기하학적 형상을 위해 사용될 수 있다는 점에 주목하여야 한다.
나아가, 상기 장면의 기하학적 구조는 관찰자 또는 관찰 지점에 관한 정보를 포함할 수 있는데, 상기 장면의 기하학적 구조에 의해 기술되는 장면 이미지를 생성하는 장면 시점을 정의한다. 상기 관찰 지점 및/또는 상기 관찰자의 기술은 상기 관찰 지점의 위치, 관찰 방향 그리고 시야각을 포함할 수 있다.
여기서 상기 프레임 f에 대한 상기 장면의 기하학적 구조는 상기 프레임 f에 대해 이용 가능한 장면 모델로부터 직접 가져올 수 있다는 점에 주목하여야 한다. 선택적으로, 상기 프레임 f에 대한 상기 장면의 기하학적 구조는 상기 프레임 f 전에 표시된 프레임 e에 대한 장면 모델을 이용하여 획득될 수 있는데, 상기 프레임 e와 상기 프레임 f 사이의 시간 동안의 객체의 움직임에 대한 정보를 이용한다. 또한, 상기 관찰 지점의 움직임, 관찰 방향 또는 시야각에 관한 정보는 상기 프레임 f에 대한 상기 장면의 기하학적 구조를 획득하기 위해 평가될 수 있다. 따라서, 상기 프레임 f에 대한 상기 장면의 기하학적 구조는 상기 프레임 f에 표시되어야 하는 기하학적 객체 및/또는 기하학적 형상의 기술이다.
상기 제3 단계(530)에서, 비디오 프레임 f는 상기 사용자 제공 컨텐츠와 상기 제2 단계(520)에서 획득된 상기 장면의 기하학적 구조를 이용하여 생성될 수 있다. 상기 비디오 프레임 f의 생성에 대한 세부 내용은 도 6을 참조하여 후술할 것 이다. 상기 제3 단계(530)에서 렌더링된 비디오 프레임은 상기 프레임 f에 대한 사용자 컨텐츠와 상기 프레임 f에 대한 상기 장면의 기하학적 구조에 기반하여 획득된다.
결과적으로, 상기 제4 단계(540)에서, 상기 렌더링된 프레임 f가 추가 처리를 위해 제공되는데, 예를 들면 프레임 시퀀스를 형성하거나 프레임 또는 프레임 시퀀스의 소스 소재의 추가 인코딩을 수행하기 위함이다.
도 6은 사용자 제공 컨텐츠와 상기 장면의 기하학적 구조를 이용하여 비디오 프레임 f를 생성하는 과정을 나타내는 블록도이다. 도 6의 방법은 전반적으로 도면번호 600으로 지시된다.
상기 비디오 프레임 f의 생성 과정은 미리 정하여진 이름 또는 미리 정하여진 객체 속성을 갖는 상기 비디오 프레임 f에 대한 상기 장면 모델에서 객체를 식별하는 제1 단계(610)를 포함한다. 그러한 객체가 상기 제1 단계(610)에서 식별될 수 있다면, 상기 식별된 객체는 제2 단계(620)에서 사용자 제공 객체로 대체될 수 있다. 제3 단계(630)에서, 객체는 미리 정하여진 표면 속성을 갖는 표면을 갖는 상기 장면 모델에서 식별될 수 있다. 상기 미리 정하여진 표면 속성은, 예를 들어, 표면 텍스처 속성, 표면 소재 속성 또는 표면 이름 속성이 될 수 있다. 그러나, 미리 정하여진 이름을 갖는 객체가 상기 장면 모델 내에 존재하는지 알 수 있고, 이 경우 상기 객체의 적어도 하나의 특정한 표면은 상기 미리 정하여진 표면 속성을 갖는 것으로 자동적으로 간주될 수 있다. 예를 들어, 상기 장면 모델이 미리 정하여진 이름(예를 들어, video_object, 또는 Mov가 영화를 나타내는 경우의 NSG_Mov) 을 갖는 입방체를 포함한다면, 각각의 입방체의 표면이 그 위에 비디오를 표시하도록 설정된 상기 미리 정하여진 표면 속성을 갖는지를 정의할 수 있다.
즉, 상기 제3 단계(630)의 핵심 목적은 그 위에 사용자 제공 컨텐츠를 표시하는 적어도 하나의 표면을 식별하거나, 또는 그것에 관하여 표면상에 사용자 제공 컨텐츠를 표시하도록 예정된 것임을 지시하는 속성을 갖는 적어도 하나의 객체를 식별하는 것이다.
상기 사용자 제공 컨텐츠를 표시하도록 예정된 표면이 식별되었다면, 상기 사용자 제공 컨텐츠는 각각의 표면상에 표시된다. 이러한 효과를 얻기 위해, 상기 비디오 프레임 생성기는 상기 사용자 제공 컨텐츠를 그 위에 사용자 제공 컨텐츠를 표시하도록 예정된 것으로 인식된 표면에 대한 텍스처으로 사용할 수 있다.
예를 들면, 상기 비디오 프레임 생성기는 상기 사용자 제공 컨텐츠를 표시하도록 예정된 적어도 하나의 표면을 식별하기 위해 상기 프레임 f에 대한 상기 장면 기술 또는 상기 장면 모델을 분석할 수 있다. 예를 들면, 상기 비디오 프레임 생성기는 상기 사용자 제공 컨텐츠를 상기 특정 표면을 위한 텍스처로서 사용된다는 것을 지시하는 참조(예를 들면, 링크)를 상기 장면 모델에 삽입할 수 있다. 즉, 상기 비디오 프레임 생성기는 객체 또는 표면의 특징적 이름 또는 특징적 속성을 식별하기 위해 상기 장면 모델 또는 상기 장면 기술을 분석할 수 있고, 상기 사용자 제공 컨텐츠가 텍스처로서 적용된다는 점을 지시하기 위해 식별된 객체 또는 표면의 텍스처 속성을 설정할 수 있다.
분석을 위하여, 상기 비디오 프레임 생성기는, 예를 들어, 미리 정하여진 분 석 규칙을 따를 수 있는데, 예를 들어 상기 분석 규칙은 미리 정하여진 표면 이름 또는 표면 속성을 갖는 표면이 사용자 제공 컨텐츠에 기반한 텍스처으로 채워져야 한다는 것을 정의하는 것일 수 있다.
선택적으로, 상기 분석 규칙은 미리 정하여진 이름을 갖는 객체의 미리 정하여진 i 번째 표면은 상기 사용자 제공 컨텐츠에 기반한 텍스처이 주어져야 한다고 지시할 수 있다.
만약 어떤 표면이 상기 사용자 제공 컨텐츠에 기반한 텍스처을 갖는 것으로 예정된 상기 장면 모델 또는 상기 장면 기술에서 식별된다면, 상기 비디오 프레임 생성기(110)는 결과적으로 상기 식별된 표면상에서 상기 사용자 제공 컨텐츠를 표시한다. 이를 위하여, 상기 장면 모델 또는 상기 장면 기술에 의해 기술되는 상기 장면의 도면이 생성된다. 상기 장면 모델 또는 상기 장면 기술에서 그들의 (위치, 크기, 방위, 색채, 소재, 텍스처, 투명도와 같은) 속성의 관점에서 기술된 상기 객체들은 상기 객체들의 도면으로 전환되는데, 서로 다른 객체 및 상기 관찰 지점을 고려하여 상기 객체들의 상대적 위치를 고려한다. 즉, 상기 장면 모델 또는 상기 장면 기술에 의해 기술된 상기 객체들의 배열은 상기 관찰 지점에서 보여지는 도면으로 전환된다. 상기 도면의 생성에 있어서, 상기 제2 단계(620)에서의 객체들의 대체는 물론 상기 사용자 제공 컨텐츠가 그와 같은 텍스처을 갖기로 예정된 식별된 표면의 텍스처이 된다는 사실도 고려된다.
여기서 장면 모델 또는 장면 기술에 의해 기술되는 장면의 도면의 생성은 미술가/디자이너에게 알려져 있다는 점에 주목하여야 한다.
나아가 상기 모든 단계(610, 620, 630, 640)를 수행할 필요는 없다는 점에 주목하여야 한다. 대조적으로, 어떤 실시예에서는 단계(610)와 (그리고 단계(610)이 성공한다면) 단계(620)를 수행하는 것으로 충분할 수 있다. 이 경우, 상기 비디오 프레임 생성기(110)는 상기 장면 모델에 의해 기술되는 상기 장면을 표시하는 비디오 프레임을 생성하는데, 상기 식별된 객체는 상기 제2 단계(620)에 따라 상기 사용자 제공 객체로 대체된다. 최종적으로, 단계(640)는 도면을 생성하기 위해 실행된다.
그러나, 만약 예를 들어 어떤 객체를 대체하는 것이 불필요하다면, 상기 제1 단계(610)와 상기 제2 단계(620)를 실행하는 것이 불필요하다. 이 경우, 상기 사용자 제공 컨텐츠가 (예를 들어, 텍스처로서) 표시되어야 하는 상기 장면 모델에서 상기 표면을 식별하는 단계(630)를 실행하는 것으로 충분할 수 있다. 상기 단계(630) 이후에, 상기 제4 단계(640)가 실행된다. 상기 단계(640)에서 상기 비디오 프레임 생성기(110)는 상기 사용자 제공 컨텐츠를 상기 식별된 표면상에 표시하는 비디오 프레임을 생성한다.
즉, 식별된 객체를 사용자 제공 객체로 대체하거나(단계(610, 620)), 표면의 텍스처을 사용자 제공 객체로 대체하거나(단계(630)), 또는 식별된 객체를 사용자 제공 객체(단계(610, 620))로 대체하고 표면의 텍스처을 사용자 제공 객체(단계(630))로 대체하는 것이 가능하다.
도 7은 제1 사용자 제공 비디오 프레임 시퀀스와 제2 사용자 제공 비디오 프레임 시퀀스 간의 장면 전환 생성에 있어서 두 개의 사용자 제공 비디오 프레임 시 퀀스의 비디오 프레임을 나타내는 도면이다. 여기서 상기 장면 전환은 상기 제1 사용자 제공 비디오 프레임 시퀀스의 컨텐츠와 상기 제2 사용자 제공 비디오 프레임 시퀀스의 컨텐츠가 상기 생성되는 비디오 프레임 시퀀스(116)에서 표시되는 동안의 시간 간격을 포함하는 것으로 간주된다.
이를 위하여, 사용자는 겹침 영역(overlap region)을 정의할 수 있다. 즉, 겹침 영역은, 예를 들어, (일정 지속 시간에 대응하는) F 개의 프레임을 포함할 수 있다. 따라서, 상기 제1 사용자 제공 비디오 프레임 시퀀스의 마지막 F개의 프레임이 상기 장면 전환에서 사용된다. 상기 제1 사용자 제공 비디오 프레임 시퀀스의 상기 프레임들이 도 7의 제1 그래픽적 표현(710)에 나타나 있는데, 상기 제1 사용자 제공 비디오 프레임 시퀀스의 마지막 F개의 프레임들은 (n-F+1) ~ n의 인덱스로 지시된다. 여기서 상기 제1 사용자 제공 비디오 프레임 시퀀스의 마지막 F개의 프레임들이 상기 장면 전환을 위해 사용된다는 점에 주목하여야 한다. 그러나, 반드시 마지막 F개의 프레임을 사용하여야 하는 것은 아니다. 오히려, 상기 제1 사용자 제공 비디오 프레임 시퀀스 내에 배열된 F개의 프레임들을 사용하는 것이 가능하다.
게다가, 여기서 제2 사용자 제공 비디오 프레임 시퀀스의 상기 제1 F개 프레임은 상기 생성되는 비디오 프레임 시퀀스의 생성에 사용된다고 가정된다.
나아가 상기 생성되는 비디오 프레임 시퀀스는 1 - F로 지시되는 F개의 비디오 프레임을 포함한다고 가정한다. 따라서, 상기 제1 사용자 제공 비디오 프레임 시퀀스의 n-F+1번 인덱스의 프레임과 상기 제2 사용자 제공 비디오 프레임 시퀀스 의 1번 인덱스의 프레임은 상기 생성되는 비디오 프레임 시퀀스의 제1 프레임과 연결된다. 따라서, 상기 연결되는 비디오 프레임들은 상기 제1 생성되는 비디오 프레임 시퀀스의 생성에 사용된다. 즉, 상기 생성되는 비디오 프레임 시퀀스의 제1 프레임을 계산하기 위해, 상기 제1 사용자 제공 비디오 프레임 시퀀스의 (n-F+1)번째 프레임과 상기 제2 사용자 제공 비디오 프레임 시퀀스의 제1 프레임이 적용된다.
대조적으로, 상기 제1 사용자 제공 비디오 프레임 시퀀스의 n번째 프레임과 상기 제2 사용자 제공 비디오 프레임 시퀀스의 F번째 프레임은 상기 생성되는 비디오 프레임 시퀀스의 F번째 프레임과 연결된다.
여기서 사용자 제공 비디오 시퀀스의 프레임과 생성되는 비디오 프레임 시퀀스의 프레임 간의 연결이 상기 연결되는 프레임들이 상기 생성되는 비디오 프레임 시퀀스의 특정 프레임의 계산에 요구됨을 자동적으로 의미하는 것은 아니라는 점에 주목하여야 한다. 그러나, 상기 생성되는 비디오 프레임 시퀀스의 f번째 프레임의 렌더링 처리 동안 상기 제1 사용자 제공 비디오 프레임 시퀀스의 프레임 및/또는 상기 제2 사용자 비디오 프레임 시퀀스의 프레임이 요구된다면, 상기 연결되는 프레임이 사용된다.
즉, 상술한 상기 제1 사용자 제공 비디오 프레임 시퀀스와 상기 제2 사용자 제공 비디오 프레임 시퀀스 그리고 상기 생성되는 비디오 프레임 시퀀스의 프레임 간의 연결은 상기 생성되는 비디오 프레임 시퀀스가 효율적으로 계산될 수 있도록 하는데, 변동하는 (또는 움직이는) 사용자 제공 컨텐츠가 상기 생성되는 비디오 프레임 시퀀스에 삽입될 수 있다.
즉, 상기 제1 사용자 제공 비디오 프레임 시퀀스의 프레임은 상기 제1 사용자 제공 비디오 프레임 시퀀스를 표시하도록 예정된 (또는 식별된) 표면의 프레임에 따라 변동하는 텍스처로서 이용된다.
상기 제2 사용자 제공 비디오 프레임 시퀀스의 프레임은 상기 제2 사용자 제공 비디오 프레임 시퀀스를 표시하도록 예정된 (또는 식별된) 표면의 프레임에 따라 변동하는 텍스처을 구성한다.
따라서, 상기 생성되는 비디오 시퀀스는 프레임에 따라 변동하는 텍스처을 이용하여 제공된다.
나아가 상기 생성되는 비디오 프레임 시퀀스의 계산을 위하여 상기 제1 사용자 제공 비디오 프레임 시퀀스 및/또는 상기 제2 사용자 제공 비디오 프레임 시퀀스는 상기 생성되는 비디오 프레임 시퀀스에 따라 이동될 수 있다는 점에 주목하여야 한다. 또한, 상기 제1 사용자 제공 비디오 프레임 시퀀스는 시간에 따라 확장되거나 압축될 수 있다. 상기 제1 사용자 제공 비디오 프레임 시퀀스의 한 프레임과 상기 제2 사용자 제공 비디오 프레임 시퀀스의 한 프레임은 사용자 제공 컨텐츠들이 사용되는 상기 생성되는 비디오 프레임 시퀀스의 각 프레임과 연결되는 것만이 단지 요구된다.
도 8은 텍스트 플레이스 홀더 객체를 텍스트로 대체하는 과정을 나타내는 도면이다.
도 8의 상기 도면은 전반적으로 도면번호 800으로 지시된다. 상기 도면(800)에서 보는 바와 같이, (여기에서는 비디오 프레임 형태로 표현된) 장면 기술(810) 은 텍스트 플레이스 홀더 객체를 포함할 수 있다. 예를 들어, 상기 장면 기술(810)은 입방체 또는 직육면체가 텍스트 플레이스 홀더 객체임을 지시하는 이름 또는 속성을 갖는 입방체 또는 직육면체를 기술할 수 있다. 따라서, 상기 비디오 프레임 생성기(110)가, 상기 장면 모델(112)이 상기 장면 모델 객체가 텍스트 플레이스 홀더 객체임을 지시하는 미리 정하여진 이름 또는 미리 정하여진 객체 속성을 갖는 장면 모델 객체를 포함하는 것을, 알았다면, 상기 비디오 프레임 생성기는 상기 텍스트 플레이스 홀더 객체를 텍스트 표시로 대체한다. 예를 들어, 상기 비디오 프레임 생성기(110)는 상기 텍스트 플레이스 홀더 객체를 사용자 제공 텍스트를 나타내는 하나 또는 복수의 객체로 대체할 수 있다. 즉, 상기 비디오 프레임 생성기는 상기 사용자 제공 텍스트를 나타내는 객체 기술을 상기 장면 모델에 삽입할 수 있다. 상기 장면 모델 생성기는, 예를 들어, 문자열 입력의 형태로 상기 텍스트를 수신하고, 상기 문자열 입력의 텍스트를 나타내는 객체를 생성한다. 선택적으로, 상기 비디오 프레임 생성기는 하나 또는 복수의 객체의 형태로 상기 사용자 제공 텍스트의 기술을 수신할 수 있는데, 상기 객체의 형상은 상기 텍스트를 나타낸다. 이 경우, 상기 비디오 프레임 생성기는, 예를 들어, (복수의 객체의 기술 형태로 된) 상기 텍스트의 상기 사용자 제공 기술을 상기 장면 모델에 포함시키고, 상기 텍스트를 나타내는 상기 객체의 기술을 포함하는 상기 장면 모델에 기반하여 상기 비디오 프레임을 생성할 수 있다.
도 8에서 보는 바와 같이, 비디오 프레임 생성기(110)는 상기 사용자 제공 텍스트의 도면을 포함하는 비디오 프레임(820)을 생성한다. 여기서, 보다 바람직한 실시예에서 상기 사용자 제공 텍스트의 상기 도면의 크기는 상기 텍스트 플레이스 홀더 객체(812)의 크기에 맞춰진다는 점에 주목하여야 한다. 예를 들어, 상기 텍스트 플레이스 홀더 객체는 상기 사용자 제공 텍스트의 외부 경계로서 사용될 수 있다. 또한, 상기 텍스트 플레이스 홀더 객체(812)와 연결된 (예를 들어, 색채 속성 또는 투명도 속성과 같은) 속성들은 상기 사용자 제공 텍스트가 문자열 또는 복수의 객체로서 제공되는지 여부와 무관하게 상기 사용자 제공 텍스트에 적용될 수 있다.
따라서, 상기 장면 모델(112)은 상기 비디오 프레임 시퀀스(116)에서의 상기 사용자 제공 텍스트의 외관을 정의하는 템플릿으로 이용될 수 있다.
이하에서, 본 발명에 대해 추가 기술된다. 또한, 비디오 데이터 매체의 메뉴 구조의 생성을 위한 본 발명의 적용이 기술된다. 게다가, 발명 아이디어에 기반하여 서로 다른 비디오 컨텐츠 간의 장면 전환이 어떻게 생성되는지 기술될 것이다. 나아가, 비디오 효과와 텍스트 효과가 어떻게 생성되는지 기술될 것이다.
이하에서, DVD 메뉴, 비디오 장면 전환, 비디오 효과 그리고 텍스트 효과에 관한 몇몇 일반적인 정보가 기술될 것이다. 우선 제1로, 비디오 장면 전환, 비디오 효과 그리고 텍스트 효과가 기술될 것이다.
비록 본 발명의 핵심적인 응용은 3차원(3D) DVD 메뉴의 생성이지만, 3차원 텍스트 효과는 물론 3차원 비디오 장면 전환, 그리고 3차원 비디오 효과 또한 기술될 것이다. 3차원 비디오 장면 전환, 3차원 비디오 효과 그리고 3차원 텍스트 효과는 좀 더 복잡한 DVD 제작의 보다 간단한 버전(versions)으로서 고려될 것이다.
두 개의 비디오 시퀀스 (또는 비디오 영화)가 결합되거나 연결될 때 갑작스러운 장면 전환을 피하기 위해 전형적으로 하나의 비디오 장면 전환이 삽입된다. 아주 간단한 2차원(2D) 비디오 장면 전환은, 예를 들어, 제1 비디오를 점차 어둡게 하면서, 이어서, 반대로 제2 비디오를 점차 밝게 하는 것이다. 일반적으로, 비디오 장면 전환은 처음에 제1 비디오와 동일한 프레임을 보여주고, 마지막에 제2 비디오와 동일한 프레임을 보여주는 비디오 프레임 시퀀스(또는 영화 시퀀스)이다. 이러한 (비디오 프레임) 시퀀스가 두 비디오 사이에 커트(cut) (또는 삽입)되어, 따라서 두 비디오 사이에 연속적인(또는 부드러운) 장면 전환이 되게 한다.
3차원 비디오 장면 전환에 대하여, 상기 비디오 프레임 시퀀스(또는 영화 시퀀스)는 3차원 장면 렌더링의 결과물이다. 또한, 3차원 비디오 장면 전환에 있어서, 상기 시퀀스의 제1 프레임은 되도록 상기 제1 비디오의 프레임과 일치하고, 상기 시퀀스의 마지막 프레임은 되도록 상기 제2 비디오의 프레임과 일치한다. 3차원 장면 및 애니메이션은 별도로 하고, 렌더링 엔진은 상기 제1 비디오와 상기 제2 비디오의 동시(simultaneous) 프레임을 입력으로 받아들인다. 두 비디오가 겹쳐지는 방식으로 서로의 위에 놓이고, 상기 겹침 영역이 비디오 장면 전환의 길이를 정의하며 상기 렌더링된 장면으로 대체된다고 가정함으로써 (상기 장면 전환을 생성하는) 처리 과정을 상상할 수 있다. 3차원 비디오 장면 전환의 간단한 예는 상기 제1 비디오가 앞쪽에 보이고 상기 제2 비디오가 뒤쪽에 보이는 비행기이다. 상기 비행기는 애니메이션(또는 장면 전환)의 시작에서는 앞쪽이 전체 화면으로 보이고, 끝에는 뒤쪽이 전체 화면으로 보이는 방식으로 움직여야 한다. 예를 들어, 상기 비행 기는 카메라(또는 관찰자, 또는 관찰 지점)로부터 멀어지고, 수평 대칭축 주위로 반 회전하고, 다시 상기 카메라를 향해 이동할 수 있다.
3차원 비디오 효과와 3차원 텍스트 효과는 일반적으로 비디오 영화(또는 비디오 프레임 시퀀스)에 추가되는 3차원 객체이다. 이 경우, 원래 비디오(또는 시작 비디오)의 프레임은 물론 상기 3차원 장면과 상기 애니메이션이 상기 렌더링 엔진의 입력이 된다.
텍스트 효과에 있어서, 텍스트 문자열이 정해지거나(또는 설정되어야) 한다. 3차원 텍스트 효과의 예는, 상기 문자열이 형성되고, 상기 문자들의 3차원 텍스트 문자로 렌더링되고, 그 후 다시 사라지는 시퀀스(예를 들어, 비디오 프레임 시퀀스)로 상상될 수 있다. 이 경우 상기 원래 비디오(또는 시작 비디오)는 백그라운드에서 계속된다.
3차원 비디오 효과는, 예를 들어, 상기 프레임으로 날아 들었다가, 다시 날아 나오는 (예를 들어, 유아용 영화에서의 고무 젖꼭지, 또는 세계축구챔피언십 영화에서의 축구공과 같은) 3차원 객체가 될 수 있다.
예를 들어, 3차원 비디오 장면 전환, 3차원 비디오 효과 그리고 3차원 텍스트 효과가 결합된다. 상기 렌더링 엔진은 하나 또는 복수의 비디오 그리고 (선택적으로) 하나 또는 복수의 텍스트 문자열의 동시 프레임뿐만 아니라 3차원 장면을 입력으로 받아들인다. 그러면 상기 렌더링 엔진은 프레임 단위로 짧은 영화를 생성하는데, 상기 영화는 이후에 외부 장치에 의해 (예를 들어, 추가적인 비디오 소재와 함께 결합되거나 커트되는 등) 추가 처리된다.
상기 3차원 장면은 상용 데이터 포맷 또는 일반적으로 어떤 3차원 모델링 소프트웨어의 표준 내보내기(export) 데이터 포맷이 될 수 있는 일반적인 데이터 포맷의 형태로 이용 가능하다(또는 주어질 수 있다). 원칙적으로, 임의의 3차원 데이터 포맷(예를 들어, 3차원 장면을 기술하는 데이터 포맷)의 가져오기(import)가 가능하다. 상기 데이터 파일 포맷의 상세한 구조는 본 발명과는 관련이 없다.
나아가, 기하학적 개체를 모으고, 그룹, 객체 및/또는 표면 정의에 이름을 붙일 수 있는 것이 선호된다(예를 들어, 소재는 색채와 텍스처과 동일하다: 소재 = 색채 + 텍스처). 이런 식으로, 예를 들어, 특정 이름(예를 들어 특징적이거나 미리 정하여진 이름)을 3차원 비디오 장면 전환에 대해 상술한 예에서의 상기 비행기의 앞쪽 소재에 대하여 사용함으로써 상기 렌더링 엔진에게 상기 제1 비디오의 프레임이 상기 표면상에 위치해야 한다는 (또는 보여져야 한다는) 정보를 제공하는 것이 가능하다. 즉, 상기 비행기의 앞쪽의 소재가 특정 이름(예를 들어, NSG_Mov)으로 주어진다. 상기 특정 이름(NSG_Mov)은 상기 제1 비디오의 프레임이 특정 표면상에, 즉 상기 비행기의 앞쪽에, 보여져야 한다고 상기 렌더링 엔진에게 지시한다. 같은 방식으로, 상기 렌더링 엔진은 상기 제2 비디오의 프레임을 상기 비행기의 뒤쪽에 나타낼 것을 특정 소재 이름(예를 들어, NSG_MovI)에 의하여 지시받을 수 있다.
최종 사용자 편집 텍스트를 상기 3차원 장면에 삽입하기 위해, 직육면체와 같은 3차원 객체가 사용되는데, 상기 3차원 객체는 3차원 텍스트 객체에 대한 플레이스 홀더로서 특정(또는 특징적인) 이름으로 표시된다. 이어서 상기 렌더링 엔진은 사전에(예를 들어, 상기 3차원 장면의 도면을 생성하기 전에) 이들 객체를 제거 하고, 최종 사용자에 의해 정의된 테스트를 상기 제거된 자리에 렌더링할 수 있다. 그려진 3차원 텍스트의 크기는 상기 플레이스 홀더 객체의 크기에 따른다(또는 의존한다).
이러한 방식으로, 3차원 모델러는 이름과 그룹핑(grouping)을 제공함으로써 smart3D 엔진에 의하여 비디오 장면 전환, 텍스트 효과 또는 비디오 효과로 해석되는 3차원 장면을 생성할 수 있는데, 이때 상용 도구(예를 들어, 3차원 기술 데이터 포맷 형태로 데이터를 내보낼 수 있는 어떠한 프로그램)가 사용될 수 있다. 상기 3차원 모델러는 어떠한 프로그래밍 지식도 요구하지 않는다. (비디오) 장면 전환과 (비디오) 효과를 고려함에 있어서 객체 이름의 형태를 갖는 적은 수의 규칙이 있는데 반하여, 실용적인 DVD 메뉴의 생성은 더 복잡하다. 그러나, 기본적인 방식은 동일하다.
이하에서, DVD 메뉴의 생성이 기술될 것이다. 여기서 대부분의 상용 DVD들은 메인 영화 이외에도 메이킹 필름 또는 배우들의 인터뷰와 같은 추가적인 비디오 소재를 포함하고 있음에 주목하여야 한다. 이외에도, 메인 영화는 대개 챕터들(chapters)로 나눠진다. 상기 DVD의 최종 사용자가 상기 DVD의 내용 상에서 이동할 수 있게 하기 위해, 상기 DVD는 상술한 상기 비디오 소재에 더하여 추가 비디오 시퀀스를 포함하는데, 상기 추가 비디오 시퀀스는 DVD 플레이어에 의해 메뉴 구조로서 해석된다. 비디오 DVD의 데이터 포맷(또는 데이터 포맷의 상세)은 명세 상에서 정의되고, smart3D 개념으로 생성된 상기 DVD는 명세를 벗어나지 않는다.
DVD 메뉴는 복수의 메뉴 페이지로 구성된다. 사용자는 버튼을 선택하는 것과 같은 행위를 함으로써 페이지 간에 변경할 수 있다. 또한, 상기 사용자는 어떤 행위를 함으로써 특정 비디오 또는 비디오의 특정 챕터를 시작할 수 있다.
두 개의 메뉴 페이지의 표시 간에, 메뉴 페이지와 비디오 간에, 또는 DVD를 삽입한 직후의 검정색 화면과 메인 메뉴 페이지 간에, 작은 비디오 시퀀스가 정의되어 비디오 장면 전환과 유사하게 급작스러운 변경을 막을 수 있다. 도 9, 10, 11, 12, 13, 14, 15, 16, 17은 메뉴 간 순서를 갖는 DVD 메뉴의 개략적인 배열(또는 구조)를 나타낸다. 발명 개념(또한 smart3D로 지시되는)은 3차원 모델(또한 장면 모델로 지시되는)을 이용하여 메뉴 페이지와 메뉴 간 순서를 정의할 수 있는 가능성을 제공한다.
상기 DVD 메뉴 페이지 자체가 또한 짧은 비디오 시퀀스인데, (예를 들어, 상기 DVD를 이용하는 사람 등) 상기 DVD 사용자의 선택 시간 동안에도 반드시 고정 이미지만을 표시할 필요가 없도록 하기 위함이다. 대조적으로 하나 또는 복수의 애니메이션이 상기 DVD 사용자가 선택할 수 있는 시간 동안에도 실행될 수 있다. 이들 영화 시퀀스(즉, 작은 애니메이션)는 smart3D를 사용하는 DVD 제작 프로그램(DVD authoring program)에 의해 렌더링될 수 있다.
따라서, 상기 3차원 장면으로부터(또는 상기 3차원 장면에 기반하여) (예를 들어 상기 비디오 프레임 시퀀스와 같은) 상기 시퀀스를 생성하는 작업이 상기 제작 프로그램 또는 제작 소프트웨어의 사용자의 컴퓨터 상에서 실행된다. 상기 DVD 플레이어는 고정된 순서대로 또는 상기 DVD 사용자의 행위에 따라 (상기 DVD 제작 프로그램에 의해 생성된 DVD에 담겨 있는) 비디오를 단순히 재생한다.
이어서 비디오 DVD 매체에서 일어나는 전형적인 장면 전환이 도 9, 10, 11 그리고 12를 참조하여 기술될 것이다. 도 9는 두 개의 메뉴 페이지 간의 시퀀스(예를 들어, 비디오 프레임 시퀀스)를 나타내는 도면이다. 도 9의 도면은 전반적으로 도면번호 900으로 지시된다. 도 9는 제1 메뉴 페이지(910)를 나타낸다. 상기 제1 메뉴 페이지(910)는 버튼들(912, 914, 916, 918, 920, 922)을 포함하는데, 상기 버튼들은 상기 비디오 DVD 매체 상에 포함되는 상기 DVD 컨텐츠의 특정 챕터를 선택하는 데 사용될 수 있다. 상기 버튼들(912, 914, 916, 918, 920, 922)은 하나 또는 복수의 그래픽 객체에 의해 표현될 수 있다. 또한, 상기 버튼들(912, 914, 916, 918, 920, 922)은 선택을 위하여 버튼 중 하나에 하이라이트를 주기 위해 커서가 이동될 수 있도록 선택 영역 및/또는 하이라이트 영역을 포함할 수 있다. 나아가 버튼들(912, 914, 916, 918, 920, 922)의 상기 도면이 사용자 제공 컨텐츠, 사용자 제공 이미지, 사용자 제공 비디오 프레임 또는 사용자 제공 비디오 프레임 시퀀스로서 구성될 수 있다는 점에 주목하여야 한다. 즉, 상기 버튼들의 도면은 고정되거나, 또는 변화하는, 즉 바뀔 수 있는 그래픽 컨텐츠를 포함할 수 있다.
상기 메뉴 페이지(910)가 되도록이면 3차원 모델러에 의해 생성된 장면 모델에 기반하여 기술된다는 점에 주목하여야 한다. 따라서, 상기 메뉴 페이지(910)의 요소(예를 들어, 기하학적 객체)는 장면 기술 언어의 형태로 기술된다. 추가적으로, 상기 플레이스 홀더 객체가 사용자 제공 객체(즉, 사용자 제공 컨텐츠)로 대체될 수 있고, 상기 플레이스 홀더 표면은 사용자 제공 컨텐츠(예를 들어, 사용자 제공 이미지, 사용자 제공 비디오 프레임 또는 사용자 제공 비디오 프레임 시퀀스)를 (예를 들어, 텍스처로서) 표시할 수 있도록 상기 메뉴 페이지(910)의 상기 장면 모델은 플레이스 홀더 객체 또는 플레이스 홀더 표면을 포함한다.
도 9는 제2 메뉴 페이지(930)를 나타낸다. 상기 제2 메뉴 페이지(930)는 복수의 버튼들(932, 934, 936, 938, 940, 942)을 포함한다. 상기 버튼들(932, 934, 936, 938, 940, 942)은 상기 버튼들(912, 914, 916, 918, 920, 922)과 유사한 외관과 기능을 가질 수 있다.
도 9는 나아가 상기 제1 메뉴 페이지(910)와 상기 제2 메뉴 페이지(930) 간의 장면 전환이 일어날 때 상기 DVD 플레이어에 의해 재생되는 메뉴 간 순서 또는 메뉴 대 메뉴 순서(950)를 나타낸다. 상기 제1 메뉴 페이지(910)와 상기 제2 메뉴 페이지(930) 간에 위치하는 (전형적으로 움직이는 장면 또는 애니메이션인) 상기 메뉴 간 순서(950)는 오래된, 이전 (또는 이전에 표시된) 상기 메뉴의 내용이 사라지고, 상기 새로운 (다음의 또는 다음에 표시되는) 메뉴의 상기 장면(또는 내용)이 생성되도록 처리한다. 상기 메뉴의 구조에 따라서, 몇몇 이동 화살표(예를 들어 초록색 화살표)를 표시하는 것이 바람직하다. 여기서 도 9를 참조하여 기술된 상기 메뉴 구조가 본 발명의 본질적인 요소가 아니며, 단지 하나의 실시예로서 고려되어야 한다는 점에 주목하여야 한다. 즉, 본 발명은 특정 메뉴 구조에 제한되지 아니한다. 상기 전형적인 메뉴 도면은 단순히 동적인 메뉴 생성 문제를 설명할 의도에 의한 것이다. 여기서, "동적인"은 상기 메뉴가 설계되는 시점(즉, 예를 들어 메뉴 템플릿이 생성되는 시점)에 상기 메뉴의 최종적인 외관은 알 수 없다는 것을 의미한다. 예를 들어, 상기 메뉴가 설계되는 시점에, 상기 개별 버튼(또는 동적 전환 영역)과 선택적인 추가 (3차원) 객체의 점유(또는 배치)와 사용은 알 수 없다.
도 10은 소개 영화의 개념적으로 약술된 진행을 나타내는 도면이다. 도 10의 도면은 전반적으로 도면번호 1000으로 지시된다. 상기 도면(1000)은 복수의 버튼들(1012, 1014, 1016, 1018, 1020, 1022)을 갖는 제1 메뉴 페이지(1010)을 나타낸다. 예를 들어, 상기 제1 메뉴 페이지(1010)는 상기 메뉴 페이지(910)과 일치할 수 있다. 상기 도면(1000)은 나아가 (또한 "인트로(intro)"로 지시되는) 메뉴 트레일러 시퀀스(menu trailer sequence, 1030)를 나타낸다. 상기 소개 영화("인트로") 또는 트레일러(trailer)는 상기 DVD가 DVD 플레이어에 삽입될 때 한 번 재생된다. 상기 소개 영화 또는 트레일러는 상기 DVD의 제1 메인 메뉴에서 끝난다.
즉, 상기 메뉴 트레일러(menu trailer, 1030)는 검정색 화면에서 시작해서 상기 제1 메인 메뉴에서 끝나는 비디오 프레임 시퀀스이다. 그 밖에, 상기 메뉴 트레일러(1030)는 이미 상술한 바와 같이 되도록이면 장면 모델에 기반하여 기술된다.
도 11은 "챕터 선택 메뉴 -> 영화 시작" 중간 시퀀스의 대략적으로 약술된 애니메이션의 도면을 나타낸다. 도 11의 상기 도면은 전반적으로 도면번호 1100으로 지시되고 메뉴 페이지(1110)를 나타낸다. 상기 메뉴 페이지(1110)는, 예를 들어, 도 9의 상기 메뉴 페이지(910), 도 9의 상기 메뉴 페이지(930) 또는 도 10의 상기 메뉴 페이지(1010)와 일치할 수 있다. 도 11의 상기 도면은 나아가 영화(즉, 비디오 프레임 시퀀스)의 제1 프레임(1120)을 나타낸다. 상기 도면(1100)은 나아가 메뉴 중간 시퀀스 또는 메뉴 대 타이틀 시퀀스(1130)을 나타낸다.
상기 메뉴 중간 시퀀스(1130)는 되도록이면 상기 메뉴 페이지(1110)을 보여주는 비디오 프레임으로 시작해서 상기 사용자 제공 비디오(1120)의 제1 프레임과 동일한 비디오 프레임으로 끝난다. 여기서 상기 메뉴 중간 시퀀스(1130)는, 예를 들어, 상술한 바와 같이 장면 모델에 기반하여 기술될 수 있다는 점에 주목하여야 한다.
또 다른 실시예에서, 상기 메뉴 중간 시퀀스는 역순으로 상기 메뉴에 통합될 수 있다. 따라서, 상기 메뉴 중간 시퀀스(1130)는 (프레임(1120)으로 보여지는 프레임의) 비디오가 끝나고 상기 메인 메뉴로 돌아가는 장면 전환이 일어날 때 재생될 수 있다. 즉, 상기 타이틀에서 상기 메뉴로의 상기 장면 전환에 대한 메뉴 중간 시퀀스가 제공될 수 있다. 상기 각각의 장면 전환은 상기 비디오 프레임 시퀀스의 프레임(예를 들어, 마지막 프레임)에서 시작하여, 상기 메뉴 페이지(1110)에서 끝날 수 있다.
도 12는 메인 메뉴와 서브 메뉴 간의 시퀀스를 나타내는 도면이다. 도 12의 상기 도면은 전반적으로 도면번호 1200으로 지시된다. 상기 도면(1200)은 메인 메뉴 페이지(1212)와 서브 메뉴 페이지(1220)를 나타낸다. 상기 메인 메뉴 페이지(1212)는, 예를 들어, 도 9의 상기 제1 메뉴 페이지(910) 또는 상기 제2 메뉴 페이지(930), 도 10의 상기 메뉴 페이지(1010) 또는 도 11의 상기 메뉴 페이지(1110)와 일치할 수 있다. 상기 서브 메뉴 페이지(1220)는 상기 메인 메뉴 페이지(1212)의 구조와 유사하거나 동일한 구조를 가질 수 있다. 그러나, 상기 서브 메뉴 페이지(1220)는, 예를 들어, 상기 DVD의 영화의 서브 챕터에 대한 접근을 허용하는 버 튼을 포함할 수 있다. 따라서, 상기 서브 메뉴 페이지(1220)는 복수의 버튼들(1222, 1224, 1226, 1228, 1230, 1232)을 포함할 수 있다. 상기 도면(1200)은 나아가 메뉴 중간 시퀀스 또는 메뉴 대 서브 메뉴 시퀀스(1240)를 나타낸다.
도 12에서, n=6까지의 챕터들이 (전형적인 실시예에 따라) 메뉴별로 존재할 수 있다. 전형적인 메뉴 중간 시퀀스의 템플릿에 대하여, n*4+10개의 적절히 지시된 객체들이 상기 설계자(예를 들어, 3차원 모델러)에 의해 제공된다. 따라서, 만약 메뉴 페이지 당 최대 n=6개의 챕터가 존재한다고 가정한다면, 34개의 적절히 지시된 객체들이 설계자에 의해 제공되어야 한다. 특히, 다음 객체들은 전형적인 메뉴 대 메뉴 애니메이션 시퀀스를 위해 제공되어야 한다.
n "오래된" 챕터 이미지들
n "오래된" 챕터 텍스트들
3 "오래된" 이동 화살표들
1 "오래된" 헤더(header)
1 "오래된" 푸터(footer)
n "새로운" 챕터 이미지들
n "새로운" 챕터 텍스트들
3 "새로운" 이동 화살표들
1 "새로운" 헤더(header)
1 "새로운" 푸터(footer)
상술한 객체들과 밀접하게 연결되어, n개의 "오래된" 그리고 n개의 "새로운" 대응되는 그룹들이 3차원 장면에서 대응하여 놓여야 한다. "오래된" 그리고 "새로운" 그룹들은 어느 객체가 메뉴 버튼에 속하는지를 정의한다. 아래에서 보다 자세히 설명될 "모니터들" 예에서, 제1 챕터 이미지, 제1 챕터 텍스트 그리고 제1 모니터의 완전한 기구가 상기 제1 그룹에서 요약되어 있다.
따라서, 상기 3차원 모델러는 상용 소프트웨어를 이용하여 일련의 애니메이션을 생성함으로써 3차원 메뉴를 생성하여, 상기 애니메이션은 상술한 규칙을 준수한다. 상기 3차원 모델러는 어떠한 프로그래밍 지식도 가질 필요가 없다. 게다가, 상기 제작 프로그램의 상기 사용자 역시 3차원 모델링에 관한 지식을 가질 필요가 없다. 상기 smart3D 엔진은 (상기 3차원 모델러에 의해 생성된) 상기 3차원 장면을 읽어들이고, 상기 3차원 시퀀스와 상기 DVD 제작 프로그램의 상기 사용자에게서 획득한 정보로부터 짧은 영화 시퀀스를 생성한다. 상기 영화 시퀀스는 상기 메뉴 구조에 대한 정보와 함께 명세에 부합하는 상기 DVD 상의 동적인 DVD 메뉴를 구성한다.
이하에서, 메뉴 중간 시퀀스를 생성하기 위해 smart3D 엔진이 상기 제작 프로그램으로부터 얻은 정보와 함께 3차원 장면을 어떻게 처리하는지 기술할 것이다.
상기 제작 프로그램으로부터, 서로 다른 정보가 smart3D 엔진으로 전달된다. 상기 사용자는 서로 다른 수의 (메인) 비디오를 상기 DVD에 통합하기를 원할 수 있다. 상기 사용자는 상기 3차원 장면의 상기 버튼 이미지에 대한 상기 비디오 프레임 또는 비디오 프레임 시퀀스를 결정할 수 있고, 헤더, 푸터 또는 버튼의 라벨의 텍스트를 제공할 수 있으며, 하이라이트 마스크의 색채와 투명도를 선택할 수 있다. 그러나, 상기 3차원 장면 또는 백그라운드 이미지에서의 소재 색채와 같은 추가 정보가 또한 존재할 수 있다. 상기 3차원 장면을 각각 적합하게 하기 위해, 상기 3차원 장면은 우선 소위 장면 그래프라고 불리는 별도의 데이터 구조로 번역된다.
도 13은 장면 그래프의 도면을 나타낸다. 상기 렌더링 처리 동안, 상기 장면 그래프가 절차를 거쳐, 상기 기하학적 객체(사각형 노드)가 위에 놓인 상기 변환 및 소재에 따라(즉, 상기 장면 그래프의 더 높은 레벨에 있는 상기 소재와 변환에 따라) 도출된다. 상기 장면 트리(또는 장면 그래프)에서 "그룹"으로 지시되는 상기 노드는 객체들을 모으는 역할을 한다. 생성기는 아래에 놓인 객체의 애니메이션을 위해 이용된다.
상기 3차원 장면 데이터를 읽어 들여 상기 내부 데이터 포맷으로 변환할 때, 텍스트에 대한 플레이스 홀더 객체는 재빨리 동적인 3차원 텍스트 객체로 번역된다. 상기 3차원 텍스트 객체는 상기 장면 트리에서 "텍스트"로 지시되고, 상기 3차원 텍스트 객체는 텍스트 문자열이 입력될 것을 예상하고, 상기 3차원 텍스트를 상기 렌더링된 3차원 장면으로 생성한다.
그 결과로서 메모리 내 현존하는 데이터 구조는 상기 실제 렌더링 작업 이전에 제작 소프트웨어 사용자의 선호에 따라 조정될 수 있다.
만약, 예를 들어, 상기 사용자가 6개의 비디오 대신 오직 4개의 비디오만을 포함한다면(또는 연결한다면), 오직 4개의 비디오 버튼만이 필요하며, 만약 상기 모델러가, 예를 들어, 버튼들에 대한 6개의 3차원 객체를 제공했다면, 2개의 버튼은 가려지거나 생략될 필요가 있다. 따라서, smart3D 엔진은 단순히 상기 렌더링 과정 동안 상기 장면 트리에서 각각의 가지를 제외할 필요가 있다. 위에서 주어진 예(4개의 비디오 버튼)에 대하여, smart3D 엔진은 도 13의 상기 장면 그래프에서 도면번호 5와 도면번호 6으로 지시되는 가지를 제외할 수 있다.
상기 3차원 버튼 상에 부착되거나 보여져야 하는 상기 비디오 소재(예를 들어, 사용자 제공 컨텐츠)의 프레임은 각각의 메뉴 중간 시퀀스 프레임을 렌더링하기 전에 각각의 소재에 삽입될 수(또는 식별될 수, 또는 연결될 수) 있다. 예를 들어, 도 13의 상기 장면 그래프에 의해 기술된 상기 메뉴의 상기 제1 버튼(버튼 1)상에 보이는 이미지는 "챕터 이미지 1"로 지시된다.
따라서, smart3D를 이용하여 생성된 상기 DVD의 상기 사용자는 3차원 메뉴를 이용하여 상기 DVD의 내용 상에서 이동할 수 있다. 중간 시퀀스는, 예를 들어, 상기 DVD 상에 변동되지 않도록 수록된, 짧은 비디오 영화이다. 상기 사용자는 어떠한 개인용 컴퓨터 지식도 가질 필요가 없다. 상기 DVD 제작 프로그램의 상기 사용자는 타이틀 문자열을 입력하거나, 통합할 비디오 영화를 선택하거나, 또는 챕터를 고정함으로써 상기 DVD 메뉴의 외관을 사전에 결정한다. smart3D 엔진은 이러한 (타이틀 문자열 사항; 비디오 영화 선택; 챕터 선택; 이미지 선택 또는 버튼 상에 표시될 비디오 프레임 시퀀스의 선택 등의) 사항 또는 정보로부터 움직이는 3차원 장면의 도움을 얻어 상기 비디오 중간 시퀀스를 생성한다. 상기 제작 소프트웨어의 상기 사용자는 어떠한 3차원에 대한 지식 또는 프로그래밍 지식도 필요로 하지 않 는다.
상기 3차원 장면은 표준 소프트웨어를 이용하여 3차원 모델러에 의해 생성될 수 있는데, 오직 몇 개의 규칙만이 준수될 필요가 있다. 상기 3차원 모델러는 어떠한 프로그래밍 지식도 필요로 하지 않는다. 임의의 수의 3차원 메뉴, 3차원 장면 전환 그리고 3차원 효과가 소스 코드의 어떠한 변화 없이도 추가될 수 있다.
도 14, 15, 그리고 16은 사용 중인 기존의 3차원 DVD 메뉴의 스크린샷을 나타낸다는 점에 주목하여야 한다. 도 17은 상기 3차원 모델러에 의해 정의된 3차원 메뉴의 템플릿을 나타낸다.
챕터 객체를 삽입하는 것은 챕터 이미지, 챕터 텍스트 및 선택적으로 추가 모델 객체(이하의 예에서는 "모니터들"이라고 이름붙여져 나타난, 예를 들어, 모니터들의 움직임 기구)에 대한 이미지 영역과 비디오 프레임(또는 비디오 이미지)으로 구성된다.
만약 선택 가능한 영역(또는 하이라이트된 영역)이 복수의 객체들로 구성된다면, 상기 객체들은 상응하여 이름 붙여진 그룹으로 요약될 수 있다. 상기 스크린 상의 그룹 객체들이 차지한 영역의 경계 상자는 자동적으로 상기 마우스(또는 커서)에 의해 능동적으로 선택 가능한 영역을 정의한다.
이하에서, 메뉴 페이지 및 메뉴 페이지 간의 장면 전환이 어떻게 생성되는지 기술될 것이다. 여기서 3차원 모델러가 장면의 장면 모델(또는 장면 기술)을 생성하는 것으로 간주된다는 점에 주목하여야 한다. 상기 장면 모델은, 예를 들어, 3차원 모델링 언어의 형식으로, 이후에 사용자 제공 컨텐츠로 보충되어 비디오 프레임 시퀀스로 번역되는 장면을 기술한다. 즉, 상기 장면 모델은 객체 및 객체 속성에 기반한 장면의 기술, 장면 모델(예를 들어, 객체의 움직임 및/또는 관찰자 또는 관찰 지점의 움직임)의 일시적인 전개의 기술, 그리고 사용자 제공 컨텐츠의 삽입을 위한 플레이스 홀더 객체 또는 플레이스 홀더 표면의 기술을 포함한다.
이하에서, 상기 모델러는 (되도록이면 3차원) 장면의 장면 모델을 생성하는 사람 또는 장치로 간주된다.
DVD 메뉴에서 사용 가능한 3D(3차원) 장면의 생성을 위하여, 상기 모델러는 일련의 규칙을 준수하여야 한다. 이들 규칙 중 일부는 상기 DVD 메뉴의 논리적 구조 또는 논리적 구성에 의하여 주어진다. 다른 규칙들은 3차원 객체의 추가 속성에 대한 정보를 smart3D 엔진에 전달하기 위해 요구되는데, 예를 들어 버튼 속성, 또는 하이라이트 마스크의 계산을 위해 사용되는 속성과 같은 것이다. 상기 하이라이트 마스크는 선택 단계에서 볼 수 있으며, 메뉴 페이지가 표시될 때, 상기 선택된 버튼을 상기 제작 프로그램의 상기 사용자에 의해 정의되는 색채로 겉칠을 함으로써 식별된다. 상기 규칙의 정의와 관련하여, 도 9, 10, 11 그리고 12를 참조하여 나타낸 바와 같이, smart3D 개념에 의해 지원되는 메뉴 구조를 더욱 상세하게 기술할 필요가 있다.
smart3D 메뉴는 메인 메뉴와 복수의 서브 메뉴를 이용하여 생성될 수 있다. 메인 메뉴 페이지 상에 6개까지 버튼이 놓일 수 있다. 상기 버튼들은 상기 3차원 모델러에 의해 바람직하게 배치되고, 일정한(또는 특징적인) 이름이 부여된다. 예를 들어, 상기 6개 버튼은 "NSG_BS01"에서 "NSG_BS06"까지 이름이 부여될 수 있다. 만약 더 많은 버튼들이 필요하다면, 예를 들어 DVD 제작 과정상 DVD 상에 10개의 비디오가 기록되어야 한다면, 추가적인 메뉴 페이지가 추가될 수 있는데, 상기 메뉴 페이지 사이에는 좌/우 화살표 버튼을 이용하여 수평 방향으로 이동할 수 있다. 상기 DVD 제작 과정상 챕터 마크가 추가적으로 비디오에 삽입되는 경우에는, 서브 메뉴의 하나 또는 복수의 메뉴 페이지가 추가된다. 위 버튼을 이용하여 상기 메뉴의 (위에 놓인) 상위 레벨 페이지로 다시 돌아갈 수 있다. 또한 상기 화살표 버튼은 상기 3차원 장면에서 바람직하게 배치되고, (예를 들어, NSG_Up, NSG_Nxt, NSG_Pre) 이름으로 식별된다.
상술한 요소에 추가하여, 버튼, 헤더 텍스트 그리고 푸터 텍스트의 라벨이 본 발명의 실시예에서 뒷받침된다. 이를 위하여, 상기 3차원 모델러는 텍스트 객체에서 사용되는 것과 같은 지시 이름을 가진 플레이스 홀더 객체를 상기 3차원 장면에 추가한다. 실용적인 이유로, 직육면체가 선호된다(예를 들어, NSG_Hdr, NSG_Ftr).
3차원 객체의 추가적인 이름 정하기 및 그룹 정하기(grouping)는 어느 객체가 하이라이트 마스크의 계산에 고려되어야 하는지 결정한다. 이어서 상기 하이라이트 마스크의 계산은 검정색 그리고 흰색 이미지로 이들 객체의 실루엣을 제공한다. 6개의 메뉴 버튼과 3개의 이동 화살표에 대한 하이라이트 마스크의 예가 도 23에 나타나 있다.
각각의 그룹 정하기는 나아가, 예를 들어 챕터의 사용자 정의 영역에 대하여 색채로 하이라이트되는 객체 정의와 같은, 상기 하이라이트 영역의 정확한 추가 (또는 정의)가 되게 한다. 전형적으로, 이 영역(즉, 하이라이트 영역)은 상기 각각의 챕터 이미지가 위치하는 영역과 일치한다.
이하에서, 하이라이트 마스크의 계산이 간단히 기술될 것이다. 이를 위하여, 도 23은 도 17에서 보여지는 메뉴 구조의 하이라이트 마스크의 도면을 나타낸다.
하이라이트 마스크의 생성은 다음과 같이 이루어진다. 특정 (하이라이트 마스크) 이름을 가진 (또는 특정 객체 그룹에 속하는) 객체들만이 검정색 배경 전면에 최고 밝기의 흰색으로 그려진다.
이로써 (예를 들어 버튼과 같은) 특정 객체를 하이라이트하기 위하여 상기 렌더링된 메인 메뉴 비디오와, 추출물로서, 겹쳐지는 상기 하이라이트 객체의 실루엣이 생성된다.
상기 버튼들의 라벨링은 별도로 하고, 상기 버튼들 상에 부착되거나 그 위 어딘가에 표시되는 이미지(또는 비디오 프레임)는 DVD 사용자가 상기 버튼과 상기 비디오를 연결하는 것을 수월하게 한다. 전형적으로 상기 이미지는 상기 연결된 비디오 또는 비디오 챕터의 프레임 또는 짧은 영화 시퀀스(비디오 프레임 시퀀스)이다. 상기 3차원 모델러는 플레이스 홀더 텍스처을 이용하여 상기 3차원 장면 내에서 상기 이미지가 어떻게 그리고 어디에 부착되는지(또는 표시되는지) 결정한다. 이를 위하여, 상기 3차원 모델러는 식별 이름을 상기 각각의 소재에 부여한다(예를 들어, NSG_BS01 내지 NSG_BS06).
상기 3차원 모델의 논리적 구조로부터 상기 3차원 모델러에 대한 추가 경계 조건이 일어난다. 따라서, (예를 들어, 도 10을 참조하여 보이는 바와 같은) 소개 애니메이션은 되도록이면 검정색 이미지로 시작되어 메뉴 페이지로 끝난다. 메뉴 대 메뉴 애니메이션(또는 메뉴 대 메뉴 장면 전환)과 메뉴 대 서브 메뉴 애니메이션 또는 서브 메뉴 대 메뉴 애니메이션은 메뉴 페이지(또는 서브 메뉴 페이지)로 시작되어 메뉴 페이지(또는 서브 메뉴 페이지)로 끝난다. 메뉴 대 비디오 애니메이션은 메뉴 페이지로 시작되어 전체 화면 크기의 각각의 비디오로 끝난다. 선택 단계 동안(즉, 메뉴 페이지가 보여지고 상기 사용자가 선택할 수 있는 시간 동안) 보여지는 애니메이션은 작은 움직임만을 상기 메뉴에 삽입할 수 있는데, 그렇지 않으면 상기 DVD 사용자가 임의의 시점에서 어느 버튼을 선택할 때, 예를 들어 상기 메뉴 대 비디오 장면 전환의 시작 시점에서 계단 현상(또는 단절)이 인식되기 때문이다. 제1 메뉴 페이지에서부터 제2 메뉴 페이지까지 애니메이션을 로딩할 때, 버튼, 라벨 그리고 화살표가 반드시 교환되어야 한다, 그리고 모든 객체(또는 적어도 버튼, 라벨 그리고 화살표와 연결된 객체)는 상기 3차원 모델러에 의해 두 번 제공되어야 한다(예를 들어 NSG_BS01I~NSG_BS06I, NSG_UpI, 그리고 기타 등등; 접미사 "I"는 "인커밍"을 지시함).
이하에서, DVD 메뉴의 예가 도 14 내지 17을 참조하여 기술될 것이다. 도 14 내지 17의 예는 봉 및 피스톤 시스템에 의해 지원되는 설계된 모니터를 기술하는 (또는 나타내는) 3차원 템플릿에 기반한다. 전형적인 템플릿은 "모니터 템플릿"으로 지시된다.
도 14는 4개의 챕터를 가진 메뉴 예를 나타내는 도면이다. 도 14의 도면은 전반적으로 도면번호 1400으로 지시된다.
도 15는 8개의 메인 챕터를 가진 메뉴 예를 나타내는 도면인데, 상기 사용자는 다음 또는 이전 메뉴 페이지로(또는 제1 그리고 제2 메뉴 페이지로) 이동할 수 있다. 도 15의 도면은 전반적으로 도면번호 1500으로 지시된다.
상기 도면(1400)은 4개의 모니터 화면(1410, 1412, 1414, 1416)을 나타낸다. 상기 모니터 화면 각각은 DVD 상의 비디오 컨텐츠의 챕터 선택에 대한 하나의 메뉴 항목 또는 메뉴 버튼을 나타낸다. 도 14의 메뉴 장면은 전체 6개의 모니터를 기술하는 3차원 장면 모델 또는 3차원 장면 템플릿에 기반하여 생성된다는 점에 주목하여야 한다. 6개의 모니터를 갖는 메뉴 페이지는, 예를 들어, 도 15의 도면(1500)의 왼쪽 메뉴 페이지(1510)에서 보여질 수 있다. 따라서, 상기 도면(1400)에서 마지막 두 개의 모니터(즉, 모니터들의 하단 행의 중간 모니터와 모니터들의 하단 행의 오른쪽 모니터)와 (상응하는) 챕터 지시가 상기 3차원 장면에서 제거된 것을 볼 수 있다. 또한, 도 14의 상기 메뉴 장면을 도 15의 상기 메뉴 장면과 비교해 보면, 도 14의 상기 메뉴 장면이 어떤 화살표도 포함하지 않음을 볼 수 있다. 이것은 도 14의 상기 메뉴 장면으로 표시되는 메뉴의 추가적인 메뉴 페이지가 없기 때문에 상기 화살표가 요구되지 않는 점에 기인한다.
도 15의 상기 도면(1500)을 참조하여, 도 15의 상기 메뉴 장면에 의해 기술되는 상기 메뉴가 두 개의 메뉴 페이지를 포함한다는 점에 주목하여야 한다. 제1 메뉴 페이지는 도면번호 1510으로 지시되는 6개의 메뉴 항목을 포함하고, 제2 메뉴 페이지는 도면번호 1520으로 지시되는 두 개의 메뉴 항목을 포함한다. 즉, 상기 메뉴 장면을 정의하는 템플릿이 6개의 메뉴 항목을 포함한다고 가정한다면, 상기 제1 메인 메뉴 페이지(1510)는 완전하게 채워진다. 상기 제1 메뉴 페이지(1510)는 나아가 이동 화살표(1530)를 포함한다. 상기 이동 화살표(1530)는 이동 요소로서 이용되고, "다음" 화살표로 참조될 수 있다.
(또한 메인 메뉴 페이지 2로 지시되는) 상기 제2 메뉴 페이지(1520) 상에서 전체 8개 중 남은 2개의 비디오와, 대응되는 "돌아가기" 화살표 (또는 "이전" 화살표)만이 포개 놓여진다(또는 표시된다). 상기 "돌아가기" 화살표(1540)는 상기 이전 페이지, 즉 상기 제1 메뉴 페이지(1510)로 가는 이동을 허용한다.
도 16은 8개의 메인 챕터를 가진 메뉴 예를 나타내는 도면이다. 도 16의 도면은 전반적으로 도면번호 1600으로 지시된다. 여기서 도 16의 예에서의 상기 메인 메뉴는 도 15의 예에서의 상기 메인 메뉴와 일치할 수 있다는 점에 주목하여야 한다. 즉, 상기 도면(1600)은 제1 메인 메뉴 페이지(1610)를 나타내는데, 도 15의 상기 제1 메뉴 페이지(1510)와 일치할 수 있다. 상기 도면(1600)은 나아가 서브 메뉴 페이지(1620)를 나타낸다. 여기서 상기 제1 메인 챕터가 5개의 서브챕터를 가진다는 점에 주목하여야 한다. 즉, 상기 제1 메뉴 페이지(1610)의 상기 제1 모니터(1630) (또는 버튼)을 선택하거나 활성화함으로써, 상기 서브 메뉴(1620)가 표시될 수 있다. 상기 제1 모니터 또는 상기 제1 버튼(1630)이 상기 제1 메인 챕터를 나타내기 때문에, 상기 제1 메인 챕터의 상기 네 개 서브 챕터는 상기 메뉴 페이지(1620) 상에서 접근될 수 있다. 나아가 상기 서브 메뉴 페이지(1620)의 "위" 버튼(1640)을 선택함으로써 사용자가 (상기 서브 메뉴 페이지(1620)로부터) 상기 메인 메뉴(또는 상기 메인 메뉴 페이지(1610))로 다시 이동할 수 있다는 점에 주목하 여야 한다. 게다가, 상기 메뉴 페이지(1610)는 (예를 들어, 상기 메뉴 페이지(1520)와 동일한) 다음 메인 메뉴 페이지를 접근하기 위해 "다음" 버튼(1650)을 포함한다.
즉, 도 16의 상기 예에서, 상기 제1 버튼(1630)을 통하여(또는 이용하여) 어드레싱(address)될 수 있는 서브 메뉴가 설정되었다. 짧은 중간 시퀀스 이후, (선택적으로) 애니메이션 실행 중 양 메뉴 모두(즉, 상기 메인 메뉴 페이지(1610)와 상기 서브 메뉴 페이지(1620))가 보여지는 동안, 사용자는 상기 서브 메뉴(또는 서브 메뉴 페이지(1620))를 본다. 전형적인 실시예로서, 상기 메인 메뉴 페이지(1610)의 상기 6개 모니터는 이미지를 벗어나 (또는 볼 수 있는 화면을 벗어나) 위로 이동하고, 새로운 모니터들이, 예를 들어 상기 서브 메뉴 페이지(1620)의 네 개 모니터들이, 밑에서부터 뒤를 잇는다. 상기 서브 메뉴(또는 상기 서브 메뉴 페이지(1620))는 상기 메인 메뉴 또는 상기 메인 메뉴 페이지(1610)로 가는 상향 이동을 허용하는 대응되는 이동 화살표(1660)는 물론 상기 주어진 예에서의 4개의 비디오를 포함한다.
도 17은 상술한 예들이 smart3D 내부 표현으로 렌더링되어 배치되는 상기 메인 메뉴의 템플릿을 나타내는 도면이다.
상기 템플릿에서, 상기 설계자는 최대 사용 가능한 수인 6개 모니터(1710, 1712, 1714, 1716, 1718, 1720)를 제공한다. 그 밖에, 상기 세 개의 이동 요소(1730)인 "이전 화살표", "다음 화살표" 그리고 "위 화살표"가 존재할 것이 요구된다. 상기 챕터 타이틀은 물론 상기 헤더(1740) 및 푸터(1750)는 미리 정하여진 이름 관례(convention)를 준수해야 한다. 나아가, 상기 챕터 이미지(또는 챕터 비디오 프레임)에 대한 상기 이미지 영역은 미리 정하여진 소재 이름(NSG_BS01, NSG_BS02, NSG_BS03, NSG_BS04, NSG_BS05, NSG_BS06)을 가져야 한다.
상기 개별 모니터들은 각각 대응하는 이름으로 정의되는 그룹으로 (즉, 모니터 별로 하나의 그룹으로, 어떤 모니터에 속하는 모든 요소 및/또는 객체들이 상기 특정 모니터에 속하는 그룹에 포함되는 방식으로) 집약되어야 한다. 이러한 조건들이 만족 되면, 상기 예에서 볼 수 있는 바와 같이 smart3D 엔진은 동적으로 상기 장면을 상기 메뉴 내용에 맞게 할 수 있다.
여기서 상기 도면(1700)은 전반적으로 도면번호 1700으로 지시된다는 점에 주목하여야 한다. 상기 템플릿(1700)은 복수의 메뉴 항목을 포함한다는 점에 주목하여야 한다. 전형적인 실시예로서, 대응하는 복수의 기하학적 객체들이 메뉴 항목과 연결된다. 특정 메뉴 항목과 연결되는 상기 기하학적 객체들은 서로 모여 집단이 되는데, 즉 기하학적 객체의 그룹에 포함된다. 따라서, 기하학적 객체들의 그룹을 식별함으로써, 상기 메뉴 항목에 속하는 상기 기하학적 객체들이 식별될 수 있다. 상기 장면 모델 또는 장면 템플릿이 n개의 메뉴 항목을 기술한다고 가정하면, 상기 템플릿은 n개의 그룹들을 포함하고, n개의 그룹 각각은 특정 메뉴 항목에 속하는 객체들을 집약한다. 특정 메뉴 항목에 속하는 상기 객체들은, 예를 들어, 다음을 포함할 수 있다.
- 특정 사용자 제공 컨텐츠를 특정하지 않고서, 표면이 상기 메뉴 항목과 연결되는 사용자 제공 컨텐츠를 표시할 예정임을 지시하는 미리 정하여진 이름 또는 속성을 갖는 표면. 즉, 각각의 표면은 사용자 제공 컨텐츠에 대한 플레이스 홀더 표면인데, 상기 특징적인 이름 또는 속성에 의해 지시된다.
- 사용자 제공 텍스트로 대체될 예정인 텍스트 플레이스 홀더 객체를 식별하는 미리 정하여진 이름을 갖는 플레이스 홀더 객체. 상기 텍스트 플레이스 홀더 객체는, 예를 들어, 상기 메뉴 항목과 연결된 비디오 시퀀스에 관한 "타이틀" 및/또는 정보를 제공할 예정일 수 있다.
따라서, 상기 비디오 프레임 생성기(110)는 얼마나 많은 메뉴 항목이 상기 메뉴 장면 모델에 기반한 메뉴 장면(또는 메뉴 페이지)에 표시되어야 하는지를 식별할 수 있다. 상기 비디오 프레임 생성기는 또한 개별의 또는 별개의 메뉴 항목을 정의하는 그룹들이 얼마나 많이 메뉴 템플릿에 존재하는지를 결정할 수 있다. 상술한 정보에 의하면, 상기 비디오 프레임 생성기(110)는 만약 상기 메뉴 장면 모델 또는 메뉴 템플릿이 실제 필요한 것보다 더 많은 메뉴 항목을 포함하고 있다면 메뉴 항목에 속하는 여분의 객체들을 선택에서 제외하거나 제거할 수 있다. 따라서, 가령 템플릿에 포함된 것보다 적은 메뉴 항목이 요구되더라도, 일정한 수의 비디오 항목을 포함하는 템플릿이 적용된다는 것을 확신할 수 있다.
도 18은 비디오 프레임 시퀀스를 생성하는 방법 발명의 흐름도이다. 도 18의 상기 방법은 전반적으로 도면번호 1800으로 지시된다. 제1 단계(1810)에서, 장면을 정의하는 장면 모델이 수신된다. 상기 장면 모델은 객체 이름 및 객체 속성을 갖는 적어도 하나의 장면 모델 객체를 포함한다.
상기 방법(1800)은 나아가 제2 단계(1820)를 포함하는데, 이때, 사용자 제공 컨텐츠가 수신된다.
제3 단계(1830)에서, 미리 정하여진 객체 이름 또는 미리 정하여진 객체 속성을 갖는 장면 모델 객체가 상기 장면 모델 내에서 식별된다. 따라서, 식별된 장면 모델 객체가 획득된다.
제4 단계(1840)에서, 상기 사용자 제공 컨텐츠가 상기 식별된 장면 모델 객체의 표면상에 표시되도록 또는 식별된 장면 모델 객체를 대체하여 표시되도록 비디오 프레임 시퀀스가 생성된다.
여기서 도 18의 상기 방법(1800)이 상술한 단계 중 어느 것에 의하여도, 예를 들어 본 발명의 상기 비디오 프레임 생성기에 의해 실행되는 단계 중 어느 것에 의하여도, 보충될 수 있다는 점에 주목하여야 한다.
이하에서, DVD(또는, 일반적으로, 비디오 매체)의 메뉴 구조를 생성하는 장치 발명 및 방법 발명의 전형적인 실시예가 기술될 것이다. 이를 위하여, 도 19는 비디오 시퀀스를 선택하거나 임포트하는(import) 사용자 인터페이스를 나타내는 도면이다. 도 19의 상기 도면은 전반적으로 도면번호 1900으로 지시된다. 본 발명의 실시예에 따르면, 제1 단계에서 사용자는 DVD(또는 HD-DVD와 같은 다른 비디오 매체, Blu-ray 디스크 또는 어떤 다른 비디오 매체)에 기록하기를 원하는 비디오 타이틀을 임포트한다. 선택적으로, 각각의 비디오는 챕터 마크가 부여될 수 있다. 만약 챕터 마크가 비디오를 위해 정의된다면, 하나 또는 복수의 서브 메뉴가 이 비디오 타이틀을 위해 생성될 것이다. 상기 서브 메뉴의 각 버튼은 하나의 챕터 위치를 나타낸다. 그러므로 상기 비디오 타이틀은 상기 정의된 챕터 위치에서 시작될 수 있다.
도 20은 템플릿이나 장면 모델을 선택하는 사용자 인터페이스 페이지를 나타내는 도면이다. 즉, 본 발명의 실시예로서, 제2 단계에서 상기 사용자는 미리 정의되거나 미리 정하여진 smart3D 템플릿(즉, 미리 생성된 장면 모델)을 선택한다. 도 21은 DVD 메뉴 구조의 속성의 선택을 위한 사용자 인터페이스의 스크린샷을 나타내는 도면이다.
즉, 본 발명의 실시예에 의하면, 상기 사용자는 제3 단계에서 그의 요구에 맞도록 3차원 템플릿 설정을 조정할 수 있다. 이것은 버튼 텍스트, 헤더 텍스트, 푸터 텍스트 및/또는 백그라운드 음악을 바꿀 수 있게 한다. 즉, 상기 사용자는, 예를 들어, 상기 장면 모델 또는 메뉴 템플릿 내에서 플레이스 홀더 객체 대신 표시되어야 하는 상기 챕터 타이틀과 관련하여 설정 또는 조정을 입력할 수 있다. 유사하게, 상기 헤더 텍스트 및 푸터 텍스트가 상기 템플릿 내에서 텍스트 플레이스 홀더 객체의 대체물로서 정의될 수 있다.
그 밖에, 상기 사용자는 (가능한 메뉴 장면 전환에 대한 다음의 리스트에서) 어느 메뉴 장면 전환이 사용될지 정의할 수 있다.
- 소개 애니메이션;
- 두 메뉴 간의 장면 전환 애니메이션;
- 메뉴와 챕터 메뉴 간의 장면 전환 애니메이션;
- 메뉴와 비디오 타이틀 간의 장면 전환 애니메이션; 그리고
- 비디오 타이틀과 메뉴 간의 장면 전환 애니메이션.
본 발명의 실시예에 따르면, 제4 단계에서 smart3D 엔진에 의해 생성된 메뉴 구조는 프리뷰(preview)에서 가상 원격 제어를 이용하여 관찰될 수 있다. 상기 메뉴 장면 전환은 선택적으로 실시간으로 smart3D 엔진에 의해 계산될 수 있다. 따라서, 도 22는 상기 사용자가 메뉴 장면 전환을 미리 볼 수 있도록 하는 사용자 인터페이스의 스크린샷의 도면을 나타낸다.
본 발명의 실시예에 따르면, (선택적인) 제5 단계에서 DVD(또는 blu-ray 매체, HD-DVD 또는 또 다른 비디오 매체)가 기록되거나 준비된다.
여기서 도 19 내지 22를 참조하여 smart3D 메뉴의 생성 과정이 사용자 관점에서 보여졌다는 점에 주목하여야 한다. 나아가 도 19 내지 22를 참조하여 기술된 상기 사용자 항목은 플레이스 홀더 객체를 사용자 제공 컨텐츠로 대체하는 작업과 플레이스 홀더 표면상에 사용자 제공 컨텐츠를 표시하는 작업을 제어하기 위해 상기 비디오 프레임 생성기로 입력될 수 있다.
따라서, 사용자 입력은 (장면 템플릿 또는 단지 "템플릿"으로 지시되는) 상기 장면 모델과 상기 사용자 제공 컨텐츠에 기반하여 상기 비디오 프레임 시퀀스의 생성을 제어한다.
이하에서, 본 발명의 실시예에 따른 메뉴 생성 개념의 개요가 주어질 것이다.
하나의 DVD는 전형적으로 일정한 수의 비디오를 포함한다는 점에 주목하여야 한다. 이들 비디오는 하나 또는 복수의 메뉴 페이지를 통해 접근할 수 있는데, 각 비디오, 비디오 챕터 마크, 또는 또 다른 메뉴는 선택 버튼에 의하여(예를 들어, 메뉴 페이지의 버튼에 의하여) 표현된다. DVD의 컨텐츠는 상기 버튼들을 상기 메뉴 페이지 또는 비디오와 연결시킴으로써 탐색될 수 있다. 그 때문에, 서로 다른 고정된 짧은 비디오 시퀀스 또는 정지 이미지는 서로 다른 메뉴 페이지를 나타낸다.
(smart3D 기술로 지시되는) 상기 발명 개념은 사용자에 의해 정의된 상당한 양의 비디오로부터 상술한 메뉴 페이지를 자동적으로 생성하는 것을 허용한다. 추가적으로, 상기 사용자에 의해 정의된 두 메뉴 페이지 간이나 상기 메뉴 페이지들과 (또는 적어도 하나의 메뉴 페이지와) 비디오 타이틀 간의 장면 전환 비디오가 계산된다. 이는 상기 사용자에게 이음새 없고, 포개지고, 상호작용하는 비디오 장면을 제공한다. 개개의 메뉴 페이지와 비디오는 더 이상 차례차례 위치한 하드 컷(hard cuts)이 아니라, 가상의 3차원 세계에서 서로 녹아 들어가는 것으로 나타난다.
살아 움직이는 메뉴 구조의 생성은 smart3D 엔진으로 자동적으로 이루어진다. 상기 사용자는 단순히 그/그녀가 어느 컨텐츠(비디오 타이틀 또는 비디오 타이틀들)를 상기 디스크 상에 기록되기를 원하는지를 지정하고, 상기 미리 정의된 smart3D 템플릿(예를 들어, 미리 정하여진 템플릿의 리스트에서 하나의 템플릿)을 선택한다. 그러고 나서 smart3D 엔진은 필요한 양의 메뉴, 메뉴 당 버튼 그리고 두 메뉴 또는 메뉴와 비디오 타이틀 간의 장면 전환 비디오를 계산한다.
각각의 미리 정의된 smart3D 템플릿은 3차원 비디오 장면(또는 적어도 하나의 3차원 비디오 장면)을 명시한다(또는 나타낸다). 예를 들어, 각각의 메뉴 페이 지는 템플릿 내 서로 다른 크기의 방으로 해석될 수 있다. 만약 상기 사용자가 서로 다른 메뉴 사이를 이동한다면, smart3D 엔진에 의해 생성된 비디오 시퀀스는 장면 전환으로 재생된다. 상기 장면 전환은 양 메뉴 장면에 이음새 없이 맞추어진 비디오 장면 전환 장면을 보여준다. 이음새 없이 맞추어진 비디오 장면 전환 장면은 메뉴 페이지와 비디오 타이틀 간에 생성된다.
상기 smart3D 엔진이 상기 제작 애플리케이션과 상기 제작 엔진 사이에 통합되기 때문에, 동일한 상기 살아 움직이는 메뉴 구조가 DVD 비디오, blue-ray 매체 그리고 HD-DVD 매체를 위해 생성될 수 있다.
이하에서, 일반적인 설정과 관련하여 몇몇 요구와 주의사항과 함께 본 발명 시스템의 실시예의 몇몇 특성이 기술될 것이다.
본 발명의 실시예의 몇몇 측면을 요약하면, 다음과 같다.
- 임의의 수의 영화 시퀀스가 유연한 3차원 장면 전환을 통한 연결로서 병합될 수 있다.
- 연결된(또는 병합되거나 이어진) 영화 시퀀스가 공통된 메뉴 구조로 합쳐질 수 있다.
- 메뉴는 인트로(intro) 시퀀스와 하나 또는 복수의 메인 메뉴 페이지로 구성된다. 선택적으로, 상기 메뉴 구조는 영화 스트림(movie stream)의 다양한 챕터를 어드레싱하기 위한 서브 메뉴 페이지를 제공할 수 있다. 상기 메뉴 페이지는 각 영화의 제1 프레임으로의(또는 적어도 하나의 영화의 제1 프레임으로의) 장면 전환을 포함하는 부드러운 장면 전환에 의해 연결된다.
- 메뉴 장면은 컨텐츠를 동적으로 조정한다. 메뉴 버튼(또는 각각 이동 버튼)의 존재 및/또는 외관은 메뉴 챕터의 수에 의존한다. 상기 smart3D 엔진은 메뉴 장면을 동적으로 조정한다.
- 상기 smart3D 엔진은 개별적으로 렌더링되는 비디오 프레임의 형태로 비디오 출력을 제공하기 위해 고차원 컨텐츠(사용자 입력)와 저차원 컨텐츠(동적 해석을 가능하게 하기 위한 특별한 태그(tags)를 가진 메뉴 장면의 일반적인 모델) 및 메타 데이터(일반적인 메뉴 시퀀스 정보, 타임 스탬프)를 결합한다. 추가적으로, 상기 smart3D 엔진은 메뉴 이동에 사용되는 하이라이트된 영역 및 선택 영역에 관한 정보를 제공한다.
- 상술한 데이터는 상기 메뉴 장면의 상기 3차원 모델에서 특별한 태그(예를 들어, 이름 또는 속성)를 이용하여 상기 smart3D 엔진에 의해 자동적으로 생성된다.
- 각 메뉴는 예를 들어 헤더, 푸터 또는 챕터 캡션과 같은 다양한 행의 3차원 텍스트를 가질 수 있다. 상기 텍스트는 편집 가능하고, 즉 상기 폰트 문자의 상기 3차원 메쉬(meshes)이 쉴 사이 없이 생성된다.
- 상기 장면 전환, 3차원 효과 그리고 메뉴의 렌더링은 상호작용적이다. 근래의 그래픽 카드에 의한 하드웨어 가속이 3차원 장면의 고성능 시각화를 위해 이용될 수 있다.
이하에서, 구현의 몇 가지 상세한 내용이 기술될 것이다.
본 발명의 한 실시예에 의하면, smart3D 개념 뒤의 아이디어는 상기 엔진으 로부터의 구조화 정보를 이용하여 상기 3차원 데이터를 분리하는 것인데, 상기 엔진은 상기 구조를 해석하여 동적인 3차원 모델을 렌더링한다. 상기 데이터의 구조화를 위하여, 3차원 데이터를 위한 일반적인 방법이 사용될 것이다.
보다 바람직한 실시예에서, 상기 모든 요소들은 이름을 갖고, 다른 요소들의 그룹핑(grouping)을 허용하는 데이터 요소가 있다. 상기 이름 및 그룹핑은 (예를 들어, 상술한 바와 같이 버튼의 기능과 같은) 3차원 객체 또는 그룹에 대한 특별한 기능을 지정할 수 있다.
smart3D의 구현에 있어서, 상기 엔진은 일반적인 3차원 데이터 포맷을 읽는다. 그 점에서, 한 블록의 메타 데이터가 상기 3차원 모델의 상기 기능을 정의할 것이다. 예를 들어, DVD 메뉴에 대하여 이 메타 데이터는 메뉴 대 비디오 장면 전환과 같은 상기 3차원 장면의 윤곽을 그릴 수 있는데, 이는 상기 선택된 비디오가 보여지기 전에 상기 최종 사용자가 상기 DVD 메뉴에서 비디오 버튼을 선택할 때 재생될 것이다. 상기 메타 데이터 블록에 포함된 다른 정보는 이 장면 전환이 속하는 상기 DVD 메뉴의 버튼 수 또는 이름을 결정할 수 있다.
비디오 컨텐츠 제작을 위한 3차원 데이터의 완벽한 집합은 가능한 메뉴 또는 비디오 효과 부분을 위한 3차원 및 구조화 데이터를 가진 파일로 구성된다. 다른 이도 이러한 컨텐츠 생성 방법에 접근할 수 있게 하기 위해, 상기 일반적인 포맷과 별개의 다른 파일 포맷도 임포트할 수 있다. 추가적인 구성요소로서, 상기 특정 메뉴 부분 또는 비디오 효과 내에(또는 동안에) 재생될 음악 또는 잡음을 지정하는 사운드 파일이 있다.
상기 사용자의 요구에 따라 상기 smart3D 엔진이 유연하게 반응할 수 있게 하기 위해, 상기 3차원 모델에서 상기 3차원 객체 또는 그룹핑 객체를 위한 몇몇 이름 관례가 있다. 예를 들어, 특별한 이름인 "NSG_BS04"는 한 객체를 DVD 메뉴의 네 번째 버튼으로 지정한다. 예를 들어 사용자는 세 개의 비디오 클립만을 삽입했고, 네 번째 버튼이 더 이상 필요하지 않으면 상기 엔진은 그 이름으로 상기 객체를 삭제할 것이다. "NSG_NxtH"(이름의 끝에서 "H"는 "하이라이트"를 나타냄)와 같은 또 다른 이름은 DVD 메뉴에서 가능한 다음 버튼의 하이라이트 영역을 정의하는 객체 또는 그룹을 결정할 수 있다. 그룹핑을 이용하여, 불필요한 경우에 상기 smart3D 엔진에 의해 삭제될 기하학적 구조를 가질 수 있고, 필수적인 것이 아니라면, 상기 하이라이트 영역을 계산시 고려될 더 작은 기하학적 구조를 가질 수 있다. 6개 메뉴 버튼과 3개 이동 화살표를 가진 "모니터들" 메뉴의 하이라이트 마스크의 예가 도 23에 나타나 있다.
외부 데이터 파일에서, 텍스트는 통상의 기하학적 객체로서 해석된다. 따라서, 읽을 수 있는 문자들의 집합으로서의 객체의 의미는 상실되고, 따라서 텍스트를 바꾸기 위해 재해석될 수 없다. 그러나 상기 사용자에게 후에 DVD 메뉴 또는 비디오 컨텐츠의 일부가 될 그들 자신의 텍스트를 3차원 장면에 삽입할 수 있는 수단을 제공하여야 한다.
이를 위하여, "헤더"와 같은 특별한 이름을 가진 객체를 편집가능한 3차원 텍스트로 대체하기 위한 방법이 마련되었는데, 이 예에서는 DVD 메뉴 일부의 표제를 나타낸다.
이런 점에서, 상기 smart3D의 구현은 독립적인 모델러가 소프트웨어 개발을 다룰 필요 없이 임의의 수의 제작 및 비디오 컨텐츠를 생성할 수 있게 한다. 상기 Smart3D 엔진은 상기 3차원 모델의 구조와 메타 데이터를 해석할 수 있고, 따라서 상기 3차원 장면의 각 부분의 기능을 이해하고 있다.
일반적으로, 본 응용은 상호작용적인 메뉴와 비디오 장면을 생성하기 위한 살아 움직이는 장면의 생성 방법, 장치 그리고 컴퓨터 프로그램을 포함한다.
이하에서, 구현의 추가적인 세부 사항이 도 24를 참조하여 기술될 것이다. 도 24는 비디오 매체의 컨텐츠의 제작을 위한 모듈 계층을 나타내는 도면이다. 도 24의 상기 도면은 전반적으로 도면번호 2400으로 지시된다. 비디오 매체의 컨텐츠를 제작하는 과정은 비디오 편집 및 제작 애플리케이션(2410)에 의해 제어된다. 상기 비디오 편집 및 제작 애플리케이션(2410)은 하나 또는 복수의 사용자 비디오 클립(2420)을 수신한다. 상기 비디오 편집 및 제작 애플리케이션은 나아가 도 24의 도면(2400)에 나타나지 않은 사용자 입력도 수신한다. 상기 비디오 편집 및 제작 애플리케이션(2410)으로의 상기 사용자 입력은, 예를 들어, 얼마나 많은 사용자 비디오 클립(2420)이 상기 비디오 매체에 저장되는지에 관한 정보를 포함할 수 있다. 상기 사용자 정보는 나아가 상기 비디오 매체에 포함되는 상기 비디오 클립(또는 비디오 프레임 시퀀스)의 타이틀 이름에 관한 정보를 포함할 수 있다. 상기 사용자 입력은 나아가 상기 메뉴 구조의 세부 항목에 대한 사용자 선택을 포함할 수 있다. 예를 들어, 상기 사용자 입력은 복수의 가능한 메뉴 템플릿(또는 장면 모델) 중 어느 메뉴 템플릿이 상기 비디오 매체의 상기 메뉴 구조의 생성에 사용되어야 하는지 에 관한 정의를 포함할 수 있다. 상기 사용자 정보는 나아가 색채 설정, 백그라운드 이미지의 선택, 음악 타이틀의 선택, 기타 등등과 같은 추가적인 설정을 포함할 수 있다.
상기 비디오 매체에 저장되는 비디오 시퀀스의 렌더링은 소위 smart3D 엔진(2430)에 의해 수행되는데, 이것은 상기 비디오 프레임 생성기(110)과 동등하다. 상기 smart3D 엔진(2430)은 시나리오 및 비디오 효과에 대한 하나 또는 복수의 템플릿 정의를 수신한다. 상기 템플릿 정의(2440)는 상기 장면 모델(112)과 동등하고, 그룹핑 정보 및 속성 정보는 물론 객체에 기반하여 장면을 묘사한다.
상기 smart3D 엔진은 나아가 상기 비디오 편집 및 제작 애플리케이션(2410)으로부터 하나 또는 복수의 비디오 프레임 및 하나 또는 복수의 속성 정보, 상기 비디오 스트림 및 속성 정보 설정(2450)을 수신한다. 여기서 상기 비디오 스트림은 상기 사용자 비디오 클립(2420)과 동일하거나 또는 상기 사용자 비디오 클립에 기반하여 상기 비디오 편집 및 제작 애플리케이션(2410)에 의해 생성된다는 점에 주목하여야 한다. 상기 smart3D 엔진(2430)은 하나 또는 복수의 비디오 스트림(2450)을 생성하고, 상기 하나 또는 복수의 비디오 스트림(2460)을 다시 상기 비디오 편집 및 제작 애플리케이션(2410)으로 보낸다. 상기 비디오 스트림(2460)은 상기 비디오 프레임 시퀀스(116)와 동등하다는 점에 주목하여야 한다.
상기 비디오 편집 및 제작 애플리케이션(2410)은 상기 smart3D 엔진(2430)에 의해 생성되는 상기 비디오 스트림(2460)에 기반하여 상기 비디오 매체에 대한 메뉴 및 컨텐츠 구조를 형성한다. 이를 위하여 상기 비디오 편집 및 제작 애플리케이 션은 (몇몇 메타 정보에 기반하여) 상기 비디오 스트림(2460)이 어떤 타입의 비디오 컨텐츠를 나타내는지 식별한다. 예를 들어, 상기 비디오 편집 및 제작 애플리케이션(2410)은 특정한 비디오 화면(2460)이 메뉴 대 메뉴 장면 전환, 메뉴 대 비디오 프레임 시퀀스 장면 전환, 비디오 프레임 시퀀스 대 메뉴 장면 전환, (검정색 화면과 메뉴 간의) 소개 장면 전환 또는 비디오 프레임 시퀀스 대 비디오 프레임 시퀀스 장면 전환을 나타내는지를 식별할 수 있다. 상기 비디오 스트림의 타입 정보에 기반하여, 상기 비디오 편집 및 제작 애플리케이션(2410)은 상기 비디오 매체의 데이터 구조 내 적절한 위치에 상기 비디오 스트림을 위치시킨다.
만약, 예를 들어, 상기 비디오 편집 및 제작 애플리케이션(2410)이 특정 비디오 스트림(2460)이 메뉴 내 비디오 장면 전환임을 인식한다면, 상기 특정 메뉴 에서 상기 사용자가 특정 영화를 재생하기로 선택한 경우, 상기 비디오 편집 및 제작 애플리케이션(2410)은 메뉴 내 비디오 장면 전환이 특정한, 대응되는 메뉴 및 특정한, 대응되는 비디오(또는 영화) 사이에 재생될 수 있도록 상기 비디오 매체의 구조를 설정한다.
또 다른 예에서, 만약 예를 들어 상기 제1 메뉴 페이지 상의 특정 버튼(다음 버튼)을 선택함으로써 사용자가 제1 메뉴 페이지에서 제2 메뉴 페이지로 변경하기로 선택한다면, 상기 제1 메뉴 페이지와 상기 제2 메뉴 페이지 간의 상기 메뉴 대 메뉴 장면 전환이 상기 사용자에게 보여져야 한다. 그러므로, 상기 비디오 편집 및 제작 애플리케이션(2410)은 상기 사용자가 상기 제1 메뉴 페이지 상에서 상기 버튼을 선택하였을 때 상기 메뉴 대 메뉴 장면 전환이 재생될 수 있도록 상기 비디오 매체 상의 각각의 상기 메뉴 대 메뉴 장면 전환을 조정한다.
상기 비디오 편집 및 제작 애플리케이션(2410)이 구조(특히 상기 비디오 매체의 상기 메뉴 구조)를 생성하였을 때, 상기 비디오 편집 및 제작 애플리케이션은 상기 비디오 매체 상에 저장된 상기 정보를 제작 엔진(2470)으로 전송한다. 상기 제작 엔진(2470)은 데이터가 각각의 비디오 매체, 예를 들어 DVD 매체, blu-ray 디스크, HD-DVD 또는 다른 비디오 매체의 명세를 준수하도록 상기 비디오 편집 및 제작 애플리케이션(2410)에 의해 제공되는 데이터의 포맷을 맞춘다. 또한, 상기 제작 엔진(2470)은 상기 비디오 편집 및 제작 애플리케이션(2410)에 의해 제공되는 데이터를 상기 비디오 매체에 기록하도록 구성된다.
상술한 바를 요약하면, 도 24는 상기 smart3D 엔진의 일반적인 작업 순서를 나타낸다.
이하에서, 상술한 발명에 관한 몇몇 특정한 세부 사항이 주어질 것이다.
먼저, 상기 장면 전환 비디오의 계산에 관한 몇몇 추가적인 세부 사항이 기술될 것이다. 상기 장면 전환 비디오의 계산을 위하여, 상기 비디오 프레임 생성기는 두 개의 비디오 이미지 또는 비디오 프레임, 소멸하는(vanishing) 비디오에서 가져온 하나의 비디오 프레임, 그리고 나타나는(emerging) 비디오에서 가져온 하나의 비디오 프레임을 수신한다는 점에 주목하여야 한다. 상기 이미지 또는 비디오 프레임은 모두 최종 비디오 스트림(또는 최종 비디오 프레임 시퀀스(116))과 시간 상 동일한 지점에 대응된다. 상기 입력 비디오 스트림 내의 두 개의 이미지 또는 비디오 프레임의 일시적인 위치는 상기 개개의 입력 비디오 스트림(또는 입력 비디 오)의 길이, 그리고 겹침(overlap) 또는 장면 전환의 지속 시간에 의존한다. 그러나, 보다 바람직한 실시예에서 상기 3차원 엔진은 절대 시간 정보를 고려하지는 않는다.
상기 두 개의 입력 이미지 또는 입력 비디오 프레임에 기반하여, 단일 출력 이미지 또는 출력 비디오 프레임이 생성된다. 상기 출력 비디오 프레임의 생성에 있어서, (장면 모델에 의해 기술된) 상기 3차원 장면 내에서 각각 이름 붙여진 소재의 텍스처은 상기 입력 비디오 프레임에 의해 대체된다. 따라서, 상기 출력 이미지 또는 출력 비디오 프레임은 상기 제1 입력 비디오 프레임에 의해 대체되는 객체의 텍스처과 상기 제2 입력 비디오 프레임에 의해 대체되는 객체의 또 다른 텍스처을 가지는 3차원 장면의 이미지이다.
나아가, 어느 파일 또는 소프트웨어가 DVD 메뉴의 생성에 사용되는지 기술될 것이다.
- 상기 3차원 애니메이션 내의 3차원 장면을 기술하는 하나 또는 복수의 파일.
- 장면 그래프 및 추가적인 관리 데이터(예를 들어, 상기 3차원 템플릿의 이름, 상기 중간 시퀀스의 타입, 그리고 기타 등등)의 구조를 기술하는 하나 또는 복수의 기술 파일(description files);
- 상기 이미지 데이터 또는 비디오 데이터를 제공하고 상기 비디오 데이터를 재결합하는 비디오 이미지 소프트웨어;
- 상기 이미지 데이터와 텍스트 데이터를 상기 3차원 장면으로 통합하고, 상 기 입력 데이터대로 상기 장면의 포맷을 맞추고, 그리고 이어서 상기 3차원 장면을 렌더링하는 3차원 엔진.
상기 DVD 메뉴의 생성을 위하여, 본 발명의 실시예에 있어서 어떠한 가능한 메뉴 조합 및 메뉴 중간 시퀀스도 상기 DVD를 제작하는 동안 상기 챕터의 수와 분할에 따라 렌더링된다. 나아가, 상기 메뉴 조합 및 메뉴 중간 시퀀스는 비디오 파일로서 상기 DVD 상에 기록된다. 나아가, (파일 이름 확장자 ".ifo"를 가지고, DVD 비디오 디스크의 상기 명세에서 알 수 있는) 이동(navigation) 파일이 생성된다. 상기 이동 파일은 DVD 플레이어가 각각의 시퀀스로 점프할 수 있도록 한다(예를 들어, 상기 장면 전환 비디오의 처음으로 점프).
상기 메뉴 구조를 결정하기 위해, 대응하여 설계된 3차원 장면이 가능한 상기 비디오 챕터의 수와 구조에 따라 조정된다. (예를 들어, 요구되지 않는 메뉴 항목과 같이) 요구되지 않는 상기 설계된 3차원 장면의 일부는 자동적으로 제거되는데, 그 장면들이 최종적으로 생성되는 비디오 프레임 시퀀스에서 나타나지 않도록 하기 위함이다. 나아가, 사용자가 편집 가능한 텍스트 블록이 생성된다.
따라서, 3차원 메뉴가 생성되는데, 살아 움직이는 시퀀스는 상기 메뉴 페이지 간에 재생된다. 게다가, 하이라이트 마스크가 미리 정하여진 이름을 가진 3차원 객체로부터 자동적으로 생성된다. 따라서, 임의 모양의 하이라이트 마스크를 생성하는 것이 가능하다.
본 발명의 실시예의 핵심적인 이점 중의 하나는 (예를 들어, 3차원 모델러와 같은) 메뉴 설계자는 단순히 일반적인 메뉴 시퀀스를 미리 설계해야 한다는 사실이 다. 상기 DVD 제작 소프트웨어의 사용자는 이러한 작업에 참가하지 않는다. 상기 메뉴 비디오 시퀀스의 조정 및 생성은 상기 챕터 배분의 특성에 따라 자동적으로 수행된다.
이하에서, 얼마나 많은 영화 시퀀스가 연쇄(concatenation)로서 연결될 수 있는지(또는 결합될 수 있는지) 기술될 것이다. 하나의 비디오 영화가 30개의 개별 영화 조각으로 구성된다고 가정한다. 따라서, 30개의 개별 영화 조각을 가짐으로써, 상기 전체 영화는, 예를 들어, 29개의 장면 전환 시퀀스를 가질 수 있다. 선택적으로, 만약 영화 시작에서의 서서히 밝아지는 효과와 영화 끝에서의 서서히 어두워지는 효과가 고려된다면, 예를 들어, 31개의 장면 전환 시퀀스가 있게 된다.
상기 3차원 엔진은 단순히 현재 장면 전환의 데이터를 처리한다. 즉, 제1 단계에서 상기 제1 영화 조각과 상기 제2 영화 조각 간의 장면 전환이 처리된다. 이어서, 제2 단계에서, 상기 제2 영화 조각과 제3 영화 조각 간의 장면 전환이 계산되고, 그런 식으로 이루어진다. 상기 편집 소프트웨어의 관점에서, 한 시점의 과정은 다음과 같다.
- 상기 제1 영화 조각의 맨 앞 부분의 코딩, 그리고 상기 코딩된 정보를 완성된 영화의 비디오 스트림에 저장;
- 상기 제1 비디오 조각(비디오 조각 1)의 끝과 상기 제2 비디오 조각(비디오 조각 2)의 시작으로부터 요구되는 상기 이미지 데이터(또는 비디오 데이터, 또는 영화 데이터)를 상기 smart3D 엔진으로 업로딩(상기 제1 비디오 조각의 끝 부분과 상기 제2 비디오 조각의 시작 부분은 상기 사용자 제공 컨텐츠를 구성한다);
- 상기 렌더링된 장면 전환의 상기 이미지 데이터(또는 비디오 데이터, 또는 영화 데이터, 또는 비디오 프레임 시퀀스)를 상기 smart3D 엔진에서 가져오기;
- 상기 각각의 렌더링된 이미지(또는 비디오 프레임)을 코딩하고, 상기 코딩된 정보를 상기 완성된 영화의 상기 비디오 스트림에 저장;
- 상기 제2 비디오 조각의 중간 부분을 코딩하고, 상기 처리된 정보를 상기 완성된 영화의 상기 비디오 스트림에 저장;
- 상기 제2 비디오 조각(비디오 조각 2)의 끝과 상기 제3 비디오 조각(비디오 조각 3)의 시작으로부터 요구되는 상기 이미지 데이터를 상기 smart3D엔진으로 업로딩;
- 상기 렌더링된 장면 전환의 상기 이미지 데이터를 상기 smart3D 엔진에서 가져오기;
- 상기 각각의 렌더링된 이미지(또는 비디오 프레임)을 코딩하고, 상기 렌더링된 정보를 상기 완성된 영화의 상기 비디오 스트림에 저장.
상기 기술된 과정은 요구되는 장면 전환이 계산될 때까지 반복될 수 있다. 상기 장면 전환 시퀀스는 물론 상기 각각의 영화 조각이 단일 비디오 파일에 저장되기 때문에, 단일 비디오 파일이 상술한 연결에 의해 생성될 수 있다는 점에 주목하여야 한다.
상기 메뉴 장면의 동적인 조정과 관련하여, 상기 제작 소프트웨어가 상기 챕터 버튼을 이미지 데이터와 텍스트 데이터에 배정하는 것에 관하여 결정한다는 점에 주목하여야 한다. 또한, 상기 제작 소프트웨어는 (상기 장면 모델의) 어느 객체 가 특정한 장면에 요구되는지, 그리고 어느 객체(예를 들어, 텍스트 컨텐츠)가 조정될 필요가 있는지 결정한다. 상기 각각의 결정은 상기 DVD가 생성될 때, 예를 들어 상기 메뉴 비디오가 렌더링되는 시점에 이루어진다. 본 발명의 바람직한 실시예에서, 상기 메뉴 구조의 수정은 상기 DVD의 생성 이후에는 더 이상 가능하지 않다.
나아가, 본 발명의 범위 내에서, "고차원 컨텐츠"라는 용어는 사용자 제공 데이터, 예를 들어 비디오 스트림, 챕터 이미지, 챕터 타이틀 또는 하이라이트 색채를 지시한다는 점에 주목하여야 한다. 이와 반대로, "저차원 컨텐츠"라는 용어는 일반적으로 설계된 3차원 장면(예를 들어, 사용자 제공 컨텐츠에 맞춰지지 않았지만, 플레이스 홀더 객체 또는 플레이스 홀더 표면을 갖는 장면 모델)을 기술한다. 나아가, "메타 데이터"라는 용어는 어느 3차원 모델 파일이 메뉴를 형성하는지를 기술한다. 완성된 메뉴는 일반적인 선택 페이지에 대한 장면, 그리고 각각의 메뉴 페이지를 각각의 객체의 움직임으로 연결하는 복수의 살아 움직이는 중간 시퀀스를 포함한다. 보다 바람직한 실시예로서, 서로 다른 애니메이션 시퀀스가 제1 챕터 버튼과의 상호작용 및 제2 챕터 버튼과의 상호작용을 위해 정의된다. 상기 메타 데이터는 나아가 각각의 메뉴 시퀀스의 지속 시간, 메뉴 이름에 관한 정보 또는 추가 오디오 트랙의 참조를 포함한다.
하이라이트 영역 및 선택 영역과 관련하여, 하이라이트 영역 및 선택 영역은 상기 포함되는 객체들의 개별 그룹핑과 이름 붙이기에 의해 지시된다는 점에 주목하여야 한다.
폰트 문자의 메쉬의 생성과 관련하여, 폰트 문자의 3차원 메쉬의 생성을 위 하여 폰트 파일에 포함되는 모든 폰트 문자가 3차원 메쉬으로 표시되지는 않는다는 점에 주목하여야 한다. 대신에, 폰트 문자의 메쉬은 상기 폰트 문자가 처음으로 사용될 때 계산된다. 상기 계산된 메쉬은 이어서 상기 특정 폰트 문자의 표현에 사용된다. 한 예로서, 상기 폰트 문자의 상술된 취급은 "Hello World" 텍스트를 3차원 텍스트로 표현할 수 있게 하는데, (10개의 3차원 메쉬보다는) 오직 7개의 3차원 메쉬만이 요구되고, 문자 "l"에 대한 상기 3차원 메쉬이 위치를 바꾸는 방식으로 세 번 이용될 수 있고, 문자 "o"가 두 번 이용될 수 있기 때문이다.
여기서 상기 폰트 문자의 생성은 상기 나머지 비디오 프레임의 생성과 다르다는 점에 주목하여야 한다. 상기 폰트 문자에 대한 상기 3차원 메쉬을 제외하고 어떤 객체 또는 메쉬은 설계자, 예를 들어 (장면 모델러로 지시되는) 장면 모델을 생성한 사람에 의해 제공된다. 상기 폰트 문자의 3차원 메쉬 대신에, 상기 설계자는 사용자에 의해 입력된 텍스트로 실행 시 대체되는(즉, 상기 텍스트의 3차원 표현인) 개별적으로 이름 붙여진 상자(boxes)를 배치한다. 상기 상자의 높이와 두께(보다 일반적으로 상자의 치수)는 상기 3차원 폰트 문자의 치수를 정의한다. 텍스처 속성 및 소재 속성이 또한 상기 상자로부터 획득된다(그리고 상기 텍스트 문자의 도면으로 나타난다). 즉, 상기 사용자에 의해 입력된 상기 텍스트의 상기 3차원 표현은 상기 상자와 동일한 텍스처 및 소재 속성을 가진다.
이하에서, 렌더링 장면 전환에 사용될 수 있는 가능한 사용자 상호작용이 기술될 것이다. 일반적으로, 3차원 장면의 외관은 다이얼로그(dialog)를 통하여 외부로부터(즉, 사용자에 의하여) 영향받을 수 있다. 상술한 기술 파일에서, 각각의 객 체 속성이 편집 가능한 것으로 표시될 수 있다. 이들 속성은 다이얼로그에서 그들의 타입에 따라 표현된다. 사용자가 이들 속성을 변경 하자마자, 상기 변경된 속성이 상기 장면에 고려된다. 이런 식으로, 예를 들어, 미리 정하여진 범위 내에서 객체 색채, 백그라운드 이미지 및/또는 (객체의) 비행 궤적을 변경하는 것이 가능하다.
나아가 본 발명의 실시예에서 상기 렌더링은 표시 속도와 관련하여 상호작용적일 수 있다는 점에 주목하여야 한다. 종래의 편집 프로그램은 전형적으로 효과를 표현하기 위하여 컴퓨터의 중앙처리장치(CPU)를 이용한다. 이것은 전형적으로 매우 느리고, 표현은 부드럽지 않다. 따라서 본 발명 개념(예를 들어, smart3D 엔진)은 (오늘날 거의 어떤 컴퓨터에서도 사용가능한) 3차원 그래픽 하드웨어를 사용한다. 오직 3차원 그래픽 카드가 존재하지 않는 경우에만, 상대적으로 느린 중앙처리장치 기반 해법이 선택된다. 3차원 장면을 표현하기 위한 장면 그래프의 사용이 고성능 표시에 기여한다.
나아가 상기 smart3D 엔진은 종래 2차원 엔진과 유사한 방식으로 외부에서 접근 가능하다는 점에 주목하여야 한다. 그러나, 메뉴 처리에 있어서 추가적인 중간 시퀀스가 고려된다. 그 밖에, 기호 논리학(logistics)의 큰 부분이 상기 smart3D 엔진 내에 들어 있다.
나아가, 본 발명이 컴퓨터 프로그램의 형태로 구현될 수 있다는 점에 주목하여야 한다. 즉, 본 발명 방법의 구현 요건에 의존하여, 상기 발명 방법은 하드웨어 또는 소프트웨어로 구현될 수 있다. 상기 구현은 전기적으로 판독가능한 제어 신호 가 저장된 디지털 저장 매체, 예를 들어 디스크, DVD, CD, ROM, PROM, EPROM, EEPROM 또는 FLASH 메모리를 이용하여 이루어질 수 있는데, 본 발명 방법이 수행될 수 있도록 프로그래밍 가능한 컴퓨터 시스템과 함께 동작한다. 일반적으로, 본 발명은 기기가 판독가능한 운반체(carrier)에 저장된 프로그램 코드, 컴퓨터 상에서 동작할 때 본 발명 방법을 수행하도록 동작하는 프로그램 코드를 가진 컴퓨터 프로그램 제품이다. 즉, 본 발명 방법은 상기 컴퓨터 프로그램이 컴퓨터 상에서 동작할 때 적어도 하나의 본 발명 방법을 수행하는 프로그램 코드를 가진 컴퓨터 프로그램이다.
상술한 바를 요약하면, 본 발명은 비디오 장면 전환, 메뉴 대 비디오 장면 전환 그리고 메뉴 대 메뉴 장면 전환을 템플릿 기반으로 생성하는 개념을 생성한다. 나아가, 본 발명은 템플릿 기반으로 상호작용적 메뉴를 생성할 수 있게 한다. 따라서, 본 발명은 비디오 매체의 용이한 생성을 허용한다.

Claims (31)

  1. 미리 설계된 장면을 정의하는 장면 모델(200, 300; 431, 446, 456, 466, 476; 810; 2440)에 기반하여 그리고 사용자 제공 컨텐츠(114; 2450)에 기반하여 비디오 프레임(1, 2, ... F-1, F)의 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 제공하는 장치(100; 2400)로서, 상기 장면 모델은 객체 이름(입방체1) 또는 객체 속성을 갖는 적어도 하나의 장면 모델 객체(210; 432; 812)를 포함하고,
    상기 장치는, 상기 장면 모델에 기반하여 복수의 비디오 프레임 시퀀스(440, 450, 460, 470, 480; 1, 2, ... F-1, F)를 생성하는 비디오 프레임 생성기를 포함하고,
    상기 비디오 프레임 생성기는 미리 결정된 이름 또는 미리 결정된 속성을 갖는 하나 또는 복수의 장면 모델 객체 또는 표면을 상기 장면 모델 내에서 식별하기 위해 장면 모델을 분석하여, 식별된 장면 모델 객체 또는 표면을 획득하며,
    상기 비디오 프레임 생성기는, 식별된 표면을 위한 텍스처로서 사용자 제공 켄텐츠를 적용함을 나타내는 참조를 상기 장면 모델에 삽입하여, 상기 장면 모델을 사용자 요구에 맞추거나,
    상기 비디오 프레임 생성기는 적용될 텍스처로서 사용자 제공 컨텐츠를 지정하기 위해 식별된 객체 또는 표면의 텍스처 속성을 설정하여, 상기 장면 모델을 사용자 요구에 맞추고;
    상기 비디오 프레임 생성기는 다른 장면 모델 객체 및 관찰 지점에 관한 상기 장면 모델 객체의 상대적인 위치를 고려하여, 상기 비디오 프레임 시퀀스가 관찰 지점의 관찰자에게 보이는 대로 상기 장면 모델에 의하여 기술되는 장면을 나타내도록, 그리고 상기 사용자 제공 컨텐츠가 식별된 장면 모델 객체의 표면(230, 232, 234; 432, 436) 또는 식별된 표면상에 표시되도록, 상기 장면 모델에 기반하여 비디오 프레임 시퀀스를 렌더링하고,
    상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476)은 기하학적 객체들, 상기 장면에 존재하는 객체들의 특성들 그리고 상기 관찰 지점에서 관찰자에게 보이는 상기 장면 모델의 일부를 정의하는 특성들의 리스팅(listing) 측면에서 장면을 정의하며;
    상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 810; 2440)은 적어도 하나의 장면 모델 객체(210; 432)의 소재 특성 또는 표면 텍스처 특성의 측면에서 상기 장면을 정의하는 비디오 프레임 시퀀스 제공 장치.
  2. 제1항에 있어서,
    상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 810; 2440)은 관찰자(212; 438, 448, 482)에 관하여 객체(210; 432; 812)의 움직임의 측면에서 장면을 정의하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  3. 제1항에 있어서,
    상기 비디오 프레임 생성기(110; 2430)는 미리 결정된 이름, 소재 특성, 텍스처 특성 또는 표면 특성을 갖는 장면 모델 객체(210; 432)의 표면(230, 232, 234; 434, 436)을 식별하여, 식별된 표면을 획득하고;
    상기 비디오 프레임 생성기는 사용자 제공 비디오 시퀀스(114; 2450)의 프레임 또는 사용자 제공 이미지가 상기 식별된 표면 상에 표시되도록, 생성된 비디오 프레임 시퀀스(116; 2460)의 프레임(440, 450, 460, 470, 480)을 생성하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  4. 제1항에 있어서,
    상기 비디오 프레임 생성기(110; 2430)는 장면 모델 객체(230; 432)의 제1 표면(230; 434) 및 상기 장면 모델 객체의 제2 표면(232; 436)을 식별하되, 상기 제1 표면은 제1 미리 결정된 이름, 미리 결정된 소재 특성 또는 미리 결정된 텍스처 특성을 갖고, 상기 제2 표면은 제2 미리 결정된 이름, 미리 결정된 소재 특성 또는 미리 결정된 텍스처 특성을 가지며,
    상기 제1 미리 결정된 이름은 상기 제2 미리 결정된 이름과 다르거나, 상기 제1 미리 결정된 소재 특성은 상기 제2 미리 결정된 소재 특성과 다르거나 또는 상기 제1 미리 결정된 텍스처 특성은 상기 제2 미리 결정된 텍스처 특성과 다르고;
    상기 비디오 프레임 생성기는 상기 제1 사용자 제공 비디오 시퀀스(114; 2450)의 프레임 또는 제1 사용자 제공 이미지가 상기 제1 식별된 표면 상에 표시되도록, 그리고 제2 사용자 제공 비디오 시퀀스(114; 2450)의 프레임 또는 제2 사용자 제공 이미지가 상기 제2 식별된 표면 상에 표시되도록, 상기 비디오 시퀀스(116; 2460)의 프레임(440, 450, 460, 470, 480)을 생성하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  5. 제1항에 있어서,
    상기 비디오 프레임 생성기(110; 2430)는 장면 모델 객체(210; 432)의 제1 표면(230; 434) 및 장면 모델 객체의 제2 표면(232; 436)를 식별하되,
    상기 제1 표면은 제1 미리 결정된 이름, 제1 미리 결정된 소재 특성 또는 제1 미리 결정된 텍스처 특성을 갖고,
    상기 제2 표면은 제2 미리 결정된 이름, 제2 미리 결정된 소재 특성 또는 제2 미리 결정된 텍스처 특성을 가지며,
    상기 제1 이름은 상기 제2 이름과 다르거나, 상기 제1 소재 특성은 상기 제2 소재 특성과 다르거나 또는 상기 제1 텍스처 특성은 상기 제2 텍스처 특성과 다르고;
    상기 비디오 프레임 생성기는 제1 사용자 제공 비디오 시퀀스(114; 2450)의 프레임 시퀀스가 상기 식별된 제1 표면 상에 표시되도록, 그리고 제2 사용자 제공 비디오 시퀀스(114; 2450)의 프레임 시퀀스가 상기 식별된 제2 표면 상에 표시되도록 상기 비디오 시퀀스(116, 440, 450, 460, 470, 480; 2460)을 생성하는, 비디오 프레임 시퀀스 제공 장치(100; 2400).
  6. 제5항에 있어서,
    상기 장치는 제1 사용자 제공 비디오 시퀀스(114; 2450) 및 제2 사용자 제공 비디오 시퀀스(114; 2450)를 정의하는 사용자 입력을 수신하는 것을 특징으로 하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  7. 제5항에 있어서,
    상기 비디오 프레임 생성기(110; 2430)는, 생성되는 비디오 프레임 시퀀스의 제1 프레임(440)이 상기 제1 사용자 제공 비디오 시퀀스의 프레임의 전체 화면 버전이 되도록, 그리고 상기 생성되는 비디오 프레임 시퀀스의 마지막 프레임(480)은 상기 제2 사용자 제공 비디오 시퀀스의 프레임의 전체 화면 버전이 되도록 비디오 프레임 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 생성하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  8. 제5항에 있어서,
    상기 비디오 프레임 생성기(110; 2430)는 생성되는 비디오 시퀀스(116; 440, 450, 460, 470, 480; 2460)의 제1 프레임(440) 및 상기 생성되는 비디오 시퀀스의 마지막 프레임(480) 간의 점진적이거나 부드러운 장면 전환을 제공하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  9. 제1항에 있어서,
    상기 비디오 프레임 생성기(110; 2430)는 사용자 정의 텍스트를 표시하는 사용자 정의 텍스트 객체를 상기 사용자 제공 컨텐츠(114; 2450)로서 획득하고,
    상기 비디오 프레임 생성기(110; 2430)는 미리 결정된 객체 이름 또는 미리 결정된 객체 속성을 갖는 장면 모델 객체(812)를 상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 810; 2440) 내에서 식별하되, 상기 미리 결정된 객체 이름 또는 상기 미리 결정된 객체 속성은 상기 식별된 장면 모델 객체가 텍스트 플레이스 홀더(place-holder) 객체임을 지시하며;
    상기 비디오 프레임 생성기는 상기 사용자 정의 텍스트 객체가 상기 식별된 텍스트 플레이스 홀더 객체(812) 대신 표시되도록 상기 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 생성하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  10. 제9항에 있어서,
    상기 비디오 프레임 생성기(110; 2430)는 상기 비디오 프레임 시퀀스 내의 상기 사용자 정의 텍스트 객체의 표현의 치수가 상기 비디오 프레임 시퀀스에 걸쳐 상기 텍스트 플레이스 홀더 객체(812)의 치수에 맞춰지도록 상기 비디오 프레임 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 생성하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  11. 제1항에 있어서,
    상기 장치는, 상기 생성되는 비디오 프레임 시퀀스(116; 440, 450, 460, 470, 480; 2460)에서 표시될 복수의 메뉴 항목(912, 914, 916, 918, 920, 922, 932, 934, 936, 938, 940, 942; 1012, 1014, 1016, 1018, 1020, 1024, 1222, 1224, 1226, 1228, 1230, 1232)에 의존하여, 상기 장면 모델을 형성하는 복수의 장면 모델 객체로부터 선택된 장면 모델 객체의 부분집합을 선택하여, 상기 선택된 장면 모델 객체는 표시되는 복수의 메뉴 항목(1410, 1412, 1414, 1416)이 표시될 메뉴 항목의 수에 맞추어 구성되는 비디오 프레임 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 기술하고,
    상기 비디오 프레임 생성기는 상기 선택된 장면 모델 객체에 기반하여 상기 비디오 프레임 시퀀스를 생성하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  12. 제1항에 있어서,
    상기 장치는 상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 2440)에서 적어도 하나의 하이라이트 영역 장면 모델 객체의 집합을 결정하는 하이라이트-영역 장면-모델-객체-식별자를 포함하고,
    상기 하이라이트 장면 모델 객체는 미리 결정된 객체 이름 또는 객체 속성을 갖고;
    상기 장치는 하이라이트 영역 장면 모델 객체 집합의 적어도 하나의 객체가 표시되는 비디오 프레임(440, 450, 460, 470, 480)의 영역을 정의하는 하이라이트 영역 기술을 제공하는 하이라이트 영역 기술 제공자를 포함하는, 비디오 프레임 시퀀스 제공 장치(100; 2400).
  13. 제12항에 있어서,
    상기 하이라이트 영역 기술 제공자는 하이라이트 영역 장면 모델 객체를 표시하는 전체 픽셀에 의하여 정의되는 비디오 프레임(440, 450, 460, 470, 480)의 영역으로서 상기 하이라이트 영역을 기술하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  14. 미리 설계된 장면을 정의하는 장면 모델(200, 300; 431, 446, 456, 466, 476; 810; 2440)에 기반하여 그리고 사용자 제공 컨텐츠(114; 2450)에 기반하여 비디오 프레임(1, 2, ... F-1, F)의 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 제공하는 방법(1800)으로서, 상기 장면 모델은 객체 이름(입방체1) 또는 객체 속성을 갖는 적어도 하나의 장면 모델 객체(210, 입방체1; 432; 812)을 포함하고,
    상기 방법은, 상기 장면 모델에 기반하여 복수의 비디오 프레임 시퀀스(440, 450, 460, 470, 480; 1, 2, ... F-1, F)를 생성하는 단계를 포함하고,
    상기 장면 모델은 기하학적 객체들, 상기 장면 내 존재하는 객체들의 특성, 그리고 관찰 지점에서 관찰자에게 보이는 상기 장면 모델의 일부를 정의하는 특성의 리스팅(listing) 측면에서 장면을 정의하며, 그리고
    상기 장면 모델은 적어도 하나의 장면 모델 객체의 소재 특성 또는 표면 텍스처 특성의 측면에서 상기 장면을 정의하고,
    복수의 비디오 프레임의 시퀀스를 생성하는 단계는,
    미리 결정된 이름 또는 미리 결정된 속성을 갖는 하나 또는 복수의 장면 모델 객체 또는 표면을 상기 장면 모델 내에서 식별(1830)할 수 있도록 상기 장면 모델을 분석하여, 식별된 장면 모델 객체 또는 표면을 획득하는 단계;
    식별된 표면을 위한 텍스처로서 상기 사용자 제공 컨텐츠를 적용함을 나타내는 참조를 상기 장면 모델에 삽입하여, 상기 장면 모델을 사용자 요구에 맞추는 단계, 또는
    적용될 텍스처로서 사용자 제공 컨텐츠를 지정하기 위해 식별된 객체 또는 표면의 텍스처 속성을 설정하여, 상기 장면 모델을 사용자 요구에 맞추는 단계; 및
    다른 장면 모델 객체 및 관찰 지점에 관한 상기 장면 모델 객체의 상대적인 위치를 고려하여, 상기 비디오 프레임 시퀀스가 관찰 지점의 관찰자에게 보이는 대로 상기 장면 모델에 의해 기술되는 장면을 나타내도록, 그리고 상기 사용자 제공 컨텐츠가 식별된 장면 모델 객체의 표면(230, 232, 234; 432, 436) 또는 식별된 표면상에 표시되도록, 상기 장면 모델에 기반하여 상기 비디오 프레임 시퀀스를 렌더링하는 단계(1840)를 포함하는 비디오 프레임 시퀀스 제공 방법.
  15. 미리 설계된 장면을 정의하는 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 810; 2440)에 기반하여, 적어도 하나의 메뉴 구조 관련 특성을 정의하는 메뉴 구조 관련 정보에 기반하여, 그리고 사용자 제공 컨텐츠(114; 2450)에 기반하여 비디오 매체의 메뉴 구조를 생성하는 장치(2400)로서, 상기 장면 모델은 객체 이름 또는 객체 속성을 갖는 적어도 하나의 장면 모델 객체(210; 432; 812)를 포함하고,
    상기 장치는, 제1항에 따라 비디오 프레임 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 제공하는 장치(110; 2430)을 포함하고,
    상기 비디오 프레임 시퀀스를 제공하는 장치(2430)는, 상기 장면 모델과, 적어도 하나의 메뉴 구조 관련 특성을 정의하는 추가 정보와, 상기 사용자 제공 컨텐츠에 기반하여 상기 비디오 프레임 시퀀스를 생성하는 메뉴 구조 생성 장치(2400).
  16. 제15항에 있어서,
    상기 메뉴 구조 관련 정보는 요소 그룹핑에 관한 정보를 포함하고,
    상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 810; 2440)의 요소들의 i 번째 그룹은 사용자 제공 비디오 프레임 시퀀스(114; 2450)에 접근할 수 있도록 i 번째 메뉴 버튼(912, 914, 916, 918, 920, 922, 932, 934, 936, 938, 940, 942, 1012, 1014, 1016, 1018, 1020, 1024, 1222, 1224, 1226, 1228, 1230, 1232, 1410, 1412, 1414, 1416)을 기술하며,
    비디오 프레임 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 제공하는 상기 장치(110; 2430)는 상기 비디오 매체에 저장될 복수의 사용자 제공 비디오 시퀀스에 관한 정보를 수신하고;
    비디오 프레임 시퀀스를 제공하는 상기 장치(110; 2430)는, 복수의 사용자 제공 비디오 시퀀스에 관한 정보를 이용하여, 상기 사용자 제공 비디오 시퀀스에 접근하기 위해 요구되는 복수의 메뉴 버튼을 결정하며;
    비디오 프레임 시퀀스를 제공하는 상기 장치(110; 2430)는 요소 그룹을 상기 장면 모델 내에서 식별하되, 각각의 식별된 요소 그룹은 메뉴 버튼을 기술하고;
    비디오 프레임 시퀀스를 제공하는 상기 장치(110; 2430)는 상기 선택된 요소 그룹에 의하여 기술되는 복수의 메뉴 버튼이 상기 사용자 제공 비디오 시퀀스에 접근하기 위해 요구되는 복수의 메뉴 버튼에 맞춰지도록 복수의 요소 그룹을 상기 장면 모델로부터 선택하되, 각각의 식별된 요소 그룹은 메뉴 버튼을 기술하며; 그리고
    비디오 프레임 시퀀스를 제공하는 상기 장치(110; 2430)는 상기 비디오 프레임 시퀀스는 상기 선택된 요소 그룹의 요소들을 표시하도록, 그리고 사용자 제공 시퀀스에 접근하기 위해 사용되지 않는 메뉴 버튼을 기술하는 상기 장면 모델의 추가 객체들은 억제되거나 감소되도록 상기 비디오 프레임 시퀀스를 생성하는 메뉴 구조 생성 장치(2400).
  17. 제15항에 있어서,
    상기 메뉴 구조 관련 정보는 상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 810; 2440)의 어느 요소들이 하이라이트 그룹에 속하는지에 관한 정보를 포함하고,
    비디오 프레임 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 제공하는 상기 장치(110; 2430)는 상기 하이라이트 그룹의 상기 객체들이 표시되는 비디오 프레임(440, 450, 460, 470, 480)의 영역 기술을 생성하는 메뉴 구조 생성 장치(2400).
  18. 제17항에 있어서,
    상기 하이라이트 그룹의 객체들이 표시되는 비디오 프레임(440, 450, 460, 470, 480)의 영역 기술은, 제1 컬러 픽셀에서 상기 하이라이트 그룹의 객체들이 표시되는 곳을 기술하고, 제2 컬러 픽셀에서 상기 하이라이트 그룹의 객체들이 표시되지 않는 곳을 기술하는 흑백 이미지를 포함하는 메뉴 구조 생성 장치.
  19. 제15항에 있어서,
    상기 메뉴 구조 관련 정보는 상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 810; 2440)이 기술하는 비디오 장면 전환 타입에 관한 정보를 포함하고;
    상기 메뉴 구조를 생성하는 장치는 상기 비디오 프레임 생성기(110; 2430)에 의해 생성된 상기 비디오 프레임 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 상기 비디오 매체의 메뉴 구조에 삽입하는 장치를 포함하며;
    상기 메뉴 구조를 생성하는 장치는 상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 810; 2440)이 기술하는 비디오 장면 전환 타입에 관한 정보에 기반하여 상기 메뉴 구조 내에서 비디오 프레임 시퀀스(114)의 위치를 결정하고;
    상기 메뉴 구조를 생성하는 장치는, 다음의 복수의 비디오 장면 전환 타입:
    메뉴 내 메뉴 장면 전환,
    검정색 화면 대 메뉴 장면 전환,
    메뉴 대 비디오 프레임 시퀀스 장면 전환,
    비디오 프레임 시퀀스 대 메뉴 장면 전환,
    비디오 프레임 시퀀스 대 비디오 프레임 시퀀스 장면 전환
    중 적어도 하나를 인식하고 처리하는 메뉴 구조 생성 장치(2400).
  20. 미리 설계된 장면을 정의하는 장면 모델(112; 200, 300; 431, 446, 456, 466, 476; 810; 2440)에 기반하여, 적어도 하나의 메뉴 구조 관련 특성을 정의하는 메뉴-구조-관련 정보에 기반하여, 그리고 사용자 제공 컨텐츠(114, 2450)에 기반하여 비디오 매체의 메뉴 구조를 생성하는 방법으로서, 상기 장면 모델은 객체 이름 또는 객체 속성을 갖는 적어도 하나의 장면 모델 객체(210; 432; 812)를 포함하고,
    상기 방법은, 제14항에 따라 비디오 프레임 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 생성하는 단계를 포함하고,
    상기 비디오 프레임 시퀀스를 생성하는 단계는, 상기 장면 모델과, 적어도 하나의 메뉴 구조 관련 특성을 정의하는 추가 정보와, 그리고 상기 사용자 제공 컨텐츠에 기반하여 상기 비디오 프레임 시퀀스를 생성하는 단계를 포함하는 메뉴 구조 생성 방법.
  21. 컴퓨터에서 실행될 때, 제14항 또는 제20항의 방법을 실행하는 컴퓨터 프로그램을 기록한 컴퓨터로 판독가능한 매체.
  22. 미리 설계된 3차원 장면을 정의하는 장면 모델(200, 300; 431, 446, 456, 466, 476; 810; 2440)에 기반하여 그리고 하나 또는 복수의 3차원 객체의 형태의 사용자 제공 컨텐츠(114; 2450)에 기반하여 비디오 프레임(1, 2, ... F-1, F)의 시퀀스(116; 440, 450, 460, 470, 480; 2460)를 제공하는 장치로서, 상기 장면 모델은 객체 이름(입방체1) 또는 객체 속성을 갖는 적어도 하나의 3차원 장면 모델 객체(210; 432; 812)를 포함하고, 상기 장치는,
    상기 장면 모델에 기반하여 복수의 비디오 프레임 시퀀스(440, 450, 460, 470, 480; 1, 2, ... F-1, F)를 생성하는 비디오 프레임 생성기(110; 2430)를 포함하고,
    상기 비디오 프레임 생성기는 미리 결정된 객체 이름 또는 미리 결정된 객체 속성을 갖는 하나 또는 복수의 장면 모델 객체를 상기 장면 모델 내에서 식별하기 위해 상기 장면 모델을 분석하여, 식별된 3차원 장면 모델 객체를 획득하며,
    상기 비디오 프레임 생성기는 상기 식별된 장면 모델 객체를 상기 사용자 제공 컨텐츠로 대체하여, 상기 장면 모델을 사용자 요구에 맞추고;
    상기 비디오 프레임 생성기는 상기 사용자 제공 컨텐츠가 상기 식별된 장면 모델 객체(812)를 대체하여 표시되도록, 상기 장면 모델에 기반하여 상기 비디오 프레임 시퀀스를 렌더링하며,
    상기 장면 모델(112; 200, 300; 431, 446, 456, 466, 476)은 장면에 존재하는 기하학적 객체와 상기 객체의 특성의 리스팅(listing) 측면에서 장면을 정의하는 비디오 프레임 시퀀스 제공 장치(100; 2400).
  23. 삭제
  24. 삭제
  25. 삭제
  26. 삭제
  27. 삭제
  28. 삭제
  29. 삭제
  30. 삭제
  31. 삭제
KR1020087022184A 2006-03-10 2007-01-03 비디오 프레임 시퀀스를 제공하는 장치 및 방법, 장면 모델을 제공하는 장치 및 방법, 장면 모델, 메뉴 구조를 생성하는 장치 및 방법 그리고 컴퓨터 프로그램 KR100989459B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US78100606P 2006-03-10 2006-03-10
EP06005001.0 2006-03-10
US60/781,006 2006-03-10
EP06005001 2006-03-10

Publications (2)

Publication Number Publication Date
KR20080114725A KR20080114725A (ko) 2008-12-31
KR100989459B1 true KR100989459B1 (ko) 2010-10-22

Family

ID=37826547

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020087022184A KR100989459B1 (ko) 2006-03-10 2007-01-03 비디오 프레임 시퀀스를 제공하는 장치 및 방법, 장면 모델을 제공하는 장치 및 방법, 장면 모델, 메뉴 구조를 생성하는 장치 및 방법 그리고 컴퓨터 프로그램

Country Status (8)

Country Link
US (1) US8462152B2 (ko)
EP (1) EP1994507B1 (ko)
KR (1) KR100989459B1 (ko)
AT (1) ATE438164T1 (ko)
AU (1) AU2007224810B2 (ko)
CA (1) CA2644032C (ko)
DE (1) DE602007001796D1 (ko)
WO (1) WO2007104372A1 (ko)

Families Citing this family (40)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5180288B2 (ja) * 2007-04-11 2013-04-10 ジーブイビービー ホールディングス エス.エイ.アール.エル. デジタルビデオエフェクト(dve)を高める方法及び装置
US20090021513A1 (en) * 2007-07-18 2009-01-22 Pixblitz Studios Inc. Method of Customizing 3D Computer-Generated Scenes
KR20230156158A (ko) 2007-09-26 2023-11-13 에이큐 미디어 인크 오디오-비주얼 내비게이션 및 통신
US20090089692A1 (en) * 2007-09-28 2009-04-02 Morris Robert P Method And System For Presenting Information Relating To A Plurality Of Applications Using A Three Dimensional Object
US8645822B2 (en) * 2008-09-25 2014-02-04 Microsoft Corporation Multi-platform presentation system
US8358331B2 (en) * 2008-12-02 2013-01-22 Lg Electronics Inc. 3D caption display method and 3D display apparatus for implementing the same
US8443285B2 (en) 2010-08-24 2013-05-14 Apple Inc. Visual presentation composition
EP2428957B1 (en) * 2010-09-10 2018-02-21 Nero Ag Time stamp creation and evaluation in media effect template
US8347329B2 (en) 2010-10-14 2013-01-01 Sony Corporation System and method of providing an interactive menu through streaming video
US8726161B2 (en) 2010-10-19 2014-05-13 Apple Inc. Visual presentation composition
KR20130133319A (ko) * 2012-05-23 2013-12-09 삼성전자주식회사 3d그래픽 사용자 인터페이스 제작 장치 및 방법
TWI555407B (zh) * 2012-07-18 2016-10-21 晶睿通訊股份有限公司 影像播放設定方法
GB2505912B (en) * 2012-09-14 2015-10-07 Canon Kk Method and device for generating a description file, and corresponding streaming method
US20140092088A1 (en) * 2012-10-03 2014-04-03 Siemens Aktiengesellschaft Providing a three-dimensional view that includes a plurality of systems engineering models
CN103035028B (zh) * 2012-12-11 2015-10-07 广东威创视讯科技股份有限公司 一种实现交互应用场景的方法及装置
KR101993593B1 (ko) 2013-02-21 2019-06-28 돌비 레버러토리즈 라이쎈싱 코오포레이션 오버레이 그래픽스를 합성하기 위한 어피어런스 매핑을 위한 시스템들 및 방법들
US10055866B2 (en) 2013-02-21 2018-08-21 Dolby Laboratories Licensing Corporation Systems and methods for appearance mapping for compositing overlay graphics
US9154761B2 (en) 2013-08-19 2015-10-06 Google Inc. Content-based video segmentation
CN104157007B (zh) * 2014-03-03 2018-02-27 腾讯科技(北京)有限公司 视频处理的方法及装置
US10409456B2 (en) * 2015-06-09 2019-09-10 Disney Enterprises, Inc. Dynamically changing a 3D object into an interactive 3D menu
CN105446596A (zh) * 2015-11-26 2016-03-30 四川长虹电器股份有限公司 基于深度的交互式3d界面显示系统与方法
CN106331684B (zh) * 2016-08-30 2018-04-27 长江三峡勘测研究院有限公司(武汉) 一种工程地质调查中基于小型无人机录像的三维影像获取方法
US10306254B2 (en) * 2017-01-17 2019-05-28 Seiko Epson Corporation Encoding free view point data in movie data container
FR3066671B1 (fr) * 2017-05-18 2020-07-24 Darmon Yves Procede d'incrustation d'images ou de video au sein d'une autre sequence video
EP3543903B1 (en) * 2018-03-22 2021-08-11 Canon Kabushiki Kaisha Image processing apparatus and method, and storage medium storing instruction
EP3591608A1 (en) * 2018-07-06 2020-01-08 Tata Consultancy Services Limited Method and system for image reconstruction using deep dictionary learning (ddl)
US12100112B2 (en) 2018-08-10 2024-09-24 Nvidia Corporation Cloud-centric platform for collaboration and connectivity on 3D virtual environments
CN110852143B (zh) * 2018-08-21 2024-04-09 元平台公司 在增强现实环境中的交互式文本效果
US11082757B2 (en) 2019-03-25 2021-08-03 Rovi Guides, Inc. Systems and methods for creating customized content
US11195554B2 (en) 2019-03-25 2021-12-07 Rovi Guides, Inc. Systems and methods for creating customized content
US11562016B2 (en) 2019-06-26 2023-01-24 Rovi Guides, Inc. Systems and methods for generating supplemental content for media content
CN112153429B (zh) * 2019-06-27 2022-10-28 百度在线网络技术(北京)有限公司 在视频流中插入信息的方法和装置
US11256863B2 (en) 2019-07-19 2022-02-22 Rovi Guides, Inc. Systems and methods for generating content for a screenplay
US11145029B2 (en) 2019-07-25 2021-10-12 Rovi Guides, Inc. Automated regeneration of low quality content to high quality content
RU2743956C1 (ru) * 2019-08-15 2021-03-01 Сцреенлифе Лимитед Способ создания вертикально ориентированного видео
US11604827B2 (en) 2020-02-21 2023-03-14 Rovi Guides, Inc. Systems and methods for generating improved content based on matching mappings
CN112153478B (zh) * 2020-09-11 2022-03-08 腾讯科技(深圳)有限公司 一种视频处理方法和视频播放方法
US20220134222A1 (en) * 2020-11-03 2022-05-05 Nvidia Corporation Delta propagation in cloud-centric platforms for collaboration and connectivity
US12112011B2 (en) 2022-09-16 2024-10-08 Apple Inc. System and method of application-based three-dimensional refinement in multi-user communication sessions
US12113948B1 (en) 2023-06-04 2024-10-08 Apple Inc. Systems and methods of managing spatial groups in multi-user communication sessions

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5353391A (en) 1991-05-06 1994-10-04 Apple Computer, Inc. Method apparatus for transitioning between sequences of images
US5748192A (en) 1991-12-18 1998-05-05 Ampex Corporation Video special effects system with graphical operator interface
US20060008239A1 (en) 2004-07-08 2006-01-12 Shu-Cheng Huang Method and system of visual content authoring

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4752836A (en) * 1984-09-07 1988-06-21 Ivex Corporation Method and apparatus for reproducing video images to simulate movement within a multi-dimensional space
US6188403B1 (en) 1997-11-21 2001-02-13 Portola Dimensional Systems, Inc. User-friendly graphics generator using direct manipulation
US6453459B1 (en) 1998-01-21 2002-09-17 Apple Computer, Inc. Menu authoring system and method for automatically performing low-level DVD configuration functions and thereby ease an author's job
JP4325075B2 (ja) 2000-04-21 2009-09-02 ソニー株式会社 データオブジェクト管理装置
US6989835B2 (en) * 2000-06-28 2006-01-24 Sun Microsystems, Inc. Flexible video architecture for generating video streams
US7440972B2 (en) 2001-04-26 2008-10-21 Sonic Solutions Interactive media authoring without access to original source material
US20030079224A1 (en) 2001-10-22 2003-04-24 Anton Komar System and method to provide additional information associated with selectable display areas
US7126606B2 (en) 2003-03-27 2006-10-24 Microsoft Corporation Visual and scene graph interfaces
US7831087B2 (en) * 2003-10-31 2010-11-09 Hewlett-Packard Development Company, L.P. Method for visual-based recognition of an object

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5353391A (en) 1991-05-06 1994-10-04 Apple Computer, Inc. Method apparatus for transitioning between sequences of images
US5748192A (en) 1991-12-18 1998-05-05 Ampex Corporation Video special effects system with graphical operator interface
US20060008239A1 (en) 2004-07-08 2006-01-12 Shu-Cheng Huang Method and system of visual content authoring

Also Published As

Publication number Publication date
AU2007224810B2 (en) 2010-02-18
US20100150526A1 (en) 2010-06-17
CA2644032C (en) 2013-03-19
DE602007001796D1 (de) 2009-09-10
EP1994507A1 (en) 2008-11-26
CA2644032A1 (en) 2007-09-20
US8462152B2 (en) 2013-06-11
KR20080114725A (ko) 2008-12-31
AU2007224810A1 (en) 2007-09-20
ATE438164T1 (de) 2009-08-15
WO2007104372A1 (en) 2007-09-20
EP1994507B1 (en) 2009-07-29

Similar Documents

Publication Publication Date Title
KR100989459B1 (ko) 비디오 프레임 시퀀스를 제공하는 장치 및 방법, 장면 모델을 제공하는 장치 및 방법, 장면 모델, 메뉴 구조를 생성하는 장치 및 방법 그리고 컴퓨터 프로그램
US8566736B1 (en) Visualization of value resolution for multidimensional parameterized data
JP4507013B2 (ja) コンテンツ編集生成システム
TWI413017B (zh) 用於混合式物件屬性關鍵製格模組之方法與電腦系統
KR102294134B1 (ko) 하이브리드 슬라이드-캔버스 프리젠테이션을 합성하기 위한 저작 도구
US6072479A (en) Multimedia scenario editor calculating estimated size and cost
KR100960504B1 (ko) 감성표현이 적용된 디지털 스토리보드 생성 방법 및 시스템
US20070162857A1 (en) Automated multimedia authoring
CN103197850A (zh) 信息处理设备、信息处理方法和计算机可读介质
JP2010073126A (ja) 情報可視化装置および情報可視化方法
KR20100054078A (ko) 스토리보드를 통한 애니메이션 저작 장치 및 그 방법
US8674998B1 (en) Snapshot keyframing
JP2008136213A (ja) 動画のフレーム情報を生成する方法、それを利用したシステム及び記録媒体
RU2433480C2 (ru) Устройство и способ для предоставления последовательности видеокадров, устройство и способ для предоставления модели сцены, модель сцены, устройство и способ для создания структуры меню и вычислительная программа
US8363055B1 (en) Multiple time scales in computer graphics
KR20110049257A (ko) 사용자와의 대화형 인터페이스를 통한 만화를 움직이는 애니메이션으로 만들어 주는 시스템 및 기술
JP5063810B2 (ja) アニメーション編集装置、アニメーション再生装置及びアニメーション編集方法
EP3246921B1 (en) Integrated media processing pipeline
KR101118536B1 (ko) 상호 작용이 가능한 콘텐츠 저작 수단을 제공하는 방법
WO2010118528A1 (en) Visual structure for creating multimedia works
CN115661420A (zh) 一种poly vr编辑器系统的设计与实现方法
JP4674726B2 (ja) ファイルの管理方法および情報処理装置
KR20150101064A (ko) 만화 캐릭터 제작 시스템
US20240029381A1 (en) Editing mixed-reality recordings
KR20070098364A (ko) 3차원 영상 데이터를 코드화하여 저장하는 장치 및 방법

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20130930

Year of fee payment: 4

FPAY Annual fee payment

Payment date: 20141001

Year of fee payment: 5

FPAY Annual fee payment

Payment date: 20151001

Year of fee payment: 6

FPAY Annual fee payment

Payment date: 20160929

Year of fee payment: 7

FPAY Annual fee payment

Payment date: 20171025

Year of fee payment: 8

FPAY Annual fee payment

Payment date: 20181004

Year of fee payment: 9

FPAY Annual fee payment

Payment date: 20191001

Year of fee payment: 10