KR20200053588A - 정보 처리 장치, 정보 제공 장치, 제어 방법, 및 컴퓨터 판독가능 저장 매체 - Google Patents

정보 처리 장치, 정보 제공 장치, 제어 방법, 및 컴퓨터 판독가능 저장 매체 Download PDF

Info

Publication number
KR20200053588A
KR20200053588A KR1020207010964A KR20207010964A KR20200053588A KR 20200053588 A KR20200053588 A KR 20200053588A KR 1020207010964 A KR1020207010964 A KR 1020207010964A KR 20207010964 A KR20207010964 A KR 20207010964A KR 20200053588 A KR20200053588 A KR 20200053588A
Authority
KR
South Korea
Prior art keywords
data
information
image
virtual viewpoint
gaze direction
Prior art date
Application number
KR1020207010964A
Other languages
English (en)
Other versions
KR102384489B1 (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 KR20200053588A publication Critical patent/KR20200053588A/ko
Application granted granted Critical
Publication of KR102384489B1 publication Critical patent/KR102384489B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/111Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation
    • H04N13/117Transformation of image signals corresponding to virtual viewpoints, e.g. spatial image interpolation the virtual viewpoint locations being selected by the viewers or determined by viewer tracking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/4728End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for selecting a Region Of Interest [ROI], e.g. for requesting a higher resolution version of a selected region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/10Processing, recording or transmission of stereoscopic or multi-view image signals
    • H04N13/106Processing image signals
    • H04N13/156Mixing image signals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/282Image signal generators for generating image signals corresponding to three or more geometrical viewpoints, e.g. multi-view systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/21Server components or server architectures
    • H04N21/218Source of audio or video content, e.g. local disk arrays
    • H04N21/21805Source of audio or video content, e.g. local disk arrays enabling multiple viewpoints, e.g. using a plurality of cameras
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44218Detecting physical presence or behaviour of the user, e.g. using sensors to detect if the user is leaving the room or changes his face expression during a TV program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

정보 처리 장치는 영상 데이터에 관한 정보가 기술되는 제1 데이터를 취득하고; 시점 위치, 시선 방향, 및 초점 위치 중 적어도 임의의 하나를 설정함으로써 시청가능한 가상 시점 영상에 관한 정보가 포함되어 있다는 것을 나타내는 소정 값이 제1 데이터에 기술되어 있는지를 판정하고; 판정 결과 및 제1 데이터에 기초하여 영상 데이터를 포함하는 제2 데이터를 취득하며; 제2 데이터에 포함되는 영상 데이터에 대한 재생 제어를 수행한다.

Description

정보 처리 장치, 정보 제공 장치, 제어 방법, 및 프로그램
본 발명은 정보 처리 장치, 정보 제공 장치, 제어 방법, 및 프로그램에 관한 것으로, 구체적으로는 미디어 데이터를 배포하기 위한 기술에 관한 것이다.
최근, 가상 시점으로부터 콘텐츠의 시청을 가능하게 하는 가상 시점 영상(자유 시점 영상)에 관한 논의가 진행 중이다. 특허 문헌(PTL) 1에는 이러한 가상 시점 영상을 생성하기 위한 방법이 기술되어 있다. 또한, PTL 2에는 1대의 클라이언트 PC에의 다시점 영상의 스트리밍을 수행하기 위해, 복수의 카메라 각각에서 촬영되고 서로 상이한 해상도를 갖는 복수의 영상 중 어느 것을 송신할지를 선택하는 처리 장치가 제공된 시스템이 기술되어 있다.
PTL 1: 일본 특허 공개 제2015-187797호 PTL 2: 일본 특허 공개 제2013-183209호
영상이 배포될 때 복수의 시점에 각각 대응하는 복수의 처리 장치를 제공한 결과로서 처리 부하가 증가할 수 있다는 사실은 PTL 2에 기술된 기술에서 고려되지 않았다.
본 발명은 처리 부하를 억제하면서 미디어 데이터를 배포하는 기술을 확립하는 것을 목적으로 한다.
본 발명의 일 실시예에 따른 정보 처리 장치는 영상 데이터에 관한 정보가 기술되어 있는 제1 데이터와, 영상 데이터를 포함하는 제2 데이터를 획득하기 위한 획득 수단; 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 설정함으로써 시청될 수 있는 가상 시점 영상에 관한 정보가 포함되어 있다는 것을 나타내는 미리 결정된 값이 제1 데이터에 기술되어 있는지를 판정하기 위한 판정 수단; 및 제2 데이터에 포함된 영상 데이터의 재생을 제어하기 위한 제어 수단을 포함하고, 획득 수단은 판정 수단에 의한 판정 결과와 제1 데이터에 기초하여 제2 데이터를 획득하는 것을 특징으로 한다.
본 발명에 따르면, 미디어 데이터는 처리 부하를 억제하면서 배포될 수 있다.
본 발명의 다른 특징들 및 이점들은 첨부된 도면들과 관련하여 취해진 이하의 설명으로부터 명확해질 것이다. 동일한 참조 번호들은 첨부 도면들에 걸쳐 동일하거나 유사한 컴포넌트들을 나타내는 점에 유의한다.
첨부 도면들은 본 명세서에 포함되고, 그 일부를 구성하고, 본 발명의 실시예들을 예시하며, 그 설명과 함께 본 발명의 원리를 설명하기 위해 사용된다.
도 1은 시스템의 예시적인 구성을 나타내는 도면이다.
도 2a는 배포될 가상 시점 영상의 구성을 나타내는 도면이다.
도 2b는 배포될 가상 시점 영상의 구성을 나타내는 도면이다.
도 2c는 배포될 가상 시점 영상의 구성을 나타내는 도면이다.
도 2d는 배포될 가상 시점 영상의 구성을 나타내는 도면이다.
도 2e는 배포될 가상 시점 영상의 구성을 나타내는 도면이다.
도 3a는 가상 시점 영상의 배포를 나타내는 도면이다.
도 3b는 가상 시점 영상의 배포를 나타내는 도면이다.
도 4a는 클라이언트의 예시적인 하드웨어 구성을 나타내는 블록도이다.
도 4b는 서버의 예시적인 하드웨어 구성을 나타내는 블록도이다.
도 5는 클라이언트의 예시적인 기능적 구성을 나타내는 블록도이다.
도 6a는 클라이언트의 처리 흐름의 제1 예를 나타내는 흐름도이다.
도 6b는 클라이언트의 처리 흐름의 제1 예를 나타내는 흐름도이다.
도 7a는 클라이언트의 처리 흐름의 제2 예를 나타내는 흐름도이다.
도 7b는 클라이언트의 처리 흐름의 제2 예를 나타내는 흐름도이다.
도 8a는 클라이언트의 처리 흐름의 제3 예를 나타내는 흐름도이다.
도 8b는 클라이언트의 처리 흐름의 제3 예를 나타내는 흐름도이다.
도 9a는 클라이언트의 처리 흐름의 제4 예를 나타내는 흐름도이다.
도 9b는 클라이언트의 처리 흐름의 제4 예를 나타내는 흐름도이다.
도 10a는 클라이언트의 처리 흐름의 제5 예를 나타내는 흐름도이다.
도 10b는 클라이언트의 처리 흐름의 제5 예를 나타내는 흐름도이다.
도 11은 서버의 예시적인 기능적 구성을 나타내는 블록도이다.
도 12는 서버의 처리 흐름의 제1 예를 나타내는 흐름도이다.
도 13은 서버의 처리 흐름의 제2 예를 나타내는 흐름도이다.
도 14는 서버의 처리 흐름의 제3 예를 나타내는 흐름도이다.
도 15는 서버의 처리 흐름의 제4 예를 나타내는 흐름도이다.
도 16은 서버의 처리 흐름의 제5 예를 나타내는 흐름도이다.
도 17은 MPD 파일의 가재 내용의 제1 예를 나타내는 도면이다.
도 18a는 MPD 파일의 기술 내용의 제2 예를 나타내는 도면이다.
도 18b는 MPD 파일의 기술 내용의 제2 예를 나타내는 도면이다.
도 19는 MPD 파일의 기술 내용의 제3 예를 나타내는 도면이다.
도 20a는 MPD 파일의 기술 내용의 제4 예를 나타내는 도면이다.
도 20b는 MPD 파일의 기술 내용의 제4 예를 나타내는 도면이다.
도 21은 MPD 파일의 기술 내용의 제5 예를 나타내는 도면이다.
이하, 실시예들은 첨부된 도면들을 참조하여 설명될 것이다. 이하의 실시예들은 본 발명을 한정하고자 하는 의도가 아니라는 점에 유의한다. 예를 들어, 이하의 실시예들의 적어도 일부 또는 일부 경우에서, 그 전부의 구성 또는 방법의 단계들이 포함되어 있지 않은 경우에도 본 발명의 범위에 속할 수 있다.
시스템 구성
도 1은 본 실시예에 따른 통신 시스템의 예시적인 구성을 나타낸다. 일례에서, 통신 시스템은 클라이언트(101) 및 서버(102)를 포함하고, 클라이언트(101)와 서버(102)는 네트워크(103)를 통해 접속된다. 클라이언트(101)는 DTV(Digital TV), HMD(Head-Mounted Display), 멀티뷰 텔레비전, 스마트폰, 또는 태블릿과 같은 표시 기능을 포함하는 정보 처리 장치일 수 있다. 클라이언트(101)는 PC(Personal Computer) 등에 설치된 웹 브라우저 또는 다른 애플리케이션들을 표현하는 개념일 수 있다. 즉, 클라이언트(101)는 반드시 장치로서 실현되는 것은 아니다. 또한, 클라이언트(101)는 프로젝션 장치를 포함하는 프로젝터, 또는 복수의 프로젝션 장치를 포함하는 멀티 프로젝터일 수도 있다. 일례에서, 서버(102)는 디지털 카메라, 디지털 비디오 카메라, 네트워크 카메라, 프로젝터, 모바일 폰, 스마트폰, PC, 또는 서버 장치이고, 영상 데이터를 송신하는 서버 장치로서 기능하는 정보 제공 장치이다. 본 실시예에서, 서버(102)는 예로서, 하나의 PC이지만, 서버(102)의 기능은 분산 방식으로, 예를 들어, 클라우드에서 분산 방식으로 배열된 하나 이상의 장치에 의해 실현될 수 있다. 네트워크(103)는 예를 들어, LAN(Local Area Network), WAN(Wide Area Network) 또는 LTE(Long Term Evolution)와 같은 공중 이동 통신 네트워크일 수 있거나, 이들의 조합일 수 있다. LAN은 IEEE 802.11 표준 시리즈 등에 따르는 이더넷(등록 상표) 또는 무선 LAN과 같은 유선 LAN에 의해 구성된다. WAN은 예를 들어, 인터넷일 수 있다. 클라이언트(101)와 서버(102)는 네트워크(103)를 그 사이에 개재시키지 않고 직접 접속될 수 있다는 점에 유의한다. 예를 들어, 클라이언트(101)와 서버(102)는 무선 애드혹 네트워크를 사용하여 직접 통신할 수 있다.
본 실시예에서, 서버(102)는 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나가 공간에서 자유롭게 설정(이동)하면서 시청할 수 있는 가상 시점 영상 데이터를 인코딩함으로써 획득되는 영상 데이터를 다른 장치에 제공할 수 있다. 클라이언트(101)는 상황에 따라 영상 데이터를 획득하여 재생한다. 여기서, 본 실시예에서는, 클라이언트(101)의 능력 및 통신 상황에 따라 획득될 스트림을 동적으로 변경하기 위한 기술(MPEG-DASH, HTTP Live Streaming 등)이 사용된다고 가정된다. MPEG-DASH는 Moving Picture Experts Group-Dynamic Adaptive Streaming over HTTP의 두문자어라는 점에 유의한다. 이러한 기술들에서, 영상 데이터는 미세한 시간 단위의 세그먼트들로 분할되고, 세그먼트들을 획득하기 위한 URL(Uniform Resource Locator)은 플레이 리스트라고 불리는 파일에 기술된다. 서버(102)는 이 플레이 리스트를 준비하여 클라이언트(101)에 제공하고, 클라이언트(101)는 이 파일을 수신할 때 플레이 리스트를 먼저 획득하고 플레이 리스트에 기술된 정보를 사용하여 원하는 영상 데이터를 획득한다. 플레이 리스트에 기술된 복수의 버전의 영상 데이터 세그먼트에 대응하는 URL의 결과로서, 클라이언트(101)는 자신의 능력 또는 통신 환경에 따라 최적의 버전의 영상 데이터 세그먼트를 획득할 수 있다. 이 경우, 서버(102)는 플레이 목록에 관한 파일을 클라이언트(101)에 제공하지만, 영상 데이터를 직접적으로 클라이언트(101)에 제공할 필요는 없다. 즉, 클라이언트(101)는 서버(102)로부터 제공된 정보에 기초하여 기술된 URL에 액세스함으로써 외부 장치로부터 영상 데이터 세그먼트를 획득할 수 있다. 이하에서, MPEG-DASH에 규정되어 있는 MPD(Media Presentation Description)가 플레이 리스트의 파일로서 사용된다고 가정하여 설명될 것이라는 점에 유의한다. MPEG-DASH 대신에 HTTP Livestreaming 또는 Smooth Streaming과 같은 플레이 리스트 기술(play list description)을 사용하는 다른 프로토콜이 사용될 수도 있다는 점에 유의한다. 즉, 이하의 논의는 적어도 클라이언트(101)가 영상 데이터에 관한 플레이 리스트와 같은 정보를 획득하고 그 정보에 기초하여 영상 데이터를 획득하는 시스템에 적용될 수 있다.
이하에서, 먼저, 송신될 가상 시점 영상(자유 시점 영상) 데이터의 개요가 설명될 것이고, 그 후, 장치 구성 및 처리 흐름의 예가 설명될 것이다.
송신될 가상 시점 영상 데이터의 개요
이하에서는, 본 실시예에서 송신될 가상 시점 영상 데이터가 설명될 것이다. 가상 시점 영상은 공지 기술에서와 같이 생성되는 것으로 가정되고, 본 실시예에서 송신될 가상 시점 영상에 관한 파라미터들에 대해 주로 설명될 것이라는 점에 유의한다.
도 2a는 가상 시점 영상에서의 사용자의 시선 방향의 이동 범위의 예를 나타낸다. 사용자(111)는 Yaw를 나타내는 축(112), Pitch를 나타내는 축(113), 및 Roll을 나타내는 축(114)을 중심으로 시선을 회전시킬 수 있다. 이하에서는, 사용자가 3개의 축 각각에서의 시선을 자유롭게 변경할 수 있다고 가정하여 설명할 것이지만, 예를 들어, 영상 데이터의 내용 또는 미리 결정된 설정에 따라 범위를 한정하는 것과 같이 시선 설정가능 범위를 제한할 수 있다는 점에 유의한다. 예를 들어, Roll 축을 중심으로 한 시선의 회전이 허용되지 않는 제한, 또는 사용자 시점의 설정가능 범위가 반-천체 구(semi-celestial sphere)인 제한이 사용될 수 있다. 또한, 3개의 축에 대한 시점 설정가능 범위들은 개별적으로 또는 상호 관련 방식으로 제한될 수 있다. 또한, 시선 설정가능 범위를 나타내는 값들은 상대 좌표들을 사용하여 또는 절대 좌표들을 사용하여 표현될 수 있다. 상대 좌표들이 사용될 때, 0.0 내지 1.0의 범위의 값들은 예를 들어, 시선 설정가능 범위로서 사용될 수 있다. 절대 좌표가 사용될 때, 0 내지 360, 또는 -180 내지 180의 범위의 값들은 시선 설정가능 범위로서 사용될 수 있다. 또한, 시선 방향의 이동 단위는 고정 값일 수 있거나, 가변 값일 수 있다. 또한, 시선 방향이 이동할 수 있는 값들의 리스트가 제공될 수 있다.
다음으로, 도 2b는 가상 시점 영상에서의 사용자의 시점 위치의 이동 범위의 예를 나타낸다. 사용자(111)는 z축(122) 방향, x축(123) 방향, y축(124) 방향의 각각에서 시점 위치를 이동시킬 수 있다. 여기서, 범위(120)는 사용자 시점이 가상 시점 영상에서 이동될 수 있는 범위를 나타낸다. 이하에서는, 사용자 시점이 3개의 축 각각을 따라 이동될 수 있다고 가정하여 설명될 것이지만, 예를 들어, 영상 데이터의 내용 또는 미리 결정된 설정에 따라 이동이 제한될 수 있다는 점에 유의한다. 예를 들어, 시점이 z축 방향과 같은 미리 결정된 방향으로 이동될 수 없도록 제한이 적용될 수 있거나, x, y 및 z축들 각각에 대해 이동가능 범위가 설정될 수 있다. 복수의 축에 대한 이동가능 범위들은 예를 들어, 상호 관련 방식으로 설정될 수 있거나, 개별적으로 설정될 수 있다는 점에 유의한다. 또한, 이동가능 범위는 상대 좌표 또는 절대 좌표에 의해 표현될 수 있다. 상대 좌표가 사용될 경우, 예를 들어, 0.0 내지 1.0의 범위의 값들이 이동가능 범위로서 사용될 수 있다. 또한, 절대 좌표가 사용될 경우, 이동가능 범위는 미리 결정된 거리의 단위로 하는 수치에 의해 정의될 수 있다. 각각의 x, y, 및 z축 방향들에서의 이동가능 범위의 값들은 예를 들어, 가상 시점 영상 데이터에 기초하여 개별적으로 또는 고정된 관계에 있도록 설정될 수 있거나, 미리 결정된 값들일 수 있다는 점에 유의한다. 또한, 시점 위치의 이동 단위는 고정 값 또는 가변 값일 수 있다. 또한, 시점 위치가 이동할 수 있는 값들의 리스트가 제공될 수 있다.
가상 시점 영상에서는, 또한 초점 위치의 범위가 지정될 수 있다. 도 2c는 가상 시점 영상에서의 초점 위치의 예를 나타내는 도면이다. 사용자(111)는 축(130)의 depth 방향에 대해 초점 위치를 이동시킬 수 있다. 가상 시점 영상에 대한 초점 위치의 이동에 관하여, 사용자가 초점을 자유롭게 이동시키는 것이 허용될 수 있거나, 위치들(132 내지 134)과 같은 위치들이 초점 위치가 맞춰질 수 있는 위치들로서 미리 정의될 수 있다는 점에 유의한다. 시점 위치 및 시선 방향 이외에 초점 위치에 관한 정보가 제공되는 결과로서, 사용자는 가상 시점 영상을 유연하게 시청할 수 있다. 이에 따라, 초점 위치에 관한 정보를 이용함으로써, 사용자 경험이 향상될 수 있다.
가상 시점 영상은 분할된 공간 영역마다 인코딩될 수 있다는 점에 유의한다. 도 2d는 가상 시점 영상의 공간(200)이 사용자 이동 범위의 3개 축에 기초하여 복수의 영역으로 분할되는 예를 나타낸다. 도 2d의 예는 공간(200)이 3×3×3 영역들로 분할되는 예를 나타낸다. 이러한 분할이 수행될 때, 사용자는 사용자가 필요로 하는 공간 영역들의 영상 데이터만을 취득함으로써 디코딩 및 재생을 수행할 수 있다. 예를 들어, 사용자(111)는 시청하고 있는 가상 시점 영상에서의 시점 위치에 기초하여 사용자가 속해 있는 영역(201)의 영상 데이터만을 획득한다. 그 후, 사용자 시점 위치가 x축 방향으로 이동해서 영역(202)에 들어갔을 경우, 사용자(111)는 영역(202)의 영상 데이터를 획득한다. 한편, 사용자 시점 위치가 z축 방향으로 이동해서 영역(203)에 들어갔을 경우, 사용자(111)는 영역(203)의 영상 데이터를 획득한다. 따라서, 가상 시점 영상을 시청하는데 필요한 네트워크의 통신 대역이 증가하는 것을 방지하는 것과 디코딩 처리의 부하의 감소 중 적어도 하나가 달성될 수 있다.
가상 시점 영상의 공간 영역의 분할은 도 2d에 도시된 바와 같이, 3×3×3 직육면체로 나타낸 공간들로의 분할에 한정되지 않는다는 점에 유의한다. 예를 들어, 영역 분할은 1×2×3 또는 2×3×2와 같이 각각의 이동 방향에서 상이한 수의 직육면체들을 갖도록 수행될 수 있다. 또한, 도 2d의 예에서, 3개의 축들 각각에 대해 분할이 수행되고 있지만, 하나의 평면만에 의한 분할, 예를 들어, z축을 따른 xy 평면에 의한 분할, x축을 따른 yz 평면에 의한 분할, 또는 y축을 따른 xz 평면에 의한 분할과 같은 일부 축들에 대한 분할이 수행될 수 있다. 또한, 도 2d에서는, 이동 방향에 대한 분할이 수행되고 있지만, 시점 방향 또는 초점 위치에 대한 분할이 이동 방향에 대한 분할 대신에 또는 그에 추가하여 실행될 수 있다.
또한, 가상 시점 영상을 시청하는데 필요한 네트워크의 통신 대역의 증가 방지 및 디코딩 처리의 부하의 감소는 사용자가 시청하기를 원하는 오브젝트의 데이터 및 배경 데이터만을 획득함으로써 추가로 수행될 수 있다. 도 2e는 이러한 처리를 수행하기 위하여, 영상 데이터가 배경 데이터 및 오브젝트 데이터로 분할되고, 각각의 데이터마다 인코딩이 수행되는 경우의 예를 나타낸다. 배경 데이터는 배경(210) 및 배경에 포함된 배경 오브젝트(211)를 포함하고, 가상 시점 영상의 공간에 포함된 하나 이상의 오브젝트(212 및 213)에 관한 오브젝트 데이터들과 별도로 취급된다. 클라이언트(101)는 오브젝트 데이터 및 배경 데이터를 개별적으로 취득하고, 가상 시점 영상을 생성한다. 또한, 클라이언트(101)는 배경 영상 및 표시하고 싶은 오브젝트(예를 들어, 관심있는 오브젝트)를 획득하여 표시할 수 있다. 예를 들면, 배경과 오브젝트를 개별적으로 인코딩하기 위한 점 그룹 인코딩(point group encoding)과 같은 기술이 적용될 수 있다.
가상 시점 영상을 제공하는 시스템에서는, 사용자 시점 위치의 이동 범위를 제한한 결과로서, 가상 시점 영상을 생성한 콘텐츠 생성자가 의도한 대로 사용자에 의해 콘텐츠가 시청될 수 있거나, 그의 확률이 증가될 수 있고, 사용자 경험이 향상될 수 있다는 점에 유의한다. 도 3a는 이동 범위가 제한되는 가상 시점 영상(Windowed 6 Degrees of Freedom라고도 불릴 수 있는 윈도우 가상 시점 영상)의 예를 나타낸다. 도 3a에서, 진입 금지 범위(300)는 시점 위치의 진입이 윈도우 가상 시점 영상에서 금지되는 범위이다. 사용자(111)의 시점 위치는 진입 금지 범위(300)에 진입할 수 없다. 오브젝트(301)는 가상 시점 영상에 표시될 오브젝트이다. 영역(302)은 윈도우에 의해 절단된 부분을 나타낸다. 이러한 윈도우 가상 시점 영상은 스마트폰, 태블릿 등의 표시 장치(303)를 통해 시청될 수 있다. 표시 장치(303)는 영역(302)으로부터 절단된 가상 시점 영상을 표시 영역(304)에 표시할 수 있다. 사용자(111)는 시점 위치를 진입 금지 범위(300) 내에 이동시킬 수 없지만, 오브젝트(301)를 진입 금지 범위(300) 밖의 위치로부터 임의의 방향을 따라 시청할 수 있다. 도 3a의 예에서는, 진입 금지 범위(300)가 원기둥으로서 나타나 있지만, 이것은 단지 예이고, 이동 금지 범위는 직육면체 또는 삼각기둥과 같은 임의의 영역을 지정함으로써 지정될 수 있다는 점에 유의한다. 사용자의 시선 방향은 윈도우 가상 시점 영상에서 제한될 수 있다는 점에 유의한다. 예를 들어, 도 3a의 예에서, 사용자의 시선 방향이 원뿔의 중심부를 향해 지속적으로 향하도록 제한이 적용될 수 있다.
또한, 사용자의 시점 위치 및 시선 방향은 TimedMetadata를 사용하여 제어될 수 있다. TimedMetadata는 예를 들어, 클라이언트(101)에 대한 사용자 경험을 향상시키는데 효과적인 메타데이터를 제공하기 위한 ISO Base Media File Format에 정의되어 있는 메커니즘이다. 도 3b는 서버(102)가 시점 위치 및 시선 방향과 시간 사이의 관계를 나타내는 정보를 TimedMetadata에 의해 제공하는 경우의 예를 나타낸다. 예를 들어, 가상 시점 영상에서, 시간 t01에서 지점(314)에 존재하는 오브젝트가 시간 t02에서의 위치(315)로 이동된다고 가정된다. 이 경우, TimedMetadata에 의해, 예를 들어, 사용자가 가상 시점 영상을 추천 시점 위치/추천 시선 방향에서 시청할 수 있게 하기 위한 메타데이터가 제공된다. 예를 들어, 시간 t11에서는 시점 위치/시선 방향(310), 시간 t12에서는 시점 위치/시선 방향(311), 시간 t13에서는 시점 위치/시선 방향, 및 시간 t14에서는 시점 위치/시선 방향(313)이 추천 시점 위치/추천 시선 방향에 관한 정보로서 제공된다. 클라이언트(101)는 메타데이터에 기술되지 않은 시간에서의 카메라의 시점 위치 및 시선 방향을, 선형 보간 또는 다른 보간 방법을 사용하여 메타데이터에 기술된 시점 위치들 및 시선 방향들에 기초하여 획득할 수 있다. 추천 시점 위치/추천 시선 방향은 TimedMetadata 이외의 메커니즘에 의해 지정될 수 있다는 점에 유의한다. 또한, TimedMetadata와 같은 메커니즘을 사용하여 시점 및 시선의 이동을 금지시킬 수 있다. 이에 따라, 사용자가 이동할 수 없는 범위 등은 매번 동적으로 변경될 수 있다. 이러한 방식으로, TimedMetadata와 같은 시간과 시점 위치/시선 방향 사이의 관계를 정의하는 데이터에 의해, 사용자가 가상 시점 영상에서, 사용자가 추천 시점으로부터 주의를 기울어야 할 오브젝트를 시청할 수 있는 확률이 증가될 수 있다. 또한, 이에 의해, 사용자 경험이 향상될 수 있다.
TimedMetadata에 의해 시점 위치/시선 방향에 더하여 또는 그 대신에 초점 정보가 제공될 수 있다는 점에 유의한다. TimedMetadata는 예를 들어, 시점 위치, 시선 방향, 및 초점 위치와 같은 하나 이상의 파라미터를 지정하기 위한 지정 정보로서 사용될 수 있다. 또한, 복수의 TimedMetadata가 정의될 수 있다. 예를 들어, 사용자가 주의를 기울이여야 할 복수의 오브젝트(사람 등)가 가상 시점 영상 데이터에 존재하는 경우, TimedMetadata는 각각의 사람마다 정의될 수 있다.
장치들의 하드웨어 구성들
다음으로, 클라이언트(101) 및 서버(102)의 예시적인 하드웨어 구성들에 대해서는 도 4a 및 도 4b를 사용하여 설명될 것이다.
도 4a는 클라이언트(101)의 예시적인 하드웨어 구성을 나타내는 도면이다. 클라이언트(101)는 예를 들어, 제어 유닛(401), 저장 유닛(402), 표시 유닛(403), 조작 유닛(404), 디코딩 유닛(405), 통신 유닛(406), 통신 인터페이스(407), 및 시스템 버스(408)를 포함한다.
제어 유닛(401)은 예를 들어, 시스템 버스(408)를 통해 다른 구성 유닛들을 제어함으로써 클라이언트(101)에서의 동작들을 통합 제어한다. 제어 유닛(401)은 CPU(central processing unit), ASIC(application-specific integrated circuit), FPGA(field programmable gate array), 및 DSP(digital signal processor)와 같은 하나 이상의 프로세서일 수 있다. 저장 유닛(402)은 다양한 타입의 데이터를 저장하고 관리한다. 저장 유닛(402)은 예를 들어, SRAM(Static RAM) 또는 DRAM(Dynamic RAM)과 같은 메모리 또는 하드 디스크 드라이브와 같은 대용량 스토리지일 수 있다. 표시 유닛(403)은 예를 들어, 제어 유닛(401)의 제어 하에서 다양한 타입의 표시를 수행하도록 구성되는 액정 패널이다. 조작 유닛(404)은 사용자에 의해 행해진 조작을 접수하는 키 및 버튼과 같은 사용자 인터페이스이다. 표시 유닛(403) 및 조작 유닛(404)은 예를 들어, 터치 패널을 사용하여 하나의 장치로서 구성될 수 있다는 점에 유의한다. 디코딩 유닛(405)은 영상 데이터에 대해 디코딩 처리를 수행한다. 디코딩 유닛(405)은 전용 회로 등에 의해 구성될 수 있지만, 예를 들어, 저장 유닛(402)에 저장된 프로그램을 실행하는 제어 유닛(401)에 의해, 획득된 영상의 디코딩이 수행되도록 구성될 수 있다는 점에 유의한다. 통신 유닛(406)은 예를 들어, 통신 인터페이스(407)를 통해 다양한 타입의 통신 처리를 실행한다. 통신 유닛(406)은 예를 들어, 변복조 회로와 같은 통신 회로에 의해 구성된다. 통신 인터페이스(407)는 예를 들어, 무선 LAN 또는 블루투스(등록 상표)와 같은 공중 무선 통신 네트워크를 통한 무선 통신을 위한 또는 이더넷 등을 통한 유선 통신을 위한 인터페이스이다. 예를 들어, 통신 인터페이스(407)가 무선 통신 인터페이스일 때, 통신 인터페이스(407)는 RF 프론트 엔드 및 안테나에 의해 구성되고, 통신 유닛(406)에 의해 생성된 신호를 무선 신호로 변환하고, 안테나를 통해 무선 신호를 송신한다. 또한, 통신 인터페이스(407)가 유선 통신 인터페이스일 때, 통신 인터페이스(407)는 예를 들어, 케이블 접속을 위한 커넥터, 광전 변환 유닛 등에 의해 구성될 수 있다. 서버(102)와 같은 다른 장치와 통신이 가능한 한, 임의의 유닛 또는 회로가 통신 유닛(406) 및 통신 인터페이스(407)로서 사용될 수 있다. 또한, 클라이언트(101)는 복수의 통신 인터페이스를 포함할 수 있다.
본 실시예에서는, 표시 유닛(403)이 클라이언트(101)의 하나의 구성 요소로서 나타나 있지만, 예를 들어, HDMI(등록 상표) 등을 통해 접속되는 디스플레이 또는 텔레비전과 같은 외부 표시 장치가 사용될 수 있다는 점에 유의한다. 이러한 경우에, 클라이언트(101)는 예를 들어, 표시 제어 유닛을 포함할 수 있다. 또한, 조작 유닛(404)은 HMD와 같은 사용자에 의해 행해지는 시점/시선/초점에 관한 조작을 검출하는 장치일 수 있거나, 외부 조이스틱, 키보드, 또는 마우스에 접속되어 사용자 조작들을 접수하는 조작 접수 유닛으로서 기능할 수 있다. 이러한 방식으로, 표시 유닛(403) 또는 조작 유닛(404)은 예를 들어, 클라이언트(101) 외부의 디바이스로서 제공될 수 있고, 이 경우, 클라이언트(101)의 표시 유닛(403)은 표시 제어 유닛으로 대체될 수 있고, 조작 유닛(404)은 조작 접수 유닛으로 대체될 수 있다. 또한, 클라이언트(101)는 내부 표시 유닛(403) 및 조작 유닛(404)에 추가하여, 외부 디바이스가 정보를 표시하고 조작들을 접수하는 것을 허용하기 위한 표시 제어 유닛 및 조작 접수 유닛을 포함할 수 있다. 또한, 전술한 다른 기능 유닛들은 클라이언트(101) 외부의 장치들로서 유사하게 제공될 수 있고, 이 경우, 클라이언트(101)는 클라이언트(101) 외부의 이러한 장치들에 통신가능하게 접속되고, 정보를 입출력하기 위한 기능 유닛을 포함할 수 있다.
도 4b는 서버(102)의 예시적인 하드웨어 구성을 나타내는 블록도이다. 서버(102)는 예를 들어, 제어 유닛(421), 저장 유닛(422), 표시 유닛(423), 조작 유닛(424), 촬상 유닛(425), 인코딩 유닛(426), 통신 유닛(427), 통신 인터페이스(428), 및 시스템 버스(429)를 포함한다.
제어 유닛(421)은 예를 들어, 시스템 버스(429)를 통해 다른 구성 유닛들을 제어함으로써 서버(102)에서의 동작을 통합 제어한다. 제어 유닛(421)은 CPU(central processing unit), ASIC(application-specific integrated circuit), FPGA(field programmable gate array), 및 DSP(digital signal processor)와 같은 하나 이상의 프로세서일 수 있다. 저장 유닛(422)은 다양한 타입의 데이터를 저장하고 관리한다. 저장 유닛(422)은 예를 들어, SRAM(Static RAM) 또는 DRAM(Dynamic RAM)과 같은 메모리 또는 하드 디스크 드라이브와 같은 대용량 스토리지일 수 있다. 표시 유닛(423)은 예를 들어, 제어 유닛(421)의 제어 하에서 다양한 타입의 표시를 수행하도록 구성되는 액정 패널이다. 조작 유닛(424)은 예를 들어, 사용자에 의해 행해진 조작들을 접수하기 위한 키 및 버튼이다. 표시 유닛(423) 및 조작 유닛(424)은 예를 들어, 터치 패널을 사용하여 하나의 장치로서 구성될 수 있다는 점에 유의한다. 촬상 유닛(425)은 영상의 촬상을 수행한다. 촬상 유닛(425)은 예를 들어, 렌즈 및 센서를 포함한다. 서버(102)는 영상을 촬상하지 않고 하나 이상의 다른 장치들로부터 영상 데이터를 획득할 수 있다는 점에 유의한다. 또한, 서버(102)는 하나 이상의 다른 장치들로부터 획득된 데이터에 기초하여 영상 데이터를 생성할 수 있다. 또한, 서버(102)는 하나 이상의 제2 다른 장치로부터 획득된 데이터에 기초하여, 제1 다른 장치에 의해 생성되는 영상 데이터를, 제1 다른 장치로부터 획득할 수 있다. 인코딩 유닛(426)은 영상 데이터에 대해 인코딩 처리를 수행한다. 인코딩 유닛(426)은 전용 회로 등에 의해 구성될 수 있지만, 제어 유닛(421)이 예를 들어, 저장 유닛(422)에 저장된 프로그램을 실행함으로써 촬상 유닛(425)에 의해 촬상된 영상을 인코딩하도록 구성될 수도 있다는 점에 유의한다. 서버(102)는 인코딩 유닛(426)을 포함하지 않고 다른 장치로부터 인코딩된 영상 데이터를 획득하도록 구성될 수 있다는 점에 유의한다. 또한, 서버(102)는 영상 데이터를 획득하지 않고 영상 데이터의 위치만을 파악하고, 그 위치에 관한 정보를 클라이언트(101)에게 통지할 수 있다. 통신 유닛(427)은 통신 인터페이스(428)를 통해 다양한 타입의 통신 처리를 실행한다. 통신 유닛(427)은 예를 들어, 변복조 회로와 같은 통신 회로에 의해 구성된다. 통신 인터페이스(428)는 유선 통신 인터페이스 또는 무선 통신 인터페이스이고, 예를 들어, 통신 인터페이스(407)와 유사한 구성을 갖는다. 서버(102)는 복수의 통신 인터페이스를 포함할 수 있다.
클라이언트(101)의 기능적 구성
다음으로, 클라이언트(101)의 기능적 구성이 설명될 것이다. 도 5는 클라이언트(101)의 예시적인 기능적 구성을 나타내는 블록도이다. 클라이언트(101)는 예를 들어, MPD 분석 유닛(501), 시점 제어 유닛(502), 시선 제어 유닛(503), 초점 제어 유닛(504), 인코딩 방법 판정 유닛(505), 디코딩 제어 유닛(506), 표시 제어 유닛(507), MPD 획득 유닛(509), 및 AdaptationSet 관리 유닛(508)을 포함한다. 또한, 클라이언트(101)는 통신 제어 유닛(510), 조작 제어 유닛(511), 세그먼트 획득 유닛(512), 및 세그먼트 분석 유닛(513)을 포함한다. 이 기능 블록들은 메모리(도시되지 않음)에 저장된 소프트웨어 프로그램을 실행하는 제어 유닛(401)의 CPU(도시되지 않음)에 의해 실현될 수 있다는 점에 유의한다. 기능 블록들 중 일부 또는 전부는 하드웨어에 의해 실현될 수 있다는 점에 유의한다.
MPD 분석 유닛(501)은 서버(102)로부터 획득된 MPEG-DASH 플레이 리스트 파일인 MPD(Media Presentation Description) 파일을 분석한다. 이 플레이 리스트에서, 특정한 타이밍에서 특정한 세그먼트에 액세스하기 위한 URL(Uniform Resource Locator)이 기술된다. 또한, MPD 분석 유닛(501)은 MPD 파일에 기술된 가상 시점 영상 데이터를 획득/재생하는데 사용될 메타데이터를 분석한다.
시점 제어 유닛(502)은 가상 시점 영상의 공간 내에서의 시점 이동에 관한 제어를 실행한다. 시점 제어 유닛(502)은 현재 시점 위치와, 가상 시점 영상에서 시점 이동이 가능한 범위를 나타내는 정보를 보유하고, 시점 위치가 가상 시점 영상의 범위 밖으로 또는 진입 금지 범위로 이동하지 않도록 제어를 수행한다. 또한, 공간 영역이 분할될 때, 시점 제어 유닛(502)은 각 분할 공간에서 시점 이동이 가능한 범위에 관한 정보를 보유한다.
시선 제어 유닛(503)은 가상 시점 영상의 공간 내에서의 시선 방향 및 시선 범위를 제어한다. 시선 제어 유닛(503)은 현재의 시선 방향과 시선 범위, 및 가상 시점 영상에서의 시선 범위에 관한 정보를 보유하고, 시선 방향 및 시선 범위가 가상 시점 영상의 범위 밖에 있지 않도록 제어를 실행한다.
초점 제어 유닛(504)은 가상 시점 영상의 공간 내에서의 초점 위치를 제어한다. 초점 제어 유닛(504)은 현재의 초점 위치와, 초점 위치가 이동될 수 있는 가상 시점 영상의 범위에 관한 정보를 보유하고, 초점 위치가 가상 시점 영상의 범위 밖으로 이동하지 않도록 제어를 실행할 수 있다.
인코딩 방법 판정 유닛(505)은 MPD에 기술된 영상 데이터가 어떤 인코딩 방법으로 인코딩되어 있는지를 판정하고, 클라이언트(101)가 영상 데이터를 디코딩할 수 있는지를 판정한다. 예를 들어, 인코딩 방법 판정 유닛(505)은 클라이언트(101)에 의해 획득된 MPD에 포함된 codecs의 값에 기초하여, codecs에 대응하는 AdaptationSet 또는 Representation에 포함되는 영상 데이터가 디코딩가능한지를 판정한다.
디코딩 제어 유닛(506)은 디코딩 유닛(405)을 제어함으로써 가상 시점 영상 데이터를 디코딩한다. 또한, 디코딩 제어 유닛(506)은 가상 시점 영상 데이터에 추가하여, 다른 인코딩된 영상 데이터를 디코딩할 수 있다.
표시 제어 유닛(507)은 시점 제어 유닛(502), 시선 제어 유닛(503), 및 초점 제어 유닛(504)의 제어, 및 디코딩 제어 유닛(506)에 의해 디코딩된 영상 데이터에 기초하여 표시 유닛(403)에서의 가상 시점 영상을 표시하는 제어를 실행한다. 또한, 표시 제어 유닛(507)은 가상 시점 영상에 대한 확대 및 축소를 포함하는 줌 처리를 실행할 수 있다.
AdaptationSet 관리 유닛(508)은 MPD에 포함된 AdaptationSet 및 각각의 AdaptationSet에 포함된 메타데이터를 관리한다. 또한, AdaptationSet 관리 유닛(508)은 재생 하의 AdaptationSet를 관리한다.
MPD 획득 유닛(509)은 통신 제어 유닛(510)을 통해 서버(102)로부터 플레이 리스트로서 역할하는 MPD 파일을 획득한다. 통신 제어 유닛(510)은 통신 유닛(406)을 제어함으로써 다른 장치와의 통신을 실행한다. 예를 들어, 통신 제어 유닛(510)은 HTTP(Hyper Text Transfer Protocol) 및 TCP/IP와 같은 다양한 타입의 통신 프로토콜들에 따른 통신을 제어한다. 조작 제어 유닛(511)은 조작 유닛(404)을 제어함으로써 사용자에 의해 행해진 조작들을 접수한다. 세그먼트 획득 유닛(512)은 통신 제어 유닛(510)을 통해 서버(102)로부터 세그먼트(영상 데이터)를 획득한다. 세그먼트 분석 유닛(513)은 세그먼트 획득 유닛(512)을 통해 획득된 세그먼트를 분석한다.
클라이언트(101)에 의해 실행되는 처리 흐름
다음으로, 클라이언트(101)에 의해 실행될 처리 흐름의 일부 예들이 설명될 것이다. 본 실시예에서는, 영상 데이터에 관한 정보가 MPEG-DASH MPD 파일에 포함되고, 클라이언트(101)는 그 정보에 기초하여 영상 재생 처리를 실행한다. 예를 들어, 클라이언트(101)가 가상 시점 영상의 재생과 호환가능하고 가상 시점 영상에 관한 정보가 MPD 파일에 포함될 때, 클라이언트(101)는 정보에 기초하여 가상 시점 영상을 재생한다. 또한, 클라이언트(101)가 가상 시점 영상의 재생과 호환되지 않고 가상 시점 영상에 관한 정보가 MPD 파일에 포함될 때, 클라이언트(101)는 가상 시점 영상을 획득하지 않는다. 이에 따라, 클라이언트(101)는 재생될 수 없는 영상을 획득하지 않을 것이다. 여기서, MPD 파일에, 가상 시점 영상 데이터가 아니며 클라이언트(101)에 의해 재생될 수 있는 영상 데이터에 관한 정보를 포함시킨 결과로서, 클라이언트(101)는 클라이언트(101)가 가상 시점 영상의 재생과 호환되지 않더라도 영상의 시청을 허용할 수 있다. 또한, MPD 파일에 다양한 타입의 표시 제어를 위한 기술을 포함한 결과로서, 표시될 가상 시점 영상의 상세한 제어가 수행될 수 있다.
처리 예 1-1
먼저, 이 처리에서 사용될 MPD가 도 17을 사용하여 설명될 것이고, 그 후 클라이언트(101)에 의해 실행될 처리 흐름의 예가 도 6a 및 도 6b를 사용하여 설명될 것이다.
도 17은 가상 시점 영상 데이터에 대응하는 기술을 포함하는 MPD(1700)를 나타내고, MPD(1700)는 예로서, AdaptationSet들(1701, 1706, 및 1707)을 포함한다. AdaptationSet(1701)는 가상 시점 영상 데이터를 나타내는 AdaptationSet의 예이며, codecs을 그 인코딩 방법을 나타내는 정보로서 포함한다. 일례에서, codecs이 "6dof_v_codec"인 경우, 이 AdaptationSet는 가상 시점 영상 데이터에 관한 것이라는 것이 특정된다. codecs이 "avc"를 포함하는 문자열인 AdaptationSet(1706)은 H.264/AVC에 의해 인코딩된 영상 데이터에 대응한다. codecs이 "hvc"를 포함하는 문자열인 AdaptationSet(1707)은 H.265/HEVC에 의해 인코딩된 영상 데이터에 대응한다. AdaptationSet(1706 또는 1707)에 대응하는 영상 데이터는 미리 결정된 시점, 시선, 및 초점에 의해 영상을 생성하는 생성자에 의해 생성된 영상을 인코딩함으로써 획득된 데이터이다. 본 실시예에서, MPD는 AdaptationSet(1701)를 포함하고, AdaptationSet(1706 및 1707)를 포함할 필요는 없다는 점에 유의한다.
SupplementalProperty(1702)는 AdaptationSet(1701)에 관한 보충 정보를 나타낸다. 여기서, SupplementalProperty(1702)는 AdaptationSet(1701)이 예로서, SchemeIdUri에 의해 가상 시점 영상 데이터를 포함하는 AdaptationSet인 것을 기술하고 있다. 가상 시점 영상 데이터의 메타데이터는 SupplementalProperty(1702)의 value의 값에 의해 기술된다. 여기서, source는 인코딩되지 않은 가상 시점 영상 데이터의 영상 데이터를 식별하기 위한 식별자이고, 동일한 source의 값을 갖는 AdaptationSet들은 동일한 영상 데이터를 인코딩함으로써 획득되는 데이터인 것이 특정된다. x, y, z 및 "*_offset"(*는 x, y, 또는 z)는 가상 시점 영상의 시점의 범위를 정의한다. 예를 들어, x 방향에서의 범위는 x 내지 x+x_offset에 의해 정의된다. y 및 Z 방향들에서의 범위들도 유사하게 정의된다. 유사하게, yaw, roll, pitch 및 이에 대응하는 "*_offset"은 가상 시점 영상의 시선의 범위를 정의하고, depth 및 depth_offset은 가상 시점 영상의 초점의 범위를 정의한다. SupplementalProperty(1702)의 value에 기술될 수 있는 메타데이터는 전술한 것들로 제한되지 않는다는 점에 유의한다. 또한, 전술한 정보의 일부는 기술될 필요는 없다. 예를 들어, depth 및 depth_offset의 값들은 value에 의해 정의될 필요가 없다. 또한, 시점 및 시선에 관한 정보는 기술될 필요가 없다. 예를 들어, 시점, 시선 및 초점 중 적어도 하나가 고정될 때, 또는 제한이 부과되지 않을 때, 메타데이터는 이러한 포맷으로 기술될 수 있다. 또한, value의 값은 value="source,x,y,z"로 기술될 수 있다. 이 경우, 가상 시점 영상의 시점 위치의 이동가능 범위는 각각의 xyz 축들을 따라 0 내지 x, 0 내지 y, 및 0 내지 z로 정의된다. 또한, value의 값은 value="source,6dof_idc"로 기술될 수 있다. 6dof_idc는 AdaptationSet(1701)가 가상 시점 영상과 호환되는지의 여부를 나타내는 식별자이다. 예를 들어, 이 값이 0인 경우, AdaptationSet(1701)은 가상 시점 영상 데이터를 포함하고, 이 값이 1인 경우, AdaptationSet(1701)은 가상 시점 영상 데이터를 포함하지 않는다는 것을 의미할 수 있다. 이러한 식별자가 사용될 때, 이 식별자는 복수의 AdaptationSet들(1701, 1706, 1707) 각각에 정의된다. 이 경우, AdaptationSet(1701)에서의 6dof_idc의 값은 1로 설정되고, AdaptationSet들(1706 및 1707) 각각에서의 6dof_idc의 값은 0으로 설정된다. 예를 들어, 동일한 source 및 그러한 식별자의 조합에 의해, 가상 시점 영상과 관련된 AdaptationSet 및 가상 시점 영상에 관련되지 않은 AdaptationSet는 하나의 영상 데이터에 대해 정의될 수 있다. 이에 따라, 가상 시점 영상 포맷의 인코딩을 취급할 수 없는 클라이언트라고 해도, 영상을 재생할 기회가 증가될 수 있다.
SupplementalProperty(1703)는 벡터들을 사용하여, 가상 시점 영상 데이터의 시점, 시선, 및 초점의 각각의 단위 이동량들을 나타낸다. 클라이언트(101)는 SupplementalProperty(1703)가 SchemeIdUri의 값에 의해 가상 시점 영상의 단위 이동량의 벡터를 나타낸다고 판정하고, 각각의 축들을 따른 단위 이동량의 크기들은 value의 값들로 특정될 수 있다. SupplementalProperty(1704)는 가상 시점 영상의 초기 시점 위치, 초기 시선 방향, 및 초기 초점을 나타낸다. 클라이언트(101)는 SupplementalProperty(1704)가 schemeIdUri의 값에 의해 가상 시점 영상의 초기 시점 위치, 초기 시선 방향, 및 초기 초점을 나타낸다고 판정하고, value의 값에 의해 설정값을 특정할 수 있다. SupplementalProperty(1705)는 AdaptationSet(1701)의 가상 시점 영상이 모노스코픽 영상(Monoscopic) 또는 스테레오스코픽 영상(Stereoscopic) 인지를 나타낸다. 클라이언트(101)는 SupplementalProperty(1705)가 schemeIdUri의 값에 의해 모노스코픽 영상 또는 스테레오스코픽 영상을 나타내는 정보 요소라고 판정한다. 또한, 클라이언트(101)는 AdaptationSet(1701)의 가상 시점 영상이 value의 값에 의해 모노스코픽 영상 또는 스테레오스코픽 영상인 것을 특정한다. 도 17의 예에서, "stereo"는 스테레오스코픽 영상인 것을 기술하기 위해 지정되고 있지만, "mono"의 값은 모노스코픽 영상인 것을 기술하기 위해 지정될 수 있다는 점에 유의한다. "stereo" 및 "mono"는 값들을 기술하기 위한 예들이며, 예를 들어, 0(Monosocpic) 및 1(Stereoscopic)과 같은 다른 값들이 사용될 수 있다는 점에 유의한다.
또한, 상술한 것들과 상이한 값들 또는 문자열들이 전술한 값들로서 사용될 수 있고, 설명된 것과 상이한 해석들이 정의될 수 있다. 예를 들어, x축에서의 시점의 범위가 "x" 및 "x_offset"를 사용하여 x-x_offset 내지 x+x_offset 또는 x-x_offset 내지 x로 특정되도록 해석이 정의될 수 있다. 또한, "x0" 및 "x1"을 사용하여 x0 내지 x1의 범위가 특정되도록 정의될 수 있다. 즉, 본 실시예에서 참조되는 값들이 MPD와 같은 기술 파일에 정의되어 있는 한, 설명된 것과 상이한 값들 및 해석이 사용될 수 있다. 또한, 기술의 순서는 도 17에 도시된 순서로 한정되지 않는다. 예를 들어, 시점 위치의 범위는 "x,x_offset,y,y_offset,z,z_offset"의 순서로 기술되고 있지만, 범위는 "x,y,z,x_offset,y_offset,z_offset"의 순서와 같은 상이한 순서로 기술될 수 있다.
SupplementalProperty는 AdaptationSet들(1706 및 1707)에도 정의될 수 있지만, 설명을 간략화하기 위해 그에 대한 설명은 생략될 것이라는 점에 유의한다.
도 6a 및 도 6b의 처리에서, 먼저, MPD 획득 유닛(509)은 통신 제어 유닛(510)을 통해 서버(102)로부터 MPD 파일을 획득한다(단계 S601). 그 후, MPD 분석 유닛(501)은 서버(102)로부터 획득된 MPD 파일을 분석한다(단계 S602). 단계 S602에서, 예를 들어, MPD 분석 유닛(501)은 AdaptationSet 및 Representation에 포함된 codecs의 값들을 인코딩 방법 판정 유닛(505)에 통지하고, 인코딩 방법 판정 유닛(505)은 이들 값들로부터 인코딩 방법을 판정한다. 또한, MPD 분석 유닛(501)은 AdaptationSet에 포함된 SupplementalProperty의 정보를 분석함으로써 인코딩 방법을 판정할 수 있다. 또한, 인코딩 방법 판정 유닛(505)은 MPD 파일에 설명되어 있는 서버(102)에 의해 배포될 영상 데이터에 가상 시점 영상 데이터가 포함되는지의 여부를 판정한다.
도 17의 예에서는, 예를 들어, AdaptationSet들(1701, 1706, 1707)에 포함된 codecs의 값들이 분석된다. 이 경우, AdaptationSet(1701)에 포함된 codecs의 값이 "6dof_v_codec"이므로, AdaptationSet(1701)는 가상 시점 영상 포맷으로 인코딩된 영상 데이터에 관한 것이라고 판정된다. 값 "6dof_v_codec"은 AdaptationSet가 가상 시점 영상 포맷으로 인코딩된 영상 데이터에 관한 것이라는 것을 나타내는 값의 예이고, 동일한 의미를 갖는 다른 값이 정의될 수 있다는 점에 유의한다. 한편, AdaptationSet들(1706 및 1707)에 포함된 codecs의 값들은 인코딩이 가상 시점 영상 포맷(즉, AVC 또는 HEVC)이 아닌 포맷으로 수행된다는 것을 나타낸다. 따라서, 인코딩 방법 판정 유닛(505)은 이들 AdaptationSet가 가상 시점 영상에 관한 것이 아니라고 판정한다. 도 17의 예에서는, 예를 들어, AdaptationSet 내의 SupplementalProperty의 정보가 분석될 수 있다는 점에 유의한다. 이 경우, AdaptationSet(1701)가 가상 시점 영상 포맷으로 인코딩된 영상 데이터에 관한 것인지의 여부는 SupplementalProperty(1702)에 포함된 schemeIdUri의 값에 기초하여 판정된다. 예를 들어, schemeIdUri의 값이 "urn:mpeg:dash:6dof"인 경우, 대응하는 AdaptationSet는 가상 시점 영상 포맷으로 인코딩된 영상 데이터에 관한 것이라고 판정된다. 즉, 도 17의 예에서, AdaptationSet(1701)는 SupplementalProperty(1702)의 schemeIdUri의 값에 기초하여 가상 시점 영상 포맷으로 인코딩된 영상 데이터에 관한 것이라고 판정될 수 있다. 값 "urn:mpeg:dash:6dof"는 가상 시점 영상 포맷으로 인코딩되고 있는 것을 나타내는 값의 예이고, 동일한 의미를 갖는 schemeIdUri의 다른 값이 정의될 수 있다는 점에 유의한다.
MPD 분석 유닛(501)은 또한 MPD에 관련된 다른 메타데이터를 분석한다. 예를 들어, MPD 분석 유닛(501)은 해상도, 비트 레이트, 프레임 레이트, 및 가상 시점 영상 데이터의 메타데이터를 분석하고, 결과를 AdaptationSet 관리 유닛(508)에 저장한다. 도 17의 예에서, AdaptationSet(1701)에 관한 SupplementalProperty들(1702 내지 1705)의 value의 값들은 가상 시점 영상 데이터에 관한 메타데이터를 형성한다. SupplementalProperty(1702)는 가상 시점 영상 데이터에서 시점 위치의 이동가능 범위, 시선 방향의 이동가능 범위, 및 초점 위치의 이동가능 범위를 나타내는 메타데이터이다. 시점 위치의 이동가능 범위, 시선 방향의 이동가능 범위, 및 초점 위치의 이동가능 범위는 개별적으로 설정될 수 있다. SupplementalProperty(1703)는 가상 시점 영상 데이터가 시청될 때의 시점 위치의 이동 벡터 값, 시선 방향의 이동 벡터 값, 및 초점 위치의 벡터 값을 나타내는 메타데이터이다. SupplementalProperty(1704)는 가상 시점 영상 데이터가 시청될 때 추천되는 초기 시점 위치, 초기 시점 방향, 초기 초점 위치를 나타내는 메타데이터이다. SupplementalProperty(1705)는 가상 시점 영상 데이터가 스테레오스코픽 영상 데이터인 것을 나타내는 메타데이터이다. MPD 분석 유닛(501)은 AdaptationSet(1701)에 포함된 인코딩 방법, 해상도, 비트 레이트, 프레임 레이트 등의 메타데이터, 및 가상 시점 영상의 메타데이터를 AdaptationSet 관리 유닛(508)에 저장한다. MPD 분석 유닛(501)은 또한 MPD를 분석하고, 가상 시점 영상 포맷과 다른 포맷으로 인코딩되는 영상 데이터에 관한 정보를 AdaptationSet 관리 유닛(508)에 저장한다. 예를 들어, AVC, HEVC, 또는 다른 인코딩 방법들로 인코딩된 영상 데이터에 관한 AdaptationSet들(1706 및 1707), 및 그들의 AdaptationSet에 포함된 메타데이터가 저장된다.
인코딩 방법 판정 유닛(505)은 클라이언트(101)에 의해 디코딩될 수 있는 포맷의 가상 시점 영상 데이터에 관한 AdaptationSet가 AdaptationSet 관리 유닛(508)에 의해 관리되는 AdaptationSet들에 포함되어 있는지를 판정한다(단계 S603). 클라이언트(101)가 디코딩할 수 있는 포맷의 가상 시점 영상 데이터에 관한 AdaptationSet가 포함되어 있는 경우(단계 S603에서 예), 클라이언트(101)는 획득될 가상 시점 영상 데이터를 결정하고, 그의 미디어 데이터를 획득하기 시작한다(단계 S604). 예를 들어, 클라이언트(101)는 가상 시점 영상 데이터에 대응하는 AdaptationSet에 포함된 Representation에 기술된 URL에 액세스함으로써 영상 데이터의 세그먼트들을 획득하기 시작한다. 또한, 여기서, AdaptationSet 관리 유닛(508)은 현재 재생되고 있는 AdaptationSet를 관리한다. 초기 시점 위치, 초기 시선 방향, 및 초기 초점 정보와 같은 정보가 MPD에 포함되어 있는 경우, AdaptationSet 관리 유닛(508)은 각각의 정보를 시점 제어 유닛(502), 시선 제어 유닛(503), 및 초점 제어 유닛(504)에 통지할 수 있다. 이 경우, 시점 제어 유닛(502), 시선 제어 유닛(503), 및 초점 제어 유닛(504)은 예를 들어, 통지된 정보에 기초하여 초기 시점 위치, 초기 시선 방향, 및 초기 초점 정보를 각각 설정할 수 있다.
미디어 데이터를 획득하기 시작한 후, 조작 제어 유닛(511)은 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 이동시키기 위한 조작이 수행되었는지의 여부에 대한 모니터링을 시작한다(단계 S605). 조작 제어 유닛(511)이 이러한 이동 조작을 검출하지 않았을 경우(단계 S605에서 아니오), 클라이언트(101)는 처리가 단계 S609로 천이하게 한다. 한편, 조작 제어 유닛(511)이 이 이동 조작이 수행된 것을 검출한 경우(단계 S605에서 예), 조작 제어 유닛(511)은 이동 후의 시점 위치, 시선 방향, 또는 초점 위치가 가상 시점 영상의 범위 내에 포함되어 있는지를 판정한다(단계 S606). 단계 S606에서의 판정은 이동 후의 시점 위치, 시선 방향, 또는 초점 위치의 값들을 AdaptationSet 관리 유닛(508)에 의해 관리되는 가상 시점 영상 데이터의 범위를 나타내는 정보와 비교함으로써 수행된다.
조작 제어 유닛(511)이 이동 후의 시점 위치, 시선 방향, 또는 초점 위치가 가상 시점 영상의 범위 내에 포함된다고 판정한 경우(단계 S606에서 예), 조작 제어 유닛(511)은 표시 제어 유닛(507)을 통해 표시 유닛(403)에 표시될 화상에 대해 검출된 이동 조작을 반영한다(단계 S607). 예를 들어, 시점 위치를 이동시키는 조작이 검출되었을 경우, 조작 제어 유닛(511)은 새로운 시점 위치가 반영된 영상 데이터를 시점 제어 유닛(502)을 통해 표시 유닛(403)에 표시한다. 또한, 시선 방향을 이동시키는 조작이 검출되었을 경우, 조작 제어 유닛(511)은 새로운 시선 방향이 반영된 영상 데이터를 시선 제어 유닛(503)을 통해 표시 유닛(403)에 표시한다. 또한, 초점 위치를 이동시키는 조작이 검출되었을 경우, 조작 제어 유닛(511)은 새로운 초점 위치가 반영된 영상 데이터를 초점 제어 유닛(504)을 통해 표시 유닛(403)에 표시한다.
한편, 조작 제어 유닛(511)이 이동 후의 시점 위치, 시선 방향, 또는 초점 위치가 가상 시점 영상의 범위 내에 포함되어 있지 않다고 판정한 경우(단계 S606에서 아니오), 조작 제어 유닛(511)은 시점 위치, 시선 방향, 또는 초점 위치의 이동에 대해 제한을 부과한다(단계 S608). 예를 들어, 조작 제어 유닛(511)은 검출된 이동 조작에 따라 가상 시점 영상의 범위를 정의하는 경계까지 시점 위치, 시선 방향, 또는 초점 위치를 이동시키지만, 경계를 벗어난 이동은 수행되지 않도록 제어를 수행할 수 있다. 또한, 조작 제어 유닛(511)은 범위를 벗어난 이동을 야기하는 이동 조작을 무시할 수도 있다. 또한, 시점 위치, 시선 방향, 또는 초점 위치의 이동이 복수의 축 방향으로 컴포넌트들을 포함하고, 축들을 따른 컴포넌트들 중 임의의 것이 정의된 범위를 초과하는 경우, 조작 제어 유닛(511)은 축들을 따른 컴포넌트에 대해서만 제한을 부과할 수 있고, 다른 축들을 따른 다른 컴포넌트들에 대해서는 제한을 부과하지 않는다. 조작 제어 유닛(511)이 이러한 제한을 부과한 결과, 사용자가 가상 시점 영상의 시청가능 범위 밖의 영상을 시청하는 것을 방지할 수 있다. 이에 따라, 예상치 못한 영상 데이터가 더 이상 사용자에게 제시되지 않거나, 적어도 그러한 표시가 수행될 확률이 감소하고, 결과적으로, 사용자 경험이 악화되는 것이 방지될 수 있다. 또한, 디코딩 제어 유닛(506)에 의해 취급될 수 없는 가상 시점 영상의 범위로의 이동은 디코딩 제어 유닛(506)에서 디코딩 처리가 수행되기 전에 AdaptationSet 관리 유닛(508)에 의해 관리되는 정보에 기초하여 제한될 수 있다. 이에 따라, 디코딩 제어 유닛(506)의 예상치 못한 동작들 및 에러 발생이 방지될 수 있고, 처리 부하가 감소될 수 있다.
단계 S607 또는 S608에서의 처리를 실행한 후에, 처리는 단계 S609로 천이시킨다.
단계 S609에서, 세그먼트 획득 유닛(512)은 통신 제어 유닛(510)을 통해 서버(102)로부터 영상 데이터의 세그먼트들을 획득한다. 세그먼트 획득 유닛(512)은 AdaptationSet 관리 유닛(508)에 의해 관리되는 정보로부터 획득될 영상 데이터에 대응하는 AdaptationSet를 판정하고, AdaptationSet에 기술된 URL에 액세스함으로써 세그먼트들을 획득한다. 디코딩 제어 유닛(506)은 가상 시점 영상 데이터를 디코딩하고, 표시 유닛(403)으로 하여금, 조작 제어 유닛(511)가 보유한 사용자 시점 위치/시선 방향/초점 정보에 기초하여, 표시 제어 유닛(507)을 통해, 디코딩된 영상 데이터를 표시하게 한다(단계 S610). 그 후, 클라이언트(101)는 가상 시점 영상의 재생이 종료되었는지 여부를 판정한다(단계 S611). 그 후, 가상 시점 영상의 재생이 종료되었다고 판정한 경우(단계 S611에서 예), 클라이언트(101)는 처리를 종료하고, 가상 시점 영상의 재생이 종료되지 않았다고 판정한 경우(단계 S611에서 아니오), 클라이언트(101)는 처리를 단계 S605로 복귀시킨다.
단계 S603에서, 클라이언트(101)가 디코딩할 수 있는 포맷의 가상 시점 영상 데이터에 관한 AdaptationSet가 포함되어 있지 않은 경우(단계 S603에서 아니오), 클라이언트(101)는 처리를 단계 S612로 천이시킨다. 단계 S612에서, 디코딩 제어 유닛(506)은 가상 시점 영상 인코딩 방법 이외의 방법으로 디코딩가능한 영상 데이터가 AdaptationSet 관리 유닛(508)에 의해 관리되는 AdaptationSet들에 존재하는지의 여부를 판정한다. 예를 들어, 디코딩 제어 유닛(506)은 AVC 또는 HEVC와 같이 클라이언트(101)가 재생할 수 있는 방법에 의해 인코딩된 영상 데이터에 대응하는 AdaptationSet가 AdaptationSet 관리 유닛(508)에 의해 관리되고 있는지를 판정한다. 클라이언트(101)가 재생할 수 있는 방법에 의해 인코딩된 영상 데이터에 대응하는 AdaptationSet가 관리되고 있지 않다고 판정한 경우(단계 S612에서 아니오), 예를 들어, 클라이언트(101)는 표시 유닛(403)으로 하여금 에러 표시를 수행하게 하고(단계 S614), 처리를 종료한다. 에러 표시에 의해, 재생하려고 시도한 MPD에는 재생될 수 있는 방법에 의해 인코딩된 데이터가 포함되어 있지 않다는 것이 사용자에게 통지된다.
한편, 클라이언트(101)가 재생할 수 있는 방법에 의해 인코딩된 영상 데이터에 대응하는 AdaptationSet가 관리되고 있다고 판정한 경우(단계 S612에서 예), 클라이언트(101)는 AdaptationSet에 대응하는 영상 데이터를 획득한다(단계 S613). 예를 들어, 클라이언트(101)가 HEVC와 호환가능한 경우, 클라이언트(101)는 HEVC에 의해 인코딩된 영상 데이터에 대응하는 AdaptationSet(1707)에 기술된 URL에 액세스함으로써 대응하는 세그먼트들을 획득한다. 또한, 클라이언트(101)가 HEVC와 호환되지 않지만 AVC와 호환가능한 경우, 클라이언트(101)는 AVC에 의해 인코딩된 영상 데이터에 대응하는 AdaptationSet(1706)에 기술된 URL에 액세스함으로써 대응하는 세그먼트들을 획득한다. 따라서, 클라이언트(101)가 가상 시점 영상 인코딩 방법과 호환되지 않더라도, 클라이언트(101)는 클라이언트(101)가 호환될 수 있는 방법에 의해 인코딩된 영상 데이터를 획득하고 재생함으로써 사용자에게 영상을 제공할 수 있다. 이에 따라, 재생되지 않는 영상 데이터에 의해 야기되는 사용자 경험의 감소가 방지될 수 있다.
전술한 바와 같이, 클라이언트(101)는 MPD에 따라 클라이언트(101)가 재생할 수 있는 영상 데이터(미디어 데이터)를 획득한다. 즉, 클라이언트(101)가 가상 시점 영상의 재생을 취급할 수 있고, MPD가 가상 시점 영상 데이터에 대응하는 AdaptationSet를 포함하는 경우, 클라이언트(101)는 가상 시점 영상 데이터를 획득하고 가상 시점 영상의 재생을 수행한다. 이에 따라, 가상 시점 영상이 재생될 수 있을 때, 클라이언트(101)는 가상 시점 영상 데이터를 획득함으로써 사용자가 높은 임장감(high presence)의 영상을 시청할 수 있게 한다. 예를 들어, 클라이언트(101)가 가상 시점 영상을 재생할 수 있더라도, 클라이언트(101)는 예를 들어, 사용자에 의해 구성된 설정들을 접수함으로써, HEVC에 의해 인코딩된 영상을 재생할 수 있다는 점에 유의한다. 이 경우, 재생되도록 설정된 영상 데이터에 대응하는 AdaptationSet가 MPD에 포함되어 있는 경우, 클라이언트(101)는 설정들에 따라 영상 데이터를 재생할 수 있다. 재생되도록 설정된 영상 데이터에 대응하는 AdaptationSet가 MPD에 포함되어 있지 않은 경우, 클라이언트(101)는 영상 데이터에 대응하는 AdaptationSet에 기초하여 클라이언트(101)가 재생할 수 있는 영상 데이터를 획득할 수 있다는 점에 유의한다. 이에 따라, 일부 영상이 재생되고, 사용자에게 어떠한 영상도 제시되지 않는 상황이 발생하는 것을 방지할 수도 있다. 전술한 바와 같이, 클라이언트(101)는 MPD를 확인함으로써 클라이언트(101)가 확실하게 재생할 수 있는 영상 데이터를 획득할 수 있다.
처리 예 1-2
도 7a 및 도 7b는 클라이언트(101)에 의해 실행되는 처리 흐름의 제2 예를 나타낸다. 이 처리 예에서는, 도 2d에 나타낸 바와 같이, 가상 시점 영상의 공간 영역이 복수의 영역으로 분할되는 경우의 예가 설명될 것이다. 이 처리에서 사용되는 MPD의 예시적인 기술은 도 18a 및 도 18b에 나타나 있다. 이하에서는, 먼저 도 18a 및 도 18b의 MPD가 설명될 것이고, 그 후 도 7a 및 도 7b의 처리 흐름이 설명될 것이다. 도 7a 및 도 7b의 처리에서, 처리 예 1-1에서의 처리와 유사한 처리가 실행되는 단계들에는 도 6a 및 도 6b와 동일한 참조 번호들이 부여되고, 그 설명은 생략될 것이라는 점에 유의한다.
도 18a의 MPD(1800)는 공간 영역이 도 2d에 나타낸 바와 같이 분할되는 가상 시점 영상에 관한 정보를 기술하는 MPD이다. AdaptationSet들(1801 및 1802) 둘 다는 가상 시점 영상을 분할함으로써 획득되는 부분 공간에 대응하는 정보를 기술하고, 상이한 부분 공간들에 대응한다. SupplementalProperty들(1803 및 1804)은 AdaptationSet들(1801 및 1802)에 각각 대응하는 가상 시점 영상을 분할함으로써 획득되는 각각의 부분 공간들에 관한 정보를 기술한다. 여기서, SupplementalProperty(1803)는 미리 결정된 값이 SupplementalProperty(1702)의 value의 값에 추가된 것을 제외하고 도 17의 SupplementalProperty(1702)와 유사하기 때문에, 공통 항목들에 대한 설명은 생략될 것이다. 추가된 정보는 "total_*" 및 "total_*_offset"이고, 이들 정보는 가상 시점 영상의 전체 범위를 나타낸다. 시점 위치를 나타내는 x, y, 및 z의 값들, 시선 방향을 나타내는 yaw, roll, 및 pitch의 값들, 초점을 나타내는 depth의 값은 "*"에 삽입된다는 점에 유의한다. SupplementalProperty(1803)는 "x" 및 "x_offset"에 의해 x축을 따른 하나의 부분 공간의 시점 위치의 범위, 및 "total_x" 및 "total_x_offset"에 의해 x축을 따른 전체 공간의 시점 위치의 범위를 나타낸다. 이 정보에 따르면, total_x 내지 total_x+total_x_offset의 범위는 예를 들어, x축을 따른 전체 공간의 범위로서 특정된다. y, z, yaw, roll, 및 pitch에 대한 범위들도 유사하게 특정된다. 도 18a의 예는 이동 방향, 시선 방향, 및 초점 방향 모두가 기술되는 예를 나타내고 있지만, 그것에 한정되지 않고, 이동 방향만, 이동 방향과 시선 방향, 또는 이동 방향과 초점 방향과 같은 일부 정보 또는 이들의 임의 조합이 기술될 수 있다는 점에 유의한다.
여기에서의 MPD는 도 18b의 MPD(1810)로서 기술될 수 있다는 점에 유의한다. MPD(1800)에서, 부분 공간 및 전체 공간의 범위들은 하나의 SupplementalProperty(1803)에 의해 기술되었지만, MPD(1810)에서는, 이들을 개별적으로 기술하고 있다. 즉, SupplementalProperty(1811)는 부분 공간의 범위를 기술하고, SupplementalProperty(1812)는 전체 공간의 범위를 기술한다. 이 경우, SupplementalProperty(1811)는 도 17의 SupplementalProperty(1702)와 유사하다는 점에 유의한다. 이하에서, MPD(1800)가 사용되는 경우가 설명될 것이지만, 클라이언트(101)는 MPD(1810)가 사용되더라도 유사한 처리를 실행할 수 있다.
도 7a 및 도 7b에서는, 단계 S701에서, MPD 분석 유닛(501)은 서버(102)로부터 획득된 MPD 파일을 분석한다. MPD 분석 유닛(501)은 MPD에 기술된 전체 가상 시점 영상 데이터의 공간 영역 정보, 및 개별적인 AdaptationSet에 포함된 가상 시점 영상 데이터의 영역을 분석한다. 클라이언트(101)는 부분 공간들에 대응하는 AdaptationSet들 중 하나를 선택하고, 선택된 AdaptationSet에 대응하는 미디어 데이터의 획득을 시작한다(단계 S702). 여기서, AdaptationSet 관리 유닛(508)은 현재 재생되고 있는 영상 데이터에 대응하는 AdaptationSet를 관리한다. 이에 따라, 현재 재생되고 있는 영상 데이터 내의 부분 공간이 관리된다. 클라이언트(101)는 최초로 획득될 AdaptationSet를, 예를 들어, MPD에 기술된 초기 시점 위치, 초기 시선 방향, 초기 초점 등을 특정하는 정보에 기초하여 결정할 수 있다는 점에 유의한다. 초기 시점 위치, 초기 시선 방향, 및 초기 초점은 예를 들어, 도 17의 SupplementalProperty(1704)에서와 같이 정의된다.
시점 위치, 시선 방향, 또는 초점 위치를 이동시키기 위한 조작이 수행되었다는 것을 검출한 경우(단계 S605에서 예), 조작 제어 유닛(511)은 이동 후의 값들이 AdaptationSet에 정의된, 현재 재생되고 있는 부분 공간의 범위 내에 포함될지를 판정한다(단계 S703). 이 판정에서, 각각의 시점 위치, 시선 방향, 및 초점 위치의 이동 후의 값들은 AdaptationSet 관리 유닛(508)에 의해 관리되는, 현재 재생되고 있는 부분 공간에 대응하는 AdaptationSet에 정의된 이동가능 범위의 값들과 비교된다. 이동 후의 값들이 현재 재생되고 있는 부분 공간의 범위 내에 포함되어 있지 않다고 판정한 경우(단계 S703에서 아니오), 조작 제어 유닛(511)은 처리를 단계 S704로 진행시킨다. 단계 S704에서, 조작 제어 유닛(511)은 AdaptationSet 관리 유닛(508)에서 관리되는 다른 AdaptationSet에 의해 정의되는, 현재 재생되고 있는 부분 공간과 상이한 다른 부분 공간의 범위 내에 이동 후의 값들이 포함되는지의 여부를 판정한다. 그 후, 이동 후의 값들이 다른 부분 공간의 범위 내에 포함된다고 판정한 경우(단계 S704에서 예), 조작 제어 유닛(511)은 재생 대상의 AdaptationSet를 이동 후의 값들을 포함하는 부분 공간에 관한 AdaptationSet로 전환한다(단계 S705). 또한, AdaptationSet 관리 유닛(508)은 재생 중인 것으로 관리되는 AdaptationSet를 변경한다.
이러한 방식으로, 가상 시점 영상이 복수의 부분 공간으로 분할되는 상황에서, 복수의 AdaptationSet에 걸친 재생을 수행한 결과로서, 사용자에 의해 행해진 이동 조작에 따라 적합한 가상 시점 영상의 재생이 수행될 수 있다. 또한, 가상 시점 영상이 공간적으로 분할된 결과로서, 영상 데이터의 크기가 감소되고, 디코딩 처리의 처리 부하가 감소될 수 있다.
처리 예 1-3
다음으로, 클라이언트(101)에 의해 실행되는 처리의 제3 예가 도 8a 및 도 8b를 사용하여 설명될 것이다. 이 처리는 오브젝트 및 배경의 영상 데이터가 도 2e를 참조하여 설명된 바와 같이 개별적으로 제공될 때의 처리에 관한 것이다. 이 처리에서 사용되는 MPD의 예시적인 기술이 도 19에 나타나 있다. 이하에서는, 먼저, 도 19의 MPD에 대해서 설명하고, 그 후 도 8a 및 도 8b의 처리 흐름을 설명할 것이다. 도 8a 및 도 8b의 처리에서, 처리 예 1-1에서의 처리와 유사한 처리가 실행되는 단계들에는 도 6a 및 도 6b와 동일한 참조 번호들이 부여되고, 그 설명은 생략될 것이라는 점에 유의한다.
도 19의 MPD(1900)는 가상 시점 영상을 생성하는데 사용되는 배경 데이터 및 오브젝트 데이터에 관한 정보를 기술하는 MPD이다. AdaptationSet(1901)는 배경을 인코딩함으로써 획득된 영상 데이터에 관한 AdaptationSet이고, AdaptationSet들(1902 및 1903)은 오브젝트들을 인코딩함으로써 획득된 영상 데이터에 관한 AdaptationSet들이다. EssentialProperty(1904)는 AdaptationSet(1901)의 배경 데이터에 대한 시점, 시선, 및 초점의 범위들을 나타낸다. 배경 데이터는 가상 시점 영상이 배경 및 오브젝트들을 조합함으로써 생성될 때 필수 데이터이기 때문에, 배경 데이터는 EssentialProperty에 포함된다. 그러나, 이에 한정되지 않고, 유사한 정보는 SupplementalProperty에 기술될 수 있다. 클라이언트(101)는 이 AdaptationSet(1901)가 EssentialProperty(1904)의 schemeIdUri의 값에서의 문자열 "background"로부터의 배경 데이터에 대응한다고 판정할 수 있다. 또한, 배경 데이터에 관한 메타데이터의 값은 value의 값으로부터 획득될 수 있다. value의 값은 도 17의 SupplementalProperty(1702)에서의 값과 유사한 의미를 갖는다는 점에 유의한다. 클라이언트(101)는 AdaptationSet(1901)가 codecs의 값에 포함되는 문자열 "background"에 기초하여 배경 데이터에 대응한다고 판정할 수 있다는 점에 유의한다.
AdaptationSet(1902)는 필수 오브젝트에 대응하는 AdaptationSet이고, AdaptationSet(1903)는 옵션의 오브젝트에 대응하는 AdaptationSet이다. AdaptationSet들(1902 및 1903) 각각에 포함되는 associationType 및 associationID에서는, 연관된 AdaptationSet 및 연관성의 타입이 정의된다. 예를 들어, associationType의 값이 "pcbg"로 설정된 결과로서, 오브젝트가 배경과 연관되는 연관 관계가 표현된다. 따라서, associationType의 값은 "pcbg"이기 때문에, AdaptationSet들(1902 및 1903)은 배경과 연관된 오브젝트들에 관한 것으로 나타난다. "pcbg"는 associationType를 나타내는 예이며, 다른 문자열이 사용될 수 있다는 점에 유의한다. 또한, associationID는 연관된 AdaptationSet의 AdaptationSet ID를 나타낸다. 즉, associationID가 "1"이기 때문에, AdaptationSet들(1902 및 1903)은 AdaptationSet ID가 "1"인 AdaptationSet(1901)와 연관된다고 특정된다.
SupplementalProperty들(1905 및 1906)은 각각 AdaptationSet들(1902 및 1903)에 대응하는 오브젝트 데이터에 관한 정보를 기술한다. 클라이언트(101)는 AdaptationSet들(1902 및 1903)이 SupplementalProperty들(1905 및 1906)에 포함된 schemeIdUri에 의해 오브젝트 데이터에 대응한다고 판정할 수 있다. 또한, 클라이언트(101)는 SupplementalProperty들(1905 및 1906) 각각에 포함되는 value의 값에 기초하여, 대응하는 오브젝트 데이터가 필수적인지의 여부를 판정할 수 있다. 즉, 클라이언트(101)는 value의 값에 "Mandatory"가 포함되는 AdaptationSet(1902)에 대해서는, 대응하는 오브젝트 데이터가 필수적이라는 것을 특정할 수 있다. 한편, 클라이언트(101)는 value의 값에 "Optional"이 포함되는 AdaptationSet(1903)에 대해서는, 대응하는 오브젝트 데이터가 옵션이라는 것을 특정할 수 있다. value의 값들 중에서, x, y, 및 z는 오브젝트의 위치를 기술하기 위한 정보이고, yaw, roll, 및 pitch는 오브젝트의 회전 방향을 기술하기 위한 정보라는 점에 유의한다.
도 8a 및 도 8b에서는, 단계 S801에서, MPD 분석 유닛(501)은 서버(102)로부터 획득된 MPD 파일을 분석한다. 이 처리에서, MPD 분석 유닛(501)은 배경 데이터에 대응하는 AdaptationSet 및 오브젝트에 대응하는 AdaptationSet를 분석한다. 여기서, AdaptationSet 관리 유닛(508)은 배경 데이터에 대응하는 AdaptationSet의 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들을 보유한다. 또한, AdaptationSet 관리 유닛(508)은 이 AdaptationSet가 배경 데이터에 관한 정보라는 사실도 관리한다. AdaptationSet 관리 유닛(508)은 필수적인지 또는 옵션인지를 나타내는 플래그, 표시 위치, 및 표시 방향과 같은 오브젝트 데이터에 대응하는 AdaptationSet의 메타데이터를 추가로 관리한다.
인코딩 방법 판정 유닛(505)은 AdaptationSet 관리 유닛(508)에 의해 관리되는 AdaptationSet에 기초하여 디코딩가능한 포맷의 가상 시점 영상 데이터가 존재하는지의 여부를 판정한다(단계 S802). 인코딩 방법 판정 유닛(505)은 AdaptationSet 관리 유닛(508)이 디코딩가능한 배경 데이터 및 오브젝트 데이터의 양쪽 모두에 관한 AdaptationSet들을 관리할 때, 디코딩가능한 포맷의 가상 시점 영상 데이터가 존재한다고 판정한다. 인코딩 방법 판정 유닛(505)은 배경 데이터의 AdaptationSet가 관리되고 있지 않더라도, 오브젝트 데이터의 AdaptationSet가 관리될 때 디코딩가능한 포맷의 가상 시점 영상 데이터가 존재한다고 판정할 수 있다는 점에 유의한다. 디코딩가능한 포맷의 가상 시점 영상 데이터가 존재한다고 판정한 경우(단계 S802에서 예), 클라이언트(101)는 획득될 AdaptationSet를 특정하고, 미디어 데이터(배경 데이터 및 오브젝트 데이터)를 획득하기 시작한다(단계 S803). 오브젝트 데이터에 대해, 클라이언트(101)는 필수 플래그가 설정되는 AdaptationSet에 대응하는 오브젝트 데이터만을 획득할 수 있거나, 선택적인 오브젝트 데이터를 획득할 수도 있다는 점에 유의한다. 여기서, AdaptationSet 관리 유닛(508)은 클라이언트(101)에 의해 선택된 AdaptationSet들, 즉, 재생되고 있는 배경 데이터 및 오브젝트 데이터에 각각 대응하는 AdaptationSet들을 관리한다.
미디어 데이터의 획득이 시작될 때, 조작 제어 유닛(511)은 사용자의 시점 위치, 시선 방향, 및 초점 위치의 변경, 또는 표시(획득)될 배경/오브젝트의 변경에 관하여 사용자 입력이 행해졌는지의 여부에 대해 모니터링을 계속 수행한다(단계 S804). 그 후, 사용자 입력이 행해졌다고 판정한 경우(단계 S804에서 예), 조작 제어 유닛(511)은 사용자 입력이 표시될 배경 또는 오브젝트의 변경에 관한 것인지의 여부를 판정한다(단계 S805). 사용자 입력들이 배경 또는 오브젝트의 변경에 관한 것이라고 판정한 경우(단계 S805에서 예), 조작 제어 유닛(511)은 재생 대상의 AdaptationSet를 변경 후에 백그라운드 또는 오브젝트에 대응하는 AdaptationSet로 전환한다(단계 S806). 또한, AdaptationSet 관리 유닛(508)은 재생 중인 것으로 관리되는 AdaptationSet를 변경한다. 또한, 사용자 입력으로 인해 획득이 종료될 배경 또는 오브젝트가 존재하는 경우, AdaptationSet 관리 유닛(508)은 배경 또는 오브젝트에 대응하는 AdaptationSet를 재생 중인 것으로 관리될 대상들로부터 제거한다. 또한, 사용자 입력으로 인해 새롭게 획득될 배경 또는 오브젝트가 존재하는 경우, AdaptationSet 관리 유닛(508)은 배경 또는 오브젝트에 대응하는 AdaptationSet를 재생 중인 것으로서 관리될 대상들로서 설정한다.
이러한 처리에서, 디코딩 제어 유닛(506)은 조작 제어 유닛(511)이 보유한 사용자의 위치/시선 방향/초점 정보에 기초하여 배경 데이터 및 오브젝트 데이터를 디코딩함으로써 가상 시점 영상을 생성한다는 점에 유의한다. 또한, 디코딩 제어 유닛(506)은 표시 유닛(403)으로 하여금 생성된 가상 시점 영상을 표시 제어 유닛(507)을 통해 표시하게 한다(단계 S807).
이러한 방식으로, 가상 시점 영상이 배경 데이터 및 오브젝트 데이터로부터 생성되고, 표시되는 시스템에서, 가상 시점 영상을 생성하는데 사용될 데이터는 AdaptationSet의 기술을 사용하여 특정될 수 있다. 이에 따라, 가상 시점 영상을 생성할 수 있는 클라이언트(101)는 가상 시점 영상을 생성하기 위한 배경 데이터 및 오브젝트 데이터를 획득함으로써 적합한 가상 시점 영상을 표시할 수 있다.
처리 예 1-4
클라이언트(101)에 의해 실행될 처리 흐름의 제4 예가 도 9a 및 도 9b에 나타나 있다. 이 처리는 도 3a를 참조하여 설명된 바와 같이, 사용자의 이동 범위가 제한되는 Windowed 6DoF가 사용될 때의 처리에 관한 것이다. 이 처리에서 사용될 MPD의 예시적인 기술은 도 20a 및 도 20b에 나타나 있다. 이하에서는, 먼저 도 20a 및 도 20b의 MPD가 설명될 것이고, 그 후 도 9a 및 도 9b의 처리 흐름이 설명될 것이다. 도 9a 및 도 9b의 처리에서, 처리 예 1-1에서의 처리와 유사한 처리가 실행되는 단계들에는 도 6a 및 도 6b와 동일한 참조 번호들이 부여되고, 그 설명은 생략될 것이라는 점에 유의한다.
도 20a의 MPD(2000)는 Windowed 6DoF에 관한 정보를 기술하는 MPD이다. MPD(2000)는 시점 위치, 시선 방향, 및 초점 위치의 이동 제한 범위들이 고정되고 변경되지 않을 때의 MPD의 예를 나타낸다는 점에 유의한다. AdaptationSet(2001)에 포함된 SupplementalProperty(2003)는 가상 시점 영상에서 이동이 제한된 범위(이동 제한 범위)를 기술한다. 클라이언트(101)는 예를 들어, 문자열 "windowed_area"이 schemeIdUri의 값에 포함되어 있는지의 여부에 기초하여 이 SupplementalProperty가 이동 제한 범위를 기술할지의 여부를 판정할 수 있다. 즉, 클라이언트(101)는 문자열 "windowed_area"이 schemeIdUri에 포함되어 있는 SupplementalProperty(2003)이 이동 제한 범위를 기술하고 있다고 판정할 수 있다. SupplementalProperty(2003)의 value의 기술 내용들은 도 17의 SupplementalProperty(1702)의 기술과 유사한 의미를 갖는다는 점에 유의한다. 즉, SupplementalProperty(2003)의 value는 예를 들어, x축의 x 내지 x+x_offset, y축의 y 내지 y+y_offset, 및 z축의 z 내지 z+z_offset에 의해 결정되는 범위에 대한 시점의 이동이 제한된다는 것을 나타낸다. 클라이언트(101)는 시점 위치, 시선 방향, 및 초점 위치를 여기에서 지정되는 범위로 이동시킬 수 없다.
]도 20b의 MPD(2010)는 시점 위치, 시선 방향, 및 초점 위치의 이동 제한 범위들이 동적으로 변화할 때의 MPD의 예이다. SupplementalProperty(2013)는 AdaptationSet(2011)가 이동가능 범위를 포함하는 TimedMetadata의 AdaptationSet라는 것을 기술한다. 클라이언트(101)는 문자열 "limited_6dof"가 schemeIdUri에 포함되어 있는지의 여부에 기초하여 AdaptationSet(2011)가 동적으로 변하는 이동 제한 범위를 포함하는지의 여부를 판정할 수 있다. 또한, value의 값에 의해, 이동가능 범위를 기술하는 TimedMetadata는 Representation id=4의 Representation(2014)으로서 정의된다. AdaptationSet(2012)는 이동가능 범위를 포함하는 TimedMetadata를 포함하는 AdaptationSet이다. AdaptationSet(2012)는 Representation(2014)에서의 codecs의 값에 의해 이동가능 범위를 정의하는 메타데이터를 포함하는 것으로 판정될 수 있다.
도 9a 및 도 9b에서는, 단계 S901에서, MPD 분석 유닛(501)은 서버(102)로부터 획득된 MPD 파일을 분석한다. MPD 분석 유닛(501)은 가상 시점 영상 데이터에 대응하는 AdaptationSet로부터 가상 시점 영상의 이동가능 범위 및 이동 제한 범위를 특정한다. 예를 들어, MPD 분석 유닛(501)은 AdaptationSet에서 정의되는 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들을 분석한다. 또한, MPD 분석 유닛(501)은 AdaptationSet에서 정의되는 시점 위치, 시선 방향, 및 초점 위치의 이동 제한 범위들을 분석한다. AdaptationSet 관리 유닛(508)은 분석된 메타데이터를 AdaptationSet와 함께 보유 및 관리한다. 이 처리 예에서, 이동 제한 범위들은 정적인 값들인 것으로 가정되지만, 이에 한정되지 않고, 동적인 이동 제한 범위들이 특정될 수 있다는 점에 유의한다. 예를 들어, 도 20b의 MPD(2010)에 기술된 AdaptationSet(2011)와 연관된 TimedMetadata를 포함하는 AdaptationSet(2012)가 분석된다. 클라이언트(101)는 TimedMetadata를 포함하는 AdaptationSet(2012)에 기술된 세그먼트를 분석함으로써 이동 제한 범위를 획득할 수 있다.
또한, 조작 제어 유닛(511)은 이동 후의 시점 위치, 시선 방향, 또는 초점 위치가, 가상 시점 영상의 범위 내에 포함되는지의 여부에 대한 판정(단계 S606)에 추가하여, 이동 제한 범위 내에 포함되어 있는지의 여부에 대한 판정(단계 S902)도 실행한다. 예를 들어, 조작 제어 유닛(511)은 이동 후의 시점 위치, 시선 방향, 또는 초점 위치가 재생 중인 영상 데이터와 연관된 AdaptationSet에 의해 정의된 이동 제한 범위 내에 포함되는지의 여부를 판정한다. 또한, 이동 후의 시점 위치, 시선 방향, 또는 초점 위치가 가상 시점 영상의 범위 밖에 있거나(단계 S606에서 아니오), 이동 제한 범위 내에 있다면(단계 S902에서 예), 조작 제어 유닛(511)은 이동(사용자 모션)을 제한한다(단계 S608). 이동 후의 시점 위치, 시선 방향, 또는 초점 위치가 이동 제한 범위 내에 있을 때의 구체적인 이동 제한 방법은 이동 후의 시점 위치, 시선 방향, 또는 초점 위치가 가상 시점 영상 밖에 있을 때의 이동 제한 방법과 유사하다.
이러한 방식으로, 클라이언트(101)는 MPD로부터 가상 시점 영상의 이동 제한 범위를 특정할 수 있고, 이에 따라 표시 제어를 수행할 수 있다. 따라서, 가상 시점 영상은 적절한 시점 위치, 시선 방향, 및 초점 위치를 사용하여 표시될 수 있고, 사용자 경험이 향상될 수 있다.
처리 예 1-5
클라이언트(101)에 의해 실행될 처리 흐름의 제5 예가 도 10a 및 도 10b에 나타나 있다. 이 처리는 도 3b를 참조하여 설명된 바와 같이, 서버(102)가 TimedMetadata에서 사용자의 시선 방향 및 이동 방향의 정보를 제공할 때의 처리에 관한 것이다. 이 처리에서 사용되는 MPD의 예시적인 기술이 도 21에 나타나 있다. 이하에서는, 먼저, 도 21의 MPD에 대해서 설명할 것이고, 그 후 도 10a 및 도 10b의 처리 흐름을 설명할 것이다. 도 10a 및 도 10b의 처리에서, 처리 예 1-1에서의 처리와 유사한 처리가 실행되는 단계들에는 도 6a 및 도 6b와 동일한 참조 번호들이 부여되고, 그 설명은 생략될 것이라는 점에 유의한다.
도 21의 MPD(2100)는 가상 시점 영상의 메타데이터를 포함하는 TimedMetadata를 포함하는 MPD의 예이다. AdaptationSet(2101)는 가상 시점 영상에 대응하는 AdaptationSet이고, AdaptationSet(2102)는 시점 위치, 시선 방향, 및 초점 위치를 정의하기 위한 TimedMetadata를 포함하는 AdaptationSet이다.
SupplementalProperty(2104)는 참조될 TimedMetadata의 Representation을 식별하기 위한 정보를 기술한다. 클라이언트(101)는 문자열 "dynamic_6dof"이 schemeIdUri의 값에 포함되어 있는지의 여부를 판정한다. 또한, 클라이언트(101)는 이 판정 결과에 기초하여, 이 SupplementalProperty가 동적으로 변하는 시점 위치, 시선 방향, 및 초점 위치를 정의하는 TimedMetadata 트랙을 나타내는지를 특정할 수 있다. 도 21의 예에서, SupplementalProperty(2104)는 동적으로 변하는 시점 위치, 시선 방향, 및 초점 위치를 정의하는 TimedMetadata 트랙을 나타내는 것으로 특정된다. 또한, SupplementalProperty(2104)의 value의 값은 "4.5"이기 때문에, Representation id들이 4와 5인 Representation들이 참조된다.
Representation(2105)은 TimedMetadata를 포함하는 Representation이다. 이 Representation(2015)의 codecs의 값은 6dcc(6 Degrees Cartesian Coordinate)이다. 이에 따라, Representation(2105)에 포함된 미디어 데이터는 가상 시점 영상에 관한 TimedMetadata인 것이 특정된다. TimedMetadata는 시점 위치, 시선 방향, 및 초점 위치를 포함한다는 점에 유의한다. 클라이언트(101)는 이 TimedMetadata를 사용하여 시점 위치, 시선 방향, 및 초점 위치를 결정할 수 있다. 또한, 클라이언트(101)는 TimedMetadata에 의해 정의되는 시점 위치, 시선 방향, 및 초점 위치 중 임의의 하나 이상을 사용할 수 있다. 이에 따라, 클라이언트(101)는 콘텐츠 생성자가 의도한 바와 같이, 시점 위치, 시선 방향, 및 초점 위치에서, 서버(102)에서, 사용자가 가상 시점 영상을 시청할 수 있게 하기 위해 재생 제어를 수행할 수 있다. 도 21의 MPD에서의 schemeIdUri의 값은 예일 뿐이고, 다른 식별자가 사용될 수 있다는 점에 유의한다. 또한, 메타데이터가 전술한 메타데이터와 유사한 의미를 갖는 메타데이터인 한, SupplementalProperty 또는 EssentialProperty와 같은 메커니즘 이외의 방법으로 MPD에 메타데이터가 정의될 수 있다.
도 10a 및 도 10b에서는, 단계 S1001에서, MPD 분석 유닛(501)은 서버(102)로부터 획득된 MPD 파일을 분석한다. 여기서, MPD 분석 유닛(501)은 가상 시점 영상에 대응하는 AdaptationSet 및 TimedMetadata를 포함하는 AdaptationSet를 분석한다. 또한, MPD 분석 유닛(501)은 가상 시점 영상에 대응하는 AdaptationSet와 TimedMetadata를 포함하는 AdaptationSet 간의 연관에 대한 분석도 실행한다. 예를 들어, MPD 분석 유닛(501)은 가상 시점 영상에 대응하는 AdaptationSet에 포함되는 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들을 분석한다. 또한, AdaptationSet 관리 유닛(508)은 분석 결과를 관리한다. 또한, MPD 분석 유닛(501)은 가상 시점 영상 데이터와 연관되어야 하는 TimedMetadata가 존재하는지를 분석한다. 또한, 이러한 TimedMetadata가 존재하는 경우, AdaptationSet 관리 유닛(508)은 가상 시점 영상 데이터와 그의 TimedMetadata 간의 연관을 관리한다. 또한, MPD 분석 유닛(501)은 TimedMetadata를 포함하는 AdaptationSet 내의 TimedMetadata의 인코딩 정보를 분석한다. MPD 분석 유닛(501)은 AdaptationSet 관리 유닛(508)이 분석 결과를 관리하게 한다.
조작 제어 유닛(511)은 미디어 데이터의 획득을 시작하면(단계 S604), TimedMetadata의 값이 사용될 것인지의 여부를 판정한다(단계 S1002). 조작 제어 유닛(511)은 예를 들어, TimedMetadata가 뒤따를 것인지의 여부를 나타내는 사용자 조작에 기초하여 TimedMetadata가 사용될 것인지 여부를 판정할 수 있다. 조작 제어 유닛(511)은 예를 들어, 시점 위치에 기초하여 TimedMetadata가 사용될 것인지 여부를 판정할 수 있다는 점에 유의한다. 이 경우, 시점 위치가 예를 들어, 미리 결정된 범위에 있는 기간에 TimedMetadata가 사용될 것이라고 판정될 수 있다. 또한, 조작 제어 유닛(511)은 예를 들어, 사용자와의 계약에 기초하여 TimedMetadata가 사용될 것인지의 여부를 판정할 수 있다. 예를 들어, 사용자가 무료로 가상 시점 영상을 시청할 때에는, TimedMetadata가 사용되고, 사용자가 유료로 가상 시점 영상을 시청할 때에는, TimedMetadata가 사용될 것인지의 여부에 대한 사용자 선택이 접수되도록 구성될 수 있다.
조작 제어 유닛(511)이 TimedMetadata의 값이 사용될 것이라고 판정한 경우(단계 S1002에서 예), AdaptationSet 관리 유닛(508)은 획득될 TimedMetadata를 선택한다(단계 S1003). AdaptationSet 관리 유닛(508)은 예를 들어, 사용자가 관심을 갖는 오브젝트에 기초하여 획득될 TimedMetadata를 결정할 수 있다. 여기서, AdaptationSet 관리 유닛(508)은 예를 들어, 그 시점에서의 시점 위치 및 시선 방향에 기초하여 관심 오브젝트를 특정할 수 있거나, 오브젝트의 선택과 같은 미리 결정된 사용자 조작에 기초하여 관심 오브젝트를 특정할 수 있다. 다음으로, 세그먼트 획득 유닛(512)은 획득될 것으로 특정된 TimedMetadata를 획득한다(단계 S1004). 조작 제어 유닛(511)은 획득된 TimedMetadata에 기초하여 시점 위치, 시선 방향, 및 초점 위치 중 하나 또는 모두를 TimedMetadata에 의해 지정된 값들로 설정한다(단계 S1005).
TimedMetadata의 값이 사용되지 않을 것이라고 판정한 경우(단계 S1002에서 아니오), 조작 제어 유닛(511)은 사용자 조작에 따라 시점 위치, 시선 방향, 및 초점 위치를 제어한다는 점에 유의한다(단계 S1006). 예를 들어, 조작 제어 유닛(511)은 도 6a 및 도 6b의 단계들 S605 내지 S608의 처리를 실행할 수 있다.
이러한 방식으로, 가상 시점 영상의 생성자가 미리 결정된 시점 위치, 시선 방향, 및 초점 위치에 따라 가상 시점 영상을 사용자에게 시청시키기를 원할 때, 이러한 설정은 예를 들어, TimedMetadata를 사용하여 기술될 수 있다. 그 결과, 클라이언트(101)는 생성자가 의도한 바와 같이 가상 시점 영상을 표시할 수 있다. 또한, 제한이 부과된 일부 사용자들이 특정한 시점 위치, 시선 방향, 및 초점 위치에서 가상 시점 영상을 시청하도록 허용되는 것이 가능해지고, 제한이 부과되지 않는 사용자들은 자유로운 시점 위치, 시선 방향, 및 초점 위치에서 가상 시점 영상을 시청하도록 허용된다. 또한, 사용자들 둘다 추천된 시점 위치, 시선 방향, 및 초점 위치에서 가상 시점 영상을 시청하도록 허용된다. 예를 들어, 현재의 시점 위치, 시선 방향, 및 초점 위치가 미리 결정된 조건을 충족시킬 때, 도 10a 및 도 10b에서의 처리가 실행되는 구성이 채택될 수 있다는 점에 유의한다. 즉, 클라이언트(101)는 현재의 시점 위치, 시선 방향, 및 초점 위치가 미리 결정된 조건을 충족시키지 않을 때 도 6a 내지 도 9b에 나타낸 것과 같은 처리를 실행할 수 있다.
전술한 처리 예에서와 같이, 클라이언트(101)는 영상 데이터를 획득하기 전에 MPD를 분석하여, 클라이언트(101)가 디코딩할 수 있는 영상 데이터를 획득한다. 또한, 영상 데이터가 가상 시점 영상 데이터일 때, 가상 시점 영상이 클라이언트(101)에 의해 재생될 때의 시점 위치, 시선 방향, 및 초점 위치는 MPD 내의 기술을 사용하여 제한될 수 있다. 따라서, 클라이언트(101)가 디코딩될 수 없는 영상 데이터를 디코딩하려고 시도하는 것과 같은 불편함, 및 설정되지 않아야 하는 시점 위치, 시선 방향, 및 초점 위치를 사용하는 것으로 인한 오류가 발생하는 것이 방지될 수 있다.
서버(102)의 기능적 구성
다음으로, 서버(102)의 기능적 구성이 설명될 것이다. 도 11은 서버(102)의 예시적인 기능적 구성을 나타내는 블록도이다. 서버(102)는 예를 들어, MPD 생성 유닛(1101), 시점 이동 범위 생성 유닛(1102), 시선 이동 범위 생성 유닛(1103), 초점 이동 범위 생성 유닛(1104), 인코딩 방법 판정 유닛(1105), 통신 제어 유닛(1106), 및 세그먼트 관리 유닛(1107)을 포함한다.
MPD 생성 유닛(1101)은 전술한 도 17 내지 도 21에 나타낸 것과 같은 MPD들을 생성한다. 시점 이동 범위 생성 유닛(1102)은 가상 시점 영상에서의 시점 위치의 이동가능 범위에 관한 정보를 생성한다. 시점 이동 범위 생성 유닛(1102)은 예를 들어, 가상 시점 영상 데이터 또는 가상 시점 영상 데이터의 컨테이너를 분석함으로써 시점의 이동가능 범위를 획득한다. 시선 이동 범위 생성 유닛(1103)은 가상 시점 영상에서의 시선 방향의 이동가능 범위에 관한 정보를 생성한다. 시선 이동 범위 생성 유닛(1103)은 가상 시점 영상 데이터 또는 가상 시점 영상 데이터의 컨테이너를 분석함으로써 시선의 이동가능 범위를 획득한다. 초점 이동 범위 생성 유닛(1104)은 가상 시점 영상에서의 초점 방향의 이동가능 범위에 관한 정보를 생성한다. 초점 이동 범위 생성 유닛(1104)은 가상 시점 영상 데이터 또는 가상 시점 영상 데이터의 컨테이너를 분석함으로써 초점의 이동가능 범위를 획득한다. 시점 이동 범위 생성 유닛(1102), 시선 이동 범위 생성 유닛(1103), 및 초점 이동 범위 생성 유닛(1104)에 의해 생성된 정보는 MPD 생성 유닛(1101)에 의해 MPD에 기술된다. 인코딩 방법 판정 유닛(1105)은 영상 데이터의 인코딩 방법을 판정한다. 인코딩 방법 판정 유닛(1105)은 인코딩된 데이터 또는 인코딩된 데이터의 컨테이너를 분석하고, 예를 들어, 데이터가 가상 시점 영상 포맷으로 인코딩된 데이터인지 또는 다른 인코딩 방법으로 인코딩된 데이터인지를 특정한다. 가상 시점 영상 포맷이 아닌 인코딩 방법으로 인코딩된 데이터에 대하여, 인코딩 방법 판정 유닛(1105)은 인코딩 방법을 상세하게 특정할 수 있다는 점에 유의한다. 특정된 인코딩 방법의 정보는 MPD 생성 유닛(1101)에 의해 MPD에 기술된다.
통신 제어 유닛(1106)은 통신 유닛(427)을 통해 통신을 제어한다. 예를 들어, 통신 제어 유닛(1106)은 HTTP(Hyper Text Transfer Protocol) 및 TCP/IP와 같은 다양한 통신 프로토콜들과의 통신의 제어를 수행한다. 세그먼트 관리 유닛(1107)은 가상 시점 영상 포맷으로 인코딩된 영상 데이터의 세그먼트들, 가상 시점 영상 포맷 이외의 포맷으로 인코딩된 영상 데이터의 세그먼트들, 및 TimedMetadata의 세그먼트들을 관리한다. 세그먼트 관리 유닛(1107)은 세그먼트들을 생성하거나, 다른 장치로부터 세그먼트들을 획득할 수 있다.
서버(102)에 의해 실행되는 처리 흐름
다음으로, 서버(102)에 의해 실행될 처리 흐름의 일부 예들이 설명될 것이다. 본 실시예에서, 서버(102)는 영상 데이터에 관한 정보를 MPEG-DASH MPD 파일에 포함시키고, MPD 파일을 클라이언트(101)에 송신한다. 이하에서는, MPD 파일의 생성에 관한 처리가 구체적으로 설명될 것이다.
처리 예 2-1
이 처리 예는 처리 예 1-1에 대응하는 처리 흐름의 예이고, 도 17의 MPD(1700)와 같은 MPD가 생성될 때의 처리에 관한 것이다. 이 처리 흐름의 예가 도 12에 나타나 있다.
이 처리에서, 먼저, 세그먼트 관리 유닛(1107)은 배포에 사용될 세그먼트들을 준비한다(단계 S1201). 서버(102)는 초기화 세그먼트 및 미디어 세그먼트를 준비한다. 배포될 세그먼트들은 서버(102)에 의해 인코딩된 데이터를 세그먼트화함으로써 획득될 수 있거나, 서버(102)이외의 장치에 의해 생성된 세그먼트들일 수 있다는 점에 유의한다. 서버(102)는 세그먼트들을 보유할 필요가 없고, 다른 장치가 보유하고 있는 세그먼트들의 위치(예를 들어, URL)에 관한 정보를 준비할 수 있다는 점에 유의한다. 그 후, MPD 생성 유닛(1101)은 MPD를 생성하기 시작한다(단계 S1202).
MPD 생성 유닛(1101)은 가상 시점 영상에 대응하는 AdaptationSet를 생성한다(단계 S1203). 또한, MPD 생성 유닛(1101)은 대응하는 가상 시점 영상 데이터의 인코딩 방법에 관한 정보를, 단계 S1203에서 생성된 AdaptationSet에 기술한다(단계 S1204). 예를 들어, MPD 생성 유닛(1101)은 세그먼트 파일을 분석하는 인코딩 방법 판정 유닛(1105)에 의해 판정된 인코딩 방법 또는 외부로부터 입력된 인코딩 방법에 관한 정보를, AdaptationSet에 기술한다. 인코딩 방법에 관한 정보는 예를 들어, AdaptationSet 내의 codecs에 기술된다.
MPD 생성 유닛(1101)은 대응하는 가상 시점 영상에서의 시점 위치의 이동가능 범위에 관한 정보를, 단계 S1203에서 생성된 AdaptationSet에 기술한다(단계 S1205). 예를 들어, MPD 생성 유닛(1101)은 시점 이동 범위 생성 유닛(1102)이 세그먼트 파일을 분석함으로써 판정된 시점 위치의 이동가능 범위, 또는 외부로부터 입력된 시점 위치의 이동가능 범위에 관한 정보를, AdaptationSet에 기술한다.
또한, MPD 생성 유닛(1101)은 대응하는 가상 시점 영상에서의 시선 방향의 이동가능 범위에 관한 정보를, 단계 S1203에서 생성된 AdaptationSet에 기술한다(단계 S1206). 예를 들어, MPD 생성 유닛(1101)은 시선 이동 범위 생성 유닛(1103)이 세그먼트 파일을 분석함으로써 판정된 시선 방향의 이동가능 범위 또는 외부로부터 입력된 시선 방향의 이동가능 범위에 관한 정보를, AdaptationSet에 기술한다.
]또한, MPD 생성 유닛(1101)은 대응하는 가상 시점 영상에서의 초점 위치의 이동가능 범위에 관한 정보를, 단계 S1203에서 생성된 AdaptationSet에 기술한다(단계 S1207). 예를 들어, MPD 생성 유닛(1101)은 초점 이동 범위 생성 유닛(1104)이 세그먼트 파일을 분석함으로써 판정된 초점 위치의 이동가능 범위, 또는 외부로부터 입력된 초점 위치의 이동가능 범위에 관한 정보를, AdaptationSet에 기술한다.
단계 S1204 내지 단계 S1207의 처리는 도 12에 나타낸 순서로 실행될 필요가 없고, 각각의 처리는 임의의 순서로 실행될 수 있다는 점에 유의한다. 또한, 인코딩 방법을 특정한 후에, 단계 S1204 내지 S1207에서와 같이 시점 위치의 이동가능 범위, 시선 방향의 이동가능 범위, 및 초점 위치의 이동가능 범위는, 이들 정보를 포함하도록 하는 AdaptationSet의 생성이 수행될 수 있다.
가상 시점 영상에 대응하는 AdaptationSet의 생성을 완료한 후에, MPD 생성 유닛(1101)은 가상 시점 영상 인코딩 방법과 상이한 방법으로 인코딩된 영상 데이터에 관한 AdaptationSet가 MPD에 포함될 것인지의 여부를 판정한다(단계 S1208). 가상 시점 영상 이외의 영상 데이터에 대응하는 AdaptationSet가 MPD에 포함된다고 판정한 경우(단계 S1208에서 예), MPD 생성 유닛(1101)은 영상 데이터에 관한 AdaptationSet를 MPD에 기술한다(단계 S1209). 예를 들어, MPD 생성 유닛(1101)은 AVC, HEVC, 또는 다른 인코딩 방법으로 인코딩된 영상 데이터에 대응하는 AdaptationSet를 MPD에 포함할 수 있다. 이러한 방식으로, 가상 시점 영상 인코딩 방법 이외의 방법으로 인코딩된 영상 데이터에 관한 정보를 MPD에 포함시킨 결과로서, 가상 시점 영상 인코딩 방법과 호환되지 않는 MPD의 수신기가 MPD에 따라 콘텐츠를 재생할 수 있는 확률이 증가된다.
그 후, MPD 생성 유닛(1101)은 다른 필요한 메타데이터를 MPD에 기술하고, MPD의 생성을 완료한다(단계 S1210). 여기서 기술된 MPD는 본 실시예에 직접 관련되지 않기 때문에, 그 설명은 생략될 것이라는 점에 유의한다.
전술한 바와 같이 생성된 MPD가 송신된 결과로서, 이 MPD를 수신한 장치는 장치가 디코딩할 수 있는 영상 데이터를 선택하여 획득할 수 있다. 예를 들어, MPD를 수신한 장치는 장치가 가상 시점 영상 데이터를 디코딩할 수 있는 경우, 가상 시점 영상 데이터에 대응하는 AdaptationSet에 포함된 URL에 기초하여 가상 시점 영상 데이터를 획득할 수 있다. 이에 따라, MPD를 수신한 장치는 MPD에 기초하여 디코딩가능하다고 판정된 영상 데이터를 획득하기 때문에, 획득된 영상 데이터의 디코딩이 실패할 확률이 감소될 수 있다.
처리 예 2-2
이 처리 예는 처리 예 1-2에 대응하는 처리 흐름의 예이고, 도 18a의 MPD(1800) 또는 도 18b의 MPD(1810)와 같은 MPD가 생성될 때의 처리에 관한 것이다. 이 처리 흐름의 예가 도 13에 나타나 있다. 도 13의 처리에서, 처리 예 2-1에서의 처리와 유사한 처리가 실행되는 단계들에는 도 12와 동일한 참조 번호들이 부여되고, 그 설명은 생략될 것이라는 점에 유의한다.
단계 S1301에서, MPD 생성 유닛(1101)은 복수의 분할 영역에 각각 대응하는 AdaptationSet들을 생성한다. 또한, MPD 생성 유닛(1101)은 가상 시점 영상 데이터의 인코딩 방법에 관한 정보를, 단계 S1301에서 생성된 각각의 AdaptationSet에 기술한다(단계 S1302). 단계 S1302에서의 처리는 가상 시점 영상에서의 부분 공간에 대한 처리라는 점에서 단계 S1204에서의 처리와 상이하지만, 구체적인 처리는 단계 S1204에서의 처리와 유사하다.
그 후, MPD 생성 유닛(1101)은 가상 시점 영상의 전체(분할 전의 가상 시점 영상)에서의 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들에 관한 정보를, 단계 S1301에서 생성된 각각의 AdaptationSet에 기술한다(단계들 S1303 내지 S1305). 가상 시점 영상의 전체에 대한 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들에 관한 하나의 정보만이 MPD에 기술될 수 있다는 점에 유의한다. 이 경우, 예를 들면, 가상 시점 영상의 전체에 대한 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들에 관한 정보가 기술되는 AdaptationSet가 생성될 수 있다. 또한, 단계 S1301에서 생성된 AdaptationSet들에는, 가상 시점 영상의 전체에 대한 시점 위치, 시선 방향, 및 초점 위치에 관한 정보가 기술되는 AdaptationSet의 포인터가 포함될 수 있다. 시점 이동 범위 생성 유닛(1102), 시선 이동 범위 생성 유닛(1103), 및 초점 이동 범위 생성 유닛(1104)은 가상 시점 영상의 모든 부분 공간에 관한 세그먼트들을 분석함으로써 가상 시점 영상의 전체에 대한 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들을 특정할 수 있다는 점에 유의한다. 또한, 시점 이동 범위 생성 유닛(1102), 시선 이동 범위 생성 유닛(1103), 및 초점 이동 범위 생성 유닛(1104)은 외부 장치로부터 가상 시점 영상의 전체에 대한 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들에 관한 정보를 획득할 수 있다.
또한, MPD 생성 유닛(1101)은 AdaptationSet들에 각각 대응하는 가상 시점 영상의 각각의 부분 공간에 대한 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들에 관한 정보를, 단계 S1301에서 생성된 각각의 AdaptationSet들에 기술한다(단계 S1306 내지 S1308). 시점 이동 범위 생성 유닛(1102), 시선 이동 범위 생성 유닛(1103), 및 초점 이동 범위 생성 유닛(1104)은 가상 시점 영상의 각각의 부분 공간에 관한 세그먼트를 분석함으로써, 부분 공간에 대한 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들을 특정할 수 있다는 점에 유의한다. 시점 이동 범위 생성 유닛(1102), 시선 이동 범위 생성 유닛(1103), 및 초점 이동 범위 생성 유닛(1104)은 외부 장치로부터 각각의 부분 공간에 대한 시점 위치, 시선 방향, 및 초점 위치의 이동가능 범위들을 획득할 수 있다.
단계 S1302 내지 S1308에서의 처리는 도 13에 나타낸 순서로 실행될 필요가 없고, 각각의 처리는 임의의 순서로 실행될 수 있다는 점에 유의한다. 또한, 인코딩 방법을 특정한 후에, 단계 S1302 내지 S1308에서와 같이 시점 위치의 이동가능 범위, 시선 방향의 이동가능 범위, 및 초점 위치의 이동가능 범위는, 이들 정보를 포함하도록 하는 AdaptationSet의 생성이 수행될 수 있다.
이러한 방식으로, 가상 시점 영상이 복수의 부분 공간으로 분할되는 상황에서, 복수의 AdaptationSet에 의해 각각의 부분 공간들에 관한 정보를 기술한 결과로서, MPD를 수신한 장치는 더 이상 전체 공간에 대한 가상 시점 영상을 한번에 획득할 필요가 없다. 이에 따라, 가상 시점 영상이 공간적으로 분할되기 때문에, 영상 데이터의 크기가 감소하고, 그 결과 MPD를 수신한 장치에서의 디코딩 처리의 처리 부하가 감소될 수 있다.
처리 예 2-3
이 처리 예는 처리 예 1-3에 대응하는 처리 흐름의 예이고, 도 19의 MPD(1900)와 같은 MPD가 생성될 때의 처리에 관한 것이다. 이 처리 흐름의 예가 도 14에 나타나 있다. 도 14의 처리에서, 처리 예 2-1에서의 처리와 유사한 처리가 실행되는 단계들에는 도 12와 동일한 참조 번호들이 부여되고, 그 설명은 생략될 것이라는 점에 유의한다.
단계 S1401에서, MPD 생성 유닛(1101)은 가상 시점 영상의 배경 데이터에 대응하는 AdaptationSet를 생성한다. 또한, MPD 생성 유닛(1101)은 배경 데이터의 대응하는 인코딩 방법에 관한 정보를, 단계 S1401에서 생성된 AdaptationSet에 기술한다(단계 S1402). 단계 S1402에서의 처리는 가상 시점 영상에서의 배경 데이터에 대한 처리라는 점에서 단계 S1204에서의 처리와 상이하지만, 구체적인 처리는 단계 S1204에서의 처리와 유사하다.
그 후, MPD 생성 유닛(1101)은 배경 데이터에서의 시점 위치 및 시선 방향의 이동가능 범위들에 관한 정보를, 단계 S1401에서 생성된 AdaptationSet에 기술한다(단계 S1403 내지 단계 S1404). 단계 S1403 내지 단계 S1404에서의 처리는 가상 시점 영상에서의 배경 데이터에 대한 처리라는 점에서 단계 S1205 내지 단계 S1206에서의 처리와 상이하지만, 구체적인 처리는 단계 S1205 내지 단계 S1206에서의 처리와 유사하다.
또한, MPD 생성 유닛(1101)은 가상 시점 영상의 오브젝트 데이터에 각각 대응하는 AdaptationSet들을 생성한다(단계 S1405). 또한, MPD 생성 유닛(1101)은 각각의 오브젝트 데이터에 대해 가상 시점 영상 공간에서의 오브젝트들의 위치들을 나타내는 정보를, 단계 S1405에서 생성된 AdaptationSet들에 기술한다(단계 S1406). MPD 생성 유닛(1101)은 예를 들어, 세그먼트 파일을 분석함으로써 또는 외부로부터의 입력을 수신함으로써 오브젝트들의 위치들을 획득할 수 있다. 또한, MPD 생성 유닛(1101)은 각각의 오브젝트 데이터에 대해 가상 시점 영상 공간에서의 오브젝트들의 방향들을 나타내는 정보를, 단계 S1405에서 생성된 AdaptationSet들에 기술한다(단계 S1407). MPD 생성 유닛(1101)은 예를 들어, 세그먼트 파일을 분석함으로써 또는 외부로부터의 입력을 수신함으로써 오브젝트들의 방향들을 획득할 수 있다. 또한, MPD 생성 유닛(1101)은 가상 시점 영상을 생성할 때 각각의 오브젝트가 필수적인지 또는 옵션인지를 MPD의 수신기가 판정하게 하기 위한 정보를, 각각의 오브젝트 데이터에 대응하는 AdaptationSet들에 기술한다(단계 S1408). 또한, MPD 생성 유닛(1101)은 각각의 오브젝트 데이터에 대해, 오브젝트 데이터가 배경 데이터에 대응하는 AdaptationSet에 의존하는 관계가 있다는 것을 나타내는 정보를, 단계 S1405에서 생성된 AdaptationSet들에 기술한다(단계 S1409).
단계 S1401 내지 S1409에서의 처리는 도 14에 나타낸 순서로 실행될 필요가 없고, 각각의 처리는 임의의 순서로 실행될 수 있다는 점에 유의한다. 예를 들어, 오브젝트 데이터에 관한 AdaptationSet의 생성은 배경 데이터에 관한 AdaptationSet의 생성 전에 시작될 수 있다. 배경 데이터에 관한 AdaptationSet가 생성되면, 그의 식별 정보는 종속 관계에 관한 정보로서 오브젝트 데이터에 관한 AdaptationSet에 포함될 수 있다는 점에 유의한다.
이러한 방식으로, 가상 시점 영상이 배경 데이터 및 오브젝트 데이터로부터 생성되는 시스템에서, 가상 시점 영상을 생성하는데 사용될 데이터를 특정하는 것을 가능하게 하는 MPD가 생성될 수 있다. 이에 따라, 가상 시점 영상이 생성될 수 있고, MPD를 수신한 장치는 가상 시점 영상을 생성하기 위한 배경 데이터 및 오브젝트 데이터를 획득함으로써 적절한 가상 시점 영상을 표시할 수 있다.
처리 예 2-4
이 처리 예는 처리 예 1-4에 대응하는 처리 흐름의 예이고, 도 20a의 MPD(2000)와 같은 MPD가 생성될 때의 처리에 관한 것이다. 이 처리 흐름의 예가 도 15에 나타나 있다. 도 15의 처리에서, 처리 예 2-1에서의 처리와 유사한 처리가 실행되는 단계들에는 도 12와 동일한 참조 번호들이 부여되고, 그 설명은 생략될 것이라는 점에 유의한다.
단계 S1501에서, MPD 생성 유닛(1101)은 가상 시점 영상에서의 시점 위치의 이동 제한 범위에 관한 정보를 AdaptationSet에 기술한다. MPD 생성 유닛(1101)은 시점 이동 범위 생성 유닛(1102)이 세그먼트 파일을 분석함으로써 또는 외부로부터의 입력을 수신함으로써 획득한 시점 위치의 이동 제한 범위에 관한 정보를 AdaptationSet에 설명한다. 또한, MPD 생성 유닛(1101)은 가상 시점 영상에서의 시선 방향의 이동 제한 범위에 관한 정보를 AdaptationSet에 기술한다(단계 S1502). MPD 생성 유닛(1101)은 시선 이동 범위 생성 유닛(1103)이 세그먼트 파일을 분석함으로써 또는 외부로부터의 입력을 수신함으로써 획득한 시선 방향의 이동 제한 범위에 관한 정보를 AdaptationSet에 기술한다. 또한, MPD 생성 유닛(1101)은 가상 시점 영상에서의 초점 위치의 이동 제한 범위에 관한 정보를 AdaptationSet에 기술한다(단계 S1503). MPD 생성 유닛(1101)은 초점 이동 범위 생성 유닛(1104)이 세그먼트 파일을 분석함으로써 또는 외부로부터의 입력을 수신함으로써 획득한 시선 방향의 이동 제한 범위에 관한 정보를 AdaptationSet에 기술한다.
단계 S1501 내지 단계 S1503에서의 처리는 도 15에 나타낸 순서로 실행될 필요가 없고, 각각의 처리는 임의의 순서로 실행될 수 있다는 점에 유의한다.
전술한 바와 같이, 가상 시점 영상의 이동 제한 범위를 특정하는 MPD가 생성된 결과로서, 이 MPD를 수신한 장치는 이 설명에 따라 가상 시점 영상의 표시 제어를 수행할 수 있다. 따라서, 가상 시점 영상은 적절한 시점 위치, 시선 방향, 및 초점 위치를 사용하여 표시될 수 있고, 사용자 경험이 향상될 수 있다.
처리 예 2-5
이 처리 예는 처리 예 1-5에 대응하는 처리 흐름의 예이고, 도 21의 MPD(2100)와 같은 MPD가 생성될 때의 처리에 관한 것이다. 이 처리 흐름의 예가 도 16에 나타나 있다. 도 16의 처리에서, 처리 예 2-1에서의 처리와 유사한 처리가 실행되는 단계들에는 도 12와 동일한 참조 번호들이 부여되고, 그 설명은 생략될 것이라는 점에 유의한다.
단계 S1601에서, MPD 생성 유닛(1101)은 TimedMetadata를 포함하는 AdaptationSet를 생성한다. TimedMetadata는 단계 S1203에서 생성된 AdaptationSet와 상이한 AdaptationSet에 저장될 수 있다. 또한, 복수의 TimedMetadata는 하나의 AdaptationSet에 저장될 수 있다. 복수의 TimedMetadata가 하나의 AdaptationSet에 저장될 때, 각각의 TimedMetadata는 상이한 Representation에 포함된다는 점에 유의한다.
또한, MPD 생성 유닛(1101)은 TimedMetadata의 포맷을 특정하기 위한 값을, 인코딩 방법으로서, TimedMetadata를 포함하는 AdaptationSet에 기술한다(단계 S1602). 여기서, 대상인 TimedMetadata가 가상 시점 영상에 관한 TimedMetadata라는 것을 나타내는 값이 기술된다는 점에 유의한다. MPD 생성 유닛(1101)은 이 TimedMetadata를 분석함으로써 또는 외부로부터의 입력을 수신함으로써 이 포맷을 판정할 수 있다. TimedMetadata의 인코딩 방법의 값은 Representation에 기술될 수 있다는 점에 유의한다.
또한, MPD 생성 유닛(1101)은 TimedMetadata를 포함하는 AdaptationSet가 AdaptationSet로서 의존하는 AdaptationSet를 의존될 곳으로 기술한다(단계 S1610). MPD 생성 유닛(1101)은 이 TimedMetadata를 분석함으로써 또는 외부로부터의 입력을 수신함으로써 종속될 AdaptationSet를 판정할 수 있다.
이러한 방식으로, 가상 시점 영상의 생성자가 예를 들어, 미리 결정된 시점 위치, 시선 방향, 및 초점 위치에 따라 가상 시점 영상을 사용자에게 시청하게 하기를 원할 때, 서버(102)는 TimedMetadata를 사용하여 이러한 설정을 기술할 수 있다. 그 결과, 이 MPD를 수신한 장치는 그 생성자가 의도한 바와 같이 가상 시점 영상을 표시할 수 있다. 또한, 제한이 부과된 일부 사용자들이 특정한 시점 위치, 시선 방향, 및 초점 위치에서 가상 시점 영상을 시청하도록 허용되는 것이 가능해지고, 제한이 부과되지 않는 사용자들은 자유로운 시점 위치, 시선 방향, 및 초점 위치에서 가상 시점 영상을 시청하도록 허용된다. 또한, 사용자들 둘다 추천된 시점 위치, 시선 방향, 및 초점 위치에서 가상 시점 영상을 시청하도록 허용된다.
전술한 처리 예들에서와 같이, 서버(102)는 영상 데이터와는 별도로 영상 데이터와 관한 MPD를 생성하여 송신한다. 이에 따라, 이 MPD의 수신기는 그 자신의 장치에 의해 디코딩될 수 있는 영상 데이터를 획득하고 디코딩될 수 없는 영상 데이터를 획득하지 않음으로써 불필요한 영상 데이터를 획득하지 않는다. MPD의 수신기가 가상 시점 영상을 시청할 수 있는 기회는, 가상 시점 영상이 존재하는 경우, 그 존재를 수신기가 확실하게 인식하게 함으로써 증가될 수 있다. 영상 데이터가 가상 시점 영상 데이터일 때, 그의 가상 시점 영상이 시청될 때의 시점 위치, 시선 방향, 및 초점 위치는 MPD 내의 기술에 의해 제한될 수 있다. 따라서, MPD의 수신자가 디코딩될 수 없는 영상 데이터를 디코딩하려고 시도하는 것과 같은 불편함, 및 설정되지 않아야 하는 시점 위치, 시선 방향, 및 초점 위치를 사용하는 것으로 인한 오류가 발생하는 것이 방지될 수 있다.
본 실시예에서, 시점 위치, 시선 방향, 및 초점 위치와 같은 메타데이터는 가상 시점 영상에 관한 정보를 포함하는 MPD에 포함되고, 이들 모두는 필수가 아니며, 시점 위치만이 예를 들어, 메타데이터로서 MPD에 포함될 수 있다. 또한, 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나에 추가하여, 다른 설정 요소가 메타데이터로서 포함될 수 있다. 이러한 방식으로, 임의의 적어도 하나의 설정 정보를 메타데이터로서 사용한 결과로서, 영상 데이터를 재생할 때 유연한 제어가 수행될 수 있다.
또한, 본 실시예에서는, MPEG-DASH가 예로서 설명되었지만, 이에 한정되는 것은 아니다. 전술한 논의는 예를 들어, 플레이 리스트를 포함하는 HTTP Live Streaming 및 Microsoft Smooth Streaming과 같은 규격들에 적용될 수 있다. 즉, 플레이 리스트와 같은 영상 데이터와는 상이한 데이터에 가상 시점 영상에 관한 메타데이터를 기술한 결과로서, 전술한 처리와 유사한 처리가 수행될 수 있다.
본 실시예에서, 가상 시점 영상 데이터에 관한 메타데이터가 플레이 리스트에 기술되는 처리가 설명되었지만, 이에 한정되지 않고, 가상 시점 영상 데이터에 관한 메타데이터가 다른 방법에 의해 제공될 수 있다는 점에 유의한다. 예를 들어, 가상 시점 영상 데이터에 관한 메타데이터는 자바스크립트(Javascript) 파일 등에 포함될 수 있거나, 서버는 상이한 타입의 프로토콜을 사용하여 가상 시점 영상 데이터에 관한 메타데이터를 제공할 수 있다. 이들 방법에 의해, 가상 시점 영상 데이터를 취득하는데 필요한 메타데이터는 플레이 리스트를 사용하지 않고 클라이언트에게 제공될 수 있다.
또한, 본 실시예에서는, 서버가 가상 시점 영상을 인코딩하여 배포하는 예에 대해서 설명되었지만, 가상 시점 영상 데이터뿐만 아니라 다른 인코딩 방법에 의해 인코딩된 영상 데이터도 병행하여 배포될 수 있다. 예를 들어, HEVC, AVC, VP8, VP9, 또는 다른 인코딩 방법을 사용하여 가상 시점 영상 데이터에 기초하여 시점/시선의 이동들을 제한함으로써 생성되는 영상을 인코딩함으로써 획득되는 영상 데이터가 배포될 수 있다. 이에 따라, 가상 시점 영상의 인코딩과 호환할 수 없는 클라이언트이어도 가상 시점 영상에 대응하는 동화상을 재생할 수 있다.
가상 시점 영상 데이터를 획득하기 위해서는 어떠한 인코딩 방법도 사용될 수 있다는 점에 유의한다. 예를 들어, 초점 정보를 포함하도록 인코딩하기 위한 인코딩 방법들인 Light Fied Compression 및 Plenoptic Image Compression이 사용될 수 있거나, 이들과 상이한 인코딩 방법이 사용될 수 있다. 예를 들어, 초점 정보를 포함하지 않는 데이터가 생성되는 인코딩 방법이 사용될 수 있다. 또한, 본 실시예에서는, 인코딩 처리가 행해진 가상 시점 영상 데이터는 동화상 컨테이너에 저장된다. 동화상 컨테이너는 ISOBMFF(ISO Base Media File Format), MPEG2-TS, WebM, 또는 다른 동화상 컨테이너 포맷일 수 있다. 또한, 동화상 컨테이너 포맷에 저장되어 있을 때에는, 영상 데이터는 복수의 동화상 파일로 분할될 수 있지만, 그에 한정되지 않고, 영상 데이터는 분할되지 않을 수 있다. 영상 데이터가 분할되지 않을 때, 클라이언트는 단일 영상 데이터 파일 모두를 획득하거나, 특정 범위(바이트 범위)를 지정함으로써 세그먼트들을 획득한다는 점에 유의한다.
전술한 바와 같이, 서버(102)는 가상 시점 영상 데이터를 식별하기 위한 메타데이터를 MPD 파일에 기술한다. 또한, 클라이언트(101)는 MPD 파일에 기술된 가상 시점 영상 데이터에 관한 메타데이터를 분석하고, 분석된 결과를 관리하며, 관리 내용들에 기초하여 영상을 재생한다. 이에 따라, 클라이언트(101)는 클라이언트(101)가 디코딩할 수 있는 영상 데이터를 획득하고, 영상 데이터를 분석하지 않고 영상 데이터에 관한 동작들의 제어를 실행할 수 있다. 따라서, 클라이언트(101)는 처리 부하를 감소시키면서 서버(102)로부터 가상 시점 영상 데이터를 획득할 수 있다.
전술한 방법은 영상 데이터에 관한 것이지만 영상 데이터가 아닌 제1 데이터는 클라이언트에게 제공되고 클라이언트가 제1 데이터에 기초하여 영상 데이터를 포함하는 제2 데이터를 획득하는 시스템에 적용될 수 있다는 점에 유의한다. 즉, MPD 파일 또는 임의의 다른 포맷의 파일이 제1 데이터로서 사용될 때, 전술한 바와 같은 기술 방법이 제1 데이터에 대해 사용될 수 있다. 전술한 처리와 유사한 처리는 음성 데이터에 대해서도 영상 데이터 대신에 또는 이에 부가하여 실행될 수도 있다는 점에 유의한다. 즉, 전술한 방법은 가상 청취점 사운드(virtual listening point sound)와 같은 다른 미디어 데이터에도 적용될 수 있다.
다른 실시예들
본 발명은 상술한 실시예들의 1 이상의 기능을 실현하는 프로그램을, 네트워크 또는 저장 매체를 통해 시스템 또는 장치에 공급하고, 그 시스템 또는 장치의 컴퓨터의 1개 이상의 프로세서가 프로그램을 판독하고 판독된 프로그램을 실행하는 처리에 의해서도 실현될 수 있다. 또한, 본 발명은 1개 이상의 기능을 실현하는 회로(예를 들어, ASIC)에 의해서도 실현될 수 있다.
본 발명은 상기 실시예들로 한정되지 않으며 본 발명의 사상과 범위 내에서 다양한 변경들 및 수정들이 이루어질 수 있다. 따라서, 본 발명의 범위를 대중에게 평가받기 위해 청구항들이 작성되었다.

