[go: up one dir, main page]

KR20170015938A - Methods and apparatus for delivering content and/or playing back content - Google Patents

Methods and apparatus for delivering content and/or playing back content Download PDF

Info

Publication number
KR20170015938A
KR20170015938A KR1020167036714A KR20167036714A KR20170015938A KR 20170015938 A KR20170015938 A KR 20170015938A KR 1020167036714 A KR1020167036714 A KR 1020167036714A KR 20167036714 A KR20167036714 A KR 20167036714A KR 20170015938 A KR20170015938 A KR 20170015938A
Authority
KR
South Korea
Prior art keywords
content
image
stream
environment
streams
Prior art date
Legal status (The legal status 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 status listed.)
Granted
Application number
KR1020167036714A
Other languages
Korean (ko)
Other versions
KR102407283B1 (en
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 넥스트브이알 인코포레이티드
Priority to KR1020227019042A priority Critical patent/KR102611448B1/en
Publication of KR20170015938A publication Critical patent/KR20170015938A/en
Application granted granted Critical
Publication of KR102407283B1 publication Critical patent/KR102407283B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

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/194Transmission of image signals
    • H04N13/0059
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/044
    • H04N13/0468
    • 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/161Encoding, multiplexing or demultiplexing different image signal components
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/204Image signal generators using stereoscopic image cameras
    • H04N13/243Image signal generators using stereoscopic image cameras using three or more 2D image sensors
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/332Displays for viewing with the aid of special glasses or head-mounted displays [HMD]
    • H04N13/344Displays for viewing with the aid of special glasses or head-mounted displays [HMD] with head-mounted left-right displays
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/366Image reproducers using 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/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/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/2187Live feed
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/23439Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements for generating different versions
    • 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/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/24Monitoring of processes or resources, e.g. monitoring of server load, available bandwidth, upstream requests
    • H04N21/2402Monitoring of the downstream path of the transmission network, e.g. bandwidth available
    • 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/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/266Channel or content management, e.g. generation and management of keys and entitlement messages in a conditional access system, merging a VOD unicast channel into a multicast channel
    • H04N21/2662Controlling the complexity of the video stream, e.g. by scaling the resolution or bitrate of the video stream based on the client capabilities
    • 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/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/64Addressing
    • H04N21/6405Multicasting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6587Control parameters, e.g. trick play commands, viewpoint selection
    • 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
    • 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/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8456Structuring of content, e.g. decomposing content into time segments by decomposing the content in the time domain, e.g. in time segments

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)
  • Computer Networks & Wireless Communication (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Testing, Inspecting, Measuring Of Stereoscopic Televisions And Televisions (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

콘텐트 전달 및 재생 방법들 및 장치가 기술된다. 방법들 및 장치는 360도 환경에 대응하여 콘텐트의 전달 및 재생에 적합하고, 콘텐트, 예를 들면, 이벤트가 진행중인 동안 또는 이벤트가 종료한 후, 스포츠 게임과 같은 이벤트에 대응하는, 3D 콘텐트의 스트리밍 및/또는 실시간 전달을 지원하기 위해 사용될 수 있다. 환경의 부분들은 상이한 위치들에 위치된 카메라들에 의해 캡처된다. 상이한 위치들로부터 캡처된 콘텐트가 전달을 위해 인코딩되고 이용가능하게 만들어진다. 재생 디바이스는 사용자의 머리의 위치에 기초하여 수신될 콘텐트를 선택한다. 스트림들은 사용자의 현재 시야 및/또는 머리 회전의 방향에 기초하여 전달을 위해 우선 순위화 및 선택될 수 있다. 정지 이미지들 또는 합성된 이미지들은 예를 들면, 배경, 하늘 및/또는 지면 위치들에 대해 하나 이상의 스트림들로부터의 콘텐트와 함께 사용 및 조합될 수 있다.Content delivery and playback methods and apparatus are described. The methods and apparatus are suitable for delivery and playback of content in response to a 360 degree environment and are capable of streaming 3D content corresponding to events such as sports games while the content, e.g., And / or to support real-time delivery. Portions of the environment are captured by cameras located at different locations. The content captured from the different locations is encoded and made available for delivery. The playback device selects the content to be received based on the position of the user's head. The streams may be prioritized and selected for delivery based on the current view of the user and / or the direction of head rotation. Still images or composited images may be used and combined with content from one or more streams, for example, for background, sky and / or ground positions.

Description

콘텐트를 전달 및/또는 콘텐트를 재생하기 위한 방법들 및 장치{METHODS AND APPARATUS FOR DELIVERING CONTENT AND/OR PLAYING BACK CONTENT}[0001] METHODS AND APPARATUS FOR DELIVERING CONTENT AND OR PLAYING BACK CONTENT [0002]

본 발명은 콘텐트 전달 및/또는 재생, 예를 들면, 입체 영상 이미지 콘텐트의 재생에 관한 것이다.The present invention relates to content delivery and / or playback, for example, playback of stereoscopic image content.

몰입형 경험을 제공하도록 의도되는 디스플레이 디바이스들은 일반적으로 사용자가 그의 머리를 돌려서 디스플레이되는 장면의 대응하는 변화를 경험하게 한다. 헤드 마운트 디스플레이들은, 헤드 마운트 디스플레이를 쓰고 사용자가 몸을 돌릴 수 있어, 사용자의 머리 위치가 변경될 때 디스플레이되는 장면이 변하는 360도 뷰잉을 때때로 지원한다.Display devices intended to provide an immersive experience typically cause the user to turn his head to experience a corresponding change in the scene being displayed. Head mount displays sometimes support 360 degree viewing where the scene being displayed changes as the user's head position changes, allowing the user to turn around with the head mount display.

이러한 디바이스들에 의해 사용자는 전방을 바라볼 때 카메라 위치 앞에 캡처된 장면 및 사용자가 완전히 돌아설 때 카메라 위치 뒤에 캡처되는 장면이 제공된다. 사용자가 그의 머리를 후방으로 돌리는 동안, 임의의 주어진 시간에 제한된 시야를 인식하는 사람의 능력의 속성 때문에 임의의 주어진 시간에서 사용자의 시야는 일반적으로 120도 이하로 제한된다.With these devices, the user is provided with a scene captured in front of the camera position when viewed forward and a scene captured behind the camera position when the user turns completely. The user's field of view at any given time is generally limited to 120 degrees or less due to the nature of the person's ability to recognize the limited field of view at any given time while the user is turning his head backwards.

360도의 뷰를 지원하기 위해, 360도 장면은 함께 다수의 카메라들을 사용하여 캡처될 수 있고, 이미지들이 조합되어 뷰잉에 이용가능하게 만들어질 360도 장면을 생성한다.To support a 360 degree view, a 360 degree scene can be captured using multiple cameras together and the images are combined to create a 360 degree scene that will be made available for viewing.

360도 뷰는, 사용자가 특정 시점에 디스플레이될 이미지를 결정하기 위해 사용된 뷰잉각을 변경할 기회를 갖지 못하는 일반 텔레비전 및 많은 다른 비디오 애플리케이션들에 위해 일반적으로 캡처되어, 인코딩된 단순한 전방 뷰보다 아주 많은 이미지 데이터를 포함한다는 것이 이해되어야 한다.The 360 degree view is typically captured for general television and many other video applications that do not have the opportunity to change the viewing angle used to determine the image to be displayed at a particular point in time so that much more than the encoded simple front view It should be understood that it includes image data.

송신 제한들, 예를 들면, 스트리밍된 콘텐트와 연관된 네트워크 데이터 제한들이 주어지면, 콘텐트를 수신하고 그와 상호 작용하려 하는 모든 고객들에게 풀 고선명 비디오로 전체 360도 뷰를 스트리밍하는 것이 가능하지 않을 수 있다. 이는 특히 콘텐트가 3D 뷰잉 효과를 허용하기 위해 왼쪽 및 오른쪽 눈 뷰들에 대응하도록 의도된 이미지 콘텐트를 포함하는 입체 영상 콘텐트인 경우이다.Given the transmission constraints, for example, network data restrictions associated with streamed content, it may not be possible to stream the entire 360 degree view into full high definition video to all customers who want to receive and interact with the content . This is particularly the case where the content is stereoscopic video content that includes image content intended to correspond to left and right eye views to allow 3D viewing effects.

상기 논의의 관점에서, 개인 사용자가, 예를 들면, 사용자의 머리를 돌림으로써, 그의 뷰잉 위치를 변경하게 하고, 환경의 원하는 부분을 보게 하는 방식으로 콘텐트의 스트리밍 및/또는 재생을 지원하기 위한 방법들 및 장치를 위한 필요가 존재한다는 것이 이해되어야 한다. 사용자가, 대역폭 또는 다른 전달 관련 제한들에 의해 적용할 수 있는 데이터 스트리밍 제한들 내에 머무르면서, 그의 머리 위치를 그에 따라 뷰잉 방향을 변경하는 옵션이 제공되는 경우가 바람직하다. 모든 실시예들에 대해 반드시는 아니지만, 적어도 몇몇 실시예들은 상이한 위치들의 다수의 사용자들이, 동일한 시간에서 스트림들을 수신하고, 어느 부분 또는 어느 부분들이 다른 사용자들에 의해 보이는지에 관계없이 그들이 원하는 환경의 어떠한 별개의 부분들이라도 보게 하는 것이 바람직하다.In view of the above discussion, a method for supporting the streaming and / or playback of content in a manner that allows an individual user to change his viewing position, for example, by turning his or her head, ≪ RTI ID = 0.0 > and / or < / RTI > It is desirable for the user to be provided with the option to change the viewing position of his head position accordingly while staying within data streaming limits that can be applied by bandwidth or other transfer related restrictions. At least some embodiments, although not necessarily for all embodiments, allow a plurality of users of different locations to receive streams at the same time, and to determine which portions or portions of the environment It is desirable to see any distinct parts.

360도 뷰잉 영역에 대응하는 비디오 또는 다른 콘텐트의 전달, 예를 들면, 스트리밍을 지원하는 방법들 및 장치가 기술된다. 본 발명의 방법들 및 장치는, 데이터 송신 제한들이 콘텐트의 360도의 전달을, 예를 들면, 최상 품질 코딩 및 가장 높은 지원 프레임 레이트를 사용하여 최대 지원된 품질 레벨로 전달하기 어렵게 할 수 있는 입체 영상 및/또는 다른 이미지 콘텐트의 스트리밍에 특히 적절하다. 그러나, 방법들은 입체 영상 콘텐트로 제한되지 않는다.Methods and apparatus for supporting delivery, e.g., streaming, of video or other content corresponding to a 360 degree viewing area are described. The methods and apparatus of the present invention are particularly advantageous in that the methods and apparatus of the present invention are particularly advantageous in that the data transmission constraints can make it difficult to deliver 360 degrees of transmission of content, e.g., using best quality coding and the highest supported frame rate, And / or streaming of other image content. However, methods are not limited to stereoscopic content.

다양한 실시예들에서, 비디오 콘텐트가 획득되는 환경의 3D 모델 및/또는 그에 대응하는 3D 차원 정보가 생성되고 및/또는 액세스된다. 환경에서 카메라 위치들이 기록된다. 다수의 별개의 카메라 위치들이 환경 내에 제공될 수 있다. 예를 들면, 별개의 최종 목표 카메라 위치들 및 하나 이상의 중간 필드 카메라 위치들은 실시간 카메라 피드들을 캡쳐하기 위해 지원 및 사용될 수 있다.In various embodiments, a 3D model of the environment in which the video content is obtained and / or corresponding 3D dimensional information is generated and / or accessed. Camera locations are recorded in the environment. A number of distinct camera positions may be provided in the environment. For example, separate final target camera positions and one or more intermediate field camera positions may be supported and used to capture real-time camera feeds.

3D 모델 및/또는 다른 3D 정보는 한 명 이상의 사용자들에 비디오를 스트리밍하기 위해 사용된 이미지 캡처 디바이스 또는 서버에 저장된다.The 3D model and / or other 3D information is stored in an image capture device or server used to stream video to one or more users.

3D 모델은 사용자 재생 디바이스, 예를 들면, 이미지 렌더링 및 합성 능력을 갖는 고객 구내 디바이스에 제공된다. 고객 구내 디바이스는, 예를 들면, 헤드 마운트 디스플레이를 통해 고객 구내 디바이스의 사용자에게 디스플레이되는 환경의 3D 표현을 생성한다.The 3D model is provided to a user playback device, e.g., a customer premise device with image rendering and compositing capabilities. The customer premises device creates a 3D representation of the environment that is displayed to the user of the customer premises device, for example, via the head mounted display.

다양한 실시예들에서, 완전 360도보다 적은 환경이 임의의 주어진 시간에 개별적인 고객 구내 디바이스로 스트리밍된다. 고객 구내 디바이스는 사용자 입력에 기초하여 카메라 피드가 스트리밍되는 것을 나타낸다. 사용자는 고객 구내 디바이스의 부분 또는 그에 부착되는 입력 디바이스를 통해 구획 및/또는 카메라 위치를 선택할 수 있다.In various embodiments, less than a full 360 degrees of environment is streamed to an individual customer premise device at any given time. The customer premises device indicates that the camera feed is streamed based on user input. The user may select the compartment and / or the camera location via a portion of the customer premises device or an input device attached thereto.

몇몇 실시예들에서, 180도 비디오 스트림은 콘텐트를 스트리밍하는 것을 담당하는 서버 및/또는 비디오 카메라들로부터, 예를 들면, 실황의, 실시간, 또는 거의 실시간 스트림으로 고객 재생 디바이스로 송신된다. 재생 디바이스는 사용자의 머리 위치를 모니터링하고, 따라서 재생 디바이스는 재생 디바이스의 사용자가 재생 디바이스에 의해 생성된 3D 환경 내에서 보고 있는 뷰잉 영역을 인식한다. 고객 구내 디바이스는 시청되는 3D 환경의 일 부분에 대해 이용 가능할 때 비디오를 제공하고, 이 비디오 콘텐트는 비디오 콘텐트의 부재시 제공될 시뮬레이션된 3D환경에 대안물로서 교체하거나 또는 디스플레이된다. 재생 디바이스의 사용자가 그의 머리를 돌릴 때, 사용자에게 제공된 환경의 부분들은 비디오 콘텐트로부터 재생 디바이스로 공급, 예를 들면, 스트리밍될 수 있고, 다른 부분들은 3D 모델로부터 합성하여 생성되고 및/또는 비디오 콘텐트와 상이한 시간에 캡처된 이전에 공급된 이미지 콘텐트이다.In some embodiments, the 180 degree video stream is transmitted from the server and / or video cameras responsible for streaming the content to the customer playback device, for example, in real-time, real-time, or near-real-time stream. The playback device monitors the head position of the user, and thus the playback device recognizes the viewing area that the user of the playback device sees in the 3D environment created by the playback device. The customer premise device provides video when available for a portion of the 3D environment being viewed and the video content is replaced or displayed as an alternative to the simulated 3D environment to be provided in the absence of video content. When a user of the playback device turns his head, portions of the environment provided to the user may be supplied from the video content to the playback device, e.g., streamed, and other portions may be generated by compositing from the 3D model and / Lt; RTI ID = 0.0 > image content < / RTI >

따라서, 재생 디바이스는 예를 들면, 정면 180도 카메라 뷰에 대응하여 게임, 음악 콘서트, 또는 다른 이벤트가 여전히 진행중인 동안, 예를 들면, 스트리밍을 통해 공급된, 비디오를 디스플레이할 수 있고, 3D 환경의 후방 및/또는 측면 부분들은 완전히 합성하여 또는 상이한 시간들에 환경의 측면 또는 후방 영역들의 이미지 콘텐트로부터 생성된다.Thus, the playback device can display video, for example, supplied via streaming, while a game, music concert, or other event is still pending, corresponding to, for example, a frontal 180 degree camera view, The rear and / or side portions are produced from the image content of the side or rear regions of the environment in complete synthesis or at different times.

사용자가 스트리밍 콘텐트를 제공하는 서버에 위치의 변경을 시그널링함으로써 카메라 위치들을 선택할 수 있지만, 스트리밍 콘텐트를 제공하는 서버는 스트리밍되지 않는 3D 환경의 부분들에 대해 합성 환경을 생성하기에 유용한 정보를 제공할 수 있다.A user may select camera locations by signaling a change in location to a server providing streaming content, but a server providing streaming content may provide information useful for creating a composite environment for parts of the non-streaming 3D environment .

예를 들면, 몇몇 실시예들에서, 다수의 후면 및 측면 뷰들은 상이한 시간들에서, 예를 들면, 콘텐트의 일 부분을 스트리밍하기 전에 또는 시간상 더 빠른 지점으로부터 캡처된다. 이미지들은 재생 디바이스에서 버퍼링된다. 콘텐트를 제공하는 서버는 비실시간 장면들 또는 이미지들의 일 세트 중 어느 것이 비디오 스트림에 공급되지 않는 환경 부분들의 합성을 위해 사용되는지 재생 디바이스에 시그널링할 수 있고, 몇몇 실시예들에서 이를 시그널링한다. 예를 들면, 앉아있는 콘서트 참여자들의 이미지 및 카메라 위치 뒤에 서있는 콘서트 참여자들의 다른 이미지가 재생 디바이스에 공급 및 저장될 수 있다. 서버는 저장된 이미지 데이터의 세트 중 어느 것이 특정 시점에서 사용되어야 하는지를 시그널링할 수 있다. 따라서, 관객이 서있을 때, 서버는 서있는 관객에 대응하는 이미지가 이미지 합성 동안 배경 180도 뷰에 대해 사용되어야 한다는 것을 시그널링할 수 있고, 반면에 관객이 앉아있을 때, 서버는 그가 3D 카메라 환경의 측면 또는 후방 부분들을 합성할 때 앉아있는 관객에 대응하는 이미지 또는 이미지 합성 정보를 사용해야 한다는 것을 고객 구내 디바이스에 나타낼 수 있다. For example, in some embodiments, a plurality of back and side views are captured at different times, e.g., before streaming a portion of the content or from a point earlier in time. The images are buffered in the playback device. The server providing the content can signal to the playback device and signal it in some embodiments that either non-real-time scenes or a set of images are used for compositing environment portions that are not supplied to the video stream. For example, images of the sitting concert participants and other images of the concert participants behind the camera location may be supplied and stored on the playback device. The server can signal which of the set of stored image data should be used at a particular point in time. Thus, when the audience is standing, the server can signal that an image corresponding to the standing audience is to be used for background 180 degrees view during image composition, while when the audience is sitting, Or it may indicate to the customer premises device that image or image composition information corresponding to a sitting audience should be used when synthesizing the rear portions.

적어도 몇몇 실시예들에서, 3D 환경에서 하나 이상의 위치들의 각각에서 카메라들의 배향은 이미지 캡처 동안 추적된다. 환경에서 마커들 및/또는 식별 지점들은 고객 구내 디바이스에 의해 시뮬레이션될 이전에 모델링된 및/또는 맵핑된 3D 환경에 캡처된 이미지들, 예를 들면, 실황 이미지들의 정렬 및/또는 다른 맵핑을 용이하게 하기 위해 사용될 수 있다.In at least some embodiments, the orientation of the cameras in each of the one or more locations in the 3D environment is tracked during image capture. Markers and / or identification points in the environment may facilitate the alignment and / or other mapping of images captured in a previously modeled and / or mapped 3D environment, e.g., live images, to be simulated by a customer premise device Lt; / RTI >

합성 환경 부분들 및 실시간 (스트리밍 비디오)의 혼합은 몰입형 비디오 경험을 제공한다. 환경들은 비디오가 이용 가능하지 않을 때, 예를 들면, 환경이 이전에 모델링되지 않은 경우, 환경을 시뮬레이션하기 위해 사용된 3D 정보를 생성하기 위해 3D 측광법을 사용하여 측정 또는 모델링될 수 있거나, 때때로 측정 또는 모델링된다.The combination of composite environment portions and real-time (streaming video) provides an immersive video experience. The environments may be measured or modeled using 3D photometry to generate 3D information used to simulate the environment when video is not available, e.g., if the environment has not previously been modeled, Measured or modeled.

결정된 위치들의 실세계 공간에서 기준 마커들의 사용은 이전에 생성된 3D 모델과 함께 비디오의 교정 및 정렬을 돕는다.The use of fiducial markers in the real-world space of determined positions helps with the calibration and alignment of the video with the previously created 3D model.

각각의 카메라의 위치 추적은 비디오가 캡처될 때 실행된다. 카메라 위치 정보는 X, Y, Z, 및 각도들로 벗어남을 맵핑하는 장소에 관한 것이다(그래서, 우리는 각각의 카메라가 지시되는 곳을 안다). 이는 캡처된 이미지가 환경의 어느 부분에 대응하는지의 쉬운 검출을 허용하고, 캡처된 비디오와 함께 재생 디바이스로 전달될 때, 이미지 표시 동안 재생 디바이스에 의해 생성된 합성 환경에 우리의 비디오 캡처를 자동으로 오버레이하기 위한 재생, 예를 들면, 사용자에게 재생을 허용한다. 스트리밍된 콘텐트는 360도 미만의 뷰, 예를 들면, 카메라 위치 정면의 영역의 캡처된 180도 뷰로 한정될 수 있다. 뷰어가 주위를 볼 때, 뒷쪽으로 돌 때, 뷰어는 시뮬레이션된 배경(검은 공동이 아님)을 볼 것이고, 정면으로 돌 때, 뷰어는 비디오를 볼 것이다.Location tracking of each camera is performed when the video is captured. The camera position information relates to the locations of X, Y, Z, and deviations to angles (so we know where each camera is pointed). This allows for easy detection of where the captured image corresponds to in the environment, and automatically transfers our video capture to the composite environment created by the playback device during image display, when delivered to the playback device with the captured video Playback for overlaying, for example, allowing playback to the user. The streamed content may be limited to a view of less than 360 degrees, for example, a captured 180 degree view of the area of the front of the camera location. When the viewer looks around, when turning to the back, the viewer will see the simulated background (not the black cavity), and the viewer will watch the video when turning to the front.

합성 환경이 상호작용할 수 있고, 몇몇 환경에서 상호작용한다. 몇몇 실시예들에서, 다수의 실제 뷰어들, 예컨대 상이한 고객 구내 디바이스들의 사용자들은 시뮬레이션된 환경에 포함되어, 사용자가 가상 3D 환경에서 그의 친구들과의 게임을 볼 수 있고, 사용자들이 실제로 경기장에 있는 것처럼 보이도록 한다.Composite environments can interact and interact in some environments. In some embodiments, a plurality of actual viewers, e.g., users of different customer premises devices, are included in the simulated environment, allowing the user to view games with his friends in a virtual 3D environment, To be seen.

사용자들의 이미지들은 시뮬레이션된 환경을 생성할 때 사용을 위해, 고객 구내 디바이스들과 함께 포함되거나 그에 부착된 카메라들에 의해 캡처될 수 있거나, 몇몇 실시예들에서, 캡처되어, 서버에 공급되고, 다른 사용자들, 예를 들면, 그룹의 멤버들에게 제공된다. 사용자 이미지들은 실시간 이미지들일 필요는 없지만 실시간 이미지들일 수 있다.The images of the users may be captured by the cameras included with or attached to the customer premise devices for use in creating the simulated environment, or may be captured in some embodiments, provided to the server, Users, for example, members of the group. User images may not be real-time images but may be real-time images.

방법들은 실시간 또는 거의 실시간으로 콘텐트를 인코딩 및 제공하기 위해 사용될 수 있지만, 이러한 실시간 애플리케이션들로 제한되지 않는다. 다수의 사용자들에게 실시간 및 거의 실시간 인코딩 및 스트리밍을 지원하기 위한 능력이 제공되면, 여기에 기술된 방법들 및 장치는 개인들이 이벤트를 보고, 무대 또는 필드를 관찰할 뿐만 아니라 환경, 예를 들면, 운동장 또는 관객의 뷰들로 몸을 돌려서 인식할 수 있는 스포츠 경기들, 콘서트, 및/또는 다른 장소들의 장면들을 스트리밍하기에 적합하다. 360도 뷰잉 및 3D를 지원함으로써, 본 발명의 방법들 및 장치는 사용자에게 사용자가 환경에 존재하고, 사용자의 머리를 왼쪽, 오른쪽, 또는 후방으로 돌리는 경우일 때, 상이한 뷰잉 각들로부터의 장면을 몸을 돌려 관찰하는 자유도를 통해 3D 몰입 경험을 제공하도록 의도된 헤드 마운트 디스플레이들과 함께 사용하기에 적합하다.Methods may be used to encode and provide content in real time or near real time, but are not limited to these real-time applications. If the ability to support real-time and near-real-time encoding and streaming to multiple users is provided, the methods and apparatus described herein allow individuals to view events, observe the stage or field, It is suitable for streaming scenes of sporting events, concerts, and / or other places that are recognizable by turning to the playground or the views of the audience. 360 degrees viewing and 3D support, the methods and apparatus of the present invention allow the user to view a scene from different viewing angles when the user is present in the environment and is turning the user's head left, right, And is intended for use with head-mounted displays intended to provide a 3D immersion experience through the degree of freedom to observe by turning.

이미지 콘텐트, 예를 들면, 360도 시야에 대응하는 콘텐트를 전달하기 위한 방법들 및 장치가 기술된다. 다양한 실시예들에서, 시야는 환경의 상이한 부분들, 예를 들면, 정면 부분, 적어도 하나의 후방 부분, 상부, 및 하부에 대응한다. 몇몇 실시예들에서, 환경의 왼쪽 및 오른쪽 후방, 예를 들면, 후방 부분들은 개별적으로 생성 및/또는 전달된다. 재생 디바이스는 사용자의 머리의 위치를 모니터링하고 이미지들, 예를 들면, 사용자가 주어진 시간에 보고 있는 환경의 부분에 대응하는 입체 영상 이미지들을 생성하고, 이는 사용자에게 이후 디스플레이된다. 입체 영상 재생의 경우, 개별적인 왼쪽 및 오른쪽 눈 이미지들이 생성된다. 생성된 이미지들은 하나 이상의 장면, 예를 들면, 환경 부분들에 대응할 수 있고, 몇몇 실시예들에서, 그에 대응한다.Methods and apparatus for delivering image content, e.g., content corresponding to a 360 degree field of view, are described. In various embodiments, the field of view corresponds to different portions of the environment, such as the frontal portion, at least one rear portion, the top, and the bottom. In some embodiments, the left and right rear, e.g., rear, portions of the environment are separately generated and / or communicated. The playback device monitors the position of the user's head and generates stereoscopic images corresponding to images, e.g., a portion of the environment the user is viewing at a given time, which is then displayed to the user. In the case of stereoscopic image reproduction, individual left and right eye images are generated. The generated images may correspond to one or more scenes, e.g., environmental portions, and in some embodiments, corresponding thereto.

재생의 시작에서, 사용자의 전방을 바라보는 머리 레벨 위치는 디폴트로서 전방 장면 부분에 대응하도록 설정된다. 사용자가 그의 머리를 돌리고 및/또는 그의 머리를 올리거나 내릴 때, 환경의 다른 부분들이 사용자의 시야로 들어올 수 있다.At the beginning of playback, the head level position looking forward of the user is set to correspond to the front scene portion by default. When the user turns his head and / or raises or lowers his head, other parts of the environment can come into view of the user.

많은 재생 디바이스들에 대한 대역폭 및 이미지 디코딩 능력들은 이미지 콘텐트를 수신하기 위한 대역폭 및/또는 디바이스의 처리 능력에 의해 제한된다. 몇몇 실시예들에서, 재생 디바이스는 환경의 어느 부분이 사용자의 주요 시야에 대응하는지를 결정한다. 디바이스는 이후 높은 레이트, 예를 들면, 우선 순위 관점으로부터 지정되는 스트림에 의해 풀 해상도로 수신될 상기 부분을 주요 스트림으로 선택한다. 환경의 다른 부분들에 대응하는 콘텐트를 제공하는 하나 이상의 다른 스트림들로부터의 콘텐트가 또한 수신되지만, 일반적으로 더 낮은 데이터 레이트에서 수신된다. 특정 스트림에 대한 콘텐트 전달은, 예를 들면, 콘텐트 전달을 트리거링하기 위해 사용된 신호를 전송함으로써, 재생 디바이스에 의해 개시될 수 있다. 신호는 환경의 일 부분에 대응하는 콘텐트를 제공하거나 또는 스위칭된 디지털 방송의 전달을 개시하는 멀티캐스트 그룹에 연결하기 위해 사용될 수 있다. 멀티캐스트 그룹 연결 신호와 같은 요청 또는 다른 신호를 요청하지 않는 방송 콘텐트의 경우, 디바이스는 콘텐트가 이용 가능한 채널에 대해 동조시킴으로써 수신을 개시할 수 있다.The bandwidth and image decoding capabilities for many playback devices are limited by the bandwidth and / or throughput of the device to receive the image content. In some embodiments, the playback device determines which portion of the environment corresponds to the user's primary view. The device then selects the portion to be received at full resolution by the stream designated as a higher rate, e.g., from a priority view, as the primary stream. Content from one or more other streams providing content corresponding to other parts of the environment is also received, but is typically received at a lower data rate. Content delivery for a particular stream may be initiated by the playback device, for example, by sending a signal used to trigger content delivery. The signal may be used to provide content corresponding to a portion of the environment or to connect to a multicast group that initiates delivery of switched digital broadcasts. In the case of broadcast content that does not request a request or other signal, such as a multicast group connection signal, the device may initiate reception by tuning the content to an available channel.

특히 콘텐트가 특히 스포츠 경기, 락 콘서트 패션 쇼 또는 다수의 상이한 이벤트들에 대응할 때 주요 동작이 일반적으로 진행되기 때문에, 사용자들이 환경의 전방 뷰 부분에 주로 관심이 있다고 가정하면, 몇몇 실시예들에서, 환경의 전방 뷰 부분은 데이터 송신 우선 순위를 제공받는다. 적어도 몇몇 실시예들에서, 전방 뷰 위치에 대응하는 이미지들은 360도 환경의 하나 이상의 다른 부분들보다 높은 레이트에서 스트리밍된다. 환경의 다른 부분들에 대응하는 이미지들은 더 낮은 데이터 레이트에서 전송되거나 또는 정지 이미지들로서 전송된다. 예를 들면, 상부, 예를 들면, 하늘 및 하부, 예를 들면, 지상 중 하나 이상의 정지 이미지들이 전송될 수 있다.Assuming that the users are primarily interested in the front view portion of the environment, especially since the main operation is generally performed when the content particularly corresponds to a sporting event, a rock concert fashion show or a number of different events, in some embodiments, The forward view portion of the environment is provided with a data transmission priority. In at least some embodiments, the images corresponding to the forward view position are streamed at a higher rate than one or more other portions of the 360 degree environment. Images corresponding to different parts of the environment are transmitted at lower data rates or transmitted as still images. For example, one or more still images of the top, e.g., sky and bottom, e.g., terrestrial, may be transmitted.

몇몇 실시예들에서, 다수의 정지 캡처된 이미지들은 환경의 하나 이상의 부분들, 예를 들면, 후방 뷰 부분(들) 또는 하늘 부분에 대해 전송된다. 몇몇 실시예들에서, 환경의 일 부분에 대해 정지 이미지들 중 어느 것이 주어진 시간에 사용되어야 하는지를 나타내는 제어 정보가 전송된다. 환경의 일 부분에 대한 정지 이미지들이 전송되는 경우, 그들은 인코딩된 형태로 전송될 수 있고, 이후 다른 이미지 콘텐트와 조합하여 사용을 위해 디코딩된 형태로 메모리에 저장될 수 있다. 이러한 방식으로, 다수의 스트림들이 동일한 프레임 레이트로 동시에 디코딩될 필요가 없기 때문에, 이벤트 동안 요구되는 디코딩 자원들이 감소될 수 있다. 정지 이미지들은 주요 이벤트의 콘텐트를 스트리밍하기 전에 전송될 수 있다. 대안적으로, 환경의 상이한 부분들에 대한 몇몇 이미지들은 전방 뷰잉 위치로부터 사용자의 머리 위치에서 변화가 주어져 재생 동안 그들이 필요한 경우 전송되어, 저장될 수 있다. 정지 또는 흔치 않은 이미지들은 주요한, 예를 들면, 전방, 뷰잉 방향에 대한 콘텐트를 제공하는 콘텐트 스트림의 부분으로서 인코딩 및 전송될 수 있거나, 개별적인 콘텐트 스트림으로서 전송될 수 있다.In some embodiments, a plurality of still captured images are transmitted for one or more portions of the environment, e.g., the rear view portion (s), or the sky portion. In some embodiments, control information is transmitted that indicates which of the still images should be used at a given time for a portion of the environment. When still images for a portion of the environment are transmitted, they may be transmitted in encoded form and then stored in memory in decoded form for use in combination with other image content. In this way, the decoding resources required during the event can be reduced since multiple streams need not be decoded simultaneously at the same frame rate. Still images can be sent before streaming the content of the main event. Alternatively, some images for different parts of the environment may be transferred and stored if they are needed during playback, given changes in the user's head position from the front viewing position. The stalled or uncommon images may be encoded and transmitted as part of the content stream that provides the main, e.g., forward, content for the viewing direction, or may be transmitted as a separate content stream.

후방에 대응하는 정지 이미지들은 이벤트 전에 캡처된 이미지들 일 수 있고, 때때로 그러한 이미지들이고, 환경의 전방 부분에 대응하는 콘텐트는 이벤트가 진행하고 있는 동안, 예를 들면 실시간으로 캡처 및 스트리밍되는 콘텐트를 포함할 수 있고, 많은 경우들에서, 그를 포함한다.The still images corresponding to the rear may be images captured before the event, sometimes such images, and the content corresponding to the front portion of the environment includes content that is captured and streamed, for example, in real time while the event is in progress And in many cases, including him.

예를 들면, 두 개의 상이한 후방 뷰 장면들이 재생 디바이스에 전달 및 저장되는 경우를 생각하자. 하나의 장면은 서있는 자세인 관객에 대응할 수 있고, 다른 이미지는 앉은 자세로 있는 관객에 대응할 수 있다. 제어 정보는 사용자가 그의 머리를 환경의 후방 부분이 가시적인 위치로 돌려야 하는 주어진 시간에 앉아 있거나 서 있는 자세의 관객 이미지 중 어느 것이 사용되는지의 여부를 나타낼 수 있거나, 몇몇 실시예들에서, 그를 나타낸다.For example, consider the case where two different rearview scenes are transmitted and stored in the playback device. One scene can correspond to a standing posture, and the other image can correspond to an audience in a sitting posture. The control information may indicate whether or not a user is sitting in a standing position or standing posture image at a given time when the user must turn his or her head back to a visible position, or, in some embodiments, indicate .

유사하게, 하늘의 다수의 이미지들은 재생 디바이스로 전달될 수 있고, 인코딩되거나 디코딩된 형태로 재생 디바이스에 저장될 수 있다. 몇몇 실시예들에서, 하늘 부분의 어느 이미지가 제공된 시간에 사용될지가 제어 정보로 전달된다. 다른 실시예들에서, 하늘의 어느 장면이 사용될지는 선택되는 전방 환경 장면 부분과 일치하거나 그에 가까운 하늘 부분을 갖는 전방 장면 영역에 대응하는 하나 이상의 이미지들의 밝기에 기초하여 자동으로 결정되고, 예를 들면, 밝은 전방 장면 영역은 더 적은 구름들을 갖는 밝은 하늘 이미지의 선택을 제어하도록 검출 및 사용될 수 있다. 유사하게, 몇몇 실시예들에서 어두운 전방 환경 영역의 검출은 사용되는 어두운 흐린 하늘 이미지를 초래할 것이다.Similarly, multiple images in the sky may be delivered to the playback device and stored in the playback device in an encoded or decoded form. In some embodiments, which image in the sky portion is to be used at a given time is passed to the control information. In other embodiments, which scene in the sky is to be used is automatically determined based on the brightness of one or more images corresponding to a foreground scene area having a sky portion that is coincident with or close to the selected forward environment scene portion, , The bright forward scene area can be detected and used to control the selection of a bright sky image with fewer clouds. Similarly, in some embodiments detection of a dark front environmental zone will result in a dark cloudy sky image being used.

시야의 환경의 일 부분에 대응하는 이미지가 이용 가능하지 않은 경우들에서, 장면 부분은, 예를 들면, 이용 가능한 환경의 다른 부분들로부터의 콘텐트 또는 정보로부터 합성될 수 있다. 예를 들면, 후방 이미지 부분이 이용 가능하지 않은 경우, 전방 장면 영역의 좌측 및/또는 우측을 형성하는 콘텐트는 환경의 누락된 후방 부분들을 채우기 위해 복사되어 사용될 수 있다. 콘텐트 복제에 추가하여 블러링 및/또는 다른 이미지 처리 동작들은 몇몇 실시예들에서 환경의 누락 부분들을 채우기 위해 사용될 수 있다. 대안적으로, 몇몇 실시예들에서, 작성 정보는 콘텐트 스트림에 제공되고 재생 디바이스는 누락 부분들에 대해 합성 이미지들을 완전하게 생성한다. 비디오 게임 콘텐트와 같은, 그러한 콘텐트는 사실상 현실적일 수 있고 재생 디바이스에 저장된 작성 및/또는 다른 이미지 생성 규칙들로부터 생성된 매우 다양한 이미지 효과들 및 콘텐트를 포함할 수 있다.In instances where an image corresponding to a portion of the environment of the field of view is not available, the scene portion may be synthesized from, for example, content or information from other parts of the available environment. For example, if the rear image portion is not available, the content forming the left and / or right side of the front scene region may be copied and used to fill the missing rear portions of the environment. In addition to content duplication, blurring and / or other image processing operations may be used to fill in missing portions of the environment in some embodiments. Alternatively, in some embodiments, the creation information is provided in the content stream and the playback device completely generates the composite images for the missing portions. Such content, such as video game content, may be substantially realistic and may contain a wide variety of image effects and content generated from creation and / or other image generation rules stored in the playback device.

몇몇 실시예들에 따라, 재생 시스템을 동작시키는 일 예시적인 방법은 현재 시야에 대응하는 뷰어의 머리 위치를 결정하는 단계; 환경의 제 1 부분에 대응하는 콘텐트를 제공하는 제 1 콘텐트 스트림을 수신하는 단계; 상기 제 1 콘텐트 스트림에 포함된 적어도 일부 수신된 콘텐트 및 ⅰ) 상기 환경의 제 2 부분에 대응하는 저장된 콘텐트 또는 ⅱ) 상기 환경의 제 2 부분을 시뮬레이션하는 합성 이미지에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하는 단계; 및 하나 이상의 생성된 출력 이미지들 중 하나인, 제 1 출력 이미지를 출력하거나 디스플레이하는 단계를 포함한다. 몇몇 실시예들에 따라, 일 예시적인 콘텐트 재생 시스템은: 현재 시야에 대응하는, 뷰어의 머리 위치를 결정하도록 구성된 뷰어 머리 위치 결정 모듈; 환경의 제 1 부분에 대응하는 콘텐트를 제공하는 제 1 콘텐트 스트림을 수신하도록 구성된 콘텐트 스트림 수신 모듈; 상기 제 1 콘텐트 스트림에 포함된 적어도 일부 수신된 콘텐트 및 ⅰ) 상기 환경의 제 2 부분에 대응하는 저장된 콘텐트 또는 ⅱ) 상기 환경의 제 2 부분을 시뮬레이션하는 합성 이미지에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성된 출력 이미지 콘텐트 스트림 기반 생성 모듈; 및 상기 제 1 출력 이미지를 출력하도록 구성된 출력 모듈 또는 상기 제 1 출력 이미지를 디스플레이하도록 구성된 디스플레이 모듈 중 적어도 하나를 포함한다.According to some embodiments, an exemplary method of operating a playback system includes determining a head position of a viewer corresponding to a current view; Receiving a first content stream that provides content corresponding to a first portion of the environment; At least some received content included in the first content stream, and i) stored content corresponding to a second portion of the environment, or ii) one corresponding to the current view, based on a composite image simulating a second portion of the environment Generating output images; And outputting or displaying a first output image, which is one of the one or more generated output images. According to some embodiments, an exemplary content playback system includes: a viewer head positioning module configured to determine a head position of a viewer, corresponding to a current view; A content stream receiving module configured to receive a first content stream providing content corresponding to a first portion of the environment; At least some received content included in the first content stream, and i) stored content corresponding to a second portion of the environment, or ii) one corresponding to the current view, based on a composite image simulating a second portion of the environment An output image content stream based generation module configured to generate the output images; And an output module configured to output the first output image or a display module configured to display the first output image.

다수의 변형들 및 실시예들이 가능하고 후속하는 상세한 설명에서 논의된다.Many variations and embodiments are possible and are discussed in the following detailed description.

본 발명은 개선된 콘텐트를 전달 및/또는 콘텐트를 재생하기 위한 방법들 및 장치를 제공한다.The present invention provides methods and apparatus for delivering improved content and / or reproducing content.

도 1은 환경의 하나 이상의 합성된 부분들과 함께 하나 이상의 사용자들에 의해 다음의 디스플레이를 위한 콘텐트를 캡처 및 스트리밍하기 위해 사용될 수 있는 본 발명의 몇몇 실시예들에 따라 구현된 일 예시적인 시스템을 도시하는 도면.
도 2a는 일 예시적인 입체 영상 장면, 에를 들면, 분할되지 않은 풀 360도 입체 영상 장면을 도시하는 도면.
도 2b는 일 예시적인 실시예에 따라 3 개의 예시적인 장면들로 분할된 일 예시적인 입체 영상 장면을 도시하는 도면.
도 2c는 일 예시적인 실시예에 따라 4 개의 장면들로 분할된 일 예시적인 입체 영상 장면을 도시하는 도면.
도 3은 일 예시적인 실시예에 따라 일 예시적인 360도 입체 영상 장면을 인코딩하는 일 예시적인 프로세스를 도시하는 도면.
도 4는 입력 이미지 부분이 동일한 입력 이미지 부분의 상이한 인코딩된 버전들을 생성하기 위해 다양한 인코더들을 사용하여 인코딩되는 방법을 보여주는 일 예를 도시하는 도면.
도 5는 3 개의 부분들로 분할된 입력 입체 영상 장면의 저장된 인코딩된 부분들을 도시하는 도면.
도 6은 도 1의 시스템을 사용하여 구현된 일 예시적인 실시예에 따라 콘텐트를 스트리밍하는 일 예시적인 방법의 단계들을 도시하는 플로차트.
도 7은 본 발명의 특징에 따라 콘텐트를 인코딩 및 스트리밍하기 위해 사용될 수 있는 인코딩 능력을 포함하는 일 예시적인 콘텐트 전달 시스템을 도시하는 도면.
도 8은 도 7의 시스템에 의해 스트리밍된 콘텐트를 수신, 디코딩, 및 디스플레이하기 위해 사용될 수 있는 일 예시적인 콘텐트 재생 시스템을 도시하는 도면.
도 9는 카메라 리그를 교정하기 위해 사용될 수 있는 교정 타깃과 함께 3 개의 상이한 장착 위치들에 장착된 3 개의 카메라 쌍들을 갖는 일 예시적인 카메라 리그를 보여주는 도면.
도 10은 카메라 리그에 장착된 3 개의 카메라 쌍들을 갖는 카메라 리그의 더 집중된 뷰를 보여주는 도면.
도 11은 일 예시적인 실시예에 따라 구현된 일 예시적인 카메라 리그의 상세도.
도 12는 일 예시적인 360 장면 환경, 예를 들면, 360도 장면의 상이한 부분들을 캡처하는 각각의 카메라들의 상이한 카메라 위치들에 대응하는 상이한 뷰잉 영역들/부분들로 분할될 수 있는 360 장면 영역을 도시하는 도면.
도 13은 예시적인 360 장면 영역의 뷰잉 영역들/부분들에 대응하는 및/또는 그들을 포함하도록 위치되는 상이한 카메라들에 의해 캡처될 수 있는 도 12의 예시적인 360 장면 영역의 상이한 부분들을 보여주는 세 개의 상이한 도면들을 포함하는 도면.
도 14a는 본 발명의 일 예시적인 실시예에 따라 재생 디바이스를 동작시키는 일 예시적인 방법의 단계들을 도시하는 플로차트의 제 1 부분을 도시하는 도면.
도 14b는 본 발명의 일 예시적인 실시예에 따라 재생 디바이스를 동작시키는 일 예시적인 방법의 단계들을 도시하는 플로차트의 제 2 부분을 도시하는 도면.
도 14는 도 14a 및 도 14b의 조합을 포함하는 도면.
도 15는 일 예시적인 실시예에 따라 스트림 선택 서브루틴의 단계들을 도시하는 플로차트.
도 16은 일 예시적인 실시예에 따라 스트림 우선 순위화 서브루틴의 단계들을 도시하는 플로차트.
도 17은 일 예시적인 실시예에 따라 서브루틴을 렌더링하는 단계들을 도시하는 플로차트.
도 18은 복수의 콘텐트 스트림들에 대응하는 스트림 정보를 포함하는 일 예시적인 표.
도 19는 본 발명에 따라 구현된 일 예시적인 재생 시스템을 도시하는 도면.
도 20a는 일 예시적인 실시예에 따라 콘텐트 재생 시스템을 동작시키는 일 예시적인 방법의 플로차트의 제 1 부분을 도시하는 도면.
도 20b는 일 예시적인 실시예에 따라 콘텐트 재생 시스템을 동작시키는 일 예시적인 방법의 플로차트의 제 2 부분을 도시하는 도면.
도 20c는 일 예시적인 실시예에 따라 콘텐트 재생 시스템을 동작시키는 일 예시적인 방법의 플로차트의 제 3 부분을 도시하는 도면.
도 20d는 일 예시적인 실시예에 따라 콘텐트 재생 시스템을 동작시키는 일 예시적인 방법의 플로차트의 제 4 부분을 도시하는 도면.
도 20e는 일 예시적인 실시예에 따라 콘텐트 재생 시스템을 동작시키는 일 예시적인 방법의 플로차트의 제 5 부분을 도시하는 도면.
도 20은 도 20a, 도 20b, 도 20c, 도 20d, 및 도 20e의 조합을 포함하는 도면.
도 21은 일 예시적인 콘텐트 재생 시스템, 예를 들면, 일 예시적인 실시예에 따라 디스플레이하기 위해 결합된 콘텐트 재생 디바이스 또는 컴퓨터 시스템의 도면.
도 22는 도 21의 예시적인 콘텐트 재생 시스템에 포함될 수 있는 모듈들의 일 예시적인 어셈블리의 도면.
도 23은 몇몇 실시예들에 따라 도 19의 재생 시스템에서 사용될 수 있는 일 예시적인 스트림 선택 모듈을 도시하는 도면.
도 24는 도 23의 스트림 선택 모듈의 부분으로서 또는 개별 모듈로서 구현될 수 있는 일 예시적인 스트림 우선 순위화 모듈을 도시하는 도면.
1 illustrates an exemplary system implemented in accordance with some embodiments of the present invention that may be used to capture and stream content for subsequent display by one or more users with one or more synthesized portions of the environment FIG.
FIG. 2A illustrates an exemplary stereoscopic image scene, for example, a non-segmented full 360 degree stereoscopic scene; FIG.
FIG. 2B illustrates an exemplary stereoscopic image scene divided into three exemplary scenes in accordance with an exemplary embodiment; FIG.
FIG. 2C illustrates an exemplary stereoscopic image scene divided into four scenes in accordance with one exemplary embodiment; FIG.
Figure 3 illustrates one exemplary process for encoding an exemplary 360 degree stereoscopic scene in accordance with an exemplary embodiment;
4 illustrates an example of how an input image portion is encoded using various encoders to produce different encoded versions of the same input image portion;
Figure 5 shows stored encoded portions of an input stereoscopic scene divided into three parts;
Figure 6 is a flow diagram illustrating steps of one exemplary method for streaming content in accordance with one exemplary embodiment implemented using the system of Figure 1;
Figure 7 illustrates an exemplary content delivery system that includes an encoding capability that can be used to encode and stream content in accordance with aspects of the present invention.
Figure 8 illustrates an exemplary content playback system that may be used to receive, decode, and display content streamed by the system of Figure 7;
Figure 9 shows an exemplary camera rig having three camera pairs mounted at three different mounting locations with a calibration target that can be used to calibrate the camera rig.
Figure 10 shows a more focused view of a camera rig having three camera pairs mounted on the camera rig.
11 is a detailed view of an exemplary camera rig implemented in accordance with an exemplary embodiment.
12 illustrates an exemplary 360 scene scene, e.g., a 360 scene area that can be divided into different viewing areas / portions corresponding to different camera positions of each of the cameras capturing different portions of the 360 scene FIG.
FIG. 13 illustrates three exemplary 360 scene regions of FIG. 12 that can be captured by different cameras that correspond to and / or are positioned to include viewing regions / portions of an exemplary 360 scene region. BRIEF DESCRIPTION OF THE DRAWINGS Fig.
Figure 14A illustrates a first portion of a flowchart illustrating steps of an exemplary method of operating a playback device in accordance with one exemplary embodiment of the present invention.
Figure 14B illustrates a second portion of a flowchart illustrating steps of an exemplary method of operating a playback device in accordance with an exemplary embodiment of the present invention.
14 includes a combination of Figs. 14A and 14B. Fig.
15 is a flow chart illustrating the steps of a stream selection subroutine in accordance with one exemplary embodiment.
Figure 16 is a flow diagram illustrating the steps of a stream prioritization subroutine in accordance with one exemplary embodiment.
17 is a flow diagram illustrating steps of rendering a subroutine in accordance with one exemplary embodiment.
18 is an exemplary table that includes stream information corresponding to a plurality of content streams.
Figure 19 illustrates an exemplary playback system implemented in accordance with the present invention.
20A illustrates a first portion of a flowchart of one exemplary method of operating a content playback system in accordance with one exemplary embodiment.
Figure 20B illustrates a second portion of a flowchart of one exemplary method of operating a content playback system in accordance with an exemplary embodiment;
20C illustrates a third portion of a flowchart of one exemplary method of operating a content playback system in accordance with an exemplary embodiment.
20D illustrates a fourth portion of a flowchart of one exemplary method of operating a content playback system in accordance with an exemplary embodiment.
Figure 20E illustrates a fifth portion of a flowchart of one exemplary method of operating a content playback system in accordance with an exemplary embodiment;
20 is a view including a combination of Figs. 20A, 20B, 20C, 20D and 20E. Fig.
21 is an illustration of an exemplary content playback system, e.g., a content playback device or computer system coupled for display in accordance with one exemplary embodiment.
Figure 22 is an illustration of one exemplary assembly of modules that may be included in the exemplary content playback system of Figure 21;
Figure 23 illustrates an exemplary stream selection module that may be used in the playback system of Figure 19 in accordance with some embodiments.
24 depicts an exemplary stream prioritization module that may be implemented as part of the stream selection module of FIG. 23 or as a separate module.

도 1은 본 발명의 몇몇 실시예에 따라 구현된 일 예시적인 시스템(100)을 도시한다. 시스템(100)은 하나 이상의 고객 디바이스들, 예를 들면, 고객 구내들에 위치된 재생 디바이스들/콘텐트 플레이어들에 대한 콘텐트 전달, 예를 들면, 이미징 콘텐트 전달을 지원한다. 시스템(100)은 예시적인 이미지 캡처링 디바이스(102), 콘텐트 전달 시스템(104), 통신 네트워크(105), 및 복수의 고객 구내들(106, ..., 110)을 포함한다. 이미지 캡처링 디바이스(102)는 입체 영상 이미지의 캡처링을 지원한다. 이미지 캡처링 디바이스(102)는 본 발명의 피처들에 따라 이미징 콘텐트를 캡처 및 처리한다. 통신 네트워크(105)는, 예를 들면, 하이브리드 광섬유-동축(HFC) 네트워크, 위성 네트워크, 및/또는 인터넷일 수 있다.Figure 1 illustrates an exemplary system 100 implemented in accordance with some embodiments of the present invention. The system 100 supports content delivery, e.g., imaging content delivery, to one or more customer devices, e.g., playback devices / content players located in customer premises. The system 100 includes an exemplary image capturing device 102, a content delivery system 104, a communications network 105, and a plurality of customer premises 106, ..., 110. The image capturing device 102 supports capturing a stereoscopic image. The image capturing device 102 captures and processes imaging content in accordance with the features of the present invention. The communication network 105 may be, for example, a hybrid fiber-coaxial (HFC) network, a satellite network, and / or the Internet.

콘텐트 전달 시스템(104)은 인코딩 장치(112) 및 콘텐트 스트리밍 디바이스/서버(114)를 포함한다. 인코딩 장치(112)는 본 발명에 따라 이미지 데이터를 인코딩하기 위한 하나 또는 복수의 인코더들을 포함할 수 있고, 몇몇 실시예들에서 그를 포함한다. 인코더들은 장면의 상이한 부분들을 인코딩하고 및/또는 상이한 데이터 레이트들을 갖는 인코딩된 버전들을 생성하기 위해 장면의 제공된 부분을 인코딩하기 위해 동시에 사용될 수 있다. 다수의 인코더들을 동시에 사용하는 것은 실시간 또는 거의 실시간 스트리밍이 지원될 때 특히 유용할 수 있다.The content delivery system 104 includes an encoding device 112 and a content streaming device / server 114. Encoding device 112 may comprise one or more encoders for encoding image data in accordance with the present invention, and in some embodiments thereof. The encoders can be used simultaneously to encode different parts of the scene and / or to encode the provided part of the scene to produce encoded versions with different data rates. Using multiple encoders at the same time can be particularly useful when real time or near real time streaming is supported.

콘텐트 스트리밍 디바이스(114)는, 예를 들면, 통신 네트워크(105)를 거쳐, 인코딩된 이미지 콘텐트를 하나 이상의 고객 디바이스들로 전달하기 위해 인코딩된 콘텐트를 스트리밍, 예를 들면, 송신하도록 구성된다. 네트워크(105)를 통해, 콘텐트 전달 시스템(104)은 정보를 전송하고 및/또는 통신 네트워크(105)를 횡단하는 링크(120)에 의해 도면에 도시되는 고객 구내들(106, 110)에 위치된 디바이스들과 정보를 교환할 수 있다.The content streaming device 114 is configured to stream, e.g., transmit, the encoded content over the communication network 105, for example, to deliver the encoded image content to one or more customer devices. Through the network 105, the content delivery system 104 may be located in a customer premises 106, 110 shown in the figure by a link 120 that transmits information and / or traverses the communication network 105 You can exchange information with devices.

인코딩 장치(112) 및 콘텐트 전달 서버(114)는 도 1 예에서 개별적인 물리적 디바이스들로서 도시되지만, 몇몇 실시예들에서 그들은 콘텐트를 인코딩 및 스트리밍하는 단일 디바이스로서 구현된다. 인코딩 프로세스는, 장면 부분의 왼쪽 및 오른쪽 눈 뷰들에 대응하는 정보가 3D 이미지 뷰잉이 지원될 수 있도록 인코딩된 이미지 데이터로 인코딩되고 그에 포함되는 3D, 예를 들면, 입체 영상, 이미지 인코딩 프로세스일 수 있다. 사용된 특정 인코딩 방법은 본 출원에 대해 중요하지 않고, 다양한 인코더들이 인코딩 장치(112)로서 사용되거나 인코딩 장치(112)를 구현하기 위해 사용될 수 있다.The encoding device 112 and the content delivery server 114 are shown as separate physical devices in the example of Figure 1, but in some embodiments they are implemented as a single device that encodes and streams the content. The encoding process may be a 3D, e.g., stereoscopic, image encoding process, encoded and embedded in the encoded image data so that the information corresponding to the left and right eye views of the scene portion may be supported by the 3D image viewing . The particular encoding method used is not critical to the present application and various encoders may be used as the encoding device 112 or to implement the encoding device 112. [

각각의 고객 구내(106, 110)는 콘텐트 스트리밍 디바이스(114)에 의해 스트리밍된 이미징 콘텐트를 디코딩 및 재생/디스플레이하기 위해 사용된 복수의 디바이스들/플레이어들, 예를 들면, 재생 시스템들을 포함할 수 있다. 고객 구내 1(106)는 디스플레이 디바이스(124)에 결합된 디코딩 장치/재생 디바이스(122)를 포함하고, 고객 구내 N(110)은 디스플레이 디바이스(128)에 결합된 디코딩 장치/재생 디바이스(126)를 포함한다. 몇몇 실시예들에서, 디스플레이 디바이스들(124, 128)은 헤드 마운트 입체 영상 디스플레이 디바이스들이다. 몇몇 실시예들에서, 재생 디바이스(122/126) 및 헤드 마운트 디바이스(124/128)는 함께 재생 시스템을 형성한다.Each customer premise 106,110 may include a plurality of devices / players, e.g., playback systems, used to decode and play back / display the streamed imaging content by the content streaming device 114 have. Customer premise 1 106 includes a decoding device / playback device 122 coupled to display device 124 and customer premise N 110 includes a decoding device / playback device 126 coupled to display device 128. [ . In some embodiments, the display devices 124,128 are head-mounted stereoscopic image display devices. In some embodiments, the playback device 122/126 and head mount device 124/128 together form a playback system.

다양한 실시예들에서, 디코딩 장치(122, 126)는 대응하는 디스플레이 디바이스들(124, 128)상에 이미징 콘텐트를 나타낸다. 디코딩 장치/플레이어들(122, 126)은 디코딩된 콘텐트를 사용하여 이미징 콘텐트를 생성하는 콘텐트 전달 시스템(104)으로부터 수신된 이미징 콘텐트를 디코딩할 수 있고 디스플레이 디바이스들(124, 128)상에 이미징 콘텐트, 예를 들면, 3D 이미지 콘텐트를 렌더링할 수 있는 디바이스들일 수 있다. 디코딩 장치/재생 디바이스들(122, 126) 중 어느 하나는 도 8에 도시된 디코딩 장치/재생 디바이스(800)로서 사용될 수 있다. 도 8 및 도 19에 도시된 것과 같은 시스템/재생 디바이스는 디코딩 장치/재생 디바이스들(122, 126) 중 어느 하나로서 사용될 수 있다.In various embodiments, the decoding device 122, 126 represents the imaging content on the corresponding display devices 124, 128. The decoding device / players 122, 126 may decode the received imaging content from the content delivery system 104 that generates the imaging content using the decoded content and may provide the imaging content 124, For example, devices capable of rendering 3D image content. Either decoding device / playback devices 122, 126 may be used as the decoding device / playback device 800 shown in FIG. A system / playback device such as that shown in Figures 8 and 19 may be used as either of the decoding device / playback devices 122, 126.

도 2a는 분할되지 않은 일 예시적인 입체 영상 장면(200), 예를 들면, 풀 360도 입체 영상 장면을 도시한다. 입체 영상 장면은 단일 비디오 캡처 플랫폼 또는 카메라 마운트상에 종종 장착된, 다수의 카메라들, 예를 들면, 카메라들로부터 캡처된 이미지 데이터를 조합한 결과일 수 있고, 일반적으로 그러한 결과이다.FIG. 2A illustrates an exemplary, non-segmented, stereoscopic image 200, for example, a full 360 degree stereoscopic view. A stereoscopic image scene may be the result of, and is generally the result of, combining a plurality of cameras, e.g., image data captured from cameras, often mounted on a single video capture platform or camera mount.

도 2b는 예시적인 입체 영상 장면(200)의 분할된 버전(250)을 도시하고, 장면은 3(N=3) 개의 예시적인 부분들, 예를 들면, 일 예시적인 실시예에 따라 정면 180도 부분, 왼쪽 후방 90도 부분 및 오른쪽 후반 90도 부분으로 분할된다.Figure 2B illustrates a partitioned version 250 of an exemplary stereoscopic image scene 200 in which the scene is divided into 3 (N = 3) exemplary portions, for example, 180 degrees front according to one exemplary embodiment The left rear 90 degree portion, and the right second half 90 degree portion.

도 2c는 일 예시적인 실시예에 따라 4(N=4) 개의 부분들로 분할된 예시적인 입체 영상 장면(200)의 다른 분할된 버전(280)을 도시한다.FIG. 2C illustrates another divided version 280 of an exemplary stereoscopic image scene 200 divided into 4 (N = 4) portions according to one exemplary embodiment.

도 2b 및 도 2c는 두 개의 예시적인 부분들을 도시하지만, 이는 다른 분할들이 가능하다는 것이 이해되어야 한다. 예를 들면, 장면(200)은 12(n=12) 개의 30도 부분들로 분할될 수 있다. 하나의 이러한 실시예에서, 각각의 부분을 개별적으로 인코딩하는 것보다, 다수의 부분들이 함께 그룹핑되고 그룹으로서 인코딩된다. 부분들의 상이한 그룹들이, 장면의 총 각도들에 의해 동일하지만 사용자의 머리 위치, 예를 들면, 0도 내지 360도의 범위상에 측정된 뷰잉각에 의존하여 스트리밍될 수 있는 이미지의 상이한 부분들에 대응하는 각각의 그룹의 크기를 갖고 인코딩되어 사용자에게 스트리밍될 수 있다.2B and 2C illustrate two exemplary portions, but it should be understood that other portions are possible. For example, the scene 200 may be divided into 12 (n = 12) 30 degree parts. In one such embodiment, rather than individually encoding each portion, multiple portions are grouped together and encoded as a group. Different groups of parts are corresponding to different parts of the image that can be streamed, depending on the viewing angle measured on the user's head position, e.g., a range of 0 degrees to 360 degrees, by the total angles of the scene And may be encoded and streamed to the user.

도 3은 일 예시적인 실시예에 따라 일 예시적인 360도 입체 영상 장면을 인코딩하는 일 예시적인 프로세스를 도시한다. 도 3에 도시된 방법(300)에 대한 입력은, 예를 들면, 장면의 360도 뷰를 캡처하도록 구성된 복수의 카메라들에 의해 캡처된 360도 입체 영상 이미지 데이터를 포함한다. 입체 영상 이미지 데이터, 예를 들면, 입체 영상 비디오는 다양한 알려진 포맷들 중 어느 하나일 수 있고, 대부분의 실시예들에서, 3D 경험을 허용하기 위해 사용된 왼쪽 및 오른쪽 눈 이미지 데이터를 포함한다. 방법들은 입체 영상 비디오에 특히 적합하지만, 여기에 기술된 기술들 및 방법들은 또한 예를 들면, 360도 또는 작은 장면 영역의 2D 이미지들에 적용될 수 있다.FIG. 3 illustrates an exemplary process for encoding an exemplary 360 degree stereoscopic scene in accordance with one exemplary embodiment. The input to the method 300 shown in Figure 3 includes, for example, 360 degree stereoscopic image data captured by a plurality of cameras configured to capture a 360 degree view of the scene. Stereoscopic image data, for example, stereoscopic video, can be any of a variety of known formats and, in most embodiments, includes left and right eye image data used to allow a 3D experience. Although the methods are particularly suitable for stereoscopic video, the techniques and methods described herein may also be applied to 2D images of, for example, a 360 degree or smaller scene area.

단계(304)에서, 장면 데이터(302)는 상이한 장면 영역들, 예를 들면, 상이한 뷰잉 방향들에 대응하는 N 개의 장면 영역들에 대응하는 데이터로 분할된다. 예를 들면, 도 2b에 도시된 것과 같은 일 실시예에서, 360도 장면 영역은 90도 부분에 대응하는 왼쪽 후방 부분, 정면 180도 부분, 및 오른쪽 후방 90도 부분의 세 개의 부분들로 분할된다. 상이한 부분들은 상이한 카메라들에 의해 캡처되었을 수 있지만, 이는 반드시는 아니고, 실제로 360도 장면은 도 2b 및 도 2c에 도시되는 N 개의 장면 영역들로 나눠지기 전에 다수의 카메라들로부터 캡처된 데이터로부터 편집될 수 있다.In step 304, the scene data 302 is divided into data corresponding to different scene regions, for example, N scene regions corresponding to different viewing directions. For example, in one embodiment, such as that shown in FIG. 2B, the 360 degree scene region is divided into three portions: a left rear portion corresponding to a 90 degree portion, a front 180 degree portion, and a right rear 90 degree portion . The different parts may have been captured by different cameras, but this is not necessarily the case, and indeed the 360 degree scene is edited from the data captured from multiple cameras before being divided into the N scene areas shown in Figures 2b and 2c .

단계(306)에서, 상이한 장면 부분들에 대응하는 데이터가 본 발명에 따라 인코딩된다. 몇몇 실시예들에서, 각각의 장면 부분은 각각의 부분에 대해 다수의 가능한 비트 레이트 스트림들을 지원하기 위해 다수의 인코더들에 의해 독립적으로 인코딩된다. 단계(308)에서, 인코딩된 장면 부분들은, 예를 들면, 고객 재생 디바이스들로 스트리밍을 위해 콘텐트 전달 시스템(104)의 콘텐트 전달 서버(114)에 저장된다.In step 306, data corresponding to different scene portions is encoded in accordance with the present invention. In some embodiments, each scene portion is independently encoded by a plurality of encoders to support a plurality of possible bitrate streams for each portion. In step 308, the encoded scene portions are stored in the content delivery server 114 of the content delivery system 104 for streaming to, for example, customer playback devices.

도 4는 입력 이미지 부분, 예를 들면, 장면의 180도 정면 부분이 동일한 입력 이미지 부분의 상이한 인코딩된 버전들을 생성하기 위해 다양한 인코더들을 사용하여 인코딩되는 방법을 보여주는 일 예를 도시하는 도면(400)이다.4 is an illustration 400 illustrating an example of how an input image portion, e.g., a 180 degree frontal portion of a scene, is encoded using various encoders to produce different encoded versions of the same input image portion, to be.

도면(400)에 도시된 바와 같이, 입력 장면 부분(402), 예를 들면, 장면의 180도 정면 부분은 인코딩을 위해 복수의 인코더들에 공급된다. 상기 예에서, 이미지 콘텐트의 상이한 데이터 레이트 스트림들을 지원하기 위해 인코딩된 데이터를 생성하기 위해 상이한 해상도들을 갖고 상이한 인코딩 기술들을 사용하여 입력 데이터를 인코딩하는 K 개의 상이한 인코더들이 존재한다. 복수의 K 개의 인코더들은 고화질(HD) 인코더1(404), 표준 화질(SD) 인코더2(406), 감소된 프레임 레이트 SD 인코더3(408), ..., 및 고압축 감소된 프레임 레이트 SD 인코더K(410)를 포함한다.As shown in the diagram 400, the input scene portion 402, e.g., the 180 degree frontal portion of the scene, is supplied to a plurality of encoders for encoding. In this example, there are K different encoders that encode input data using different encoding techniques with different resolutions to produce encoded data to support different data rate streams of image content. The plurality of K encoders may include a high definition (HD) encoder 1 404, a standard definition (SD) encoder 2 406, a reduced frame rate SD encoder 3 408, ..., K (410).

HD 인코더1(404)는 고 비트 레이트 HD 인코딩된 이미지(412)를 생성하기 위해 풀 고화질(HD) 인코딩을 수행하도록 구성된다. SD 인코더2(406)는 입력 이미지의 SD 인코딩된 버전2(414)을 생성하기 위해 저해상도 표준 화질 인코딩을 수행하도록 구성된다. 감소된 프레임 레이트 SD 인코더3(408)는 입력 이미지의 감소된 레이트 SD 인코딩된 버전3(416)을 생성하기 위해 감소된 프레임 레이트 저해상도 SD 인코딩을 수행하도록 구성된다. 감소된 프레임 레이트는 예를 들면, 인코딩을 위해 SD 인코더2(406)에 의해 사용된 프레임 레이트의 절반일 수 있다. 고압축 감소 프레임 레이트 SD 인코더K(410)는 입력 이미지의 고압축된 감소 레이트 SD 인코딩 버전K(420)을 생성하기 위해 고압축에 의해 감소된 프레임 레이트 저해상도 SD 인코딩을 수행하도록 구성된다.HD encoder 1 404 is configured to perform full high definition (HD) encoding to produce a high bit rate HD encoded image 412. SD encoder 2 406 is configured to perform low resolution standard image quality encoding to generate SD encoded version 2 414 of the input image. Reduced frame rate SD encoder 3 408 is configured to perform reduced frame rate low resolution SD encoding to produce a reduced rate SD encoded version 3 (416) of the input image. The reduced frame rate may be, for example, half the frame rate used by SD encoder 2 406 for encoding. The high compression reduction frame rate SD encoder K 410 is configured to perform reduced frame rate low resolution SD encoding by a high compression to produce a highly compressed reduced rate SD encoding version K 420 of the input image.

따라서, 공간적 및/또는 시간적 해상도의 제어가 상이한 데이터 레이트들의 데이터 스트림들을 생성하기 위해 사용될 수 있고, 데이터 압축의 레벨과 같은 다른 인코더 설정들의 제어는 또한 단독으로 사용될 수 있거나, 하나 이상의 바람직한 데이터 레이트들에 의해 장면 부분에 대응하는 데이터 스트림들을 생성하기 위해 공간적 및/또는 시간적 해상도의 제어에 추가하여 사용될 수 있다는 것이 이해되어야 한다.Thus, control of spatial and / or temporal resolution may be used to generate data streams of different data rates, and control of other encoder settings, such as level of data compression, may also be used alone, May be used in addition to spatial and / or temporal resolution control to produce data streams corresponding to the scene portion by the user.

도 5는 3 개의 예시적인 부분들로 분할되는 입력 입체 영상 장면의 저장된 인코딩된 부분들(500)을 도시한다. 저장된 인코딩된 부분들은, 예를 들면, 메모리의 데이터/정보로서, 콘텐트 전달 시스템(104)에 저장될 수 있다. 입체 영상 장면의 저장된 인코딩된 부분들(500)은 인코딩된 부분들의 3 개의 상이한 세트들을 포함하고, 각각의 부분은 상이한 장면 부분에 대응하고, 각각의 세트는 대응하는 장면 부분의 복수의 상이한 인코딩된 버전들을 포함한다. 각각의 인코딩된 버전은 인코딩된 비디오 데이터의 버전이고 따라서 코딩된 다수의 프레임들을 나타낸다. 비디오인 각각의 인코딩된 버전(510, 512, 516)이 다수의 시간 기간들에 대응하고, 스트리밍할 때, 부분, 예를 들면, 재생되는 시간 기간에 대응하는 프레임들이 송신 목적들을 위해 사용되는 것이 이해되어야 한다.FIG. 5 shows stored encoded portions 500 of an input stereoscopic scene divided into three exemplary portions. The stored encoded portions may be stored in the content delivery system 104, for example, as data / information in the memory. The stored encoded portions 500 of the stereoscopic image scene include three different sets of encoded portions, each portion corresponding to a different scene portion, each set comprising a plurality of different encoded < RTI ID = 0.0 > Versions. Each encoded version is a version of the encoded video data and thus represents a plurality of coded frames. When each encoded version 510, 512, 516 of the video corresponds to a plurality of time periods and when streaming, portions corresponding to time periods to be reproduced, for example, are used for transmission purposes Should be understood.

도 4에 관하여 상기에 도시 및 논의된 바와 같이, 각각의 장면 부분, 예를 들면, 정면, 후방 장면 부분들은 동일한 장면 부분의 K 개의 상이한 버전들을 생성하기 위해 복수의 상이한 인코더들을 사용하여 인코딩될 수 있다. 제공된 입력 장면에 대응하는 각각의 인코더의 출력들은 함께 하나의 세트로서 그룹핑되고 저장된다. 인코딩된 장면 부분들(502)의 제 1 세트는 정면 180도 장면 부분에 대응하고, 정면 180도 장면의 인코딩 버전1(510), 정면 180도 장면의 인코딩된 버전2(512), ..., 및 정면 180도 장면의 인코딩된 버전K(516)을 포함한다. 인코딩된 장면 부분들(504)의 제 2 세트는 장면 부분2, 예를 들면, 90도 왼쪽 후방 장면 부분에 대응하고, 90도 왼쪽 후방 장면 부분의 인코딩된 버전1(520), 90도 왼쪽 후방 장면 부분의 인코딩된 버전2(522), ..., 및 90도 왼쪽 후방 장면 부분의 인코딩된 버전K(526)을 포함한다. 유사하게 인코딩된 장면 부분들(506)의 제 3 세트는 장면 부분3, 예를 들면, 90도 오른쪽 후방 장면 부분에 대응하고, 90도 오른쪽 후방 장면 부분의 인코딩된 버전1(530), 90도 오른쪽 후방 장면 부분의 인코딩된 버전2(532), ..., 및 90도 오른쪽 후방 장면 부분의 인코딩된 버전K(536)를 포함한다.As shown and discussed above with respect to FIG. 4, each scene portion, e.g., front and back, may be encoded using a plurality of different encoders to produce K different versions of the same scene portion have. The outputs of the respective encoders corresponding to the input scene provided are grouped together and stored as one set together. The first set of encoded scene portions 502 corresponds to a frontal 180 degree scene portion and includes encoded version 1 510 of a frontal 180 degree scene, encoded version 2 512 of a frontal 180 degree scene, And an encoded version K 516 of a frontal 180 degree scene. The second set of encoded scene portions 504 corresponds to a scene portion 2, e.g., a 90 degree left rear scene portion, encoded version 1 520 of a 90 degree left rear scene portion, An encoded version 2 522 of the scene portion, ..., and an encoded version K 526 of the left rear scene portion of 90 degrees. The third set of similarly encoded scene portions 506 corresponds to the scene portion 3, e.g., a 90 degree right rear scene portion, and the encoded version 1 530, 90 degrees An encoded version 2 (532) of the right rear scene portion, and an encoded version K 536 of the right rear scene portion of 90 degrees.

360도 장면의 다양한 상이한 저장된 인코딩된 부분들은 고객 재생 디바이스들로 전송하기 위해 다양한 상이한 비트 레이트 스트림들을 생성하기 위해 사용될 수 있다. The various different stored encoded portions of the 360 degree scene may be used to generate various different bitrate streams for transmission to customer playback devices.

도 6은 일 예시적인 실시예에 따라 이미지 콘텐트를 제공하는 일 예시적인 방법의 단계들을 도시하는 플로차트(600)이다. 플로차트(600)의 방법은 도 1에 도시된 캡처링 시스템을 사용하여 몇몇 실시예들에서 구현된다.FIG. 6 is a flowchart 600 illustrating steps of an exemplary method of providing image content in accordance with an exemplary embodiment. The method of flowchart 600 is implemented in some embodiments using the capturing system shown in FIG.

방법은, 예를 들면, 전력이 공급되고 초기화되는 전달 시스템에 의해 단계(602)에서 시작한다. 방법은 시작 단계(602)로부터 단계들(604)로 진행한다. 단계(604)에서, 콘텐트 전달 시스템(104), 예를 들면, 시스템(104) 내 서버(11)는 콘텐트에 대한 요청, 예를 들면, 이전에 인코딩된 프로그램, 또는 몇몇 경우들에서, 실시간 또는 거의 실시간으로, 예를 들면, 이벤트가 여전히 진행중인 동안, 인코딩 및 스트리밍되는 실황 이벤트에 대한 요청을 수신한다.The method starts in step 602, for example, by a delivery system that is powered and initialized. The method proceeds from start step 602 to steps 604. At step 604, the content delivery system 104, for example, the server 11 in the system 104, may request a request for content, e.g., a previously encoded program, or in some cases, And receives a request for a live event to be encoded and streamed in near real time, for example, while the event is still pending.

요청에 응답하여, 단계(606)에서, 서버(114)는 전달을 위해 이용 가능한 데이터 레이트를 결정한다. 데이터 레이트는 지원된 데이터 레이트들을 나타내는 요청에 포함된 정보로부터 및/또는 콘텐트를 요청하는 디바이스로 전달하기 위해 이용 가능한 최대 대역폭을 나타내는 네트워크 정보와 같은 다른 정보로부터 결정될 수 있다. 이해되는 바와 같이, 이용 가능한 데이터 레이트는 네트워크 부하에 따라 변할 수 있고, 콘텐트가 스트리밍되는 시간 기간 동안 변할 수 있다. 변경들은 사용자 디바이스에 의해 보고되거나 패킷들이 드롭되거나 네트워크가 사용되는 데이터 레이트를 지원하는 것에 어려움을 갖는 것 및 현재 이용 가능한 데이터 레이트가 사용을 위해 이용 가능하다고 결정된 원래의 데이터 레이트보다 낮다는 것을 나타내는 바람직한 시간량을 넘어서 지연된다는 것을 나타내는 메시지들 또는 신호들로부터 검출될 수 있다.In response to the request, at step 606, the server 114 determines the data rate available for delivery. The data rate may be determined from information contained in the request indicating supported data rates and / or other information such as network information indicating the maximum bandwidth available for delivery to the device requesting the content. As will be appreciated, the available data rate may vary depending on the network load and may vary over a period of time during which the content is streamed. Changes are reported by the user device or are difficult to support the data rate at which the packets are dropped or the network is used and that the current available data rate is lower than the original data rate determined to be available for use. May be detected from messages or signals indicating that the amount of time is delayed beyond the amount of time.

동작은 단계(606)로부터 단계(608)로 진행하고, 콘텐트를 위한 요청이 초기화되는 사용자 디바이스의 현재 머리 위치, 예를 들면, 요청 시간에서 현재 머리 위치는 0도 위치이다. 0도 또는 전방을 바라보는 위치는 재초기화가 발생할 것을 시그널링하는 재생 디바이스에 의해 사용자에 의해 몇몇 실시예들에서 재초기화될 수 있다. 예를 들면, 원래의 머리 위치에 관하여, 시간에 걸쳐 사용자의 머리 위치 및/또는 사용자의 머리 위치의 변경들은 콘텐트 전달 시스템(104)에 보고되고 갱신 위치는 이하에 논의되는 바와 같이 콘텐트 전달 결정들을 수행하기 위해 사용된다.Operation proceeds from step 606 to step 608 where the current head position of the user device from which the request for content is initiated, e.g., the current head position at the request time, is 0 degrees. The zero degree or forward facing position may be reinitialized in some embodiments by the user by the playback device signaling that reinitialization will occur. For example, with respect to the original head position, changes in the user's head position and / or the user's head position over time are reported to the content delivery system 104 and the update position is determined by the content delivery decisions It is used to perform.

동작은 단계(608)로부터 단계(610)로 진행하고, 요청된 콘텐트에 대응하는 360도 장면의 부분들이 재생 디바이스를 초기화하기 위해 전송된다. 적어도 몇몇 실시예들에서, 초기화는 장면 데이터의 풀 360도 세트, 예를 들면, N 개의 부분들을 전송하는 것을 포함하고, 360도 장면은 N 개의 부분들로 나눠진다.Operation proceeds from step 608 to step 610, where portions of the 360 degree scene corresponding to the requested content are transmitted to initialize the playback device. In at least some embodiments, the initialization includes transmitting a full 360 degree set of scene data, e.g., N portions, and the 360 degree scene is divided into N portions.

단계(610)에서 초기화의 결과로서, 재생 디바이스는 360도 가능한 뷰잉 영역의 상이한 부분들의 각각에 대응하는 장면 데이터를 가질 것이다. 따라서, 재생 디바이스의 사용자가 갑자기 후방으로 몸을 돌리는 경우, 사용자가 그의 머리를 돌리기 전에 보고 있었던 부분만큼 최신이 아닐지라도, 적어도 일부 데이터가 사용자에게 디스플레이하기 위해 이용 가능할 것이다.As a result of the initialization in step 610, the playback device will have scene data corresponding to each of the different portions of the 360-viewable viewing area. Thus, if a user of the playback device suddenly turns rearward, at least some data will be available for display to the user, even if the user is not as recent as the portion he or she was watching before turning his head.

동작은 단계(610)로부터 단계들(612, 622)로 진행한다. 단계(622)는 재생 디바이스가 적어도 한번의 모든 전체 갱신 기간에 전체 360도 장면의 갱신된 버전을 수신하는 것을 확인하기 위해 사용되는 전체 장면 갱신 경로에 대응한다. 단계(610)에서 초기화되면, 전체 갱신 프로세스는 미리 결정된 시간 기간 동안 대기 단계(622)에서 지연된다. 이후 단계(624)에서, 360도 장면 갱신이 수행된다. 점선 화살표(613)는 장면 부분들이 단계(622)에 대응하는 지원 기간 동안 재생 디바이스로 전달되는 정보의 전달을 나타낸다. 단계(624)에서, 전체 360도 장면이 송신될 수 있다. 그러나, 몇몇 실시예들에서, 모든 부분들이 단계(624)에서 송신되지는 않는다. 대기 기간(622) 동안 갱신된 장면의 부분들은, 그들이 사용자의 머리 위치에 기초하여 장면의 적어도 몇몇 부분들을 전송하는 정규 스트리밍 프로세스들 동안 이미 리프레시되기 때문에, 몇몇 실시예들에서 단계(624)에서 수행된 갱신으로부터 생략된다.Operation proceeds from step 610 to steps 612 and 622. [ Step 622 corresponds to the full scene update path used to ensure that the playback device receives an updated version of the entire 360 degree scene in at least one full update period at least. Once initialized in step 610, the entire update process is delayed in the wait step 622 for a predetermined period of time. Thereafter, in step 624, a 360 degree scene update is performed. The dashed arrows 613 represent the transfer of information that the scene portions are transferred to the playback device during the support period corresponding to step 622. [ At step 624, a full 360 degree scene may be transmitted. However, in some embodiments, not all of the parts are transmitted in step 624. Portions of the scene that have been updated during the waiting period 622 are performed in step 624 in some embodiments because they are already being refreshed during normal streaming processes that transmit at least some portions of the scene based on the user & Is omitted from the updated update.

동작은 단계(624)로부터 다시 대기 단계(622)로 진행하고, 대기는 다음 전체 갱신 전에 수행된다. 단계(622)에서 사용된 대기 기간을 조정함으로써 상이한 전체 리프레시 레이트들이 지원될 수 있다는 것이 이해되어야 한다. 몇몇 실시예들에서, 콘텐트 서버는 제공되는 장면 콘텐트의 형태에 기초하여 대기 기간을 선택하고, 그에 따른 전체 기준 기간이 제공된다. 주요 동작이 정면을 마주보는 영역에 존재하고 리프레시를 위한 이유들 중 하나가 실외 조명 상태들에서 가능한 변경들인 스포츠 경기들의 경우에, 대기 기간은 비교적 길 수 있고, 예를 들면, 대략 일 분 또는 수 분일 수 있다. 상이한 노래들이 연주되기 때문에 관객의 동작 및 활동이 자주 변경될 수 있는 락 콘서트의 경우, 사용자가 몸을 돌려서 관객들의 반응을 보기를 원할 수 있고 정면 무대 뷰잉 영역에서 일어나고 있는 것에 더하여 관객에서 일어나고 있는 것에 대해 느끼기를 원할 수 있기 때문에, 전체 리프레시 레이트가 스포츠 경기들보다 높을 수 있고, 때때로 그보다 높다.Operation proceeds from step 624 back to waiting step 622, and the wait is performed before the next full update. It should be appreciated that different overall refresh rates may be supported by adjusting the wait period used in step 622. [ In some embodiments, the content server selects a waiting period based on the type of scene content provided and a corresponding overall reference period is provided. In the case of sports events where the main operation is in the face-to-face area and one of the reasons for the refresh is possible changes in the outdoor lighting conditions, the waiting period may be relatively long, for example, Lt; / RTI > In the case of a rock concert in which the movement and activity of the audience can be changed frequently because different songs are played, the user may want to turn around and see the reaction of the audience and in addition to what is happening in the front stage viewing area, , The overall refresh rate may be higher than sports games, and sometimes higher.

몇몇 실시예들에서, 전체 기준 기간은 스트리밍되는 표현의 부분의 함수로서 변경된다. 예를 들면, 스포츠 경기의 게임 부분 동안, 전체 리프레시 레이트는 비교적 낮을 수 있지만, 경기장에 있거나 재생 디바이스를 통해 경기를 보고 있는 사람이 전방 주요 영역으로부터 그의 머리를 돌릴 더 많은 가능성이 존재하는, 후반 터치다운 순간 동안 또는 타임 아웃 또는 인터미션 동안, 전체 리프레시 레이트는 대기, 예를 들면, 단계(622)에서 사용된 리프레시 기간 제어를 감소시킴으로써 증가될 수 있고, 몇몇 실시예에서, 증가된다.In some embodiments, the entire baseline period is changed as a function of the portion of the representation being streamed. For example, during the game portion of a sporting event, the overall refresh rate may be relatively low, but the latter touch, where there is a greater possibility that the person in the arena or watching the game through the playback device will turn his head from the forward main area During a down moment, or during a timeout or intermission, the overall refresh rate may be increased by reducing the wait, e.g., the refresh period control used in step 622, and in some embodiments increased.

전체 리프레시 프로세스가 단계(622) 및 단계(624)를 참조하여 기술되었지만, 장면의 부분들의 정규 공급이 기술된다. 이해되는 바와 같이, 장면 또는 장면 부분의 정규 리프레시는 적어도 하나의 부분에 대해, 지원된 비디오 프레임 레이트에서 허용하는 데이트 레이트로 발생할 것이다. 따라서, 적어도 하나의 프레임 부분에 관하여, 예를 들면, 사용자 머리가 마주보는 것으로 나타내지는 부분은 이용 가능한 데이터 레이트가 충분한 것을 가정하는 풀 비디오 스트리밍 프레임 레이트로 공급될 것이다.Although a full refresh process has been described with reference to steps 622 and 624, a regular supply of portions of a scene is described. As will be appreciated, the normal refresh of the scene or scene portion will occur at a rate of data allowed at a supported video frame rate, for at least one portion. Thus, with respect to at least one frame portion, for example, the portion indicated by the user's head facing will be supplied at a full video streaming frame rate assuming that the available data rate is sufficient.

단계(612)에서, 장면 부분들은 사용자의, 나타낸 머리 위치, 예를 들며, 뷰잉 각에 기초하여 제공되도록 선택된다. 선택된 부분들은, 예를 들면, 주기적으로 재생 디바이스로 송신, 예를 들면, 스트리밍된다. 부분들에 대응하는 데이터가 스트리밍되는 레이트는 몇몇 실시예들에서 비디오 프레임 레이트에 의존한다. 예를 들면, 적어도 하나의 선택된 부분은 지원되는 전체 프레임 레이트에서 스트리밍될 것이다. 적어도 하나의 장면 부분이 단계(612)에서 선택되지만, 보통 다수의 장면 부분들, 예를 들면, 사용자가 마주보고 있는 장면 부분뿐만 아니라 다음으로 가장 가까운 장면 부분이 선택된다. 이용 가능한 데이터 레이트가 다수의 프레임 부분들의 전달을 지원하기에 충분한 경우, 추가의 장면 부분들이 또한 선택 및 공급될 수 있다.At step 612, scene portions are selected to be provided based on the user's, indicated head position, e.g., viewing angle. The selected portions are periodically transmitted, e. G., Streamed, to the playback device. The rate at which the data corresponding to the portions are streamed depends on the video frame rate in some embodiments. For example, at least one selected portion may be streamed at a supported full frame rate. At least one scene portion is selected in step 612, but usually a plurality of scene portions, e.g., the scene portion that the user is facing, as well as the next closest scene portion, are selected. If the available data rate is sufficient to support delivery of multiple frame portions, additional scene portions may also be selected and supplied.

스트리밍될 장면 부분들이 단계(612)에서 선택된 후, 동작은 단계(614)로 진행하고, 선택된 스트림 부분들의 인코딩된 버전은, 예를 들면, 사용자의 뷰잉 위치 및 이용 가능한 데이터 레이트에 기초하여, 선택된다. 예를 들면, 현재 보고된 머리 위치에 의해 나타내진 사용자가 마주보고 있는 장면 부분의 풀 레이트 고해상도 버전이 스트리밍될 수 있고 일반적으로 스트리밍될 것이다. 현재 머리 위치의 왼쪽 및/또는 오른쪽에 대한 하나 이상의 장면 부분들이 더 낮은 해상도로서, 더 낮은 시간 레이트로서 또는 현재 보여지지 않는 장면 영역을 송신하기 위해 요구되는 대역폭의 양을 감소시키는 다른 인코딩 장치를 사용하여 스트리밍되도록 선택될 수 있다. 인접한 장면 부분의 인코딩된 버전의 선택은 현재 보여지는 장면 부분의 고품질 버전이 송신된 후 대역폭 리밍의 양에 의존할 것이다. 현재 보여지지 않는 장면 부분들이 더 낮은 해상도 인코딩 버전으로서 또는 프레임들 사이에 더 큰 시간적 거리를 갖는 인코딩된 버전으로서 전송될 수 있지만, 이용 가능한 대역폭이 충분히 존재하는 경우, 풀 해상도 고품질 버전은 주기적으로 또는 자주 전송된다.After the scene portions to be streamed are selected in step 612, the operation proceeds to step 614 and the encoded version of the selected stream portions is selected based on, for example, the viewing position of the user and the available data rate, do. For example, a full-rate high-resolution version of the scene portion facing the user represented by the currently reported head position may be streamed and generally streamed. One or more scene portions to the left and / or right of the current head position may use a lower resolution, another encoding device that reduces the amount of bandwidth required to transmit a scene region that is not currently viewed or at a lower time rate And may be selected to be streamed. The selection of the encoded version of the adjacent scene portion will depend on the amount of bandwidth reaming after the high quality version of the scene portion currently being viewed is transmitted. Although not currently visible scene portions can be transmitted as a lower resolution encoding version or as an encoded version with a greater temporal distance between frames, if the available bandwidth is sufficient, the full resolution high quality version may be transmitted periodically or It is often transmitted.

단계(616)에서, 선택된 장면 부분들의 선택된 인코딩된 버전들은 콘텐트를 요청한 재생 디바이스로 전송된다. 따라서, 단계(616)에서, 하나 이상의 부분들에 대응하는 인코딩된 콘텐트, 예를 들면, 다수의 연속하는 프레임들에 대응하는 입체 영상 비디오 콘텐트가 재생 디바이스로 스트리밍된다.At step 616, the selected encoded versions of the selected scene portions are transmitted to the playback device that requested the content. Thus, at step 616, the encoded content corresponding to one or more portions, e.g., stereoscopic video content corresponding to a plurality of consecutive frames, is streamed to the playback device.

동작은 단계(616)로부터 단계(618)로 진행하고 사용자의 현재 머리 위치를 나타내는 정보가 수신된다. 이러한 정보는 주기적으로 및/또는 머리 위치의 변경을 검출하는 것에 응답하여 재생 디바이스로부터 전송될 수 있다. 머리 위치의 변경들에 더하여, 이용 가능한 데이터 레이트에서 변화들은 콘텐트가 스트리밍되는 것에 영향을 끼칠 수 있다. 동작은 단계(618)로부터 단계(620)로 진행하고, 재생 디바이스로 콘텐트 전달을 위해 사용될 수 있는 현재 데이터 레이트의 결정이 수행된다. 따라서, 콘텐트 전달 시스템은 요청 디바이스에 대한 스트리밍을 지원하기 위해 이용 가능한 대역폭의 양의 변화들을 검출할 수 있다.Operation proceeds from step 616 to step 618 and information indicating the current head position of the user is received. This information may be periodically and / or transmitted from the playback device in response to detecting a change in head position. In addition to changes in head position, changes in the available data rate may affect the content being streamed. Operation proceeds from step 618 to step 620 and a determination of the current data rate that may be used for content delivery to the playback device is performed. Thus, the content delivery system can detect changes in the amount of bandwidth available to support streaming to the requesting device.

동작은 단계(620)로부터 단계(612)로 진행하고, 콘텐트가 완전히 전달될 때까지, 예를 들면, 프로그램 또는 이벤트가 종료할 때까지, 또는 콘텐트를 요청한 재생 디바이스로부터 세션이 종료된 것을 나타내는 신호가 수신되거나, 재생 디바이스가 콘텐트 서버(114)와 더 이상 통신하지 않는다는 것을 나타내는 머리 위치 갱신과 같은 재생 디바이스로부터 예상된 신호의 수신에 대한 실패가 검출될 때까지 스트리밍을 계속한다.Operation proceeds from step 620 to step 612 where a signal indicating that the session is terminated, for example, until the program or event is terminated, or from the playback device that requested the content, And continues to stream until a failure to receive the expected signal from the playback device, such as a head position update, indicating that the playback device is no longer communicating with the content server 114 is detected.

상기에 기술된 방식으로 전달된 장면 데이터로부터, 재생 디바이스는 사용자가 그의 머리를 빠르게 돌리는 경우를 디스플레이하기 위해 이용 가능한 각각의 장면 부분에 대응하는 적어도 몇몇 데이터를 가질 것이다. 많은 사람들에게 뷰잉 위치의 불편한 변경이기 때문에, 사용자들은 좀처럼 매우 짧은 시간 기간에 그들의 머리를 완전히 돌리지 않는다는 것이 이해되어야 한다. 따라서, 풀 360도 장면이 모든 시간에 송신되지 않을 수 있지만, 임의의 주어진 시간에 보여질 가장 많은 가능성이 있는 장면 부분(들)의 고품질 버전이 사용자에게 스트리밍되고 이용 가능하게 될 수 있다.From the scene data delivered in the manner described above, the playback device will have at least some data corresponding to each scene portion available to display when the user quickly turns his head. It should be understood that since many users are uncomfortable changes in viewing position, users rarely turn their heads completely over a very short period of time. Thus, a full 360 degree scene may not be transmitted at all times, but a high quality version of the scene portion (s) with the greatest likelihood of being shown at any given time may be streamed and made available to the user.

인코딩 프로세스는 장면의 N 개의 부분들이 각각의 개별적인 사용자에 대해 콘텐트를 개별적으로 인코딩해야 하지 않고 상이한 사용자들에게 상이하게 송신 및 처리되게 하기 때문에, 콘텐트 전달 시스템(104)은 다수의 동시에 발생하는 사용자들을 지원할 수 있다. 따라서, 다수의 병렬 인코더들은 스포츠 경기 또는 다른 이벤트들의 실시간 또는 거의 실시간 스트리밍을 허용하도록 실시간 인코딩을 지원하기 위해 사용될 수 있지만, 사용된 인코더들의 수는 콘텐트가 스트리밍되는 재생 디바이스들의 수보다 훨씬 적은 경향이 있다.Because the encoding process causes the N portions of the scene to be differently transmitted and processed to different users rather than having to separately encode the content for each individual user, the content delivery system 104 may include a plurality of concurrent users . Thus, multiple parallel encoders can be used to support real-time encoding to allow real-time or near-real-time streaming of sports events or other events, but the number of encoders used tends to be much less than the number of playback devices in which the content is streamed have.

콘텐트의 부분들은 360도 뷰에 대응하는 부분들로서 기술되지만, 장면들은 수직 크기를 또한 갖는 공간의 평탄한 버전을 나타낼 수 있고, 몇몇 실시예들에서 그를 나타낸다는 것이 이해되어야 한다. 재생 디바이스는 3D 환경, 예를 들면, 공간의 모델을 사용하여 장면 부분들을 맵핑하고, 수직 뷰잉 위치들에 대해 조정할 수 있다. 따라서, 본 출원에서 논의되는 360도는 사용자가 그의 뷰잉각을 왼쪽 또는 오른쪽으로 변경하면서 그의 주시 레벨을 유지하는 것처럼 수평에 관한 머리 위치를 말한다.It should be understood that while portions of content are described as portions corresponding to a 360 degree view, scenes may represent a flat version of the space also having a vertical size, and in some embodiments thereof. The playback device may map scene portions using a 3D environment, e.g., a model of space, and adjust for vertical viewing positions. Thus, the 360 degrees discussed in this application refers to the head position relative to the horizontal as if the user maintained his watch level while changing his viewing angle to left or right.

도 7은 본 발명의 특징들에 따라 콘텐트를 인코딩 및 스트리밍하기 위해 사용될 수 있는 인코딩 능력을 갖는 일 예시적인 콘텐트 전달 시스템(700)을 도시한다.FIG. 7 illustrates an exemplary content delivery system 700 having an encoding capability that can be used to encode and stream content in accordance with aspects of the present invention.

시스템은 본 발명의 특징들에 따라 인코딩, 저장, 및 송신 및/또는 콘텐트 출력을 수행하기 위해 사용될 수 있다. 몇몇 실시예들에서, 시스템(700) 또는 그 내부의 요소들은 도 6에 도시된 프로세스에 대응하는 동작을 수행한다. 콘텐트 전달 시스템(700)은 도 1의 시스템(104)으로서 사용될 수 있다. 도 7에 도시된 도시된 시스템은 콘텐트의 인코딩, 처리, 및 스트리밍을 위해 사용되지만, 시스템(700)은 또한 처리된 및 인코딩된 이미지 데이터를 운영자에게 디코딩하고 디스플레이하기 위한 능력을 포함할 수 있다는 것이 이해되어야 한다.The system may be used to perform encoding, storage, and transmission and / or content output according to aspects of the present invention. In some embodiments, the system 700 or elements within it perform operations corresponding to the process illustrated in FIG. The content delivery system 700 may be used as the system 104 of FIG. While the depicted system shown in FIG. 7 is used for encoding, processing, and streaming of content, system 700 may also include the ability to decode and display the processed and encoded image data to the operator Should be understood.

시스템(700)은 디스플레이(702), 입력 디바이스(704), 입력/출력(I/O) 인터페이스(706), 프로세서(708), 네트워크 인터페이스(710) 및 메모리(712)를 포함한다. 시스템(700)의 다양한 구성 요소들은 데이터가 시스템(700)의 구성 요소들 사이에 전달되게 하는 버스(709)를 통해 함께 결합된다.The system 700 includes a display 702, an input device 704, an input / output (I / O) interface 706, a processor 708, a network interface 710 and a memory 712. The various components of the system 700 are coupled together via a bus 709 that allows data to be transferred between the components of the system 700.

메모리(712)는 다양한 모듈들, 예를 들면, 프로세서(708)에 의해 실행될 때, 본 발명에 따라 분할, 인코딩, 저장, 및 스트리밍/송신 및/또는 출력 동작들을 구현하도록 시스템(700)을 제어하는 루틴들을 포함한다.Memory 712 may be used to control system 700 to implement partitioning, encoding, storage, and streaming / transmission and / or output operations in accordance with the present invention, when executed by various modules, ≪ / RTI >

메모리(712)는 다양한 모듈들, 예를 들면, 프로세서(708)에 의해 실행될 때, 본 발명에 따라 몰입형 입체 영상 비디오 획득, 인코딩, 저장, 및 송신 및/또는 출력 방법들을 구현하도록 컴퓨터 시스템(700)을 제어하는 루틴들을 포함한다. 메모리(712)는 제어 루틴들(714), 분할 모듈(716), 인코더(들)(718), 스트리밍 제어기(720), 수신된 입력 이미지들(732), 예를 들면, 장면의 360도 입체 영상 비디오, 인코딩된 장면 부분들(734), 및 타이밍 정보(736)를 포함한다. 몇몇 실시예들에서, 모듈들은 소프트웨어 모듈들로서 구현된다. 다른 실시예들에서, 모듈들은, 예를 들면, 모듈이 대응하는 기능을 수행하기 위한 회로로서 구현되는 각각의 모듈을 갖는 개별적인 회로들로서, 하드웨어에서 구현된다. 또 다른 실시예들에서, 모듈들은 소프트웨어 및 하드웨어의 조합을 사용하여 구현된다.The memory 712 may be implemented in a computer system (e.g., a computer system) to implement the immersion stereoscopic video acquisition, encoding, storage, and transmission and / or output methods in accordance with the present invention, 700). The memory 712 may include control routines 714, a partitioning module 716, an encoder (s) 718, a streaming controller 720, received input images 732, Video scene, encoded scene portions 734, and timing information 736. In some embodiments, the modules are implemented as software modules. In other embodiments, the modules are implemented in hardware, for example, as individual circuits having respective modules implemented as circuits for performing the corresponding functions. In yet other embodiments, the modules are implemented using a combination of software and hardware.

제어 루틴들(714)은 시스템(700)의 동작을 제어하기 위해 디바이스 제어 루틴들 및 통신 루틴들을 포함한다. 분할 모듈(716)은 본 발명의 특징들에 따라 장면의 수신된 입체 영상 360도 버전을 N 개의 장면 부분들로 분할하도록 구성된다.Control routines 714 include device control routines and communication routines for controlling the operation of system 700. [ The segmentation module 716 is configured to segment the received stereoscopic 360-degree version of the scene into N scene portions according to aspects of the present invention.

인코더(들)(718)는 본 발명의 특징들에 따라 수신된 이미지 콘텐트, 예를 들면, 장면의 360도 버전 및/또는 하나 이상의 장면 부분들을 인코딩하도록 구성된 복수의 인코더들을 포함할 수 있고, 몇몇 실시예들에서, 그들을 포함한다. 몇몇 실시예들에서, 인코더(들)는 각각의 인코더가 주어진 비트 레이트 스트림을 지원하기 위해 입체 영상 장면 및/또는 분할된 장면 부분들을 인코딩하도록 구성된 다수의 인코더들을 포함한다. 따라서, 몇몇 실시예들에서, 각각의 장면 부분은 각각의 장면에 대해 다수의 상이한 비트 레이트 스트림들을 지원하기 위해 다수의 인코더들을 사용하여 인코딩될 수 있다. 인코더(들)(718)의 출력은 고객 디바이스들, 예를 들면, 재생 디바이스들로의 스트리밍을 위해 메모리에 저장되는 인코딩된 장면 부분들(734)이다. 인코딩된 콘텐트는 네트워크 인터페이스(710)를 통해 하나 또는 다수의 상이한 디바이스들로 스트리밍될 수 있다. The encoder (s) 718 may comprise a plurality of encoders configured to encode the received image content, e.g., a 360 degree version of the scene and / or one or more scene portions, in accordance with aspects of the present invention, In embodiments, it includes them. In some embodiments, the encoder (s) include a plurality of encoders configured to encode the stereoscopic video and / or segmented scene portions so that each encoder supports a given bitrate stream. Thus, in some embodiments, each scene portion may be encoded using multiple encoders to support a number of different bitrate streams for each scene. The output of encoder (s) 718 is encoded scene portions 734 that are stored in memory for streaming to customer devices, for example, playback devices. The encoded content may be streamed to one or more different devices via the network interface 710. [

스트리밍 제어기(720)는, 예를 들면, 통신 네트워크(105)를 통해, 인코딩된 이미지 콘텐트를 하나 이상의 고객 디바이스들로 전달하기 위해 인코딩된 콘텐트의 스트리밍을 제어하도록 구성된다. 다양한 실시예들에서, 플로차트(600)의 다수의 단계들은 스트리밍 제어기(720)의 요소들에 의해 구현된다. 스트리밍 제어기(720)는 요청 처리 모듈(722), 데이터 레이트 결정 모듈(724), 현재 머리 위치 결정 모듈(726), 선택 모듈(728), 및 스트리밍 제어 모듈(730)을 포함한다. 요청 처리 모듈(722)은 고객 재생 디바이스로부터 이미징 콘텐트에 대한 수신된 요청을 처리하도록 구성된다. 콘텐트에 대한 요청은 다양한 실시예들에서 네트워크 인터페이스(710)에서 수신기를 통해 수신된다. 몇몇 실시예들에서, 콘텐트에 대한 요청은 요청하는 재생 디바이스의 아이덴티티를 나타내는 정보를 포함한다. 몇몇 실시예들에서, 콘텐트에 대한 요청은 고객 재생 디바이스에 의해 지원된 데이터 레이트, 사용자의 현재 머리 위치, 예를 들면, 헤드 마운트 디스플레이의 위치를 포함할 수 있다. 요청 처리 모듈(722)은 수신된 요청을 처리하고 다른 동작들을 취하기 위해 스트리밍 제어기(720)의 다른 요소들에 검색된 정보를 제공한다. 콘텐트에 대한 요청은 데이터 레이트 정보 및 현재 머리 위치 정보를 포함할 수 있지만, 다양한 실시예들에서, 재생 디바이스에 의해 지원된 데이터 레이트는 네트워크 검사들 및 시스템(700)과 재생 디바이스 사이에 다른 네트워크 정보 교환으로부터 결정될 수 있다.Streaming controller 720 is configured to control the streaming of the encoded content, e.g., via communication network 105, to convey the encoded image content to one or more customer devices. In various embodiments, the plurality of steps of the flowchart 600 are implemented by elements of the streaming controller 720. The streaming controller 720 includes a request processing module 722, a data rate determination module 724, a current head positioning module 726, a selection module 728, and a streaming control module 730. The request processing module 722 is configured to process the received request for imaging content from the customer playback device. The request for content is received via the receiver at network interface 710 in various embodiments. In some embodiments, the request for content includes information indicating the identity of the requesting playback device. In some embodiments, the request for content may include the data rate supported by the customer playback device, the user's current head position, e.g., the location of the head mounted display. The request processing module 722 provides the retrieved information to the other elements of the streaming controller 720 to process the received request and take other actions. The request for content may include data rate information and current head position information, but in various embodiments the data rate supported by the playback device may include network checks and other network information between the system 700 and the playback device Can be determined from the exchange.

데이터 레이트 결정 모듈(724)은 이미징 콘텐트를 고객 디바이스들로 스트리밍하기 위해 사용될 수 있는 이용 가능한 데이터 레이트들을 결정하도록 구성되고, 예를 들면, 다수의 인코딩된 장면 부분들이 지원되기 때문에, 콘텐트 전달 시스템(700)은 고객 디바이스에 대해 다수의 데이터 레이트들에서 콘텐트를 스트리밍하는 것을 지원할 수 있다. 데이터 레이트 결정 모듈(724)은 또한 시스템(700)으로부터 콘텐트를 요청하는 재생 디바이스에 의해 지원된 데이터 레이트를 결정하도록 구성된다. 몇몇 실시예들에서, 데이터 레이트 결정 모듈(724)은 네트워크 측정들에 기초하여 이미지 콘텐트의 전달을 위해 이용 가능한 데이터 레이트를 결정하도록 구성된다.The data rate determination module 724 is configured to determine available data rates that may be used to stream imaging content to customer devices, for example, because a number of encoded scene portions are supported, 700 may support streaming of content at multiple data rates for the customer device. The data rate determination module 724 is also configured to determine a data rate supported by a playback device that requests content from the system 700. [ In some embodiments, data rate determination module 724 is configured to determine a data rate available for delivery of image content based on network measurements.

현재 머리 위치 결정 모듈(726)은 재생 디바이스로부터 수신된 정보로부터 현재 뷰잉각 및/또는 사용자의 현재 머리 위치, 예를 들면, 헤드 마운트 디스플레이의 위치를 결정하도록 구성된다. 몇몇 실시예들에서, 재생 디바이스는 현재 머리 위치 정보를 시스템(700)으로 주기적으로 전송하고, 현재 머리 위치 결정 모듈(726)은 현재 뷰잉각 및/또는 현재 머리 위치를 결정하기 위해 정보를 수신 및 처리한다.The current head positioning module 726 is configured to determine the current viewing angle and / or the current head position of the user, e.g., the head-mounted display, from information received from the playback device. In some embodiments, the playback device periodically transmits current head position information to the system 700, and the current head positioning module 726 receives and stores information to determine the current viewing angle and / .

선택 모듈(728)은 사용자의 현재 뷰잉각/머리 위치 정보에 기초하여 360도 장면의 부분들 중 어느 것을 재생 디바이스로 스트리밍할지를 결정하도록 구성된다. 선택 모듈(728)은 또한 콘텐트의 스트리밍을 지원하기 위해 이용 가능한 데이터 레이트에 기초하여 결정된 장면 부분들의 인코딩된 버전들을 선택하도록 구성된다.Selection module 728 is configured to determine which of the portions of the 360 degree scene to stream to the playback device based on the user's current viewing angle / head position information. The selection module 728 is also configured to select the encoded versions of the determined scene portions based on the available data rate to support streaming of the content.

스트리밍 제어 모듈(730)은 이미지 콘텐트, 예를 들면, 본 발명의 특징들에 따라 다양한 지원된 데이터 레이트들에서, 360도 입체 영상 장면의 다수의 부분들의 스트리밍을 제어하도록 구성된다. 몇몇 실시예들에서, 스트리밍 제어 모듈(730)은 재생 디바이스에서 장면 메모리를 초기화하기 위해 콘텐트를 요청하는 재생 디바이스로 360도 입체 영상 장면의 N 개의 부분들을 스트리밍하는 것을 제어하도록 구성된다. 다양한 실시예들에서, 스트리밍 제어 모듈(730)은, 예를 들면, 결정된 레이트에서 결정된 장면 부분들의 선택된 인코딩된 버전들을 주기적으로 전송하도록 구성된다. 몇몇 실시예들에서, 스트리밍 제어 모듈(730)은 또한 시간 간격, 예를 들면 매분당 1회에 따라 재생 디바이스로 360도 장면 갱신을 전송하도록 구성된다. 몇몇 실시예들에서, 360도 장면 갱신을 전송하는 단계는 풀 360도 입체 영상 장면의 N 개의 장면 부분들 또는 N-X 개의 장면 부분들을 전송하는 단계를 포함하고, N은 풀 360도 입체 영상 장면이 분할되는 부분들의 총 수이고, X는 재생 디바이스로 현재 전송된 선택된 장면 부분들을 나타낸다. 몇몇 실시예들에서, 스트리밍 제어 모듈(730)은 360도 장면 갱신을 전송하기 전에 초기화를 위해 N 개의 장면 부분들을 처음으로 전송하기 후에 미리 결정된 시간 동안 대기한다. 몇몇 실시예들에서, 360도 장면 갱신의 전송을 제어하기 위한 타이밍 정보는 타이밍 정보(736)에 포함된다. 몇몇 실시예들에서, 스트리밍 제어 모듈(730)은 또한, 리프레시 간격 동안 재생 디바이스로 송신되지 않은 장면 부분들을 식별하고; 리프레시 간격 동안 재생 디바이스로 송신되지 않은 식별된 장면 부분들의 갱신 버전을 송신하도록 구성된다.Streaming control module 730 is configured to control the streaming of multiple portions of a 360 degree stereoscopic image scene at various supported data rates in accordance with image content, e.g., features of the present invention. In some embodiments, the streaming control module 730 is configured to control streaming N portions of a 360 degree stereoscopic scene to a playback device that requests content to initialize the scene memory at the playback device. In various embodiments, the streaming control module 730 is configured to periodically transmit selected encoded versions of scene portions determined, for example, at a determined rate. In some embodiments, the streaming control module 730 is also configured to transmit a 360 degree scene update to the playback device in accordance with a time interval, e.g., once per minute. In some embodiments, transmitting the 360 degree scene update comprises transmitting N scene portions or NX scene portions of a full 360 degree stereoscopic image scene, where N is a full 360 degree stereoscopic scene, And X represents the selected scene portions currently transmitted to the playback device. In some embodiments, the streaming control module 730 waits for a predetermined amount of time after first transmitting N scene portions for initialization before transmitting a 360 degree scene update. In some embodiments, timing information for controlling transmission of a 360 degree scene update is included in timing information 736. [ In some embodiments, the streaming control module 730 also identifies portions of the scene that have not been transmitted to the playback device during the refresh interval; And to transmit an updated version of the identified scene portions that have not been transmitted to the playback device during the refresh interval.

다양한 실시예들에서, 스트리밍 제어 모듈(730)은 재생 디바이스가 각각의 리프레시 기간 동안 상기 장면의 360도 버전을 적어도 한번 전체적으로 리프레시하게 하도록 주기적으로 N 개의 부분들 중 적어도 충분한 수를 재생 디바이스에 전달하도록 구성된다.In various embodiments, the streaming control module 730 may be configured to periodically deliver at least a sufficient number of N portions to the playback device so that the playback device refreshes the 360-degree version of the scene at least once for each refresh period .

도 8은 도 1 및 도 7에 도시된 것과 같은 콘텐트 전달 시스템으로부터 수신된 이미징 콘텐트를 수신, 디코딩, 저장, 및 디스플레이하기 위해 사용될 수 있는 본 발명에 따라 구현된 재생 시스템(800)을 도시한다. 구현될 수 있는 시스템(800)은 디스플레이(802), 또는 외부 디스플레이, 예를 들면, 컴퓨터 시스템(800')에 결합된 헤드 마운트 디스플레이(805)와 같은 요소들의 조합으로서 포함하는 단일 재생 디바이스(800')이다.Figure 8 illustrates a playback system 800 implemented in accordance with the present invention that may be used to receive, decode, store, and display imaging content received from a content delivery system such as that shown in Figures 1 and 7. A system 800 that may be implemented includes a single playback device 800 that includes a display 802 or a combination of elements such as an external display, e.g., a head mounted display 805 coupled to a computer system 800 ' ')to be.

재생 시스템(800)은, 적어도 몇몇 실시예들에서, 3D 헤드 마운트 디스플레이를 포함한다. 헤드 마운트 디스플레이는 헤드 마운트 디스플레이(805)를 포함할 수 있는 OCULUS RIFTTM VR(가상 현실) 헤드셋을 사용하여 구현될 수 있다. 다른 헤드 마운트 디스플레이들이 또한 사용될 수 있다. 몇몇 실시예들에서, 헤드 마운트 헬멧 또는 다른 헤드 마운팅 디바이스에서 하나 이상의 디스플레이 스크린들이 콘텐트를 사용자의 왼쪽 및 오른쪽 눈들에 디스플레이하기 위해 사용된다. 단일 스크린의 상이한 부분들을 상이한 눈들에 노출하도록 구성된 헤드 마운트에 의해 단일 스크린상에 왼쪽 및 오른쪽 눈들에 대한 상이한 이미지들을 디스플레이함으로써, 단일 디스플레이는 뷰어들 왼쪽 및 오른쪽 눈들에 의해 별개로 인식될 왼쪽 및 오른쪽 눈 이미지들을 디스플레이하기 위해 사용될 수 있다. 몇몇 실시예들에서, 휴대 전화 스크린은 헤드 마운트 디스플레이 디바이스의 디스플레이로서 사용된다. 적어도 일부 이러한 실시예들에서, 휴대 전화는 헤드 마운팅 디바이스로 삽입되고, 휴대 전화는 이미지들을 디스플레이하기 위해 사용된다.The playback system 800, in at least some embodiments, includes a 3D head-mounted display. The head mount display may be implemented using a OCULUS RIFT TM VR (Virtual Reality) headset, which may include a head mount display 805. Other head mount displays may also be used. In some embodiments, one or more display screens in a head mount helmet or other head mounting device are used to display content in the left and right eyes of the user. By displaying different images for the left and right eyes on a single screen by a head mount configured to expose different portions of a single screen to different eyes, a single display can be displayed on the left and right sides Can be used to display eye images. In some embodiments, the mobile phone screen is used as a display of a head-mounted display device. In at least some such embodiments, the mobile phone is inserted into a head mounting device, and the mobile phone is used to display images.

재생 시스템(800)은 수신된 인코딩된 이미지 데이터, 예를 들면, 환경 또는 스크린의 상이한 부분들에 대응하는 왼쪽 및 오른쪽 눈 이미지들 및/또는 모노 (단일 이미지들)을 디코딩하고, 예를 들면, 사용자에 의해 3D 이미지로서 인식된 상이한 왼쪽 및 오른쪽 눈 뷰들을 렌더링 및 디스플레이함으로써, 고객에게 디스플레이하기 위한 3D 이미지 콘텐트를 생성하기 위한 능력을 갖는다. 재생 시스템(800)은 몇몇 실시예들에서, 가정 또는 사무실과 같은 고객 구내 위치에 위치되지만, 이미지 캡처 사이트에 또한 위치될 수 있다. 시스템(800)은 본 발명에 따라 신호 수신, 디코딩, 디스플레이 및/또는 다른 동작들을 수행할 수 있다.The playback system 800 decodes the received encoded image data, e.g., left and right eye images and / or mono (single images) corresponding to different portions of the environment or screen, and for example, And has the ability to generate 3D image content for display to the customer by rendering and displaying different left and right eye views recognized as 3D images by the user. The playback system 800, in some embodiments, is located at a customer premise location, such as a home or office, but may also be located at an image capture site. The system 800 may perform signal reception, decoding, display, and / or other operations in accordance with the present invention.

시스템(800)은 디스플레이(802), 디스플레이 디바이스 인터페이스(803), 입력 디바이스(804), 입력/출력(I/O) 인터페이스(806), 프로세서(808), 네트워크 인터페이스(810), 및 메모리(812)를 포함한다. 시스템(800)의 다양한 구성 요소들은 시스템(800)의 구성 요소들 사이에 및/또는 다른 접속들에 의해 또는 무선 인터페이스를 통해 데이터가 전달되게 하는 버스(809)를 통해 함께 결합된다. 몇몇 실시예들에서, 디스플레이(802)가 대시 박스를 사용하여 도시된 선택 요소로서 포함되지만, 몇몇 실시예들에서, 외부 디스플레이 디바이스(805), 예를 들면, 헤드 마운트 입체 영상 디스플레이 디바이스는 디스플레이 디바이스 인터페이스(803)를 통해 재생 디바이스에 결합될 수 있다.System 800 includes a display 802, a display device interface 803, an input device 804, an input / output (I / O) interface 806, a processor 808, a network interface 810, 812). The various components of the system 800 are coupled together via a bus 809 that allows data to be transferred between components of the system 800 and / or by other connections or through an air interface. In some embodiments, although the display 802 is included as a selected element shown using a dash box, in some embodiments, the external display device 805, e.g., a head-mounted stereoscopic image display device, May be coupled to the playback device via interface 803.

예를 들면, 휴대 전화 프로세서가 프로세서(808)로서 사용되고, 휴대 전화가 헤드 마운트에서 이미지를 생성 및 디스플레이하는 경우, 시스템은 헤드 마운트 디바이스의 일부로서 프로세서(808), 디스플레이(802), 및 메모리(812)를 포함할 수 있다. 프로세서(808), 디스플레이(802), 및 메모리(812)는 모두 휴대 전화의 일부일 수 있다. 시스템(800)의 다른 실시예들에서, 프로세서(808)는 헤드 마운팅 디바이스에 마운팅되고 게이밍 시스템에 결합된 디스플레이(805)를 갖는 XBOX 또는 PS4와 같은 게이밍 시스템의 일부일 수 있다. 디바이스에 위치되는 프로세서(808) 또는 메모리(812)는 머리에 쓰는지 그렇지 않는지는 중요하지 않고, 이해될 수 있는 바와 같이, 몇몇 경우들에서, 전력, 열, 및 중량 관점으로부터 헤드 기어에 프로세서를 공동 위치하는 것이 편리할 수 있지만, 적어도 일부 경우들에서, 디스플레이를 포함하는 헤드 기어에 결합된 프로세서(808) 및 메모리(812)를 갖는 것이 바람직할 수 있다.For example, when a cellular phone processor is used as the processor 808 and the cellular phone generates and displays an image at the head mount, the system includes a processor 808, a display 802, and a memory 812). Processor 808, display 802, and memory 812 may all be part of a cellular telephone. In other embodiments of the system 800, the processor 808 may be part of a gaming system, such as an XBOX or PS4, having a display 805 mounted to the head mounting device and coupled to the gaming system. It is important to note that the processor 808 or memory 812 located in the device does not matter whether it is in the head or not, and, as can be appreciated, in some cases, While it may be convenient to locate, in at least some cases, it may be desirable to have a processor 808 and memory 812 coupled to a headgear that includes a display.

다양한 실시예들이 헤드 마운트 디스플레이(805 또는 802)를 고려하지만, 방법 및 장치는 또한 3D 이미지를 지원할 수 있는 비-헤드 마운트 디스플레이들과 함께 사용될 수 있다. 따라서, 많은 실시예들에서, 시스템(800)은 헤드 마운트 디스플레이를 포함하지만, 비-헤드 마운트 디스플레이에 의해 또한 구현될 수 있다.Although various embodiments contemplate the head mount display 805 or 802, the method and apparatus may also be used with non-head mounted displays capable of supporting 3D images. Thus, in many embodiments, the system 800 includes a head mounted display, but may also be implemented by a non-head mounted display.

메모리(812)는 다양한 모듈들, 예를 들면, 프로세서(808)에 의해 실행될 때, 본 발명에 따라 디코딩 및 출력 동작들을 수행하기 위해 재생 디바이스(800)를 제어하는 루틴들을 포함한다. 메모리(812)는 제어 루틴들(814), 콘텐트 생성 모듈(816)에 대한 요청, 머리 위치 및/또는 뷰잉각 결정 모듈(818), 디코더 모듈(820), 3D 이미지 생성 모듈이라고도 불리는 입체 영상 이미지 렌더링 모듈(822), 및 수신된 인코딩된 이미지 콘텐트(824), 디코딩된 이미지 콘텐트(826), 360도 디코딩된 장면 버퍼(828), 및 생성된 입체 영상 콘텐트(830)를 포함하는 데이터/정보를 포함한다.Memory 812 includes routines that, when executed by various modules, e.g., processor 808, control playback device 800 to perform decoding and output operations in accordance with the present invention. The memory 812 may include control routines 814, a request to the content generation module 816, a head position and / or viewing angle determination module 818, a decoder module 820, a stereoscopic image Rendering module 822 and the data / information block 828 including the received encoded image content 824, decoded image content 826, a 360-degree decoded scene buffer 828, and generated stereoscopic image content 830 .

제어 루틴들(814)은 디바이스(800)의 동작을 제어하기 위해 디바이스 제어 루틴들 및 통신 루틴들을 포함한다. 요청 생성 모듈(816)은 콘텐트를 제공하기 위한 콘텐트 전달 시스템에 전송할 콘텐트에 대한 요청을 생성하도록 구성된다. 콘텐트에 대한 요청은 다양한 실시예들에서 네트워크 인터페이스(810)를 통해 전송된다. 머리 위치 및/또는 뷰잉각 결정 모듈(818)은 사용자의 현재 뷰잉각 및/또는 현재 머리 위치, 예를 들면, 헤드 마운트 디스플레이의 위치를 결정하고, 결정된 위치 및/또는 뷰잉각 정보를 콘텐트 전달 시스템(700)에 보고하도록 구성된다. 몇몇 실시예들에서, 재생 디바이스(800)는 현재 머리 위치 정보를 시스템(700)으로 주기적으로 전송한다.Control routines 814 include device control routines and communication routines for controlling the operation of device 800. [ The request generation module 816 is configured to generate a request for content to be sent to a content delivery system for providing content. The request for content is sent via network interface 810 in various embodiments. The head position and / or viewing angle determination module 818 determines the current viewing angle of the user and / or the current head position, e.g., the position of the head mounted display, and sends the determined position and / (700). In some embodiments, the playback device 800 periodically transmits current head position information to the system 700.

디코더 모듈(820)은 디코딩된 이미지 데이터(826)를 생성하기 위해 콘텐트 전달 시스템(700)으로부터 수신된 인코딩된 이미지 콘텐트(824)를 디코딩하도록 구성된다. 디코딩된 이미지 데이터(826)는 디코딩된 입체 영상 장면 및/또는 디코딩된 장면 부분들을 포함할 수 있다.The decoder module 820 is configured to decode the encoded image content 824 received from the content delivery system 700 to generate the decoded image data 826. The decoded image data 826 may include decoded stereoscopic video scenes and / or decoded scene portions.

3D 이미지 렌더링 모듈(822)은 3D 이미지들, 예를 들면, 디스플레이(802) 및/또는 디스플레이 디바이스(805)상에 사용자에 대해 디스플레이를 위해, 디코딩된 이미지 콘텐트(826)를 사용하여, 예를 들면, 본 발명의 특징들에 따라 3D 이미지로서 인식되는 방식으로 디스플레이되는 왼쪽 및 오른쪽 눈 이미지들을 생성한다. 생성된 입체 영상 이미지 콘텐트(830)는 3D 이미지 생성 모듈(822)의 출력이다. 따라서, 렌더링 모듈(822)은 3D 이미지 콘텐트(830)를 디스플레이에 렌더링한다. 몇몇 실시예들에서, 디스플레이 디바이스(805)는 Oculus Rift와 같은 3D 디스플레이 장치의 일부일 수 있다. 재생 디바이스(800)의 운영자는 입력 디바이스(804)를 통해 하나 이상의 파라미터들을 제어하고 및/또는 수행될 동작들을 선택, 예를 들면, 3D 장면을 디스플레이하도록 선택할 수 있다.3D image rendering module 822 may use the decoded image content 826 for display on the 3D images, e.g., display 802 and / or display device 805, , It generates left and right eye images that are displayed in a manner that is perceived as a 3D image in accordance with the features of the present invention. The generated stereoscopic image image content 830 is an output of the 3D image generation module 822. Thus, the rendering module 822 renders the 3D image content 830 on the display. In some embodiments, the display device 805 may be part of a 3D display device such as Oculus Rift. The operator of the playback device 800 may select one or more parameters via the input device 804 and / or select the actions to be performed, for example, to display the 3D scene.

도 9는 3 개의 상이한 장착 위치들에 장착된 3 개의 카메라 쌍들(902, 904, 906) 및 카메라 어셈블리(800)를 교정하기 위해 사용될 수 있는 교정 타깃(915)을 갖는 카메라 리그 또는 카메라 어레이라고도 때때로 불리는 일 예시적인 카메라 어셈블리(900)을 도시하는 도면을 도시한다. 카메라 리그(900)는 본 발명의 몇몇 실시예들에 따라 이미지 콘텐트를 캡처하기 위해 사용된다. 몇몇 실시예들에서, 카메라 리그(900)는 도 1의 이미지 캡처 장치(102)로서 사용된다. 카메라 리그(900)는 표시된 위치들에 카메라들, 총 6 개의 카메라들에 대해 입체 영상 카메라들((901, 903), (905. 907), (909, 911))의 3 쌍들(902, 904, 906)을 갖는 지지 구조(도 11에 도시됨)를 포함한다. 지지 구조는 카메라를 지지하고, 카메라들이 장착되는 플레이트들이 고정될 수 있는 마운팅 플레이트(도 11에 도시된 요소(1120)를 참조)라고 여기서 또한 불리는 기저(1120)를 포함한다. 지지 구조는 플라스틱, 금속 또는 합성 재료 예컨대 그래파이트 또는 섬유 유리로 만들어질 수 있고, 카메라들 사이의 간격 및 관계를 보기 위해 또한 사용되는 삼각형을 형성하는 라인들로 나타내진다. 점선들이 교차하는 중심점은 카메라 쌍들(902, 904, 906)이 몇몇 실시예들에서 회전될 수 있지만 반드시 모든 실시예들에서는 그렇지는 않은 중심 절점을 나타낸다. 중심 절점은 몇몇 실시예들에서 삼각형 선들로 나타낸 카메라 지지 프레임(912)이 회전될 수 있는, 예를 들면, 삼각 기저의 강철 로드 또는 스레디드 중심 마운트에 대응한다. 지지 프레임은 카메라들이 장착된 플라스틱 하우징 또는 삼각 구조일 수 있다.9 is also sometimes referred to as a camera rig or camera array having three camera pairs 902, 904, 906 mounted on three different mounting positions and a calibration target 915 that can be used to calibrate the camera assembly 800 There is shown a diagram illustrating an exemplary camera assembly 900. Camera rig 900 is used to capture image content in accordance with some embodiments of the present invention. In some embodiments, the camera rig 900 is used as the image capture device 102 of FIG. The camera rig 900 includes three pairs of cameras 902, 904 (901, 902), 904, 911 of stereoscopic cameras (901, 903, , 906). ≪ / RTI > The support structure supports the camera and includes a base 1120, also referred to herein as a mounting plate (see element 1120 shown in FIG. 11) on which the plates on which the cameras are mounted can be fixed. The support structure can be made of plastic, metal or synthetic material such as graphite or fiberglass, and is represented by lines that form a triangle that is also used to view the spacing and relationship between cameras. The center point at which the dashed lines intersect indicates a center node that camera pairs 902, 904, 906 can be rotated in some embodiments, but not necessarily in all embodiments. The central nodal point corresponds to, for example, a triangular base steel rod or threaded center mount to which the camera support frame 912, shown in triangular lines in some embodiments, can be rotated. The support frame may be a plastic housing or triangular structure with cameras mounted thereon.

도 9에서, 카메라들(902, 904, 906)의 각각의 쌍은 상이한 카메라 쌍 위치에 대응한다. 제 1 카메라 쌍(902)은 정면을 마주보는 위치에 대해 0도 전방에 대응한다. 이러한 위치는 관심의 주요 장면 영역, 예를 들면, 보통 스포츠 경기가 행해지고 있는 필드, 스테이지 또는 주요 동작이 일어날 가능성이 있는 몇몇 다른 영역에 대응한다. 제 2 카메라 쌍(904)은 120도 카메라 위치에 대응하고 오른쪽 후방 뷰잉 영역을 캡처하기 위해 사용된다. 제 3 카메라 쌍(906)은 240도 위치(0도 위치에 관하여) 및 왼쪽 후방 뷰잉 영역에 대응한다. 세 개의 카메라 위치들이 120도 떨어져 있다는 것을 주의하라. 각각의 카메라 뷰잉 위치는 도 9 실시예에서 하나의 카메라 쌍을 포함하고, 각각의 카메라 쌍은 이미지들을 캡처하기 위해 사용되는 왼쪽 카메라 및 오른쪽 카메라를 포함한다. 왼쪽 카메라는 때때로 왼쪽 눈 이미지들이라고 불리는 것을 캡처하고, 오른쪽 카메라는 때때로 오른쪽 눈 이미지들이라고 불리는 것을 캡처한다. 이미지들은 뷰 시퀀스의 일부 또는 한번 이상 캡처된 정지 이미지일 수 있다. 보통 적어도 카메라 쌍(902)에 대응하는 정면 카메라 위치는 고품질 비디오 카메라들로 점유될 것이다. 다른 카메라 위치들은 고품질 비디오 카메라들, 저품질 비디오 카메라들 또는 정지 또는 모노 이미지들을 캡처하기 위해 사용된 단일 카메라가 점유될 수 있다. 몇몇 실시예들에서, 제 2 및 제 3 카메라 실시예들은 왼쪽이 점유되지 않고, 제 1 카메라 쌍(902)이 상이한 시간들에 모든 세 개의 카메라 위치들에 대응하는 이미지들을 캡처하게 하는 카메라가 장착된 지지 플레이트가 회전된다. 몇몇 이러한 실시예들에서, 왼쪽 및 오른쪽 후방 이미지들이 먼저 캡처되고, 이후 전방 카메라 위치의 비디오가 이벤트 동안 캡처된다. 캡처된 이미지들은 실시간으로, 예를 들면, 이벤트가 여전히 진행중인 동안, 하나 이상의 재생 디바이스들로 인코딩 및 스트리밍될 수 있다.In Figure 9, each pair of cameras 902, 904, 906 corresponds to a different camera pair position. The first camera pair 902 corresponds to a front position facing 0 degrees ahead. This position corresponds to a major scene area of interest, e.g., a field in which a normal sporting event is being played, a stage, or some other area where the main action is likely to occur. A second camera pair 904 corresponds to the 120 degree camera position and is used to capture the right rear viewing area. The third camera pair 906 corresponds to the 240 degree position (with respect to the 0 degree position) and the left rear viewing area. Note that the three camera positions are 120 degrees apart. Each camera viewing position includes one camera pair in the FIG. 9 embodiment, and each camera pair includes a left camera and a right camera that are used to capture images. The left camera sometimes captures what is called the left eye images, and the right camera captures what is sometimes called the right eye images. The images may be part of the view sequence or a still image captured more than once. Typically at least the front camera position corresponding to camera pair 902 will be occupied by high quality video cameras. Other camera locations may be occupied by high quality video cameras, low quality video cameras, or a single camera used to capture still or mono images. In some embodiments, the second and third camera embodiments are equipped with a camera that allows the first camera pair 902 to capture images corresponding to all three camera positions at different times, without the left occupied, The supported support plate is rotated. In some such embodiments, the left and right rear images are captured first, then a video of the forward camera position is captured during the event. The captured images may be encoded and streamed in real time, e.g., while the event is still in progress, to one or more playback devices.

도 9에 도시된 제 1 카메라 쌍은 왼쪽 카메라(901) 및 오른쪽 카메라(903)를 포함한다. 왼쪽 카메라(901)는 제 1 카메라에 고정된 제 1 렌즈 어셈블리(920)를 갖고, 오른쪽 카메라(903)는 오른쪽 카메라(903)에 고정된 제 2 렌즈 어셈블리(920')를 갖는다. 렌즈 어셈블리들(920, 920')은 캡처될 광각 시야를 허용하는 렌즈들을 포함한다. 몇몇 실시예들에서, 각각의 렌즈 어셈블리들(920, 920')은 어안 렌즈를 포함한다. 따라서, 카메라들(902, 903)의 각각은 180도 시야 또는 거의 180도를 캡처할 수 있다. 몇몇 실시예들에서, 180도 미만이 캡처되지만, 몇몇 실시예들에서 인접한 카메라 쌍들로부터 캡처된 이미지들에서 적어도 일부 중첩이 또한 존재한다. 도 9 실시예에서, 카메라 쌍은 제 1(0도), 제 2(120도), 및 제 3(240도) 카메라 장착 위치들의 각각에 위치되고, 각각의 쌍은 환경의 적어도 120도 이상을 캡처하지만, 많은 경우들에서, 각각의 카메라 쌍은 환경의 180도 또는 거의 180도를 캡처한다.The first camera pair shown in FIG. 9 includes a left camera 901 and a right camera 903. The left camera 901 has a first lens assembly 920 fixed to the first camera and the right camera 903 has a second lens assembly 920 'fixed to the right camera 903. [ The lens assemblies 920 and 920 'include lenses that allow a wide viewing angle to be captured. In some embodiments, each of the lens assemblies 920, 920 'includes a fisheye lens. Thus, each of the cameras 902, 903 can capture a 180 degree field of view or nearly 180 degrees. In some embodiments, less than 180 degrees are captured, but in some embodiments there is also at least some overlap in images captured from adjacent camera pairs. In the Figure 9 embodiment, the camera pair is positioned in each of the first (0 degree), second (120 degree), and third (240 degree) camera mount locations, Capture, but in many cases, each camera pair captures 180 degrees or nearly 180 degrees of the environment.

제 2(904) 및 제 3(906) 카메라 쌍들은 제 1 카메라 쌍(902)과 동일하거나 유사하지만, 정면 0도 위치에 관하여 120 및 240도 카메라 장착 위치들에 위치된다. 제 2 카메라 쌍(904)은 왼쪽 카메라(905) 및 왼쪽 렌즈 어셈블리(922), 및 오른쪽 카메라(907) 및 오른쪽 카메라 렌즈 어셈블리(922')를 포함한다. 제 3 카메라 쌍(906)은 왼쪽 카메라(909) 및 왼쪽 렌즈 어셈블리(924), 및 오른쪽 카메라(911) 및 오른쪽 카메라 렌즈 어셈블리(924')를 포함한다.The second 904 and third 906 camera pairs are identical or similar to the first camera pair 902, but are located at 120 and 240 degree camera mount positions with respect to the front 0 degree position. The second camera pair 904 includes a left camera 905 and a left lens assembly 922 and a right camera 907 and a right camera lens assembly 922 '. The third camera pair 906 includes a left camera 909 and a left lens assembly 924 and a right camera 911 and a right camera lens assembly 924 '.

도 9에서, D는 카메라들(901, 903)의 제 1 입체 영상 쌍의 축들간 거리를 나타낸다. 도 9 예에서, D는 평균 인간의 왼쪽 및 오른쪽 눈들의 동공들 사이의 거리와 동일하거나 유사한 117 ㎜이다. 도 9의 점선(950)은 파노라마 어레이의 중심점으로부터 오른쪽 카메라 렌즈(920')의 입사 동공까지의 거리를 도시한다(노드 오프셋이라고도 알려짐). 도 9 예에 대응하는 일 실시예에서, 참조 번호(950)로 나타낸 거리는 315 ㎜이지만 다른 거리들이 가능하다.In Fig. 9, D represents the distance between the axes of the first pair of stereoscopic images of the cameras 901 and 903. In the example of FIG. 9, D is 117 mm, which is equal to or similar to the distance between the pupils of the left and right eyes of the average human. Dotted line 950 in FIG. 9 shows the distance from the center point of the panoramic array to the entrance pupil of the right camera lens 920 '(also known as a node offset). In one embodiment corresponding to the example of FIG. 9, the distance indicated by reference numeral 950 is 315 mm, but other distances are possible.

하나의 특정한 실시예에서, 카메라 리그(900)의 풋프린트는 수평 면적이 640 ㎟ 이하로 비교적 작다. 이러한 작은 크기는 카메라 리그가 청중에, 예를 들면, 팬 또는 참석자가 보통 위치 또는 배치되는 착석 위치에 배치되게 한다. 따라서, 몇몇 실시예들에서, 카메라 리그는 뷰어가 이러한 효과를 바라는 청중의 멤버를 감지하게 하는 청중 영역에 배치된다. 몇몇 실시예들에서 풋프린트는, 몇몇 실시예들에서, 중심 지지 로드가 장착되거나 지지 탑이 위치되는 지지 구조가 포함하는 기저의 크기에 대응한다. 인식되는 바와 같이, 몇몇 실시예들에서 카메라 리그들은 3쌍의 카메라들 사이에 중심점에 대응하는 기저의 중심점 주변을 회전할 수 있다. 다른 실시예들에서, 카메라들은 고정되고 카메라 어레이의 중심 주변을 회전하지 않는다.In one particular embodiment, the footprint of the camera rig 900 is relatively small, with a horizontal area of less than 640 mm 2. This small size allows the camera rig to be placed in the audience, for example, in a sitting position where the pan or attendee is normally located or placed. Thus, in some embodiments, the camera rig is placed in the audience area which allows the viewer to perceive a member of the audience that desires this effect. In some embodiments, the footprint, in some embodiments, corresponds to the size of the base that the support structure on which the center support rod is mounted or the support tower is located. As will be appreciated, in some embodiments, the camera rigs may rotate about the midpoint of the base corresponding to the center point between the three pairs of cameras. In other embodiments, the cameras are fixed and do not rotate about the center of the camera array.

카메라 리그는 먼 물체뿐만 아니라 비교적 가까운 물체를 캡처할 수 있다. 하나의 특별한 실시예에서, 카메라 어레이의 최소 이미징 거리는 649 ㎜이지만 다른 거리들이 가능하고, 이러한 거리는 결코 중요하지 않다.Camera rigs can capture relatively close objects as well as distant objects. In one particular embodiment, the minimum imaging distance of the camera array is 649 mm, but other distances are possible, and such distances are never important.

카메라 어셈블리의 중심으로부터 제 2 및 제 3 카메라 부분들의 뷰들의 교차점(951)까지의 거리는 제 1 및 제 2 카메라 쌍들에 의해 캡처된 이미지들을 교정하기 위해 사용될 수 있는 일 예시적인 교정 거리를 나타낸다. 타깃(915)이 최대 왜곡의 영역에 위치되거나 또는 그를 약간 넘어서 위치되는 카메라 쌍들로부터 알려진 거리에 배치될 수 있다는 것을 주의하라. 교정 타깃은 알려진 고정된 교정 패턴을 포함한다. 교정 타깃은 카메라 쌍들의 카메라들에 의해 캡처된 이미지들의 크기를 교정하기 위한 것일 수 있고, 그를 위해 사용된다. 교정 타깃의 크기 및 위치가 교정 타깃(915)의 이미지를 캡처하는 카메라에 관하여 알려지기 때문에, 이러한 교정이 가능하다.The distance from the center of the camera assembly to the intersection 951 of the views of the second and third camera portions represents one exemplary calibration distance that can be used to correct images captured by the first and second camera pairs. Note that the target 915 may be located at a known distance from the camera pairs located in or slightly beyond the region of maximum distortion. The calibration target includes a known fixed calibration pattern. The calibration target may be to calibrate the size of the images captured by the cameras of the camera pairs and is used for that. This calibration is possible because the size and position of the calibration target is known with respect to the camera capturing the image of the calibration target 915. [

도 10은 더 상세히 도 9에 도시된 카메라 어레이의 도면(1000)이다. 카메라 리그는 또한 6 개의 카메라들과 함께 도시되지만, 몇몇 실시예에서 카메라 리그는 단지 두 개의 카메라들, 예를 들면, 카메라 쌍(902)으로 점유된다. 도시된 바와 같이 각각의 카메라 쌍 장착 위치들 사이에 120도 간격이 존재한다. 예를 들면, 각각의 카메라 쌍 사이의 중심이 카메라 장착 위치의 방향에 대응하는 경우, 이러한 경우에서, 제 1 카메라 장착 위치는 0도에 대응하고, 제 2 카메라 장착 위치는 120도에 대응하고, 제 3 카메라 장착 위치는 240도에 대응하는 것을 고려하자. 따라서 각각의 카메라 장착 위치는 120도씩 분리된다. 이는 각각의 카메라 쌍(902, 904, 906)의 중심을 통해 연장하는 중심선 및 선들 사이의 각이 측정되는 경우 볼 수 있다.Figure 10 is a diagram 1000 of the camera array shown in more detail in Figure 9. Camera rigs are also shown with six cameras, but in some embodiments the camera leagues are occupied by only two cameras, e.g., camera pairs 902. There is a 120 degree gap between each pair of camera mount locations as shown. For example, when the center between each camera pair corresponds to the direction of the camera mount position, in this case, the first camera mount position corresponds to 0 degrees, the second camera mount position corresponds to 120 degrees, And the third camera mounting position corresponds to 240 degrees. Therefore, each camera mounting position is separated by 120 degrees. This can be seen when the angle between the centerline and the lines extending through the center of each camera pair 902, 904, 906 is measured.

도 10 예에서, 카메라들의 쌍(902, 904, 906)은 상이한 뷰들이 카메라 기반 기저의 위치를 변경해야 하지 않고 상이한 시간에 캡처되게 하는 카메라 리그의 중심점 주변을 회전할 수 있고, 몇몇 실시예들에서, 그 주위를 회전한다. 즉, 카메라들은 리그의 중심 지지대 주변으로 회전될 수 있고, 도 10에 도시된 리그를 사용하여 360도 장면 캡처를 허용하는 상이한 시간들에서 상이한 장면들을 캡처하도록 허용될 수 있고, 이는 단지 두 개의 카메라들로 점유된다. 이러한 구성은 입체 영상 카메라들의 비용이 주어진 비용 관점으로부터 특히 바람직하고, 동일한 시점이지만 스포츠 경기 또는 다른 이벤트 동안 주요 동작을 포함하는 정면 장면이 발생할 수 있는 시간과 상이한 시간에 캡처된 배경을 보이는 것이 바람직할 수 있는 많은 애플리케이션들에 적합하다. 예를 들면, 이벤트 동안 주요 이벤트 동안 보이지 않는 것이 바람직할 물체들은 카메라 뒤에 배치될 수 있다는 것을 고려하자. 이러한 시나리오에서, 후방 이미지들은 주요 이벤트 전에 캡처되고 이미지 데이터의 360도 세트를 제공하기 위해 주요 이벤트의 실시간으로 캡처된 이미지들과 함께 이용 가능하게 될 수 있고, 때때로 캡처되고 이용 가능하다.In the example of FIG. 10, the pair of cameras 902, 904, 906 can rotate around the center of the camera rig, which allows different views to be captured at different times without having to change the location of the camera based basis, , It rotates around it. That is, the cameras can be rotated around the center support of the league and can be allowed to capture different scenes at different times that allow 360 degree scene capture using the league shown in Fig. 10, . This configuration is particularly advantageous from the perspective of cost given the cost of the stereoscopic cameras, and it is desirable to have a captured background at a different time from the time at which the frontal scene, including the main action during the sporting event or other event, It is suitable for many applications. For example, consider that objects that are desirable to be invisible during a key event during an event can be placed behind the camera. In such a scenario, the back images are captured before the main event and may be made available with the captured images in real time of the main event to provide a 360 degree set of image data, and are sometimes captured and available.

도 11은 일 예시적인 실시예에 따라 구현된 일 예시적인 카메라 리그(1100)의 상세도를 도시한다. 도 11로부터 이해될 수 있는 바와 같이, 카메라 리그(1100)는 모든 실시예들이 아닌 일부 실시예들이 입체 영상 카메라들인 3쌍의 카메라들(1102, 1104, 1106)을 포함한다. 각각의 카메라 쌍은 몇몇 실시예들에서 두 개의 카메라들을 포함한다. 카메라 쌍들(1102, 1104, 1106)은 도 9 및 도 10에 관하여 상기에 논의된 카메라 쌍들(902, 904, 906)과 동일하거나 유사하다. 몇몇 실시예들에서, 카메라 쌍들(1102, 1104, 1106)은 카메라 리그(1100)의 지지 구조(1120)상에 장착된다. 몇몇 실시예들에서, 세 개의 쌍들(여섯 개의 카메라들)의 카메라들(1102, 1104, 1106)은 각각의 카메라 쌍 장착 플레이트들을 통해 지지 구조(1120)상에 장착된다. 지지 구조(1120)는 입체 영상 카메라 쌍들을 장착하기 위한 세 개의 장착 위치들을 포함하고, 각각의 장착 위치는 상이한 120도 뷰잉 영역에 대응한다. 도 11의 예시적인 실시예에서, 제 1 쌍의 입체 영상 카메라들(1102)은 세 개의 장착 위치들 중 제 1 장착 위치, 예를 들면, 정면 위치에 장착되고, 120도 정면 뷰잉 영역에 대응한다. 제 2 쌍의 입체 영상 카메라들(1104)은 세 개의 장착 위치들 중 제 2 장착 위치, 예를 들면, 정면 위치에 관하여 시계 방향으로 120도 회전하는 배경 위치에 장착되고, 상이한 120도 뷰잉 영역에 대응한다. 제 3 쌍의 입체 영상 카메라들(1106)은 세 개의 장착 위치들 중 제 3 장착 위치, 예를 들면, 정면 위치에 관하여 시계 방향으로 240도 회전하는 배경 위치에 장착되고, 다른 120도 뷰잉 영역에 대응한다. 카메라 리그(1100)상의 세 개의 카메라 장착 위치들은 서로에 관하여 120도씩 오프셋되지만, 몇몇 실시예들에서, 카메라 리그상에 장착된 각각의 카메라는 약 180도의 시야를 갖는다. 몇몇 실시예들에서, 이러한 확장된 시야는 카메라 디바이스들상에서 어안 렌즈를 사용함으로써 달성된다.FIG. 11 shows a detail view of an exemplary camera rig 1100 implemented in accordance with an exemplary embodiment. As can be appreciated from Figure 11, camera rig 1100 includes three pairs of cameras 1102, 1104, and 1106, some embodiments of which are stereoscopic cameras, but not all embodiments. Each pair of cameras includes two cameras in some embodiments. Camera pairs 1102, 1104 and 1106 are identical or similar to the camera pairs 902, 904 and 906 discussed above with respect to Figs. In some embodiments, camera pairs 1102, 1104, 1106 are mounted on support structure 1120 of camera rig 1100. In some embodiments, cameras 1102, 1104, and 1106 of three pairs (six cameras) are mounted on support structure 1120 through respective camera pair mounting plates. Support structure 1120 includes three mounting locations for mounting stereoscopic camera pairs, with each mounting location corresponding to a different 120 degree viewing area. 11, a first pair of stereoscopic cameras 1102 is mounted in a first mounting position, e.g., a front position, of the three mounting positions, and corresponds to a 120-degree front viewing area . The second pair of stereoscopic cameras 1104 is mounted at a second mounting position of the three mounting positions, for example, at a background position that rotates 120 degrees clockwise with respect to the front position, and in a different 120 degree viewing area Respectively. The third pair of stereoscopic images cameras 1106 are mounted at a third mounting position of the three mounting positions, for example, at a background position that rotates 240 degrees clockwise with respect to the front position, Respectively. The three camera mount positions on the camera rig 1100 are offset by 120 degrees with respect to each other, but in some embodiments, each camera mounted on the camera rig has a field of view of about 180 degrees. In some embodiments, this extended view is achieved by using a fisheye lens on the camera devices.

모든 장착 플레이트들이 도시된 도면에 보이지는 않지만, 카메라 쌍(1102)을 장착하기 위해 사용된 카메라 장착 플레이트(1110)가 도시된다. 카메라들을 위한 장착 플레이트들은 지지 기저(1120)의 슬롯들을 지나서 바닥부로부터 장착 플레이트에 나사형 구멍들로 통과하는 나사들을 위한 슬롯들을 갖는다. 이는 상기 쌍에 대한 장착 플레이트가 하부로부터 액세스 가능한 나사들을 풀고 이후 카메라 쌍 장착 플레이트를 지지 구조에 고정하기 위해 나사들을 조임으로써 조정되게 한다. 개별적인 카메라 위치들이 또한 조정될 수 있고, 이후 조정들 후 고정될 수 있다. 몇몇 실시예들에서, 개별 카메라들은 상부로부터 장착 플레이트로 조정/고정될 수 있고, 카메라 장착 플레이트들은 하부로부터 조정/고정될 수 있다.Although not all mounting plates are shown in the drawing, the camera mounting plate 1110 used to mount the camera pair 1102 is shown. The mounting plates for the cameras have slots for screws that pass through the slots of the support base 1120 and from the bottom to the mounting plate through the threaded holes. This allows the mounting plate for the pair to be adjusted by unscrewing the accessible screws from the bottom and then tightening the screws to secure the camera pair mounting plate to the support structure. The individual camera positions can also be adjusted and then fixed after adjustments. In some embodiments, the individual cameras can be adjusted / fixed from the top to the mounting plate, and the camera mounting plates can be adjusted / fixed from the bottom.

다수의 실시예들에서, 카메라 리그(1100)는 지지 구조(1120)가 회전 가능하게 장착되는 기저(1122)를 포함한다. 따라서, 다양한 실시예들에서, 지지 구조(1120)상의 카메라 어셈블리는 기저의 중심을 통과하는 축 주변을 360도 회전될 수 있다. 몇몇 실시예들에서, 기저(1122)는 삼각대 또는 다른 장착 디바이스의 부분일 수 있다. 지지 구조는 플라스틱, 금속, 또는 합성 재료 예컨대 그래파이트 또는 섬유 유리로 구성될 수 있다. 카메라 쌍들은, 몇몇 실시예들에서, 때때로 중심 절점이라고 불리는 중심점 주변으로 회전될 수 있다.In many embodiments, camera rig 1100 includes a base 1122 to which support structure 1120 is rotatably mounted. Thus, in various embodiments, the camera assembly on the support structure 1120 can be rotated 360 degrees around an axis passing through the center of the base. In some embodiments, the base 1122 may be part of a tripod or other mounting device. The support structure may be composed of plastic, metal, or synthetic material such as graphite or fiberglass. The camera pairs, in some embodiments, may be rotated around a central point, sometimes referred to as a central nodal point.

상기 요소들에 더하여, 몇몇 실시예들에서, 카메라 리그(1100)는 두 개의 시뮬레이션된 귀들(1130, 1132)을 추가로 포함한다. 이들 시뮬레이션된 귀들(1130, 1132)은 사람 귀들을 모방하고, 몇몇 실시예들에서 인간 귀의 형상으로 몰딩된 실리콘으로 구성된다. 시뮬레이션된 귀들(1130, 1132)은 두 개의 귀들이 평균 인간의 인간 귀들 사이의 간격과 동일하거나 거의 동일한 거리로 서로로부터 이격되는 마이크로폰들을 포함한다. 시뮬레이션된 귀들(1130, 1132)에 장착된 마이크로폰들은 정면을 마주보는 카메라 쌍(1102)상에 장착되지만, 대안적으로 지지 구조, 예를 들면, 플랫폼(1120)상에 장착될 수 있다. 시뮬레이션된 귀들(1130, 1132)은 인간 귀들이 인간 머리상의 눈들의 정면에 수직하게 위치되는 것과 유사한 방식으로 카메라 쌍(1102)의 정면에 수직하게 위치된다. 시뮬레이션된 귀들(1130, 1132)의 측면의 구멍들은 시뮬레이션된 귀들의 측면의 오디오 입력 구멍의 역할을 하고, 시뮬레이션된 귀들 및 구멍은 인간의 귀가 오디오 사운드들을 인간의 귀에 포함된 고막으로 지향시키는 것처럼 시뮬레이션된 귀들의 각각의 것에 장착된 마이크로폰으로 오디오를 지향시키도록 조합하여 동작한다. 왼쪽 및 오른쪽 시뮬레이션된 귀들(1130, 1132)에서 마이크로폰들은 카메라 리그(1100)의 위치의 인간이 카메라 리그의 위치에 위치되는 경우 사람의 왼쪽 및 오른쪽 귀들을 통해 인식되는 것과 유사한 스테레오 사운드 캡처를 제공한다.In addition to the above elements, in some embodiments, the camera rig 1100 further includes two simulated ears 1130 and 1132. [ These simulated ears 1130 and 1132 mimic human ears and in some embodiments are composed of silicone molded into the shape of a human ear. The simulated ears 1130 and 1132 include microphones whose two ears are spaced apart from each other by a distance equal to or approximately equal to the distance between the average human human ears. The microphones mounted on the simulated ears 1130 and 1132 are mounted on the face-facing camera pair 1102, but can alternatively be mounted on a support structure, for example, a platform 1120. The simulated ears 1130 and 1132 are positioned perpendicular to the front of camera pair 1102 in a manner similar to that human ears are positioned perpendicular to the front of the eyes on the human head. The holes on the sides of the simulated ears 1130 and 1132 serve as the audio input holes on the sides of the simulated ears and the simulated ears and holes are simulated as if the human ear were directing the audio sounds to the eardrum contained in the human ear Lt; RTI ID = 0.0 > microphone, < / RTI > In the left and right simulated ears 1130 and 1132, the microphones provide a stereo sound capture similar to that recognized through the left and right ears of a person when the human at the location of the camera rig 1100 is located at the position of the camera league .

도 11은 세 개의 입체 영상 카메라 쌍들을 갖는 예시적인 카메라 리그(1100)의 하나의 구성을 도시하지만, 다른 변형들이 범위 내에서 가능하다는 것이 이해되어야 한다. 예를 들면, 일 구현에서, 카메라 리그(1100)는 단일 카메라 쌍, 예를 들면, 360도 장면의 상이한 부분들이 상이한 시간들에 캡쳐되게 하는 카메라 리그의 중심점 주변을 회전할 수 있는 한 쌍의 입체 영상 카메라들을 포함한다. 따라서, 단일 카메라 쌍은 지지 구조상에 장착되고 리그의 중심 지지대 주변으로 회전될 수 있고, 360도 장면 캡처를 허용하는 상이한 시간들에서 상이한 장면들을 캡처하도록 허용될 수 있다.11 illustrates one configuration of an exemplary camera rig 1100 with three stereoscopic camera pairs, it should be understood that other variations are possible within the scope. For example, in one implementation, the camera rig 1100 may include a pair of stereoscopic cameras capable of rotating about a central point of a camera rig that allows different portions of a single camera pair, e.g., a 360 degree scene, to be captured at different times Video cameras. Thus, a single pair of cameras can be mounted on the support structure and rotated around the center support of the league, and can be allowed to capture different scenes at different times that allow for 360 degree scene capture.

도 12는 일 예시적인 360 장면 환경(1200), 예를 들면, 360도 장면의 상이한 부분들을 캡처하는 각각의 카메라의 상이한 카메라 위치들에 대응하는 상이한 뷰잉 영역들/부분들로 분할될 수 있는, 360 장면 영역을 도시한다. 도시된 예에서, 360 장면 영역(1200)은, 예를 들면, 도 9, 도 10, 및 도 11에 도시되는 카메라 리그(1100)상에 장착되고 위치된 카메라들과 같은, 세 개의 상이한 카메라/카메라 쌍들에 의해 캡처되는 세 개의 180도 구역들에 대응하는 세 개의 부분들로 분할된다. 360도 장면(1200)상에 마킹한 0도는 장면의 중심인 것으로 고려될 수 있다. 어안 렌즈가 사용되지 않는 몇몇 실시예들에서, 각각의 카메라의 시야는 약 120도이고, 따라서 카메라가 대략 120도 장면 영역을 캡처하게 한다. 이러한 실시예들에서, 상이한 120도 장면 부분들의 경계는 360도 장면이 각각 120도의 3 부분으로 분할하는 검은 실선들을 사용하여 도면에 도시된다. 카메라들이 어안 렌즈가 갖춰진 실시예들에서, 각각의 카메라의 시야는 약 180도(+-5도)로 확장하고, 따라서 카메라가 거의 180도(+-5도) 장면 영역을 캡처하게 한다.12 illustrates an exemplary 360 scene environment 1200 that may be divided into different viewing regions / portions corresponding to different camera positions of each camera capturing different portions of a 360 degree scene, for example, 360 < / RTI > In the depicted example, the 360 scene region 1200 includes three different camera / camera locations, such as cameras mounted and positioned on the camera rig 1100 shown in Figures 9, 10, and 11, Is divided into three portions corresponding to three 180 degree zones captured by the camera pairs. The zero degree marked on the 360 degree scene 1200 may be considered to be the center of the scene. In some embodiments where a fisheye lens is not used, the field of view of each camera is about 120 degrees, thus allowing the camera to capture a scene area of about 120 degrees. In these embodiments, the boundaries of the different 120 degree scene portions are shown in the figure using black solid lines that divide the 360 degree scene into three portions of 120 degrees each. In embodiments where cameras are equipped with fisheye lenses, the field of view of each camera extends to about 180 degrees (+ -5 degrees), thus allowing the camera to capture a scene area of nearly 180 degrees (+ -5 degrees).

0도 마크의 왼쪽 및 오른쪽에 대해 90도를 포함하는 제 1 구역(270부터 90까지 180도 정면 장면 영역에 대응하는 구역(1))은 제 1 카메라, 예를 들면, 카메라 디바이스가 대략 180도의 시야를 갖게 하는 어안 렌즈를 갖춘, 정면 장면 영역을 캡처하기 위해 위치된 카메라 쌍(1102)에 의해 캡처될 수 있다. 제 2 구역(구역(2))은 제 2 카메라, 예를 들면, 어안 렌즈를 갖춘 후방 오른쪽 장면 영역을 캡처하기 위해 위치된 카메라 쌍(1104)에 의해 캡처될 수 있는 30으로부터 210까지의 180도 후방 오른쪽 장면 영역에 대응하고, 제 3 구역(구역(3))은, 제 3 카메라, 예를 들면, 어안 렌즈를 갖춘 후방 왼쪽 장면 영역을 캡처하기 위해 위치된 카메라 쌍(1106)에 의해 캡처될 수 있는 150으로부터 330까지의 180도 후방 왼쪽 장면 영역에 대응한다. 범례(1250)는, 예를 들면, 상이한 구역들하에 포함된 장면 영역의 시작 및 종료를 마킹하는, 상이한 구역 경계들을 나타내기 위해 사용된 상이한 라인 패턴들을 식별하는 정보를 포함한다. 상이한 카메라들에 의해 포함된 세 개의 상이한 구역들하의 장면 영역들 사이에 실질적인 중첩이 존재하는 것이 도면으로부터 이해될 수 있다. 도 12의 도시된 예에서, 구역(1)과 구역(2) 사이의 중첩은 60도, 즉, 30 내지 90하의 장면 영역이고, 구역(2)과 구역(3) 사이의 중첩은 또한 60도, 즉, 150 내지 210하의 장면 영역이고, 구역(3)과 구역(1) 사이의 중첩은 60도, 즉, 270 내지 330하의 장면 영역이다. 도시된 예에서, 중첩은 60도이지만, 상이한 여러가지 중첩들이 가능하다는 것이 이해되어야 한다. 몇몇 실시예들에서, 두 개의 상이한 장면 커버리지 영역들 사이의 중첩은 30도 내지 60도 사이에 존재한다.A first zone (zone 1 corresponding to a 180 degree frontal scene area from 270 to 90) that includes 90 degrees to the left and right of the 0 degree mark indicates that the first camera, e.g., the camera device, May be captured by a camera pair 1102 located to capture a frontal scene area, with a fisheye lens to provide a field of view. The second zone (zone 2) is a 180 degree range from 30 to 210 that can be captured by a second camera, e. G., A pair of cameras 1104 positioned to capture a rear right scene region with a fisheye lens. (Zone 3) is captured by a third camera, e.g., camera pair 1106 located to capture a rear left scene region with a fisheye lens, corresponding to a rear right scene region, Which corresponds to a scene area from 180 to 150 degrees backward from 150 to 330. FIG. Legend 1250 includes information identifying different line patterns used to represent different zone boundaries, e.g., marking the start and end of scene regions included under different zones. It can be seen from the figure that there is substantial overlap between scene regions under three different zones included by different cameras. In the example shown in Fig. 12, the overlap between zone 1 and zone 2 is 60 degrees, i.e., 30 to 90 degrees below the scene area, and the overlap between zone 2 and zone 3 is also 60 degrees , That is, a scene area of 150 to 210 degrees, and the overlap between the zone 3 and the zone 1 is a scene area of 60 degrees, that is, 270 to 330 degrees. In the illustrated example, it is to be understood that although the overlap is 60 degrees, various different overlaps are possible. In some embodiments, the overlap between two different scene coverage areas is between 30 degrees and 60 degrees.

몇몇 실시예들에서, 콘텐트 제공자는 상이한 카매레들에 의해 캡처된 360도 장면 영역들의 상이한 부분들에 대응하는 콘텐트를 포함하는 콘텐트 스트림을 고객 재생 디바이스들로 발행, 예를 들면, 멀티캐스트한다. 몇몇 실시예들에서, 상이하게 인코딩된 상이한 장면 영역들에 대응하는 콘텐트의 다수의 버전들이 콘텐트 제공자에 의해 멀티캐스트되고, 특정한 버전을 지원하고 선호하는 재생 디바이스는 디코딩 및 재생할 적절한 콘텐트 스트림을 선택할 수 있다. 몇몇 실시예들의 일 양태에 따라, 재생 디바이스는 사용자의 현재 시야를 나타내는 현재 머리 위치를 추적하고, 재생에 사용하기 위해 수신하도록 선택할 360도 장면 영역의 일 부분에 대응하는 콘텐트를 포함하는 이용 가능한 콘텐트 스트림들 중 하나 이상을 결정한다. 예를 들면, 사용자 머리 위치가 사용자가 앞을 바라보고 있는 경우, 재생 디바이스는 360도 장면의 180도 정면 부분을 전달하는 스트림을 디코딩하지만, 사용자 머리 위치 및 뷰잉각이 변경된 것이 검출될 때, 재생 디바이스는 사용자의 현재 뷰잉각, 예를 들면, 360도 장면 영역의 후방 오른쪽, 후방 왼쪽, 뒤에 일치하는 장면 부분에 대응하는 스트림을 디코딩한다. 몇몇 실시예들에서, 360도 장면 영역의 제 1 부분, 예를 들면, 정면 180도에 대응하는 콘텐트를 포함하는 스트림은 360도 장면의 정면 부분을 캡처하기 위해 사용된 정면을 마주보는 카메라 쌍의 왼쪽 및 오른쪽 카메라들에 의해 캡처된 장면 영역을 포함한다.In some embodiments, the content provider publishes, e.g., multicasts, a content stream that includes content corresponding to different portions of the 360 degree scene regions captured by different cars, to the customer playback devices. In some embodiments, multiple versions of content corresponding to differently encoded different scene regions are multicasted by the content provider, supporting a particular version and the preferred playback device may select an appropriate content stream to decode and play have. According to one aspect of some embodiments, the playback device tracks the current head position representing the current view of the user and includes available content including content corresponding to a portion of the 360 degree scene area to choose to receive for playback One or more of the streams. For example, if the user's head position is looking ahead, the playback device will decode the stream carrying the 180 degrees frontal portion of the 360 degree scene, but when the user's head position and viewing angle change is detected, The device decodes the stream corresponding to the portion of the scene corresponding to the current viewing angle of the user, for example, the rear right, rear left, and back of the 360 degree scene region. In some embodiments, a stream that includes content corresponding to a first portion of a 360 degree scene area, e.g., a frontal 180 degree, is used to capture the front portion of a 360 degree scene, And scene regions captured by the left and right cameras.

도 13은, 예를 들면, 예시적인 360 장면 영역의 뷰잉 영역들/부분들을 포함하도록 위치될 수 있는 예시적인 카메라 리그(1100)상에, 상이한 카메라들에 의해 캡처될 수 있는 도 12의 예시적인 360 장면 영역의 상이한 부분들을 도시하는 예를 도시한다. 도 13 예는 예시적인 360 장면 영역의 상이한 부분들을 도시하는 도면들(1300, 1320, 1350)을 포함한다. 그러나, 상이한 카메라들에 의해 캡처된 장면의 상이한 부분들의 각각의 적어도 일부들이 몇몇 실시예들에서 중첩하는 것이 도면들로부터 이해될 수 있다. 상이한 셰이딩 패턴들이 상이한 카메라 위치들에 대응하는 장면 영역의 부분들을 보여주기 위해 도면들(1300, 1320, 1350)의 각각에 사용되었다. 몇몇 실시예들에서, 도면들(1300, 1320, 1350)에 도시된 상이한 장면 부분들은 상이한 뷰잉 방향들에 대응하는 콘텐트를 제공하는 상이한 콘텐트 스트림들을 통해 전달된다. 도 13 예에서 장면 부분들이 대략 180도 뷰잉 영역을 포함하는 것으로 도시되지만, 몇몇 실시예들에서, 장면 부분들은 120도와 180도 사이를 포함할 수 있다.FIG. 13 shows an example of an exemplary camera rig 1100, which may be located, for example, to include viewing regions / portions of an exemplary 360 scene region, ≪ RTI ID = 0.0 > 360 < / RTI > FIG. 13 example includes illustrations 1300, 1320, 1350 illustrating different portions of an exemplary 360 scene region. However, it can be seen from the drawings that at least some of each of the different parts of the scene captured by different cameras overlap in some embodiments. Different shading patterns were used for each of the figures 1300, 1320, 1350 to show portions of the scene area corresponding to different camera positions. In some embodiments, the different scene portions shown in Figures 1300, 1320 and 1350 are conveyed through different content streams that provide content corresponding to different viewing directions. In the example of FIG. 13, the scene portions are shown to include an approximately 180 degree viewing region, but in some embodiments, the scene portions may comprise between 120 and 180 degrees.

도면(1300)은 360도 장면(1200)의 제 1 예시적인 장면 부분(1305)을 도시한다. 제 1 예시적인 장면 부분(1305)은 정면 뷰잉 방향에 대응하고, 360도 장면 환경 중 180도 또는 대략 180도 뷰잉 영역을 포함한다. 제 1 장면 부분(1305)은, 예를 들면, 0도 카메라 위치에 위치된, 제 1 카메라 쌍(902 또는 1102)에 의해 캡처될 수 있다. 제 1 예시적인 장면 부분(1305)상의 영역은 대각선 패턴을 사용하여 도면(1300)에 도시된다. 제 1 예시적인 장면 부분(1305)은 제 1, 예를 들면, 정면, 뷰잉 방향에 대응하는 콘텐트의 프레임들을 전달하는 제 1 스트림에 의해 전달될 수 있다.Drawing 1300 illustrates a first exemplary scene portion 1305 of a 360 degree scene 1200. The first exemplary scene portion 1305 corresponds to a front viewing direction and includes a 180 degree or approximately 180 degree viewing area in a 360 degree scene environment. The first scene portion 1305 may be captured by the first camera pair 902 or 1102, for example, located at a zero degree camera position. An area on the first exemplary scene portion 1305 is shown in the drawing 1300 using a diagonal pattern. A first exemplary scene portion 1305 may be conveyed by a first stream carrying frames of content corresponding to a first, e.g., frontal, viewing direction.

도면(1320)은 360도 장면(1200)의 제 2 예시적인 장면 부분(1307)(도면(1320)에 도시된 부분(1307', 1307")을 포함하는)을 도시한다. 제 2 예시적인 장면 부분(1307)은 후방 오른쪽 뷰잉 방향에 대응하고, 30으로부터 210으로 연장하는 360도 장면 환경 중 180도 또는 대략 180도 뷰잉 영역을 포함한다. 제 2 장면 부분(1307)은 도 9 및 도 10에 도시된 120도 카메라 위치에 위치된, 예를 들면, 제 2 카메라 쌍(904)에 의해 캡처될 수 있다. 제 2 예시적인 장면 부분(1307)하의 영역은 수평선 패턴을 사용하여 도면(1300)에 도시된다. 도면들(1300, 1302)을 고려하자. 제 1 및 제 2 장면 부분들(1305, 1307) 사이의 장면 영역의 중첩 부분(1308)을 주의하라. 중첩 부분(1308)은 장면 영역(1200)의 제 1 및 제 2 장면 부분들(1305, 1307) 모두에 공통적인 캡처된 장면 영역의 일 부분을 도시한다. 몇몇 실시예들에서, 제 1 및 제 2 장면 부분들(1305, 1307) 사이의 중첩은 +-2 내지 3도 변동을 갖고 30도 내지 60도 사이에 있다. 도 13의 도시된 예에서, 중첩 부분(1308)은 60도, 예를 들면, 30 내지 90의 영역이다. 따라서, 몇몇 실시예들에서, 상이한 콘텐트 스트림들에 의해 제공된 및/또는 상이한 카메라들에 의해 캡처된 상이한 뷰잉 방향들에 대응하는 장면 영역의 적어도 일 부분은 중첩한다. 몇몇 다른 실시예들에서, 상이한 카메라들에 의해 캡처된 상이한 뷰잉 방향들에 대응하는 장면 영역들 사이에 중첩이 존재하지 않는다. 몇몇 실시예에서, 제 2 예시적인 장면 부분(1307)은 제 2 뷰잉 방향에 대응하는 콘텐트의 프레임들을 전달하는 제 2 스트림에 의해 전달될 수 있다.Drawing 1320 shows a second exemplary scene portion 1307 (including portions 1307 ', 1307 "shown in Figure 1320) of a 360 degree scene 1200. A second exemplary scene The portion 1307 corresponds to the rear right viewing direction and includes a 180 degree or 180 degree viewing area in a 360 degree scene environment extending from 30 to 210. The second scene portion 1307 is shown in Figures 9 and 10 May be captured by a second camera pair 904, for example located at the illustrated 120 degree camera position. An area under the second exemplary scene portion 1307 may be captured in the view 1300 using a horizontal line pattern Consider the figures 1300 and 1302. Note the overlapping portion 1308 of the scene region between the first and second scene portions 1305 and 1307. The overlapping portion 1308 includes a scene region 1308, 1200. In some embodiments, the portion of the captured scene region that is common to both the first and second scene portions 1305, , The overlap between the first and second scene portions 1305 and 1307 has a + -2 to 3 degree variation and is between 30 degrees and 60 degrees. In the example shown in FIG. 13, the overlap portion 1308 60 degrees, for example, from 30 to 90. Thus, in some embodiments, at least a portion of a scene region provided by different content streams and / or corresponding to different viewing directions captured by different cameras In some other embodiments, there is no overlap between scene regions corresponding to different viewing directions captured by different cameras. In some embodiments, the second exemplary scene portion < RTI ID = 0.0 > 1307 may be carried by a second stream carrying frames of content corresponding to a second viewing direction.

도면(1350)은 360도 장면(1200)의 제 3 예시적인 장면 부분(1309)(도면(1350)에 도시된 부분들(1309', 1309")을 포함하는)을 도시한다. 제 3 예시적인 장면 부분(1309)은 후방 왼쪽 뷰잉 방향에 대응하고, 150으로부터 330까지 연장하는 360도 장면 환경 중 180도 또는 대략 180도 뷰잉 영역을 포함한다. 제 3 장면 부분(1309)은 도 9 및 도 10에 도시되는 240도 카메라 위치에 위치된 예를 들면, 제 3 카메라 쌍(906)에 의해 캡처될 수 있다. 제 3 예시적인 장면 부분(1309)하의 영역이 수직선 패턴을 사용하여 도면(1300)에 도시된다. 도면들(1320, 1350)을 고려하자. 제 2와 제 3 장면 부분들(1307, 1309) 사이의 중첩 영역 부분을 조합하여 구성하는 중첩 부분들(1310, 1310')을 주의하라. 중첩 부분들(1310, 1310') 하에 공통의 영역은 장면 영역(1200)의 제 2 및 제 3 장면 부분들(1307, 1309) 모두에 공통인 캡처된 장면 영역의 부분을 보여준다. 몇몇 실시예들에서, 제 2 와 제 3 장면 부분들(1307, 1309) 사이의 중첩은 ±2-3도 변동을 갖고 30도와 60도 사이에 존재한다. 도 13의 도시된 예에서, 중첩 부분들(1310, 1310')은 함께 약 60도, 예를 들면, 150 내지 210의 영역을 포함하여 함께 포함한다. 여기서 도면들(1300, 1350)을 더 생각하자. 제 1과 제 3 장면 부분들(1305, 1309) 사이의 중첩 영역 부분을 나타내는 중첩 부분(1312)을 주의하자. 몇몇 실시예에서, 제 3의 예시적인 장면 부분(1309)은 제 3 뷰잉 방향에 대응하는 콘텐트의 프레임들을 전달하는 제 3 스트림에 의해 전달될 수 있다.Drawing 1350 illustrates a third exemplary scene portion 1309 (including portions 1309 ', 1309 "shown in Figure 1350) of a 360 degree scene 1200. A third exemplary scene portion 1309 The scene portion 1309 corresponds to the rear left viewing direction and includes a 180 degree or approximately 180 degree viewing area of a 360 degree scene environment extending from 150 to 330. The third scene portion 1309 is shown in Figures 9 and 10 For example, by a third camera pair 906 located at a 240 degree camera position shown in Figure 13. An area under the third exemplary scene portion 1309 is shown in Figure 1300 using a vertical line pattern Consider figures 1320 and 1350. Note the overlapping parts 1310 and 1310 'that combine the overlapping area parts between the second and third scene parts 1307 and 1309. [ A common area under the overlapping portions 1310 and 1310 'is a cap that is common to both the second and third scene portions 1307 and 1309 of the scene region 1200. [ In some embodiments, the overlap between the second and third scene portions 1307 and 1309 is between < RTI ID = 0.0 > 30 < / RTI & The overlapping portions 1310 and 1310 'together include an area of about 60 degrees, for example, between 150 and 210. Let's consider further drawings 1300 and 1350 here. Note the overlapping portion 1312 that represents the portion of the overlapping region between the first and third scene portions 1305 and 1309. In some embodiments, the third exemplary scene portion 1309 is shown in a third viewing direction May be conveyed by a third stream conveying frames of corresponding content.

도 13 예의 부분으로 도시된 도면들은 본 발명의 몇몇 양태들의 이해를 용이하기 위한 예를 도시하지만, 다른 변동들이 개시의 범위 내에서 가능하다는 것이 이해되어야 한다.It should be understood that the drawings depicted in the example portion of FIG. 13 illustrate examples to facilitate understanding of some aspects of the present invention, but other variations are possible within the scope of the disclosure.

도 14a 및 도 14b의 조합을 포함하는 도 14는 본 발명의 실시예들에 따라 재생 시스템을 동작시키는 일 예시적인 방법의 단계들을 도시하는 플로차트(1400)이다. 시스템은 도 8에 도시된 재생 시스템(800)일 수 있거나 본 출원에서 도시된 다른 도면들 중 어느 것의 재생 시스템일 수 있다.14, which includes the combination of FIGS. 14A and 14B, is a flowchart 1400 illustrating steps of an exemplary method of operating a playback system in accordance with embodiments of the present invention. The system may be the playback system 800 shown in FIG. 8 or it may be a playback system of any of the other views shown in this application.

예시적인 방법은 단계(1402)에서 시작하고, 재생 디바이스, 예를 들면, 도 19의 재생 디바이스(1900) 또는 다른 도면들 중 어느 것의 재생 디바이스가 턴온되고 개시된다. 논의의 목적들을 위해, 재생 시스템이, 예를 들면, 입체 영상 콘텐트의 경우에 상이한 이미지들이 나타내지는 사용자의 왼쪽 눈 및 오른쪽 눈에, 이미지 콘텐트가 나타내지는 디스플레이를 포함하는 헤드 마운트 디스플레이 디바이스(1905)에 결합된 컴퓨터 시스템(1900')을 포함하는 것을 고려하자. 컴퓨터 시스템(1900')이 디스플레이를 포함하는 헤드 마운트 디바이스에 대해 외부로 도시되지만, 컴퓨터 시스템(1900')은 그에 대해 외부라기보다는 헤드 마운트 디스플레이로 통합될 수 있다.An exemplary method begins at step 1402 and the playback device of any of the playback devices, e.g., playback device 1900 of FIG. 19 or other views, is turned on and started. For purposes of discussion, a playback system may include a head-mounted display device 1905 that includes, for example, a display in which the image content is displayed in the left and right eyes of the user represented by different images in the case of stereoscopic content, And a computer system 1900 'coupled to the computer system. Although the computer system 1900 'is shown externally to the head-mounted device including the display, the computer system 1900' may be integrated with the head-mounted display rather than external to it.

동작은 단계들(1402)로부터 단계(1404)로 진행한다. 단계(1404)에서, 재생 시스템(1900)은, 예를 들면, 프로그램 가이드의 일부로서, 복수의 콘텐트 스트림들 및/또는 초기화 데이터에 관한 정보를 수신한다. 수신된 정보는 도 18에 도시된 형태일 수 있고, 콘텐트 스트림들이 콘텐트를 요청하거나 콘텐트에 대해 동조시키기 위해 사용될 수 있는 멀티캐스트 그룹 식별자 또는 다른 식별자와 같은 스트림들을 수신하기 위해 사용될 수 있는 정보와 함께 이용 가능하거나 이용 가능한 것을 나타내는 정보를 포함한다. 예를 들면, 콘텐트 스트림과 연관된 멀티캐스트 어드레스는 콘텐트가 스위칭된 디지털 비디오를 통해 공급될 때 콘텐트를 요청하기 위해 사용될 수 있는 수신된 정보 또는 프로그램 식별자에 포함될 수 있다. 방송 콘텐트의 경우, 수신된 정보는 재생 디바이스가 특정 콘텐트 스트림을 수신하기 위해 동조되어야 하는 채널 및/또는 주파수를 나타내는 동조 정보를 포함할 수 있고, 때때로 그를 포함한다.Operation proceeds from steps 1402 to step 1404. At step 1404, the playback system 1900 receives information about a plurality of content streams and / or initialization data, e.g., as part of a program guide. The received information may be in the form shown in Figure 18 and may be combined with information that may be used to receive streams such as multicast group identifiers or other identifiers that may be used by content streams to request content or to tune to the content Information that is available or available. For example, a multicast address associated with a content stream may be included in the received information or program identifier that may be used to request content when the content is provided via switched digital video. In the case of broadcast content, the received information may include, and sometimes includes, tuning information indicative of the channel and / or frequency with which the playback device should be tuned to receive the particular content stream.

단계(1404)에서 수신된 정보는 하나 이상의 프로그램들에 대한 정보를 포함할 수 있다. 주어진 프로그램, 예를 들면, 스포츠 경기, 콘서트, 등에 대하여, 상이한 스트림들이 콘텐트가 대응하는 환경에서 카메라 위치에 관하여 상이한 뷰잉 방향들에 대응하는 콘텐트를 제공하는 데 이용 가능할 수 있다. 카메라 위치는 재생 동안 뷰잉 위치에 대응한다. 따라서, 재생 동안 사용자의 뷰잉각들은 수신될 수 있는 콘텐트에 나타내진 환경의 부분들과 상관된다. 환경의 상이한 부분들은 상이한 스트림들에 전달될 수 있다. 환경의 각각의 부분, 예를 들면, 360도 환경의 부분에 대해, 상이한 데이터 레이트들에 대응하는 하나 이상의 스트림들은 제공되는 정보에 리스트될 수 있다. 환경의 상부 및 하부 부분들이 또한 제공될 수 있다. 몇몇 실시예들에서 개별적인 스트림들의 콘텐트는 왼쪽 및 오른쪽 눈 이미지들에 대해 제공되는 상이한 정보를 갖는 입체 영상 콘텐트이고, 그에 의해 사용자에게 디스플레이될 상이한 이미지들이 원하는 3D 효과를 제공하게 한다. 몇몇 실시예들에서, 구형 환경의 상부 및 하부 부분들은 왼쪽 및 오른쪽 눈 뷰들이 동일한 모노 이미지들로서 제공되고, 따라서 두 개의 이미지들보다는 제공될 단 하나의 이미지를 요구한다.The information received in step 1404 may include information about one or more programs. For a given program, for example a sporting event, a concert, etc., different streams may be available to provide content corresponding to different viewing directions with respect to camera position in the context in which the content corresponds. The camera position corresponds to the viewing position during playback. Thus, during playback, the user's viewing angles are correlated with portions of the environment represented in the content that can be received. Different parts of the environment may be communicated to different streams. For each portion of the environment, e.g., a portion of the 360 degree environment, one or more streams corresponding to different data rates may be listed in the provided information. Upper and lower portions of the environment may also be provided. In some embodiments, the content of the individual streams is a stereoscopic video content having different information provided for the left and right eye images, thereby allowing different images to be displayed to the user to provide the desired 3D effect. In some embodiments, the upper and lower portions of the spherical environment are provided with the same mono images as the left and right eye views, thus requiring only one image to be presented rather than two images.

프로그램, 환경의 부분, 및 스트림의 데이터 레이트에 관한 정보는 어느 스트림이 콘텐트를 스트리밍하기 위해 이용 가능한 주어진 제한된 대역폭에서 수신되는지를 우선 순위화하기 위해 재생 시스템에 의해 사용될 수 있고, 몇몇 실시예들에서 사용된다. 주어진 시간에 수신할 스트림의 우선 순위화 및 선택은 사용자의 머리 위치 및/또는 사용자의 현재 또는 과거 머리 회전의 방향에 기초할 수 있고, 몇몇 실시예들에서, 그에 기초한다.The information about the program, the portion of the environment, and the data rate of the stream may be used by the playback system to prioritize which stream is received at a given limited bandwidth available for streaming the content, and in some embodiments Is used. Prioritization and selection of streams to be received at a given time may be based on, and in some embodiments based on, the user's head position and / or the direction of the user's current or previous head rotation.

입체 영상 콘텐트의 스트리밍의 경우, 주어진 제한된 대역폭 및/또는 데이터 제한들, 수신할 적절한 스트림의 선택은 만족스럽고 고품질의 뷰잉 경험을 위해 중요할 수 있다. 도 18에 도시된 정보와 동일하거나 유사할 수 있는 단계(1404)에서 수신된 정보, 예를 들면, 스트림 정보(1405)는 메모리에 저장되고, 예를 들면, 원하는 스트림이 전달되는 재생 디바이스에 공급될 스위칭된 디지털 비디오 채널을 네트워크 디바이스에 나타냄으로써, 선택된 스트림 및/또는 스트림의 요청된 전달을 제공하는 채널에 동조시키는 선택된 스트림에 대응하는 멀티캐스트 그룹을 연결시킴으로써, 스트림 또는 스트림들의 선택을 위해 특정한 시점에서 수신하고 선택된 스트림 전달을 개시하기 위해 사용된다.In the case of streaming of stereoscopic video content, given limited bandwidth and / or data limits, selection of the appropriate stream to receive may be important for a satisfactory and high quality viewing experience. The information received in step 1404, which may be the same as or similar to the information shown in FIG. 18, for example, stream information 1405 is stored in memory and may be supplied to a playback device, for example, By connecting a multicast group corresponding to a selected stream tuned to a channel providing a requested delivery of the selected stream and / or stream by presenting the switched digital video channel to the network device, And is used to initiate the delivery of the selected stream.

동작은 단계(1404)로부터 단계(1406)로 진행한다. 단계(1406)에서, 초기화 동안, 사용자의 현재 머리 위치가 검출된다. 초기화 단계 동안 검출된 머리 위치가 정면을 바라보는 위치인 것으로 가정될 것을 인식하는 사용자는 보통 단계(1406) 동안 편안한 레벨의 정면을 마주보는 위치에 그의 머리를 유지한다.Operation proceeds from step 1404 to step 1406. [ In step 1406, during initialization, the current head position of the user is detected. The user recognizing that the head position detected during the initialization phase is assumed to be the front facing position typically maintains his head in a position facing the front of the comfortable level during step 1406. [

동작은 단계(1406)로부터 단계(1408)로 진행한다. 단계(1408)에서, 단계(1406)에서 검출된 사용자의 머리 위치(1407)는, 사용자가 그의 머리를 0도 환경 위치, 즉, 환경의 특정 부분에 대응하는 콘텐트 스트림에 이후 인코딩되고 포함되는 캡처 이미지들에 사용된 카메라들에 의해 캡처된 전방 위치에 대응할 이러한 위치에 있을 때 디스플레이된 전방(0도) 환경 뷰잉 위치 및 뷰로서 처리된다. 스포츠 경기의 경우에, 이러한 위치는 보통 환경에서 동작의 주요 영역, 예를 들면, 스트림 또는 스트림들이 콘서트에 대응하는 경우, 무대 및 스트림들이 스포츠 경기에 대응하는 경우, 필드의 중심에 대응할 것이다. 따라서, 단계(1408)에서, 사용자의 뷰잉 위치는 0도 뷰잉 위치, 예를 들면, 장면 영역의 전방/정면 위치로서 해석되도록 설정될 것이다. 360도 뷰의 부분들이 사용자가 그의 머리를 회전시키는 경우 보이는 상이한 부분들을 갖는 수평 뷰잉 위치들에 대응한다는 것을 주의하라. 사용자가 머리를 위 또는 아래로 움직임으로써, 사용자는 하늘 부분 및/또는 지상 부분을 단독으로 또는 하나 이상의 다른 부분들과 조합하여 볼 수 있다. 주요 장면 영역이 레벨 머리 위치를 가정하는 360도 회전에 따른 부분들로 분할되기 때문에, 이러한 부분들에 대응하는 스트림들은 보통 더 많은 대역폭을 할당받고, 상부/하부 장면 부분들은 정지 이미지들 또는 드물게 변경하는 것을 사용하여 나타내질 수 있다.Operation proceeds from step 1406 to step 1408. [ In step 1408, the user's head position 1407 detected in step 1406 is determined such that the user has captured his or her head in a zero degree environmental location, i.e., a content stream that corresponds to a particular portion of the environment, (0 degree) environment viewing position and view when displayed in this position corresponding to the forward position captured by the cameras used in the images. In the case of a sporting event, this location will correspond to the center of the field, if the main areas of operation, e.g., streams or streams, correspond to a concert in a normal environment, and the stage and streams correspond to a sporting event. Thus, at step 1408, the user's viewing position will be set to be interpreted as a 0 degree viewing position, e.g., a front / front position of the scene area. Note that the parts of the 360 degree view correspond to horizontal viewing positions with different parts visible when the user rotates his head. By moving the user up or down the head, the user can view the sky portion and / or the ground portion alone or in combination with one or more other portions. Since the main scene region is divided into portions along the 360 degree rotation assuming the level head position, the streams corresponding to these portions are usually allocated more bandwidth, and the top / bottom scene portions are still images or rarely changed . ≪ / RTI >

동작은 단계(1408)로부터 단계(1406)로 진행하고, 환경 깊이 맵이 수신된다. 깊이 맵은 콘텐트 스트림의 이미지들이 맵핑될 3D 환경의 표면을 규정한다. 깊이 맵의 수신이 없을 시, 환경의 이미지들이 디스플레이 전에 렌더링하는 동안 맵핑되는 표면인 구의 표면 내부를 갖는 환경의 형상이 가정된 디폴트이다. 깊이 맵을 제공 및 사용함으로써, 콘텐트 스트림 내 이미지들이 시뮬레이션될 환경의 형상 및 표면들이 더 사실적인 표면들로 맵핑될 것이기 때문에, 더 사실적인 경험이 달성된다. 따라서, 단계(1410)에서 수신된 깊이 맵은 수신될 사용자에 의해 선택된 콘텐트가 또한 대응하는 환경에 대응한다. 단계(1410)에서 수신된 환경 맵, 또는 맵이 수신되지 않는 경우 디폴트 맵은 이미지들을 렌더링할 때 후속 사용을 위해 환경 맵(1411)으로서 저장된다.Operation proceeds from step 1408 to step 1406, where an environmental depth map is received. The depth map defines the surface of the 3D environment to which images of the content stream are to be mapped. In the absence of a depth map reception, the shape of the environment with the interior surfaces of the sphere being the surfaces mapped during rendering before the images of the environment is the assumed default. By providing and using a depth map, a more realistic experience is achieved because the shapes and surfaces of the environment in which the images in the content stream are to be simulated will be mapped to more realistic surfaces. Thus, the depth map received in step 1410 corresponds to the environment in which the content selected by the user to be received also corresponds. If the received environment map, or map, in step 1410 is not received, the default map is stored as environment map 1411 for subsequent use when rendering images.

동작은 단계(1410)로부터 단계(1412)로 진행한다. 단계(1412)에서, 2D 이미지 콘텐트를 3D 표면의 적어도 일 부분상에 맵핑하기 위해 사용될 하나 이상의 UV 맵들이 수신된다. 일 실시예에서, 적어도 하나의 UV 맵은 상이한 개별적인 이미지들로 나타내질 수 있는 환경의 각각의 부분에 대해 수신된다. 몇몇 이러한 실시예들에서, 콘텐트 스트림에 의해 전달된 이미지들이 상이한 카메라들, 예를 들면, 왼쪽 및 오른쪽 눈 카메라들에 의해 캡처될 때, 상이한 UV 맵들은 상이한 카메라들에 대해 제공될 수 있고, 때때로, 그에 제공된다. 따라서, 도 14a 예에서, 전방 부분과 같은 환경의 제 1 부분에 대응하는 제 1 UV 맵이 단계(1414)에서 수신되고, 단계(1416)에서, 왼쪽 후방 부분과 같은 환경의 제 2 부분에 대응하는 제 2 UV 맵이 수신되고, 단계(1417)에서, 오른쪽 후방 부분과 같은 환경의 제 3 부분에 대응하는 제 3 UV 맵이 수신된다. 환경의 상부 및 하부 부분들에 대응하는 UV 맵들은 단계(1418) 및 단계(1420), 각각에서 수신된다. 상기 부분들이 동일한 크기인 경우, 동일한 UV 맵이 다수의 부분들에 대해 사용된다. 그러나, 몇몇 실시예들에서, 상이한 UV 맵들이 상이한 카메라들에 의해 캡처된 이미지들에 대해 사용된다.Operation proceeds from step 1410 to step 1412. [ At step 1412, one or more UV maps to be used to map the 2D image content onto at least a portion of the 3D surface are received. In one embodiment, the at least one UV map is received for each portion of the environment that may be represented by different individual images. In some such embodiments, when the images carried by the content stream are captured by different cameras, e.g., left and right eye cameras, different UV maps may be provided for different cameras, , Is provided to him. Thus, in the example of FIG. 14A, a first UV map corresponding to a first portion of the environment, such as a front portion, is received at Step 1414, and at Step 1416 a second UV map corresponding to a second portion of the environment, A third UV map is received that corresponds to a third portion of the environment, such as the right rear portion. UV maps corresponding to the upper and lower portions of the environment are received in steps 1418 and 1420, respectively. If the portions are of equal size, the same UV map is used for multiple portions. However, in some embodiments, different UV maps are used for images captured by different cameras.

따라서, 하나의 이러한 실시예에서, 입체 영상 이미지 데이터가 제공되는 환경의 각각의 부분, 예를 들면, 왼쪽 및 오른쪽 눈 이미지들에 대해, UV 맵들이 특정한 왼쪽 또는 오른쪽 눈 이미지 콘텐트를 캡처하기 위해 사용된 카메라 어셈블리의 특정한 특징들을 고려할 수 있도록 개별적인 UV 맵들은 왼쪽 및 오른쪽 눈 이미지들의 각각에 대해 수신 및 저장될 수 있다.Thus, in one such embodiment, for each portion of the environment in which stereoscopic image data is provided, e.g., left and right eye images, UV maps are used to capture specific left or right eye image content Individual UV maps may be received and stored for each of the left and right eye images so that specific features of the camera assembly may be taken into account.

각각의 UV 맵은 3D 환경의 표면의 대응하는 부분으로 맵이 대응하는 콘텐트 스트림의 2차원 이미지를 맵핑하기 위해 사용된 맵을 제공한다. 이러한 방식으로 카메라에 의해 캡처된 이미지들은 2D 이미지들로서 송신될 수 있고 이후 3D 모델로 규정된 표면 또는 표면의 일 부분상에 텍스처로서 맵핑될 수 있다.Each UV map provides a map that is used to map a two-dimensional image of the corresponding content stream to a corresponding portion of the surface of the 3D environment. Images captured by the camera in this manner can be transmitted as 2D images and then mapped as textures on a portion of the surface or surface defined by the 3D model.

3D 모델 정보 및 UV 맵들에 의해, 장면 부분에 대한 다른 콘텐트가 수신 및 저장될 수 있는 경우, 디폴트들로서 사용될 수 있는 이미지들이 수신된다. 단계(1422)에서, 콘텐트, 예를 들면, 제 1, 제 2, 제 3, 및 제 5 장면 부분들 중 하나 이상에 대응하는 이미지가 단계(1422)에서 수신되고 저장된다. 몇몇 실시예들에서, 환경의 일 부분에 대응하는 다수의 대안적인 이미지들, 예를 들면, 배경 부분 또는 하늘 부분은 단계(1422)에서 수신 및 저장된다. 디폴트 이미지가 다수의 디폴트 이미지들이 저장되는 일 부분에 대한 이벤트 동안 주어진 시점에서 사용되는 것을 나타내는 제어 정보가 수신될 수 있다. 예를 들면, 몇몇 실시예들에서, 앉아있는 관객의 배경 이미지 및 서있는 관객의 배경 영역 이미지는 두 개의 디폴트 이미지들로서 저장된다. 제어 정보는 어느 배경 이미지가 이벤트의 주어진 부분에 사용되는지를 나타내기 위해 사용된다. 예를 들면, 경기 또는 콘서트에서 기립 박수에 대응하는 일 부분 동안, 관중 기립 이미지는 디스플레이될 배경 이미지가 사용자가 배경 방향으로 향하는 것으로 시그널링된다. 그러나, 관중이 보통 앉아있을 경우의 주요 부분 동안, 사용자가 그의 머리를 배경 쪽으로 돌릴 경우, 앉아있는 관객의 디폴트 이미지가 사용되어야 한다는 것을 제어 정보가 시그널링한다. 제어 정보는 콘텐트 스트림으로부터 개별적으로 시그널링될 수 있거나 또는 디폴트 이미지들 중 하나 이상이 관련되는 부분과 상이한 환경의 일 부분에 대한 콘텐트 스트림과 함께 포함될 수 있다. 예를 들면, 전방 방향에 대응하는 콘텐트 스트림은 전방 방향에 대응하는 이미지들, 예를 들면, 왼쪽 및 오른쪽 눈 이미지들, 뿐만 아니라 디폴트 이미지들이 하늘, 지상, 이벤트 동안 다양한 시간들에서 오른쪽 배경 부분 및 왼쪽 배경 부분에 대해 사용되어야 하는 것을 나타내는 제어 정보를 제공할 수 있다. 대안적으로, 재생 디바이스는 특정 시점에서 전경 이미지의 하나 이상의 특징들에 대한 유사도의 광도에 기초하여 배경 또는 하늘 부분 중 어느 것을 사용할지를 결정할 수 있다. 예를 들면, 전경 이미지들이 어두울 때, 이는 검출될 수 있고 자동으로 검출된 흐린 하늘 이미지일 수 있고, 반면에 전경 이미지가 더 밝을 때, 이것이 또한 검출될 수 있고 수신 및 저장된 이용 가능한 디폴트 하늘 이미지들로부터 자동으로 선택된 덜 흐리고, 더 밝은 하늘 이미지일 수 있다.By means of 3D model information and UV maps, if other content for the scene part can be received and stored, images that can be used as defaults are received. In step 1422, an image corresponding to one or more of the content, e.g., the first, second, third, and fifth scene portions, is received and stored in step 1422. In some embodiments, a number of alternative images, e.g., a background portion or a sky portion, corresponding to a portion of the environment are received and stored at Step 1422. Control information may be received indicating that the default image is to be used at a given time during an event for a portion of the plurality of default images being stored. For example, in some embodiments, a background image of a sitting audience and a background image of a standing audience are stored as two default images. The control information is used to indicate which background image is used for a given portion of the event. For example, during a portion of a game or concert that corresponds to a standing ovation, the spectator standing-up image is signaled that the background image to be displayed is facing the user in the background direction. However, during the main part of the case where the audience is usually sitting, the control information signals that a default image of the sitting audience should be used if the user turns his head to the background. The control information may be signaled separately from the content stream or may be included with the content stream for a portion of the environment that differs from the portion to which one or more of the default images are related. For example, the content stream corresponding to the forward direction may include images corresponding to the forward direction, e.g., left and right eye images, as well as default images at sky, ground, right background portion at various times during the event, It may provide control information indicating that it should be used for the left background portion. Alternatively, the playback device may determine, at a particular point in time, which of the background or sky portions to use based on the brightness of the similarity to one or more features of the foreground image. For example, when the foreground images are dark, this may be the detected cloudy sky image that can be detected and automatically detected, while when the foreground image is brighter, it may also be detected and the received and stored available default sky images Lt; RTI ID = 0.0 > a < / RTI > less cloudy, brighter sky image.

단계(1422)에서, 상이한 환경 부분들에 대응하는 디폴트 이미지들은 보통 인코딩된 형태로 수신 및 저장된다. 단계(1424)에서, 수신된 이미지들 중 하나 이상이 디코딩되고, 디코딩된 콘텐트는 이후 단계(1426)에서 하나 이상의 이미지 버퍼들에 저장된다. 이러한 방식으로, 디폴트 이미지들은 그들이 재생 동안 렌더링을 위해 필요한 때에 이후에 다시 디코딩될 필요가 없도록 디코딩된 형태로 디코딩 및 저장될 수 있다. 디폴트 이미지가 다수번 사용될 수 있기 때문에, 디코딩 및 저장은 렌더링에서 또는 렌더링 전에만 이미지를 디코딩하기 위해 그와 달리 요구되는 디코딩 요구들을 감소시킬 수 있다. 처리 자원들이 요컨대 디코딩된 형태로 디폴트 이미지들을 사전 디코딩 및 저장을 공급할 수 있다고 가정하면, 이미지들이 디스플레이 전에 즉시 디코딩되고, 이후 그것이 더 이상 필요하지 않으면, 디코딩된 이미지는 삭제되고, 예를 들면, 메모리로부터 제거되는 실시예들에 비해 프로세서 자원들의 사용을 개선한다.In step 1422, default images corresponding to different environment portions are received and stored in a generally encoded form. At step 1424, one or more of the received images are decoded, and the decoded content is stored in one or more image buffers at a later step 1426. In this way, the default images can be decoded and stored in decoded form so that they do not need to be decoded later when they are needed for rendering during playback. Because the default image may be used many times, decoding and storage may reduce the decoding requirements that are otherwise required to decode the image in the rendering or only before rendering. Assuming that the processing resources can provide pre-decoding and storage of default images in a < RTI ID = 0.0 > decoded form, < / RTI > images are decoded immediately prior to display and then decoded, Lt; RTI ID = 0.0 > embodiment < / RTI >

동일한 디폴트 디코딩된 이미지가 예를 들면, 하늘, 등에 대해 다수번 사용될 수 있지만, 그것이 환경의 뷰잉된 부분을 생성하기 위해 조합되는 환경의 다른 이미지들에 그가 더 가깝게 매칭하도록 다른 수신된 이미지 콘텐트와 조합되기 전에 처리될 수 있다. 예를 들면, 몇몇 실시예들에서, 디코딩된 디폴트 이미지들은 그들이 적어도 디폴트 이미지가 환경의 다른 부분에 대응하는 이미지와 조합될 에지들을 따라 조합되거나 블러링되는 이미지 부분에 기초하여 휘도 조정을 받는다. 따라서, 적어도 몇몇 실시예들에서 사용 동안, 이미지 밝기 및/또는 컬러 특징들은 그들을, 그들이 조합되는 지상 이미지의 동일한 특징들에 더 유사하게 만들도록 필터링되거나 수정된다.The same default decoded image may be used many times for, for example, sky, etc., but it may be combined with other received image content such that it closely matches other images in the environment in which it is combined to produce a viewable portion of the environment Can be processed. For example, in some embodiments, the decoded default images are subjected to brightness adjustment based on image portions that are combined or blurred along edges where at least the default image is to be combined with the image corresponding to the other portion of the environment. Thus, during use in at least some embodiments, image brightness and / or color features are filtered or modified to make them more similar to the same features of the ground image in which they are combined.

미래의 사용을 위해 저장된 초기화 데이터 및 디폴트 이미지들과 함께, 동작은 단계(1428)로 진행하고, 여기서 수신될 하나 이상의 스트림들의 일 세트, 예를 들면, 스트림들의 현재 선택된 세트가 초기화된다. 각각의 스트림은 입체 영상 또는 모노 이미지 데이터를 제공할 수 있다. 선택적으로 대응하는 오디오는 또한 선택된 스트림들에서 수신될 수 있지만 하나 이상의 개별적인 오디오 스트림들에서 더 일반적이다. 상기 기술은 오디오 스트림이 보통 또한 재생 디바이스에 의해 수신 및 디코딩될 것이고, 오디오가 스테레오 오디오를 포함할 수 있다는 이해에 의해 비디오 스트림들의 수신에 집중할 것이다.With the initialization data and default images stored for future use, operation proceeds to step 1428 where a set of one or more streams to be received, e.g., the currently selected set of streams, is initialized. Each stream may provide stereoscopic or monoimage data. Optionally, the corresponding audio may also be received in the selected streams, but is more common in one or more individual audio streams. The description will focus on the reception of video streams by the understanding that the audio stream will typically be received and decoded by the playback device and that the audio may include stereo audio.

예시적인 단계(1428)에서, 스트림들 중 현재 선택된 세트는 환경의 전방/정면 부분에 대응하는 콘텐트를 전달하는 제 1 스트림과 동일하게 설정된다. 이는,시작시 초기 위치가 전방 뷰잉 위치인 것으로 설정되고 따라서 초기화의 결과로서 사용자가 시작시 전방 장면 영역을 보기를 기대할 것이기 때문이다.In exemplary step 1428, the currently selected set of streams is set equal to the first stream carrying content corresponding to the front / front portion of the environment. This is because the initial position at the start is set to be the forward viewing position and therefore the user will expect to see the forward scene area at the start as a result of initialization.

동작은 단계(1428)로부터 단계(1429)로 진행한다. 단계(1429)에서, 자원 할당 정보가 수신된다. 자원 할당 정보는 대역폭 및/또는 데이터 레이트 할당 제어 정보의 형태일 수 있다. 단계(1429)에서 수신된 정보는, 몇몇 실시예들에서, 얼마나 많은 대역폭 또는 데이터 전달 능력이 환경의 상이한 부분들에 대응하는 하나 이상의 전달 스트림들에 할당되어야 하는지에 관한 정보를 포함한다. 정보는 데이터 레이트는 보통 대역폭에 일치한다는 이해에 의해 대역폭 또는 데이터 레이트로 표현될 수 있다. 예를 들면, 수신될 수 있는 데이터의 양은 대역폭에 걸쳐 전달하기 위해 사용된 데이터 코딩의 형태를 고려한 대역폭량의 함수일 수 있다.Operation proceeds from step 1428 to step 1429. [ In step 1429, resource allocation information is received. The resource allocation information may be in the form of bandwidth and / or data rate allocation control information. The information received in step 1429 includes, in some embodiments, information as to how much bandwidth or data transfer capability should be allocated to one or more transport streams corresponding to different parts of the environment. The information can be expressed in terms of bandwidth or data rate by understanding that the data rate is usually consistent with the bandwidth. For example, the amount of data that can be received may be a function of the amount of bandwidth taking into account the type of data coding used to carry across the bandwidth.

단계(1429)에서 수신된 정보는 환경의 특정 부분에 대응하는 이미지들의 수신에 할당할 이용 가능한 전달 능력의 상대적인 최대량을 나타낼 수 있다. 예를 들면, 이는 대역폭 또는 지원가능한 데이터 레이트의 최대 80%가 1차 데이터 스트림에 할당되어야한다는 것, 예를 들면, 대역폭의 나머지 20%를 갖는 전방 데이터 스트림은 하나 이상의 다른 스트림들로 할당된다는 것을 나타낼 수 있다. 상이한 방향들에 대한 자원들의 할당은 환경의 대응하는 부분 및/또는 검출된 관중 피드백에서 이미지 콘텐트의 함수일 수 있고, 몇몇 실시예들에서, 그러한 함수이다. 예를 들면, 몇몇 실시예들에서, 콘텐트가 대응하는 이벤트 동안 발생하는 인터미션들 동안, 단계(1429)에서 수신된 정보는 자원들의 증가된 양이 환경의 하나 또는 두 개의 후방 부분들에 대응하는 이미지들을 수신하는 데 할당되어야 한다는 것을 나타낼 수 있다. 이는, 인터미션 동안, 사용자들이 그들의 머리를 돌려서 메인 필드 또는 스테이지로부터 눈길을 돌리기 시작할 더 많은 가능성이 있기 때문이고, 이는 인터미션 동안 관중에서 계속하는 동작이 존재하는 것이 나타나는 후방 부분들에 대해 몇몇 비디오가 공급되는 것이 바람직할 수 있다. 예를 들면, 야구 경기에서 핫도그들을 구입하거나 자리를 변경하는 사람의 이미지들이 존재할 수 있고, 몇몇 실시예들에서, 인터미션들 동안 배경이 실황이지만 다른 시간들에서 정지인 것으로 나타나도록 전송될 수 있다. 유사하게 배경의 광고판들의 이미지들은 광고 및/또는 엔터테인먼트 목적들을 위해 인터미션들 동안 변경될 수 있다. 따라서, 재생 디바이스가 경기의 다른 부분들 동안보다는 인터미션들 동안 배경 부분들을 수신하는 것에 대해 더 많은 자원들을 할당하도록 트리거하는 것이 바람직할 수 있다. 단계(1429)에서 수신된 제어 정보는 경기의 다른 조심스러운 부분들 또는 인터미션들 동안과 경기의 주요 부부들 동안이 상이할 수 있고, 때때로 상이하다. 적어도 몇몇 실시예들에서 주요 경기 동안, 단계(1429)에서 수신된 제어 정보는 더 많은 대역폭 및/또는 데이터 레이트가 주요, 예를 들면, 후방 부분보다는 전방, 환경의 영역에 할당되게 한다. 그러나, 인터미션들 또는 다른 개별적인 부분들 동안, 후방 부분들 주 하나 또는 둘 모두에 할당된 데이터 레이트는 증가되도록 강제될 수 있다.The information received in step 1429 may represent a relative maximum amount of available transfer capability to be allocated to reception of images corresponding to a particular portion of the environment. For example, this means that up to 80% of the bandwidth or supportable data rate should be allocated to the primary data stream, for example, the forward data stream with the remaining 20% of the bandwidth is allocated to one or more other streams . The allocation of resources for different directions can be a function of the image content in a corresponding portion of the environment and / or detected crowd feedback, and in some embodiments is such a function. For example, in some embodiments, during intercommunications that occur during a corresponding event of content, the information received in step 1429 indicates that an increased amount of resources is present in the image corresponding to one or two posterior portions of the environment Lt; RTI ID = 0.0 > and / or < / RTI > This is because during the intermission there are more possibilities for the users to start turning their heads around and turn their eyes away from the main field or stage, May be desirable. For example, there may be images of a person purchasing or changing hot dogs in a baseball game, and in some embodiments, may be transmitted during interactions so that the background appears to be live, but still at other times. Similarly, images of billboards in the background may change during intercommunications for advertising and / or entertainment purposes. Thus, it may be desirable to trigger the playback device to allocate more resources for receiving background portions during intercommunications than during other portions of the game. The control information received in step 1429 may be different and sometimes different during other careful parts of the game or during intercommunications and major part of the game. In at least some embodiments, during the main event, the control information received in step 1429 causes more bandwidth and / or data rate to be allocated to a major, e.g., area of the environment, rather than the rear part. However, during intermissions or other separate portions, the data rate assigned to one or both of the backward sections may be forced to increase.

주어진 방향에 할당된 자원들 사이의 분리는, 환경의 부분에 나타내진 콘텐트, 관중 주목의 측정, 및/또는 진행하고 있는 이벤트의 부분, 예를 들면, 주요 부분, 인터미션 부분, 쇼가 끝난 후 부분에 기초할 수 있다. 몇몇 실시예들에서 단계(1429)에서 제공된 제어 정보는, 예를 들면, 이벤트가 진행하고 있는 동안, 환경의 하나 이상의 부분들에 대응하는 이미지의 수신에 할당될 대역폭 또는 데이터 레이트의 최대량 및/또는 최소량을 지정한다. 몇몇 실시예들에서, 정보는 대역폭 또는 데이터가 이벤트 동안 지상 대 하늘 이미지 부분들을 수신하는 데 할당되지 않아야 할 수 있고, 따라서 이들 부분들은 이러한 경우에 정지 이미지들을 사용할 필요가 있을 때 채워지는 것임을 나타낸다.The separation between resources assigned to a given direction may be based on the content presented in the portion of the environment, the measure of the spectator's attention, and / or the portion of the event in progress, e.g., the main portion, the intermission portion, Lt; / RTI > In some embodiments, the control information provided in step 1429 may include, for example, the maximum amount of bandwidth or data rate to be allocated for reception of an image corresponding to one or more portions of the environment while the event is in progress, and / Specify the minimum amount. In some embodiments, the information indicates that the bandwidth or data may not be allocated for receiving the ground-to-sky image portions during the event, and thus these portions are filled in when it is necessary to use still images in this case.

대역폭/데이터 레이트 할당 제어 정보는 시간에 걸쳐 변할 수 있고, 상이한 정보가 상이한 시간들에 수신된다. 제어 정보는 전방 콘텐트 스트림으로 임베딩될 수 있고 및/또는 예를 들면, 제어 정보의 개별적인 세트로서 개별적으로 전송될 수 있다.The bandwidth / data rate allocation control information may vary over time, and different information is received at different times. The control information may be embedded into the forward content stream and / or transmitted separately, for example, as a separate set of control information.

동작은 단계(1429)로부터 단계(1430)로 진행하고, 이미 수신되지 않은 스트림들의 선택된 세트에서 스트림(들)의 콘텐트 전달이 개시된다. 이는 선택된 스트림이 대응하는 멀티캐스트 그룹에 연결하는 것, 선택된 스트림의 전달을 요청하는 네트워크 디바이스로 메시지를 전송하는 것 및/또는 선택된 스트림 또는 스트림들이 송신되는 방송 채널로 동조시키는 것을 포함할 수 있다. 단계(1430)를 통과하는 제 1 패스의 경우에서, 이는 이것이 전달을 위해 선택될 초기 뷰잉 부분으로서 설정되었기 때문에 환경의 전방 부분에 대응하는 콘텐트 스트림의 전달을 개시하는 것을 포함할 것이다. 그러나, 사용자의 머리 위치가 변하기 때문에, 예를 들면, 사용자가 그의 머리를 왼쪽 또는 오른쪽으로 돌리기 때문에, 선택되는 스트림들의 세트는 변할 수 있고 보통 변할 것이다. 예를 들면, 사용자가 전방 영역 및 오른쪽 후방 영역의 일 부분이 보이게 되도록 그의 머리를 왼쪽으로 돌릴 경우, 선택된 스트림들의 세트는 전방 영역 및 왼쪽 후방 부분 영역에 대응하는 콘텐트가 수신되도록 변경될 것이다. 왼쪽 후방 부분이 수신되지 않았고 선택되는 경우, 왼쪽 후방 부분에 대응하는 스트림에서 콘텐트의 전달은 단계(1430)에서 개시될 것이다. 두 방향들에서 최대 데이터 레이트 스트림들이 지원되지 않을 수 있는 경우, 하위 데이터 레이트 전방 스트림이 선택되고, 따라서 하위 데이터 레이트 전방 스트림 및 왼쪽 후방 콘텐트 스트림 모두의 개시가 개시될 것이다. 선택된 세트 외부의 스트림들은 새롭게 선택된 세트에서 스트림들의 수신 전에 종료된다. 스트림들의 종료 및 개시는, 수신되는 콘텐트 및/또는 시간적인 갭들의 극적인 변화들이, 스트림 스위칭이 발생할 때, 이미지들의 품질 또는 소스에서 변화들을 현저하게 감소시키기 위해 사용되는 블러링 및/또는 필터링에 의해 최소화되도록 유연한 방식으로 수행된다. 예를 들면, 블러링은 렌더링 또는 디스플레이 프로세스의 일부분으로서 함께 스티칭되는 이미지들의 부분들에 걸쳐 수행될 수 있다.Operation proceeds from step 1429 to step 1430 where the content delivery of the stream (s) in the selected set of streams that have not already been received is initiated. This may include connecting the selected stream to the corresponding multicast group, sending the message to the network device requesting delivery of the selected stream, and / or tuning to the broadcast channel on which the selected stream or streams are transmitted. In the case of the first pass through step 1430, this will include initiating delivery of the content stream corresponding to the forward portion of the environment since this was set as the initial viewing portion to be selected for delivery. However, because the head position of the user changes, for example, because the user turns his or her head to the left or right, the set of selected streams may change and usually change. For example, if the user turns his head to the left so that a portion of the front region and the right rear region are visible, the set of selected streams will be changed to receive content corresponding to the front region and the left rear region. If the left rear portion is not received and is selected, delivery of the content in the stream corresponding to the left rear portion will be initiated in step 1430. If the maximum data rate streams in both directions may not be supported, the lower data rate forward stream will be selected and therefore the start of both the lower data rate forward stream and the left backward content stream will begin. Streams outside the selected set are terminated prior to reception of the streams in the newly selected set. The ending and starting of the streams may be controlled by blurring and / or filtering used to dramatically reduce changes in the quality or source of images when the stream switching occurs, such that dramatic changes in the received content and / or temporal gaps occur In a flexible manner. For example, blurring may be performed over portions of images that are stitched together as part of a rendering or display process.

선택된 스트림들의 현재 세트에 대해 개시된 콘텐트 전달에 의해 동작은 단계(1430)로부터 단계(1432)로 진행한다. 단계(1432)에서, 콘텐트가 콘텐트 스트림들의 선택된 세트에서 스트림들로부터 수신된다. 이는, 가장 높은 우선 순위 스트림에 대응하는 콘텐트를 수신하는 것을 포함할 수 있고, 다양한 실시예들에서 상기 콘텐트를 수신하는 것을 포함하고, 예를 들면, 상기 스트림은 시야의 대부분에 대응하는 콘텐트, 및 예를 들면, 상기 부분들은 시야에 대응하는 이미지 콘텐트의 작은 부분을 제공하는, 환경의 하나 이상의 다른 부분들에 대응하는 콘텐트를 제공한다. 현재 시야에 대한 콘텐트의 작은 부분을 제공하는 스트림은 2차 스트림으로서 기술될 수 있다. 단일 스트림이 전체 시야에 대한 콘텐트를 제공하는 일 실시예에서, 이용 가능한 대역폭/지원 가능한 수신 데이터 레이트의 20% 이하가 비축되고, 예를 들면, 사용자가 시야 밖의 방향으로 몸을 돌릴 경우 시야 밖의 콘텐트를 제공하는, 하나 이상의 2차 또는 하위 우선 순위 스트림들을 수신하기 위해 사용된다. 시야가 두 개의 상이한 콘텐트 스트림들에 대응하는 영역들간에 거의 균등하게 분리되는 경우, 각각의 스트림은, 그들이 대략 균등한 방식으로 분배되고 사용자가 두 개의 스트림들이 이미지들을 제공하는 영역 밖의 환경 영역을 보기 위해 빠르게 위치를 변경할 가능성이 없기 때문에, 이용 가능한 데이터 레이트/수신 데이터 레이트의 대략 절반이 할당될 수 있다.Operation proceeds from step 1430 to step 1432 by content delivery initiated for the current set of selected streams. In step 1432, the content is received from the streams in the selected set of content streams. This may include receiving content corresponding to the highest priority stream, and in various embodiments, receiving the content, e.g., the stream may include content corresponding to most of the view, and For example, the portions provide content corresponding to one or more other portions of the environment, providing a small portion of the image content corresponding to the field of view. A stream providing a small portion of the content for the current view may be described as a secondary stream. In one embodiment, where a single stream provides content for the entire view, less than 20% of the available bandwidth / supportable receive data rate is reserved, e.g., when the user turns away from the field of view, , ≪ / RTI > which are used to receive one or more secondary or lower priority streams. If the field of view is approximately evenly divided between regions corresponding to two different content streams, then each stream will be divided into regions of the same size as the regions of the region where the two streams are distributed, Since there is no possibility of changing its position quickly, approximately half of the available data rate / received data rate can be allocated.

개시된 콘텐트 수신에 의해, 단계(1432)에서, 콘텐트, 예를 들면, 이미지들이 스트림들의 선택된 세트로부터 수신된다. 1차, 예를 들면, 가장 높은 우선 순위의 콘텐트 경우에, 스트림은 보통 스트림에 수신되는 왼쪽 및 오른쪽 눈 이미지 콘텐트 모두를 갖는 입체 영상 콘텐트일 것이다. 낮은 우선 순위 스트림들 및/또는 낮은 데이터 레이트가 할당된 스트림들에 대하여 모노 이미지들이 왼쪽 및 오른쪽 눈 이미지들 모두에 디스플레이를 위해 수신되는 단일 이미지와 함께 수신될 수 있다. 전방 장면 부분은 보통 입체 영상 콘텐트로서 수신되지만, 하나 이상의 후방 부분들이 모노 이미지 스트림들로서 제공될 수 있다.By receiving the disclosed content, in step 1432, the content, e.g., images, is received from the selected set of streams. In the case of a primary, e. G., Highest priority content, the stream will typically be stereoscopic video content having both left and right eye image content received in the stream. For streams that are assigned low priority streams and / or low data rates, mono images may be received with a single image received for display on both the left and right eye images. The forward scene portion is typically received as stereoscopic video content, but one or more rear portions may be provided as mono image streams.

인코딩된 이미지 콘텐트는 보통 단계(1432)에서 스트림들로 수신된다. 단계(1434)에서, 수신된 콘텐트가 디코딩되고, 이후 접속 노드A(1436)를 통해 도달되는 단계(1438)에서, 디코딩된 콘텐트는 하나 이상의 이미지 버퍼들에 저장된다. 몇몇 실시예들에서, 디코딩된 이미지 버퍼는 환경의 각각의 부분에 대해 유지된다. 수신된 이미지 중 단지 하나의 부분만이 최종적으로 디스플레이될 수 있지만, 전체 수신된 프레임이 보통 디코딩 및 버퍼링된다. 디코딩된 버퍼링된 이미지는 그가 동일한 장면 부분에 대한 더 최근 이미지로 교체될 때까지 메모리에 유지될 수 있고, 몇몇 실시예들에서 그렇게 유지된다. 따라서, 임의의 주어진 시간에, 디코딩된 이미지는 현재 시야에 기초하여 필요되는 최종 출력 이미지를 렌더링하는 데 사용할 환경의 각각의 부분에 대해 이용 가능하다. 디코딩된 이미지 콘텐트는, 그가 더 최근의 디코딩된 이미지로 교체될 때까지, 메모리에 유지되기 때문에, 360도 환경의 부분들의 각각에 대응하는 이미지들의 디코딩은 각각의 프레임 시간 동안 발생할 필요가 없다. 따라서, 초당 30 개의 프레임들의 프레임 레이트가 지원될 수 있지만, 150 프레임들은 각각의 프레임 기간, 예를 들면, 상부, 하부, 전방, 왼쪽 후방, 오른쪽 후방 부분들의 각각에 대한 프레임 기간에 디코딩될 필요가 없고, 오히려 지원될 프레임 레이트와 동일하거나 약간 높은 더 적은 수의 프레임들이 주요 시야에 대응하는 부분보다 낮은 레이트에서 갱신되는 이전에 디코딩된 정지 이미지 부분들 또는 이전에 디코딩된 이미지 부분들로부터 나온 이미지의 몇몇 부분들과 함께 디코딩될 수 있다.The encoded image content is typically received at 1432 in streams. In step 1434, in step 1438, where the received content is decoded and then reached via access node A 1436, the decoded content is stored in one or more image buffers. In some embodiments, the decoded image buffer is maintained for each portion of the environment. Only the only part of the received image can be finally displayed, but the entire received frame is usually decoded and buffered. The decoded buffered image may be kept in memory until it is replaced with a more recent image for the same scene portion, and so is maintained in some embodiments. Thus, at any given time, the decoded image is available for each portion of the environment that will be used to render the final output image needed based on the current view. Decoding of the images corresponding to each of the portions of the 360 degree environment need not occur for each frame time since the decoded image content is kept in memory until it is replaced with a more recent decoded image. Thus, although frame rates of 30 frames per second may be supported, 150 frames need to be decoded in each frame period, e.g., the frame period for each of the top, bottom, forward, left rear, right rear portions , Rather than the previously decoded still image portions that are updated at a lower rate than the portion corresponding to the main field of view, or a smaller number of frames that are equal to or slightly higher than the frame rate to be supported, It can be decoded with some parts.

따라서, 단계(1438)에서 갱신 후에, 현재 디코딩된 프레임들은 사용자의 현재 시야에 기초하여 이미지를 렌더링하는 데 사용을 위해 이용 가능하다.Thus, after updating in step 1438, the currently decoded frames are available for use in rendering an image based on the current view of the user.

동작은 단계(1438)로부터 단계(1440)로 진행한다. 단계(1440)에서, 콘텐트는 이미지 버퍼(들)로부터 이용 가능한 디코딩된 콘텐트를 사용하여 하나 이상의 이미지 부분들이 예를 들면, 텍스처로서 적용되는 표면을 규정하는 환경 맵, 및 3D 표면의 모델에 대해 2D 디코딩된 이미지들을 적용하는 방법에 대한 정보를 제공하는 UV 맵(들)을 디스플레이하기 위해 렌더링된다. 환경의 3D 메시 모델은 환경의 이미지들이 적용되는 표면을 규정하는 메시 모델의 꼭지점들에 대응하는 UV 맵의 지점들을 갖는 그리드의 형태일 수 있다.Operation proceeds from step 1438 to step 1440. [ In step 1440, the content is decoded using the available decoded content from the image buffer (s) to generate an environment map, in which one or more image portions define a surface to be applied, for example, as a texture, And is rendered to display the UV map (s) providing information on how to apply the decoded images. The 3D mesh model of the environment may be in the form of a grid with points of the UV map corresponding to the vertices of the mesh model defining the surface to which the images of the environment are applied.

렌더링의 일부로서, 상이한 스트림들로부터 수신된 콘텐트에 대응하는 이미지 부분들은 단일 스트림으로부터의 콘텐트가 사용자의 시야를 완전히 점유하는 부분을 제공할 수 없을 때, 사용자의 시야에 대응하는 환경의 이미지를 생성하기 위해 조합될 것이다. 필터링 또는 블러링은 사용자들의 시야에 대응하는 합성 이미지를 형성하기 위해 연결되는 이미지들에 걸쳐 적용될 수 있고, 몇몇 실시예들에서 적용된다. 이는 이음매가 사용자에 대해 현저하게 감소시키는 경향이 있다. 또한, 합성 이미지의 일 부분을 제공하는 이미지 부분들의 휘도는, 몇몇 실시예들에서, 합성 이미지를 형성하기 위해 조합되는 이미지 부분들에 대한 휘도 조정들을 행할 때, 후방, 상부, 또는 측면 부분들의 휘도값들보다 큰 우선 순위가 주어지기 시작한 전방 뷰의 휘도값들을 갖는 합성 이미지를 형성하기 위해 조합되는 이미지 부분들 사이의 휘도 차이들을 감소시키도록 조정된다.As part of the rendering, the image portions corresponding to the content received from the different streams generate an image of the environment corresponding to the user's field of view, when the content from a single stream can not provide a portion that completely occupies the user's field of view . Filtering or blurring can be applied across the images being connected to form a composite image corresponding to the user's field of view, and is applied in some embodiments. This tends to reduce the seam significantly for the user. Also, the brightness of the image portions providing a portion of the composite image may, in some embodiments, be adjusted such that when making the brightness adjustments for the image portions being combined to form the composite image, the brightness of the back, top, Values are adjusted to reduce the luminance differences between the image portions to be combined to form a composite image having the luminance values of the front view that are beginning to be given a higher priority than the values of the front view.

상이한 콘텐트 스트림들로부터 수신된 이미지들 중 하나 이상의 이미지 부분들의 합성일 수 있는 렌더링된 이미지는 단계(1442)에서 저장, 디스플레이, 또는 송신된다. 이는 선택된 콘텐트 스트림들의 현재 세트에 기초하여 콘텐트의 하나 이상의 프레임들의 생성 및 디스플레이를 나타낸다.The rendered image, which may be a composite of one or more image portions of images received from different content streams, is stored, displayed, or transmitted in step 1442. Which represents the creation and display of one or more frames of content based on the current set of selected content streams.

시간에 걸쳐 통신 채널 상태들 또는 네트워크 문제들에서의 변화들에 의해, 최대 지원 가능한 데이터 레이트는 변할 수 있다. 이는 단계(1443)에서 검출될 수 있고, 어느 콘텐트 스트림 또는 스트림들이 수신 및 처리되어야 하는지를 선택할 때 고려될 수 있다. 단계(1443)에서, 최대 지원가능한 데이터 레이트 및/또는 대역폭은 후속하는 단계들에서 사용된 것에 대하여 데이터(1444)에 의해 나타낸 것으로 결정된다. 단계(1445)에서, 사용자의 현재 머리 위치가 검출된다. 이는 헤드 마운트 디스플레이를 포함하는 헤드기어상의 위치 센서를 사용함으로써 행해질 수 있다.By changes in communication channel conditions or network problems over time, the maximum supportable data rate may vary. This may be detected at step 1443 and may be considered when selecting which content stream or streams to receive and process. At step 1443, the maximum supportable data rate and / or bandwidth is determined to be indicated by data 1444 with respect to that used in subsequent steps. In step 1445, the current head position of the user is detected. This can be done by using a position sensor on the headgear that includes a head mounted display.

동작은 단계(1445)로부터 단계(1446)로 진행하고, 사용자의 머리 위치가 변하는지의 여부에 관한 결정이 행해진다. 사용자의 머리 위치가 변경되지 않는 경우, 동작은 단계(1447)로 진행하고, 현재 이용 가능한 최대 대역폭 또는 최대 지원 가능한 데이터 레이트가, 예를 들면, 스트림 선택이 행해진 마지막 시간으로부터 변했는지의 여부에 관한 검사가 행해진다. 최대 지원 가능한 데이터 레이트 또는 머리 위치의 변경이 검출되지 않음 경우, 이전 스트림 선택은 유효하게 유지되고, 선택된 콘텐트 스트림들의 세트에 대한 변경이 행해지지 않는다. 따라서, 재생 시스템은 변하지 않고 유지되는 사용자의 현재 시야에 대응하는 콘텐트를 계속 수신할 것이다. 단계(1447)에서 변경이 검출되지 않은 경우, 동작은 접속 노드B(1456)를 통해 다시 단계(1429)로 진행한다.Operation proceeds from step 1445 to step 1446, where a determination is made as to whether the user's head position changes. If the user ' s head position has not changed, then operation proceeds to step 1447 where it is determined whether the currently available maximum bandwidth or maximum supported data rate has changed, e.g., from the last time the stream selection was made Inspection is performed. If no change in maximum supported data rate or head position is detected, the previous stream selection remains valid and no changes are made to the set of selected content streams. Thus, the playback system will continue to receive content corresponding to the current view of the user, which remains unchanged. If no change is detected in step 1447, then operation proceeds back to step 1429 via access node B 1456. [

그러나, 단계들(1446 또는 1447) 중 하나에서 변화가 검출되는 경우, 동작은 스트림 선택 서브루틴에 대한 호출을 포함하는 스트림 선택 단계(1448)로 진행한다. 이러한 방식에서, 머리 위치 및/또는 지원 가능한 데이터 레이트의 검출된 변경들이 고려될 수 있고, 스트림들의 선택은 사용자의 머리 위치 및/또는 데이터, 예를 들면, 이미지 콘텐트를 수신하기 위해 사용될 수 있는 지원 가능한 데이터 레이트를 고려하여 재고된다.However, if a change is detected in one of steps 1446 or 1447, the operation proceeds to a stream selection step 1448 that includes a call to the stream selection subroutine. In this manner, detected changes in head position and / or supportable data rate may be considered, and selection of streams may be performed in support of the user ' s head position and / or data, Considering possible data rates are reconsidered.

일단 스트림들이 스트림 선택 서브루틴에 의해 선택되면, 동작은 단계(1450)로 진행하고, 선택된 스트림들이 선택된 스트림들의 현재 세트와 상이한지의 여부에 관한 검사가 행해진다. 새롭게 선택된 세트가 사용중인 스트림들의 현재 선택된 세트와 동일한 경우, 수신되는 스트림들에 관한 변화들이 행해질 필요가 없고, 단계(1452)에서 스트림들의 현재 선택된 세트는 접속 노드B(1456)를 통해 단계(1429)로 진행하는 동작에 의해 변하지 않은 채로 남겨진다. 그러나, 스트림들의 현재 선택된 세트가 선택된 스트림들의 현재 세트와 상이한 경우, 스트림의 현재 선택된 세트는 스트림들의 선택된 세트에서 변경들을 반영하기 위해 단계(1454)에서 갱신되고, 예를 들면, 현재 선택된 세트는 스트림 선택 서브루틴에 의해 선택된 스트림들의 새롭게 선택된 세트와 동일한 세트이다.Once the streams have been selected by the stream selection subroutine, operation proceeds to step 1450 and a check is made as to whether the selected streams are different from the current set of selected streams. If the newly selected set is the same as the currently selected set of streams in use, no changes need to be made to the received streams, and the current selected set of streams in step 1452 is passed to access node B 1456 via step 1429 ). ≪ / RTI > However, if the currently selected set of streams is different from the current set of selected streams, then the currently selected set of streams is updated in step 1454 to reflect changes in the selected set of streams, e.g., Is the same set as the newly selected set of streams selected by the selection subroutine.

동작은 단계(1454)로부터 단계(1455)로 진행하고, 스트림들의 갱신된 현재 선택될 세트에서 존재하지 않는 스트림들의 수신은 종료된다. 이는 다른 목적을 위해 종료되는 스트림을 수신, 예를 들면, 새롭게 선택된 스트림 또는 스트림들의 수신을 위해 사용된 동조기와 같은 자원들을 사용하기 위해 더 이상 수신되거나 다른 동작을 취하지 않는 스트림에 대응하는 멀티캐스트 그룹의 멤버인 것을 더 이상 원하지 않는다는 것을 시그널링하는 재생 시스템을 포함할 수 있다.Operation proceeds from step 1454 to step 1455 and the reception of streams that do not exist in the updated currently selected set of streams is terminated. This may be accomplished by receiving a stream that is terminated for another purpose, e.g., a multicast group corresponding to a stream that is no longer received or takes another action to use resources such as a tuner used for receiving a newly selected stream or streams Lt; RTI ID = 0.0 > a < / RTI >

동작은 접속 노트B(1456)를 통해 단계(1455)로부터 단계(1429)로 진행한다. 이후, 단계(1430)에서, 임의의 새롭게 선택된 스트림들의 수신이 개시될 것이고 수신된 콘텐트는 하나 이상의 이미지들을 렌더링하기 위해 사용될 것이다. 따라서, 시간에 걸쳐 사용자가 그의 머리 위치를 변경하고 및/또는 지원될 수 있는 데이터 레이트를 변경하기 때문에, 선택된 스트림들이 또한 변할 수 있다.Operation proceeds from step 1455 to step 1429 via connection note B (1456). Thereafter, in step 1430, the reception of any newly selected streams will be initiated and the received content will be used to render one or more images. Thus, the selected streams may also change since the user changes his head position over time and / or changes the data rate that can be supported.

도 15는 도 14 방법의 단계(1448)에서 호출된 스트림 선택 서브루틴으로서 사용될 수 있는 일 예시적인 실시예에 따라 스트림 선택 서브루틴의 단계들을 도시하는 플로차트이다.FIG. 15 is a flow chart showing the steps of a stream selection subroutine in accordance with one exemplary embodiment that may be used as the stream selection subroutine called in step 1448 of the method of FIG. 14.

스트림 선택 서브루틴(1500)은, 서브루틴이 도 14의 단계(1448)에 의해 호출될 때 단계(1502)에서 시작한다. 동작은 시작 단계(1502)로부터 스트림 선택 단계(1504)로 진행한다. 스트림 선택 단계(1504)에 대한 입력들은 대역폭 및/또는 데이터 레이트 제한들(1503)을 포함한다. 이들은 하나 이상의 장면 부분들, 스트림들 및/또는 스트림 방향들에 할당되어야 하는 이용 가능한 대역폭의 최대 부분 또는 총 수신 데이터 레이트에 대한 정보를 포함할 수 있다. 제한들은 또한 장면 부분들, 스트림들 및/또는 뷰잉 방향들에 대한 최소 대역폭 또는 데이터 할당들을 포함할 수 있다. 따라서, 제한들은 특정 방향에 대응하는 콘텐트의 수신에 할당된 자원들의 최대량을 제한할 수 있고 및/또는 이벤트 인터미션 동안 후방 영역과 같은 환경의 일부분에서 동작이 발생할 때, 방향에 대응하는 부분이 적어도 드물게 또는 특정한 시간들에 갱신되도록 방향에 대해 할당된 자원들의 최소량을 지정할 수 있다.The stream selection subroutine 1500 begins at step 1502 when the subroutine is called by step 1448 of FIG. Operation proceeds from the start step 1502 to the stream selection step 1504. The inputs to the stream selection step 1504 include bandwidth and / or data rate constraints 1503. These may include information on a maximum portion of the available bandwidth that should be allocated to one or more scene portions, streams and / or stream directions, or the total received data rate. The constraints may also include minimum bandwidth or data assignments for scene portions, streams and / or viewing directions. Thus, constraints may limit the maximum amount of resources allocated to reception of content corresponding to a particular direction and / or when an action occurs at a portion of the environment, such as a rear region during an event intermission, Or a minimum amount of resources allocated for the direction to be updated at specific times.

최대 지원 가능한 데이터 레이트 및/또는 최대 이용 가능한 대역폭(1444)은 선택 단계(1504)에 대한 다른 입력이다. 이러한 정보(1444)는 콘텐트를 수신하기 위해 이용 가능한 최대 대역폭 및/또는 콘텐트 스트림들 중 하나 또는 그의 조합의 수신을 지원하기 위해 사용될 수 있는 최대 지원 가능한 데이터 레이트를 나타낸다. 사용자의 현재 머리 위치(1407) 및 이용 가능한 스트림들(1405)에 관한 정보, 예를 들면, 도 18에 도시된 것과 같은 스트림 가이드 정보가 또한 단계(1504)에 대한 입력이다.The maximum supported data rate and / or the maximum available bandwidth 1444 are other inputs to the selection step 1504. This information 1444 represents the maximum supported data rate that can be used to support the receipt of one or a combination of the maximum bandwidth and / or the content streams available for receiving the content. Information about the user's current head position 1407 and available streams 1405, e.g., stream guide information as shown in FIG. 18, is also an input to step 1504.

스트림 선택 단계(1504)에서, 프로그램 또는 이벤트, 예를 들면, 몇몇 경우들에서 진행하는 실시간 이벤트에 대응하는 하나 이상의 콘텐트 스트림들이 선택된다. 하나 이상의 스트림들의 선택은 사용자의 현재 머리 위치, 스트림 대역폭 또는 스트림 데이터 레이트 요건들과 같은 스트림 정보, 및/또는 최대 지원가능한 데이터 레이트 또는 최대 지원가능한 대역폭에 관한 정보에 기초한다. 뷰잉 방향 또는 스트림 우선 순위 기반에 대한 것일 수 있는 대역폭 및/또는 데이터 레이트 제한들(1503)은 단계(1504)에서 스트림 선택들을 행하는 데 또한 고려 및 사용될 수 있고, 때때로 고려 및 사용된다.In the stream selection step 1504, one or more content streams corresponding to a program or event, e. G., A live event proceeding in some instances, are selected. The selection of one or more streams is based on information about the user's current head position, stream information such as stream bandwidth or stream data rate requirements, and / or the maximum supportable data rate or maximum supportable bandwidth. Bandwidth and / or data rate limits 1503, which may be for viewing direction or stream priority based, may also be considered and used to perform stream selections in step 1504, and are sometimes considered and used.

예시적인 스트림 선택 단계(1504)는 단계(1506)를 포함하고, 콘텐트 스트림들은 사용자의 현재 및/또는 과거 머리 위치에 기초하여 우선 순위화된다. 이는 도 16에 도시된 것과 같은 스트림 우선 순위화 서브루틴에 대한 호출을 포함할 수 있다.An exemplary stream selection step 1504 includes step 1506, wherein the content streams are prioritized based on the current and / or past head position of the user. This may include a call to a stream prioritization subroutine as shown in FIG.

동일한 환경 방향에 대응하는 스트림들은 몇몇 실시예들에서 동일한 우선 순위가 할당된다. 따라서, 환경의 동일한 부분 및/또는 뷰잉 방향에 대응하는 콘텐트에 대응하는 다수의 스트림들이 동일한 우선 순위를 할당받을 수 있고, 때때로 그렇게 할당받는다. 스트림들은 동일한 뷰잉 방향에 대응하지만, 몇몇 경우들에서 스트림들은, 모노 이미지 콘텐트 및/또는 낮은 해상도 이미지들을 제공 및/또는 낮은 프레임 (이미지) 레이트를 지원하는 몇몇 경우들에서 높은 프레임 레이트에서 높은 해상도 입체 영항 콘텐트에 낮은 해상도 스트림들을 제공하는 몇몇 스트림들과 상이한 데이터 레이트들을 갖는다. 따라서, 특정한 방향이 높은 우선 순위가 고려되고 높은 우선 순위 방향에 대응하는 콘텐트를 제공하는 모든 스트림들은 동일하지만, 이후 몇몇 실시예들에서 특정 방향에 대응하는 콘텐트를 수신하기 위해 이용 가능한 대역폭의 양에 대해 선택이 행해진다.The streams corresponding to the same environment direction are assigned the same priority in some embodiments. Thus, multiple streams corresponding to the same portion of the environment and / or the content corresponding to the viewing direction can be assigned the same priority and are sometimes so assigned. The streams correspond to the same viewing direction, but in some cases the streams may be provided at a high frame rate in some cases to provide mono image content and / or low resolution images and / or to support low frame (image) And has different data rates from some streams that provide low resolution streams to effect content. Thus, all streams providing a content with a particular orientation that is considered a high priority and that correspond to a high priority orientation are the same, but in some embodiments thereafter, the amount of bandwidth available to receive content corresponding to a particular orientation Selection is made.

콘텐트 스트림 동작의 우선 순위화 후, 동작은 단계(1506)로부터 단계(1508)로 진행한다. 단계(1508)에서, 가장 높은 우선 순위를 갖는 스트림을 위해 사용될 최대 대역폭 및/또는 데이터 레이트가 결정된다. 이러한 결정은 가장 높은 우선 순위 스트림에 대해 할당될 이용 가능한 수신 자원들의 최대, 최소, 또는 일부를 나타낼 수 있는 대역폭 또는 다른 제한들(1503)에 기초하여 수행될 수 있다. 몇몇 실시예들에서, 가장 높은 우선 순위 스트림에 대한 최소 대역폭/데이터 레이트 할당은 50% 이상이지만 다른 할당들이 가능하다.After prioritizing the content stream operation, operation proceeds from step 1506 to step 1508. [ At step 1508, the maximum bandwidth and / or data rate to be used for the stream with the highest priority is determined. This determination may be performed based on bandwidth or other constraints 1503 that may indicate the maximum, minimum, or fraction of available available resources to be allocated for the highest priority stream. In some embodiments, the minimum bandwidth / data rate allocation for the highest priority stream is greater than 50%, but other allocations are possible.

단계(1510)에서, 하위 우선 순위를 갖는 각각의 스트림에 사용될 최대 대역폭 및/또는 데이터 레이트가 결정된다. 몇몇 실시예들에서, 데이터 레이트 또는 대역폭의 적어도 20%는 2차 또는 하위 우선 순위 스트림들에 대해 사용된다.In step 1510, the maximum bandwidth and / or data rate to be used for each stream having a lower priority is determined. In some embodiments, at least 20% of the data rate or bandwidth is used for secondary or lower priority streams.

상이한 우선 순위들의 스트림들에 대해 사용될 데이터 레이트들이 단계들(1508, 1510)에서 결정되고, 동작은 단계(1512)로 진행하고, 가장 높은 우선 순위 스트림이 가장 높은 우선 순위 스트림에 대한 최대 대역폭 및/또는 데이터 레이트에 기초하여 지원될 수 있는지를 결정하기 위해 검사가 수행된다. 가장 높은 우선 순위에 대응하는 스트림들 중 어느 하나가 지원될 수 있는 경우, 단계(1512)에서 결정은 긍정이 될 것이고, 동작은 단계(1514)로 진행하고, 여기서 가장 높은 우선 순위에 대응하는 가장 높은 품질 스트림이 선택될 것이다. 이는 보통 가장 높은 우선 순위가 할당된 스트림들을 세트로부터 가장 높은 데이터 레이트 스트림을 선택하는 것을 포함한다. 에를 들면, 전방 방향의 스트림들이 가장 높은 우선 순위가 할당되는 경우, 가장 높은 우선 순위 콘텐트 스트림에 대해 이용 가능한 주어진 데이터 레이트가 지원될 수 있는 가장 높은 데이터 레이트 전방 방향 콘텐트 스트림이 선택될 것이다.The data rates to be used for the streams of different priorities are determined in steps 1508 and 1510 and the operation proceeds to step 1512 where the highest priority stream is the maximum bandwidth for the highest priority stream and / Or based on a data rate. If any of the streams corresponding to the highest priority can be supported, then the decision in step 1512 will be affirmative and operation proceeds to step 1514, where the impersonation corresponding to the highest priority A high quality stream will be selected. This typically involves selecting the highest data rate stream from the set of streams with the highest priority assigned. For example, if the forward streams are assigned the highest priority, the highest data rate forward direction content stream that can be supported for a given data rate for the highest priority content stream will be selected.

동작은 단계(1514)로부터 단계(1516)로 진행한다. 단계(1516)에서, 제 2 가장 높은 우선 순위 스트림이 지원될 수 있는지의 여부에 관한 결정이 수행된다. 이는, 몇몇 실시예들에서, 가장 높은 우선 순위 스트림이 선택된 후 얼마나 많은 대역폭/데이터가 이용 가능한지 및 수신된 제한들에 기초하여 제 2 가장 높은 우선 순위 스트림에 대해 상기 대역폭/데이터 중 얼마나 많은 것이 사용될 수 있는지를 결정하는 것을 포함한다. 제 2 가장 높은 우선 순위 스트림에 대한 제한들이 배치되지 않은 경우, 대역폭/데이터 수신 능력의 전체량이 제 2 가장 높은 우선 순위 스트림에 대해 사용될 수 있다. 단계(1516)에서 제 2 가장 높은 우선 순위 스트림이 지원될 수 있는지가 결정되는 경우, 동작은 단계(1518)로 진행하고, 제 2 가장 높은 우선 순위 스트림이 예를 들면, 제 2 가장 높은 우선 순위가 할당된 하나 이상의 스트림들의 세트로부터 선택된다. 단계(1518)는, 제 2 가장 높은 우선 순위를 갖는 지원될 수 있는 가장 높은 데이터 레이트 스트림을 선택하는 것을 포함할 수 있고, 몇몇 실시예들에서, 그를 포함한다. 예를 들면, 제 2 가장 높은 우선 순위가 환경의 오른쪽 후방 부분에 대응하는 경우, 단계(1518)는 환경의 오른쪽 후방 부분에 대응하는 지원될 수 있는 가장 높은 데이터 레이트 스트림을 선택하는 것을 포함한다.Operation proceeds from step 1514 to step 1516. [ At step 1516, a determination is made as to whether the second highest priority stream can be supported. This is because, in some embodiments, how much bandwidth / data is available after the highest priority stream is selected and how much of the bandwidth / data is used for the second highest priority stream based on the received constraints And determining whether the data can be processed. If no constraints for the second highest priority stream are deployed, the total amount of bandwidth / data reception capability may be used for the second highest priority stream. If it is determined in step 1516 that the second highest priority stream can be supported, then operation proceeds to step 1518 where the second highest priority stream is transmitted, for example, to the second highest priority Is selected from the set of one or more streams assigned. Step 1518 may include selecting the highest data rate stream that can be supported with a second highest priority and, in some embodiments, including that. For example, if the second highest priority corresponds to the right rear portion of the environment, then step 1518 includes selecting the highest supported data rate stream that corresponds to the right rear portion of the environment.

대부분의 경우들에서, 가장 높은 우선 순위 및 2차 스트림이 지원될 것이지만, 환경의 다른 부분, 예를 들면, 보이지 않는 것에 대응하는 몇몇 콘텐트를 수신하기 위한 2 개의 가장 높은 우선 순위 스트림들의 선택 후 남아있는 충분한 대역폭이 존재할 수 있다. 동작은 단계(1518)로부터 단계(1520)로 진행하거나, 또는 제 2 가장 높은 우선 순위 스트림이 지원될 수 없는 경우, 단계(1516)로부터 단계(1520)로 직접 진행한다.In most cases, the highest priority and secondary streams will be supported, but will remain after the selection of the two highest priority streams to receive some other content of the environment, e. G., Some content corresponding to the invisible. There may be sufficient bandwidth available. Operation proceeds from step 1518 to step 1520 or directly from step 1516 to step 1520 if the second highest priority stream can not be supported.

단계(1520)에서, 예를 들면, 제 1 및/또는 제 2 우선 순위 스트림이 선택된 후 이용 가능한 대역폭/데이터 수신 자원들을 사용하여, 제 3 가장 높은 우선 순위 스트림이 지원될 수 있는지의 여부에 관한 검사가 수행된다. 단계(1520)에서, 제 3 가장 높은 우선 순위 스트림이 지원될 수 있다는 것이 결정되는 경우, 동작은 단계(1522)로 진행하고, 예를 들면, 지원될 수 있는 나머지 대역폭/데이터 레이트를 사용하여, 제 3 가장 높은 우선 순위 스트림이 선택된다. 동작은 단계(1522)로부터 단계(1524)로 진행하거나, 또는 제 3 가장 높은 우선 순위 스트림이 주어진 이용 가능한 대역폭 및/또는 수신된 데이터 및/또는 대역폭 할당 제한들이 지원될 수 없는 경우, 직접 단계(1520)로부터 단계(1524)로 진행한다.At step 1520, it is determined whether the third highest priority stream can be supported, for example, using available bandwidth / data receiving resources after the first and / or second priority stream is selected Inspection is performed. In step 1520, if it is determined that the third highest priority stream can be supported, then operation proceeds to step 1522 and uses, for example, the remaining bandwidth / data rate that can be supported, The third highest priority stream is selected. Operation proceeds from step 1522 to step 1524, or if the third highest priority stream is not directly available in step (b) if the given available bandwidth and / or received data and / or bandwidth allocation constraints can not be supported 1520). ≪ / RTI >

단계(1524)에서, 다른 스트림 선택들 후, 임의의 대역폭, 예를 들면, 추가의 콘텐트를 수신하기 위해 사용될 수 있는 남아있는 데이터를 수신할 능력이 존재하는지를 결정하기 위한 검사가 수행된다. 추가의 대역폭이 남아있는 경우, 동작은 단계(1526)로 진행하고, 하나 이상의 하위 우선 순위 스트림들은 남아있는 이용 가능한 대역폭/데이터 레이트를 사용하기 위해 선택된다. 단계(1526)로부터 동작은 단계(1530)로 진행한다. 동작은 추가의 대역폭이 이용 가능하지 않은 경우, 단계(1524)로부터 리턴 단계(1530)로 진행한다.At step 1524, a check is made to determine if there is an ability to receive any bandwidth, e. G., Remaining data that may be used to receive additional content, after other stream selections. If additional bandwidth remains, operation proceeds to step 1526 where one or more lower priority streams are selected to use the remaining available bandwidth / data rate. From step 1526 the operation proceeds to step 1530. [ Operation proceeds from step 1524 to return step 1530 if no additional bandwidth is available.

리턴 단계(1530)는, 처리가, 예를 들면, 새롭게 선택된 세트의 스트림들이 루틴(1500)에 의해 결정되는 것에 의해, 스트림 선택 서브루틴(1500)이 호출되는 지점으로 리턴하게 한다.Return step 1530 causes the process to return to the point at which stream selection subroutine 1500 is called, for example, by the newly selected set of streams being determined by routine 1500.

도 16은 일 예시적인 실시예에 따라 스트림 우선 순위화 서브루틴의 단계들을 도시하는 플로차트이다. 도면의 (1600)는 사용될 수 있는, 예를 들면, 여기에 기술된 다른 루틴들 또는 서브루틴들 중 하나 이상으로 불릴 수 있는 일 예시적인 스트림 우선 순위화 루틴을 도시한다. 예를 들면, 도 15의 단계(1506)는 서브루틴(1600)에 대한 호출에 의해 구현될 수 있다. 스트림 우선 순위화 서브루틴(1600)은 루틴이 호출될 때 단계(1602)에서 시작한다. 동작은 시작 단계(1602)로부터 단계(1604)로 진행한다. 단계(1604)에서, 사용자의 현재 시야는 사용자의 검출된 머리 위치에 기초하여 결정된다. 사용자의 시야가 180도보다 적은 것을 고려하면, 현재 시야는 단일 카메라 위치, 예를 들면, 전방을 바라보는 카메라 위치로부터 캡처된 환경의 일 부분에 대응할 수 있다. 그러나, 사용자가 그의 머리를 움직일 때, 예를 들면, 그의 머리를 왼쪽 또는 오른쪽으로 회전하고 및/또는 위 또는 아래를 볼 때, 사용자의 시야는 상이한 카메라 위치들에 위치된 카메라들에 의해 캡처된 환경의 부분들에 대응할 수 있다. 예를 들면, 상이한 카메라들에 의해 캡처되는 이미지들이 만나거나 중첩하는 지점에 대응하는 환경의 일 부분을 보고 있을 때, 사용자의 시야는 두 개의 상이한 스트림들에서 전달될 콘텐트에 대응할 수 있다. 시야의 가장 큰 부분에 대응하는 이미지들을 제공하는 스트림은 보통 몇몇 실시예들에서 가장 높은 우선 순위가 주어질 것이다.16 is a flow chart showing the steps of a stream prioritization subroutine in accordance with one exemplary embodiment. 1600 of the drawing illustrates one exemplary stream prioritization routine that may be used, for example, one or more of the other routines or subroutines described herein. For example, step 1506 of Figure 15 may be implemented by a call to subroutine 1600. [ Stream prioritization subroutine 1600 begins at step 1602 when the routine is called. Operation proceeds from start step 1602 to step 1604. In step 1604, the current view of the user is determined based on the detected head position of the user. Considering that the user's field of view is less than 180 degrees, the current field of view may correspond to a single camera location, for example, a portion of the captured environment from a camera location facing forward. However, when the user moves his or her head, for example, turning his head left or right and / or looking up or down, the user's field of view is captured by cameras located at different camera positions It can respond to parts of the environment. For example, the user's view may correspond to the content to be delivered in two different streams when the images captured by different cameras are viewing a portion of the environment corresponding to the point where they meet or overlap. A stream that provides images corresponding to the largest portion of the view will usually be given the highest priority in some embodiments.

단계(1604)에서 결정된 사용자의 시야에 의해, 동작이 단계(1605)로 진행하고, 콘텐트를 전달하는 스트림들, 예를 들면, 사용자의 현재 시야에 대응하는 왼쪽 및 오른쪽 눈 이미지들을 포함하는 모노 이미지들 또는 입체 영상 이미지 쌍들이 식별된다. 동작은 이후 단계(1606)로 진행하고, 부분 또는 부분들, 예를 들면, 장면 영역의 이미지 부분들의 크기는 식별된 스트림들로부터 이용 가능한 사용자의 현재 시야에 대응한다. 따라서, 단계(1606)의 종료시, 어느 스트림들이 현재 시야 및 부분들의 상대적인 크기에 대응하는 이미지 콘텐트를 제공하는지에 대한 정보가 이용 가능하고 등급 매김, 예를 들면, 스트림들을 우선 순위화하기 위해 사용될 수 있다.Depending on the view of the user determined at step 1604, the operation proceeds to step 1605 and a stream of delivering content, e.g., a mono image containing left and right eye images corresponding to the current view of the user Or stereoscopic image pairs are identified. Operation then proceeds to step 1606, where the size of the portion or portions, e.g., image portions of the scene region, corresponds to the current view of the user available from the identified streams. Thus, at the conclusion of step 1606, information is available as to which streams provide image content corresponding to the current view and the relative size of the parts and can be used to prioritize, e.g., stream have.

동작은 단계들(1606)로부터 단계(1608)로 진행한다. 단계(1608)에서, 우선 순위들이 사용자의 현재 시야에 대응하는 이미지 콘텐트를 제공하는 하나 이상의 스트림들에 할당된다. 우선 순위화, 예를 들면, 등급 매김은 스트림이 제공하는 사용자의 시야의 부분 또는 부분들의 크기에 기초한다. 예를 들면, 사용자의 시야 중 80%에 대응하는 이미지 콘텐트를 제공하는 스트림은 사용자의 시야 중 15%에 대응하는 이미지 콘텐트를 제공하는 스트림보다 상위에 순위 매김될 것이고, 나머지 5%, 예를 들면, 상부 또는 하부를 제공하는 스트림은 시야 중 80% 부분에 대응하는 이미지(들)를 제공하는 스트림에 할당된 가장 높은 우선 순위보다 낮은 제 3 우선 순위를 할당받을 것이다.Operation proceeds from steps 1606 to step 1608. [ In step 1608, priorities are assigned to one or more streams that provide image content corresponding to the current view of the user. Prioritization, e.g., grading, is based on the size of the portion or portions of the user's field of view provided by the stream. For example, a stream providing image content corresponding to 80% of the user's field of view will be ranked higher than a stream providing image content corresponding to 15% of the user's field of view, and the remaining 5%, for example, , The stream providing the top or bottom will be assigned a third priority lower than the highest priority assigned to the stream providing the image (s) corresponding to the 80% portion of the field of view.

단계(1608)는 단계(1610) 및/또는 단계(1612)를 포함할 수 있고, 몇몇 실시예들에서 그를 포함한다. 단계(1610)에서, 가장 높은 우선 순위는 시야의 가장 큰 부분을 제공하는 스트림에 할당된다. 단계(1610)는 시야 중 가장 큰 부분을 제공하는 스트림을 1차 스트림으로서 지정하는 단계를 포함할 수 있다. 단계(1612)는 가장 높은 우선 순위 스트림에 의해 제공된 부분 외부에 있는 시야에 대한 부분들을 제공하는 스트림들에 대해 다음의 가장 높은 우선 순위 또는 우선 순위들을 할당하는 단계를 포함한다. 이러한 스트림들은 그들이 더 낮은 우선 순위들을 할당받는 더 작은 부분들을 제공할 수 있는 스트림들에 의해 현재 시야에 제공할 수 있는 부분의 크기에 기초하여 단계(1612)에서 우선 순위화된다.Step 1608 may include step 1610 and / or step 1612, and includes it in some embodiments. In step 1610, the highest priority is assigned to the stream providing the largest portion of the field of view. Step 1610 may include designating as a primary stream a stream providing the largest portion of the field of view. Step 1612 includes assigning the next highest priority or priorities to streams that provide portions for a view outside the portion provided by the highest priority stream. These streams are prioritized in step 1612 based on the size of the portion that they can provide to the current view by streams that can provide smaller portions that are assigned lower priorities.

예를 들면, 상이한 데이터 레이트들을 갖는 다수의 스트림들이 시야에 대해 동일한 부분을 제공할 수 있다는 것을 가정하면, 비록 잠재적으로 상이한 해상도들 또는 프레임 레이트들에서, 다수의 스트림들이 동일한 우선 순위가 할당될 수 있고, 예를 들면, 전방 뷰에 대응하는 스트림들이 동일한 우선 순위를 할당받을 수 있고, 왼쪽 후방 뷰를 제공하는 스트림들이, 예를 들면, 전방 스트림들에 할당된 상이한 우선 순위인, 동일한 우선 순위가 할당될 수 있고, 오른쪽 후방 뷰를 제공하는 스트림들이, 예를 들면, 전방 또는 왼쪽 후방 뷰 스트림들에 할당되는 것과 상이한 우선 순위인, 동일한 우선 순위를 제공받을 수 있다.For example, assuming that multiple streams with different data rates can provide the same portion to the view, although at potentially different resolutions or frame rates, multiple streams may be assigned the same priority For example, the streams corresponding to the forward view may be assigned the same priority, and the streams providing the left rear view may have the same priority, for example, different priorities allocated to the forward streams And the streams providing the right rear view may be given the same priority, e.g., different priorities than those assigned to the front or left rear view streams.

따라서, 단계(1608)에서, 시야에 대해 제공하는 스트림들은 순위 매김, 즉, 우선 순위화될 것이다. 우선 순위화는 순위 매김된 리스트에서 스트림들을 리스팅하는 것에 의해 표현될 수 있고, 1차 스트림(들)은 가장 높은 우선 순위를 할당받고 다른 스트림들은 하위 우선 순위를 할당받는다.Thus, at step 1608, the streams that provide for the field of view will be ranked, or prioritized. Prioritization may be represented by listing streams in a ranked list, with the primary stream (s) assigned the highest priority and the other streams assigned the lower priority.

모든 스트림들이 시야에 대응할 수 있는 것은 아니다. 예를 들면, 상부 또는 두 개의 장면 부분은 시야 밖에 있을 수 있고 따라서, 이러한 뷰들을 제공하는 스트림들은 단계(1608)에서 우선 순위화되지 않았을 수 있다. 동작은 단계(1608)로부터 단계(1614)로 진행한다. 단계(1614)에서, 우선 순위화될 임의의 나머지 스트림들이 존재하는지의 여부에 관한 결정이 행해진다. 예를 들면, 그들 모두가 사용자의 현재 시야에 대응하기 때문에, 우선 순위화될 나머지 스트림들이 존재하지 않는 경우, 동작은 리턴 단계(1630)로 진행한다. 그러나, 단계(1614)에서, 하나 이상의 스트림들이 우선 순위화되기 위해 남아있다고 결정되는 경우, 동작은 단계(1616)로 진행한다.Not all streams are capable of responding to the field of view. For example, the top or two scene portions may be out of sight and therefore the streams providing these views may not have been prioritized at step 1608. [ Operation proceeds from step 1608 to step 1614. [ At step 1614, a determination is made as to whether any remaining streams to be prioritized are present. For example, if none of the remaining streams to be prioritized exist because they all correspond to the current view of the user, the operation proceeds to return step 1630. However, if at step 1614 it is determined that one or more streams are left to be prioritized, then operation proceeds to step 1616.

단계(1616)에서, 우선 순위들은 콘텐트를 전달하는 하나 이상의 추가의 스트림들, 예를 들면, 현재 시야 밖의 스트림들에 할당된다. 단계(161)에서 수행된 우선 순위화는, 몇몇 실시예들에서, 현재 시야에서 보이는 콘텐트에 대해 우선 순위화되는 스트림에 의해 제공된 콘텐트의 근접성에 기초하고 및/또는 사용자의 현재 또는 과거 머리 회전의 방향에 기초한다. 예를 들면, 스트림이 현재 시야에 바로 인접한 환경의 일 부분에 대응하는 이미지 콘텐트를 제공하는 경우, 몇몇 실시예들에서 이는 사용자의 현재 시야로부터 멀리 떨어진 이미지 부분에 대응하는 콘텐트를 제공하는 스트림보다 높은 우선 순위가 할당될 것이다. 유사하게, 사용자의 머리 회전의 방향의 이미지 콘텐트를 제공하는 스트림은 머리 회전 방향의 콘텐트가 머리 회전의 검출된 방향으로부터 떨어진 반대 방향의 콘텐트보다 사용자의 시야로 빠르게 들어올 더 많은 가능성이 있다는 가정하에서 사용자의 검출된 머리 회전으로부터 떨어진 회전의 방향의 콘텐트보다 더 높은 우선 순위가 주어질 수 있다.In step 1616, priorities are assigned to one or more additional streams carrying content, e.g., current out-of-view streams. The prioritization performed in step 161 may, in some embodiments, be based on the proximity of the content provided by the stream prioritized to the content seen in the current field of view and / Direction. For example, if the stream provides image content corresponding to a portion of the immediate immediate vicinity of the current view, then in some embodiments it may be higher than the stream providing the content corresponding to the portion of the image remote from the user ' Priority will be assigned. Similarly, a stream providing image content in the direction of the user's head rotation may be viewed by a user, with the assumption that the content in the head rotation direction is more likely to come into the user's view faster than the content in the opposite direction away from the detected direction of head rotation May be given a higher priority than the content in the direction of rotation away from the detected head rotation of the player.

적어도 하나의 실시예에서, 단계(1616)는 단계(1618)를 포함하고, 머리 위치의 변경이 머리 회전, 예를 들면 머리를 위 또는 아래의 기울임에 대한 반대로서 왼쪽 또는 오른쪽 회전을 나타내는지를 결정하기 위한 검사가 수행된다. 머리 위치가 단계(1618)에서 검출되지 않는 경우, 동작은 단계(1620)로 진행하고 스트림들은 몇몇 실시예들에서 사용자의 현재 시야에 관하여 그들이 제공하는 이미지 데이터의 부분에 기초하여 우선 순위화된다. 상부 및/또는 하부 부분들을 제공하는 스트림들은 왼쪽 또는 오른쪽 후방 부분들뿐만 아니라 상부 및 하부 부분들이 시야 밖에 있을 때 왼쪽 또는 오른쪽 후방 부분들을 제공하는 스트림들보다 낮은 우선 순위가 디폴트로 할당될 수 있다. 동작은 단계(1620)로부터 리턴 단계(1630)로 진행한다.In at least one embodiment, step 1616 includes step 1618 to determine whether the change in head position indicates a left or right turn as opposed to a head turn, e. G., A tilt above or below the head Is performed. If the head position is not detected in step 1618, then operation proceeds to step 1620 and the streams are prioritized based on the portion of image data they provide with respect to the current view of the user in some embodiments. Streams providing top and / or bottom portions may be assigned a default priority lower than streams providing left or right rear portions as well as left or right rear portions when the top and bottom portions are out of sight. Operation proceeds from step 1620 to return step 1630.

단계(1618)에서 사용자 머리 회전이 검출된다고 가정되는 경우, 동작은 단계(1622)로 진행한다. 단계(1622)에서, 예를 들면, 사용자의 머리가 왼쪽으로 돌아가는지 또는 오른쪽으로 돌아가는지, 머리 회전의 방향이 결정된다. 이는, 사용자의 뷰로 들어올 환경의 다음 부분이 그로부터 멀어지기보다는 머리 회전의 방향에 있을 더 많은 가능성이 종종 있기 때문에, 머리 회전의 방향이 고려되게 한다.If it is assumed in step 1618 that the user's head rotation is detected, then operation proceeds to step 1622. [ In step 1622, the direction of the head rotation is determined, e.g., whether the user's head is turning left or right. This allows the orientation of the head rotation to be taken into account, since there is often more possibility in the direction of head rotation than the next part of the environment to be brought into the user's view will be away from it.

동작은 단계(1622)로부터 단계(1624)로 진행하고, 우선 순위들은 하나 이상의 콘텐트 스트림들, 예를 들면, 머리 회전의 방향에 기초하여 시야 밖의 스트림들에 할당된다. 적어도 일 실시예에서, 단계(1624)는 단계(1626)를 포함하고, 다음으로 가장 낮은 사용되지 않은 우선 순위는 머리 회전의 방향의 환경의 일 부분에 대응하는 콘텐트를 제공하는 스트림에 할당된다. 예를 들면, 환경의 전방 부분을 바라보는 사용자가 그의 머리를 오른쪽으로 돌리는 경우, 시야 밖의 오른쪽 후방 콘텐트를 제공하는 스트림은 시야 밖에 또한 존재하는 왼쪽 후방 콘텐트를 제공하는 스트림보다 높은 우선 순위가 할당될 것이다. 동작은 단계(1624)로부터 단계(1628)로 진행하고, 미리 우선 순위화되지 않은 나머지 스트림들은 우선 순위들이 이미 할당된 스트림들보다 낮은 중요도를 나타내는 하위 우선 순위들을 할당받는다.Operation proceeds from step 1622 to step 1624, where priorities are assigned to streams out of view based on one or more of the content streams, e.g., the direction of head rotation. In at least one embodiment, step 1624 includes step 1626, and the lowest unused priority is then assigned to the stream providing the content corresponding to a portion of the environment in the direction of head rotation. For example, if a user looking at the front portion of the environment turns his head to the right, the stream providing the right rear content out of view will be assigned a higher priority than the stream providing the left rear content that also exists outside the view will be. Operation proceeds from step 1624 to step 1628 where the remaining streams that have not been prioritized in advance are assigned lower priorities indicating lower priority than streams for which priorities have already been allocated.

동작은 단계(1628)로부터 단계(1630)로 진행한다. 리턴 단계(1630)에 도달될 때까지, 콘텐트 스트림들이 우선 순위에 따라 우선순위화, 예를 들면, 순위 매김 또는 순서화될 것이다.Operation proceeds from step 1628 to step 1630. [ Until the return step 1630 is reached, the content streams will be prioritized, e.g., ranked or ordered, in priority order.

도 17은 일 예시적인 실시예에 따라 렌더링 서브루틴의 단계들(1700)을 도시하는 플로차트이다.FIG. 17 is a flowchart illustrating steps 1700 of a rendering subroutine in accordance with one exemplary embodiment.

렌더링 서브루틴(1700)은 이미지 렌더링이 요구될 때 하나 이상의 루틴들에 의해 호출될 수 있다. 입체 영상 콘텐트의 경우에, 개별적인 이미지는 사용자의 왼쪽 및 오른쪽 눈들의 각각에 대해 렌더링된다. 모노 콘텐트의 경우에, 단일 이미지는 사용자의 왼쪽 및 오른쪽 눈들의 각각에 대해 렌더링 및 사용된다. 렌더링은 종종 하나 또는 다수의 스트림들로부터 이미지 콘텐트의 조합을 종종 포함한다. 따라서, 환경의 몇몇 부분들은 모노 콘텐트로서 제공될 수 있지만, 다른 부분들은 입체 영상 콘텐트로서 제공될 수 있고, 이 경우에, 상이한 왼쪽 및 오른쪽 눈 이미지들은 콘텐트의 일부는 입체이고, 다른 콘텐트는 모노이지만, 환경의 적어도 일 부분이 입체 영상 콘텐트로서 나타내질 때 왼쪽 및 오른쪽 눈 이미지들의 각각에 대해 생성되는 단일 이미지가 렌더링될 수 있다.The rendering subroutine 1700 may be invoked by one or more routines when image rendering is desired. In the case of stereoscopic content, individual images are rendered for each of the user's left and right eyes. In the case of mono content, a single image is rendered and used for each of the user's left and right eyes. Rendering often involves a combination of image content from one or more streams. Thus, some portions of the environment may be provided as mono content, while other portions may be provided as stereoscopic content, in which case the different left and right eye images may have portions of the content being stereoscopic and other content being mono , A single image may be rendered that is generated for each of the left and right eye images when at least a portion of the environment is represented as stereoscopic image content.

렌더링 루틴(1700)은 시작 단계(1702)에서 시작하고 렌더링 단계(1706)로 진행한다. 렌더링 단계(1706)에 대한 입력은 환경 맵(1411), 하나 이상의 뷰에 대응하는 디코딩된 이미지 콘텐트(1703), 및 환경 맵(1411)에 의해 규정된 표면 상에 하나 이상의 디코딩된 이미지들 또는 이미지 부분들을 맵핑하기 위해 사용된 하나 이상의 UV 맵들(1704)을 포함한다. 상기에 논의된 바와 같이, 환경 맵(1411)은, 더 복잡한 기하학이 제공되지 않는 경우에, 구의 표면 내로 맵핑되는 이미지들을 갖는 구를 디폴트로 할 수 있다.Rendering routine 1700 begins at start step 1702 and proceeds to render step 1706. [ The input to the rendering step 1706 includes one or more decoded images or images on the surface defined by the environment map 1411, the decoded image content 1703 corresponding to the one or more views, And one or more UV maps 1704 used to map the portions. As discussed above, the environment map 1411 may default to spheres having images that are mapped into the surface of the sphere, if no more complex geometry is provided.

몇몇 실시예들에서, 렌더링 단계(1706)는 사용자의 현재 시야 및 사용자의 현재 시야에 대응하는 적어도 하나의 이미지를 생성하기 위해 적어도 하나의 UV 맵뿐만 아니라 환경 맵에 대응하는 하나 이상의 콘텐트 스트림들에 포함된 이미지들을 디코딩함으로써 생성된 콘텐트를 사용하는 것을 포함하는 단계(1708)를 포함한다. 입체 영상, 예를 들면, 3D 이미지 콘텐트의 경우, 렌더링은 디스플레이에 적합한 포맷으로 생성되는 왼쪽 및 오른쪽 눈 이미지들을 야기할 것이다. 렌더링된 왼쪽 및 오른쪽 눈 이미지들에서 차이들은, 몇몇 실시예들에서, 사용자가 이미지들을 3D로 인식하게 한다.In some embodiments, the rendering step 1706 may include at least one UV map to generate at least one image corresponding to the current view of the user and the current view of the user, as well as one or more content streams corresponding to the environment map And using the generated content by decoding the embedded images (1708). In the case of stereoscopic images, e.g., 3D image content, rendering will cause left and right eye images to be generated in a format suitable for display. Differences in the rendered left and right eye images, in some embodiments, allow the user to recognize the images in 3D.

동작은 단계(1706)로부터 저장 및/또는 출력된 렌더링된 이미지들이 디스플레이 디바이스에 공급될 프로그램 또는 루틴에 리턴되게 하는 리턴 단계인 단계(1710)로 진행한다.Operation proceeds from step 1706 to step 1710, where the rendered and / or outputted rendered images are returned to a program or routine to be fed to the display device.

렌더링 서브루틴(1700)은 시야의 갱신된 버전 또는 프레임이 디스플레이될 때마다 호출될 수 있다. 따라서, 렌더링은 보통 이미지와 일치하는 레이트, 예를 들면, 프레임, 디스플레이 레이트에서 발생한다.The rendering subroutine 1700 may be called whenever an updated version or frame of view is displayed. Thus, rendering typically occurs at a rate that matches the image, e.g., frame, display rate.

도 18은 복수의 콘텐트 스트림들에 대응하는 스트림 정보를 포함하는 일 예시적인 표(1800)를 도시한다. 몇몇 실시예들에서 예시적인 표(1800)에 포함된 스트림 정보는 가이드 정보의 일부, 예를 들면, 재생 시스템이 수신하도록 선택할 수 있는 콘텐트 스트림들에 대한 정보를 제공하는 프로그램 가이드로서 수신된다. 범례(1840)는 표(1800)에 포함된 정보에서 약어들로서 사용된 다양한 글자들의 의미를 나타내는 정보를 포함한다.18 shows an example table 1800 that includes stream information corresponding to a plurality of content streams. In some embodiments, the stream information included in the exemplary table 1800 is received as part of the guide information, e.g., as a program guide that provides information about the content streams that the playback system may choose to receive. Legend 1840 includes information indicating the meaning of the various letters used as abbreviations in the information contained in table 1800. [

표(1800)에 포함된 정보는 정보가 대응하는 콘텐트 스트림들에 액세스하기 위해 사용될 수 있다. 몇몇 실시예들에서 논의되는 바와 같이, 스트림 정보는, 복수의 이용 가능한 콘텐트 스트림들에 대해, 제공된 대응하는 콘텐트 스트림을 수신하기 위해 연결될 수 있는 멀티캐스트 그룹의 멀티캐스트 어드레스, 제공된 콘텐트 스트림을 제공하기 위해 사용된 스위칭된 디지털 비디오 채널에 대한 액세스를 요구하기 위해 사용될 수 있는 정보, 또는 제공된 콘텐트 스트림이 방송되는 방송 채널에 대해 동조하도록 재생 시스템의 동조기를 제어하기 위해 사용될 수 있는 채널 동조 정보 중 하나를 포함한다.The information contained in table 1800 may be used to access the corresponding content streams. As discussed in some embodiments, the stream information may include, for a plurality of available content streams, a multicast address of a multicast group that may be coupled to receive the provided corresponding content stream, providing the provided content stream Or one of the channel tuning information that can be used to control the tuner of the playback system to tune to the broadcast channel on which the provided content stream is broadcast .

표(1800)에서, 각각의 행은 콘텐트를 전달하는 개별적인 콘텐트 스트림에 대응하고, 행이 대응하는 콘텐트 스트림은 열(1812)의 대응하는 입력에 보여진 스트림 식별자에 의해 식별된다. 열(1804)의 각각의 입력은 행이 대응하는 개별적인 콘텐트 스트림에 의해 전달된 프로그램 콘텐트를 식별한다. 표(1800)로부터 인식될 수 있는 바와 같이, 행들의 제 1 그룹(1820)은 열(1804)의 대응하는 입력들에 보여지는 프로그램/이벤트 타이틀을 나타낼 수 있는 프로그램 콘텐트 "축구"에 대응한다. 다양한 상이한 프로그램들/이벤트들에 대응하는 복수의 이러한 그룹들이 존재한다. 각각의 그룹은 각각이 뷰잉 방향에 대응하는 콘텐트 스트림들을 포함하고 논의되는 제공된 데이터 레이트를 지원한다. 간략함을 위해, 단지 두 개의 그룹들이 도면에 도시되고, 제 2 그룹(1822)에 대응하는 행들은 개념을 예시하기 위해서만 단지 부분적으로 도시된다. 행들의 제 2 그룹(1822)은 열(1804)에서 대응하는 입력들에 의해 나타내는 프로그램 콘텐트 "HI"에 대응한다.In table 1800, each row corresponds to a separate content stream carrying content, and the corresponding content stream for the row is identified by a stream identifier shown in the corresponding input of column 1812. Each input of column 1804 identifies the program content delivered by the respective individual content stream for which the row corresponds. As can be appreciated from table 1800, a first group 1820 of rows corresponds to program content "soccer" which may represent program / event titles shown in corresponding inputs of column 1804. [ There are a plurality of such groups corresponding to a variety of different programs / events. Each group includes content streams, each of which corresponds to a viewing direction, and supports a provided data rate as discussed. For simplicity, only two groups are shown in the figure, and the rows corresponding to the second group 1822 are only partially shown for illustrative purposes only. The second group of rows 1822 corresponds to the program content "HI" represented by the corresponding inputs in column 1804. [

열(1806)에서 각각의 입력은 장면 영역의 일 부분, 예를 들면, 대응하는 콘텐트 스트림에 의해 전달된 360도 장면 영역(1200)의 구역을 나타낸다. 따라서, 그룹(1820)의 제 1 세 개의 행들이면서, 상이한 콘텐트 스트림에 대응하는 각각이 정면 장면 부분(예를 들면, 270° 내지 90° 뷰잉 영역을 포함하는 도 12에 도시된 구역(1)으로 맵핑되는)을 전달한다. 그룹(1820)의 다음의 세 개의 행들이면서, 상이한 콘텐트 스트림에 대응하는 각각은 후방 오른쪽 장면 부분예를 들면, 30° 내지 210° 뷰잉 영역을 포함하는 도 12에 도시된 구역(1)으로 맵핑되는)을 전달한다. 그룹(1820)의 마지막 세 개의 행들이면서, 상이한 콘텐트 스트림에 대응하는 각각은 후방 왼쪽 장면 부분(예를 들면, 150° 내지 330° 뷰잉 영역을 포함하는 도 12에 도시된 구역(3)으로 맵핑되는)을 전달한다.In column 1806, each input represents a section of the scene area, e.g., a 360-degree scene area 1200 conveyed by a corresponding content stream. Thus, the first three rows of the group 1820, while each corresponding to a different content stream is divided into a front scene part (e.g., zone 1 shown in FIG. 12, which includes a 270 ° to 90 ° viewing area) Which is mapped to < / RTI > Each of the three rows of the group 1820, corresponding to the different content streams, is mapped to zone 1 shown in FIG. 12, including a rear right scene part, for example, a 30 ° to 210 ° viewing area . The last three rows of group 1820, each corresponding to a different content stream is mapped to a region 3 shown in FIG. 12, including a rear left scene portion (e.g., a 150 ° to 330 ° viewing region) .

열(1808)의 각각의 입력은 대응하는 콘텐트 스트림이 지원하는 데이터 레이트를 나타낸다. 열(1810)의 각각의 입력은 열의(1812)의 대응하는 입력에 보여진 스트림 식별자에 의해 식별된 대응하는 콘텐트 스트림을 수신하기 위해 연결될 수 있는 멀티캐스트 그룹의 멀티캐스트 그룹 식별자/어드레스를 나타낸다. 열(1814)의 각각의 입력은 열(1812)의 대응하는 입력에 보여진 스트림 식별자에 의해 식별된 대응하는 콘텐트 스트림에 대한 스트림 기술자를 포함한다. 열(1816)의 각각의 입력은 액세스 정보, 예를 들면, 대응하는 콘텐트 스트림에 액세스 또는 그를 요청하기 위해 사용될 수 있는 동조 파라미터들 및/또는 다른 액세스 파라미터들을 포함한다.Each input of column 1808 represents the data rate supported by the corresponding content stream. Each input of column 1810 represents a multicast group identifier / address of a multicast group that can be connected to receive the corresponding content stream identified by the stream identifier shown in the corresponding input of column 1812. Each input of column 1814 includes a stream descriptor for the corresponding content stream identified by the stream identifier shown in the corresponding input of column 1812. Each input of column 1816 includes access information, e.g., tuning parameters and / or other access parameters that may be used to access or request a corresponding content stream.

예시적인 표(1800)로부터 이해될 수 있는 바와 같이, 도시된 예에서, 재생시에 사용을 위해 이용 가능한 제공된 뷰잉 방향에 대응하는 각각의 콘텐트 스트림의 다수의, 예를 들면, 세 개의, 상이한 버전들이 존재하고, 콘텐트 스트림의 각각의 버전은 상이한 데이터 레이트를 지원한다. 따라서, 재생 시스템은, 도 14 내지 도 17에 관하여 상세히 논의되는 본 발명의 특징들에 따라, 예를 들면, 지원된 대역폭, 데이터 레이트, 사용자 머리 위치, 등과 같은 하나 이상의 팩터들에 기초하여 재생시 사용하기 위한 하나 이상의 스트림들을 선택할 수 있다.As can be appreciated from exemplary table 1800, in the depicted example, multiple, e.g., three, different versions of each of the content streams corresponding to the provided viewing direction available for use during playback And each version of the content stream supports a different data rate. Thus, the playback system may be configured to play back, based on one or more factors such as, for example, supported bandwidth, data rate, user head position, etc., in accordance with aspects of the invention discussed in detail with respect to FIGS. One or more streams may be selected for use.

표(1800)의 정보가 하나 이상의 콘텐트 스트림들을 선택 및/또는 액세스하기 위해 재생 시스템에 의해 이용될 수 있는 방식을 더 명백히 이해하기 위해, 그룹(1820)의 제 1 행 및 열들(1804, 1806, 1808, 1810, 1812, 1814, 1816)의 각각의 제 1 입력을 고려하자. 열(1804)의 제 1 입력은 스트림 식별자(S1D1)에 의해 식별되는 제 1 콘텐트 스트림에 의해 전달되는 이벤트/프로그램 "축구"가 열(1812)에 포함된다는 것을 나타낸다. 열(1806)의 대응하는 입력은 제 1 스트림이 전방 장면 부분(예를 들면, 270° 내지 90° 뷰잉 영역)에 대응하는 콘텐트를 전달한다는 것을 나타낸다. 이러한 뷰잉 영역 정보는 현재 시야에 대응하는 사용자/뷰어의 현재 머리 위치에 대응하는 콘텐트를 전달하는 하나 이상의 스트림들을 식별하기 위해 재생 시스템에 의해 사용된다. 상기 예에 계속하여, 열(1808)의 대응하는 제 1 입력은 제 1 콘텐트 스트림이 데이터 레이트(D1)를 지원 및/또는 요구한다는 것을 나타낸다. 열(1810)의 대응하는 입력은 제 1 콘텐트 스트림이 멀티캐스트 그룹(M1)을 연결함으로써 액세스될 수 있다는 것을 나타내고, M1은 어드레스로 맵핑하는 멀티캐스트 그룹 어드레스 및/또는 식별자를 나타낸다. 열(1814)의 대응하는 입력은 제 1 스트림이 대응하는 카메라 뷰잉각(V1), 코덱 형태(C1), 지원된 데이터 레이트(D1), 및 제 1 스트림에 대응하는 프레임 레이트(F1)를 나타내는 제 1 콘텐트 스트림에 대응하는 스트림 기술자 "V1C1D1F1"를 포함한다. 마지막 열(1816)의 대응하는 입력은 제 1 콘텐트 스트림에 액세스하거나 그를 요청하기 위해 사용될 수 있는 액세스 동조 파라미터들 및/또는 다른 액세스 파라미터들(A123으로 도시됨)을 나타낸다.In order to more clearly understand how the information in the table 1800 can be used by the playback system to select and / or access one or more content streams, the first row and columns 1804, 1806, 1808, 1810, 1812, 1814, 1816). The first input of the column 1804 indicates that the event / program "soccer" delivered by the first content stream identified by the stream identifier (S 1 D 1 ) is included in the column 1812. A corresponding input of column 1806 indicates that the first stream carries content corresponding to a preceding scene portion (e.g., a 270 ° to 90 ° viewing region). This viewing area information is used by the playback system to identify one or more streams carrying content corresponding to the current head position of the user / viewer corresponding to the current view. Continuing with the example above, the corresponding first input of column 1808 indicates that the first content stream supports and / or requires data rate D1. The corresponding input of column 1810 indicates that the first content stream can be accessed by concatenating the multicast group Ml and Ml represents the multicast group address and / or identifier that maps to the address. The corresponding input of column 1814 is the input of the first stream having a corresponding camera viewing angle V 1 , codec type C 1 , supported data rate D 1 and frame rate F 1) representing the stream descriptor and a "V 1 C 1 D 1, F 1," corresponding to the first content stream. The corresponding entry in the last column 1816 indicates access tuning parameters and / or other access parameters (shown as A123) that may be used to access or request the first content stream.

사용될 수 있는 이용 가능한 콘텐트 스트림들에 관해 상기에 논의된 이러한 정보에 의해, 재생 시스템(1900)과 같은 재생 시스템은 본 발명의 특징들에 따라 재생시 사용을 위해 하나 이상의 콘텐트 스트림들을 선택 및 액세스할 수 있다. 더 양호한 이해를 위해, 재생 시스템이 사용자 머리 위치가 사용자가 360도 장면 중 정면 부분을 바라보고 있다는 것을 나타낸다는 것을 결정하는 하나의 단순한 예를 고려하자. 이러한 경우, 일 실시예에서 재생 시스템은 정면 장면 부분을 전달하는 적어도 하나의 콘텐트 스트림을 선택한다. 이용 가능한 대역폭, 지원 가능한 데이터 레이트, 스트림 대역폭 및/또는 데이터 레이트 제한들과 같은 도 14 내지 도 17에 관해 논의되는 다양한 다른 팩터들에 의존하여, 재생 시스템은 정면 장면 부분을 전달하는 세 개의 상이한 이용 가능한 스트림들(S1D1, S1D2, S1D3) 중에 하나의 스트림을 선택할 수 있다. 제한들이 허용하는 경우, 재생 시스템은 정면 장면 부분에 대응하는 복수의 콘텐트 스트림들로부터 대응하는 세 개 중에 가장 높은 품질 스트림, 예를 들면, 스트림(S1D1)을 선택할 것이다. 표(1800)에서 제공된 정보는, 선택하기 위해 사용될 수 있는 정보 중 적어도 일부가 스트림 정보(1800)에 의해 제공되기 때문에, 재생시 사용을 위해 적절한 스트림의 선택을 용이하게 한다. 스트림 선택 후, 재생 시스템은, 선택된 스트림에 대응하는 멀티캐스트 그룹, 예를 들면, M1을 연결함으로써 또는 콘텐트 스트림을 획득하기 위해 액세스 정보를 사용함으로써, 콘텐트 전달, 예를 들면, 콘텐트 수신을 개시하기 위해 스트림 정보(1800)를 다시 사용할 수 있다.With this information discussed above with respect to the available content streams that may be used, a playback system, such as playback system 1900, may be used to select and access one or more content streams for use in playback according to aspects of the present invention . For better understanding, consider a simple example in which the playback system determines that the user's head position indicates that the user is looking at the front portion of the 360 degree scene. In this case, in one embodiment, the playback system selects at least one content stream that carries the front scene portion. Depending on various other factors discussed with respect to Figures 14-17, such as available bandwidth, supportable data rates, stream bandwidth, and / or data rate limits, the playback system may use three different uses One of the possible streams (S 1 D 1 , S 1 D 2 , S 1 D 3 ) can be selected. If the restrictions allow, the playback system will select the highest quality stream, e.g., stream S 1 D 1 , of the three corresponding from the plurality of content streams corresponding to the front scene portion. The information provided in table 1800 facilitates the selection of the appropriate stream for use in playback, since at least some of the information that may be used for selection is provided by stream information 1800. [ After stream selection, the playback system may initiate content delivery, e.g., content reception, by connecting the multicast group corresponding to the selected stream, e.g., M1, or by using the access information to obtain the content stream The stream information 1800 can be used again.

도 19는 콘텐트 전달 시스템으로부터 수신된 이미징 콘텐트를 수신, 디코딩, 저장 및 디스플레이하기 위해 사용될 수 있는 본 발명에 따라 구현된 재생 시스템(1900)을 도시한다. 시스템(1900)은 디스플레이(1902)를 포함하는 단일 재생 디바이스(1900')로서 또는 외부 디스플레이, 예를 들면, 컴퓨터 시스템(1900')에 결합된 헤드 마운트 디스플레이(1905)와 같은 요소들의 조합으로서 구현될 수 있다.19 illustrates a playback system 1900 implemented in accordance with the present invention that may be used to receive, decode, store and display imaging content received from a content delivery system. The system 1900 may be implemented as a single playback device 1900 'including a display 1902 or as a combination of elements such as an external display, e.g., a head mounted display 1905 coupled to a computer system 1900' .

재생 시스템(1900)은, 적어도 몇몇 실시예들에서, 3D 헤드 마운트 디스플레이를 포함한다. 헤드 마운트 디스플레이는 헤드 마운트 디스플레이(1905)를 포함할 수 있는 OCULUS RIFTTM VR(가상 현실) 헤드셋을 사용하여 구현될 수 있다. 다른 헤드 마운트 디스플레이들이 또한 사용될 수 있다. 몇몇 실시예들에서, 하나 이상의 디스플레이 스크린들이 사용자의 왼쪽 및 오른쪽 눈들에 콘텐트를 디스플레이하기 위해 사용되는 헤드 마운트 헬멧 또는 다른 헤드 마운팅 디바이스가 디바이스(1905)로서 사용된다. 단일 스크린의 상이한 부분들을 상이한 눈들에 노출하도록 구성된 헤드 마운트를 갖는 단일 스크린상에 상이한 이미지들을 왼쪽 및 오른쪽 눈들에 디스플레이함으로써, 단일 디스플레이는 뷰어의 왼쪽 및 오른쪽 눈들에 개별적으로 인식될 왼쪽 및 오른쪽 눈 이미지들을 디스플레이하기 위해 사용될 수 있다. 몇몇 실시예들에서, 휴대 전화 스크린은 헤드 마운트 디스플레이 디바이스의 디스플레이로서 사용된다. 적어도 몇몇 이러한 실시예들에서, 휴대 전화는 헤드 마운팅 디바이스로 삽입되고 휴대 전화는 이미지들을 디스플레이하기 위해 사용된다. 몇몇 실시예들에서, 디스플레이 디바이스(1905)는 Oculus Rift와 같은 3D 디스플레이 장치의 일부일 수 있다.The playback system 1900, in at least some embodiments, includes a 3D head-mounted display. The head mount display may be implemented using a OCULUS RIFT TM VR (Virtual Reality) headset, which may include a head mount display 1905. Other head mount displays may also be used. In some embodiments, a head mount helmet or other head mounting device is used as the device 1905, in which one or more display screens are used to display content in the user's left and right eyes. By displaying different images on the left and right eyes on a single screen with a head mount configured to expose different portions of a single screen to different eyes, a single display can be displayed on the left and right eye images Lt; / RTI > In some embodiments, the mobile phone screen is used as a display of a head-mounted display device. In at least some such embodiments, the mobile phone is inserted into the head mounting device and the mobile phone is used to display images. In some embodiments, the display device 1905 may be part of a 3D display device such as Oculus Rift.

재생 시스템(1900)은 수신된 인코딩된 이미지 데이터, 예를 들면, 환경 또는 장면의 상이한 부분들에 대응하는 왼쪽 및 오른쪽 눈 이미지들 및/또는 모노(단일 이미지들)을 디코딩하고, 예를 들면, 사용자에 의해 3D 이미지로서 인식되는 상이한 왼쪽 및 오른쪽 눈 뷰들을 렌더링 및 디스플레이함으로써, 고객에게 디스플레이를 위한 3D 이미지 콘텐트를 생성하기 위한 능력을 갖는다. 재생 시스템(1900)은 몇몇 실시예들에서, 가정 또는 사무실과 같은 고객 구내 위치에 위치되지만, 이미지 캡처 사이트에 또한 위치될 수 있다. 시스템(1900)은 본 발명에 따라 신호 수신, 디코딩, 디스플레이, 및/또는 다른 동작들을 수행할 수 있다.The reproduction system 1900 decodes the received encoded image data, e.g., left and right eye images and / or mono (single images) corresponding to different parts of the environment or scene and, for example, Has the ability to generate 3D image content for display to the customer by rendering and displaying different left and right eye views recognized as 3D images by the user. The playback system 1900, in some embodiments, is located at a customer premise location, such as a home or office, but may also be located at an image capture site. The system 1900 may perform signal reception, decoding, display, and / or other operations in accordance with the present invention.

시스템(1900)은 디스플레이(1902), 디스플레이 디바이스 인터페이스(1903), 입력 디바이스(1904), 입력/출력(I/O) 인터페이스(1906), 프로세서(1908), 네트워크 인터페이스(1910) 및 메모리(1912)를 포함한다. 시스템(1900)의 다양한 구성 요소들은 데이터가 시스템(1900)의 구성 요소들 사이에 전달되게 하는 버스(1909)를 통해 및/또는 다른 접속들에 의해 또는 무선 인터페이스를 통해 함께 결합된다. 몇몇 실시예들에서, 디스플레이(1902)가 대시 박스를 사용하여 도시되는 선택적인 요소로서 포함되지만, 몇몇 실시예들에서, 외부 디스플레이 디바이스(1905), 예를 들면, 헤드 마운트 입체 영상 디스플레이 디바이스는 디스플레이 디바이스 인터페이스(1903)를 통해 재생 디바이스에 결합될 수 있다.The system 1900 includes a display 1902, a display device interface 1903, an input device 1904, an input / output (I / O) interface 1906, a processor 1908, a network interface 1910, ). The various components of system 1900 are coupled together via bus 1909 and / or via other connections or via an air interface to allow data to be transferred between the components of system 1900. In some embodiments, although the display 1902 is included as an optional element shown using a dash box, in some embodiments, the external display device 1905, e.g., a head-mounted stereoscopic image display device, May be coupled to the playback device via a device interface 1903.

예를 들면, 휴대 전화 프로세서가 프로세서로서 이용되고 휴대 전화가 헤드 마운트에 이미지들을 생성 및 디스플레이하는 경우, 시스템은 헤드 마운트 디바이스의 일부로서 프로세서(1908), 디스플레이(1906) 및 메모리(1912)를 포함할 수 있다. 프로세서(1908), 디스플레이(1902) 및 메모리(1912) 모두는 휴대 전화의 일부일 수 있다. 시스템(1900)의 다른 실시예들에서, 프로세서(1908)는 XBOX 또는 PS4와 같은 게이밍 시스템의 일부일 수 있고, 디스플레이(1905)는 헤드 마운팅 디바이스에 장착되고 게이밍 시스템에 결합된다. 프로세서(1908) 또는 메모리(1912)는 머리에 씌워지는지 또는 그렇지 않은지는 중요하지 않은 디바이스에 위치되고, 인식될 수 있는 바와 같이, 몇몇 경우들에서, 전력, 열, 및 중량 관점으로부터 헤드기어내 프로세서가 공통 위치하는 것이 편리할 수 있지만, 적어도 몇몇 경우들에서 디스플레이를 포함하는 헤드 기어에 결합된 메모리 및 프로세서(1908)를 갖는 것이 바람직할 수 있다.For example, if a cellular telephone processor is used as a processor and the cellular phone generates and displays images on the head mount, the system includes a processor 1908, a display 1906, and a memory 1912 as part of the head mount device can do. Both processor 1908, display 1902, and memory 1912 may be part of a cellular telephone. In other embodiments of system 1900, processor 1908 may be part of a gaming system such as XBOX or PS4, and display 1905 is mounted to a head mounting device and coupled to a gaming system. Processor 1908 or memory 1912 may be located in a device that is not critical to whether it is overhead or not and may be recognized in some cases from a power, It may be convenient to have a memory and processor 1908 coupled to the headgear that includes a display in at least some instances.

다양한 실시예들이 헤드 마운트 디스플레이(1905 또는 1902)를 고려하지만, 방법들 및 장치는 또한 3D 이미지를 지원할 수 있는 비-헤드 마운트 디스플레이들과 함께 사용될 수 있다. 따라서, 많은 실시예들에서, 시스템(1900)은 헤드 마운트 디스플레이를 포함하지만, 이는 또한 비-헤드 마운트 디스플레이와 함께 구현될 수 있다.While various embodiments contemplate a head mount display 1905 or 1902, methods and apparatus can also be used with non-head mounted displays capable of supporting 3D images. Thus, in many embodiments, system 1900 includes a head mounted display, but it may also be implemented with a non-head mounted display.

재생 시스템(1900)의 운영자는 입력 디바이스(1904)를 통해 하나 이상의 파라미터들을 제어할 수 있고 및/또는 수행될 동작들을 선택, 예를 들면, 3D 장면을 디스플레이할 것을 선택할 수 있다. I/O 인터페이스(1906)를 통해, 시스템(1900)은 외부 디바이스들에 결합될 수 있거나 및/또는 신호 및/또는 정보를 다른 디바이스들과 교환할 수 있다. 몇몇 실시예들에서, I/O 인터페이스(1906)를 통해, 시스템(1900)은 카메라 리그(900)와 같은 카메라 리그의 부분일 수 있는 다양한 카메라들에 의해 캡처된 이미지들을 수신할 수 있다.The operator of the playback system 1900 may control one or more parameters via the input device 1904 and / or may select to select the actions to be performed, e.g., to display the 3D scene. Through the I / O interface 1906, the system 1900 can be coupled to external devices and / or exchange signals and / or information with other devices. In some embodiments, through the I / O interface 1906, the system 1900 can receive images captured by various cameras that may be part of a camera rig, such as the camera rig 900.

프로세서(1908), 예를 들면, CPU는 루틴들(1914)을 실행하고 본 발명에 따라 동작하도록 재생 시스템(1900)을 제어하기 위해 다양한 모듈들을 사용한다. 프로세서(1908)는 재생 시스템(1900)의 전체 일반적인 동작을 제어하는 것을 담당한다. 다양한 몇몇 실시예들에서, 프로세서(1908)는 재생 디바이스에 의해 수행되는 것으로 논의된 기능들을 수행하도록 구성된다.The processor 1908, e.g., the CPU, uses various modules to execute the routines 1914 and to control the playback system 1900 to operate in accordance with the present invention. The processor 1908 is responsible for controlling all the general operations of the playback system 1900. In various embodiments, the processor 1908 is configured to perform the functions discussed as being performed by the playback device.

네트워크 인터페이스(1610)를 통해 시스템(1900)은 신호들 및/또는 정보(예를 들면, 이미지들 및/또는 비디오 콘텐트를 포함하는)를 다양한 외부 디바이스들로 예를 들면, 통신 네트워크(105)와 같은 통신 네트워크를 거쳐 전달 및/또는 수신한다. 네트워크 인터페이스(1910)는 수신 및/또는 송신 동작들이 수행되는 수신기(1911) 및 송신기(1913)를 포함한다. 몇몇 실시예들에서, 시스템은 콘텐트 제공자로부터 네트워크 인터페이스(1910)를 통해 하나 이상의 선택된 콘텐트 스트림들을 수신한다. 몇몇 실시예들에서, 시스템(1900)은 인터페이스(1910)의 수신기(1911)를 통해 재생을 위해 사용할 하나 이상의 선택된 콘텐트 스트림들을 수신한다. 수신된 콘텐트 스트림은 인코딩된 데이터, 예를 들면, 인코딩된 장면 부분들(1952)로서 수신될 수 있다. 수신기(1911)는 또한 스트림 정보(1946) 및/또는 초기화 데이터를, 예를 들면, 프로그램 가이드의 일부로서 수신하도록 구성된다. 시스템(1900)은 또한, 예를 들면, 수신기(1911)를 통해, 대역폭 및/또는 상이한 뷰잉 방향들에 대한 대역폭 제한들을 포함하는 데이터 레이트 할당 제어 정보(1952)를 수신하고, 개별적인 대역폭 제한들은 개별적인 대역폭 제한에 대응하는 뷰잉 방향에 대응하는 콘텐트를 제공하는 하나 이상의 콘텐트 스트림들을 수신하기 위해 사용될 최대 대역폭을 지정한다. 몇몇 실시예들에서, 수신기(1911)는 또한 적어도 하나의 환경 맵, 예를 들면, 3D 표면을 규정하는 3D 깊이 맵, 및 예를 들면, 개시 단계 또는 다른 시간 동안 3D 표면의 적어도 일 부분상에 이미지 콘텐트를 맵핑하기 위해 사용될 하나 이상의 UV 맵들을 수신하도록 구성된다. 몇몇 실시예들에서, 수신기(1911)는 장면 환경의 제 1 부분에 대응하는 제 1 UV 맵, 장면 환경의 제 2 부분에 대응하는 제 2 UV 맵, 제 3 부분에 대응하는 제 3 UV 맵, 제 4 부분에 대응하는 제 4 UV, 및 장면 환경의 제 5 부분에 대응하는 제 5 UV 맵을 수신한다. 몇몇 실시예들에서, 초기화 동안, 시스템(1900)은, 예를 들면, 인터페이스(1910)의 수신기를 통해, 콘텐트, 예를 들면, 장면의 제 1, 제 2, 제 3, 제 4, 및 제 5 부분들 중 하나 이상에 대응하는 이미지를 수신한다.Via network interface 1610, system 1900 can send signals and / or information (e.g., including images and / or video content) to various external devices, for example, And / or receive over the same communication network. The network interface 1910 includes a receiver 1911 and a transmitter 1913 in which receive and / or transmit operations are performed. In some embodiments, the system receives one or more selected content streams from a content provider via a network interface 1910. In some embodiments, the system 1900 receives one or more selected content streams to be used for playback via the receiver 1911 of the interface 1910. The received content stream may be received as encoded data, e.g., encoded scene portions 1952. Receiver 1911 is also configured to receive stream information 1946 and / or initialization data, e.g., as part of a program guide. The system 1900 also receives data rate allocation control information 1952 that includes bandwidth limitations for bandwidth and / or different viewing directions, for example via a receiver 1911, And specifies the maximum bandwidth to be used to receive one or more content streams that provide content corresponding to the viewing direction corresponding to the bandwidth limitation. In some embodiments, the receiver 1911 may also include at least one environment map, e.g., a 3D depth map defining a 3D surface, and at least a portion of the 3D depth map, e.g., And to receive one or more UV maps to be used to map the image content. In some embodiments, the receiver 1911 includes a first UV map corresponding to the first portion of the scene environment, a second UV map corresponding to the second portion of the scene environment, a third UV map corresponding to the third portion, A fourth UV corresponding to the fourth portion, and a fifth UV map corresponding to the fifth portion of the scene environment. In some embodiments, during initialization, the system 1900 may transmit content, e.g., through the receiver of the interface 1910, to the first, second, third, fourth, And receives an image corresponding to one or more of the five portions.

메모리(1912)는 다양한 모듈들, 얘를 들면, 프로세서(1908)에 의해 실행될 때, 본 발명에 따라 디코딩 및 출력 동작들을 수행하도록 재생 시스템(1900)을 제어하는 루틴들을 포함한다. 메모리(1912)는 제어 루틴들(1914), 머리 위치 결정 모듈(1916), 현재 뷰잉 위치 초기화 모듈(1918), 디코더 모듈(1920), 현재 선택된 스트림 초기화 모듈(1922), 콘텐트 전달 개시 모듈(1924), 이미지 버퍼(들)(1926), 이미지 버퍼 갱신 모듈(1928), 이미지 생성 모듈이라고도 불리는 이미지 렌더링 모듈(1930), 이용 가능한 대역폭 및/또는 지원된 데이터 레이트 결정 모듈(1932), 머리 위치 변경 결정 모듈(1934), 이용 가능한 대역폭 및/또는 지원된 데이터 레이트 변경 결정 모듈(1936), 스트림 선택 모듈(1938), 선택된 스트림 세트 변경 결정 모듈(1940), 선택된 스트림 세트 갱신 모듈(1942), 스트림(들) 종료 모듈(1944), 수신된 스트림 정보(1946)를 포함하는 데이터/정보, 수신된 대역폭 및/또는 데이터 레이트 할당 정보(1948), 결정된 현재 최대 이용 가능한 대역폭 및/또는 지원 가능한 데이터 레이트(1950), 수신된 인코딩된 이미지 콘텐트(1952), 수신된 환경 맵(1954), 수신된 UV 맵(들)(1956), 디코딩된 이미지 콘텐트(1958), 및 생성된 3D 콘텐트(1960)를 포함한다.Memory 1912 includes routines that, when executed by various modules, such as processor 1908, control playback system 1900 to perform decoding and output operations in accordance with the present invention. The memory 1912 includes control routines 1914, a head positioning module 1916, a current viewing position initialization module 1918, a decoder module 1920, a currently selected stream initialization module 1922, a content delivery initiation module 1924 ), Image buffer (s) 1926, an image buffer update module 1928, an image rendering module 1930, also referred to as an image generation module, an available bandwidth and / or supported data rate determination module 1932, A determination module 1934, an available bandwidth and / or supported data rate change determination module 1936, a stream selection module 1938, a selected stream set change determination module 1940, a selected stream set update module 1942, (S) termination module 1944, data / information including received stream information 1946, received bandwidth and / or data rate allocation information 1948, determined current maximum available bandwidth, and / The received encoded image content 1952, the received environment map 1954, the received UV map (s) 1956, the decoded image content 1958, and the generated 3D content 1960 ).

제어 루틴들(1914)은 시스템(1900)의 동작을 제어하기 위한 디바이스 제어 루틴들 및 통신 루틴들을 포함한다. 머리 위치 결정 모듈(1916)은 사용자의 현재 머리 위치, 예를 들면, 헤드 마운트 디스플레이의 위치를 결정하도록 구성된다. 머리 위치 결정 모듈(1916)은 예를 들면, 헤드 마운트 디스플레이를 포함하는 헤드기어상에 존재할 수 있는 위치 센서가 통합되고 및/또는 그와 협력하여 작동할 수 있다. 현재 뷰잉 위치 초기화 모듈(1918)은 검출된 사용자의 현재 머리 위치가 전방(0도) 뷰잉 위치에 있도록 설정함으로써, 예를 들면, 초기화 단계 동안, 사용자의 현재 뷰잉 위치가 전방(0도) 환경 뷰잉 위치에 있도록 초기화하도록 구성된다.Control routines 1914 include device control routines and communication routines for controlling the operation of system 1900. [ The head positioning module 1916 is configured to determine the current head position of the user, e.g., the position of the head mounted display. The head positioning module 1916 may incorporate and / or operate in conjunction with, for example, a position sensor that may be present on the head gear including the head mounted display. The current viewing position initialization module 1918 sets the current user's current viewing position to a forward (0 degree) viewing position, for example, during the initialization phase, Position.

디코더 모듈(1920)은 디코딩된 이미지 데이터(1958)를 생성하기 위해 콘텐트 전달 시스템(700)으로부터 수신된 인코딩된 이미지 콘텐트(1952)를 디코딩하도록 구성된다. 디코딩된 이미지 데이터(1958)는 디코딩된 입체 영상 장면 및/또는 디코딩된 장면 부분들을 포함할 수 있다. 디코딩된 콘텐트는 몇몇 실시예들에서 하나 이상의 이미지 버퍼(들)(1926)에 저장된다. 현재 선택된 스트림 초기화 모듈(1922)은 수신될 선택된 하나 이상의 콘텐트 스트림들의 현재 세트를 초기화하도록 구성된다. 현재 선택된 스트림 초기화 모듈(1922)은 스트림들의 현재 선택된 세트를 환경/장면의 전방/정면 부분에 대응하는 콘텐트를 전달하는 제 1 스트림이 되게 설정하도록 구성된다.Decoder module 1920 is configured to decode the encoded image content 1952 received from content delivery system 700 to generate decoded image data 1958. The decoded image data 1958 may include decoded stereoscopic video scenes and / or decoded scene portions. The decoded content is stored in one or more image buffer (s) 1926 in some embodiments. The currently selected stream initialization module 1922 is configured to initialize the current set of one or more selected content streams to be received. The currently selected stream initialization module 1922 is configured to set the currently selected set of streams to be the first stream carrying content corresponding to the front / front portion of the environment / scene.

콘텐트 전달 개시 모듈(1924)은 선택된 콘텐트 스트림(들)의 전달을 개시하도록 구성된다. 몇몇 실시예들에서, 콘텐트 전달 개시 모듈(1924)은 이미 수신되지 않은 선택된 세트에서 콘텐트 스트림들의 전달을 개시한다. 몇몇 실시예들에서, 콘텐트 전달 개시 모듈(1924)은 선택된 콘텐트 스트림에 대응하는 멀티캐스트 그룹, 예를 들면, 스트림들의 현재 선택된 세트에 대응하는 콘텐트를 전달하는 콘텐트 스트림들에 대응하는 멀티캐스트 그룹(들)을 연결하기 위해 요청 신호를 전송하도록 구성된다. 몇몇 다른 실시예들에서, 콘텐트 전달 개시 모듈(1924)은 선택된 콘텐트 스트림이 전달되는 스위칭된 디지털 채널의 전달을 요청하는 요청을 생성하고 네트워크의 디바이스로 전송하도록 구성된다.The content delivery initiation module 1924 is configured to initiate delivery of the selected content stream (s). In some embodiments, the content delivery initiation module 1924 initiates delivery of the content streams in the selected set that has not already been received. In some embodiments, the content delivery initiation module 1924 may include a multicast group corresponding to the selected content stream, e.g., a multicast group corresponding to the content streams delivering content corresponding to the currently selected set of streams (e.g., Lt; RTI ID = 0.0 > a < / RTI > In some other embodiments, the content delivery initiation module 1924 is configured to generate and send a request to a device in the network requesting delivery of a switched digital channel over which the selected content stream is delivered.

이미지 버퍼 갱신 모듈(1928)은, 예를 들면, 콘텐트 스트림들의 선택된 세트에 의해 전달된 갱신된 콘텐트가 수신 및 디코딩될 때, 이미지 버퍼(들)(1926)를 갱신된 콘텐트로 갱신하도록 구성된다.Image buffer update module 1928 is configured to update image buffer (s) 1926 with updated content, for example, when updated content delivered by a selected set of content streams is received and decoded.

이미지 렌더링 모듈(1930)은 3D 이미지, 예를 들면, 디스플레이(1902) 및/또는 디스플레이 디바이스(1905)상에 사용자에게 디스플레이하기 위해, 디코딩된 이미지 콘텐트(1958)를 사용하여, 본 발명의 특징들에 따라 3D 이미지로서 인식되는 방식으로 디스플레이되는, 예를 들면, 왼쪽 및 오른쪽 눈 이미지들을 생성한다. 몇몇 실시예들에서, 이미지 렌더링 모듈(1930)은 사용자의 현재 뷰잉 영역에 대응하는 디코딩된 이미지 콘텐트(1958), 환경 맵(1954), 및 UV 맵을 사용하여 디스플레이를 위한 콘텐트를 렌더링하도록 구성된다. 따라서, 몇몇 실시예들에서, 이미지 렌더링 모듈(1930)은 도 17에 도시된 단계들에 관하여 논의된 기능들을 수행하도록 구성된다. 생성된 이미지 콘텐트(1960)는 3D 이미지 생성 모듈(1930)의 출력이다. 따라서, 렌더링 모듈(1930)은 3D 이미지 콘텐트(1960)를 디스플레이에 렌더링한다. 몇몇 실시예들에서, 이미지 렌더링 모듈(1930)은 하나 이상의 생성된 이미지들을, 예를 들면, 디스플레이 디바이스로 또는 다른 디바이스로 출력하도록 구성된다. 생성된 이미지들은 네트워크 인터페이스(1910) 및/또는 디스플레이 디바이스 인터페이스(1903)를 통해 출력될 수 있다.Image rendering module 1930 may use the decoded image content 1958 to display to a 3D image, e.g., display 1902 and / or display device 1905, For example, left and right eye images, which are displayed in a manner that is perceived as a 3D image. In some embodiments, the image rendering module 1930 is configured to render content for display using the decoded image content 1958, environment map 1954, and UV map corresponding to the user's current viewing area . Thus, in some embodiments, the image rendering module 1930 is configured to perform the functions discussed with respect to the steps shown in Fig. The generated image content 1960 is the output of the 3D image generation module 1930. Thus, the rendering module 1930 renders the 3D image content 1960 on the display. In some embodiments, the image rendering module 1930 is configured to output one or more generated images to, for example, a display device or other device. The generated images may be output via the network interface 1910 and / or the display device interface 1903.

이용 가능한 대역폭 및/또는 지원된 데이터 레이트 결정 모듈(1932)은, 예를 들면, 콘텐트 스트림들을 수신하기 위해 주어진 시간에 이용 가능할 수 있는 현재 최대 이용 가능한 대역폭 및/또는 현재 최대 지원 가능한 데이터 레이트를 결정하도록 구성된다. 이용 가능한 대역폭 및/또는 지원 가능한 데이터 레이트가 통신 채널 상태들의 변경들 또는 네트워크 문제들 때문에 시간에 걸쳐 변할 수 있기 때문에, 몇몇 실시예들에서, 결정 모듈(1932)은 이용 가능한 대역폭 및/또는 지원된 데이터 레이트의 변경들을 검출하기 위해 지속적으로 모니터링 및/또는 결정을 수행한다. 결정된 현재 최대 지원 가능한 데이터 레이트 및/또는 대역폭(1950)은 결정 모듈(1932)의 출력이고, 필요할 때 갱신될 수 있다.The available bandwidth and / or supported data rate determination module 1932 determines, for example, the current maximum available bandwidth and / or the current maximum supported data rate that may be available at any given time to receive the content streams . In some embodiments, the determination module 1932 may determine that the available bandwidth and / or supported data rates are not available because the available bandwidth and / or supportable data rates may vary over time due to changes in communication channel conditions or network problems. And continually monitors and / or makes decisions to detect changes in the data rate. The determined current maximum supportable data rate and / or bandwidth 1950 is the output of decision module 1932 and may be updated as needed.

머리 위치 변경 결정 모듈(1934)은, 예를 들면, 머리 위치 결정 모듈(1916)의 출력에서 변화들을 검사 및 비교함으로써, 사용자의 머리 위치에서 변화가 존재했는지를 결정하도록 구성된다. 이용 가능한 대역폭 및/또는 지원된 데이터 레이트 변경 결정 모듈(1936)은 결정 모듈(1932)에 의해 결정된 현재 최대 이용 가능한 대역폭 및/또는 현재 최대 지원 가능한 데이터 레이트에 비교되어 이용 가능한 대역폭 및/또는 지원된 데이터 레이트에서 임의의 변경이 존재하는지를 검출하도록 구성된다.The head position change determination module 1934 is configured to determine whether there has been a change in the user's head position, for example, by examining and comparing the changes in the output of the head position determination module 1916. [ The available bandwidth and / or supported data rate change determination module 1936 may determine the available bandwidth compared to the current maximum available bandwidth determined by decision module 1932 and / or the current maximum supported data rate and / And to detect if there is any change in the data rate.

스트림 선택 모듈(1938)은 사용자의 현재 머리 위치에 기초하여 주어진 시간에서 재생시 사용을 위해 수신할 스트림을 복수의 콘텐트 스트림들 중에서 선택하도록 구성된다. 사용자의 현재 머리 위치 및/또는 다른 팩터들에서 변경들에 기초하여, 스트림 선택 모듈(1938)은 상이한 시간들에서 상이한 스트림(들)을 선택할 수 있다. 스트림들 중 현재 선택된 세트(1961)는 스트림 선택 모듈(1938)의 출력이고, 수신을 위해 현재 선택된 콘텐트 스트림들의 세트를 나타낸다. 몇몇 실시예들에서, 스트림 선택 모듈(1938)은 스트림 선택 동작의 일부로서 다양한 기능들을 수행하도록 구성되는 복수의 서브-모듈들을 포함한다. 도 23은 스트림 선택 모듈(1938) 및 그에 포함된 다양한 모듈들을 더 상세하게 도시하고, 나중에 논의될 것이다.The stream selection module 1938 is configured to select a stream to be received for use in playback at a given time from a plurality of content streams based on the current head position of the user. Based on changes in the user's current head position and / or other factors, the stream selection module 1938 may select different stream (s) at different times. The currently selected set of streams 1961 is the output of the stream selection module 1938 and represents the set of currently selected content streams for reception. In some embodiments, the stream selection module 1938 includes a plurality of sub-modules that are configured to perform various functions as part of the stream selection operation. Figure 23 shows the stream selection module 1938 and the various modules included therein in more detail and will be discussed later.

선택된 스트림 세트 변경 결정 모듈(1940)은, 예를 들면, 하나 이상의 추가 콘텐트 스트림을 선택하는 선택 모듈에 의해 및/또는 종료/정지된 수신된 하나 이상의 스트림들에 의해, 스트림들(1961)의 현재 선택된 세트에서 변경이 존재했는지를 결정하도록 구성된다. 선택된 스트림 세트 갱신 모듈(1942)은, 예를 들면, 스트림들(1961)의 선택된 세트에 대한 콘텐트 스트림들의 추가 또는 종료에 의해, 스트림들의 선택된 세트에 대한 변경들이 존재할 때 스트림들의 선택된 세트에 임의의 변경들을 반영하기 위해 현재 선택된 스트림 세트(1961)를 갱신하도록 구성된다. 스트림(들) 종료 모듈(1944)은, 예를 들면, 스트림들의 선택에서 변경들 때문에 갱신되는 스트림들의 현재 선택된 세트(1961)에 의해, 이전에 수신되었을 수 있지만 스트림들의 현재 선택된 세트(1961)에 더 이상 존재하지 않는 하나 이상의 콘텐트 스트림들을 수신하는 것을 종료/정지하도록 구성된다.The selected stream set change determination module 1940 may determine the current stream set 1961 of streams 1961 by, for example, the selection module selecting one or more additional content streams and / or by one or more streams received / And to determine if a change has been made in the selected set. The selected stream set update module 1942 may update the selected set of streams 1961 by adding or terminating the content streams for a selected set of streams 1961, And to update the currently selected stream set 1961 to reflect changes. The stream (s) termination module 1944 may, for example, store the current selected set of streams 1961, which may have been previously received, by the currently selected set of streams 1961 to be updated due to changes in the selection of streams Stopping / stopping receiving one or more content streams that no longer exist.

스트림 정보(1946)는 재생시 수신 및 사용에 이용 가능할 수 있는 복수의 콘텐트 스트림들에 관한 정보를 포함한다. 스트림 정보(1946)에 포함된 정보는 도 18에 도시되고 이전에 논의된 것과 동일하거나 유사하다. 수신된 대역폭 및/또는 데이터 레이트 할당 제어 정보(1948)는 상이한 뷰잉 방향들에 대한 대역폭 제한들 및/또는 다양한 상이한 뷰잉 방향들에 대한 콘텐트를 제공하는 콘텐트 스트림들에 대응하는 데이터 레이트들에 대한 제한들을 나타내는 정보를 포함한다. 결정된 현재 최대 지원 가능한 데이터 레이트 및/또는 대역폭(1950)은 제공된 시간에 재생 시스템(1900)에 의해 결정된 최대 지원 가능한 데이터 레이트 및/또는 대역폭을 나타낸다.Stream information 1946 includes information about a plurality of content streams that may be available for reception and use during playback. The information contained in the stream information 1946 is the same as or similar to that shown in FIG. 18 and discussed previously. The received bandwidth and / or data rate allocation control information 1948 includes information on the bandwidth limitations for different viewing directions and / or limits on data rates corresponding to content streams providing content for various different viewing directions Lt; / RTI > The determined current maximum supportable data rate and / or bandwidth 1950 represents the maximum supported data rate and / or bandwidth determined by the playback system 1900 at a given time.

수신된 환경 맵(1954)은 3D 표면을 규정하는 환경의 3D 깊이 맵을 포함한다. 관심 환경에 대응하는 하나 이상의 이러한 깊이 맵들은 몇몇 실시예들에서 재생 시스템(1900)에 의해 수신될 수 있다. 수신된 UV 맵(들)(1956)은 관심의 환경/장면의 부분들에 대응하는 하나 이상의 UV 맵들을 포함한다. 디코딩된 데이터(1958)는 디코더(1920)에 의해 본 발명에 따라 디코딩된 데이터를 포함한다. 디코딩된 데이터(1958)는 스트림들의 선택된 세트에 의해 전달된 환경의 장면 또는 장면 부분들을 포함하는 콘텐트를 포함한다.The received environment map 1954 includes a 3D depth map of the environment that defines the 3D surface. One or more of these depth maps corresponding to the environment of interest may be received by the playback system 1900 in some embodiments. The received UV map (s) 1956 includes one or more UV maps corresponding to portions of the environment / scene of interest. The decoded data 1958 includes data decoded by the decoder 1920 according to the present invention. Decoded data 1958 includes content that includes scene or scene portions of the environment conveyed by a selected set of streams.

몇몇 실시예들에서, 상기에 논의된 다양한 모듈들은 소프트웨어 모듈들로서 구현된다. 다른 실시예들에서, 모듈들은 하드웨어에서, 예를 들면, 개별적인 회로들로서 구현되고, 각각의 모듈은 모듈이 대응하는 기능을 수행하기 위한 회로로서 구현된다. 또 다른 실시예들에서, 모듈들은 소프트웨어 및 하드웨어의 조합을 사용하여 구현된다.In some embodiments, the various modules discussed above are implemented as software modules. In other embodiments, the modules are implemented in hardware, for example, as individual circuits, and each module is implemented as a circuit for the module to perform the corresponding function. In yet other embodiments, the modules are implemented using a combination of software and hardware.

도 19 예에서 메모리(1912)에 포함되도록 도시되지만, 재생 디바이스(1900)에 포함된 것으로 도시된 모듈들은 프로세서(1908) 내 하드웨어에서, 예를 들면, 개별 회로들로서 완전히 구현될 수 있고, 몇몇 실시예들에서 그렇게 구현된다. 모듈들은 하드웨어에서, 예를 들면, 상이한 모듈들에 대응하는 개별 회로들로서 완전히 구현될 수 있고, 몇몇 실시예들에서 그렇게 구현된다. 다른 실시예들에서, 모듈들의 일부는, 예를 들면, 프로세서(1908)의 외부의 및 그에 결합된 회로들로서, 예를 들면, 구현되는 다른 모듈들을 갖는 프로세서(1908) 내에, 회로들로서 구현된다. 이해될 수 있는 바와 같이, 프로세서상의 모듈들의 및/또는 프로세서 외부에 있는 몇몇 모듈들과의 통합의 레벨은 설계 선택 중 하나일 수 있다. 대안적으로, 회로들로서 구현되기보다는, 모듈들의 전체 또는 일부는 소프트웨어에서 구현될 수 있고 시스템(1900)의 메모리(1912)에 저장될 수 있고, 모듈들은 모듈들이 프로세서, 예를 들면, 프로세서(1908)에 의해 실행될 때 모듈들에 대응하는 기능들을 수행하기 위해 시스템(1900)의 동작을 제어한다. 또 다른 실시예들에서, 다수의 모듈들은 하드웨어 및 소프트웨어의 조합으로서 구현되고, 예를 들면, 프로세서 외부의 다른 회로는, 이후 소프트웨어 제어하에서, 모듈들의 기능 중 일 부분을 수행하도록 동작하는 프로세서(1908)에 입력을 제공한다.Although shown as being included in the memory 1912 in the example of FIG. 19, the modules shown as included in the playback device 1900 may be fully implemented in hardware within the processor 1908, e.g., as separate circuits, It is so implemented in the examples. The modules may be fully implemented in hardware, for example, as separate circuits corresponding to different modules, and so implemented in some embodiments. In other embodiments, some of the modules are implemented as circuits, for example, in a processor 1908 having other modules implemented, e.g., as external to and coupled to processor 1908. [ As can be appreciated, the level of integration with modules on the processor and / or with some modules external to the processor may be one of the design choices. Alternatively, rather than being implemented as circuits, all or a portion of the modules may be implemented in software and stored in the memory 1912 of the system 1900, wherein the modules include modules such as processors 1908 ) Controls the operation of the system 1900 to perform functions corresponding to the modules. In yet other embodiments, multiple modules are implemented as a combination of hardware and software, for example, other circuitry external to the processor may be coupled to a processor 1908 ≪ / RTI >

도 23은 재생 시스템(1900)에서 사용된 스트림 선택 모듈(1938) 및 그 안에 포함된 다양한 모듈들을 더 상세히 도시한다. 스트림 선택 모듈은 도 14 내지 도 16에 관하여 상세히 논의되는 본 발명의 방법들에 따라 하나 이상의 콘텐트 스트림들을 선택하도록 구성된다. 몇몇 실시예들에서, 스트림 선택 모듈은, 사용자의 머리 위치, 스트림 정보(1946) 및/또는 최대 지원 가능한 데이터 레이트에 기초하여, 복수의 콘텐트 스트림들 중 어느 것을 수신할지를 선택하도록 구성된다. 몇몇 실시예들에서, 스트림 선택 모듈(1938)은 사용자의 머리 위치에 기초하여 콘텐트 스트림들을 우선 순위화하도록 구성된 스트림 우선 순위화 모듈(2306)을 포함한다. 스트림 우선 순위화 모듈(2306)의 출력은, 예를 들면, 배정된 우선 순위들을 갖는 콘텐트 스트림들의 우선 순위화된 리스트이다. 스트림 우선 순위화 모듈(2306)은 아래의 도 24에 관하여 더 상세히 논의된다.23 shows the stream selection module 1938 used in the playback system 1900 and the various modules contained therein in more detail. The stream selection module is configured to select one or more content streams in accordance with the inventive methods discussed in detail with respect to Figures 14-16. In some embodiments, the stream selection module is configured to select which of a plurality of content streams to receive, based on the user's head location, stream information 1946, and / or the maximum supported data rate. In some embodiments, the stream selection module 1938 includes a stream prioritization module 2306 configured to prioritize content streams based on a user's head location. The output of stream prioritization module 2306 is, for example, a prioritized list of content streams having assigned priorities. Stream prioritization module 2306 is discussed in more detail below with respect to FIG.

스트림 선택 모듈(1938)은, 예를 들면, 대역폭 및/또는 데이터 레이트 제한들에 기초하여, 가장 높은 우선 순위를 갖는 스트림에 대해 사용될 최대 대역폭 및/또는 데이터 레이트를 결정하도록 구성된 가장 높은 우선 순위 스트림 최대 대역폭 및/또는 데이터 레이트 결정 모듈(2308), 및 하위 우선 순위를 갖는 각각의 스트림에 사용될 최대 대역폭 및/또는 데이터 레이트를 결정하도록 구성된 하위 우선 순위 스트림(들) 최대 대역폭 및/또는 데이터 레이트 결정 모듈(2310)을 추가로 포함한다. 결정 모듈들(2308, 2310)은 몇몇 실시예들에서 각각의 결정들을 수행하기 위해 대역폭 제어 정보(1948) 및 스트림 우선 순위화 모듈(2306)의 출력을 사용한다. 따라서, 스트림 선택 모듈(1938)은, 예를 들면, 네트워크 디바이스/서버로부터, 재생 시스템에 전달된 대역폭 제한에 기초하여 적어도 하나의 콘텐트 스트림에 대한 대역폭을 결정하도록 구성된 하나 이상의 스트림 대역폭 결정 모듈들을 포함할 수 있다.The stream selection module 1938 is configured to determine the maximum bandwidth and / or data rate to be used for the stream having the highest priority based on, for example, bandwidth and / or data rate restrictions, (S) maximum bandwidth and / or data rate determination module 2308 configured to determine a maximum bandwidth and / or data rate to be used for each stream having a lower priority and / Module < / RTI > The decision modules 2308 and 2310 use the bandwidth control information 1948 and the output of the stream prioritization module 2306 to perform the respective decisions in some embodiments. Thus, the stream selection module 1938 includes one or more stream bandwidth determination modules configured to determine, for example, the bandwidth for at least one content stream based on bandwidth limitations passed from the network device / server to the playback system can do.

스트림 선택 모듈(1938)은 가장 높은 우선 순위 스트림이 가장 높은 우선 순위 스트림(들)에 대한 결정된 최대 대역폭 및/또는 데이터 레이트에 기초하여 및 이용 가능한 대역폭 및/또는 지원 가능한 데이터 레이트에 기초하여 지원될 수 있는지를 결정하도록 구성된 모듈(2312), 및 지원될 수 있는 가장 높은 우선 순위의 가장 높은 데이터 레이트 스트림을 선택하도록 구성된 모듈(2314)을 추가로 포함한다. 몇몇 실시예들에서, 선택 모듈(2314)은 가장 높은 우선 순위가 배정된 복수의 콘텐트 스트림들로부터 하나의 콘텐트 스트림을 선택하도록 구성되고, 가장 높은 우선 순위가 배정된 각각의 콘텐트 스트림은 동일한 뷰잉 방향에 대응하는 콘텐트를 동일한 우선 순위를 갖는 복수의 콘텐트 스트림들로부터 선택하도록 구성되는 부분으로서 제공한다. 몇몇 실시예들에서, 모듈(2314)은 동일한 우선 순위, 예를 들면, 이용 가능한 대역폭의 결정된 양에 기초한 가장 높은 우선 순위를 갖는 복수의 콘텐트 스트림들로부터 선택하도록 구성된다. 따라서, 몇몇 실시예들에서, 동일한 우선 순위를 갖는 복수의 스트림이 이용 가능할 때, 예를 들면, 몇몇은 하위 데이터 레이트 요건들을 갖는 다른 것들에 비해 높은 데이터 레이트 요건들을 가질 때, 선택 모듈(2314)은 가장 높은 품질 스트림, 예를 들면, 이용 가능한 대역폭 및/또는 지원가능한 데이터 레이트 및 대역폭 제한들이 이러한 선택에 대해 허용하는 경우, 높은 데이터 레이트 스트림을 선택한다.The stream selection module 1938 may determine whether the highest priority stream is supported based on the determined maximum bandwidth and / or data rate for the highest priority stream (s) and on available bandwidth and / or supportable data rates And a module 2314 configured to select the highest-priority highest data rate stream that can be supported. In some embodiments, the selection module 2314 is configured to select one content stream from a plurality of content streams assigned the highest priority, and each content stream with the highest priority assigned thereto is selected in the same viewing direction As a portion configured to select from among a plurality of content streams having the same priority. In some embodiments, module 2314 is configured to select from a plurality of content streams having the same priority, e.g., the highest priority based on a determined amount of available bandwidth. Thus, in some embodiments, when a plurality of streams having the same priority are available, for example, some have a higher data rate requirement compared to others having lower data rate requirements, Selects a higher data rate stream if the highest quality stream, e.g., available bandwidth and / or supportable data rate and bandwidth limits, is acceptable for this selection.

스트림 선택 모듈(1938)은 제 2 가장 높은 우선 순위 스트림(들)에 대해 결정된 최대 대역폭 및/또는 데이터 레이트에 기초하여 및 이용 가능한 대역폭(예를 들면, 전체 이용 가능하거나 나머지 이용 가능한) 및/또는 지원 가능한 데이터 레이트에 기초하여 제 2 가장 높은 우선 순위 스트림이 지원될 수 있는지를 결정하도록 구성된 모듈(2316), 지원될 수 있는 제 2 가장 높은 우선 순위의 가장 높은 데이터 레이트 스트림을 선택하도록 구성된 모듈(2318), 제 3 가장 높은 우선 순위 스트림(들)에 대한 결정된 최대 대역폭 및/또는 데이터 레이트에 기초하여 및 이용 가능한 대역폭(예를 들면, 전체 이용 가능하거나 나머지 이용 가능한) 및/또는 지원 가능한 데이터 레이트에 기초하여 제 3 가장 높은 우선 순위 스트림이 지원될 수 있는지를 결정하도록 구성된 모듈(2320), 및 지원될 수 있는 제 3 가장 높은 우선 순위의 가장 높은 데이터 레이트 스트림을 선택하도록 구성된 모듈(2322)을 추가로 포함한다. 따라서, 몇몇 실시예들에서, 스트림 선택 모듈(1938)은, 예를 들면, 우선 순위화 모듈(2306)에 의해, 가장 높은 우선 순위들이 배정된 하나 이상의 콘텐트 스트림들을 선택하도록 구성된다.The stream selection module 1938 may be configured to determine the available bandwidth and / or bandwidth based on the maximum bandwidth and / or data rate determined for the second highest priority stream (s) A module 2316 configured to determine whether a second highest priority stream can be supported based on a supportable data rate, a module configured to select a second highest highest priority data rate stream that can be supported ( 2318), based on the determined maximum bandwidth and / or data rate for the third highest priority stream (s), and based on available bandwidth (e.g., all available or remaining available) and / A module configured to determine if a third highest priority stream can be supported (2320), and a module (2322) configured to select the third highest highest priority data rate stream that may be supported. Thus, in some embodiments, the stream selection module 1938 is configured, for example, by the prioritization module 2306 to select one or more content streams assigned the highest priorities.

스트림 선택 모듈(1938)은, 예를 들면, 하나 이상의 상위 우선 순위 스트림들이 수신을 위해 선택된 후, 추가의 콘텐트 스트림들을 수신하기 위해 임의의 나머지 또는 추가의 이용 가능한 대역폭이 존재하는지를 결정하도록 구성된 추가 용량/대역폭 이용 가능성 결정 모듈(2324)을 추가로 포함한다. 몇몇 실시예들에서, 스트림 선택 모듈(1938)은 하나 이상의 하위 우선 순위 스트림들에 대한 최대 결정된 최대 대역폭 및/또는 데이터 레이트에 기초하여 및 이용 가능한 대역폭 및/또는 지원 가능한 데이터 레이트에 기초하여 지원될 수 있는 하나 이상의 하위 우선 순위 스트림들을 선택하도록 구성된 모듈(2326)을 추가로 포함한다.The stream selection module 1938 may include additional capabilities configured to determine whether there is any remaining or additional available bandwidth to receive additional content streams, e.g., after one or more higher priority streams have been selected for reception / Bandwidth availability determination module 2324. < / RTI > In some embodiments, stream selection module 1938 may be supported based on the maximum determined maximum bandwidth and / or data rate for one or more lower priority streams and based on available bandwidth and / or supportable data rates And a module (2326) configured to select one or more lower priority streams that can be selected.

도 24는 스트림 선택 모듈(1938)의 일부, 예를 들면, 그의 서브 모듈로서 또는 개별 모듈로서 구현될 수 있는 스트림 우선 순위화 모듈(2306)을 도시한다. 스트림 우선 순위화 모듈(2306)은 사용자의 머리 위치에 기초하여 콘텐트 스트림들을 우선 순위화하도록 구성된다. 콘텐트 스트림들이 우선 순위화되면, 스트림 선택 모듈(1938)은 우선 순위화된 콘텐트 스트림들로부터 스트림 선택을 수행할 수 있다. 몇몇 실시예들에서, 스트림 우선 순위화 모듈(2306)은 사용자의 현재 머리 위치에 기초하여 사용자가 보고 있는 장면 영역의 일 부분을 나타내는 사용자의 현재 시야를 식별하도록 구성된 현재 시야 식별 모듈(2404), 및 사용자의 현재 시야에 대응하는 장면 영역의 부분에 대응하는 콘텐트를 전달하는 스트림(들)을 식별하도록 구성된 현재 시야 스트림(들) 식별 모듈(2404)을 포함한다. 현재 시야 스트림(들) 식별 모듈(2404)의 출력은 몇몇 실시예들에서 메모리(1912)에 저장될 수 있는 식별된 스트림들의 리스트이고, 리스트는 사용자의 머리 위치로서 갱신될 수 있고 따라서 시야는 변한다. 따라서, 다양한 실시예들에서, 다양한 이용 가능한 콘텐트 스트림들을 우선 순위화하기 위해, 먼저 사용자의 현재 시야는 머리 위치에 대응하여 식별되고, 시야에 대응하는 콘텐트를 전달하는 스트림들이 식별된다.24 illustrates a stream prioritization module 2306 that may be implemented as part of the stream selection module 1938, e.g., as its sub-modules or as individual modules. Stream prioritization module 2306 is configured to prioritize the content streams based on the user ' s head location. If the content streams are prioritized, the stream selection module 1938 may perform stream selection from the prioritized content streams. In some embodiments, the stream prioritization module 2306 includes a current field of view identification module 2404 configured to identify a user's current field of view based on a user's current head position indicating a portion of a scene area the user is viewing, And current scene stream (s) identification module 2404 configured to identify stream (s) carrying content corresponding to a portion of the scene region corresponding to the current view of the user. The output of the current field of view stream (s) identification module 2404 is a list of identified streams that may be stored in the memory 1912 in some embodiments, and the list may be updated as the user's head position, . Thus, in various embodiments, to prioritize the various available content streams, the user's current view is first identified corresponding to the head position, and the streams conveying the content corresponding to the view are identified.

몇몇 실시예들에서, 스트림 우선 순위화 모듈(2306)은 식별된 스트림(들)으로부터 이용 가능한 사용자의 현재 시야에 대응하는 장면 영역의 부분들의 크기를 결정하도록 구성된 모듈(2406), 및 각각의 스트림이 제공하는 부분들의 크기에 기초하여 사용자의 현재 시야에 대응하는 장면 영역의 부분들을 제공하는 하나 이상의 스트림들에 우선 순위들을 배정하도록 구성된 우선 순위 배정/할당 모듈(2408)을 추가로 포함한다. 몇몇 실시예들에서, 우선 순위 배정/할당 모듈(2408)은 시야의 가장 큰 부분을 제공하는 스트림에 가장 높은 우선 순위를 배정하고, 예를 들면, 현재 시야에 대응하는 장면의 가장 큰 부분을 제공하는 스트림을 1차 스트림으로서 지정하도록 구성된 모듈(2410)을 포함한다. 몇몇 실시예들에서, 우선 순위 배정/할당 모듈(2408)은, 나머지 스트림들의 각각이 제공하는 시야 부분의 크기에 기초하여, 예를 들면, 현재 시야에 대응하는 장면의 더 작은 부분을 제공하는 다른 스트림보다 높은 우선 순위 및 지정이 제공된 시야의 더 큰 부분을 제공하는 스트림으로 다음으로 가장 높은 우선 순위(들)를 배정하고 나머지 스트림들(예를 들면, 2차, 3차 등으로서)을 지정하도록 구성된 모듈(2412)을 추가로 포함한다.In some embodiments, the stream prioritization module 2306 includes a module 2406 configured to determine the size of portions of the scene region corresponding to the current view of the user available from the identified stream (s) Allocation module 2408 configured to assign priorities to one or more streams that provide portions of the scene region corresponding to the current view of the user based on the size of the portions it provides. In some embodiments, the priority assigning / assigning module 2408 assigns the highest priority to the stream providing the largest portion of the view, and provides, for example, the largest portion of the scene corresponding to the current view And a module 2410 configured to designate the stream as a primary stream. In some embodiments, the priority allocation / allocation module 2408 may determine, based on the size of the viewport portion provided by each of the remaining streams, that a different portion of the scene corresponding to the current view, for example, To assign the next highest priority (s) to the stream that provides a higher priority than the stream and a larger portion of the view provided for the designation and to specify the remaining streams (e.g., as secondary, tertiary, etc.) And further comprises a configured module 2412.

몇몇 실시예들에서, 스트림 우선 순위화 모듈(2306)은 우선 순위화될 나머지 스트림들, 예를 들면, 현재 시야 밖의 장면 영역에 대응하는 콘텐트를 제공하는 스트림들이 존재하는지를 결정하도록 구성된 모듈(2414)을 추가로 포함한다.In some embodiments, the stream prioritization module 2306 includes a module 2414 configured to determine whether there are streams that provide content corresponding to the remaining streams to be prioritized, e.g., the current out-of- .

몇몇 실시예들에서, 스트림 우선 순위화 모듈(2306)은 현재 시야에 대한 이미지 콘텐트의 근접성 또는 머리 위치의 방향 중 하나에 기초하여 사용자의 현재 시야 밖의 콘텐트를 제공하는 하나 이상의 추가의 스트림들에 대해 우선 순위화, 예를 들면 우선 순위들을 배정하도록 구성된 모듈(2416)을 추가로 포함한다. 몇몇 실시예들에서, 모듈(2416)은 현재 시야에 대해 전달된 이미지 콘텐트의 근접성에 기초하여 상기 현재 시야 밖의 부분들에 대응하는 하나 이상의 추가의 스트림 전달 콘텐트를 우선 순위화하도록 구성되고, 현재 시야의 영역에 대해 근접한 이미지 콘텐트를 전달하는 콘텐트 스트림은 현재 시야 밖 및 그로부터 멀리 떨어진 콘텐트 스트림보다 더 높은 우선 순위가 배정된다.In some embodiments, the stream prioritization module 2306 may be configured to determine, for one or more additional streams that provide the user's current out-of-view content based on one of the proximity of the image content to the current view or the orientation of the head position And further includes a module 2416 configured to prioritize, e.g., prioritize. In some embodiments, module 2416 is configured to prioritize one or more additional stream delivery content corresponding to portions of the current out-of-view based on the proximity of the image content delivered for the current view, The content stream delivering close image content for the region of the current view is assigned a higher priority than the current out-of-sight and away from the content stream.

몇몇 실시예들에서, 모듈(2416)은 사용자의 머리 회전이 예를 들면, 사용자의 머리 위치의 변경의 부분으로서 검출되는지를 결정하도록 구성된 머리 회전 결정 모듈(2418)을 포함한다. 몇몇 그러나 모두는 아닌 실시예들에서, 사용자가 하늘 또는 지붕을 향해 위를 바라보거나 지상을 향해 아래를 바라볼 때, 머리 위치에서 변경이 존재하지만 이러한 머리 움직임은 머리 회전으로 고려되지 않는다. 몇몇 실시예들에서, 모듈(2416)은 사용자의 머리 회전의 방향에 기초하여 하나 이상의 추가의 콘텐트 스트림들을 우선 순위화하도록 구성되고, 현재 시야 밖이지만 머리 회전의 방향인 이미지 콘텐트를 제공하는 콘텐트 스트림은 머리 회전의 방향으로부터 먼 방향으로 현재 시야 밖의 이미지 콘텐트를 제공하는 다른 콘텐트 스트림보다 더 높은 우선 순위가 배정된다. 몇몇 이러한 실시예들에서, 모듈(2416)은, 다음으로 낮은 우선 순위(예를 들면, 시야에 대응하는 콘텐트를 제공하는 스트림들에 더 높은 우선 순위들이 할당된 후) 및 스트림 지정, 예를 들면, 3차를 현재 시야 밖의 장면의 일 부분, 예를 들면, 장면 환경의 상부 또는 하부에 대응하는 콘텐트를 제공하는 스트림에 배정하도록 구성된 모듈(2420)을 추가로 포함한다. 몇몇 실시예들에서, 머리 회전이 존재하지 않는다고 결정될 때, 머리 회전 결정 모듈은 추가의 스트림들에 우선 순위들을 배정하도록 모듈(2420)에 제어 입력을 제공한다.In some embodiments, the module 2416 includes a head rotation determination module 2418 configured to determine whether a user's head rotation is detected, for example, as part of a change in the user's head position. In some but not all embodiments, there is a change in the head position when the user looks up or gazes down toward the sky or roof, but such head movement is not considered a head rotation. In some embodiments, the module 2416 is configured to prioritize one or more additional content streams based on the direction of the user ' s head rotation, and may include a content stream < RTI ID = 0.0 > Is assigned a higher priority than other content streams that provide image content that is currently out of view in a direction away from the direction of head rotation. In some such embodiments, the module 2416 may then select a next lower priority (e.g., after higher priorities are assigned to the streams providing content corresponding to the field of view) and stream designations, e.g., , And a module 2420 configured to assign tertiary to a portion of the current out-of-view scene, e.g., a stream providing content corresponding to the top or bottom of the scene environment. In some embodiments, when it is determined that no head rotation exists, the head rotation determination module provides a control input to module 2420 to assign priorities to additional streams.

몇몇 실시예들에서, 모듈(2416)은 사용자의 머리 회전의 방향을, 예를 들면, 이전 머리 위치에 관해 왼쪽 또는 오른쪽으로 결정하도록 구성된 머리 회전 방향 결정 모듈(2422)을 추가로 포함한다. 몇몇 실시예들에서, 모듈(2416)은 머리 회전의 방향을 고려하여 현재 시야 밖의 부분들에 대응하는 콘텐트를 전달하는 하나 이상의 추가의 스트림들에 우선 순위들을 배정하도록 구성된 모듈(2424)을 추가로 포함한다. 몇몇 실시예들에서, 모듈(2424)은 다음으로 낮은 우선 순위(예를 들면, 더 높은 우선 순위로부터 다음으로 이용 가능한 우선 순위) 및 지정, 예를 들면 3차 스트림을 머리 회전의 방향에서 장면의 부분에 대응하는 콘텐트를 제공하는 스트림에 배정하도록 구성된 모듈(2426)을 포함한다. 따라서, 머리 회전이 검출되는 경우, 스트림들에 대한 우선 순위들의 할당은 몇몇 실시예들에서 머리 회전의 방향에 기초하여 수행된다는 것이 이해되어야 한다. 몇몇 실시예들에서, 모듈(2416)은 고려된 나머지 스트림들 중 임의의 것에 더 낮은 우선 순위들을 배정하도록 구성된 추가 모듈(2428)을 추가로 포함한다.In some embodiments, the module 2416 further includes a head rotational direction determination module 2422 configured to determine the direction of the user's head rotation, e.g., left or right with respect to the previous head position. In some embodiments, the module 2416 further includes a module 2424 configured to assign priorities to one or more additional streams conveying content corresponding to portions of the current out-of-sight, taking into account the direction of head rotation . In some embodiments, the module 2424 then selects a lower priority (e.g., the next available priority from a higher priority) and a designation, e.g., a tertiary stream, And to a stream providing content corresponding to the portion. Thus, when head rotation is detected, it should be understood that the assignment of priorities to the streams is performed based on the direction of head rotation in some embodiments. In some embodiments, module 2416 further includes an additional module 2428 configured to assign lower priorities to any of the remaining streams considered.

도 19 예에서 단일 프로세서, 예를 들면 컴퓨터로서 도시되지만, 프로세서(1908)는 하나 이상의 프로세서들, 예를 들면, 컴퓨터들로서 구현될 수 있다는 것이 이해되어야 한다. 소프트웨어에서 구현될 때, 모듈들은, 프로세서(1908)에 의해 실행될 때, 프로세서(1908)가 모듈에 대응하는 기능을 수행하도록 구성하는 코드를 포함한다. 도 19, 도 23, 및 도 24에 도시된 다양한 모듈들이 메모리(1912)에 저장되는 실시예들에서, 메모리(1912)는, 적어도 하나의 컴퓨터, 예를 들면, 프로세서(1908)가 모듈들이 대응하는 기능들을 수행하게 하기 위한 코드, 예를 들면, 각각의 모듈에 대한 개별 코드를 포함하는 컴퓨터 판독 가능한 매체를 포함하는 컴퓨터 프로그램 제품이다.It is to be understood that the processor 1908 may be implemented as one or more processors, e.g., computers, although it is shown as a single processor, e.g., a computer, in the example of FIG. When implemented in software, the modules include code that, when executed by the processor 1908, configures the processor 1908 to perform a function corresponding to the module. In embodiments in which the various modules shown in Figures 19, 23 and 24 are stored in memory 1912, memory 1912 may be configured so that at least one computer, e.g., processor 1908, For example, a computer readable medium containing individual code for each module.

완전하게 하드웨어 기반 또는 완전하게 소프트웨어 기반 모듈들이 사용될 수 있다. 그러나, 소프트웨어 및 하드웨어의 임의의 조합, 예를 들면 회로 구현된 모듈들이 기능들을 구현하기 위해 사용될 수 있다는 것이 이해되어야 한다. 이해되는 바와 같이, 도 19, 도 23, 및 도 24에 도시된 모듈들은 도 14의 플로차트(1400)의 방법에 도시 및/또는 기술된 대응하는 단계들의 기능들을 수행하고 도 15 내지 도 17에 도시된 대응하는 단계들의 기능들을 수행하기 위해 시스템(1900) 또는 프로세서(1908)와 같은 그 안의 요소들을 제어 및/또는 구성한다.Completely hardware-based or completely software-based modules can be used. It should be understood, however, that any combination of software and hardware, for example, circuit implemented modules, may be used to implement the functions. As will be appreciated, the modules shown in Figures 19, 23, and 24 perform the functions of the corresponding steps shown and / or described in the method of flowchart 1400 of Figure 14, And / or configure elements therein, such as system 1900 or processor 1908, to perform the functions of the corresponding steps.

도 20a, 도 20b, 도 20c, 도 20d, 및 도 20e의 조합을 포함하는 도 20은 다양한 예시적인 실시예들에 따라 콘텐트 재생 시스템을 동작시키는 일 예시적인 방법의 플로차트(2000)이다. 콘텐트 재생 시스템은, 예를 들면, 다양한 실시예들에 따라 디스플레이에 결합된 콘텐트 재생 디바이스 또는 컴퓨터 시스템이다.FIG. 20, which includes a combination of FIGS. 20A, 20B, 20C, 20D, and 20E, is an exemplary methodology flowchart 2000 of operating a content playback system in accordance with various exemplary embodiments. A content playback system is, for example, a content playback device or computer system coupled to a display in accordance with various embodiments.

예시적인 방법의 동작은 단계(2002)에서 시작하고, 여기서 콘텐트 재생 시스템은 전원이 인가되거나 개시된다. 동작은 단계(2002)로부터 단계(2004)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 제 1 후방 뷰 부분에 대응하는 제 1 이미지를 수신한다. 동작은 단계(2004)로부터 단계(2006)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 상기 제 1 후방 뷰 부분에 대응하는 상기 수신된 제 1 이미지를 저장한다. 동작은 단계(2006)로부터 단계(2008)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 상기 제 1 후방 뷰 부분에 대응하는 적어도 제 2 이미지를 포함하는 상기 환경의 상기 제 1 후방 뷰 부분에 대응하는 하나 이상의 추가 이미지들을 수신한다. 동작은 단계(2008)로부터 단계(2010)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 상기 제 1 후방 뷰 부분에 대응하는 상기 수신된 하나 이상의 추가 이미지들을 저장한다. 동작은 단계(2010)로부터 단계(2012)로 진행한다.The operation of the exemplary method begins at step 2002, where the content playback system is powered up or started. Operation proceeds from step 2002 to step 2004 where the content playback system receives a first image corresponding to a first rear view portion of the environment. Operation proceeds from step 2004 to step 2006, where the content reproduction system stores the received first image corresponding to the first rear view portion of the environment. Operation proceeds from step 2006 to step 2008, wherein the content reproduction system includes at least a second image corresponding to the first rearview portion of the environment, including at least a second image corresponding to the first rearview portion of the environment And receives one or more additional images. Operation proceeds from step 2008 to step 2010, where the content reproduction system stores the received one or more additional images corresponding to the first rear view portion of the environment. Operation proceeds from step 2010 to step 2012.

단계(2012)에서, 콘텐트 재생 시스템은 상기 환경의 제 2 후방 뷰 부분에 대응하는 제 1 이미지를 수신한다. 동작은 단계(2012)로부터 단계(2014)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 상기 제 2 후방 뷰 부분에 대응하는 상기 수신된 제 1 이미지를 저장한다. 동작은 단계(2014)로부터 단계(2016)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 상기 제 2 후방 뷰 부분에 대응하는 적어도 하나의 제 2 이미지를 포함하는 상기 환경의 상기 제 2 후방 뷰 부분에 대응하는 하나 이상의 추가 이미지들을 수신한다. 동작은 단계(2016)로부터 단계(2018)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 상기 제 2 후방 뷰 부분에 대응하는 상기 수신된 하나 이상의 추가 이미지들을 저장한다. 동작은 단계(2018)로부터 단계(2020)로 진행한다.In step 2012, the content playback system receives a first image corresponding to a second rear view portion of the environment. Operation proceeds from step 2012 to step 2014, where the content reproduction system stores the received first image corresponding to the second rear view portion of the environment. Operation proceeds from step 2014 to step 2016, wherein the content reproduction system includes a second rear view portion corresponding to the second rear view portion of the environment, And receives corresponding one or more additional images. Operation proceeds from step 2016 to step 2018, where the content reproduction system stores the received one or more additional images corresponding to the second rear view portion of the environment. Operation proceeds from step 2018 to step 2020. [

단계(2020)에서, 콘텐트 재생 시스템은 상기 환경의 하늘 뷰 부분에 대응하는 하나 이상의 이미지들을 수신한다. 동작은 단계(2020)로부터 단계(2022)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 상기 하늘 뷰 부분에 대응하는 상기 수신된 하나 이상의 이미지들을 저장한다. 동작은 단계(2022)로부터 단계(2024)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 지상 뷰 부분에 대응하는 하나 이상의 이미지들을 수신한다. 동작은 단계(2024)로부터 단계(2026)로 진행하고, 콘텐트 재생 시스템은 상기 환경의 상기 지상 뷰 부분에 대응하는 상기 수신된 하나 이상의 이미지들을 저장한다. 몇몇 실시예들에서, 하늘 뷰 및 지상 뷰는 뷰어의 명목상의 머리 방향 관점에 관하여 위 및 아래 방향들을 말하고, 실외 환경들뿐만 아니라 실내 환경들에 적용하기 위해 사용된다.In step 2020, the content playback system receives one or more images corresponding to the sky view portion of the environment. Operation proceeds from step 2020 to step 2022, where the content playback system stores the received one or more images corresponding to the sky view portion of the environment. Operation proceeds from step 2022 to step 2024, where the content playback system receives one or more images corresponding to the ground view portion of the environment. Operation proceeds from step 2024 to step 2026, where the content reproduction system stores the received one or more images corresponding to the above-ground view portion of the environment. In some embodiments, the sky and ground views refer to the up and down directions with respect to the nominal head direction view of the viewer and are used to apply to indoor environments as well as to outdoor environments.

몇몇 실시예들에서, 이미지들은, 예를 들면, 특정 실시예에 따라, 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분 및 지상 뷰 부분의 일부지만 반드시 모두는 아닌 것에 대응하여 수신될 수 있다.In some embodiments, the images may be received, for example, according to a particular embodiment, corresponding to a portion of the first rearview portion, the second rearview portion, the sky view portion, and the ground view portion, but not necessarily all .

동작은 단계(2026)로부터 접속 노드 A(2028)를 통해 단계(2030)로, 단계(2034)로 진행하고, 접속 노드 B(2036)를 통해, 단계들(2028, 2040, 2042, 2044, 2046, 2048, 2050, 2052)로 진행한다. 단계(2030)로 돌아오면, 단계(2030)에서, 콘텐트 재생 시스템은 뷰어의 머리 위치를 결정하고, 상기 머리 위치는 현재 시야에 대응한다. 동작은 단계(2030)로부터 단계(2032)로 진행하고, 콘텐트 재생 시스템은 결정된 머리 위치에 기초하여 상기 뷰어에 대한 현재 시야를 결정한다. 동작은 단계(2032)로부터 단계(2030)로 진행한다. 단계들(2032, 2030)은 반복적으로, 예를 들면, 현재 시야가 갱신되는, 예를 들면, 리프레시되는 것에 의해 정기적으로 수행된다. 결정된 현재 시야는 출력 이미지들의 생성시 사용되기 위해 이용 가능하다.Operation proceeds from step 2026 via access node A 2028 to step 2030 to step 2034 and through connecting node B 2036 to steps 2028, 2040, 2042, 2044, 2046 , 2048, 2050, 2052). Returning to step 2030, in step 2030, the content playback system determines the head position of the viewer, and the head position corresponds to the current view. Operation proceeds from step 2030 to step 2032, where the content reproduction system determines the current view for the viewer based on the determined head position. Operation proceeds from step 2032 to step 2030. [ Steps 2032 and 2030 are performed periodically, for example, by refreshing the current view, for example, repeatedly. The determined current view is available for use in generating output images.

단계(2034)에서, 콘텐트 재생 시스템은 제 1 부분에 대응하는 콘텐트, 예를 들면, 환경의 전방 부분 뷰를 제공하는 제 1 콘텐트 스트림을 수신한다.In step 2034, the content playback system receives a first content stream that provides a content corresponding to the first portion, e.g., a forward partial view of the environment.

단계(2038)에서, 콘텐트 재생 시스템은, 상기 환경의 상기 제 1 후방 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에 나타내진 재생 시간에 관해 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신한다. 단계(2040)에서, 콘텐트 재생 시스템은 환경의 상기 제 1 후방 뷰 부분에 대응하는 복수의 이미지들 중 어느 것이 상기 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신한다.In step 2038, the content playback system may be further configured to determine which of the plurality of previously delivered images corresponding to the first back-view portion of the environment is a playback time measured with respect to the playback time indicated in the first content stream Lt; RTI ID = 0.0 > a < / RTI > In step 2040, the content playback system receives image selection information indicating which of a plurality of images corresponding to the first rearview portion of the environment should be used during a portion of the event.

단계(2042)에서, 콘텐트 재생 시스템은 상기 환경의 상기 제 2 후방 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에 나타낸 재생 시간에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신한다. 단계(2044)에서, 콘텐트 재생 시스템은 환경의 상기 제 2 후방 뷰 부분에 대응하는 복수의 이미지들 중 어느 것이 상기 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신한다.In step 2042, the content playback system may be configured to display a plurality of previously delivered images corresponding to the second back view portion of the environment during a playback time, which is measured with respect to the playback time indicated in the first content stream, The control information indicating whether or not the control information should be transmitted. In step 2044, the content playback system receives image selection information indicating which of a plurality of images corresponding to the second rear view portion of the environment should be used during a portion of the event.

단계(2046)에서, 콘텐트 재생 디바이스는 상기 환경의 상기 하늘 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에 나타낸 재생 시간에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신한다. 단계(2048)에서, 콘텐트 재생 시스템은 환경의 상기 하늘 뷰 부분에 대응하는 복수의 이미지들 중 어느 것이 상기 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신한다.In step 2046, the content playback device determines whether any of the plurality of previously delivered images corresponding to the sky view portion of the environment is to be displayed during a playback time measured with respect to the playback time indicated in the first content stream Lt; / RTI > In step 2048, the content playback system receives image selection information indicating which of a plurality of images corresponding to the sky view portion of the environment should be used during a portion of the event.

단계(2050)에서, 콘텐트 재생 시스템은 상기 환경의 상기 지상 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에서 나타내진 재생 시간에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신한다. 단계(2052)에서, 콘텐트 재생 디바이스는 환경의 상기 지상 뷰 부분에 대응하는 복수의 이미지들 중 어느 것이 상기 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신한다.In step 2050, the content playback system is to be displayed during a playback time, which of the plurality of previously delivered images corresponding to the above-ground view portion of the environment is measured with respect to the playback time indicated in the first content stream Or the like. In step 2052, the content reproduction device receives image selection information indicating which of a plurality of images corresponding to the above-ground view portion of the environment should be used during a portion of the event.

동작은, 접속 노드 C(2054)를 통해, 동시에 수행될 수 있는, 단계(2032), 단계(2034), 및 단계들(2038, 2040, 2042, 2044, 2046, 2048, 2050, 2052)로부터 접속 노드 D(2056)를 통해, 단계(2058)로 진행한다.Operation proceeds from access node C 2054 through steps 2032, 2040, 2042, 2044, 2046, 2048, 2050, 2052 that may be performed concurrently, step 2032, step 2034, Via node D 2056, proceeds to step 2058. [

몇몇 실시예들에서, 단계들(2038, 2040, 2042, 2044, 2046, 2048, 2050, 2052)로부터의 제어 정보는, 예를 들면, 단편적으로, 제어 정보가 사용되는 단계(2034)의 대응하는 제 1 스트림 콘텐트 약간 전에 전송된다. 몇몇 다른 실시예들에서, 제어 정보의 블록은 제 1 콘텐트 스트림의 수신의 시작 전 또는 그와 동시에 수신된다.In some embodiments, the control information from steps 2038, 2040, 2042, 2044, 2046, 2048, 2050, 2052 may be, for example, piecemeal, And is transmitted slightly before the first stream content. In some other embodiments, a block of control information is received before or simultaneously with the start of reception of the first content stream.

단계(2058)에서, 콘텐트 재생 시스템은 환경의 제 1 부분 뷰, 예를 들면, 전방 부분 뷰에 대응하는 제 1 콘텐트 스트림으로부터 수신된 콘텐트, 환경의 제 1 후방 뷰 부분에 대응하는 저장된 수신 이미지, 환경의 제 2 후방 뷰 부분에 대응하는 저장된 수신 이미지, 환경의 하늘 뷰 분에 대응하는 저장된 수신 이미지, 환경의 지상 뷰 부분에 대응하는 저장된 수신 이미지, 또는 이미지가 이용 가능하지 않은 현재 시야의 일 부분에 대응하는 합성된 이미지, 중 적어도 하나에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성한다. 단계(2058)는 단계들(2060, 2062, 2064, 2066, 2068, 2076, 2078)을 포함한다.In step 2058, the content playback system receives a first partial view of the environment, e.g., content received from a first content stream corresponding to a front partial view, a stored received image corresponding to a first rear view portion of the environment, A stored received image corresponding to the second back view portion of the environment, a stored received image corresponding to the sky view portion of the environment, a stored received image corresponding to the ground view portion of the environment, or a portion of the current view where no image is available Based on at least one of the synthesized image corresponding to the current field of view. Step 2058 includes steps 2060, 2062, 2064, 2066, 2068, 2076,

단계(2060)에서, 콘텐트 재생 시스템은, 현재 시야에 기초하여, 예를 들면, 하나 이상의 출력 이미지들을 생성하는 데 사용될 이용 가능한 데이터가 존재하는 뷰 부분들의 일 세트를 결정한다. 몇몇 예시적인 결정된 세트들은, 예를 들면, {}, {정면 뷰 부분}, {제 1 후방 뷰 부분}, {제 2 후방 뷰 부분}, {하늘 뷰 부분}, {지상 뷰 부분}, {전방 뷰 부분, 하늘 뷰 부분}, {전방 뷰 부분, 지상 뷰 부분}, {전방 뷰 부분, 제 1 후방 뷰 부분}, {전방 뷰 부분, 제 2 후방 뷰 부분}, {전방 뷰 부분, 제 1 후방 뷰 부분, 하늘 뷰 부분}, {전방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분}, {전방 뷰 부분, 제 1 후방 뷰 부분, 지상 뷰 부분}, {전방 뷰 부분, 제 2 후방 뷰 부분, 지상 뷰 부분}, {제 1 후방 뷰 부분, 하늘 뷰 부분}, {제 1 후방 뷰 부분, 지상 뷰 부분}, {제 1 후방 뷰 부분, 제 2 후방 뷰 부분}, {제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분}, {제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 지상 뷰 부분}, {제 2 후방 뷰 부분, 하늘 뷰 부분}, 및 {제 2 후방 뷰 부분, 지상 뷰 부분}을 포함한다.In step 2060, the content reproduction system determines a set of view portions based on the current view, for example, where there is available data to be used to generate one or more output images. Some exemplary determined sets include, for example, {}, {front view portion}, {first rear view portion}, {second rear view portion}, {sky view portion}, {ground view portion} A forward view portion, a first rear view portion, a forward view portion, a second rear view portion, a forward view portion, a first rear view portion, A first rear view portion, a ground view portion, a forward view portion, a second rear view portion, and a second rear view portion. , A first rear view portion, a second rear view portion}, a first rear view portion, a first rear view portion, a second rear view portion, Second back view portion, sky view portion}, {first rearview portion, second rearview portion, ground view portion}, {second rearview portion, skyview portion} Ground view portion} The.

동작은 단계(2060)로부터 단계(2062)로 진행한다. 단계(2062)에서, 콘텐트 재생 시스템은, 다음의 두 개의 조건들이 만족되는지의 여부를 결정한다:(ⅰ) 단계(2060)로부터 뷰 부분들의 결정된 세트가 단지 제 1 뷰 부분만을 포함하는 것, 및 (ⅱ) 제 1 뷰 부분 외부에 현재 시야의 부분들이 존재하지 않는 것. 결정된 세트가 단지 제 1 뷰 부분을 포함하고 제 1 뷰 부분 외부에 현재 시야의 부분들이 존재하지 않는 것을 결정하는 경우, 동작은 단계(2062)로부터 단계(2064)로 진행하고; 그렇지 않은 경우, 동작은 단계(2062)로부터 단계(2066)로 진행한다.Operation proceeds from step 2060 to step 2062. [ In step 2062, the content reproduction system determines whether the following two conditions are satisfied: (i) the determined set of view portions from step 2060 includes only the first view portion, and (Ii) there are no parts of the current field of view outside the first view part; If the determined set only includes the first view portion and it is determined that there are no portions of the current view outside the first view portion, then operation proceeds from step 2062 to step 2064; Otherwise, operation proceeds from step 2062 to step 2066. [

단계(2064)에서, 콘텐트 재생 시스템은 제 1 콘텐트 스트림으로부터 수신된 콘텐트에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성한다.In step 2064, the content playback system generates one or more output images corresponding to the current view, based on the content received from the first content stream.

단계(2066)에서, 콘텐트 재생 시스템은 이미지가 이용 가능하지 않은 상기 현재 시야의 임의의 부분이 존재하는지를 결정한다. 콘텐트 재생 시스템이 이미지가 이용 가능하지 않은 현재 시야의 적어도 일 부분이 존재한다고 결정하는 경우, 동작은 단계(2066)로부터 단계(2076)로 진행하고; 그렇지 않은 경우, 동작은 단계(2066)로부터 단계(2078)로 진행한다.In step 2066, the content playback system determines if any portion of the current view is not available for the image. If the content playback system determines that at least a portion of the current view is not available, the operation proceeds from step 2066 to step 2076; Otherwise, operation proceeds from step 2066 to step 2078. [

단계(2068)에서, 콘텐트 재생 시스템은 하나 이상의 출력 이미지들을 생성할 시 사용될 뷰 부분의 결정된 세트에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성한다. 단계(2068)는 단계(2070)를 포함할 수 있고, 때때로 그를 포함하고, 여기서 제 1 콘텐트 스트림에 포함된 적어도 일부 수신된 콘텐트 및 상기 환경의 제 2 부분에 대응하는 저장된 콘텐트에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성한다. 몇몇 실시예들에서, 단계(2070)는 단계들(2072, 2074) 중 하나 또는 둘 모두를 포함한다. 단계(2072)에서, 콘텐트 재생 시스템은 수신된 이미지 선택 정보에 기초하여 환경의 제 2 부분 뷰에 대응하는 이미지를 선택한다. 동작은 단계(2072)로부터 단계(2074)로 진행한다. 단계(2074)에서, 콘텐트 재생 시스템은 제 2 시점에서 캡처된 상기 제 1 콘텐트 스트림으로부터 획득된 콘텐트를 상기 제 1 시점에 대응하는 제 1 이미지와 조합하고, 상기 제 1 및 제 2 시점은 상이하다.In step 2068, the content reproduction system generates one or more output images corresponding to the current view, based on the determined set of view portions to be used when generating one or more output images. Step 2068 may include, but is not limited to, step 2070, wherein the current view is based on at least some received content included in the first content stream and the stored content corresponding to the second portion of the environment Lt; RTI ID = 0.0 > images. ≪ / RTI > In some embodiments, step 2070 includes one or both of steps 2072,2074. In step 2072, the content reproduction system selects an image corresponding to a second partial view of the environment based on the received image selection information. Operation proceeds from step 2072 to step 2074. [ In step 2074, the content reproduction system combines the content obtained from the first content stream captured at the second time point with a first image corresponding to the first time point, and the first and second time points are different .

몇몇 실시예들에서, 제 1 이미지는 환경의 제 2 부분의 제 1 이미지이고, 제 2 부분은 환경의 제 1 후방 뷰 부분 및 환경의 제 2 후방 뷰 부분 중 하나이다. 몇몇 이러한 실시예들에서, 제 1 시점은 제 2 시점에 선행하는 시간에 대응한다. 몇몇 이러한 실시예들에서, 제 1 시점은 제 1 콘텐트 스트림들의 이미지들이 캡처되는 동안 실시간 이벤트의 시간에 선행한다.In some embodiments, the first image is a first image of a second portion of the environment, and the second portion is one of a first rearview portion of the environment and a second rearview portion of the environment. In some such embodiments, the first time point corresponds to a time preceding the second time point. In some such embodiments, the first point in time precedes the time of the real-time event while images of the first content streams are captured.

단계(2076)로 돌아가면, 단계(2076)는 이미지가 이용 가능하지 않은 각각의 부분에 대해 수행된다. 단계(2076)에서, 콘텐트 재생 시스템은 이미지가 이용 가능하지 않은 상기 현재 시야의 일 부분에 대한 이미지를 합성한다. 동작은 단계(2076)로부터 단계(2078)로 진행한다. 단계(2078)에서, 콘텐트 재생 시스템은 하나 이상의 출력 이미지들 및/또는 하나 이상의 합성된 이미지들을 생성할 때 사용될 환경의 뷰 부분의 결정된 세트에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성한다. 단계(2078)에 의해 생성된 출력 이미지들은: 전체로 합성된 이미지; 합성된 이미지로부터의 콘텐트 및 제 1 콘텐트 스트림으로부터의 콘텐트를 포함하는 이미지; 합성된 이미지로부터의 콘텐트, 제 1 콘텐트 스트림으로부터의 콘텐트, 및 저장된 이미지로부터의 콘텐트를 포함하는 이미지; 및 합성된 이미지로부터의 콘텐트 및 저장된 이미지로부터의 콘텐트를 포함하는 이미지를 포함할 수 있다. 다양한 실시예들에서, 단계(2078)는 단계들(2080, 2082) 중 하나 또는 둘 모두를 포함할 수 있고, 때때로 그를 포함한다.Returning to step 2076, step 2076 is performed for each part for which an image is not available. In step 2076, the content reproduction system synthesizes an image for a portion of the current view that an image is not available. Operation proceeds from step 2076 to step 2078. [ At step 2078, the content reproduction system generates one or more output images and / or one or more output images corresponding to the current view, based on the determined set of view portions of the environment to be used when generating the one or more composite images . The output images generated by step 2078 may include: a fully synthesized image; An image comprising content from the synthesized image and content from the first content stream; An image comprising content from the synthesized image, content from the first content stream, and content from the stored image; And an image comprising content from the synthesized image and content from the stored image. In various embodiments, step 2078 can include one or both of steps 2080 and 2082, and sometimes includes it.

단계(2080)에서, 콘텐트 재생 시스템은 제 1 콘텐트 스트림에 포함된 적어도 몇몇 수신된 콘텐트에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들 및 환경의 일 부분, 예를 들면, 제 2 부분을 시뮬레이션하는 합성 이미지를 생성한다. 단계(2080)에서, 콘텐트 재생 디바이스는 현재 시야에 대응하는 이미지를 생성하기 위해 합성된 이미지를 수신된 이미지의 적어도 일 부분과 조합한다.In step 2080, the content playback system may simulate one or more output images corresponding to the current view and a portion of the environment, e.g., a second portion, based on at least some received content included in the first content stream Lt; / RTI > In step 2080, the content reproduction device combines the combined image with at least a portion of the received image to produce an image corresponding to the current field of view.

현재 시야는 시간에 따라 변할 수 있고 일반적으로 그렇다는 것이 이해되어야 한다. 현재 시야의 변경들에 응답하여, 출력 이미지를 생성하기 위해 사용되는 뷰 부분들의 상이한 세트들은 단계(2060)에서 결정될 수 있고, 상이한 이미지들이 존재하는 것이 요구될 수 있고, 예를 들면, 이미지가 존재하지 않는 시야의 상이한 부분에 대응하여, 단계(2076)에서 합성된다. 또한, 수신된 제어 정보에 기초하여 상이한 시간들에서, 상이한 저장된 이미지들은 상이한 시간들에 조합된 출력 이미지를 생성할 때 사용되기 위해 식별될 수 있다.It should be understood that the current view can vary over time and is generally so. In response to changes in the current field of view, different sets of view portions used to generate an output image may be determined at step 2060, different images may be required to be present, for example, In step 2076, corresponding to different portions of the field of view that do not. In addition, at different times based on the received control information, different stored images can be identified for use in generating an output image combined at different times.

동작은 단계(2058)로부터, 접속 노드 E(2084)를 통해, 단계(2086)로 진행하고, 여기서 콘텐트 재생 시스템은 생성된 하나 이상의 출력 이미지들을 출력 및/또는 디스플레이한다. 단계(2086)는 콘텐트 재생 시스템이 제 1 출력 이미지를 출력 및/또는 디스플레이하는 단계(2088)를 포함하고, 상기 제 1 출력 이미지는 하나 이상의 생성된 출력 이미지들 중 하나이다.Operation proceeds from step 2058, via access node E 2084, to step 2086, where the content playback system outputs and / or displays the generated one or more output images. Step 2086 includes the step 2088 of the content playback system outputting and / or displaying a first output image, wherein the first output image is one of one or more generated output images.

몇몇 실시예들에서, 현재 시야에 대응하는, 예를 들면, 단계(2070)에서 생성된, 생성된 출력 이미지는 환경의 제 1 부분, 환경의 제 2 부분, 및 환경의 제 3 부분으로부터의 정보를 포함할 수 있고, 때때로 그를 포함한다. 몇몇 실시예들에서, 제 1 콘텐트 스트림에 대응하는 환경의 제 1 부분은 정면 뷰 부분이고, 환경의 제 2 부분은, 환경의, 제 1 후방 뷰 부분, 예를 들면, 오른쪽 후방 뷰 부분, 및 제 2 후방 뷰 부분, 예를 들면, 왼쪽 후방 뷰 부분 중 하나이고, 환경의 제 3 부분은 환경의 하늘 뷰 부분 및 지상 뷰 부분 중 하나이다. 몇몇 이러한 실시예들에서, 상기 제 1 부분에 대응하는 콘텐트는 이벤트가 진행중인 동안 상기 재생 시스템에 캡처 및 스트리밍된 실시간 콘텐트를 포함하고, 상기 제 2 및 제 3 부분들에 대응하는 콘텐트는 비실시간 이미지들이다.In some embodiments, the generated output image, corresponding to the current view, e.g., generated in step 2070, includes information from a first portion of the environment, a second portion of the environment, and a third portion of the environment And sometimes includes it. In some embodiments, a first portion of the environment corresponding to the first content stream is a front view portion, a second portion of the environment includes a first rear view portion, e.g., a right rear view portion, The second rear view portion, e.g., the left rear view portion, and the third portion of the environment is one of the sky view portion and the ground view portion of the environment. In some such embodiments, the content corresponding to the first portion includes real-time content captured and streamed to the playback system while the event is in progress, and the content corresponding to the second and third portions is a non- admit.

다양한 실시예들에서, 현재 시야에 대응하는 출력 이미지를 생성하기 위한 콘텐트의 조합은 하나 이상의 경계 영역들에서, 예를 들면, 환경의 정면 뷰 부분에 대응하는 제 1 콘텐트 스트림으로부터 획득된 이미지, 환경의 제 1 후방 뷰 부분에 대응하는 저장된 이미지, 환경의 제 2 후방 뷰 부분에 대응하는 저장된 이미지, 환경의 하늘 뷰 부분에 대응하는 저장된 이미지, 환경의 지상 뷰 부분에 대응하는 저장된 이미지, 및 이미지가 존재하지 않는 현재 시야 내 영역에 대응하는 합성된 이미지 중 임의의 두 개 사이의 경계 영역에서 필터링, 블러링, 휘도 변동들, 및/또는 컬러 변동들을 수행하는 것을 포함한다.In various embodiments, a combination of content for generating an output image corresponding to a current view may be stored in one or more of the boundary areas, for example, an image obtained from a first content stream corresponding to a front view portion of the environment, A stored image corresponding to the first rearview portion of the environment, a stored image corresponding to the second rearview portion of the environment, a stored image corresponding to the sky view portion of the environment, a stored image corresponding to the ground view portion of the environment, Blurring, luminance variations, and / or color variations in a boundary region between any two of the combined images corresponding to a non-existing current in-view area.

몇몇 실시예들에서, 제 1, 예를 들면, 제 1 콘텐트 스트림에 대응하는 정면 뷰 부분에 의해 포함되지 않는 환경의 몇몇 부분들, 및 수신된 이미지들이 저장되는 하나 이상의 추가 부분들이 존재한다. 다양한 실시예들에서, 환경의 이들 포함되지 않은 부분들에 대해, 이미지가 합성된다. 예를 들면, 일 실시예에서, 하늘 뷰 부분에 대응하는 저장된 이미지가 존재하지 않을 수 있고, 현재 시야가 하늘 뷰의 일 부분을 포함할 때, 이미지가 합성된다. 다른 예에서, 데드 스팟(dead spot), 예를 들면, 제 1 후방 뷰 부분과 제 2 후방 뷰 부분 사이의 포함되지 않은 영역이 존재할 수 있다. 몇몇 실시예들에서, 이미지를 합성하는 것은 이미지의 일 부분, 환경에서 인접 영역에 대응하는 수신된 제 1 콘텐트 스트림으로부터 획득된 이미지의 일 부분 또는 저장된 이미지의 일 부분을 반복하는 것을 포함한다.In some embodiments, there are first, e.g., some portions of the environment not covered by the front view portion corresponding to the first content stream, and one or more additional portions where the received images are stored. In various embodiments, for these non-included portions of the environment, the images are composited. For example, in one embodiment, the stored image corresponding to the sky view portion may not be present, and when the current view includes a portion of the sky view, the image is composited. In another example, there may be a dead spot, e.g., an unincorporated region between the first rearview portion and the second rearview portion. In some embodiments, compositing the image includes repeating a portion of the image, a portion of the image obtained from the received first content stream corresponding to the contiguous region in the environment, or a portion of the stored image.

몇몇 실시예들에서, 단계(2034)에서 수신된 제 1 이미지 콘텐트는, 예를 들면 왼쪽 및 오른쪽 눈들의 쌍들이 수신되는, 왼쪽 눈 이미지 및 오른쪽 눈 이미지를 포함하는 입체 영상 이미지 콘텐트이다. 몇몇 이러한 실시예들에서, 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분, 및 지상 뷰 부분들에 대응하는 수신 및 저장된 이미지들은 왼쪽 눈 이미지들 및 오른쪽 눈 이미지들을, 예를 들면, 쌍들로 포함한다. 따라서, 예를 들면, 단계(2070)에서, 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성할 때, 제 1 뷰 부분, 예를 들면, 정면 뷰 부분에 대응하는 제 1 콘텐트 스트림으로부터의 왼쪽 눈 이미지들은 환경의 하나 이상의 다른 부분들에 대응하는 저장된 왼쪽 눈 이미지들과 조합되고, 제 1 뷰 부분, 예를 들면, 정면 뷰 부분에 대응하는 제 1 콘텐트 스트림으로부터의 오른쪽 눈 이미지들은 환경의 하나 이상의 다른 부분들에 대응하는 저장된 오른쪽 이미지들과 조합된다.In some embodiments, the first image content received in step 2034 is a stereoscopic image content including, for example, a left eye image and a right eye image, wherein pairs of left and right eyes are received. In some such embodiments, the received and stored images corresponding to the first rearview portion, the second rearview portion, the sky view portion, and the ground view portions may include left eye images and right eye images, e.g., Pairs. Thus, for example, in step 2070, when generating one or more output images corresponding to the current view, the left eye image from the first content stream corresponding to the first view portion, e.g., the front view portion, Are combined with stored left eye images corresponding to one or more different parts of the environment and the right eye images from the first content stream corresponding to the first view part, e.g., the front view part, are combined with one or more other Lt; RTI ID = 0.0 > images, < / RTI >

몇몇 다른 실시예들에서, 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분, 및 지상 뷰 부분들에 대응하는 수신 및 저장된 이미지들은 이미지들의 원래의 쌍으로부터 왼쪽 눈 이미지 또는 오른쪽 눈 이미지 중 하나를 포함하거나 또는 예를 들면, 뷰 부분을 캡처하기 위해 단독으로 동작하는 단일 카메라로부터 단일(모노) 이미지를 포함한다. 따라서, 이러한 일 실시예에서, 예를 들면, 단계(2070)에서, 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성할 때, 제 1 콘텐트 스트림으로부터의 왼쪽 눈 이미지 및 예를 들면, 정면 부분에 대응하는, 제 1 콘텐트 스트림으로부터의 대응하는 오른쪽 눈 이미지 둘 모두는 다른 뷰 부분으로부터의 동일한 저장 이미지와 조합된다.In some other embodiments, the received and stored images corresponding to the first rearview portion, the second rearview portion, the sky view portion, and the ground view portions are moved from the original pair of images to the left eye image or the right eye image (Mono) image from a single camera that contains one or, for example, operates solely to capture the view portion. Thus, in one such embodiment, for example, at step 2070, when generating one or more output images corresponding to the current field of view, a left eye image from the first content stream and corresponding, for example, Both of the corresponding right eye images from the first content stream are combined with the same stored image from the other view portions.

또 다른 실시예들에서, 저장된 이미지들 중 몇몇은 왼쪽 및 오른쪽 눈 이미지 쌍들 모두를 포함하고, 다른 것들은 하나의 저장된 이미지들을 포함한다. 예를 들면, 제 1 후방 뷰 부분에 대응하는 수신된 저장된 수신된 이미지들은 왼쪽 및 오른쪽 눈 이미지들의 쌍들을 포함할 수 있고, 반면에 하늘 뷰 부분에 대응하는 저장된 수신 이미지들은 단일 이미지들, 예를 들면, 쌍들보다는 모노 이미지들을 포함할 수 있다.In still other embodiments, some of the stored images include both left and right eye image pairs, and others include one stored image. For example, the received stored stored images corresponding to the first rearview portion may include pairs of left and right eye images, while the stored received images corresponding to the sky view portion may contain single images, e.g., For example, you can include mono images rather than pairs.

몇몇 실시예들에서, 예를 들면, 수신된 제 1 콘텐트 스트림에 대응하는 환경의 제 1 부분은 정면 뷰 부분이고, 환경의 제 2 부분은 후방 뷰 부분, 예를 들면, 뷰어의 오른쪽 후방에 대응하는 제 1 후방 뷰 부분 또는 뷰어의 왼쪽 후방에 대응하는 제 2 후방 뷰 부분이고, 환경의 제 3 부분은 하늘 뷰 부분 또는 지상 뷰 부분이다. 몇몇 이러한 실시예들에서, 이미지들은 제 1, 제 2, 및 제 3 부분들에 대응하는 상이한 레이트들에서 수신되고, 더 많은 이미지들이 상기 제 2 부분보다 상기 제 1 부분에 대응하는 이벤트에 대해 수신된다. 몇몇 이러한 실시예들에서, 더 많은 이미지들이 상기 제 3 부분보다 상기 제 2 부분에 대응하여 수신된다.In some embodiments, for example, the first portion of the environment corresponding to the received first content stream is a front view portion and the second portion of the environment corresponds to a rear view portion, e.g., right rear of the viewer The second rear view portion corresponding to the left rear of the viewer and the third portion of the environment is the sky view portion or the ground view portion. In some such embodiments, images are received at different rates corresponding to the first, second, and third portions, and more images are received for events corresponding to the first portion than the second portion do. In some such embodiments, more images are received corresponding to the second portion than the third portion.

몇몇 실시예들에 따라, 콘텐트 재생 시스템을 동작시키는 일 예시적인 방법은: 현재 시야에 대응하는 뷰어의 머리 위치를 결정하는 단계; 환경의 제 1 부분에 대응하는 콘텐트를 제공하는 제 1 콘텐트 스트림을 수신하는 단계; 상기 제 1 콘텐트 스트림에 포함된 적어도 몇몇 수신된 콘텐트 및 ⅰ) 상기 환경의 제 2 부분에 대응하는 저장된 콘텐트 또는 ⅱ) 상기 환경의 제 2 부분을 시뮬레이션하는 합성 이미지에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하는 단계; 및 제 1 출력 이미지를 출력 또는 디스플레이하는 단계로서, 상기 제 1 출력 이미지는 하나 이상의 생성된 출력 이미지들 중 하나인, 상기 출력 또는 디스플레이하는 단계를 포함한다. 몇몇 실시예들에서, 콘텐트 재생 시스템은 콘텐트 재생 디바이스이다. 몇몇 실시예들에서, 콘텐트 재생 시스템은 디스플레이에 결합된 컴퓨터 시스템이다.According to some embodiments, an exemplary method of operating a content playback system includes: determining a head position of a viewer corresponding to a current view; Receiving a first content stream that provides content corresponding to a first portion of the environment; At least some received content included in the first content stream and i) a stored content corresponding to a second portion of the environment or ii) a second portion corresponding to the current view based on a composite image simulating a second portion of the environment Generating output images; And outputting or displaying a first output image, wherein the first output image is one of one or more generated output images. In some embodiments, the content playback system is a content playback device. In some embodiments, the content playback system is a computer system coupled to a display.

다양한 실시예들에서, 방법은: 상기 환경의 제 2 부분에 대응하는 제 1 이미지를 수신하는 단계; 및 상기 환경의 상기 제 2 부분에 대응하는 상기 제 1 이미지를 저장하는 단계를 추가로 포함한다.In various embodiments, the method includes: receiving a first image corresponding to a second portion of the environment; And storing the first image corresponding to the second portion of the environment.

몇몇 실시예들에서, 상기 환경의 상기 제 2 부분의 상기 제 1 이미지는 제 1 시점에 대응하고; 현재 시야에 대응하여 하나 이상의 출력 이미지들을 생성하는 것은 제 2 시점에서 캡처된 상기 제 1 콘텐트 스트림으로부터 획득된 콘텐트를 상기 제 1 시점에 대응하는 상기 제 1 이미지와 조합하는 것을 포함하고, 상기 제 1 및 제 2 시점들은 상이하다. 몇몇 이러한 실시예들에서, 상기 제 1 시점은 상기 제 2 시점에 선행하는 시간에 대응한다. 몇몇 이러한 실시예들에서, 상기 제 1 시점은 상기 제 1 콘텐트 스트림에 포함된 이미지들이 캡처되는 동안 실시간 이벤트의 시간에 선행한다.In some embodiments, the first image of the second portion of the environment corresponds to a first viewpoint; Generating one or more output images corresponding to a current view includes combining content obtained from the first content stream captured at a second viewpoint with the first image corresponding to the first viewpoint, And the second time points are different. In some such embodiments, the first viewpoint corresponds to a time preceding the second viewpoint. In some such embodiments, the first viewpoint precedes the time of the real-time event while images included in the first content stream are captured.

다양한 실시예들에서, 방법은 상기 환경의 상기 제 2 부분에 대응하는 하나 이상의 추가의 이미지들을 수신하는 단계를 추가로 포함하고, 상기 환경의 상기 제 2 부분에 대응하는 상기 하나 이상의 추가의 이미지들은 적어도 제 2 이미지를 포함한다.In various embodiments, the method further comprises receiving one or more additional images corresponding to the second portion of the environment, wherein the one or more additional images corresponding to the second portion of the environment At least a second image.

몇몇 실시예들에서, 방법은 상기 환경의 상기 제 2 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에 나타내진 재생 시간에 관해 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하는 단계를 포함한다.In some embodiments, the method further comprises determining which of a plurality of previously delivered images corresponding to the second portion of the environment should be displayed during a playback time measured with respect to the playback time indicated in the first content stream And receiving control information.

몇몇 실시예들에서, 상기 환경의 제 2 부분은 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분 또는 지상 뷰 부분 중 하나이다. 몇몇 이러한 실시예들에서, 방법은 상기 환경의 제 3 부분에 대응하는 하나 이상의 이미지들을 수신하는 단계를 추가로 포함한다.In some embodiments, the second portion of the environment is one of a first rearview portion, a second rearview portion, a sky view portion, or a ground view portion. In some such embodiments, the method further comprises receiving one or more images corresponding to a third portion of the environment.

다양한 실시예들에서, 상기 환경의 상기 제 1 부분은 정면 뷰 부분이고; 상기 제 3 부분은 하늘 뷰 또는 지상 뷰 부분 중 하나이고, 이미지들은 상기 제 1, 제 2, 및 제 3 부분들에 대응하는 상이한 레이트들에서 수신되고, 더 많은 이미지들이 상기 제 2 부분에 대해서보다 상기 제 1 부분에 대응하는 이벤트에 대해 수신된다.In various embodiments, the first portion of the environment is a front view portion; Wherein the third portion is one of a sky view or a ground view portion, the images are received at different rates corresponding to the first, second, and third portions, and more images are viewed with respect to the second portion And is received for an event corresponding to the first portion.

다양한 실시예들에서, 상기 제 1 부분에 대응하는 상기 콘텐트는 이벤트가 진행중인 동안 상기 재생 디바이스에 캡처 및 스트리밍되는 실시간 콘텐트를 포함하고; 상기 제 2 및 제 3 부분들에 대응하는 상기 이미지들에 대응하는 콘텐트는 비실시간 이미지들이다. 몇몇 이러한 실시예들에서, 환경의 상기 제 2 부분에 대응하는 복수의 이미지들 중 어느 것이 상기 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하고, 적어도 일부 수신된 콘텐트에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하는 것은 수신된 이미지 선택 정보에 기초하여 환경의 상기 제 2 부분에 대응하는 이미지를 선택하는 것을 포함한다.In various embodiments, the content corresponding to the first portion includes real-time content captured and streamed to the playback device while the event is in progress; The content corresponding to the images corresponding to the second and third portions are non real-time images. In some such embodiments, the method includes receiving image selection information indicating which of a plurality of images corresponding to the second portion of the environment should be used during a portion of the event, and determining, based on at least some received content, Generating the one or more output images corresponding to the second portion of the environment comprises selecting an image corresponding to the second portion of the environment based on the received image selection information.

다양한 실시예들에서, 예시적인 방법은 이미지가 상기 현재 시야의 일 부분에 대해 이용 가능하지 않다는 것을 결정하는 단계; 이미지가 이용 가능하지 않은 상기 현재 시야의 상기 부분에 대해 사용될 이미지를 합성하는 단계; 및 현재 시야에 대응하는 이미지를 생성하기 위해 수신된 이미지의 적어도 일 부분과 합성된 이미지를 조합하는 단계를 포함한다.In various embodiments, the exemplary method includes determining that an image is not available for a portion of the current view; Synthesizing an image to be used for the portion of the current field of view where no image is available; And combining the synthesized image with at least a portion of the received image to produce an image corresponding to the current view.

다양한 실시예들에서, 상기 제 1 이미지 콘텐트는 왼쪽 눈 이미지 및 오른쪽 눈 이미지를 포함하는 입체 영상 이미지 콘텐트이다.In various embodiments, the first image content is a stereoscopic image content comprising a left eye image and a right eye image.

도 21은 도 1 및 도 7에 도시된 것과 같은 콘텐트 전달 시스템으로부터 수신된 이미징 콘텐트를 수신, 디코딩, 저장, 처리, 및 디스플레이하기 위해 사용될 수 있는 본 발명에 따라 구현된 일 예시적인 콘텐트 재생 시스템(2100)을 도시한다. 시스템(2100)은 디스플레이(2102)를 포함하는 단일 재생 디바이스(2100')로서 또는 외부 디스플레이, 예를 들면, 컴퓨터 시스템(2100')에 결합된 헤드 마운트 디스플레이(2105)와 같은 요소들의 조합으로서 구현될 수 있다.21 illustrates an exemplary content playback system (e.g., a content playback system) implemented in accordance with the present invention that can be used to receive, decode, store, process, and display imaging content received from a content delivery system such as the one shown in FIGS. 2100). The system 2100 may be implemented as a single playback device 2100 'including a display 2102 or as a combination of elements such as an external display, e.g., a head mounted display 2105 coupled to a computer system 2100' .

콘텐트 재생 시스템(2100)은, 적어도 몇몇 실시예들에서, 3D 헤드 마운트 디스플레이이다. 헤드 마운트 디스플레이는 헤드 마운트 디스플레이(2105)를 포함할 수 있는 OCULUS RIFTTM VR(가상 현실) 헤드셋을 사용하여 구현될 수 있다. 다양한 실시예들에서, 헤드 마운트 디스플레이(2105)는 헤드 마운트 디스플레이(805)와 동일하다. 다른 헤드 마운트 디스플레이들이 또한 사용될 수 있다. 몇몇 실시예들에서, 헤드 마운트 헬멧 또는 다른 헤드 마운팅 디바이스의 하나 이상의 디스플레이 스크린들은 사용자의 왼쪽 및 오른쪽 눈들에 콘텐트를 디스플레이하기 위해 사용된다. 단일 스크린의 상이한 부분들을 상이한 눈들에 노출하도록 구성된 헤드 마운트에 의해 상이한 이미지들을 단일 스크린상에 왼쪽 및 오른쪽 눈들에 디스플레이함으로써, 단일 디스플레이는 뷰어의 왼쪽 및 오른쪽 눈들에 의해 개별적으로 인식될 왼쪽 및 오른쪽 눈 이미지들을 디스플레이하기 위해 사용될 수 있다. 몇몇 실시예들에서, 휴대 전화 스크린은 헤드 마운트 디스플레이 디바이스의 디스플레이로서 사용된다. 적어도 몇몇 이러한 실시예들에서, 휴대 전화는 헤드 마운팅 디바이스로 삽입되고, 휴대 전화는 이미지들을 디스플레이하기 위해 사용된다.Content playback system 2100, in at least some embodiments, is a 3D head-mounted display. The head mount display may be implemented using a OCULUS RIFT TM VR (Virtual Reality) headset, which may include a head mount display 2105. In various embodiments, the head-mounted display 2105 is identical to the head-mounted display 805. Other head mount displays may also be used. In some embodiments, one or more display screens of the head mount helmet or other head mounting device are used to display content on the left and right eyes of the user. By displaying different images on the left and right eyes on a single screen by means of a head mount configured to expose different parts of a single screen to different eyes, a single display can be displayed on the left and right eyes Can be used to display images. In some embodiments, the mobile phone screen is used as a display of a head-mounted display device. In at least some such embodiments, the mobile phone is inserted into a head mounting device, and the mobile phone is used to display images.

콘텐트 재생 시스템(2100)은 수신된 인코딩된 이미지 데이터, 예를 들면, 환경 또는 장면의 상이한 부분들에 대응하는 왼쪽 및 오른쪽 눈 이미지들 및/또는 모노(단일 이미지들)를 디코딩하고, 예를 들면, 사용자에 의해 인식되는 상이한 왼쪽 및 오른쪽 눈 뷰들을 3D 이미지로서 렌더링 및 디스플레이함으로써, 고객에게 디스플레이하기 위한 3D 이미지를 생성하기 위한 능력을 갖는다. 콘텐트 재생 시스템(2100)은 몇몇 실시예들에서 가정 또는 사무실과 같은 고객 구내 위치에 위치되지만 이미지 캡처 사이트에도 또한 위치될 수 있다. 콘텐트 재생 시스템(2100)은 본 발명에 따라 신호 수신, 디코딩, 처리, 생성, 디스플레이 및/또는 다른 동작드을 수행할 수 있다.The content playback system 2100 may decode the received encoded image data, e.g., left and right eye images and / or mono (single images) corresponding to different portions of the environment or scene, , And has the ability to generate a 3D image for display to a customer by rendering and displaying different left and right eye views recognized by the user as a 3D image. The content playback system 2100 is located in a customer premise location, such as a home or office in some embodiments, but may also be located at an image capture site. The content playback system 2100 may perform signal reception, decoding, processing, generation, display and / or other operations in accordance with the present invention.

시스템(2100)은 디스플레이(2102), 디스플레이 디바이스 인터페이스(2013), 입력 디바이스(2104), 입력/출력(I/O) 인터페이스(2106), 프로세서(2108), 네트워크 인터페이스(2110), 및 메모리(2112)를 포함한다. 메모리(2112)는 모듈들의 어셈블리(2114), 예를 들면, 소프트웨어 모듈들의 어셈블리, 및 데이터/정보(2116)를 포함한다. 몇몇 실시예들에서, 시스템(2100)은 모듈들의 어셈블리(2115), 예를 들면, 하드웨어 모듈들의 어셈블리, 예를 들면, 회로들을 포함한다. 시스템(2100)의 다양한 구성 요소들은 데이터가 시스템(2100)의 구성 요소들 사이에 전달되게 하는 버스(2109)를 통해 및/또는 다른 접속들에 의해 또는 무선 인터페이스를 통해 함께 결합된다. 몇몇 실시예들에서, 디스플레이(2102)는 대시 박스를 사용하여 도시되는 선택 요소로서 포함되지만, 몇몇 실시예들에서, 외부 디시플레이 디바이스(2105), 예를 들면, 헤드 마운트 입체 영상 디스플레이 디바이스는 디스플레이 디바이스 인터페이스(2103)를 통해 재생 디바이스에 결합될 수 있다.The system 2100 includes a display 2102, a display device interface 2013, an input device 2104, an input / output (I / O) interface 2106, a processor 2108, a network interface 2110, 2112). Memory 2112 includes an assembly of modules 2114, e.g., an assembly of software modules, and data / information 2116. In some embodiments, system 2100 includes an assembly of modules 2115, e.g., assemblies of hardware modules, e.g., circuits. The various components of system 2100 are coupled together via bus 2109 and / or via other connections or via an air interface to allow data to be communicated between the components of system 2100. In some embodiments, the display 2102 is included as a selectable element shown using a dash box, but in some embodiments, the external dicingplay device 2105, e.g., a headmount stereoscopic image display device, May be coupled to the playback device via the device interface 2103.

예를 들면, 휴대 전화 프로세서가 프로세서(2108)로서 사용되고 휴대 전화가 헤드 마운트에 이미지들을 생성 및 디스플레이하는 경우, 시스템은 헤드 마운트 디바이스의 일 부분으로서 프로세서(2108), 디스플레이(2102), 및 메모리(2112)를 포함할 수 있다. 프로세서(2108), 디스플레이(2102), 및 메모리(2112)는 모두 휴대 전화의 일부일 수 있다. 시스템(2100)의 다른 실시예들에서, 프로세서(2108)는 헤드 마운팅 디바이스에 장착되고 게이밍 시스템에 결합되는 디스플레이(2105)를 갖는 XBOX 또는 PS4와 같은 게이밍 시스템의 일부일 수 있다. 프로세서(2108) 및/또는 메모리(2112)가 머리에 쓰는 디바이스에 위치되든지 그렇지 않든지는 이해될 수 있는 바와 같이 중요하지 않고, 반면에 몇몇 경우들에서, 전력, 열, 및 중량 관점으로부터 헤드기어에 프로세서(2108)를 공통 위치시키는 것이 편리할 수 있고, 이는 적어도 몇몇 경우들에서, 디스플레이를 포함하는 헤드 기어에 결합된 프로세서(2108) 및 메모리(2112)를 갖는 것이 바람직할 수 있다.For example, if a cellular phone processor is used as the processor 2108 and the cellular phone generates and displays images on the head mount, the system may include a processor 2108, a display 2102, and a memory 2112). Processor 2108, display 2102, and memory 2112 may all be part of a cellular telephone. In other embodiments of the system 2100, the processor 2108 may be part of a gaming system, such as an XBOX or PS4, having a display 2105 mounted to the head mounting device and coupled to the gaming system. Whether or not the processor 2108 and / or the memory 2112 is located in a head-writing device is not as important as can be appreciated, while in some cases it is important to note that from a power, heat, It may be convenient to place the processor 2108 in a common location, and in at least some cases, it may be desirable to have the processor 2108 and the memory 2112 coupled to the headgear that includes the display.

다양한 실시예들이 헤드 마운트 디스플레이(2105 또는 2102)를 고려하지만, 방법 및 장치는 3D 이미지를 지원할 수 있는 비헤드 마운트 디스플레이들과 함께 또한 사용될 수 있다. 따라서, 많은 실시예들에서, 시스템(2100)은 헤드 마운트 디스플레이를 포함하지만, 이는 비헤드 마운트 디스플레이에 의해 또한 구현될 수 있다.Although various embodiments contemplate the head mount display 2105 or 2102, the method and apparatus may also be used with non-head mounted displays capable of supporting 3D images. Thus, in many embodiments, the system 2100 includes a head mounted display, but this may also be implemented by a non-head mounted display.

메모리(21112)는 다양한 모듈들, 예를 들면, 프로세서(2108)에 의해 실행될 때, 본 발명에 따라 동작들을 수행하도록 콘텐트 재생 시스템(2100)을 제어하는 루틴들을 포함한다. 메모리(2112)는 모듈들의 어셈블리(2114), 예를 들면, 소프트웨어 모듈들의 어셈블리, 및 데이터/정보(2116)를 포함한다.Memory 21112 includes routines that, when executed by various modules, e.g., processor 2108, control content playback system 2100 to perform operations in accordance with the present invention. Memory 2112 includes an assembly of modules 2114, e.g., an assembly of software modules, and data / information 2116.

데이터 정보(2116)는: 제 1 후방 뷰 부분(2118)에 대응하는 수신된 이미지들, 제 2 후방 뷰 부분(2120)에 대응하는 수신된 이미지들, 하늘 뷰 부분(2112)에 대응하는 수신된 이미지들, 및 지상 뷰 부분(2124)에 대응하는 수신된 이미지들, 모두 중 하나 이상을 포함한다. 후방 뷰 부분(2118 또는 2120)에 대응하는 예시적인 수신된 이미지들은, 예를 들면, 서있는 청중 또는 관객의 이미지, 앉아있는 청중 또는 관객의 이미지, 상이한 가시적 광고를 갖는 이미지들, 응원하는 관중의 이미지들, 등을 포함한다. 하늘 뷰에 대응하는 예시적인 수신된 이미지들은, 예를 들면, 깨끗한 하늘, 상이한 구름 패턴들, 상이한 시간에 대응하는 상이한 어두움의 정도들, 등을 포함한다. 데이터 정보(2116)는: 제 1 후방 뷰 부분(2130)에 대응하는 제어 정보, 제 2 후방 뷰 부분(2132)에 대응하는 수신된 제어 정보, 하늘 뷰 부분(2134)에 대응하는 수신된 제어 정보, 및 지상 뷰 부분(2136)에 대응하는 수신된 제어 정보, 모두 또는 하나 이상을 추가로 포함한다. 데이터 정보(2116)는 결정된 현재 뷰어 머리 위치(2126), 결정된 현재 시야(2128), 예를 들면 정면 뷰 부분에 대응하는 오른쪽 눈 이미지 및 왼쪽 눈 이미지의 쌍들을 포함하는 수신딘 제 1 콘텐트 스트림(2128), 예를 들면, 합성된 이미지(들)(2140) 및 생성된 출력 이미지들(2142)을 조합하기 위해 이용 가능한 적어도 몇몇 수신된 콘텐트가 존재하는 현재 시야에 대응하는 출력 이미지들(2138)을 생성할 때 사용될 뷰 부분들의 결정된 세트를 추가로 포함한다. 생성된 출력 이미지들(2142). 생성된 출력 이미지들은 제 1, 예를 들면, 전방 뷰 부분에 대응하는 제 1 콘텐트 스트림으로부터 조합된 이미지 콘텐트를 포함하고, 예를 들면, 후방 뷰 부분, 하늘 부분, 또는 지상 부분으로부터 수신된 저장된 이미지의 일 부분을 포함하고, 및/또는 합성된 이미지 또는 합성된 이미지의 일 부분을 포함하는 생성된 출력 이미지를 포함할 수 있고, 때때로 상기 생성된 출력 이미지를 포함한다.Data information 2116 includes: received images corresponding to the first back view portion 2118, received images corresponding to the second rearview portion 2120, received images corresponding to the sky view portion 2112 Images, and received images corresponding to the ground view portion 2124, all of which are shown in FIG. Exemplary received images corresponding to the rear view portion 2118 or 2120 may include, for example, images of a standing audience or audience, images of a sitting audience or audience, images with different visible advertisements, images of a cheering crowd And the like. Exemplary received images corresponding to sky views include, for example, clear skies, different cloud patterns, degrees of different darkness corresponding to different times, and the like. Data information 2116 includes: control information corresponding to first back view portion 2130, received control information corresponding to second rear view portion 2132, received control information corresponding to sky view portion 2134, , And received control information corresponding to the ground view portion 2136, all or one or more. The data information 2116 includes a determined current viewer head position 2126, a determined current view 2128, a received right first eye image corresponding to the front view portion, and a left received first content stream (S) 2140 and corresponding output images 2138 corresponding to the current view in which at least some of the received content available to combine the generated output images 2142 is present, Lt; RTI ID = 0.0 > a < / RTI > The generated output images 2142. The generated output images include a first, e.g., combined image content from a first content stream corresponding to a front view portion, and may include, for example, a back view portion, a sky portion, And / or may comprise a synthesized image or a generated output image comprising a portion of the synthesized image, and sometimes includes the generated output image.

도 22는 일 예시적인 실시예에 따라 도 8의 시스템(800) 또는 도 21의 일 예시적인 콘텐트 재생 시스템(2100)에 포함될 수 있는 모듈들(2200)의 어셈블리의 도면이다. 모듈들(2200)의 어셈블리에서 모듈들은 프로세서(2108) 내하드웨어에서, 예를 들면, 개별적인 회로들로서 완전히 구현될 수 있고, 몇몇 실시예들에서, 그렇게 구현된다. 모듈들(2200)의 어셈블리에서 모듈들은 모듈들의 어셈블리(2115) 내 하드웨어에서, 예를 들면, 상이한 모듈들에 대응하는 개별적인 회로들로서 완전히 구현될 수 있고, 몇몇 실시예들에서 그렇게 구현된다. 다른 실시예들에서, 모듈들의 일부는 프로세서(2108)의 외부에 및 그에 결합된 모듈들의 어셈블리(2115) 내 회로들로서 구현되는 다른 모듈들을 갖는 프로세서(2108) 내, 예를 들면, 회로들로서 구현된다. 이해되는 바와 같이, 프로세서상의 모듈들 및/또는 프로세서 외부에 있는 몇몇 모듈들을 갖는 통합의 레벨은 설계 선택 중 하나일 수 있다.22 is a diagram of an assembly of modules 2200 that may be included in system 800 of FIG. 8 or an exemplary content playback system 2100 of FIG. 21, in accordance with one exemplary embodiment. The modules in the assemblies of the modules 2200 may be fully implemented in hardware within the processor 2108, e.g., as separate circuits, and in some embodiments, so implemented. The modules in the assemblies of modules 2200 may be fully implemented in hardware within the assembly of modules 2115, e.g., as separate circuits corresponding to different modules, and so implemented in some embodiments. In other embodiments, some of the modules are implemented as, for example, circuits in a processor 2108 having other modules implemented as circuits outside of the processor 2108 and in the assemblies 2115 of the modules coupled thereto . As will be appreciated, the level of integration with the modules on the processor and / or some modules external to the processor may be one of the design choices.

대안적으로, 회로들로서 구현되기보다는, 모듈들 모두 또는 그의 일부는 소프트웨어에서 구현될 수 있고 시스템(2100)의 메모리(2112)에 저장될 수 있고, 모듈들이 프로세서, 예를 들면, 프로세서(2108)에 의해 실행될 때, 모듈들은 모듈들에 대응하는 기능들을 수행하기 위해 시스템(2100)의 동작을 제어한다. 몇몇 이러한 실시예들에서, 모듈들의 어셈블리(2200)는 모듈들의 어셈블리(2114)로서 메모리(2112)에 포함된다. 또 다른 실시예들에서, 모듈들의 어셈블리(2200)의 다양한 모듈들은 하드웨어 및 소프트웨어의 조합으로서 구현되고, 예를 들면, 프로세서의 외부의 다른 회로는 소프트웨어 제어 하에서 모듈들의 기능의 일 부분을 수행하도록 동작하는 프로세서(2108)에 입력을 제공한다. 단일 프로세서, 예를 들면, 컴퓨터로서 도 21 실시예에서 도시되지만, 프로세서(2108)는 하나 이상의 프로세서들, 예를 들면, 컴퓨터들로서 구현될 수 있다는 것이 이해되어야 한다.Alternatively, rather than as implemented as circuits, all or a portion of the modules may be implemented in software and stored in memory 2112 of system 2100, and modules may be coupled to a processor, e. The modules control the operation of the system 2100 to perform functions corresponding to the modules. In some such embodiments, the assembly of modules 2200 is included in the memory 2112 as an assembly of modules 2114. In other embodiments, the various modules of the assembly 2200 of modules are implemented as a combination of hardware and software, for example, other circuitry external to the processor may be operable to perform a portion of the functionality of the modules under software control Lt; / RTI > It is to be understood that the processor 2108 may be implemented as one or more processors, e.g., computers, although it is shown in the FIG. 21 embodiment as a single processor, e.g., a computer.

소프트웨어에서 구현될 때, 모듈들은, 프로세서(2108)에 의해 실행될 때, 프로세서(2108)가 모듈에 대응하는 기능을 수행하도록 구성하는 코드를 포함한다. 모듈들의 어셈블리(2200)가 메모리(2112)에 저장되는 실시예들에서, 메모리(2112)는, 적어도 하나의 컴퓨터, 예를 들면, 프로세서(2108)가 모듈들이 대응하는 기능들을 구현하게 하기 위한 코드, 예를 들면, 각각의 모듈에 대한 개별적인 코드를 포함하는 컴퓨터 판독 가능한 매체를 포함하는 컴퓨터 프로그램 제품이다.When implemented in software, the modules include code that, when executed by the processor 2108, configures the processor 2108 to perform a function corresponding to the module. In embodiments in which the assembly 2200 of modules is stored in a memory 2112, the memory 2112 may include code for causing at least one computer, e.g., processor 2108, For example, a computer program product comprising a computer readable medium comprising individual code for each module.

완전하게 하드웨어 기반 또는 완전하게 소프트웨어 기반 모듈들이 사용될 수 있다. 그러나, 소프트웨어 및 하드웨어의 임의의 조합, 예를 들면, 회로 구현된 모듈들이 기능들을 구현하기 위해 사용될 수 있는 것이 이해되어야 한다. 이해되는 바와 같이, 도 22에 도시된 모듈들은 도 20의 플로차트(2000)의 방법에 도시 및/또는 기술된 대응하는 단계들의 기능들을 수행하도록 시스템(2100) 또는 프로세서(2108)와 같은 그 내부의 요소들을 제어 및/또는 구성한다. 따라서, 모듈들의 어셈블리(2200)는 도 20의 하나 이상의 단계들에 대응하는 기능들을 수행하는 다양한 모듈들을 포함한다.Completely hardware-based or completely software-based modules can be used. However, it should be understood that any combination of software and hardware, for example, circuit implemented modules, may be used to implement the functions. As will be appreciated, the modules shown in FIG. 22 may be implemented as a system 2100 or processor 2108 to perform the functions of corresponding steps shown and / or described in the method of flowchart 2000 of FIG. Controls and / or configures the elements. Thus, the assembly of modules 2200 includes various modules that perform the functions corresponding to one or more of the steps of FIG.

모듈들의 어셈블리(2200)는 뷰어 머리 위치 결정 모듈(2202), 현재 시야 결정 모듈(2204), 콘텐트 스트림 선택 모듈(2206), 콘텐트 스트림 수신 모듈(2208), 이미지 수신 모듈(2210), 수신된 이미지 저장 모듈(2212), 제어 정보 수신 모듈(2214), 출력 이미지 생성 모듈(2216), 출력 모듈(2242), 디스플레이 모듈(2244), 및 제어 루틴들(2246)을 포함한다.The assembly of modules 2200 includes a viewer head positioning module 2202, a current view determination module 2204, a content stream selection module 2206, a content stream reception module 2208, an image reception module 2210, A storage module 2212, a control information receiving module 2214, an output image generating module 2216, an output module 2242, a display module 2244, and control routines 2246.

뷰어 머리 위치 결정 모듈(2202)은 뷰어의 머리 위치를 결정하도록 구성되고, 상기 머리 위치는 현재 시야에 대응한다. 현재 시야 결정 모듈(2204)은 상기 결정된 머리 위치에 기초하여 상기 뷰어의 현재 시야를 결정하도록 구성된다.The viewer head positioning module 2202 is configured to determine the head position of the viewer, and the head position corresponds to the current field of view. The current field of view determination module 2204 is configured to determine a current field of view of the viewer based on the determined head position.

콘텐트 스트림 선택 모듈(2206)은 예를 들면, 사용자, 예를 들면 뷰어, 입력에 기초하여 복수의 대안적인 콘텐트 스트림들 중에서, 콘텐트 스트림을 선택하도록 구성된다. 상이한 콘텐트 스트림들은 상이한 이벤트들에 대응할 수 있다. 다양한 실시예들에서, 동일한 이벤트에 대응하는 상이한 콘텐트 스트림들은, 예를 들면, 뷰어에게 대안적인 정면 뷰 시각들을 제공하기 위해 상이한 방향들로 향하는 상이한 카메라들에 대응한다. 몇몇 실시예에서, 선택될 수 있는 이미지 스트림들 중 적어도 일부는 왼쪽 눈 이미지 및 오른쪽 눈 이미지 쌍들을 포함하는 입체 영상 이미지 콘텐트를 포함한다.The content stream selection module 2206 is configured to select a content stream from among a plurality of alternative content streams based on, for example, a user, e.g., a viewer, input. The different content streams may correspond to different events. In various embodiments, the different content streams corresponding to the same event correspond, for example, to different cameras directed to different directions to provide alternative front view views to the viewer. In some embodiments, at least some of the selectable image streams include stereoscopic image content that includes left eye image and right eye image pairs.

콘텐트 스트림 수신 모듈(2208)은 일 실시예의 제 1 위치, 예를 들면, 전방 부분 뷰에 대응하는 콘텐트를 제공하는 제 1 콘텐트 스트림을 수신하도록 구성된다. 다양한 실시예들에서, 제 1 콘텐트 스트림에 수신된 제 1 이미지 콘텐트는 왼쪽 눈 이미지 및 오른쪽 눈 이미지의 쌍들을 포함하는 입체 영상 이미지 콘텐트이다.The content stream receiving module 2208 is configured to receive a first content stream that provides content corresponding to a first location, e. G., A forward partial view, of an embodiment. In various embodiments, the first image content received in the first content stream is stereoscopic image content comprising pairs of left eye image and right eye image.

이미지 수신 모듈(2210)은 하나 이상의 상이한 뷰 부분들, 예를 들면, 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분, 및 지상 뷰 부분에 대응하는 이미지들을 수신하도록 구성된다. 이미지 수신 모듈(2210)은 상기 환경의 제 2 부분에 대응하는 제 1 이미지를 수신하도록 구성된다. 몇몇 이러한 실시예들에서, 이미지 수신 모듈은 또한 환경의 상기 제 2 부분에 대응하는 하나 이상의 추가 이미지들을 수신하도록 구성되고, 상기 하나 이상의 추가 이미지들은 적어도 제 2 이미지를 포함하는 환경의 상기 제 2 부분에 대응한다. 몇몇 실시예들에서, 상기 환경의 제 2 부분은 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분, 또는 지상 뷰 부분 중 하나이다. 몇몇 실시예들에서, 상기 환경의 제 2 부분은 제 1 후방 뷰 부분 또는 제 2 후방 뷰 부분 중 하나이다. 몇몇 실시예들에서, 이미지 수신 모듈(2210)은 상기 환경의 제 3 부분에 대응하는 하나 이상의 이미지들을 수신하도록 구성된다. 몇몇 실시예들에서, 환경의 제 1 부분은 정면 뷰 부분이고 환경의 제 3 부분은 하늘 뷰 또는 지상 뷰 부분 중 하나이다.The image receiving module 2210 is configured to receive images corresponding to one or more different view portions, e.g., a first rearview portion, a second rearview portion, a sky view portion, and a ground view portion. An image receiving module 2210 is configured to receive a first image corresponding to a second portion of the environment. In some such embodiments, the image receiving module is also configured to receive one or more additional images corresponding to the second portion of the environment, wherein the one or more additional images include at least a second portion of the environment . In some embodiments, the second portion of the environment is one of a first rearview portion, a second rearview portion, a sky view portion, or a ground view portion. In some embodiments, the second portion of the environment is one of a first rearview portion or a second rearview portion. In some embodiments, the image receiving module 2210 is configured to receive one or more images corresponding to a third portion of the environment. In some embodiments, the first portion of the environment is the front view portion and the third portion of the environment is the sky view or the ground view portion.

몇몇 실시예들에서, 이미지 수신 모듈(2210)은 상기 환경의 제 1 후방 뷰 부분에 대응하는 제 1 이미지를 수신하도록 구성되고, 상기 환경의 상기 제 1 후방 뷰 부분에 대응하는 하나 이상의 추가 이미지들을 수신하도록 또한 구성되고, 상기 제 1 후방 뷰 부분에 대응하는 상기 하나 이상의 추가 이미지들은 상기 제 1 후방 뷰 부분에 대응하는 적어도 하나의 제 2 이미지를 포함한다. 몇몇 실시예들에서, 이미지 수신 모듈(2210)은 상기 환경의 제 2 후방 뷰 부분에 대응하는 제 1 이미지를 수신하도록 구성되고 상기 환경의 상기 제 2 후방 뷰 부분에 대응하는 하나 이상의 추가 이미지들을 수신하도록 또한 구성되고, 상기 제 2 후방 뷰 부분에 대응하는 상기 하나 이상의 추가 이미지들은 상기 제 2 후방 뷰 부분에 대응하는 적어도 하나의 제 2 이미지를 포함한다. 몇몇 실시예들에서, 이미지 수신 모듈(2210)은 상기 환경의 하늘 뷰 부분에 대응하는 하나 이상의 이미지들을 수신하도록 구성된다. 몇몇 실시예들에서, 이미지 수신 모듈(2210)은 상기 환경의 지상 뷰 부분에 대응하는 하나 이상의 이미지들을 수신하도록 구성된다.In some embodiments, the image receiving module 2210 is configured to receive a first image corresponding to a first rearview portion of the environment, and to receive one or more additional images corresponding to the first rearview portion of the environment Wherein the one or more additional images corresponding to the first rearview portion include at least one second image corresponding to the first rearview portion. In some embodiments, the image receiving module 2210 is configured to receive a first image corresponding to a second rear view portion of the environment and to receive one or more additional images corresponding to the second rearview portion of the environment And wherein the one or more additional images corresponding to the second rearview portion include at least one second image corresponding to the second rearview portion. In some embodiments, the image receiving module 2210 is configured to receive one or more images corresponding to the sky view portion of the environment. In some embodiments, the image receiving module 2210 is configured to receive one or more images corresponding to a ground view portion of the environment.

수신된 이미지 저장 모듈(2212)은 수신된 이미지 저장 모듈(2212)에 의해 수신된 이미지들을 저장하도록 구성된다. 수신된 이미지 저장 모듈(2212)은 환경의 상기 제 2 부분에 대응하는 제 1 이미지를 저장하도록 구성된다. 수신된 이미지 저장 모듈(2212)은 환경의 제 2 부분에 대응하는 하나 이상의 추가 이미지들을 저장하도록 구성된다. 수신된 이미지 저장 모듈(2212)은 상기 환경의 제 3 부분에 대응하는 수신된 하나 이상의 이미지들을 저장하도록 구성된다. 다양한 실시예들에서, 수신된 이미지 저장 모듈(2212)은 상기 환경의 상기 제 1 후방 뷰 부분에 대응하는 제 1 이미지, 및 상기 환경의 상기 제 1 후방 뷰 부분에 대응하는 하나 이상의 추가 이미지들을 저장하도록 구성된다. 몇몇 실시예들에서, 수신된 이미지 저장 모듈(2212)은 상기 환경의 상기 하늘 뷰 부분에 대응하는 하나 이상의 추가 이미지들을 저장하도록 구성된다. 몇몇 실시예들에서, 수신된 이미지 저장 모듈(2212)은 상기 환경의 상기 지상 뷰 부분에 대응하는 하나 이상의 이미지들을 저장하도록 구성된다.The received image storage module 2212 is configured to store the images received by the received image storage module 2212. The received image storage module 2212 is configured to store a first image corresponding to the second portion of the environment. The received image storage module 2212 is configured to store one or more additional images corresponding to a second portion of the environment. The received image storage module 2212 is configured to store the received one or more images corresponding to a third portion of the environment. In various embodiments, the received image storage module 2212 stores a first image corresponding to the first rear view portion of the environment, and one or more additional images corresponding to the first rearview portion of the environment . In some embodiments, the received image storage module 2212 is configured to store one or more additional images corresponding to the sky view portion of the environment. In some embodiments, the received image storage module 2212 is configured to store one or more images corresponding to the above-ground view portion of the environment.

제어 정보 수신 모듈(2214)은 상기 환경의 제 2 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 제 1 콘텐트 스트림에 나타내진 재생 시간들에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하도록 구성된다. 다양한 실시예들에서, 제어 정보 수신 모듈(2214)은 상기 환경의 제 3 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 제 1 콘텐트 스트림에 나타내진 재생 시간들에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하도록 또한 구성된다. 몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 환경의 제 2 부분에 대응하는 복수의 이미지들 중 어느 것이 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하도록 구성된다. 몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 환경의 제 3 부분에 대응하는 복수의 이미지들 중 어느 것이 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하도록 구성된다.Control information receiving module 2214 receives control information indicating which of a plurality of previously delivered images corresponding to a second portion of the environment should be displayed for a playback time measured with respect to playback times indicated in the first content stream Information. In various embodiments, the control information receiving module 2214 may determine which of the plurality of previously delivered images corresponding to the third portion of the environment is the playback time measured with respect to the playback times represented in the first content stream Lt; RTI ID = 0.0 > a < / RTI > In some embodiments, control information receiving module 2214 is configured to receive image selection information that indicates which of a plurality of images corresponding to a second portion of the environment should be used during a portion of an event. In some embodiments, the control information receiving module 2214 is configured to receive image selection information indicating which of a plurality of images corresponding to a third portion of the environment should be used during a portion of the event.

몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 상기 환경의 상기 제 1 후방 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1콘텐트 스트림에서 재생 시간에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하도록 구성된다. 몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 환경의 상기 제 1 후방 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하도록 구성된다. 몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 상기 환경의 상기 제 2 후방 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에서 재생 시간에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하도록 구성된다. 몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 환경의 상기 제 2 후방 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하도록 구성된다.In some embodiments, the control information receiving module 2214 may be configured to determine which of the plurality of previously delivered images corresponding to the first rear view portion of the environment is a playback Lt; / RTI > is to be displayed for a period of time. In some embodiments, the control information receiving module 2214 receives image selection information indicating which of a plurality of previously delivered images corresponding to the first rear view portion of the environment should be used during a portion of an event . In some embodiments, the control information receiving module 2214 may determine which of the plurality of previously delivered images corresponding to the second rear view portion of the environment is a playback Lt; / RTI > is to be displayed for a period of time. In some embodiments, the control information receiving module 2214 receives image selection information indicating which of a plurality of previously delivered images corresponding to the second rear view portion of the environment should be used during a portion of an event .

몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 상기 환경의 상기 하늘 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에서 재생 시간에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하도록 구성된다. 몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 환경의 상기 하늘 뷰 부분에 대응하는 복수의 이미지들 중 어느 것이 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하도록 구성된다. 몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 상기 환경의 상기 지상 뷰 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에서 재생 시간에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하도록 구성된다. 몇몇 실시예들에서, 제어 정보 수신 모듈(2214)은 환경의 상기 지상 뷰 부분에 대응하는 복수의 이미지들 중 어느 것이 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하도록 구성된다.In some embodiments, the control information receiving module 2214 may be configured to determine which of a plurality of previously delivered images corresponding to the sky view portion of the environment is to be played during a playback time measured in terms of playback time in the first content stream And to receive control information indicating whether it should be displayed. In some embodiments, the control information receiving module 2214 is configured to receive image selection information indicating which of a plurality of images corresponding to the sky view portion of the environment should be used during a portion of an event. In some embodiments, the control information receiving module 2214 may be configured to determine which of the plurality of previously delivered images corresponding to the terrestrial view portion of the environment is to be played during a playback time measured in terms of playback time in the first content stream And to receive control information indicating whether it should be displayed. In some embodiments, the control information receiving module 2214 is configured to receive image selection information that indicates which of a plurality of images corresponding to the above-ground view portion of the environment should be used during a portion of an event.

출력 이미지 생성 모듈(2216)은: 환경의 제 1 부분 뷰에 대응하는 제 1 콘텐트 스트림으로부터 수신된 콘텐트, 환경의 제 1 후방 뷰 부분에 대응하는 저장된 수신된 이미지, 환경의 제 2 후방 뷰 부분에 대응하는 저장된 수신된 이미지, 환경의 하늘 뷰 부분에 대응하는 저장된 수신된 이미지, 환경의 지상 뷰 부분에 대응하는 저장된 수신된 이미지, 또는 이미지가 이용 가능하지 않은 현재 시야의 일 부분에 대응하는 합성된 이미지, 중 적어도 하나에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성된다. 출력 이미지 생성 모듈(2216)은 뷰 부분 세트 결정 모듈(2218), 콘텐트 스트림 전용 결정 모듈(2220), 누락 부분 결정 모듈(2222), 이미지 합성기 모듈(2224), 및 콘텐트 스트림 출력 이미지 생성 모듈(2226), 합성된 출력 이미지 생성 모듈(2228), 출력 이미지 콘텐트 스트림 기반 생성 모듈(2230), 및 출력 이미지 비스트림 기반 생성 모듈(2236)을 포함한다.Output image generation module 2216 includes: content received from a first content stream corresponding to a first partial view of the environment, a stored received image corresponding to a first rear view portion of the environment, A stored received image corresponding to the sky view portion of the environment, a stored received image corresponding to the ground view portion of the environment, or a composite image corresponding to a portion of the current view in which the image is not available, Image, based on at least one of the plurality of output images. Output image generation module 2216 includes a view portion set determination module 2218, a content stream only determination module 2220, a missing portion determination module 2222, an image synthesizer module 2224, and a content stream output image generation module 2226 A synthesized output image generation module 2228, an output image content stream based generation module 2230, and an output image non-stream based generation module 2236.

뷰 부분 세트 결정 모듈(2218)은, 현재 시야에 기초하여, 예를 들면, 하나 이상의 출력 이미지들을 생성할 때 사용될 상기 환경의 이용 가능한 적어도 일부 이미지 콘텐트가 존재하는, 뷰 부분들의 일 세트를 결정하도록 구성된다. 몇몇 예시적인 결정된 세트들은, 예를 들면, {}, {정면 뷰 부분}, {제 1 후방 뷰 부분}, {제 2 후방 뷰 부분}, {하늘 뷰 부분}, {지상 뷰 부분}, {전방 뷰 부분, 하늘 뷰 부분}, {전방 뷰 부분, 지상 뷰 부분}, {전방 뷰 부분, 제 1 후방 뷰 부분}, {전방 뷰 부분, 제 2 후방 뷰 부분}, {전방 뷰 부분, 제 1 후방 뷰 부분, 하늘 뷰 부분}, {전방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분}, {전방 뷰 부분, 제 1 후방 뷰 부분, 지상 뷰 부분}, {전방 뷰 부분, 제 2 후방 뷰 부분, 지상 뷰 부분}, {제 1 후방 뷰 부분, 하늘 뷰 부분}, {제 1 후방 뷰 부분, 지상 뷰 부분}, {제 1 후방 뷰 부분, 제 2 후방 뷰 부분}, {제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분}, {제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 지상 뷰 부분}, {제 2 후방 뷰 부분, 하늘 뷰 부분}, 및 {제 2 후방 뷰 부분, 지상 뷰 부분}을 포함한다.View subset determination module 2218 is configured to determine a set of view portions, based on the current view, for example, where at least some of the available image content of the environment to be used when generating one or more output images exists . Some exemplary determined sets include, for example, {}, {front view portion}, {first rear view portion}, {second rear view portion}, {sky view portion}, {ground view portion} A forward view portion, a first rear view portion, a forward view portion, a second rear view portion, a forward view portion, a first rear view portion, A first rear view portion, a ground view portion, a forward view portion, a second rear view portion, and a second rear view portion. , A first rear view portion, a second rear view portion}, a first rear view portion, a first rear view portion, a second rear view portion, Second back view portion, sky view portion}, {first rearview portion, second rearview portion, ground view portion}, {second rearview portion, skyview portion} Ground view portion} The.

콘텐트 스트림 전용 결정 모듈(2220)은, 하나 이상의 출력 이미지들이 다른 부분 뷰들, 예를 들면, 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분 또는 지상 뷰 부분으로부터 저장된 수신된 이미지들, 또는 합성된 이미지에 의존해야 하지 않고 제 1 콘텐트 스트림 내 콘텐트에 기초하여 생성되는 것인지를 결정하도록 구성된다. 콘텐트 스트림 전용 결정 모듈(2220)은 결정된 세트가 제 1 콘텐트 스트림에 대응하는 제 1, 예를 들면, 전방 뷰 부분인 단일 요소를 포함하는지를 검사하고, 시야가 제 1, 예를 들면, 전방 뷰 부분 내에 있는지를 검사하도록 구성된다.The content stream-only determination module 2220 determines whether the one or more output images are received images that are stored from other partial views, e.g., the first back view portion, the second back view portion, the sky view portion, And is based on the content in the first content stream without having to rely on the synthesized image. Content stream only determination module 2220 determines whether the determined set includes a single element that is a first, e.g., a forward view portion, corresponding to the first content stream, and if the view is a first, e.g., Or the like.

누락 부분 결정 모듈(2222)은, 이미지가 현재 시야의 일 부분에 대해 이용 가능하지 않은 것, 예를 들면, 이미지가 환경의 정면 뷰에 대응하는 제 1 콘텐트 스트림으로부터 또는 환경의 다른 부분에 대응하는 수신된 저장된 이미지로부터 이미지가 이용 가능하지 않다는 것을 결정하도록 구성된다. 이미지 합성기 모듈(2224)은 이미지가 이용 가능하지 않은 현재 시야의 상기 부분에 대해 사용될 이미지를 합성하도록 구성된다. 다양한 실시예들에서, 이미지 합성기 모듈(2224)은, 예를 들면, 경계상의 전체 일부에 대해 허용하도록, 누락 부분을 채우기 위해 필요되는 것보다 약간 큰 합성된 이미지를 생성한다.Missing portion determination module 2222 determines whether an image is not available for a portion of the current view, for example, if the image corresponds to a first content stream that corresponds to a front view of the environment or to another portion of the environment And to determine that an image is not available from the received stored image. The image synthesizer module 2224 is configured to synthesize the image to be used for the portion of the current field of view where no image is available. In various embodiments, the image synthesizer module 2224 generates a composite image that is slightly larger than needed to fill the missing portion, for example, to allow for the entire portion on the boundary.

콘텐트 스트림 출력 이미지 생성 모듈(2226)은 결정된 세트가 단지 제 1 뷰 부분만을, 예를 들면, 정면 뷰 부분만을 포함하고, 예를 들면, 콘텐트 스트림 전용 결정 모듈(2220)에 의해 결정되는, 제 1 뷰 부분 밖에 현재 시야의 부분들이 존재하지 않을 때 제 1 콘텐트 스트림으로부터 수신된 콘텐트에만 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성된다. 몇몇 실시예들에서, 콘텐트 스트림 출력 이미지 생성 모듈(2226)은 제 1 콘텐트 스트림으로부터 획득된 이미지에 대한 크롭핑 동작을 수행한다.The content stream output image generation module 2226 determines whether the determined set includes only the first view portion, e.g., only the front view portion, And to generate one or more output images corresponding to the current field of view based on the content received from the first content stream when portions of the current field of view are outside the view region. In some embodiments, the content stream output image generation module 2226 performs a cropping operation on the image obtained from the first content stream.

출력 이미지 콘텐트 스트림 기반 생성 모듈(2230)은, 예를 들면, 정면 뷰에 대응하는, 제 1 콘텐트 스트림에 포함된 적어도 몇몇 수신된 콘텐트, 및 ⅰ) 환경의 제 2 부분에 대응하는 저장된 콘텐트, 예를 들면, 제 1 후방 뷰, 제 2 후방 뷰, 하늘 뷰 또는 지상 뷰에 대응하는 저장된 이미지, 또는 ⅱ) 환경의 제 2 부분을 시뮬레이션하는 합성 이미지로서, 이미지가 이용 가능하지 않은 시야의 일 부분을 시뮬레이션하는, 상기 합성 이미지에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성된다. 환경의 제 2 부분에 대응하는 저장된 콘텐트는 예를 들면, 수신된 이미지 저장 모듈(2212)에 의해 저장된 저장 이미지이다. 합성 이미지는, 예를 들면, 모듈(2224)에 의해 생성된 이미지이다. 몇몇 실시예들에서, 출력 이미지 콘텐트 스트림 기반 생성 모듈(2230)은 수신된 이미지 선택 정보에 기초하여 환경의 상기 제 2 부분에 대응하는 이미지를 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성되는 부분으로서 선택하도록 구성된다.Output image content stream based generation module 2230 may include at least some received content included in the first content stream, e.g., corresponding to a front view, and i) stored content corresponding to a second portion of the environment, e.g., A stored image corresponding to a first rear view, a second rear view, a sky view or a ground view, or ii) a composite image that simulates a second portion of the environment, And to generate one or more output images corresponding to the current field of view based on the synthesized image. The stored content corresponding to the second portion of the environment is, for example, a stored image stored by the received image storage module 2212. The composite image is, for example, an image generated by module 2224. In some embodiments, the output image content stream based generation module 2230 is configured to generate an image corresponding to the second portion of the environment based on the received image selection information, As a part.

출력 이미지 콘텐트 스트림 기반 생성 모듈(2230)은 생성되는 출력 이미지로 하나 이상의 합성된 이미지를 통합하도록 구성된 합성된 이미지 통합 모듈(2232)을 포함한다. 합성된 이미지 통합 모듈(2232)은, 현재 시야에 대응하는 이미지를 생성하기 위해, 수신된 이미지, 예를 들면, 제 1, 예를 들면, 수신된 제 1 콘텐트 스트림으로부터 획득된 정면 뷰 부분으로부터 수신된 이미지, 또는 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분, 또는 지상 뷰 부분 중 하나에 대응하는 저장된 수신된 이미지의 적어도 일 부분과 합성된 이미지를 조합하도록 구성된다. 저장된 이미지 통합 모듈(2134)은 하나 이상의 저장된 이미지들의 일 부분을 생성되는 출력 이미지로 통합하도록 구성된다. 출력 이미지를 생성하는 부분으로서, 모듈(2230), 모듈(2232), 및/또는 모듈(2234)은 경계 영역들에서 혼합을 수행한다. 다양한 실시예들에서, 혼합 단계는 필터링, 블러링, 휘도 변동들 및/또는 컬러 변동들을 포함한다.Output image content stream based generation module 2230 includes a synthesized image integration module 2232 configured to integrate one or more synthesized images into an output image to be generated. The combined image integration module 2232 may be configured to receive from the received image, e.g., a first, e.g., a front view portion obtained from the received first content stream to generate an image corresponding to the current view Or combined with at least a portion of the stored received image corresponding to one of the first back view portion, the second back view portion, the sky view portion, or the ground view portion. The stored image integration module 2134 is configured to integrate a portion of one or more stored images into an output image to be generated. As part of generating an output image, module 2230, module 2232, and / or module 2234 perform mixing in the border regions. In various embodiments, the blending step includes filtering, blurring, luminance variations and / or color variations.

출력 이미지 비스트림 기반 생성 모듈(2236)은: ⅰ) 환경의 일 부분에 대응하는 저장된 콘텐트, 예를 들면, 제 1 후방 뷰, 제 2 후방 뷰, 하늘 뷰, 또는 지상 뷰에 대응하는 저장된 이미지, 또는 ⅱ) 환경의 일 부분을 시뮬레이션하는 합성 이미지, 예를 들면 이미지가 이용가능하지 않은 시야의 일 부분을 시뮬레이션하는 합성 이미지, 중 적어도 하나에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성된다. 모듈(2236)은 현재 시야가 제 1, 예를 들면, 제 1 콘텐트 스트림에 대응하는 정면 뷰 부분에 대응하는 영역 밖에 있을 때 하나 이상의 이미지들을 생성한다. 몇몇 실시예들에서, 출력 이미지 비콘텐트 스트림 기반 생성 모듈(2236)은 수신된 이미지 선택 정보에 기초하여 환경의 상기 제 2 부분에 대응하는 이미지를, 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성되는 부분으로서 선택하도록 구성된다.Output image non-stream based generation module 2236 may include: i) a stored image corresponding to a portion of the environment, e.g., a first back view, a second rear view, a sky view, or a stored image corresponding to a ground view, Or ii) a composite image that simulates a portion of the environment, e.g., a composite image that simulates a portion of the field of view where an image is not available, to generate one or more output images corresponding to the current field of view based on at least one of . Module 2236 generates one or more images when the current view is outside the area corresponding to the first, e.g., the front view portion corresponding to the first content stream. In some embodiments, the output image non-content stream based generation module 2236 generates an image corresponding to the second portion of the environment based on the received image selection information, to generate one or more output images corresponding to the current field of view As a constituent part.

출력 이미지 비스트림 기반 생성 모듈(2236)은 하나 이상의 합성된 이미지들을 생성되는 출력 이미지로 통합하도록 구성된 합성 이미지 통합 모듈(2238)을 포함한다. 합성 이미지 통합 모듈(2238)은 현재 시야에 대응하는 이미지를 생성하기 위해, 수신된 이미지, 예를 들면, 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분, 또는 지상 뷰 부분으로부터 수신된 이미지의 적어도 일 부분과 합성된 이미지를 조합하도록 구성된다. 저장된 이미지 통합 모듈(2240)은 하나 이상의 저장된 이미지들의 일 부분을 생성되는 출력 이미지로 통합하도록 구성된다. 출력 이미지를 생성하는 부분으로서, 모듈(2236), 모듈(2232), 및/또는 모듈(2234)은 경계 영역들에서 혼합을 수행한다. 다양한 실시예들에서, 혼합은 필터링, 블러링, 휘도 변동들 및/또는 컬러 변동들을 포함한다.Output image non-stream based generation module 2236 includes a composite image integration module 2238 configured to integrate one or more composite images into an output image to be generated. Composite image integration module 2238 may be configured to receive a received image from a received image, e.g., a first back view portion, a second rear view portion, a sky view portion, or a ground view portion, And to combine the synthesized image with at least a portion of the image. The stored image integration module 2240 is configured to integrate a portion of one or more stored images into an output image to be generated. As part of generating an output image, module 2236, module 2232, and / or module 2234 perform mixing in the border regions. In various embodiments, the blending includes filtering, blurring, luminance variations and / or color variations.

출력 모듈(2242)은, 예를 들면, 출력 이미지 콘텐트 스트림 기반 생성 모듈(2130), 콘텐트 스트림 출력 이미지 생성 모듈(2130), 및 출력 이미지 비콘텐트 스트림 기반 생성 모듈(2236)에 의해 생성된, 하나 이상의 생성된 출력 이미지들을 출력하도록 구성되고, 상기 하나 이상의 출력 이미지들은 제 1 출력 이미지를 포함한다. 출력 모듈은 예를 들면, 네트워크 인터페이스(2110) 및/또는 디스플레이 디바이스 인터페이스(2103)를 통해, 제 1 출력 이미지를 출력하도록 구성된다.Output module 2242 may be one or more of the output image content stream based generation module 2130, the content stream output image generation module 2130, and the output image non-content stream based generation module 2236, And output the generated output images, wherein the one or more output images comprise a first output image. The output module is configured to output the first output image, for example, via the network interface 2110 and / or the display device interface 2103.

디스플레이 모듈(2244)은, 예를 들면, 출력 이미지 콘텐트 스트림 기반 생성 모듈(2230), 콘텐트 스트림 출력 이미지 생성 모듈(2230), 및 출력 이미지 비콘텐트 스트림 기반 생성 모듈(2136)에 의해 생성된 하나 이상의 생성된 출력 이미지들을 디스플레이하도록 구성되고, 상기 하나 이상의 출력 이미지들은 제 1 출력 이미지를 포함한다. 디스플레이 모듈(2244)은, 예를 들면, 디스플레이(2102) 및/또는 디스플레이(2105)를 통해, 제 1 출력 이미지를 디스플레이하도록 구성된다.Display module 2244 may include one or more of the output image content stream based generation module 2230, the content stream output image generation module 2230, and the output image non content stream based generation module 2136, for example, And display the generated output images, wherein the one or more output images comprise a first output image. Display module 2244 is configured to display a first output image, e.g., via display 2102 and / or display 2105. [

제어 루틴들(2246)은 시스템(2100)의 동작을 제어하기 위한 디바이스 제어 루틴들 및 통신 루틴들을 포함한다.Control routines 2246 include device control routines and communication routines for controlling the operation of system 2100. [

일 예시적인 콘텐트 재생 시스템, 예를 들면, 본 발명에 따른, 도 21의 시스템(2100)은: 뷰어의 머리 위치를 결정하도록 구성된 뷰어 머리 위치 결정 모듈(2202)로서, 상기 머리 위치는 현재 시야에 대응하는, 상기 뷰어 머리 위치 결정 모듈(2202); 환경의 제 1 부분에 대응하는 콘텐트를 제공하는 제 1 콘텐트 스틀미을 수신하도록 구성된 콘텐트 스트림 수신 모듈; 상기 제 1 콘텐트 스트림에 포함된 적어도 일부 수신된 콘텐트 및 ⅰ) 상기 환경의 제 2 부분에 대응하는 저장된 콘텐트, 또는 ⅱ) 상기 환경의 제 2 부분에 시뮬레이션하는 합성 이미지에 기초하여 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성된 출력 이미지 콘텐트 스트림 기반 생성 모듈(2330); 및 제 1 출력 이미지를 출력하도록 구성된 출력 모듈(2242) 또는 제 1 출력 이미지를 디스플레이하도록 구성된 디스플레이 모듈(2244), 중 적어도 하나로서, 상기 제 1 출력 이미지는 하나 이상의 생성된 출력 이미지들 중 하나인, 상기 출력 모듈(2242) 또는 상기 디스플레이 모듈(2244) 중 적어도 하나를 포함한다.An exemplary content playback system, e.g., system 2100 of FIG. 21, according to the present invention, includes: a viewer head positioning module 2202 configured to determine a viewer's head position, Corresponding viewer head positioning module 2202; A content stream receiving module configured to receive a first content content that provides content corresponding to a first portion of the environment; At least some received content included in the first content stream and i) stored content corresponding to a second portion of the environment, or ii) a second portion corresponding to the current view based on the composite image simulating the second portion of the environment An output image content stream based generation module (2330) configured to generate one or more output images; And a display module (2244) configured to display a first output image, wherein the first output image is one of one or more generated output images , The output module 2242, or the display module 2244.

몇몇 실시예들에서, 상기 콘텐트 재생 시스템(2100)은 콘텐트 디바이스(2100')이다. 몇몇 실시예들에서, 상기 콘텐트 재생 시스템(2100)은 디스플레이(2105)에 결합된 컴퓨터 시스템(2100')이다.In some embodiments, the content playback system 2100 is a content device 2100 '. In some embodiments, the content playback system 2100 is a computer system 2100 'coupled to the display 2105. [

몇몇 실시예들에서, 시스템은: 상기 환경의 상기 제 2 부분에 대응하는 제 1 이미지를 수신하도록 구성된 이미지 수신 모듈(2210); 및 상기 환경의 상기 제 2 부분에 대응하는 상기 제 1 이미지를 저장하도록 구성된 수신된 이미지 저장 모듈(2212)을 추가로 포함한다.In some embodiments, the system comprises: an image receiving module (2210) configured to receive a first image corresponding to the second portion of the environment; And a received image storage module (2212) configured to store the first image corresponding to the second portion of the environment.

다양한 실시예들에서, 상기 환경의 상기 제 2 부분의 상기 제 1 이미지는 제 1 시점에 대응하고, 상기 출력 이미지 콘텐트 스트림 기반 생성 모듈(2239)은 제 2 시점에서 캡처된 상기 제 1 콘텐트 스트림으로부터 획득된 콘텐트를 상기 제 1 시점에 대응하는 상기 제 1 이미지와 조합하도록 구성되고, 상기 제 1 및 제 2 시점들은 상이하다. 몇몇 이러한 실시예들에서, 상기 제 1 시점은 상기 제 2 시점에 선행하는 시간에 대응한다. 다양한 실시예들에서, 상기 제 1 시점은 상기 제 1 콘텐트 스트림이 캡처되는 이미지들이 포함되는 동안 실시간 이벤트의 시간에 선행한다.In various embodiments, the first image of the second portion of the environment corresponds to a first viewpoint, and the output image content stream-based generation module 2239 generates a second image stream from the first content stream captured at a second viewpoint And combine the acquired content with the first image corresponding to the first viewpoint, wherein the first and second viewpoints are different. In some such embodiments, the first viewpoint corresponds to a time preceding the second viewpoint. In various embodiments, the first viewpoint precedes the time of the real-time event while the images in which the first content stream is captured are included.

몇몇 실시예들에서, 상기 이미지 수신 모듈(2210)은 상기 환경의 상기 제 2 부분에 대응하는 하나 이상의 추가 이미지들을 수신하도록 또한 구성되고, 상기 환경의 상기 제 2 부분에 대응하는 상기 하나 이상의 추가 이미지들은 적어도 제 2 이미지를 포함한다.In some embodiments, the image receiving module 2210 is further configured to receive one or more additional images corresponding to the second portion of the environment, wherein the one or more additional images corresponding to the second portion of the environment At least a second image.

다양한 실시예들에서, 시스템은: 상기 환경의 상기 제 2 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에 나타내진 재생 시간들에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하도록 구성된 제어 정보 수신 모듈(2214)을 추가로 포함한다.In various embodiments, the system may be configured to: display any of a plurality of previously delivered images corresponding to the second portion of the environment during a playback time measured with respect to playback times indicated in the first content stream And a control information receiving module 2214 configured to receive control information indicating whether the control information is received.

몇몇 실시예들에서, 상기 환경의 상기 제 2 부분은 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분 또는 지상 뷰 부분 중 하나이다. 몇몇 이러한 실시예들에서, 상기 이미지 수신 모듈(2210)은 상기 환경의 제 3 부분에 대응하는 하나 이상의 이미지들을 수신하도록 또한 구성된다. In some embodiments, the second portion of the environment is one of a first rearview portion, a second rearview portion, a sky view portion, or a ground view portion. In some such embodiments, the image receiving module 2210 is also configured to receive one or more images corresponding to a third portion of the environment.

몇몇 실시예들에서, 상기 환경의 상기 제 1 부분은 정면 뷰 부분이고; 상기 제 3 부분은 하늘 뷰 또는 지상 뷰 부분 중 하나이고, 이미지들은 상기 제 1, 제 2, 및 제 3 부분들에 대응하여 상이한 레이트들에서 수신되고, 더 많은 이미지들이 상기 제 2 부분보다 상기 제 1 부분에 대응하는 이벤트에 대해서 수신된다.In some embodiments, the first portion of the environment is a front view portion; Wherein the third portion is one of a sky view or a ground view portion, images are received at different rates corresponding to the first, second, and third portions, and more images are received at different rates than the second portion 1 < / RTI >

몇몇 실시예들에서, 상기 제 1 부분에 대응하는 상기 콘텐트는 이벤트가 진행중인 동안 상기 재생 디바이스로 캡처 및 스트리밍되는 실시간 콘텐트를 포함하고; 상기 제 2 및 제 3 부분들에 대응하는 상기 이미지들에 대응하는 상기 콘텐트는 비실시간 이미지들이다. 몇몇 이러한 실시예들에서, 상기 제어 정보 수신 모듈(2214)은 또한 환경의 상기 제 2 부분에 대응하는 복수의 이미지들 중 어느 것이 상기 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하도록 구성되고; 상기 출력 이미지 콘텐트 스트림 기반 생성 모듈(2230)은 수신된 이미지 선택 정보에 기초하여 환경의 상기 제 2 부분에 대응하는 이미지를 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성된 부분으로서 선택하도록 구성된다.In some embodiments, the content corresponding to the first portion includes real-time content captured and streamed to the playback device while the event is in progress; The content corresponding to the images corresponding to the second and third portions are non real-time images. In some such embodiments, the control information receiving module 2214 is also configured to receive image selection information indicating which of a plurality of images corresponding to the second portion of the environment should be used during a portion of the event Being; The output image content stream based generation module 2230 is configured to select an image corresponding to the second portion of the environment based on the received image selection information as a portion configured to generate one or more output images corresponding to the current field of view .

다양한 실시예들에서, 시스템은 이미지가 상기 시야의 일 부분에 대해 이용 가능하지 않다는 것을 결정하도록 구성된 누락 부분 결정 모듈(2222); 이미지가 이용 가능하지 않은 상기 시야의 상기 부분에 대해 사용될 이미지를 합성하도록 구성된 이미지 합성기 모듈(2224); 및 현재 시야에 대응하는 이미지를 생성하기 위해 수신된 이미지의 적어도 일 부분과 합성된 이미지를 조합하도록 구성된 합성 이미지 통합 모듈(2232)를 추가로 포함한다.In various embodiments, the system includes a missing portion determination module 2222 configured to determine that an image is not available for a portion of the field of view; An image synthesizer module (2224) configured to synthesize an image to be used for the portion of the field of view where an image is not available; And a composite image integration module 2232 configured to combine the synthesized image with at least a portion of the received image to produce an image corresponding to the current view.

다양한 실시예들에서, 상기 제 1 이미지 콘텐트는 왼쪽 눈 이미지 및 오른족 눈 이미지를 포함하는 입체 영상 이미지 콘텐트이다.In various embodiments, the first image content is a stereoscopic image content that includes a left eye image and a right eye image.

몇몇 실시예들에서, 모듈들의 어셈블리(2200)는, 예를 들면, 도 8에 도시된 다른 모듈들에 추가하여, 도 8의 콘텐트 재생 시스템(800)에 포함된다. 모듈들의 어셈블리(2200) 내 모듈들은 메모리(812)에, 프로세서(808)에, 및/또는 시스템(800) 내 버스(809)에 결합된 프로세서(808)의 외부의 하드웨어 모듈들로서 포함될 수 있다.In some embodiments, the assembly 2200 of modules is included in the content playback system 800 of FIG. 8, for example, in addition to the other modules shown in FIG. The modules in the assembly 2200 of modules may be included as a hardware module external to the processor 808 coupled to the memory 812, to the processor 808, and / or to the bus 809 in the system 800.

도 23은 몇몇 실시예들에 따라 재생 시스템(1900)에서 사용될 수 있는 예시적인 스트림 선택 모듈(1938)을 도시하는 도면(2300)이다.23 is a drawing 2300 illustrating an exemplary stream selection module 1938 that may be used in the playback system 1900 in accordance with some embodiments.

도 24는 도 23의 스트림 선택 모듈의 일부로서 또는 개별 모듈로서 구현될 수 있는 예시적인 스트림 우선 순위화 모듈(2306)을 도시하는 도면(2400)이다.FIG. 24 is a drawing 2400 illustrating an exemplary stream prioritization module 2306 that may be implemented as part of the stream selection module of FIG. 23 or as a separate module.

몇몇 실시예들은 입체 영상 비디오를 인코딩 및 압축하도록 컴퓨터 또는 다른 디바이스를 제어하기 위해 소프트웨어 명령들의 일 세트, 예를 들면, 컴퓨터 실행 가능한 명령들을 구현하는 비일시적 컴퓨터 판독 가능한 매체에 관한 것이다. 다른 실시예들은 플레이어 단부상에 비디오를 디코딩 및 압축 해제하도록 컴퓨터 또는 다른 디바이스를 제어하기 위해 소프트웨어 명령들의 일 세트, 예를 들면, 컴퓨터 실행 가능한 명령들을 구현하는 컴퓨터 판독 가능한 매체에 관한 것이다. 인코딩 및 압축이 가능한 개별 동작들로서 언급되지만, 인코딩은 압축을 수행하기 위해 사용될 수 있고 따라서 인코딩은 일부에서 압축을 포함할 수 있다는 것이 이해되어야 한다. 유사하게, 디코딩은 압축 해제를 포함할 수 있다.Some embodiments relate to a non-transitory computer readable medium embodying a set of software instructions, e.g., computer-executable instructions, for controlling a computer or other device to encode and compress stereoscopic video. Other embodiments are directed to a computer readable medium embodying a set of software instructions, e.g., computer executable instructions, for controlling a computer or other device to decode and decompress video on a player end. Although referred to as separate operations capable of encoding and compressing, it should be understood that the encoding may be used to perform compression, and therefore the encoding may include compression in some cases. Similarly, decoding may include decompression.

다양한 실시예들의 기술들은 소프트웨어, 하드웨어, 및/또는 소프트웨어 및 하드웨어의 조합을 사용하여 구현될 수 있다. 다양한 실시예들은 장치, 예를 들면, 이미지 데이터 처리 시스템에 관한 것이다. 다양한 실시예들은 또한 방법들, 예를 들면, 이미지 데이터를 처리하는 방법들에 관한 것이다. 다양한 실시예들은 또한, 비일시적 머신, 예를 들면, 컴퓨터, 판독 가능한 매체, 예를 들면, 기계가 방법의 하나 이상의 단계들을 구현하도록 제어하기 위한 기계 판독 가능한 명령들을 포함하는, ROM, RAM, CD들, 하드 디스크들, 등에 관한 것이다.The techniques of various embodiments may be implemented using software, hardware, and / or a combination of software and hardware. Various embodiments are directed to an apparatus, e.g., an image data processing system. The various embodiments also relate to methods, e.g., methods of processing image data. The various embodiments may also be implemented in a non-volatile machine, e.g., a computer, a readable medium, such as a ROM, a RAM, a CD, a CD, Hard disks, and the like.

본 발명의 다양한 특징들은 모듈들을 사용하여 구현된다. 이러한 모듈들은 소프트웨어 모듈들로서 구현될 수 있고, 몇몇 실시예들에서 그렇게 구현된다. 다른 실시예들에서, 모듈들은 하드웨어에서 구현된다. 또 다른 실시예들에서, 모듈들은 소프트웨어 및 하드웨어의 조합을 사용하여 구현된다. 몇몇 실시예들에서, 모듈들은 개별적인 회로들로서 구현되고, 각각의 모둘은 모듈이 대응하는 기능을 수행하기 위해 회로로서 구현된다. 매우 다양한 실시예들이 상이한 모듈들이 예를 들면, 일부는 하드웨어에서, 일부는 소프트웨어에서, 일부는 하드웨어 및 소프트웨어의 조합을 사용하여 상이하게 구현되는 몇몇 실시예들을 포함하여 고려된다. 루틴들 및/또는 서브루틴들, 또는 이러한 루틴들에 의해 수행된 단계들의 일부가 범용 프로세서상에 실행된 소프트웨어와 반대되는 것으로서 전용 하드웨어에서 실행될 수 있다는 것이 또한 주의되어야 한다. 이러한 실시예들은 본 발명의 범위 내에 있다. 상기 기술된 방법들 또는 방법 단계들 중 다수는 상기 기술된 방법들 모두 또는 그의 일 부분들을 구현하도록, 기계, 예를 들면 추가의 하드웨어를 갖거나 갖지 않는 범용 컴퓨터를 제어하기 위해, 메모리 디바이스, 예를 들면, RAM, 플로피 디스크, 등과 같은 기계 판독 가능한 매체에 포함된 소프트웨어와 같은 기계 실행 가능한 명령들을 사용하여 구현될 수 있다. 따라서, 여러가지 중에서, 본 발명은 기계, 예를 들면, 프로세서 및 연관된 하드웨어가 상기 기술된 방법(들)의 단계들 중 하나 이상을 수행하게 하기 위한 기계 실행 가능한 명령들을 포함하는 기계 판독 가능한 매체에 관한 것이다.Various features of the present invention are implemented using modules. Such modules may be implemented as software modules, and so implemented in some embodiments. In other embodiments, the modules are implemented in hardware. In yet other embodiments, the modules are implemented using a combination of software and hardware. In some embodiments, the modules are implemented as separate circuits, and each module is implemented as a circuit for the module to perform the corresponding function. A wide variety of embodiments are contemplated including some embodiments in which different modules are implemented differently, e.g., using hardware, some using software, and some using hardware and software combinations. It should also be noted that routines and / or subroutines, or some of the steps performed by such routines, may be executed in dedicated hardware as opposed to software executed on a general purpose processor. These embodiments are within the scope of the present invention. Many of the above-described methods or method steps may be implemented in a memory device, such as a memory device, for controlling a general purpose computer with or without additional hardware, e.g., to implement all or a portion of the methods described above. For example, it may be implemented using machine executable instructions, such as software included in a machine-readable medium, such as RAM, floppy disk, and the like. Thus, among other things, the present invention relates to a machine-readable medium comprising machine-executable instructions for causing a machine, e.g., a processor and associated hardware, to perform one or more of the steps of the described method (s) will be.

상기에 기술된 다양한 실시예들의 방법들 및 장치에 대한 다수의 추가 변동들은 상기 기술을 고려하여 당업자에게 명백할 것이다. 이러한 변동들은 범위 내에서 고려되는 것이다.Numerous additional variations on the methods and apparatus of the various embodiments described above will be apparent to those skilled in the art in view of the foregoing description. These variations are considered within the scope.

700 : 콘텐트 전달 시스템 702 : 디스플레이
704 : 입력 디바이스 706 : I/O 인터페이스
708 : 프로세서 710 : 네트워크 인터페이스
712 : 메모리 714 : 제어 루틴들
716 : 분할 모듈 718 : 인코더(들)
720 : 스트리밍 제어기 722 : 요청 처리 모듈
724 : 데이터 레이트 결정 모듈 726 : 현재 머리 위치 결정 모듈
728 : 선택 모듈 730 : 스트리밍 제어 모듈
1900' : 컴퓨터 시스템/콘텐트 재생 디바이스
1902 : 디스플레이
1903 : 디스플레이 디바이스 인터페이스
1904 : 입력 디바이스
1905 : 디스플레이, 예를 들면, 헤드 마운트 입체 영상 디스플레이
1906 : I/O 인터페이스 1908 : 프로세서
1910 : 네트워크 인터페이스 1911 : 수신기
1912 : 메모리 1913 : 송신기
1914 : 제어 루틴들 1916 : 머리 위치 결정 모듈
1918 : 현재 뷰잉 위치 초기화 모듈
1920 : 디코더 모듈
1922 : 현재 선택된 스트림 초기화 모듈
1924 : 콘텐트 전달 초기화 모듈 1926 : 이미지 버퍼(들)
1928 : 이미지 버퍼 갱신 모듈
1930 : 이미지 렌더링 모듈, 예를 들면, 이미지 생성 모듈
1932 : 이용 가능한 대역폭 및/또는 지원 가능한 데이터 레이트 결정 모듈
1934 : 머리 위치 변경 검출 모듈
1936 : 이용 가능한 대역폭 및/또는 지원 가능한 데이터 레이트 변경 결정 모듈
1938 : 스트림 선택 모듈
1940 : 선택된 스트림 세트 변경 결정 모듈
1942 : 선택된 스트림 세트 갱신 모듈
1944 : 스트림(들) 결정 모듈 1946 : 수신된 스트림 정보
1948 : 수신된 대역폭 및/또는 데이터 레이트 할당 제어 정보
1950 : 결정된 현재 최대 이용 가능한 대역폭 및/또는 지원 가능한 데이터 레이트
1952 : 수신된 인코딩된 데이터, 예를 들면, 인코딩된 장면 부분들
1954 : 수신된 환경 맵 1956 : 수신된 UV 맵(들)
1958 : 디코딩된 데이터, 예를 들면, 디코딩된 장면 부분들
1960 : 생성된 3D 콘텐트 1961 : 현재 선택된 스트림 세트
2200 : 모듈들의 어셈블리 2202 : 뷰어 머리 위치 결정 모듈
2204 : 현재 시야 결정 모듈 2206 : 콘텐트 스트림 선택 모듈
2208 : 콘텐트 스트림 수신 모듈
2210 : 이미지 수신 모듈 2212 : 수신된 이미지 저장 모듈
2214 : 제어 정보 수신 모듈 2216 : 출력 이미지 생성 모듈
2218 : 뷰 부분 세트 결정 모듈
2220 : 콘텐트 스트림 전용 결정 모듈
2222 : 누락 부분 결정 모듈 2224 : 이미지 합성기 모듈
2226 : 콘텐트 스트림 출력 이미지 생성 모듈
2228 : 합성된 출력 이미지 생성 모듈
2230 : 출력 이미지 콘텐트 스트림 기반 생성 모듈
2232 : 합성된 이미지 통합 모듈 2234 : 저장된 이미지 통합 모듈
2236 : 출력 이미지 비스트림 기반 생성 모듈
2238 : 합성된 이미지 통합 모듈 2240 : 저장된 이미지 통합 모듈
2242 : 출력 모듈 2244 : 디스플레이 모듈
2246 : 제어 루틴들
700: Content Delivery System 702: Display
704: input device 706: I / O interface
708: Processor 710: Network Interface
712: Memory 714: Control routines
716: Split module 718: Encoder (s)
720: streaming controller 722: request processing module
724: data rate determination module 726: current head positioning module
728: Selection module 730: Streaming control module
1900 ': Computer system / content playback device
1902: Display
1903: Display device interface
1904: input device
1905: Display, for example, a head-mounted stereoscopic display
1906: I / O interface 1908: Processor
1910: Network interface 1911: Receiver
1912: Memory 1913: Transmitter
1914: Control routines 1916: Head positioning module
1918: Current viewing location initialization module
1920: Decoder module
1922: Currently selected stream initialization module
1924: Content Delivery Initiation Module 1926: Image Buffer (s)
1928: Image Buffer Update Module
1930: an image rendering module, for example an image generation module
1932: Available bandwidth and / or supportable data rate determination module
1934: Head position change detection module
1936: Available bandwidth and / or supportable data rate change determination module
1938: Stream selection module
1940: Selected stream set change determination module
1942: Selected stream set update module
1944: Stream (s) determination module 1946: received stream information
1948: received bandwidth and / or data rate allocation control information
1950: determined current maximum available bandwidth and / or supported data rate
1952: Received encoded data, for example, encoded scene portions
1954: received environment map 1956: received UV map (s)
1958: Decoded data, e.g., decoded scene portions
1960: Generated 3D content 1961: Currently selected stream set
2200: assembly of modules 2202: viewer head positioning module
2204: Current view determination module 2206: Content stream selection module
2208: Content stream receiving module
2210: image receiving module 2212: received image storing module
2214: Control information receiving module 2216: Output image generating module
2218: View subset determination module
2220: Decision module dedicated to content stream
2222: missing part determination module 2224: image synthesizer module
2226: Content stream output image generation module
2228: Composite output image generation module
2230: Output image content stream based generation module
2232: synthesized image integration module 2234: stored image integration module
2236: Output image non-stream based generation module
2238: synthesized image integration module 2240: stored image integration module
2242: Output module 2244: Display module
2246: Control routines

Claims (68)

재생 시스템을 동작시키는 방법에 있어서,
사용자의 머리 위치에 기초하여, 처음 재생시 사용을 위해 복수의 콘텐트 스트림들 중 어느 것을 수신할지를 선택하는 단계; 및
재생을 위해 사용할 하나 이상의 선택된 콘텐트 스트림들을 수신하는 단계를 포함하는, 재생 시스템을 동작시키는 방법.
A method of operating a playback system,
Selecting, based on the user's head position, which of the plurality of content streams to receive for initial playback use; And
And receiving one or more selected content streams for use for playback.
제 1 항에 있어서,
상기 선택 단계는 상기 사용자의 상기 머리 위치에 기초하여 콘텐트 스트림들을 우선 순위화하는 단계를 포함하는, 재생 시스템을 동작시키는 방법.
The method according to claim 1,
Wherein said selecting includes prioritizing content streams based on the head position of the user.
제 2 항에 있어서,
상기 우선 순위화 단계는:
상기 사용자의 현재 시야에 대응하는 콘텐트를 전달하는 하나 이상의 스트림들을 식별하는 단계; 및
각각의 스트림이 제공하는 시야의 부분들의 크기에 기초하여 상기 현재 시야에 대응하는 장면의 부분들을 제공하는 하나 이상의 콘텐트 스트림들을 우선 순위화하는 단계를 포함하는, 재생 시스템을 동작시키는 방법.
3. The method of claim 2,
Wherein the prioritizing step comprises:
Identifying one or more streams conveying content corresponding to the current view of the user; And
Prioritizing one or more content streams that provide portions of the scene corresponding to the current view, based on the size of portions of the view that each stream provides.
제 3 항에 있어서,
상기 콘텐트 스트림들을 우선 순위화하는 단계는 전달된 이미지 부분들의 상기 현재 시야에 대한 근접성 또는 머리 회전의 방향 중 적어도 하나에 기초하여 상기 현재 시야 외부의 부분들에 대응하는 콘텐트를 전달하는 하나 이상의 추가의 스트림들을 우선 순위화하는 단계를 추가로 포함하는, 재생 시스템을 동작시키는 방법.
The method of claim 3,
Wherein the prioritizing of the content streams comprises the step of providing one or more additional images for delivering content corresponding to portions outside the current view based on at least one of proximity to the current view of the transferred image portions or direction of head rotation ≪ / RTI > further comprising prioritizing the streams.
제 4 항에 있어서,
상기 콘텐트 스트림들을 우선 순위화하는 단계는 상기 현재 시야에 대한 전달된 이미지 콘텐트의 근접성에 기초하여 상기 현재 시야 외부의 부분들에 대응하는 콘텐트를 전달하는 하나 이상의 추가의 스트림들을 우선 순위화하는 단계를 포함하고,
상기 현재 시야의 영역에 아주 근접한 이미지 콘텐트를 전달하는 콘텐트 스트림은 상기 현재 시야 외부 및 그로부터 멀리 떨어진 콘텐트 스트림보다 높은 우선 순위가 할당되는, 재생 시스템을 동작시키는 방법.
5. The method of claim 4,
Wherein prioritizing the content streams comprises prioritizing one or more additional streams delivering content corresponding to portions outside the current view based on proximity of the delivered image content to the current view Including,
Wherein a content stream delivering image content in close proximity to a region of the current view is assigned a higher priority than the current view field and a content stream far away therefrom.
제 4 항에 있어서,
상기 하나 이상의 추가의 콘텐트 스트림들을 우선 순위화하는 단계는 상기 사용자의 머리 회전의 방향에 기초하고, 상기 현재 시야 외부이지만 머리 회전의 방향인 이미지 콘텐트를 제공하는 콘텐트 스트림은 상기 머리 회전의 방향으로부터 멀어지는 방향으로 상기 현재 시야 외부의 이미지 콘텐트를 제공하는 다른 콘텐트 스트림보다 높은 우선 순위가 할당되는, 재생 시스템을 동작시키는 방법.
5. The method of claim 4,
Wherein prioritizing the one or more additional content streams is based on a direction of the head rotation of the user and the content stream providing image content that is outside of the current view but in the direction of head rotation is moved away from the direction of the head rotation Wherein a higher priority is assigned to another content stream that provides image content outside of the current view in the direction of the current view.
제 2 항에 있어서,
상기 선택 단계는 가장 높은 우선 순위가 할당된 하나 이상의 콘텐트 스트림을 선택하는 단계를 포함하는, 재생 시스템을 동작시키는 방법.
3. The method of claim 2,
Wherein the selecting includes selecting one or more content streams to which the highest priority is assigned.
제 2 항에 있어서,
상기 선택 단계는:
콘텐트 스트림들을 수신하기 위해 이용 가능한 대역폭을 결정하는 단계; 및
상기 결정된 양의 이용 가능한 대역폭에 기초하여 동일한 우선 순위를 갖는 복수의 콘텐트 스트림들로부터 선택하는 단계를 추가로 포함하는, 재생 시스템을 동작시키는 방법.
3. The method of claim 2,
Wherein the selecting comprises:
Determining an available bandwidth to receive the content streams; And
Further comprising selecting from a plurality of content streams having the same priority based on the determined amount of available bandwidth.
제 8 항에 있어서,
상기 재생 시스템에 전달된 대역폭 제한에 기초하여 적어도 하나의 콘텐트 스트림에 대한 대역폭을 결정하는 단계를 추가로 포함하고,
상기 동일한 우선 순위를 갖는 복수의 콘텐트 스트림들로부터 선택하는 단계는 또한 상기 적어도 하나의 콘텐트 스트림에 대해 결정된 대역폭에 기초하는, 재생 시스템을 동작시키는 방법.
9. The method of claim 8,
Further comprising determining a bandwidth for at least one content stream based on a bandwidth limitation delivered to the playback system,
Wherein selecting from the plurality of content streams having the same priority is also based on a bandwidth determined for the at least one content stream.
제 9 항에 있어서,
상이한 뷰잉 방향들에 대한 대역폭 제한들을 수신하는 단계를 추가로 포함하고,
개별적인 대역폭 제한들은 상기 개별적인 대역폭 제한에 대응하는 뷰잉 방향에 대응하는 콘텐트를 제공하는 하나 이상의 콘텐트 스트림들을 수신하기 위해 사용될 최대 대역폭을 지정하는, 재생 시스템을 동작시키는 방법.
10. The method of claim 9,
Further comprising receiving bandwidth constraints for different viewing directions,
Wherein the individual bandwidth limitations specify a maximum bandwidth to be used to receive one or more content streams that provide content corresponding to a viewing direction corresponding to the individual bandwidth limitations.
제 8 항에 있어서,
상기 동일한 우선 순위를 갖는 복수의 콘텐트 스트림들로부터 선택하는 단계는 가장 높은 우선 순위가 할당된 복수의 콘텐트 스트림들로부터 하나의 콘텐트 스트림을 선택하는 단계를 포함하고, 가장 높은 우선 순위가 할당된 각각의 콘텐트 스트림은 동일한 뷰잉 방향에 대응하는 콘텐트를 제공하는, 재생 시스템을 동작시키는 방법.
9. The method of claim 8,
Wherein selecting from the plurality of content streams having the same priority comprises selecting one content stream from the plurality of content streams to which the highest priority is assigned, Wherein the content stream provides content corresponding to the same viewing direction.
제 11 항에 있어서,
상기 동일한 우선 순위를 갖는 복수의 콘텐트 스트림들로부터 선택하는 단계는 제 2의 가장 높은 우선 순위가 할당된 복수의 콘텐트 스트림들 중 하나의 콘텐트 스트림을 선택하는 단계를 포함하고, 상기 제 2의 가장 높은 우선 순위가 할당된 각각의 콘텐트 스트림은 동일한 뷰잉 방향에 대응하는 콘텐트를 제공하는, 재생 시스템을 동작시키는 방법.
12. The method of claim 11,
Wherein selecting from among the plurality of content streams having the same priority comprises selecting one of the plurality of content streams to which a second highest priority is assigned, Wherein each content stream assigned a priority provides content corresponding to the same viewing direction.
제 1 항에 있어서,
상기 재생 시스템이 수신하도록 선택할 수 있는 콘텐트 스트림들에 대한 정보를 제공하는 가이드 정보를 수신하는 단계를 추가로 포함하는, 재생 시스템을 동작시키는 방법.
The method according to claim 1,
Further comprising receiving guide information that provides information about content streams that the playback system may choose to receive.
제 13 항에 있어서,
상기 가이드 정보는 가이드 정보가 제공되는 콘텐트 스트림들에 액세스하기 위해 사용될 수 있는 정보를 포함하는, 재생 시스템을 동작시키는 방법.
14. The method of claim 13,
Wherein the guide information includes information that can be used to access the content streams for which the guide information is provided.
제 14 항에 있어서,
상기 가이드 정보는, 제 1 콘텐트 스트림에 대하여, 상기 제 1 콘텐트 스트림을 수신하기 위해 연결될 수 있는 멀티캐스트 그룹의 멀티캐스트 어드레스, 상기 제 1 콘텐트 스트림을 제공하기 위해 사용된 스위칭된 디지털 비디오 채널에 대한 액세스를 요청하기 위해 사용될 수 있는 정보, 또는 상기 제 1 콘텐트 스트림이 방송되는 방송 채널에 대해 동조시키기 위해 상기 재생 시스템의 동조기를 조정하기 위해 사용될 수 있는 채널 동조 정보 중 하나를 포함하는, 재생 시스템을 동작시키는 방법.
15. The method of claim 14,
The guide information comprising, for a first content stream, a multicast address of a multicast group that can be connected to receive the first content stream, a multicast address of a multicast group that is to be connected to receive the first content stream for a switched digital video channel used to provide the first content stream A playback system comprising one of the information that can be used to request access or channel tuning information that can be used to tune the tuner of the playback system to tune to the broadcast channel on which the first content stream is broadcast How to operate.
제 15 항에 있어서,
선택된 콘텐트 스트림의 전달을 개시하는 단계를 추가로 포함하고,
상기 선택된 콘텐트 스트림의 전달을 개시하는 단계는 상기 선택된 콘텐트 스트림에 대응하는 멀티캐스트 그룹에 연결하기 위해 신호를 전송하는 단계를 포함하는, 재생 시스템을 동작시키는 방법.
16. The method of claim 15,
Further comprising initiating delivery of the selected content stream,
Wherein initiating delivery of the selected content stream comprises transmitting a signal to connect to a multicast group corresponding to the selected content stream.
제 15 항에 있어서,
선택된 콘텐트 스트림의 전달을 개시하는 단계를 추가로 포함하고,
상기 선택된 콘텐트 스트림의 전달을 개시하는 단계는 상기 선택된 콘텐트 스트림이 전달되는 스위칭된 디지털 채널의 전달을 요청하는 요청을 네트워크 내 디바이스로 전달하는 단계를 포함하는, 재생 시스템을 동작시키는 방법.
16. The method of claim 15,
Further comprising initiating delivery of the selected content stream,
Wherein initiating delivery of the selected content stream comprises forwarding a request to a device in the network requesting delivery of a switched digital channel over which the selected content stream is delivered.
재생 시스템에 있어서,
사용자의 머리 위치에 기초하여, 처음에 재생시 사용을 위해 복수의 콘텐트 스트림들 중 어느 것을 수신할지를 선택하도록 구성된 스트림 선택 모듈; 및
재생을 위해 사용하기 위해 하나 이상의 선택된 콘텐트 스트림들을 수신하도록 구성된 수신기를 포함하는 인터페이스를 포함하는, 재생 시스템.
In the reproducing system,
A stream selection module configured to select, based on the user's head position, which of a plurality of content streams is to be initially received for use in playback; And
And a receiver configured to receive one or more selected content streams for use for playback.
제 18 항에 있어서,
상기 스트림 선택 모듈은 상기 사용자의 상기 머리 위치에 기초하여 콘텐트 스트림들을 우선 순위화하도록 구성된 스트림 우선 순위화 모듈을 포함하는, 재생 시스템.
19. The method of claim 18,
Wherein the stream selection module comprises a stream prioritization module configured to prioritize content streams based on the head position of the user.
제 19 항에 있어서,
상기 스트림 우선 순위화 모듈은:
상기 사용자의 현재 시야에 대응하는 콘텐트를 전달하는 하나 이상의 스트림들을 식별하도록 구성된 식별 모듈; 및
각각의 스트림이 제공하는 상기 시야의 부분들의 크기에 기초하여 상기 현재 시야에 대응하는 장면의 부분을 제공하는 하나 이상의 콘텐트 스트림들을 우선 순위화하도록 구성된 우선 순위 할당 모듈을 포함하는, 재생 시스템.
20. The method of claim 19,
The stream prioritization module comprising:
An identification module configured to identify one or more streams conveying content corresponding to a current view of the user; And
And a priority assignment module configured to prioritize one or more content streams providing a portion of the scene corresponding to the current view based on the size of the portions of the view provided by each stream.
제 20 항에 있어서,
상기 스트림 우선 순위화 모듈은 상기 현재 시야에 대한 전달된 이미지 부분들의 근접성 또는 머리 회전의 방향 중 적어도 하나에 기초하여 상기 현재 시야 외부의 부분들에 대응하는 콘텐트를 전달하는 하나 이상의 추가의 스트림들을 우선 순위화하도록 구성된 추가의 스트림 우선 순위 할당 모듈을 추가로 포함하는, 재생 시스템.
21. The method of claim 20,
Wherein the stream prioritization module prioritizes one or more additional streams delivering content corresponding to portions outside the current view based on at least one of a proximity of the delivered image portions for the current view or a direction of head rotation Further comprising an additional stream prioritization module configured to rank.
제 21 항에 있어서,
상기 추가의 스트림 우선 순위 할당 모듈은 상기 현재 시야에 대한 전달된 이미지 콘텐트의 근접성에 기초하여 상기 현재 시야 외부의 부분들에 대응하는 콘텐트를 전달하는 하나 이상의 추가의 스트림들을 우선 순위화하도록 구성되고, 상기 현재 시야의 영역에 아주 근접한 이미지 콘텐트를 전달하는 콘텐트 스트림에는 상기 현재 시야 외부 및 그로부터 멀리 떨어진 콘텐트 스트림보다 높은 우선 순위가 할당되는, 재생 시스템.
22. The method of claim 21,
Wherein the additional stream prioritization module is configured to prioritize one or more additional streams delivering content corresponding to portions outside the current view based on proximity of the delivered image content for the current view, Wherein a content stream carrying image content that is very close to the current view area is assigned a higher priority than the current view field and a content stream farther away therefrom.
제 21 항에 있어서,
상기 추가의 스트림 우선 순위 할당 모듈은 상기 사용자의 머리 회전의 방향에 기초하여 하나 이상의 추가의 콘텐트 스트림들을 우선 순위화하고, 상기 현재 시야 외부에 있지만 머리 회전의 방향인 이미지 콘텐트를 제공하는 콘텐트 스트림에는 상기 머리 회전의 방향으로부터 떨어진 방향으로 상기 현재 시야 외부의 이미지 콘텐트를 제공하는 다른 콘텐트 스트림보다 높은 우선 순위가 할당되는, 재생 시스템.
22. The method of claim 21,
The additional stream prioritization module prioritizes one or more additional content streams based on the direction of the user's head rotation and provides a content stream that is external to the current view but provides image content that is in the direction of head rotation Wherein a higher priority is assigned than another content stream providing image content outside the current view in a direction away from the direction of head rotation.
제 19 항에 있어서,
상기 스트림 선택 모듈은 또한 가장 높은 우선 순위가 할당된 하나 이상의 콘텐트 스트림들을 선택하도록 구성되는, 재생 시스템.
20. The method of claim 19,
Wherein the stream selection module is further configured to select one or more content streams assigned the highest priority.
제 19 항에 있어서,
콘텐트 스트림들을 수신하기 위해 이용 가능한 대역폭을 결정하도록 구성된 이용 가능한 대역폭 및 데이터 레이트 결정 모듈을 추가로 포함하고,
상기 스트림 선택 모듈은 상기 결정된 양의 이용 가능한 대역폭에 기초하여 동일한 우선 순위를 갖는 복수의 콘텐트 스트림들로부터 선택하도록 구성된 선택 모듈을 포함하는, 재생 시스템.
20. The method of claim 19,
Further comprising an available bandwidth and data rate determination module configured to determine an available bandwidth to receive the content streams,
Wherein the stream selection module comprises a selection module configured to select from a plurality of content streams having the same priority based on the determined amount of available bandwidth.
제 25 항에 있어서,
상기 스트림 선택 모듈은 상기 재생 시스템에 전달된 대역폭 제한에 기초하여 적어도 하나의 콘텐트 스트림에 대한 대역폭을 결정하도록 구성된 스트림 대역폭 결정 모듈을 추가로 포함하고,
상기 선택 모듈은 상기 적어도 하나의 콘텐트 스트림에 대해 결정된 대역폭에 또한 기초하여 동일한 우선순위를 갖는 상기 복수의 콘텐트 스트림들로부터 선택하도록 구성되는, 재생 시스템.
26. The method of claim 25,
Wherein the stream selection module further comprises a stream bandwidth determination module configured to determine a bandwidth for at least one content stream based on a bandwidth limitation delivered to the playback system,
Wherein the selection module is configured to select from the plurality of content streams having the same priority based also on the determined bandwidth for the at least one content stream.
제 26 항에 있어서,
상기 수신기는 또한 상이한 뷰잉 방향들에 대한 대역폭 제한들을 수신하도록 구성되고, 개별적인 대역폭 제한들은 상기 개별적인 대역폭 제한에 대응하는 뷰잉 방향에 대응하는 콘텐트를 제공하는 하나 이상의 콘텐트 스트림들을 수신하기 위해 사용될 최대 대역폭을 지정하는, 재생 시스템.
27. The method of claim 26,
The receiver is also configured to receive bandwidth constraints for different viewing directions, and the individual bandwidth constraints comprise a maximum bandwidth to be used to receive one or more content streams that provide content corresponding to the viewing direction corresponding to the individual bandwidth constraints Playback system.
제 25 항에 있어서,
상기 선택 모듈은 가장 높은 우선 순위가 할당된 복수의 콘텐트 스트림들로부터 하나의 콘텐트 스트림을 선택하도록 구성되고, 상기 가장 높은 우선 순위가 할당된 각각의 콘텐트 스트림은 상기 동일한 뷰잉 방향에 대응하는 콘텐트를 상기 동일한 우선 순위를 갖는 복수의 콘텐트 스트림들로부터 선택하도록 구성되는 부분으로서 제공하는, 재생 시스템.
26. The method of claim 25,
Wherein the selection module is configured to select one content stream from among a plurality of content streams assigned the highest priority, and wherein each content stream to which the highest priority is assigned selects content corresponding to the same viewing direction As portions that are configured to select from a plurality of content streams having the same priority.
제 28 항에 있어서,
상기 선택 모듈은, 동일한 우선 순위를 갖는 복수의 콘텐트 스트림들로부터 선택하도록 구성된 부분으로서, 제 2의 가장 높은 우선 순위가 할당된 상기 복수의 스트림들로부터 하나의 콘텐트 스트림을 선택하도록 구성되고, 상기 제 2의 가장 높은 우선 순위가 할당된 각각의 콘텐트 스트림은 동일한 뷰잉 방향에 대응하는 콘텐트를 제공하는, 재생 시스템.
29. The method of claim 28,
Wherein the selection module is configured to select from a plurality of content streams having the same priority and to select one content stream from the plurality of streams to which a second highest priority is assigned, Wherein each content stream assigned a highest priority of 2 provides content corresponding to the same viewing direction.
제 18 항에 있어서,
상기 수신기는 또한 상기 재생 시스템이 수신하도록 선택할 수 있는 콘텐트 스트림들에 대한 정보를 제공하는 가이드 정보를 수신하도록 구성되는, 재생 시스템.
19. The method of claim 18,
Wherein the receiver is further configured to receive guide information that provides information about content streams that the playback system may choose to receive.
제 30 항에 있어서,
상기 가이드 정보는 상기 가이드 정보가 제공되는 콘텐트 스트림들에 액세스하기 위해 사용될 수 있는 정보를 포함하는, 재생 시스템.
31. The method of claim 30,
Wherein the guide information comprises information that can be used to access the content streams for which the guide information is provided.
제 31 항에 있어서,
상기 가이드 정보는, 제 1 콘텐트 스트림에 대해, 상기 제 1 콘텐트 스트림을 수신하기 위해 연결될 수 있는 멀티캐스트 그룹의 멀티캐스트 어드레스, 상기 제 1 콘텐트 스트림을 제공하기 위해 사용된 스위칭된 디지털 비디오 채널에 대한 액세스를 요청하기 위해 사용될 수 있는 정보, 또는 상기 재생 시스템의 동조기가 상기 제 1 콘텐트 스트림이 방송되는 방송 채널에 대해 동조하도록 제어하기 위해 사용될 수 있는 채널 동조 정보 중 하나를 포함하는, 재생 시스템.
32. The method of claim 31,
The guide information comprising, for a first content stream, a multicast address of a multicast group that can be connected to receive the first content stream, a multicast address of a multicast group that can be connected to receive the first content stream for a switched digital video channel used to provide the first content stream Information that can be used to request access or channel tuning information that can be used to control the tuner of the playback system to tune to a broadcast channel on which the first content stream is broadcast.
제 32 항에 있어서,
선택된 콘텐트 스트림의 전달을 개시하도록 구성된 콘텐트 전달 개시 모듈을 추가로 포함하고, 상기 콘텐트 전달 개시 모듈은 또한 상기 선택된 콘텐트 스트림에 대응하는 멀티캐스트 그룹을 연결하기 위해 신호를 전송하도록 구성되는, 재생 시스템.
33. The method of claim 32,
Further comprising a content delivery initiation module configured to initiate delivery of the selected content stream, wherein the content delivery initiation module is further configured to send a signal to concatenate the multicast group corresponding to the selected content stream.
제 32 항에 있어서,
선택된 콘텐트 스트림의 전달을 개시하도록 구성된 콘텐트 전달 개시 모듈을 추가로 포함하고, 상기 콘텐트 전달 개시 모듈은 또한 상기 선택된 콘텐트 스트림이 전달되는 스위칭된 디지털 채널의 전달을 요청하는 요청을 생성하고 이를 네트워크 내 디바이스로 전송하도록 구성되는, 재생 시스템.
33. The method of claim 32,
Further comprising a content delivery initiation module configured to initiate delivery of the selected content stream, wherein the content delivery initiation module is further configured to generate a request for delivery of the switched digital channel over which the selected content stream is delivered, To the playback system.
프로세서 실행 가능한 명령들을 포함하는 비일시적 컴퓨터 판독 가능한 매체에 있어서,
상기 프로세서 실행 가능한 명령들은 프로세서에 의해 실행될 때 재생 시스템이:
사용자의 머리 위치에 기초하여 처음 재생시 사용을 위해 복수의 콘텐트 스트림들 중 어느 것을 수신할지를 선택하고,
재생을 위해 사용할 하나 이상의 선택된 콘텐트 스트림들을 수신하도록 제어하는, 비일시적 컴퓨터 판독 가능한 매체.
17. A non-transitory computer readable medium comprising processor executable instructions,
The processor executable instructions, when executed by a processor,
Selecting which of a plurality of content streams is to be used for initial playback based on the head position of the user,
And to receive one or more selected content streams for use for playback.
콘텐트 재생 시스템을 동작시키는 방법에 있어서,
현재 시야에 대응하는 뷰어의 머리 위치를 결정하는 단계;
환경의 제 1 부분에 대응하는 콘텐트를 제공하는 제 1 콘텐트 스트림을 수신하는 단계;
상기 제 1 콘텐트 스트림에 포함된 적어도 일부 수신된 콘텐트 및 i) 상기 환경의 제 2 부분에 대응하는 저장된 콘텐트, 또는 ⅱ) 상기 환경의 제 2 부분을 시뮬레이션하는 합성 이미지에 기초하여 상기 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하는 단계; 및
상기 하나 이상의 생성된 출력 이미지들 중 하나인 제 1 출력 이미지를 출력하거나 디스플레이하는 단계를 포함하는, 콘텐트 재생 시스템을 동작시키는 방법.
A method of operating a content playback system,
Determining a head position of a viewer corresponding to a current visual field;
Receiving a first content stream that provides content corresponding to a first portion of the environment;
I) at least some received content included in the first content stream, and i) stored content corresponding to a second portion of the environment, or ii) corresponding to the current view based on a composite image simulating a second portion of the environment Generating one or more output images; And
Outputting or displaying a first output image that is one of said one or more generated output images.
제 36 항에 있어서,
상기 콘텐트 재생 시스템은 콘텐트 재생 디바이스인, 콘텐트 재생 시스템을 동작시키는 방법.
37. The method of claim 36,
Wherein the content playback system is a content playback device.
제 36 항에 있어서,
상기 콘텐트 재생 시스템은 디스플레이에 결합된 컴퓨터 시스템인, 콘텐트 재생 시스템을 동작시키는 방법.
37. The method of claim 36,
Wherein the content playback system is a computer system coupled to a display.
제 36 항에 있어서,
상기 환경의 상기 제 2 부분에 대응하는 제 1 이미지를 수신하는 단계; 및
상기 환경의 상기 제 2 부분에 대응하는 상기 제 1 이미지를 저장하는 단계를 추가로 포함하는, 콘텐트 재생 시스템을 동작시키는 방법.
37. The method of claim 36,
Receiving a first image corresponding to the second portion of the environment; And
Further comprising storing the first image corresponding to the second portion of the environment. ≪ Desc / Clms Page number 22 >
제 39 항에 있어서,
상기 환경의 상기 제 2 부분의 상기 제 1 이미지는 제 1 시점에 대응하고,
상기 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하는 단계는 제 2 시점에서 캡처된 상기 제 1 콘텐트 스트림으로부터 획득된 콘텐트를 상기 제 1 시점에 대응하는 상기 제 1 이미지와 조합하는 단계를 포함하고, 상기 제 1 및 제 2 시점들은 상이한, 콘텐트 재생 시스템을 동작시키는 방법.
40. The method of claim 39,
Wherein the first image of the second portion of the environment corresponds to a first viewpoint,
Wherein generating one or more output images corresponding to the current view comprises combining content obtained from the first content stream captured at a second viewpoint with the first image corresponding to the first viewpoint, Wherein the first and second views are different.
제 40 항에 있어서,
상기 제 1 시점은 상기 제 2 시점에 선행하는 시간에 대응하는, 콘텐트 재생 시스템을 동작시키는 방법.
41. The method of claim 40,
Wherein the first time point corresponds to a time preceding the second time point.
제 41 항에 있어서,
상기 제 1 시점은 상기 제 1 콘텐트 스트림에 포함된 이미지들이 캡처되는 실시간 이벤트의 시간에 선행하는, 콘텐트 재생 시스템을 동작시키는 방법.
42. The method of claim 41,
Wherein the first viewpoint precedes the time of a real-time event in which images included in the first content stream are captured.
제 40 항에 있어서,
상기 환경의 상기 제 2 부분에 대응하는 하나 이상의 추가의 이미지들을 수신하는 단계를 추가로 포함하고,
상기 환경의 상기 제 2 부분에 대응하는 상기 하나 이상의 추가의 이미지들은 적어도 하나의 제 2 이미지를 포함하는, 콘텐트 재생 시스템을 동작시키는 방법.
41. The method of claim 40,
Further comprising receiving one or more additional images corresponding to the second portion of the environment,
Wherein the one or more additional images corresponding to the second portion of the environment include at least one second image.
제 43 항에 있어서,
상기 환경의 상기 제 2 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에서 나타내진 재생 시간들에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하는 단계를 추가로 포함하는, 콘텐트 재생 시스템을 동작시키는 방법.
44. The method of claim 43,
Receiving control information indicating which of a plurality of previously delivered images corresponding to the second portion of the environment should be displayed during a playback time measured relative to playback times indicated in the first content stream, ≪ / RTI >
제 44 항에 있어서,
상기 환경의 상기 제 2 부분은 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분, 또는 지상 뷰 부분 중 하나인, 콘텐트 재생 시스템을 동작시키는 방법.
45. The method of claim 44,
Wherein the second portion of the environment is one of a first rearview portion, a second rearview portion, a sky view portion, or a ground view portion.
제 45 항에 있어서,
상기 환경의 제 3 부분에 대응하는 하나 이상의 이미지들을 수신하는 단계를 추가로 포함하는, 콘텐트 재생 시스템을 동작시키는 방법.
46. The method of claim 45,
The method further comprising receiving one or more images corresponding to a third portion of the environment.
제 46 항에 있어서,
상기 환경의 상기 제 1 부분은 정면 뷰 부분이고,
상기 제 3 부분은 하늘 뷰 또는 지상 뷰 부분 중 하나이고,
이미지들은 상기 제 1, 제 2, 및 제 3 부분들에 대응하여 상이한 레이트들에서 수신되고, 더 많은 이미지들은 상기 제 2 부분에 대해서보다 상기 제 1 부분에 대응하는 이벤트에 대해 수신되는, 콘텐트 재생 시스템을 동작시키는 방법.
47. The method of claim 46,
Wherein the first portion of the environment is a front view portion,
The third portion being one of a sky view or a ground view portion,
Images are received at different rates corresponding to the first, second, and third portions, and more images are received for events corresponding to the first portion than for the second portion A method for operating a system.
제 47 항에 있어서,
상기 제 1 부분에 대응하는 상기 콘텐트는 이벤트가 진행한 동안 캡처되어 상기 재생 디바이스에 스트리밍되는 실시간 콘텐트를 포함하고,
상기 제 2 및 제 3 부분들에 대응하는 상기 이미지들에 대응하는 상기 콘텐트는 비실시간 이미지들인, 콘텐트 재생 시스템을 동작시키는 방법.
49. The method of claim 47,
Wherein the content corresponding to the first portion comprises real-time content that is captured and streamed to the playback device during an event progress,
Wherein the content corresponding to the images corresponding to the second and third portions is non real-time images.
제 36 항에 있어서,
상기 환경의 상기 제 2 부분에 대응하는 복수의 이미지들 중 어느 것이 상기 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하는 단계를 추가로 포함하고,
적어도 일부 수신된 콘텐트에 기초하여 상기 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하는 단계는 상기 수신된 이미지 선택 정보에 기초하여 상기 환경의 상기 제 2 부분에 대응하는 이미지를 선택하는 단계를 포함하는, 콘텐트 재생 시스템을 동작시키는 방법.
37. The method of claim 36,
Further comprising receiving image selection information indicating which of a plurality of images corresponding to the second portion of the environment should be used during a portion of the event,
Wherein generating at least one output images corresponding to the current view based on at least some received content comprises selecting an image corresponding to the second portion of the environment based on the received image selection information And operating the content playback system.
제 49 항에 있어서,
이미지가 상기 현재 시야의 일 부분에 대해 이용 가능하지 않다고 결정하는 단계;
이미지가 이용 가능하지 않은 상기 현재 시야의 상기 부분에 대해 사용될 이미지를 합성하는 단계; 및
상기 현재 시야에 대응하는 이미지를 생성하기 위해 수신된 이미지의 적어도 일 부분과 상기 합성된 이미지를 조합하는 단계를 추가로 포함하는, 콘텐트 재생 시스템을 동작시키는 방법.
50. The method of claim 49,
Determining that an image is not available for a portion of the current view;
Synthesizing an image to be used for the portion of the current field of view where no image is available; And
Further comprising combining the combined image with at least a portion of the received image to produce an image corresponding to the current view. ≪ Desc / Clms Page number 21 >
제 36 항에 있어서,
상기 제 1 이미지 콘텐트는 왼쪽 눈 이미지 및 오른쪽 눈 이미지를 포함하는 입체 영상 이미지 콘텐트인, 콘텐트 재생 시스템을 동작시키는 방법.
37. The method of claim 36,
Wherein the first image content is a stereoscopic image content comprising a left eye image and a right eye image.
콘텐트 재생 시스템에 있어서,
뷰어의 머리 위치를 결정하도록 구성된 뷰어 머리 위치 결정 모듈로서, 상기 머리 위치는 현재 시야에 대응하는, 상기 뷰어 머리 위치 결정 모듈;
환경의 제 1 부분에 대응하는 콘텐트를 제공하는 제 1 콘텐트 스트림을 수신하도록 구성된 콘텐트 스트림 수신 모듈;
상기 제 1 콘텐트 스트림에 포함된 적어도 일부 수신된 콘텐트, 및 ⅰ) 상기 환경의 제 2 부분에 대응하는 저장된 콘텐트 또는 ⅱ) 상기 환경의 제 2 부분을 시뮬레이션하는 합성 이미지에 기초하여 상기 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성된 출력 이미지 콘텐트 스트림 기반 생성 모듈; 및
하나 또는 하나 이상의 생성된 출력 이미지들인, 제 1 출력 이미지를 출력하도록 구성된 출력 모듈 또는 상기 제 1 출력 이미지를 디스플레이하도록 구성된 디스플레이 모듈 중 적어도 하나를 포함하는, 콘텐트 재생 시스템.
In the content playback system,
A viewer head positioning module configured to determine a head position of a viewer, the head position corresponding to a current field of view;
A content stream receiving module configured to receive a first content stream providing content corresponding to a first portion of the environment;
At least some received content included in the first content stream, and i) stored content corresponding to a second portion of the environment, or ii) corresponding to the current view based on a composite image simulating a second portion of the environment An output image content stream based generation module configured to generate one or more output images; And
An output module configured to output a first output image or a display module configured to display the first output image, wherein the output module is one or more generated output images.
제 52 항에 있어서,
상기 콘텐트 재생 시스템은 콘텐트 재생 디바이스인, 콘텐트 재생 시스템.
53. The method of claim 52,
Wherein the content reproduction system is a content reproduction device.
제 52 항에 있어서,
상기 콘텐트 재생 시스템은 디스플레이에 결합된 컴퓨터 시스템인, 콘텐트 재생 시스템.
53. The method of claim 52,
Wherein the content playback system is a computer system coupled to a display.
제 52 항에 있어서,
상기 환경의 상기 제 2 부분에 대응하는 제 1 이미지를 수신하도록 구성된 이미지 수신 모듈; 및
상기 환경의 상기 제 2 부분에 대응하는 상기 제 1 이미지를 저장하도록 구성된 수신된 이미지 저장 모듈을 추가로 포함하는, 콘텐트 재생 시스템.
53. The method of claim 52,
An image receiving module configured to receive a first image corresponding to the second portion of the environment; And
Further comprising a received image storage module configured to store the first image corresponding to the second portion of the environment.
제 55 항에 있어서,
상기 환경의 상기 제 2 부분의 상기 제 1 이미지는 제 1 시점에 대응하고,
상기 출력 이미지 콘텐트 스트림 기반 생성 모듈은 제 2 시점에서 캡처된 상기 제 1 콘텐트 스트림으로부터 획득된 콘텐트와 상기 제 1 시점에 대응하는 상기 제 1 이미지와 조합하도록 구성되고, 상기 제 1 및 제 2 시점들은 상이한, 콘텐트 재생 시스템.
56. The method of claim 55,
Wherein the first image of the second portion of the environment corresponds to a first viewpoint,
Wherein the output image content stream based generation module is configured to combine the content obtained from the first content stream captured at the second time point with the first image corresponding to the first time point, A different, content playback system.
제 56 항에 있어서,
상기 제 1 시점은 상기 제 2 시점에 선행하는 시간에 대응하는, 콘텐트 재생 시스템.
57. The method of claim 56,
Wherein the first time point corresponds to a time preceding the second time point.
제 57 항에 있어서,
상기 제 1 시점은 상기 제 1 콘텐트 스트림에 포함된 이미지들이 캡처되는 실시간 이벤트의 시간에 선행하는, 콘텐트 재생 시스템.
58. The method of claim 57,
Wherein the first viewpoint precedes the time of the real-time event in which the images contained in the first content stream are captured.
제 56 항에 있어서,
상기 이미지 수신 모듈은 또한 상기 환경의 상기 제 2 부분에 대응하는 하나 이상의 추가의 이미지들을 수신하도록 구성되고, 상기 환경의 상기 제 2 부분에 대응하는 상기 하나 이상의 추가의 이미지들은 적어도 하나의 제 2 이미지를 포함하는, 콘텐트 재생 시스템.
57. The method of claim 56,
Wherein the image receiving module is further configured to receive one or more additional images corresponding to the second portion of the environment and wherein the one or more additional images corresponding to the second portion of the environment include at least one second image The content playback system comprising:
제 59 항에 있어서,
상기 환경의 상기 제 2 부분에 대응하는 복수의 이전에 전달된 이미지들 중 어느 것이 상기 제 1 콘텐트 스트림에서 나타낸 재생 시간에 관하여 측정되는 재생 시간 동안 디스플레이되어야 하는지를 나타내는 제어 정보를 수신하도록 구성된 제어 정보 수신 모듈을 추가로 포함하는, 콘텐트 재생 시스템.
60. The method of claim 59,
Control information configured to receive control information indicating which of a plurality of previously delivered images corresponding to the second portion of the environment should be displayed for a playback time measured relative to the playback time indicated in the first content stream Further comprising a module.
제 60 항에 있어서,
상기 환경의 상기 제 2 부분은 제 1 후방 뷰 부분, 제 2 후방 뷰 부분, 하늘 뷰 부분, 또는 지상 뷰 부분 중 하나인, 콘텐트 재생 시스템.
64. The method of claim 60,
Wherein the second portion of the environment is one of a first rearview portion, a second rearview portion, a sky view portion, or a ground view portion.
제 61 항에 있어서,
상기 이미지 수신 모듈은 또한 상기 환경의 제 3 부분에 대응하는 하나 이상의 이미지들을 수신하도록 구성되는, 콘텐트 재생 시스템.
62. The method of claim 61,
Wherein the image receiving module is further configured to receive one or more images corresponding to a third portion of the environment.
제 62 항에 있어서,
상기 환경의 상기 제 1 부분은 정면 뷰 부분이고
상기 제 3 부분은 하늘 뷰 또는 지상 뷰 부분 중 하나이고,
이미지들은 상기 제 1, 제 2, 및 제 3 부분들에 대응하여 상이한 레이트들에서 수신되고, 더 많은 이미지들은 상기 제 2 부분에 대해서보다 상기 제 1 부분에 대응하는 이벤트에 대해 수신되는, 콘텐트 재생 시스템.
63. The method of claim 62,
Wherein the first portion of the environment is a front view portion
The third portion being one of a sky view or a ground view portion,
Images are received at different rates corresponding to the first, second, and third portions, and more images are received for events corresponding to the first portion than for the second portion system.
제 63 항에 있어서,
상기 제 1 부분에 대응하는 상기 콘텐트는 이벤트가 진행된 동안 캡처되어 상기 재생 디바이스로 스트리밍되는 실시간 콘텐트를 포함하고,
상기 제 2 및 제 3 부분들에 대응하는 상기 이미지들에 대응하는 상기 콘텐트는 비실시간 이미지들인, 콘텐트 재생 시스템.
64. The method of claim 63,
Wherein the content corresponding to the first portion includes real-time content captured during streaming and streamed to the playback device,
And wherein the content corresponding to the images corresponding to the second and third portions is non real-time images.
제 64 항에 있어서,
상기 제어 정보 수신 모듈은 또한 상기 환경의 상기 제 2 부분에 대응하는 복수의 이미지들 중 어느 것이 상기 이벤트의 일 부분 동안 사용되어야 하는지를 나타내는 이미지 선택 정보를 수신하도록 구성되고,
상기 출력 이미지 콘텐트 스트림 기반 생성 모듈은 상기 수신된 이미지 선택 정보에 기초한 상기 환경의 상기 제 2 부분에 대응하는 이미지를, 상기 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하도록 구성되는 부분으로서 선택하도록 구성되는, 콘텐트 재생 시스템.
65. The method of claim 64,
The control information receiving module is further configured to receive image selection information indicating which of a plurality of images corresponding to the second portion of the environment should be used during a portion of the event,
Wherein the output image content stream based generation module is configured to select an image corresponding to the second portion of the environment based on the received image selection information as a portion that is configured to generate one or more output images corresponding to the current field of view Lt; / RTI >
제 65 항에 있어서,
이미지가 상기 시야의 일 부분에 대해 이용 가능하지 않은 것을 결정하도록 구성된 누락 부분 결정 모듈;
이미지가 이용가능하지 않은 상기 시야의 상기 부분에 대해 사용될 이미지를 합성하도록 구성된 이미지 합성기 모듈; 및
상기 현재 시야에 대응하는 이미지를 생성하기 위해 상기 합성된 이미지를 수신된 이미지의 적어도 일 부분과 조합하도록 구성된 합성된 이미지 통합 모듈을 추가로 포함하는, 콘텐트 재생 시스템.
66. The method of claim 65,
A missing portion determination module configured to determine that an image is not available for a portion of the field of view;
An image synthesizer module configured to synthesize an image to be used for the portion of the field of view where an image is not available; And
Further comprising a synthesized image integration module configured to combine the synthesized image with at least a portion of the received image to produce an image corresponding to the current view.
제 52 항에 있어서,
상기 제 1 이미지 콘텐트는 왼쪽 눈 이미지 및 오른쪽 눈 이미지를 포함하는 입체 영상 이미지 콘텐트인, 콘텐트 재생 시스템.
53. The method of claim 52,
Wherein the first image content is a stereoscopic image content including a left eye image and a right eye image.
프로세서 실행 가능한 명령들을 포함하는 비일시적 기계 판독 가능한 매체에 있어서,
상기 프로세서 실행 가능한 명령들은, 콘텐트 재생 시스템의 프로세서로서 실행될 때, 상기 시스템이:
현재 시야에 대응하는 뷰어의 머리 위치를 결정하는 단계;
환경의 제 1 부분에 대응하는 콘텐트를 제공하는 제 1 콘텐트 스트림을 수신하는 단계;
상기 제 1 콘텐트 스트림에 포함된 적어도 일부 수신된 콘텐트 및 ⅰ) 상기 환경의 제 2 부분에 대응하는 저장된 콘텐트 또는 ⅱ) 상기 환경의 제 2 부분을 시뮬레이션하는 합성 이미지에 기초하여 상기 현재 시야에 대응하는 하나 이상의 출력 이미지들을 생성하는 단계; 및
상기 하나 이상의 생성된 출력 이미지들 중 하나인 제 1 출력 이미지를 출력 또는 디스플레이하는 단계를 수행하도록 제어하는, 비일시적 기계 판독 가능한 매체.
17. A non-transitory machine-readable medium comprising processor executable instructions,
Wherein the processor executable instructions, when executed as a processor of a content playback system,
Determining a head position of a viewer corresponding to a current visual field;
Receiving a first content stream that provides content corresponding to a first portion of the environment;
At least some received content included in the first content stream and i) stored content corresponding to a second portion of the environment or ii) a second portion corresponding to the current view based on a composite image simulating a second portion of the environment Generating one or more output images; And
To output or display a first output image that is one of the one or more generated output images.
KR1020167036714A 2014-05-29 2015-05-29 Methods and apparatus for delivering content and/or playing back content Active KR102407283B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020227019042A KR102611448B1 (en) 2014-05-29 2015-05-29 Methods and apparatus for delivering content and/or playing back content

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US201462004547P 2014-05-29 2014-05-29
US62/004,547 2014-05-29
PCT/US2015/033420 WO2015184416A1 (en) 2014-05-29 2015-05-29 Methods and apparatus for delivering content and/or playing back content

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020227019042A Division KR102611448B1 (en) 2014-05-29 2015-05-29 Methods and apparatus for delivering content and/or playing back content

Publications (2)

Publication Number Publication Date
KR20170015938A true KR20170015938A (en) 2017-02-10
KR102407283B1 KR102407283B1 (en) 2022-06-10

Family

ID=54699946

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020227019042A Active KR102611448B1 (en) 2014-05-29 2015-05-29 Methods and apparatus for delivering content and/or playing back content
KR1020167036714A Active KR102407283B1 (en) 2014-05-29 2015-05-29 Methods and apparatus for delivering content and/or playing back content

Family Applications Before (1)

Application Number Title Priority Date Filing Date
KR1020227019042A Active KR102611448B1 (en) 2014-05-29 2015-05-29 Methods and apparatus for delivering content and/or playing back content

Country Status (6)

Country Link
EP (1) EP3149937A4 (en)
JP (1) JP2017527230A (en)
KR (2) KR102611448B1 (en)
CN (1) CN106416239B (en)
CA (1) CA2948642A1 (en)
WO (1) WO2015184416A1 (en)

Cited By (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20190104053A (en) * 2017-02-15 2019-09-05 애플 인크. Processing of isotropic object data to compensate for distortion by spherical projections
WO2019245299A1 (en) * 2018-06-20 2019-12-26 삼성전자 주식회사 Method and device for processing 360-degree image
US10924747B2 (en) 2017-02-27 2021-02-16 Apple Inc. Video coding techniques for multi-view video
KR20210029153A (en) * 2018-05-22 2021-03-15 후아웨이 테크놀러지 컴퍼니 리미티드 VR video playback method, terminal, and server
US10999602B2 (en) 2016-12-23 2021-05-04 Apple Inc. Sphere projected motion estimation/compensation and mode decision
US11093752B2 (en) 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
WO2022060175A1 (en) * 2020-09-21 2022-03-24 삼성전자 주식회사 Method and device for transmission of image content using edge computing service

Families Citing this family (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10204658B2 (en) 2014-07-14 2019-02-12 Sony Interactive Entertainment Inc. System and method for use in playing back panorama video content
CN106937128A (en) * 2015-12-31 2017-07-07 幸福在线(北京)网络技术有限公司 A kind of net cast method, server and system and associated uses
CN105791882B (en) * 2016-03-22 2018-09-18 腾讯科技(深圳)有限公司 Method for video coding and device
CN109891906B (en) * 2016-04-08 2021-10-15 维斯比特股份有限公司 System and method for delivering a 360 ° video stream
US10587934B2 (en) * 2016-05-24 2020-03-10 Qualcomm Incorporated Virtual reality video signaling in dynamic adaptive streaming over HTTP
US10219014B2 (en) 2016-06-02 2019-02-26 Biamp Systems, LLC Systems and methods for bandwidth-limited video transport
WO2018004936A1 (en) * 2016-06-30 2018-01-04 Sony Interactive Entertainment Inc. Apparatus and method for providing and displaying content
US20180007422A1 (en) * 2016-06-30 2018-01-04 Sony Interactive Entertainment Inc. Apparatus and method for providing and displaying content
KR20180025797A (en) * 2016-09-01 2018-03-09 삼성전자주식회사 Method for Streaming Image and the Electronic Device supporting the same
CN109891850B (en) 2016-09-09 2023-04-04 Vid拓展公司 Method and apparatus for reducing 360 degree view adaptive streaming media delay
CN109716757A (en) * 2016-09-13 2019-05-03 交互数字Vc控股公司 Method, apparatus and stream for immersive video format
JP7065836B6 (en) * 2016-09-29 2022-06-06 コーニンクレッカ フィリップス エヌ ヴェ Image processing
WO2018063957A1 (en) * 2016-09-30 2018-04-05 Silver VR Technologies, Inc. Methods and systems for virtual reality streaming and replay of computer video games
KR102633595B1 (en) * 2016-11-21 2024-02-05 삼성전자주식회사 Display apparatus and the control method thereof
KR102733930B1 (en) 2016-11-25 2024-11-26 삼성전자주식회사 Image processing apparatus and method for image processing thereof
US10244215B2 (en) 2016-11-29 2019-03-26 Microsoft Technology Licensing, Llc Re-projecting flat projections of pictures of panoramic video for rendering by application
US10244200B2 (en) 2016-11-29 2019-03-26 Microsoft Technology Licensing, Llc View-dependent operations during playback of panoramic video
US10595069B2 (en) 2016-12-05 2020-03-17 Adobe Inc. Prioritizing tile-based virtual reality video streaming using adaptive rate allocation
FI20165925L (en) * 2016-12-05 2018-06-06 Rolls Royce Oy Ab Optimization of data stream transfers from sea vessels
CN108156484B (en) * 2016-12-05 2022-01-14 奥多比公司 Prioritizing tile-based virtual reality video streams with adaptive rate allocation
US10242714B2 (en) 2016-12-19 2019-03-26 Microsoft Technology Licensing, Llc Interface for application-specified playback of panoramic video
CN108668138B (en) * 2017-03-28 2021-01-29 华为技术有限公司 Video downloading method and user terminal
US10979663B2 (en) * 2017-03-30 2021-04-13 Yerba Buena Vr, Inc. Methods and apparatuses for image processing to optimize image resolution and for optimizing video streaming bandwidth for VR videos
US10311630B2 (en) * 2017-05-31 2019-06-04 Verizon Patent And Licensing Inc. Methods and systems for rendering frames of a virtual scene from different vantage points based on a virtual entity description frame of the virtual scene
US20210204019A1 (en) * 2017-07-18 2021-07-01 Hewlett-Packard Development Company, L.P. Virtual reality buffering
KR20200064998A (en) * 2017-10-20 2020-06-08 소니 주식회사 Playback apparatus and method, and generating apparatus and method
TWI653882B (en) 2017-11-23 2019-03-11 宏碁股份有限公司 Video device and encoding/decoding method for 3d objects thereof
US10990831B2 (en) 2018-01-05 2021-04-27 Pcms Holdings, Inc. Method to create a VR event by evaluating third party information and re-providing the processed information in real-time
KR102549932B1 (en) * 2018-01-22 2023-07-03 애플 인크. Method and device for presenting synthesized reality companion content
JP7059662B2 (en) * 2018-02-02 2022-04-26 トヨタ自動車株式会社 Remote control system and its communication method
EP4254903A3 (en) * 2018-02-06 2023-10-11 Phenix Real Time Solutions, Inc. Simulating a local experience by live streaming sharable viewpoints of a live event
CN110198457B (en) * 2018-02-26 2022-09-02 腾讯科技(深圳)有限公司 Video playing method and device, system, storage medium, terminal and server thereof
KR102638415B1 (en) 2018-03-22 2024-02-19 브이아이디 스케일, 인크. Viewport dependent video streaming events
US10666863B2 (en) 2018-05-25 2020-05-26 Microsoft Technology Licensing, Llc Adaptive panoramic video streaming using overlapping partitioned sections
US10764494B2 (en) 2018-05-25 2020-09-01 Microsoft Technology Licensing, Llc Adaptive panoramic video streaming using composite pictures
KR20190136417A (en) * 2018-05-30 2019-12-10 삼성전자주식회사 Method for tramsmitting stereoscopic 360 degree video data, display apparatus thereof, and storing device of video data thereof
EP3588970A1 (en) * 2018-06-22 2020-01-01 Koninklijke Philips N.V. Apparatus and method for generating an image data stream
CN111614974B (en) * 2020-04-07 2021-11-30 上海推乐信息技术服务有限公司 Video image restoration method and system
US20220103655A1 (en) * 2020-09-29 2022-03-31 International Business Machines Corporation Proactively selecting virtual reality content contexts
US11632531B1 (en) * 2021-05-03 2023-04-18 Amazon Technologies, Inc. Synchronization and presentation of multiple 3D content streams
US11930059B2 (en) * 2021-11-05 2024-03-12 Tencent America LLC Immersive media streaming prioritized by frequency of asset reuse
CN115250363A (en) * 2022-09-22 2022-10-28 广州市千钧网络科技有限公司 Multi-view live broadcast system

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120120332A (en) * 2010-01-22 2012-11-01 소니 컴퓨터 엔터테인먼트 아메리카 엘엘씨 Capturing views and movements of actors performing within generated scenes
US20130219012A1 (en) * 2012-02-22 2013-08-22 Citrix Systems, Inc. Hierarchical Display

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6466254B1 (en) * 1997-05-08 2002-10-15 Be Here Corporation Method and apparatus for electronically distributing motion panoramic images
JPH1127577A (en) * 1997-06-30 1999-01-29 Hitachi Ltd Virtual viewpoint image system
US20040104935A1 (en) * 2001-01-26 2004-06-03 Todd Williamson Virtual reality immersion system
JP4461739B2 (en) * 2003-08-18 2010-05-12 ソニー株式会社 Imaging device
US8130260B2 (en) * 2005-11-09 2012-03-06 Johns Hopkins University System and method for 3-dimensional display of image data
JP2009017064A (en) * 2007-07-03 2009-01-22 Hitachi Ltd Video receiving apparatus and multicast distribution content reception control method
KR101313797B1 (en) * 2009-12-18 2013-10-01 한국전자통신연구원 Apparatus and method for presenting display of 3D image using head tracking
US20130007831A1 (en) * 2010-03-05 2013-01-03 Thomson Licensing Bit rate adjustment in an adaptive streaming system
US8988512B2 (en) * 2011-04-14 2015-03-24 Mediatek Inc. Method for adjusting playback of multimedia content according to detection result of user status and related apparatus thereof
FR2988964A1 (en) * 2012-03-30 2013-10-04 France Telecom Method for receiving immersive video content by client entity i.e. smartphone, involves receiving elementary video stream, and returning video content to smartphone from elementary video stream associated with portion of plan
CN103533340B (en) * 2013-10-25 2016-04-06 深圳市汉普电子技术开发有限公司 The bore hole 3D player method of mobile terminal and mobile terminal

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20120120332A (en) * 2010-01-22 2012-11-01 소니 컴퓨터 엔터테인먼트 아메리카 엘엘씨 Capturing views and movements of actors performing within generated scenes
US20130219012A1 (en) * 2012-02-22 2013-08-22 Citrix Systems, Inc. Hierarchical Display

Cited By (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10999602B2 (en) 2016-12-23 2021-05-04 Apple Inc. Sphere projected motion estimation/compensation and mode decision
US11818394B2 (en) 2016-12-23 2023-11-14 Apple Inc. Sphere projected motion estimation/compensation and mode decision
KR20190104053A (en) * 2017-02-15 2019-09-05 애플 인크. Processing of isotropic object data to compensate for distortion by spherical projections
US11259046B2 (en) 2017-02-15 2022-02-22 Apple Inc. Processing of equirectangular object data to compensate for distortion by spherical projections
US10924747B2 (en) 2017-02-27 2021-02-16 Apple Inc. Video coding techniques for multi-view video
US11093752B2 (en) 2017-06-02 2021-08-17 Apple Inc. Object tracking in multi-view video
KR20210029153A (en) * 2018-05-22 2021-03-15 후아웨이 테크놀러지 컴퍼니 리미티드 VR video playback method, terminal, and server
US11765427B2 (en) 2018-05-22 2023-09-19 Huawei Technologies Co., Ltd. Virtual reality video playing method, terminal, and server
WO2019245299A1 (en) * 2018-06-20 2019-12-26 삼성전자 주식회사 Method and device for processing 360-degree image
US11989849B2 (en) 2018-06-20 2024-05-21 Samsung Electronics Co., Ltd. Method and device for processing 360-degree image
WO2022060175A1 (en) * 2020-09-21 2022-03-24 삼성전자 주식회사 Method and device for transmission of image content using edge computing service
US12058392B2 (en) 2020-09-21 2024-08-06 Samsung Electronics Co., Ltd. Method and device for transmitting video content by using edge computing service

Also Published As

Publication number Publication date
CA2948642A1 (en) 2015-12-03
CN106416239A (en) 2017-02-15
KR102611448B1 (en) 2023-12-07
CN106416239B (en) 2019-04-09
EP3149937A4 (en) 2018-01-10
JP2017527230A (en) 2017-09-14
KR20220081390A (en) 2022-06-15
KR102407283B1 (en) 2022-06-10
EP3149937A1 (en) 2017-04-05
WO2015184416A1 (en) 2015-12-03

Similar Documents

Publication Publication Date Title
US11871085B2 (en) Methods and apparatus for delivering content and/or playing back content
KR102407283B1 (en) Methods and apparatus for delivering content and/or playing back content
US12081723B2 (en) Methods and apparatus for receiving and/or playing back content
US11381801B2 (en) Methods and apparatus for receiving and/or using reduced resolution images
RU2665872C2 (en) Stereo image viewing
KR20170008725A (en) Methods and apparatus for streaming content

Legal Events

Date Code Title Description
PA0105 International application

Patent event date: 20161228

Patent event code: PA01051R01D

Comment text: International Patent Application

PG1501 Laying open of application
PA0201 Request for examination

Patent event code: PA02012R01D

Patent event date: 20200528

Comment text: Request for Examination of Application

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20210322

Patent event code: PE09021S01D

PN2301 Change of applicant

Patent event date: 20210413

Comment text: Notification of Change of Applicant

Patent event code: PN23011R01D

E902 Notification of reason for refusal
PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20210910

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20220304

PA0104 Divisional application for international application

Comment text: Divisional Application for International Patent

Patent event code: PA01041R01D

Patent event date: 20220603

PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20220603

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20220607

End annual number: 3

Start annual number: 1

PG1601 Publication of registration