Claims (19)

  1. 정보 처리 장치로서,
    영상 데이터에 관한 정보가 기술되는 제1 데이터, 및 상기 영상 데이터를 포함하는 제2 데이터를 획득하기 위한 획득 수단;
    미리 결정된 값이 상기 제1 데이터에 기술되어 있는지를 판정하기 위한 판정 수단 - 상기 미리 결정된 값은, 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 설정함으로써 시청될 수 있는 가상 시점 영상에 관한 정보가 포함되어 있다는 것을 나타냄-; 및
    상기 제2 데이터에 포함된 영상 데이터의 재생을 제어하기 위한 제어 수단을 포함하고,
    상기 획득 수단은 상기 판정 수단에 의한 판정 결과 및 상기 제1 데이터에 기초하여 상기 제2 데이터를 획득하는 것을 특징으로 하는 정보 처리 장치.
  2. 제1항에 있어서,
    상기 정보 처리 장치가 상기 가상 시점 영상의 재생을 취급할 수 있고 상기 미리 결정된 값이 상기 제1 데이터에 기술되어 있는 경우에, 상기 획득 수단은 상기 제1 데이터에 포함된 정보와 연관된 가상 시점 영상 데이터를 포함하는 상기 제2 데이터를 획득하는 것을 특징으로 하는 정보 처리 장치.
  3. 제2항에 있어서,
    상기 제1 데이터는, 상기 미리 결정된 값과 함께, 상기 가상 시점 영상에서의 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나의 범위에 관한 정보를 추가로 포함하고,
    상기 제어 수단은, 상기 가상 시점 영상에서의 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나가 상기 범위에 포함되지 않은 값으로 설정되는 상황을 회피하도록 상기 재생을 제어하는 것을 특징으로 하는 정보 처리 장치.
  4. 제2항 또는 제3항에 있어서,
    상기 제1 데이터는, 상기 미리 결정된 값과 함께, 상기 가상 시점 영상을 분할함으로써 획득된 부분 공간들 각각에 대해, 상기 부분 공간을 특정하기 위한 상기 가상 시점 영상에서의 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나에 관한 범위에 대한 정보를 추가로 포함하고,
    상기 획득 수단은, 상기 가상 시점 영상에서의 시점 위치, 시선 방향, 및 초점 위치의 설정들 중 적어도 하나에 대응하는 부분 공간에 관한 상기 정보에 기초하여, 상기 부분 공간에 관한 가상 시점 영상 데이터를 포함하는 상기 제2 데이터를 획득하는 것을 특징으로 하는 정보 처리 장치.
  5. 제2항 내지 제4항 중 어느 한 항에 있어서,
    상기 제1 데이터는, 상기 미리 결정된 값과 함께, 각 시각마다 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 나타내는 지정 정보를 추가로 포함하고,
    상기 제어 수단은, 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나가 상기 지정 정보에 기초하여 상기 가상 시점 영상을 재생할 때의 각 시각마다 설정되도록 상기 재생을 제어하는 것을 특징으로 하는 정보 처리 장치.
  6. 제5항에 있어서,
    상기 지정 정보가 사용될지의 여부를 선택하기 위한 선택 수단을 추가로 포함하고,
    상기 제어 수단은, 상기 선택 수단이 상기 지정 정보가 사용될 것이라고 선택한 경우, 상기 지정 정보에 기초하여, 상기 가상 시점 영상을 재생할 때의 각 시각마다 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 설정하도록 제어를 수행하고,
    상기 선택 수단이 상기 지정 정보가 사용되지 않을 것이라고 선택한 경우, 사용자 조작에 기초하여 상기 가상 시점 영상을 재생할 때의 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 설정하도록 제어를 수행하는 것을 특징으로 하는 정보 처리 장치.
  7. 제2항 내지 제6항 중 어느 한 항에 있어서,
    상기 제1 데이터는, 상기 미리 결정된 값과 함께, 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나의 설정이 제한되는 제한 범위에 관한 정보를 추가로 포함하고,
    상기 제어 수단은, 상기 가상 시점 영상에서의 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나가 상기 제한 범위에 포함되는 값으로 설정되는 상황을 회피하도록 상기 재생을 제어하는 것을 특징으로 하는 정보 처리 장치.
  8. 제1항 내지 제7항 중 어느 한 항에 있어서,
    상기 가상 시점 영상은 배경 데이터 및 오브젝트 데이터에 기초하여 생성되고,
    상기 미리 결정된 값은 상기 배경 데이터와 상기 오브젝트 데이터 중 적어도 하나에 관한 정보가 포함된다는 것을 나타내는 것을 특징으로 하는 정보 처리 장치.
  9. 제1항 내지 제8항 중 어느 한 항에 있어서,
    상기 제1 데이터는 MPEG-DASH의 Media Presentation Description로서 제공되는 것을 특징으로 하는 정보 처리 장치.
  10. 영상 데이터에 관한 정보가 기술되는 제1 데이터에 기초하여 영상 데이터를 포함하는 제2 데이터를 획득하는 정보 처리 장치에, 상기 제1 데이터를 제공하는 정보 제공 장치로서,
    시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 설정함으로써 시청될 수 있는 가상 시점 영상에 관한 정보가 포함되어 있다는 것을 나타내는 미리 결정된 값을 포함하는 상기 제1 데이터를 생성하기 위한 생성 수단; 및
    상기 제1 데이터를 상기 정보 처리 장치에 제공하기 위한 제공 수단을 포함하는 것을 특징으로 하는 정보 제공 장치.
  11. 제10항에 있어서,
    상기 생성 수단은, 상기 미리 결정된 값과 함께, 상기 가상 시점 영상에서의 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나에 관한 범위에 대한 정보를 추가로 포함하는 상기 제1 데이터를 생성하는 것을 특징으로 하는 정보 제공 장치.
  12. 제10항 또는 제11항에 있어서,
    상기 생성 수단은, 상기 미리 결정된 값과 함께, 상기 가상 시점 영상을 분할함으로써 획득된 부분 공간들 각각에 대해, 상기 부분 공간을 특정하기 위한 상기 가상 시점 영상에서의 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나에 관한 범위에 대한 정보를 추가로 포함하는 상기 제1 데이터를 생성하는 것을 특징으로 하는 정보 제공 장치.
  13. 제10항 내지 제12항 중 어느 한 항에 있어서,
    상기 가상 시점 영상은 배경 데이터 및 오브젝트 데이터에 기초하여 생성되고,
    상기 생성 수단은, 상기 미리 결정된 값으로서, 상기 배경 데이터와 상기 오브젝트 데이터 중 적어도 하나에 관한 정보가 포함된다는 것을 나타내는 값을 포함하는 상기 제1 데이터를 생성하는 것을 특징으로 하는 정보 제공 장치.
  14. 제10항 내지 제13항 중 어느 한 항에 있어서,
    상기 생성 수단은, 상기 미리 결정된 값과 함께, 각 시각마다 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 나타내는 지정 정보를 추가로 포함하는 상기 제1 데이터를 생성하는 것을 특징으로 하는 정보 제공 장치.
  15. 제10항 내지 제14항 중 어느 한 항에 있어서,
    상기 생성 수단은, 상기 미리 결정된 값과 함께, 시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나의 설정이 제한되는 제한 범위에 관한 정보를 추가로 포함하는 상기 제1 데이터를 생성하는 것을 특징으로 하는 정보 제공 장치.
  16. 제10항 내지 제15항 중 어느 한 항에 있어서,
    상기 생성 수단은 상기 제1 데이터로서 MPEG-DASH의 Media Presentation Description을 생성하는 것을 특징으로 하는 정보 제공 장치.
  17. 정보 처리 장치의 제어 방법으로서,
    영상 데이터에 관한 정보가 기술되는 제1 데이터를 획득하는 단계;
    시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 설정함으로써 시청될 수 있는 가상 시점 영상에 관한 정보가 포함되어 있다는 것을 나타내는 미리 결정된 값이 상기 제1 데이터에 기술되어 있는지를 판정하는 판정 단계;
    상기 판정 단계에서의 판정 결과 및 상기 제1 데이터에 기초하여 영상 데이터를 포함하는 제2 데이터를 획득하는 단계; 및
    상기 제2 데이터에 포함된 영상 데이터의 재생을 제어하는 단계를 포함하는 것을 특징으로 하는 정보 처리 장치의 제어 방법.
  18. 영상 데이터에 관한 정보가 기술되는 제1 데이터에 기초하여 영상 데이터를 포함하는 제2 데이터를 획득하는 정보 처리 장치에, 상기 제1 데이터를 제공하는 정보 제공 장치의 제어 방법으로서,
    시점 위치, 시선 방향, 및 초점 위치 중 적어도 하나를 설정함으로써 시청될 수 있는 가상 시점 영상에 관한 정보가 포함되어 있다는 것을 나타내는 미리 결정된 값을 포함하는 상기 제1 데이터를 생성하는 단계; 및
    상기 제1 데이터를 상기 정보 처리 장치에 제공하는 단계를 포함하는 것을 특징으로 하는 정보 제공 장치의 제어 방법.
  19. 프로그램으로서,
    컴퓨터로 하여금 제17항 또는 제18항에 따른 제어 방법을 실행하게 하는 프로그램.
KR1020207010964A 2017-09-26 2018-07-23 정보 처리 장치, 정보 제공 장치, 제어 방법, 및 컴퓨터 판독가능 저장 매체 KR102384489B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
JP2017185319A JP7085816B2 (ja) 2017-09-26 2017-09-26 情報処理装置、情報提供装置、制御方法、及びプログラム
JPJP-P-2017-185319 2017-09-26
PCT/JP2018/027464 WO2019064853A1 (ja) 2017-09-26 2018-07-23 情報処理装置、情報提供装置、制御方法、及びプログラム

Publications (2)

Publication Number Publication Date
KR20200053588A true KR20200053588A (ko) 2020-05-18
KR102384489B1 KR102384489B1 (ko) 2022-04-12

Family

ID=65901720

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020207010964A KR102384489B1 (ko) 2017-09-26 2018-07-23 정보 처리 장치, 정보 제공 장치, 제어 방법, 및 컴퓨터 판독가능 저장 매체

Country Status (6)

Country Link
US (1) US11356648B2 (ko)
EP (1) EP3691285B1 (ko)
JP (1) JP7085816B2 (ko)
KR (1) KR102384489B1 (ko)
CN (1) CN111133764B (ko)
WO (1) WO2019064853A1 (ko)

Families Citing this family (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP7396047B2 (ja) * 2018-01-12 2023-12-12 ソニーグループ株式会社 情報処理装置および方法
CN111937397B (zh) * 2018-04-03 2024-05-10 华为技术有限公司 媒体数据处理方法及装置
JP7250567B2 (ja) * 2019-02-28 2023-04-03 キヤノン株式会社 装置、方法、及びプログラム
CN114026875A (zh) * 2019-06-25 2022-02-08 索尼集团公司 信息处理装置、信息处理方法、再现处理装置和再现处理方法
CN112148115A (zh) * 2019-06-28 2020-12-29 中兴通讯股份有限公司 媒体处理方法、装置、系统和可读存储介质
US11259050B2 (en) 2019-09-19 2022-02-22 Nokia Technologies Oy Six degrees of freedom spatial layout signaling
US11616822B2 (en) 2019-09-30 2023-03-28 Tencent America LLC Session-based information for dynamic adaptive streaming over HTTP
EP4016994A1 (en) * 2019-10-01 2022-06-22 Sony Group Corporation Information processing device and information processing method
JP6875029B1 (ja) * 2020-05-28 2021-05-19 株式会社Spacial 方法、プログラム、情報処理装置
CN114422816A (zh) * 2022-01-17 2022-04-29 北京达佳互联信息技术有限公司 一种直播视频处理方法、装置、电子设备及存储介质
CN117255233A (zh) * 2022-06-10 2023-12-19 中兴通讯股份有限公司 媒体信息处理方法、媒体信息播放方法、装置及存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009135601A (ja) * 2007-11-28 2009-06-18 Canon Inc 画像処理装置および画像処理方法
JP2013183209A (ja) 2012-02-29 2013-09-12 Nagoya Univ 多視点映像ストリーム視聴システムおよび方法
JP2015187797A (ja) 2014-03-27 2015-10-29 シャープ株式会社 画像データ生成装置および画像データ再生装置

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102831597B (zh) * 2012-07-10 2015-02-04 浙江大学 一种虚拟视像素生成方法、装置以及对应的码流
EP3133819A1 (en) * 2014-04-14 2017-02-22 Panasonic Intellectual Property Management Co., Ltd. Image delivery method, image reception method, server, terminal apparatus, and image delivery system
US10397666B2 (en) 2014-06-27 2019-08-27 Koninklijke Kpn N.V. Determining a region of interest on the basis of a HEVC-tiled video stream
US10204658B2 (en) 2014-07-14 2019-02-12 Sony Interactive Entertainment Inc. System and method for use in playing back panorama video content
EP3112985A1 (en) * 2015-06-30 2017-01-04 Nokia Technologies Oy An apparatus for video output and associated methods
KR102117469B1 (ko) * 2015-07-13 2020-06-01 삼성전기주식회사 전자 소자 모듈 및 그 제조 방법
CN105915937B (zh) * 2016-05-10 2019-12-13 上海乐相科技有限公司 一种全景视频播放方法及设备
EP3249929A1 (en) * 2016-05-25 2017-11-29 Thomson Licensing Method and network equipment for establishing a manifest
RU2647645C1 (ru) * 2016-12-29 2018-03-16 Общество с ограниченной ответственностью "СИАМС" Способ устранения швов при создании панорамных изображений из видеопотока кадров в режиме реального времени
JP6775776B2 (ja) * 2017-03-09 2020-10-28 株式会社岩根研究所 自由視点移動表示装置
JP7330683B2 (ja) * 2018-11-06 2023-08-22 キヤノン株式会社 情報処理装置、情報処理方法及びプログラム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2009135601A (ja) * 2007-11-28 2009-06-18 Canon Inc 画像処理装置および画像処理方法
JP2013183209A (ja) 2012-02-29 2013-09-12 Nagoya Univ 多視点映像ストリーム視聴システムおよび方法
JP2015187797A (ja) 2014-03-27 2015-10-29 シャープ株式会社 画像データ生成装置および画像データ再生装置

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Byeongdoo Choi 외 2인. WD on ISO/IEC 23000-20 Omnidirectional Media Application Format. ISO/IEC JTC1/SC29/WG11 N16189. (2016.06)* *
Martens, G. Bandwidth management for ODV tiled streaming with MPEG-DASH. universiteit hasselt. (2015.03.07)* *

Also Published As

Publication number Publication date
CN111133764A (zh) 2020-05-08
EP3691285B1 (en) 2022-07-06
US20200228775A1 (en) 2020-07-16
JP2019062390A (ja) 2019-04-18
JP7085816B2 (ja) 2022-06-17
WO2019064853A1 (ja) 2019-04-04
EP3691285A1 (en) 2020-08-05
US11356648B2 (en) 2022-06-07
KR102384489B1 (ko) 2022-04-12
CN111133764B (zh) 2022-05-10
EP3691285A4 (en) 2021-06-30

Similar Documents

Publication Publication Date Title
KR102384489B1 (ko) 정보 처리 장치, 정보 제공 장치, 제어 방법, 및 컴퓨터 판독가능 저장 매체
CN109155874B (zh) 虚拟现实媒体内容的自适应流传输的方法、装置和计算机程序
JP6309749B2 (ja) 画像データ再生装置および画像データ生成装置
CN108111899B (zh) 视频传输方法与装置、客户端、服务器及存储介质
KR102133207B1 (ko) 통신장치, 통신 제어방법 및 통신 시스템
US10511767B2 (en) Information processing device, information processing method, and program
JP6541309B2 (ja) 送信装置、送信方法、及びプログラム
CN111869221B (zh) Dash对象之间的有效关联
KR20210019017A (ko) 컨텐츠의 처리 방법 및 장치
JP2017123503A (ja) 映像配信装置、映像配信方法及びコンピュータプログラム
JP7396267B2 (ja) 情報処理装置、情報処理方法、及びプログラム
KR101944601B1 (ko) 기간들에 걸쳐 오브젝트들을 식별하기 위한 방법 및 이에 대응하는 디바이스
WO2019187434A1 (ja) 情報処理装置、情報処理方法、及びプログラム
KR20200000815A (ko) 송신장치, 송신방법, 수신장치, 수신방법, 및, 비일시적인 컴퓨터 판독가능한 기억매체
US20220239994A1 (en) Information processing apparatus, information processing method, reproduction processing apparatus, and reproduction processing method
CN111937043B (zh) 将文件格式对象和基于超文本传输协议的动态自适应流媒体(dash)对象进行关联
US20190342628A1 (en) Communication device and method
JP2021064822A (ja) 通信装置、通信装置の制御方法およびプログラム
US20230007314A1 (en) System and method of server-side dynamic spatial and temporal adaptations for media processing and streaming
US20230156257A1 (en) Information processing apparatus, information processing method, and storage medium

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