KR20220110787A - 이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응 - Google Patents

이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응 Download PDF

Info

Publication number
KR20220110787A
KR20220110787A KR1020227022429A KR20227022429A KR20220110787A KR 20220110787 A KR20220110787 A KR 20220110787A KR 1020227022429 A KR1020227022429 A KR 1020227022429A KR 20227022429 A KR20227022429 A KR 20227022429A KR 20220110787 A KR20220110787 A KR 20220110787A
Authority
KR
South Korea
Prior art keywords
media
content
format
dimensional format
client
Prior art date
Application number
KR1020227022429A
Other languages
English (en)
Other versions
KR102598603B1 (ko
Inventor
아리안 힌즈
스테판 웽거
Original Assignee
텐센트 아메리카 엘엘씨
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US17/406,268 external-priority patent/US12003792B2/en
Application filed by 텐센트 아메리카 엘엘씨 filed Critical 텐센트 아메리카 엘엘씨
Priority to KR1020237037705A priority Critical patent/KR20230155615A/ko
Publication of KR20220110787A publication Critical patent/KR20220110787A/ko
Application granted granted Critical
Publication of KR102598603B1 publication Critical patent/KR102598603B1/ko

Links

Images

Classifications

    • 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/251Learning process for intelligent management, e.g. learning user preferences for recommending movies
    • 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/158Switching image signals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/04Architecture, e.g. interconnection topology
    • G06N3/045Combinations of networks
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/20Image signal generators
    • H04N13/261Image signal generators with monoscopic-to-stereoscopic image conversion
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N13/00Stereoscopic video systems; Multi-view video systems; Details thereof
    • H04N13/30Image reproducers
    • H04N13/302Image reproducers for viewing without the aid of special glasses, i.e. using autostereoscopic displays
    • H04N13/31Image reproducers for viewing without the aid of special glasses, i.e. using autostereoscopic displays using parallax barriers
    • 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
    • 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/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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/30Monitoring
    • G06F11/34Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment
    • G06F11/3438Recording or statistical evaluation of computer activity, e.g. of down time, of input/output operation ; Recording or statistical evaluation of user activity, e.g. usability assessment monitoring of user actions
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Computing Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Artificial Intelligence (AREA)
  • Computational Linguistics (AREA)
  • Biomedical Technology (AREA)
  • Evolutionary Computation (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Processing Or Creating Images (AREA)

Abstract

몰입형 미디어를 스트리밍하기 위해, 방법, 컴퓨터 프로그램 및 컴퓨터 시스템이 제공된다. 이 방법은 2차원 포맷의 콘텐츠를 인제스팅하는 단계; 인제스팅된 콘텐츠를 신경망 기반의 3차원 포맷으로 변환하는 단계; 및 변환된 콘텐츠를 클라이언트 종단점으로 스트리밍하는 단계를 포함한다.

Description

이기종 클라이언트 종단점에 대한 스트리밍을 위한 2D 비디오의 적응
본 출원은 미국 특허청에 2020년 12월 8일에 출원된 미국 가출원 번호 제63/122,769호 및 2021년 8월 19일에 출원된 미국 특허 출원 번호 제17/406,268호에 대한 우선권을 주장하는 바이며, 그 전체가 본 명세서에 참고로 포함된다.
본 개시는 일반적으로 데이터 처리 분야에 관한 것으로, 특히 비디오 코딩에 관한 것이다.
"몰입형 미디어(Immersive Media)"는 일반적으로 사용자가 미디어 경험에 물리적으로 존재한다는 인식을 생성하거나 향상시키기 위해 임의의 또는 모든 인간 감각 체계(시각(visual), 청각(auditory), 체성 감각(somatosensory), 후각 및 가능한 미각)를 자극하는 미디어를 의미하며, 즉, "레거시 미디어(legacy media)"로 알려진 시간 지정(timed) 2차원(two-dimensional, 2D) 비디오 및 대응하는 오디오에 대해 기존 상용 네트워크를 통해 배포되는 것 이상이다. 몰입형 미디어와 레거시 미디어는 모두 시간 지정(timed) 미디어와 시간 지정되지 않은(untimed) 미디어로 구분될 수 있다.
시간 지정 미디어는 시간에 따라 구조화되고 제시되는(presented) 미디어를 의미한다. 예를 들면, 영화 특집, 뉴스 보도, 에피소드 콘텐츠가 있으며, 모두 기간(periods of time)별로 정리되어 있다. 레거시 비디오 및 오디오는 일반적으로 시간 지정 미디어로 간주된다.
시간 지정되지 않은 미디어는 시간에 의해 구조화되지 않은 미디어이며; 그러나 오히려 논리적, 공간적 및/또는 시간적 관계에 의해 구조화된다. 예를 들어, 사용자가 게임 디바이스에 의해 생성된 경험을 제어할 수 있는 비디오 게임이 있다. 시간 지정되지 않은 미디어의 다른 예는 카메라로 촬영한 정지 이미지 사진이다. 시간 지정되지 않은 미디어는 예를 들어 비디오 게임을 위한 장면의 연속 루프 오디오 또는 비디오 세그먼트에서 시간 지정 미디어를 통합할 수 있다. 반대로, 시간 지정 미디어는 시간 지정되지 않은 미디어, 예를 들어 고정된 정지 이미지가 배경으로 있는 비디오를 통합할 수 있다.
몰입형 미디어 지원 디바이스(immersive media-capable device)는 몰입형 미디어에 액세스, 해석 및 제시할(present) 수 있는 어빌리티(ability)를 갖춘 디바이스를 의미할 수 있다. 이러한 미디어 및 디바이스는 미디어의 수량과 포맷, 이러한 미디어를 대규모로 배포하기 위해 즉, 네트워크를 통해 레거시 비디오 및 오디오 미디어와 동등한 배포(distribution)를 달성하기 위해 필요한 네트워크 리소스의 수 및 유형의 측면에서 이질적이다. 이에 반해, 랩톱 디스플레이, 텔레비전 및 모바일 핸드셋 디스플레이와 같은 레거시 디바이스는 이러한 디바이스가 모두 직사각형 디스플레이 화면으로 구성되고 2D 직사각형 비디오 또는 정지 이미지를 주요 미디어 포맷으로 사용하기 때문에 기능면에서 동질적이다.
몰입형 미디어를 스트리밍하기 위한 방법, 시스템 및 컴퓨터가 판독 가능한 매체가 제공된다.
본 개시의 측면에 따르면, 프로세서에 의해 실행 가능한 몰입형 미디어를 스트리밍하는 방법은, 2차원 포맷의 콘텐츠를 인제스팅하는(ingesting) 단계; 상기 인제스팅된 콘텐츠를 신경망에 기반하여 3차원 포맷으로 변환하는 단계; 및 상기 변환된 콘텐츠를 클라이언트 종단점(client end-point)으로 스트리밍하는 단계를 포함한다.
상기 인제스팅된 콘텐츠를 변환하는 것은, 상기 인제스팅된 콘텐츠에 포함된 상관 이미지에 기반하여 상기 인제스팅된 콘텐츠에 묘사된 장면의 체적 표현(volumetric representation)을 상기 신경망에 의해 도출하는 것을 포함할 수 있다.
상기 2차원 포맷은 단일 뷰(single-view) 2차원 포맷일 수 있다.
상기 2차원 포맷은 다중 뷰(multiple-view) 2차원 포맷일 수 있다.
상기 인제스팅된 컨텐츠는 중앙 처리 유닛 및 그래픽 처리 유닛 중 적어도 하나를 포함하는 적응(adaptation) 처리 유닛을 사용하여 변환될 수 있다.
상기 신경망은 상기 적응 처리 유닛에 포함된 메모리에 저장된 복수의 신경망 모델 중 상기 적응 처리 유닛에 의해 선택된 신경망 모델에 대응할 수 있다.
상기 클라이언트 종단점이 2차원 포맷을 지원할 수 없을 수 있다.
상기 클라이언트 종단점은 텔레비전, 컴퓨터, 머리 장착형 디스플레이, 렌티큘러 라이트 필드 디스플레이, 홀로그램 디스플레이, 증강 현실 디스플레이, 및 고밀도(dense) 라이트 필드 디스플레이 중 적어도 하나를 포함할 수 있다.
본 개시의 측면에 따르면, 몰입형 미디어를 스트리밍하는 디바이스는, 프로그램 코드를 저장하도록 구성된 적어도 하나의 메모리; 및 상기 프로그램 코드를 판독하고 상기 프로그램 코드에 의해 명령된 대로 작동하도록 구성된 적어도 하나의 프로세서를 포함하고, 상기 프로그램 코드는, 상기 적어도 하나의 프로세서가, 2차원 포맷의 콘텐츠를 인제스팅하게 하도록 구성된 인제스팅 코드; 상기 적어도 하나의 프로세서가, 상기 인제스팅된 콘텐츠를 신경망에 기반하여 3차원 포맷으로 변환하게 하도록 구성된 변환 코드; 및 상기 적어도 하나의 프로세서가, 상기 변환된 콘텐츠를 클라이언트 종단점으로 스트리밍하게 하도록 구성된 스트리밍 코드를 포함한다.
상기 변환 코드는, 상기 적어도 하나의 프로세서가, 상기 인제스팅된 콘텐츠에 포함된 상관 이미지에 기반하여 상기 인제스팅된 콘텐츠에 묘사된 장면의 체적 표현을 상기 신경망에 의해 도출하게 하도록 구성된 도출 코드를 포함할 수 있다.
상기 2차원 포맷은 단일 뷰 2차원 포맷일 수 있다.
상기 2차원 포맷은 다중 뷰 2차원 포맷일 수 있다.
상기 인제스팅된 콘텐츠는 상기 스트리밍하는 디바이스에 포함된 적응 처리 유닛을 사용하여 변환될 수 있으며, 상기 적응 처리 유닛은 중앙 처리 유닛 및 그래픽 처리 유닛 중 적어도 하나를 포함한다.
상기 신경망은 상기 적어도 하나의 메모리에 저장된 복수의 신경망 모델 중 상기 적응 처리 유닛에 의해 선택된 신경망 모델에 대응할 수 있다.
상기 클라이언트 종단점이 2차원 포맷을 지원할 수 없을 수 있다.
상기 클라이언트 종단점은 텔레비전, 컴퓨터, 머리 장착형 디스플레이, 렌티큘러 라이트 필드 디스플레이, 홀로그램 디스플레이, 증강 현실 디스플레이, 및 고밀도 라이트 필드 디스플레이 중 적어도 하나를 포함할 수 있다.
본 개시의 측면에 따르면, 컴퓨터가 판독 가능한 비일시적 매체는 명령을 저장하고, 상기 명령은, 몰입형 미디어 스트리밍을 위한 디바이스의 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서가, 2차원 포맷의 콘텐츠를 인제스팅하고; 상기 인제스팅된 콘텐츠를 신경망에 기반하여 3차원 포맷으로 변환하며; 그리고 상기 변환된 콘텐츠를 클라이언트 종단점으로 스트리밍하게 하는 하나 이상의 명령을 포함한다.
상기 명령은 추가로, 상기 적어도 하나의 프로세서가, 상기 인제스팅된 콘텐츠에 포함된 상관 이미지에 기반하여 상기 인제스팅된 콘텐츠에 묘사된 장면의 체적 표현을 상기 신경망에 의해 도출하게 할 수 있다.
상기 2차원 포맷은 단일 뷰 2차원 포맷일 수 있다.
상기 2차원 포맷은 다중 뷰 2차원 포맷일 수 있다.
이들 및 다른 목적, 특징 및 이점은 첨부 도면과 관련하여 판독될 예시적인 실시예의 다음의 상세한 설명으로부터 명백해질 것이다. 도면의 다양한 특징은 상세한 설명과 함께 당업자의 이해를 용이하게 하기 위한 명료함을 위한 것이기 때문에 스케일링하지 않는 것이다. 도면에서:
도 1은 시간 지정 레거시 미디어 배포의 종단 간 프로세스의 개략도이다.
도 2는 시간 지정 레거시 미디어의 스트리밍에 사용되는 표준 미디어 포맷의 개략도이다.
도 3은 시간 지정 몰입형 미디어의 표현 및 스트리밍을 위한 데이터 모델의 실시예의 개략도이다.
도 4는 시간 지정되지 않은 몰입형 미디어의 표현 및 스트리밍을 위한 데이터 모델의 실시예의 개략도이다.
도 5는 내추럴 장면을 캡처하고 이를 이기종 클라이언트 종단점을 서빙하는 네트워크에 대한 인제스트 포맷으로 사용될 수 있는 표현으로 변환하는 프로세스의 개략도이다.
도 6은 3D 모델링 도구 및 포맷을 사용하여 이기종 클라이언트 종단점을 서빙하는 네트워크에 대한 인제스트 포맷으로 사용될 수 있는 합성 장면의 표현을 생성하는 프로세스의 개략도이다.
도 7은 컴퓨터 시스템의 시스템도이다.
도 8은 복수의 이기종 클라이언트 종단점을 서빙하는 네트워크의 개략도이다.
도 9는 예를 들어 특정 몰입형 미디어 클라이언트 종단점에 의한 소비를 위해 미디어를 적응시키는 네트워크의 프로세스 이전에, 미디어 인제스트 포맷으로 표현된 특정 미디어에 관한 적응 정보를 제공하는 네트워크의 개략도이다.
도 10은 소스 미디어를 그의 인제스트 포맷으로부터 특정 클라이언트 종단점에 적합한 특정 포맷으로 변환하는 미디어 렌더 변환기로 구성된 미디어 적응 프로세스의 시스템도이다.
도 11은 적응된 소스 미디어를 표현 및 스트리밍에 적합한 데이터 모델로 포맷팅하는 네트워크의 개략도이다.
도 12는 도 12의 데이터 모델을 네트워크 프로토콜 패킷의 페이로드에 단편화하는 미디어 스트리밍 프로세스의 시스템도이다.
도 13은 인제스트 포맷의 특정 몰입형 미디어를 특정 몰입형 미디어 클라이언트 종단점에 대해 스트리밍 가능하고 적절한 배포 포맷에 적응시키는 네트워크의 시퀀스도이다.
도 14는 몰입형 콘텐츠 포맷 및 레거시 콘텐츠 포맷 모두, 즉 2D 비디오 포맷만, 또는 몰입형 비디오 포맷 및 2D 비디오 포맷 모두로 구성된 도 10의 인제스트 미디어 포맷 및 애셋(1002)의 개략도이다.
청구된 구조 및 방법의 상세한 실시예가 여기에 개시되어 있으며; 그러나, 개시된 실시예는 다양한 형태로 구현될 수 있는 청구된 구조 및 방법의 단지 예시인 것으로 이해될 수 있다. 그러나 이러한 구조 및 방법은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되는 것으로 해석되어서는 안 된다. 오히려, 이러한 예시적인 실시예는 본 개시가 철저하고 완전하며 본 기술 분야의 통상의 지식을 가진 자에게 그 범위를 충분히 전달하도록 제공된다. 설명에서, 잘 알려진 특징 및 기술의 세부사항은 제시된 실시예를 불필요하게 모호하게 하는 것을 피하기 위해 생략될 수 있다.
실시예들은 일반적으로 데이터 처리 분야, 특히 비디오 코딩에 관한 것이다. 여기에 설명된 기술은 네트워크가 하나 이상의(일반적으로 작은) 뷰(view) 수를 포함하는 미디어의 2D 비디오 소스를 인제스팅하고, 다양한 클라이언트 종단점에 포맷된 미디어를 실제로 배포하기 전에, 다양한 이기종 클라이언트 종단점 디바이스, 이들의 서로 다른 특징 및 능력(capability), 그리고 클라이언트 종단점에서 사용되는 애플리케이션의 요구 사항을 수용하기 위해, 2D 비디오 소스를 하나 이상의 스트리밍 가능한 "배포 포맷(distribution format)"에 적응시킬(adapt) 수 있도록 한다. 2D 미디어 소스를 스트리밍 가능한 다양한 배포 포맷으로 재포맷하는 어빌리티를 통해 네트워크는 다양한 능력과 사용 가능한 컴퓨팅 리소스(compute resource)를 통해 다양한 클라이언트 종단점을 동시에 서비스할 수 있으며, 상업용 네트워크에서 홀로그램 및 라이트 필드 디스플레이와 같은 새로운 몰입형 클라이언트 종단점을 지원할 수 있다. 2D 미디어 소스를 적응시키는 이러한 어빌리티는 사용 가능한 몰입형 미디어 소스가 없을 때, 그리고 클라이언트가 2D 미디어를 기반으로 하는 배포 포맷을 지원할 수 없을 때 특히 중요하다. 이 시나리오에서, 신경망 기반 접근 방식은 2D 미디어에서 타깃 클라이언트 종단점에 적합한 체적 포맷(volumetric format)으로의 적응을 수행하는 데 사용된다.
앞에서 설명한 것처럼, "몰입형 미디어"는 일반적으로 사용자가 미디어 경험에 물리적으로 존재한다는 인식을 생성하거나 향상시키기 위해 임의의 또는 모든 인간 감각 체계(시각, 청각, 체성 감각, 후각 및 가능한 미각)를 자극하는 미디어를 의미하며, 즉, "레거시 미디어"로 알려진 시간 지정 2차원(2D) 비디오 및 대응하는 오디오에 대해 기존 상용 네트워크를 통해 배포되는 것 이상이다. 몰입형 미디어와 레거시 미디어는 모두 시간 지정 미디어와 시간 지정되지 않은 미디어로 구분될 수 있다.
시간 지정 미디어는 시간에 따라 구조화되고 제시되는 미디어를 의미한다. 예를 들면, 영화 특집, 뉴스 보도, 에피소드 콘텐츠가 있으며, 모두 기간별로 정리되어 있다. 레거시 비디오 및 오디오는 일반적으로 시간 지정 미디어로 간주된다.
시간 지정되지 않은 미디어는 시간에 의해 구조화되지 않은 미디어이며; 그러나 오히려 논리적, 공간적 및/또는 시간적 관계에 의해 구조화된다. 예를 들어, 사용자가 게임 디바이스에 의해 생성된 경험을 제어할 수 있는 비디오 게임이 있다. 시간 지정되지 않은 미디어의 다른 예는 카메라로 촬영한 정지 이미지 사진이다. 시간 지정되지 않은 미디어는 예를 들어 비디오 게임을 위한 장면의 연속 루프 오디오 또는 비디오 세그먼트에서 시간 지정 미디어를 통합할 수 있다. 반대로, 시간 지정 미디어는 시간 지정되지 않은 미디어, 예를 들어 고정된 정지 이미지가 배경으로 있는 비디오를 통합할 수 있다.
몰입형 미디어 지원 디바이스(immersive media-capable device)는 몰입형 미디어에 액세스, 해석 및 제시할(present) 수 있는 어빌리티(ability)를 갖춘 디바이스를 의미할 수 있다. 이러한 미디어 및 디바이스는 미디어의 수량과 포맷, 이러한 미디어를 대규모로 배포하기 위해 즉, 네트워크를 통해 레거시 비디오 및 오디오 미디어와 동등한 배포를 달성하기 위해 필요한 네트워크 리소스의 수 및 유형의 측면에서 이질적이다. 이에 반해, 랩톱 디스플레이, 텔레비전 및 모바일 핸드셋 디스플레이와 같은 레거시 디바이스는 이러한 디바이스가 모두 직사각형 디스플레이 화면으로 구성되고 2D 직사각형 비디오 또는 정지 이미지를 주요 미디어 포맷으로 사용하기 때문에 기능면에서 동질적이다.
네트워크를 통한 모든 미디어의 배포는 입력 또는 네트워크 "인제스트(ingest)" 포맷에서 최종 배포 포맷으로 미디어를 재포맷하는 아키텍처 및 미디어 전달 시스템을 사용할(employ) 수 있으며, 여기서 이 배포 포맷은 타깃 클라이언트 디바이스 및 해당 애플리케이션에 적합할 뿐만 아니라 또한 네트워크를 통해 스트리밍하는 데 도움이 된다. 미디어의 "스트리밍"은 미디어의 시간적 또는 공간적 구조 중 하나 또는 둘 모두에 따라 논리적으로 조직되고 순서가 지정된 연속적인 더 작은 크기의 "청크(chunk)"로 네트워크를 통해 전달될 수 있도록, 소스 미디어를 단편화하고(fragmenting) 패킷화하는(packetizing) 것을 광범위하게 의미한다. 이러한 배포 아키텍처 및 시스템에서, 미디어는 가장 핵심적인 미디어 정보만 클라이언트에 먼저 전달되도록 압축 또는 레이어링(layering) 프로세스를 거칠 수 있다. 일부 경우에, 클라이언트가 최종 사용자에게 임의의 동일한 미디어 부분을 제시할 수 있기 전에 미디어의 일부분에 대한 모든 핵심적인 미디어 정보를 수신해야 한다.
압축 및 레이어링 프로세스의 예는 JPEG 표준(ISO/IEC 10918 Part 1)의 프로그레시브 포맷(Progressive format)으로, 이는 이미지를 레이어로 분리하여, 전체 이미지가 처음에는 초기에 초점이 맞지 않은, 즉 전체 이미지 스캔에 대한 더 낮은 차수의 DCT 계수로부터의 기본 모양과 색상으로만 제시되고, 이어서 초점이 맞도록 즉, 이미지 스캔의 더 높은 차수 DCT 계수로부터 추가 세부 레이어가 뒤따르게 한다.
미디어를 더 작은 부분으로 나누고 이들을 연속적인 네트워크 프로토콜 패킷의 페이로드 부분으로 구성하며 이러한 프로토콜 패킷을 배포하는 프로세스를, 미디어 "스트리밍(streaming)"이라고 하는 반면, 미디어를 다양한 이기종 애플리케이션 중 하나를 작동하는 다양한 이기종 클라이언트 종단점 중 하나에서 프레젠테이션(presentation)을 위해 적합한 포맷으로 변환하는 프로세스는 미디어를 "적응시키는 것(adapting))"이라고 한다.
정의
장면 그래프(Scene graph): 벡터 기반 그래픽 편집 애플리케이션 및 최신 컴퓨터 게임에서 일반적으로 사용하는 일반적인 데이터 구조로, 그래픽 장면의 논리적이고 종종(반드시 그렇지는 않음) 공간 표현을 배열하며; 그래프 구조의 노드와 꼭짓점의 컬렉션(collection)이다.
노드(Node): 시각, 오디오, 촉각(haptic), 후각, 미각 또는 관련 처리 정보의 논리적 또는 공간적 또는 시간적 표현과 관련된 정보로 구성된 장면 그래프의 v근본적인(fundamental) 엘리먼트이며; 각 노드는 최대 하나의 출력 에지(edge), 0개 이상의 입력 에지, 이에 연결된 적어도 하나의 에지(입력 또는 출력)를 가져야 한다.
기본 레이어(Base Layer): 일반적으로 애셋(asset)을 렌더링하는 데 필요한 컴퓨팅 리소스 또는 시간 또는 네트워크를 통해 애셋을 전송하는 시간을 최소화하도록 공식화된 애셋의 명목상 표현이다.
향상 레이어(Enhancement Layer): 애셋의 기본 레이어 표현에 적용될 때 기본 레이어에서 지원되지 않는 특징이나 능력을 포함하도록 기본 레이어를 보강하는 정보 세트이다.
속성(Attribute): 노드의 특정 특성 또는 특징을 표준이 되거나 또는 더 복잡한 포맷(예: 다른 노드 측면에서)으로 설명하는 데 사용되는 노드와 연관된 메타데이터이다.
컨테이너(Container): 장면 그래프와 장면의 렌더링에 필요한 모든 미디어 리소스를 포함하여, 모든 내추럴(natural) 장면, 모든 합성(synthetic) 장면 또는 합성 장면과 내추럴 장면의 혼합을 나타내기 위해 정보를 저장하고 교환하기 위한 직렬화된 포맷이다.
직렬화(Serialization): 데이터 구조 또는 객체 상태를 저장(예를 들어, 파일 또는 메모리 버퍼에)하거나 전송(예를 들어, 네트워크 연결 링크를 통해)하고 나중에 재구성할 수 있는 (예를 들어, 상이한 컴퓨터 환경에서) 포맷으로 변환하는 프로세스이다. 직렬화 포맷에 따라 결과로 나온 일련의 비트를 다시 읽을 때, 원래 객체의 의미상 동일한 복제본(clone)을 만드는 데 사용할 수 있다.
렌더러(Renderer): 음향 물리학, 빛 물리학, 시각적 인식, 청각적 인식, 수학 및 소프트웨어 개발과 관련된 분야의 선택적 혼합을 기반으로 하는 (일반적으로 소프트웨어 기반) 애플리케이션 또는 프로세스로, 입력 장면 그래프 및 애셋 컨테이너가 주어지면, 타깃 디바이스 상의 프레젠테이션 또는 장면 그래프의 렌더 타깃 노드의 속성에 의해 지정된 바와 같은 원하는 속성을 준수하는 데 적합한 일반적인 시각적 및/또는 오디오 신호를 방출한다. 시각적 기반 미디어 애셋의 경우, 렌더러는 타깃 디스플레이 또는 중간 애셋으로 저장(예: 그래픽 파이프라인의 일련의 렌더링 프로세스에 사용되는 다른 컨테이너로 다시 패키징)에 적합한 시각적 신호를 방출할 수 있으며; 오디오 기반 미디어 애셋의 경우, 렌더러는 다중 채널 확성기 및/또는 바이노럴화된(binauralized) 헤드폰에서의 프레젠테이션을 위해 또는 다른 (출력) 컨테이너로 다시 패키징하기 위해 오디오 신호를 방출할 수 있다. 렌더러의 인기 있는 예로는 Unity, Unreal이 있다.
평가(Evaluate): 출력이 추상에서 구체적인 결과로 이동하도록 하는 결과(예: 웹 페이지에 대한 문서 객체 모델(Document Object Model)의 평가와 유사)를 생성한다.
스크립팅 언어(Scripting language): 런타임에 렌더러에 의해 실행되어 장면 그래프 노드에 대해 수행된 동적 입력 및 변수 상태 변경을 처리할 수 있는 해석된 프로그래밍 언어로, 이는 공간 및 시간 객체 토폴로지(물리적 힘, 제약 조건, IK, 변형, 충돌 포함), 그리고 에너지 전파 및 수송(빛, 소리)의 렌더링 및 평가에 영향을 준다.
셰이더(Shader): 원래 셰이딩(이미지 내 적절한 레벨의 빛, 어두움 및 색상의 생성)에 사용되었지만 현재는 컴퓨터 그래픽 특수 효과의 다양한 분야에서 다양한 전문 기능을 수행하거나, 셰이딩과 관련 없는 비디오 후처리 또는 그래픽과 전혀 관련 없는 기능을 수행하는, 컴퓨터 프로그램 유형이다.
경로 추적(Path Tracing): 장면의 조명이 현실에 충실하도록 3차원 장면을 렌더링하는 컴퓨터 그래픽 방법이다.
시간 지정 미디어(Timed media): 예를 들어, 특정 클락에 따른 시작 및 종료 시간을 가지는, 시간순으로 정렬된 미디어이다.
시간 지정되지 않은 미디어(Untimed media): 예를 들어, 사용자가 취한 액션(action)에 따라 실현되는 대화형 경험에서와 같이, 공간적, 논리적 또는 시간적 관계로 구성된 미디어이다.
몰입형 미디어는 몰입형 미디어 지원 디바이스에 의해 인간에게 제시될 때 시각, 청각, 미각, 촉각 및 청각의 5가지 감각 중 하나를 보다 실제적이고, 내추럴 세계 내에서의 인간의 경험에 대한 이해와 일치하는 방식으로 자극하는, 즉, 레거시 디바이스에 의해 제시되는 레거시 미디어로 달성할 수 있는 것 이상의 자극을 제공하는 하나 이상의 미디어 유형으로 간주될 수 있다. 이 콘텍스트에서, "레거시 미디어" 용어는 정지 픽처 프레임 또는 동영상 프레임 및/또는 사용자의 상호 작용을 위한 어빌리티가 일시 중지, 재생, 빨리 감기 또는 되감기로 제한되는 대응하는 오디오인 2차원(2D) 시각 미디어를 의미하며; "레거시 디바이스"는 텔레비전, 랩톱, 디스플레이 및 레거시 미디어의 프레젠테이션에만 그 능력이 제한된 모바일 디바이스를 의미한다. 소비자 대면(consumer-facing) 애플리케이션 시나리오에서, 몰입형 미디어용 프레젠테이션 디바이스(즉, 몰입형 미디어 지원 디바이스)는 특히 몰입형 미디어에 의해 구현되는 특정 정보를 활용하는 능력을 갖춘 소비자 대면 하드웨어 디바이스이므로, 이 디바이스가 물리적 세계에 대한 인간의 이해 및 상호 작용에 더 근접한 프레젠테이션을 생성할 수 있으며, 즉 레거시 디바이스가 할 수 있는 능력을 넘어선다. 레거시 디바이스는 레거시 미디어만 제시할 수 있는 어빌리티가 제한되어 있는 반면 몰입형 미디어 디바이스는 제한이 없다.
지난 10년 동안 헤드 마운트 디스플레이, 증강 현실 안경, 휴대용(hand-held) 컨트롤러, 햅틱 장갑 및 게임 콘솔을 포함하여 많은 몰입형 미디어 지원 디바이스가 소비자 시장에 도입되었다. 마찬가지로, 홀로그램 디스플레이 및 기타 형태의 체적 디스플레이가 향후 10년 이내에 등장할 태세이다. 이러한 디바이스의 즉각적이거나 임박한 가용성에도 불구하고, 상용 네트워크를 통한 몰입형 미디어 배포를 위한 일관된 종단 간 에코시스템(end-to-end ecosystem)은 여러 가지 이유로 실현되지 못했다.
그 이유 중 하나는 상업용 네트워크를 통한 대규모 미디어 배포와 관련된 두 가지 주요 사용 사례: 1) 라이브 액션 이벤트에 대한 실시간 배포, 즉, 콘텐츠가 생성되어 클라이언트 종단점에 실시간으로 또는 거의 실시간으로 배포되는 사례, 및 2) 콘텐츠를 실시간으로 배포할 필요가 없는, 즉 콘텐츠가 물리적으로 캡처되거나 생성되는 비실시간 배포인 사례를 해결할 수 있는 몰입형 미디어에 대한 단일 표준 표현이 없기 때문이다. 각각, 이 두 가지 사용 사례는 오늘날 존재하는 "방송" 및 "주문형(on-demand)" 배포 포맷과 비교할 수 있다.
실시간 배포의 경우, 콘텐츠는 하나 이상의 카메라(들)로 캡처되거나 컴퓨터 생성 기술을 사용하여 생성될 수 있다. 카메라(들)에 의해 캡처된 콘텐츠는 여기에서 "내추럴(natural)" 콘텐츠라고 하는 반면, 컴퓨터 생성 기술을 사용하여 생성된 콘텐츠는 여기에서 "합성(synthetic)" 콘텐츠라고 한다. 합성 콘텐츠를 나타내는 미디어 포맷은 3D 모델링, 시각적 효과 및 CAD/CAM 산업에서 사용되는 포맷일 수 있으며, 메시(mesh), 텍스처, 포인트 클라우드, 구조화된 체적(volume), 무정형 체적(amorphous volume)(예: 화재, 연기 및 안개에 대한), 셰이더, 절차적으로 생성된 기하학적 구조(geometry), 재료(material), 조명, 가상 카메라 정의 및 애니메이션과 같은 객체 포맷 및 도구(tool)를 포함할 수 있다. 합성 콘텐츠가 컴퓨터에서 생성되지만, 합성 미디어 포맷은 내추럴 및 합성 콘텐츠 모두에 사용될 수 있으며, 그러나 내추럴 콘텐츠를 합성 미디어 포맷(예: 합성 표현으로)으로 변환하는 프로세스는 시간 및 계산 집약적인 프로세스일 수 있으므로, 실시간 애플리케이션 및 사용 사례에는 비실용적일 수 있다.
내추럴 콘텐츠의 실시간 배포의 경우, 카메라 캡처 콘텐츠를 래스터(raster)포맷으로 배포할 수 있으며, 이는 이러한 디바이스 중 상당수가 래스터 포맷을 디스플레이하도록 설계되었기 때문에 레거시 디스플레이 디바이스에 적합하다. 즉, 레거시 디스플레이가 래스터 포맷을 디스플레이하도록 동질적으로 설계되었다는 점을 감안하면, 래스터 포맷의 배포는 래스터 포맷만 디스플레이할 수 있는 디스플레이에 최적으로 적합하다.
그러나, 몰입형 미디어 지원 디스플레이가 반드시 래스터 기반 포맷의 디스플레이로 제한되는 것은 아니다. 더욱이, 일부 몰입형 미디어 지원 디스플레이는 래스터 기반 포맷으로만 사용할 수 있는 미디어를 제시할 수 없다. 래스터 기반 포맷 이외의 포맷을 기반으로 몰입형 경험을 생성하도록 최적화된 디스플레이의 가용성은, 몰입형 미디어 배포를 위한 일관된 종단 간 에코시스템이 아직 없는 또 다른 중요한 이유이다.
다수의 상이한 몰입형 미디어 디바이스에 대한 일관된 배포 시스템을 만드는 것과 관련된 또 다른 문제는, 현재 및 새로 등장하는 몰입형 미디어 지원 디바이스 자체가 상당히 다를 수 있다는 것이다. 예를 들어, 일부 몰입형 미디어 디바이스는 헤드 마운트 디스플레이와 같이 한 번에 한 명의 사용자만 사용하도록 명시적으로 설계되었다. 다른 몰입형 미디어 디바이스는 둘 이상의 사용자가 동시에 사용할 수 있도록 설계되었으며, 예를 들어 "Looking Glass Factory 8K 디스플레이"(이하 "렌티큘러 라이트 필드(lenticular light field) 디스플레이"라고 함)는 최대 12명이 동시에 볼 수 있는 콘텐츠를 디스플레이할 수 있으며, 여기서 각 사용자는 디스플레이되는 콘텐츠에 대한 고유한 관점(perspective)(즉, 뷰)을 경험한다.
일관된 배포 시스템의 개발을 더욱 복잡하게 만드는 것은 각 디스플레이가 생성할 수 있는 고유한 관점의 수가 크게 다를 수 있다는 것이다. 대부분의 경우, 레거시 디스플레이는 콘텐츠의 단일 관점만 생성할 수 있다. 반면, 렌티큘러 라이트 필드 디스플레이는 동일한 시각적 장면의 고유한 관점을 경험하는 각 사용자와 함께 여러 사용자를 지원할 수 있다. 동일한 장면의 다수의 뷰의 생성을 달성하기 위해, 렌티큘러 라이트 필드 디스플레이는 디스플레이에 대한 입력으로 동일한 장면의 45개의 고유한 관점 또는 "뷰"가 필요한 특정 체적 보기 절두체(volumetric viewing frustum)를 생성한다. 이것은 동일한 장면에 대한 45개의 약간 상이한 고유한 래스터 표현이 캡처되고 하나의 특정 디스플레이, 즉 보기 절두체에 특정한 포맷으로 디스플레이에 배포되어야 함을 의미한다. 대조적으로, 레거시 디스플레이의 보기 절두체는 단일 2차원 평면으로 제한되어 있으므로, 디스플레이를 경험하는 동시 시청자 수에 관계없이 디스플레이의 보기 절두체를 통해 콘텐츠의 하나 이상의 보기 관점을 제시할 방법이 없다.
일반적으로 몰입형 미디어 디스플레이는 모든 디스플레이의 다음 특성: 보기 절두체의 차원(dimension) 및 체적, 동시에 지원되는 시청자 수, 포인트 기반, 광선(ray) 기반 또는 파동(wave) 기반 기술일 수 있는 보기 절두체를 채우는 데 사용되는 광학 기술, 보기 절두체를 점유하는 빛의 단위(포인트, 광선 또는 파동)의 밀도, 컴퓨팅 전력(power) 및 컴퓨팅 유형(CPU 또는 GPU)의 가용성, 전력(배터리 또는 유선)의 소스 및 가용성, 로컬 스토리지 또는 캐시의 양, 클라우드 기반 컴퓨팅 및 스토리지와 같은 보조 리소스에 대한 액세스에 따라 크게 달라질 수 있다. 이러한 특성은 몰입형 미디어 디스플레이의 이질성에 기여하며, 이는 레거시 디스플레이의 균질성과 대조적으로, 레거시 및 몰입형 디스플레이 유형을 모두 포함하여 모든 디스플레이를 지원할 수 있는 단일 배포 시스템의 개발을 복잡하게 만든다.
개시된 주제는 단일 네트워크의 콘텍스트 내에서 클라이언트 종단점으로 레거시 미디어 디스플레이 및 몰입형 미디어 디스플레이 모두를 지원할 수 있는 네트워크 기반 미디어 배포 시스템의 개발을 다룬다. 구체적으로, 입력 몰입형 미디어 소스를 클라이언트 종단점 디바이스에서 현재 실행 중인 애플리케이션을 포함하여 클라이언트 종단점 디바이스의 특정 특성에 적합한 포맷으로 적응시키는 메커니즘이 여기에서 제시된다. 입력 몰입형 미디어 소스를 적응시키는 이러한 메커니즘은 입력 몰입형 미디어의 특성을 클라이언트 디바이스에서 실행되는 애플리케이션을 포함하여 입력 몰입형 미디어의 특성을 타깃 종단점 클라이언트 디바이스의 특성과 조화시키는 것 및 그런 다음, 입력 몰입형 미디어를 타깃 종단점 및 그의 애플리케이션에 적합한 포맷으로 적응시키는 것을 포함한다.
개시된 주제의 나머지 부분은 일반성을 잃지 않고 입력 몰입형 미디어 소스를 특정 종단점 클라이언트 디바이스에 적응시키는 프로세스가, 동일한 입력 몰입형 미디어 소스를 특정 클라이언트 종단점 디바이스에서 실행 중인 특정 애플리케이션에 대해 적응시키는 프로세스와 동일하거나 유사하다고 가정한다. 즉, 입력 미디어 소스를 종단점 디바이스의 특성에 적응시키는 문제는 특정 입력 미디어 소스를 특정 애플리케이션의 특성에 적응시키는 문제와 동일한 복잡성을 갖는다.
레거시 미디어에 의해 지원되는 레거시 디바이스는 레거시 미디어의 표준 기반 표현을 생성하는 레거시 미디어 콘텐츠 제공자의 에코시스템 그리고 레거시 디바이스를 표준 레거시 콘텐츠의 소스로 연결하기 위한 네트워크 인프라를 제공하는 상용 네트워크 서비스 제공자에 의해 지원되기 때문에 광범위한 소비자 채택을 달성했다. 네트워크를 통해 레거시 미디어를 배포하는 역할 외에도, 상업용 네트워크 서비스 제공자는 콘텐츠 배포 네트워크(content distribution network, CDN)의 레거시 콘텐츠의 액세스와 레거시 클라이언트 디바이스의 페어링(pairing)을 용이하게 할 수도 있다. 적절한 포맷의 콘텐츠에 대한 액세스와 페어링되면, 레거시 클라이언트 디바이스는 최종 사용자에 대한 프레젠테이션을 위해 콘텐츠 서버로부터 상기 디바이스로 레거시 콘텐츠를 요청하거나 "풀링(pull)"할 수 있다. 그럼에도 불구하고, 네트워크 서버가 적절한 클라이언트에 적절한 미디어를 "푸시(push)"하는 아키텍처는, 전체 아키텍처 및 솔루션 설계에 추가적인 복잡성을 초래하지 않으면서 동등하게 관련이 있다.
측면들은 다양한 실시예에 따른 방법, 장치(시스템), 및 컴퓨터가 판독 가능한 매체의 흐름도 예시 및/또는 블록도를 참조하여 여기에서 설명된다. 흐름도 예시 및/또는 블록도의 각 블록, 및 흐름도 예시 및/또는 블록도의 블록 조합은 컴퓨터가 판독 가능한 프로그램 명령에 의해 구현될 수 있음이 이해될 것이다.
다음에 설명되는 예시적인 실시예는 비디오, 오디오, 기하학적(3D) 객체, 햅틱, 관련 메타데이터, 또는 클라이언트 디바이스에 대한 다른 콘텐츠를 포함하는 미디어를 배포하는 시스템 및 네트워크를 위한 아키텍처, 구조 및 컴포넌트에 관한 것이다. 특정 실시예는 이기종 몰입형 및 대화형 클라이언트 디바이스에 미디어 콘텐츠를 배포하기 위한 시스템, 구조 및 아키텍처에 관한 것이다.
도 1은 시간 지정 레거시 미디어 배포의 종단 간 프로세스의 예시적인 예시이다. 도 1에서, 시간 지정 시청각 콘텐츠는 101A에서 카메라 또는 마이크에 의해 캡처되거나, 101B에서 컴퓨터에 의해 생성되어, 준비 모듈(Preparation Module)(103)에 입력되는 2D 이미지 및 관련 오디오의 시퀀스(102)를 생성한다. 103의 출력은 편집된 콘텐츠(예: 언어 번역, 자막, 기타 편집 기능을 포함한 후반 작업용)이며, 이는 예를 들어 주문형 미디어에 대한 표준 메자닌 포맷(Mezzanine Format)으로 변환할 준비가 된 마스터 포맷 또는 변환기 모듈(Converter Module)(104)에 의해 예를 들어, 라이브 이벤트를 위한, 표준 기고 포맷(Contribution Format)이라고 한다. 미디어는 상업용 네트워크 서비스 제공자에 의해 "인제스팅되고(ingested)", 적응 모듈(105)은 미디어를 표준 배포 포맷(Distribution Format)으로 패키징되는 다양한 비트레이트, 시간 해상도(프레임 레이트) 또는 공간 해상도(프레임 크기)로 패키징한다. 결과적인 적응이 다양한 클라이언트(108)가 풀(pull) 요청(107)을 수행하여 미디어를 페치하여(fetch) 최종 사용자에게 제시하는 콘텐츠 배포 네트워크(106)에 저장된다. 마스터 포맷은 101A 또는 101B의 혼합 미디어로 구성될 수 있으며, 포맷(101A)은 예를 들어 라이브 스포츠 이벤트로부터 획득된 미디어와 같이 실시간으로 획득될 수 있다는 점에 유의하는 것이 중요하다. 또한, 클라이언트(108)는 클라이언트의 구성 및/또는 현재 네트워크 조건에 가장 적합한 특정 적응(107)을 선택할 책임이 있지만, 네트워크 서버(도 1에 도시되지 않음)가 적절한 콘텐츠를 결정하고 이어서 클라이언트(108)에 "푸시"하는 것이 동등하게 가능하다.
도 2는 레거시 시간 지정 미디어, 예를 들어 비디오, 오디오 및 지원 메타데이터(자막에 사용되는 것과 같은 시간 지정 텍스트 포함)의 배포에 사용되는 표준 미디어 포맷의 예이다. 도 1의 항목(106)에서 언급된 바와 같이, 미디어는 CDN(201)에 표준 기반 배포 포맷으로 저장된다. 표준 기반 포맷은 MPD(202)로서 도시되며, 이는 클락에 대응하는 시작 및 종료 시간과 함께 시간이 시간 지정 주기(period)(203)를 포괄하는 다수의 섹션으로 구성된다. 각 주기(203)는 하나 이상의 적응 세트(Adaptation Set)(204)를 의미한다. 각 적응 세트(204)는 일반적으로 단일 유형의 미디어, 예를 들어, 비디오, 오디오 또는 시간 지정 텍스트에 사용된다. 임의의 주어진 주기(203)의 경우, 다수의 적응 세트(204)가 제공될 수 있는데, 예를 들어 하나는 비디오용이고, 다수는 다양한 언어로의 번역에 사용되는 것과 같이 오디오용으로 제공될 수 있다. 각각의 적응 세트(204)는 미디어의 프레임 해상도(비디오용), 프레임 레이트, 및 비트 레이트에 대한 정보를 제공하는 하나 이상의 표현(Representation)(205)을 의미한다. 다수의 표현(205)은 예를 들어 초고화질(Ultra-High-Definition), 고화질(High Definition) 또는 표준 화질(Standard Definition) 비디오 각각에 대한 표현(205)에 대한 액세스를 제공하기 위해 사용될 수 있다. 각각의 표현(205)은 클라이언트에 의한 페칭(도 1의 108에 도시된 바와 같은) 또는 네트워크 미디어 서버(도 1에 도시되지 않음)에 의한 배포("푸시 기반" 아키텍처에서)를 위해 미디어가 실제로 저장되는 하나 이상의 세그먼트 파일(206)을 의미한다.
도 3은 시간 지정된 이기종 몰입형 미디어에 대한 스트리밍 가능한 포맷의 예시적인 표현이다. 도 4는 시간 지정되지 않은 이기종 몰입형 미디어에 대한 스트리밍 가능한 포맷의 예시적인 표현이다. 두 도면은 모두 장면을 의미하며; 도 3은 시간 지정 미디어에 대한 장면(301)을 의미하고, 도 4는 시간 지정되지 않은 미디어에 대한 장면(401)을 의미한다. 두 경우에 대해, 모두 장면은 다양한 장면 표현 또는 장면 설명으로 구현될 수 있다.
예를 들어, 일부 몰입형 미디어 설계에서, 장면은 장면 그래프에 의해, 또는 다중 평면 이미지(Multi-Plane Image, MPI)로서 또는 다중 구형 이미지(Multi-Spherical Image, MSI)로서 구현될 수 있다. MPI 및 MSI 기술은 둘 다 내추럴 콘텐츠, 즉 하나 이상의 카메라에서 동시에 캡처된 실제 세계의 이미지에 대한 디스플레이 불가지론적 장면 표현(display-agnostic scene representation)을 생성하는 데 도움이 되는 기술의 예이다. 반면에, 장면 그래프 기술은 합성 표현의 형태로 내추럴 및 컴퓨터 생성 이미지를 모두 나타내는 데 사용할 수 있지만, 이러한 표현은 콘텐츠가 하나 이상의 카메라에 의해 내추럴 장면으로 캡처되는 경우를 위해 생성하기 위해 특히 계산 집약적이다. 즉, 타깃 몰입형 클라이언트 디스플레이의 보기 절두체를 채우기 위해 충분하고 적절한 수의 뷰를 보간하는 데 사용될 수 있는 합성 표현을 생성하기 위해, 내추럴적으로 캡처된 콘텐츠의 장면 그래프 표현은 생성하는 데 시간과 계산 집약적이며, 사진 측량(photogrammetry) 또는 딥 러닝 또는 둘 다의 기술을 사용하여 내추럴 이미지에 대한 복잡한 분석을 요구한다. 결과적으로, 이러한 합성 표현은, 실시간 배포가 필요한 사용 사례를 고려하여 실질적으로 실시간으로 생성할 수 없기 때문에, 현재 내추럴 콘텐츠 표현의 후보로 고려하기에는 비현실적이다. 그럼에도 불구하고, 현재로서는 컴퓨터 생성 이미지가 3D 모델링 프로세스 및 도구를 사용하여 생성되기 때문에 컴퓨터 생성 이미지에 대한 최상의 후보 표현은 합성 모델과 함께 장면 그래프를 사용하는 것이다.
내추럴 및 컴퓨터 생성 콘텐츠의 최적 표현의 이러한 이분법은 내추럴적으로 캡처된 콘텐츠에 대한 최적의 인제스트 포맷이 컴퓨터 생성 콘텐츠 또는 실시간 배포 애플리케이션에 필수적이지 않은 내추럴 콘텐츠에 대한 최적의 인제스트 포맷과는 상이하다는 것을 시사한다. 따라서, 개시된 주제는 그것이 내추럴적으로 생성되든 컴퓨터에 의해 생성되든, 시각적 몰입형 미디어에 대한 다수의 인제스트 포맷을 지원하기에 충분히 강건한 것을 목표로 한다.
다음은 컴퓨터 생성 기술을 사용하여 생성되는 시각적 몰입형 미디어, 또는 딥 러닝 또는 사진 측량 기술을 사용하여 내추럴 장면의 대응하는 합성 표현을 생성하는 즉, 실시간 배포 애플리케이션에 필수적이지 않은 내추럴 캡처 콘텐츠를 표현하는 데 적합한 포맷으로 장면 그래프를 구현하는 기술의 예이다
1. OTOY의 ORBX®
OTOY의 ORBX는 광선 추적 가능(ray-traceable), 레거시(프레임 기반), 체적측정(volumetric) 및 기타 유형의 합성 또는 벡터 기반 시각적 포맷을 포함하여, 시간 지정 또는 시간 지정되지 않은 모든 유형의 시각 미디어를 지원할 수 있는 여러 장면 그래프 기술 중 하나이다. ORBX가 메시, 포인트 클라우드 및 텍스처에 대해 자유롭게 사용 가능한 및/또는 오픈 소스 포맷에 대한 기본 지원을 제공하기 때문에, ORBX는 다른 장면 그래프와 다르다. ORBX는 장면 그래프에서 작동하는 다수의 공급업체(vendor) 기술 간의 교환을 용이하게 하는 것을 목표로 의도적으로 설계된 장면 그래프이다. 또한, ORBX는 풍부한 재료 시스템, 오픈 셰이더 언어(Open Shader Language) 지원, 강력한 카메라 시스템, 및 Lua 스크립트 지원을 제공한다. ORBX는 또한 IDEA(Immersive Digital Experiences Alliance)에서 로열티를 받지 않는 조건 하의 허가를 위해 게시된 몰입형 기술 미디어 포맷의 기반이기도 하다. 미디어의 실시간 배포의 콘텍스트에서, 내추럴 장면의 ORBX 표현을 만들고 배포하는 어빌리티는, 카메라 캡처 데이터의 복잡한 분석과 동일한 데이터의 합성 표현으로의 합성을 수행하기 위한 컴퓨팅 리소스 가용성의 기능이다. 현재까지 실시간 배포를 위한 충분한 컴퓨팅 가용성은 실용적이지 않지만 그럼에도 불구하고 불가능한 것은 아니다.
2. Pixar의 유니버설 장면 설명(Universal Scene Description)
Pixar의 USD(Universal Scene Description)는 VFX 및 전문 콘텐츠 제작 커뮤니티에서 인기 있는 또 다른 잘 알려진 성숙한 장면 그래프이다. USD는 Nvidia의 GPU로 3D 모델 생성 및 렌더링을 위한 개발자용 도구 세트인 Nvidia의 Omniverse 플랫폼에 통합되었다. USD의 서브세트는 Apple과 Pixar에서 USDZ로 발행했다. USDZ는 Apple의 ARKit에서 지원된다.
3. Khronos의 glTF2.0
glTF2.0은 Khronos 3D 그룹에서 작성한 "그래픽 언어 전송 포맷" 사양의 최신 버전이다. 이 포맷은 일반적으로 "png" 및 "jpeg" 이미지 포맷을 포함하여 장면에서 정적(시간 지정되지 않은) 객체를 지원할 수 있는 간단한 장면 그래프 포맷을 지원한다. glTF2.0은 즉, 기하학적 객체를 위해 glTF 프리미티브를 사용하여 설명된 기본 모양의 변환, 회전 및 크기 조정 지원을 포함하여, 간단한 애니메이션을 지원한다. glTF2.0은 시간 지정 미디어를 지원하지 않으므로 비디오나 오디오를 지원하지 않는다.
몰입형 시각 미디어의 장면 표현을 위한 이러한 알려진 설계가, 예를 들어 제공되며, 입력 몰입형 미디어 소스를 클라이언트 종단점 디바이스의 특정 특성에 적합한 포맷으로 적응시키는 프로세스를 지정하도록 그 어빌리티에서 개시된 주제를 제한하지 않는다.
더욱이, 위의 예시적인 미디어 표현 중 일부 또는 전부는 절두체의 특정 차원에 기반하여 특정 디스플레이의 보기 절두체를 채우기 위해 특정 뷰의 선택을 가능하게 하거나 용이하게 하는 신경망 모델을 훈련하고 생성하는 심층 학습 기술을 현재 사용하거나 사용할 수 있다. 특정 디스플레이의 보기 절두체에 대해 선택된 뷰는 예를 들어, MSI 또는 MPI 기술로부터, 장면 표현에서 명시적으로 제공되는 기존 뷰로부터 보간될 수 있으며, 또는 특정 가상 카메라 위치, 필터 또는 이러한 렌더 엔진의 가상 카메라에 대한 설명에 기반하여 렌더 엔진으로부터 직접 렌더링될 수 있다.
따라서, 개시된 주제는 내추럴적으로 캡처되거나(예: 하나 이상의 카메라로) 컴퓨터 생성 기술을 사용하여 생성된 미디어의 실시간 또는 "주문형"(예: 비실시간) 배포에 대한 요구 사항을 모두 충족할 수 있는 비교적 작지만 잘 알려진 몰입형 미디어 인제스트 포맷 세트가 있다는 점을 고려할 만큼 충분히 강력하다.
모바일 네트워크용 5G 및 고정 네트워크용 광섬유 케이블과 같은 고급 네트워크 기술이 배포됨에 따라, 신경망 모델 또는 네트워크 기반 렌더링 엔진을 사용하여 몰입형 미디어 인제스트 포맷으로부터 뷰를 보간하는 것이 더욱 용이해진다. 즉, 이러한 고급 네트워크 인프라는 점점 더 많은 양의 시각 정보를 전송하고 전달할 수 있기 때문에 이러한 고급 네트워크 기술은 상용 네트워크의 용량과 능력을 증가시킨다. 다중 액세스 에지 컴퓨팅(Multi-access Edge Computing, MEC), 소프트웨어 정의 네트워크(Software Defined Networks, SDN) 및 네트워크 기능 가상화(Network Functions Virtualization, NFV)와 같은 네트워크 인프라 관리 기술을 통해, 상용 네트워크 서비스 제공자는 예를 들어, 네트워크 처리량, 네트워크 속도, 왕복 대기 시간 및 컴퓨팅 리소스에 대한 수요의 동적 증가 또는 감소에 대응하기 위해, 특정 네트워크 리소스에 대한 수요 변화에 적응하도록 네트워크 인프라를 유연하게 구성할 수 있다. 더욱이, 동적 네트워크 요구 사항에 적응하는 이 고유한 어빌리티는 마찬가지로 이기종 클라이언트 종단점에 대해 잠재적으로 이기종 시각적 미디어 포맷을 사용하여 다양한 몰입형 미디어 애플리케이션을 지원하기 위해, 몰입형 미디어 인제스트 포맷을 적절한 배포 포맷으로 적응시키는 네트워크의 어빌리티를 용이하게 한다.
몰입형 미디어 애플리케이션 자체는 게임 상태에서 실시간 업데이트에 응답하기 위해 훨씬 더 낮은 네트워크 대기 시간을 필요로 하는 게임 애플리케이션, 네트워크의 상향링크 및 하향링크 부분 모두에 대해 대칭적인 처리량 요구 사항이 있는 텔레프레즌스(telepresence) 애플리케이션, 데이터를 소비하는 클라이언트 종단점 디스플레이의 유형에 따라 하향링크 리소스에 대한 수요가 증가할 수 있는 수동 보기 애플리케이션을 포함하여, 네트워크 리소스에 대한 다양한 요구 사항을 가질 수 있다. 일반적으로 모든 소비자 대면 애플리케이션은, 스토리지, 컴퓨팅 및 전력에 대한 다양한 온보드 클라이언트(onboard-client) 능력과 마찬가지로 특정 미디어 표현에 대한 다양한 요구 사항을 가진 다양한 클라이언트 종단점에 의해 지원될 수 있다.
따라서, 개시된 주제는 충분히 구비된 네트워크, 즉, 현대 네트워크의 특성 중 일부 또는 전부를 사용하는 네트워크가 그 안에 명시된 특징에 따라 복수의 레거시 및 몰입형 미디어 지원 디바이스를 동시에 지원할 수 있게 한다.
1. 미디어 배포를 위한 실시간 및 "주문형" 사용 사례 모두에 실용적인 미디어 인제스트 포맷을 활용할 수 있는 유연성을 제공한다.
2. 레거시 및 몰입형 미디어 지원 클라이언트 종단점 모두에 대해 내추럴 및 컴퓨터 생성 콘텐츠를 모두 지원할 수 있는 유연성을 제공한다.
3. 시간 지정 미디어와 시간 지정되지 않은 미디어를 모두 지원한다.
4. 클라이언트 종단점의 특징과 능력에 기반하고 또한 애플리케이션의 요구 사항에 기반하여, 소스 미디어 인제스트 포맷을 적절한 배포 포맷으로 동적으로 적응시키는 프로세스를 제공한다.
5. 배포 포맷이 IP 기반 네트워크를 통해 스트리밍 가능한 것을 보장한다.
6. 네트워크가 레거시 및 몰입형 미디어 지원 디바이스를 모두 포함할 수 있는 복수의 이기종 클라이언트 종단점에 동시에 서비스를 제공할 수 있게 한다.
7. 장면 경계를 따라 배포 미디어의 구성을 용이하게 하는 예시적인 미디어 표현 프레임워크를 제공한다.
개시된 주제에 의해 가능하게 된 개선의 종단간 실시예의 예는 다음과 같이 도 3 내지 도 14의 상세한 설명에 설명된 컴포넌트 및 처리에 따라 달성된다.
도 3 및 도 4는 둘 다 특정 클라이언트 종단점의 능력과 매칭되도록 인제스트 소스 포맷으로부터 적응된 하나의 예시적인 포괄 배포 포맷을 사용한다. 위에서 설명한 바와 같이, 도 3에 도시된 미디어는 시간 지정되며, 도 4에 도시된 미디어는 시간 지정되지 않는다. 특정 포괄 포맷은 각 레이어가 미디어의 프레젠테이션에 기여하는 현저한 정보의 양에 따라 레이어화될 수 있는 매우 다양한 미디어 속성을 수용할 수 있을 정도로 구조가 충분히 강력하다. 이러한 레이어링 프로세스는 ISO/IEC 14496-10(Scalable Advanced Video Coding)에 지정된 것과 같은 프로그레시브 JPEG 및 확장 가능한 비디오 아키텍처로 입증된 현재 최신 기술에서 이미 잘 알려진 기술이다.
1. 포괄적인 미디어 포맷(encompassing media format)에 따라 스트리밍되는 미디어는 레거시 시각 및 오디오 미디어에 제한되지 않고, 기계와 상호 작용하여 시각, 소리, 맛, 촉감, 냄새에 대한 인간의 감각을 자극하는 신호를 생성할 수 있는 모든 유형의 미디어 정보를 포함할 수 있다.
2. 포괄적인 미디어 포맷에 따라 스트리밍되는 미디어는 시간 지정 미디어 또는 시간 지정되지 않은 미디어 또는 이 둘의 혼합일 수 있다.
3. 포괄적인 미디어 포맷은 기본 레이어 및 향상 레이어 아키텍처를 사용하여 미디어 객체에 대한 레이어화된 표현을 가능하게 함으로써 더욱 스트리밍 가능하다. 일 예에서, 별도의 기본 레이어 및 향상 레이어는 각 장면의 미디어 객체에 대한 다중 해상도 또는 다중 테셀레이션(multi-tesselation) 분석 기술의 적용에 의해 계산된다. 이것은 ISO/IEC 10918-1(JPEG) 및 ISO/IEC 15444-1(JPEG2000)에 지정된 점진적으로 렌더링된 이미지 포맷과 유사하지만, 래스터 기반 시각적 포맷으로 제한되지 않는다. 예시적인 실시예에서, 기하학적 객체에 대한 프로그레시브 표현은 웨이블릿(wavelet) 분석을 사용하여 계산된 객체의 다중 해상도 표현일 수 있다.
미디어 포맷의 레이어화된 표현의 다른 예에서, 향상 레이어는 기본 레이어에 의해 표현되는 시각적 객체 표면의 재료 속성을 개선하는 것과 같이 기본 레이어에 상이한 속성을 적용한다. 또 다른 예에서, 속성은 표면을 매끄러운 표면에서 다공성 질감으로, 또는 무광택 표면에서 광택 표면으로 변경하는 것과 같이, 기본 레이어 객체의 표면 질감을 개선할 수 있다.
레이어화된 표현의 또 다른 예에서, 장면의 하나 이상의 시각적 객체의 표면은 램버시안(Lambertian)에서 광선 추적 가능으로 변경될 수 있다.
레이어화된 표현의 또 다른 예에서, 네트워크는 기본 레이어 표현을 클라이언트에 배포하므로, 클라이언트가 해상도 또는 기본 표현의 다른 특성을 개선하기 위해 추가 향상 레이어의 전송을 기다리는 동안, 클라이언트가 장면의 명목상 프레젠테이션을 생성할 수 있다.
4. 기존 MPEG 비디오 및 JPEG 이미지 표준에서와 같이 향상 레이어의 속성 또는 정제 정보의 해상도는 기본 레이어의 객체 해상도와 명시적으로 결합되지 않는다.
5. 포괄적인 미디어 포맷은 프레젠테이션 디바이스 또는 기계에 의해 디스플레이되거나 작동될 수 있는 모든 유형의 정보 미디어를 지원하므로, 이기종 클라이언트 종단점에 이기종 미디어 포맷을 지원할 수 있다. 미디어 포맷을 배포하는 네트워크의 일 실시예에서, 네트워크는 먼저 클라이언트 종단점에 질의하여 클라이언트의 능력을 결정하고, 클라이언트가 미디어 표현을 의미 있게 인제스팅할 수 없으면, 네트워크는 클라이언트에서 지원하지 않는 속성의 레이어를 제거하거나, 현재 포맷으로부터의 미디어를 클라이언트 종단점에 적합한 포맷으로 트랜스코딩한다(transcode). 이러한 트랜스코딩의 한 예에서, 네트워크는 네트워크 기반 미디어 처리 프로토콜을 사용하여 체적 시각적 미디어 애셋을 동일한 시각적 애셋의 2D 표현으로 변환한다.
6. 전체 또는 부분적으로 완전한 몰입형 경험(라이브 스트리밍 이벤트, 게임 또는 주문형 애셋의 재생)을 위한 매니페스트(manifest)는, 프레젠테이션을 생성하기 위해서 렌더링 및 게임 엔진이 현재 인제스팅할 수 있는 최소한의 정보인 장면으로 구성된다. 매니페스트는 클라이언트가 요청한 전체 몰입형 경험에 대해 렌더링될 개별 장면 리스트를 포함한다. 각 장면에는 장면 기하학적 구조의 스트리밍 가능한 버전에 대응하는 장면 내 기하학적 객체의 하나 이상의 표현이 연관되어 있다. 장면 표현의 일 실시예는 장면에 대한 기하학적 객체의 저해상도 버전을 의미한다. 동일한 장면의 다른 실시예는 동일한 장면의 기하학적 객체에 세부 사항을 추가하거나 테셀레이션을 증가시키기 위해 장면의 저해상도 표현을 위한 향상 레이어를 의미한다. 위에서 설명된 바와 같이, 각 장면은 장면의 기하학적 객체의 세부 사항을 점진적 방식으로 증가시키기 위해 하나 이상의 향상 레이어를 가질 수 있다.
7. 장면 내에서 참조되는 미디어 객체의 각 레이어는 네트워크 내에서 리소스에 액세스할 수 있는 주소를 가리키는 토큰(예: URI)과 연관된다. 이러한 리소스는 클라이언트가 콘텐츠를 페치할 수 있는 CDN과 유사한다.
8. 기하학적 객체의 표현을 위한 토큰은 네트워크 내의 위치 또는 클라이언트 내의 위치를 가리킬 수 있다. 즉, 클라이언트는 네트워크 기반 미디어 처리를 위해 네트워크에서 리소스를 사용할 수 있음을 네트워크에 시그널링할 수 있다.
도 3은 다음과 같이 시간 지정 미디어에 대한 포괄적인 미디어 포맷의 실시예를 설명한다. 시간 지정 장면 매니테스트(Timed Scene Manifest)는 장면 정보(301)의 리스트를 포함한다. 장면(301)은 장면(301)을 포함하는 미디어 애셋의 유형 및 처리 정보를 별도로 설명하는 컴포넌트(302)의 리스트를 나타낸다. 컴포넌트(302)는 기본 레이어(304) 및 속성 향상 레이어(305)를 추가로 참조하는 애셋(303)을 의미한다.
도 4는 다음과 같이 시간 지정되지 않은 미디어에 대한 포괄적인 미디어 포맷의 실시예를 설명한다. 장면 정보(401)는 클락에 따른 시작 및 종료 지속 기간(duration)과 연관되지 않는다. 장면 정보(401)는 장면(401)을 포함하는 미디어 애셋의 유형 및 처리 정보를 별도로 설명하는 컴포넌트(402)의 리스트를 의미한다. 컴포넌트(402)는 기본 레이어(404) 및 속성 향상 레이어(405)를 추가로 참조하는 애셋(403)(예: 시각, 오디오 및 햅틱 애셋)을 의미한다. 또한, 장면(401)은 시간 지정되지 않은 미디어를 위한 다른 장면(401)을 의미한다. 장면(401)은 또한 시간 지정 미디어 장면으로 지칭된다.
도 5는 내추럴 콘텐츠로부터 인제스트 포맷을 합성하기 위한 프로세스(500)의 실시예를 예시한다. 카메라 유닛(501)은 단일 카메라 렌즈를 사용하여 사람의 장면을 캡처한다. 카메라 유닛(502)은 링(ring)형 객체 주위에 5개의 카메라 렌즈를 장착하여 5개의 발산 필드(diverging field)를 갖는 장면을 캡처한다. 502의 배열은 VR 애플리케이션을 위한 전방향 콘텐츠를 캡처하는 데 일반적으로 사용되는 예시적인 배열이다. 카메라 유닛(503)은 구(sphere)의 내경(inner diameter) 부분에 7개의 카메라 렌즈를 장착하여 7개의 수렴 필드(converging field)를 갖는 장면을 캡처한다. 배열(503)은 라이트 필드 또는 홀로그래픽 몰입형 디스플레이를 위한 라이트 필드를 캡처하는데 일반적으로 사용되는 예시적인 배열이다. 내추럴 이미지 콘텐츠(509)는 선택적인 캡처 신경망 모델(508)을 생성하기 위해 훈련(training) 이미지(506)의 컬렉션을 사용하는 신경망 훈련 모듈(505)을 선택적으로 사용할 수 있는 합성 모듈(504)에 대한 입력으로 제공된다. 훈련 프로세스(505) 대신에 일반적으로 사용되는 또 다른 프로세스는 사진 측량법(Photogrammetry)이다. 모델(508)이 도 5에 도시된 프로세스(500) 동안 생성되면, 모델(508)은 내추럴 콘텐츠에 대한 인제스트 포맷(507)의 애셋 중 하나가 된다. 인제스트 포맷(507)의 예시적인 실시예는 MPI 및 MSI를 포함한다.
도 6은 합성 미디어, 예를 들어 컴퓨터 생성 이미지를 위한 인제스트 포맷을 생성하기 위한 프로세스(600)의 실시예를 예시한다. LIDAR 카메라(601)는 장면의 포인트 클라우드(602)를 캡처한다. 합성 콘텐츠를 생성하기 위한 CGI 도구, 3D 모델링 도구 또는 다른 애니메이션 프로세스는 네트워크를 통해 604 CGI 애셋을 생성하기 위해 컴퓨터(603)에서 사용된다. 센서(605A)가 있는 모션 캡처 슈트(Motion Capture Suit)가 배우(605)에게 착용되어, 배우(605)에 대한 모션의 디지털 기록을 캡쳐하여, 애니메이션 MoCap 데이터(606)를 생성한다. 데이터(602, 604, 606)가 마찬가지로 선택적으로 신경망 및 훈련 데이터를 사용하여 신경망 모델(도 6에 도시되지 않음)을 생성할 수 있는 합성 모듈(607)에 대한 입력으로서 제공된다.
상술한 이기종 몰입형 미디어를 표현하고 스트리밍하기 위한 기술은 컴퓨터가 판독 가능한 명령을 사용하여 컴퓨터 소프트웨어로서 구현될 수 있고, 하나 이상의 컴퓨터가 판독 가능한 매체에 물리적으로 저장될 수 있다. 예를 들어, 도 7은 개시된 주제의 특정 실시예를 구현하기에 적합한 컴퓨터 시스템(700)을 도시한다.
컴퓨터 소프트웨어는 임의의 적절한 머신 코드 또는 컴퓨터 언어를 사용하여 코딩될 수 있으며, 이는 어셈블리, 컴파일, 링크 또는 유사한 메커니즘 하에서 해석(interpretation), 마이크로 코드 실행 및 하나 이상의 컴퓨터 중앙 처리 유닛(central processing unit, CPU), 그래픽 처리 유닛(Graphics Processing Unit, GPU) 등을 통해 또는 직접 실행될 수 있는 명령을 포함하는 코드를 생성한다.
명령은 예를 들어 개인용 컴퓨터, 태블릿 컴퓨터, 서버, 스마트 폰, 게임 디바이스, 사물 인터넷 디바이스 등을 포함하는 다양한 유형의 컴퓨터 또는 그 컴포넌트에서 실행될 수 있다.
컴퓨터 시스템(700)에 대해 도 7에 도시된 컴포넌트는 본질적으로 예시적인 것이며, 본 개시의 실시예를 구현하는 컴퓨터 소프트웨어의 사용 또는 기능의 범위에 대한 어떠한 제한도 제안하도록 의도되지 않는다. 컴포넌트의 구성은 컴퓨터 시스템(700)의 예시적인 실시예에 예시된 컴포넌트의 임의의 하나 또는 조합과 관련된 임의의 종속성 또는 요구 사항을 갖는 것으로 해석되어서는 안된다.
컴퓨터 시스템(700)은 특정한 휴먼 인터페이스 입력 디바이스를 포함할 수 있다. 이러한 휴먼 인터페이스 입력 디바이스는 예를 들어, 촉각 입력(예: 키스트로크(keystroke), 스와이프, 데이터 장갑 움직임), 오디오 입력(예: 음성, 박수), 시각적 입력(예: 제스처), 후각 입력(도시되지 않음)을 통해 한 명 이상의 인간 사용자의 입력에 응답할 수 있다. 휴먼 인터페이스 디바이스는 또한 오디오(예: 음성, 음악, 주변 소리), 이미지(예: 스캔된 이미지, 정지 이미지 카메라로부터 획득하는 사진 이미지), 비디오(예: 2차원 비디오, 입체 비디오를 포함한 3차원 비디오)와 같이 사람의 의식적 입력과 직접 관련이 없는 특정 미디어를 캡처하는 데 사용될 수도 있다.
입력 휴먼 인터페이스 인터페이스는 키보드(701), 마우스(702), 트랙패드(703), 터치 스크린(710), 데이터 글러브(도시되지 않음), 조이스틱(705), 마이크(706), 스캐너(707), 카메라(708) 중 하나 이상(각 도시된 것 중 하나만)을 포함할 수 있다.
컴퓨터 시스템(700)은 또한 특정 휴먼 인터페이스 출력 디바이스를 포함할 수 있다. 이러한 휴먼 인터페이스 출력 디바이스는 예를 들어 촉각 출력, 소리, 빛 및 냄새/맛을 통해 한 명 이상의 인간 사용자의 감각을 자극할 수 있다. 이러한 휴먼 인터페이스 출력 디바이스는, 촉각 출력 디바이스(예를 들어, 터치 스크린(710), 데이터 글러브(도시되지 않음), 또는 조이스틱(705)에 의한 촉각 피드백을 포함하지만, 입력 디바이스로서 기능하지 않는 촉각 피드백 디바이스일 수도 있음), 오디오 출력 디바이스(예: 스피커(709), 헤드폰(도시되지 않음)), 시각 출력 디바이스(예: CRT 스크린, LCD 스크린, 플라즈마 스크린, OLED 스크린을 포함하는 스크린(710)를 포함하며, 이들 각각은 터치 스크린 입력 기능을 가지고 있을 수도 없을 수도 있고, 이들 각각은 촉각 피드백 능력을 가지고 있을 수도 없을 수도 있으며, 일부는 2차원 시각 출력 또는 가상 현실 안경(도시되지 않음), 홀로그래픽 디스플레이 및 스모트 탱크(smoke tank, 도시되지 않음)와 같은 스테레오그래픽 출력 수단을 통한 3차원 출력이 가능함), 및 프린터(도시되지 않음)를 포함할 수 있다.
컴퓨터 시스템(700)은 또한 사람이 액세스할 수 있는 저장 디바이스 및 이와 연관된 매체로서, CD/DVD를 가진 CD/DVD ROM/RW(720) 또는 이와 유사한 매체(721)를 포함하는 광학 매체, 썸 드라이브(thumb-driver)(722), 탈착식 하드 드라이브 또는 솔리드 스테이트 드라이브(723), 테이프 및 플로피 디스크(도시되지 않음)와 같은 레거시 자기 매체, 보안 동글(도시되지 않음)과 같은 특수 ROM/ASIC/PLD 기반 디바이스 등을 포함한다.
당업자는 또한 현재 개시된 주제와 관련하여 사용되는 용어 "컴퓨터가 판독 가능한 매체"가 전송 매체, 반송파, 또는 다른 일시적 신호를 포함하지 않는다는 것을 이해해야 한다.
컴퓨터 시스템(700)은 또한 하나 이상의 통신 네트워크에 대한 인터페이스를 포함할 수 있다. 네트워크는 예를 들어 무선, 유선, 광일 수 있다. 네트워크는 또한 로컬, 광역, 대도시, 차량 및 산업, 실시간, 지연 허용 등일 수 있다. 네트워크의 예로는 이더넷과 같은 근거리 네트워크, 무선 LAN, GSM, 3G, 4G, 5G, LTE 등을 포함하는 셀룰러 네트워크, 케이블 TV, 위성 TV 및 지상파 방송 TV를 포함하는 TV 유선 또는 무선 광역 디지털 네트워크, CANBus를 포함하는 차량 및 산업용 등이 포함된다. 특정 네트워크는 일반적으로 특정 범용 데이터 포트 또는 주변기기 버스(749)(예를 들어, 컴퓨터 시스템(700)의 USB 포트)에 부착된 외부 네트워크 인터페이스 어댑터를 필요로 하며; 다른 것들은 아래에서 설명된 바와 같이, 일반적으로 시스템 버스에 부착되는 것(예를 들어, PC 컴퓨터 시스템에 대한 이더넷 인터페이스 또는 스마트 폰 컴퓨터 시스템에 대한 셀룰러 네트워크 인터페이스)에 의해 컴퓨터 시스템(700)의 코어에 통합된다. 이러한 네트워크 중 임의의 것을 사용하여 컴퓨터 시스템(700)은 다른 엔티티와 통신할 수 있다. 이러한 통신은 예를 들어, 로컬 또는 광역 디지털 네트워크를 사용하는 다른 컴퓨터 시스템에 대한, 단방향, 수신 전용(예를 들어, 방송 TV), 단방향 송신 전용(예를 들어, CANbus에서 특정 CANbus 디바이스로) 또는 양방향일 수 있다. 특정 프로토콜 및 프로토콜 스택이 위에서 설명한대로 각 네트워크 및 네트워크 인터페이스에서 사용할 수 있다.
전술한 휴먼 인터페이스 인터페이스, 사람이 액세스할 수 있는 저장 디바이스 및 네트워크 인터페이스는 컴퓨터 시스템(700)의 코어(740)에 부착될 수 있다.
코어(740)는 하나 이상의 중앙 처리 유닛(CPU)(741), 그래픽 처리 유닛(GPU)(742), FPGA(Field Programmable Gate Areas) 형태의 특수 프로그래머블 처리 유닛(743), 특정 태스크에 대한 하드웨어 가속기(744) 등을 포함할 수 있다. 읽기 전용 메모리(Read-only memory, ROM)(745), 랜덤 액세스 메모리(746), 내부 비 사용자 액세스 가능 하드 드라이브, SSD 등과 같은 내부 대용량 스토리지(747)와 함께 이러한 디바이스는 시스템 버스(748)를 통해 연결될 수 있다. 일부 컴퓨터 시스템에서, 시스템 버스(748)는 추가 CPU, GPU 등에 의한 확장을 가능하게 하기 위해 하나 이상의 물리적 플러그의 형태로 액세스할 수 있다. 주변 디바이스는 코어의 시스템 버스(748)에 직접 또는 주변기기 버스(749)를 통해 부착될 수 있다. 주변 버스의 아키텍처에는 PCI, USB 등이 포함된다.
CPU(741), GPU(742), FPGA(743), 및 가속기(744)는 조합하여 전술한 컴퓨터 코드를 구성할 수 있는 특정 명령을 실행할 수 있다. 이 컴퓨터 코드는 ROM(745) 또는 RAM(746)에 저장될 수 있다. 과도기 데이터(Transitional data)는 RAM(746)에 저장될 수도 있지만 영구(permanent) 데이터는 예를 들어 내부 대용량 스토리지(747)에 저장될 수 있다. 하나 이상의 CPU(741), GPU(742), 대용량 스토리지(747), ROM(745), RAM(746) 등과 밀접하게 연관될 수 있는 캐시 메모리를 사용하여 모든 메모리 디바이스에 대한 빠른 저장 및 검색을 가능하게 할 수 있다.
컴퓨터가 판독 가능한 매체는 다양한 컴퓨터 구현 작동을 수행하기 위한 컴퓨터 코드를 가질 수 있다. 매체 및 컴퓨터 코드는 본 개시의 목적을 위해 특별히 설계되고 구성된 것이거나, 컴퓨터 소프트웨어 분야의 숙련자에게 잘 알려져 있고 이용 가능한 종류일 수 있다.
제한이 아닌 예로서, 아키텍처(700)를 갖는 컴퓨터 시스템, 특히 코어(740)는 하나 이상의 유형의 컴퓨터가 판독 가능한 매체에 구현된 소프트웨어를 실행하는 프로세서(들)(CPU, GPU, FPGA, 가속기 등을 포함)의 결과로서 기능을 제공할 수 있다. 이러한 컴퓨터가 판독 가능한 매체는 위에서 소개된 사용자 액세스 가능 대용량 스토리지와 관련된 미디어일 수 있으며, 코어 내부 대용량 스토리지(747) 또는 ROM(745)과 같은 비 일시적 특성을 가진 코어(740)의 특정 스토리지일 수 있다. 본 개시의 다양한 실시예를 구현하는 소프트웨어는 이러한 디바이스에 저장되고 코어(740)에 의해 실행될 수 있다. 컴퓨터가 판독 가능한 매체는 특정 요구에 따라 하나 이상의 메모리 디바이스 또는 칩을 포함할 수 있다. 소프트웨어는 코어(740) 및 특히 그 안의 프로세서(CPU, GPU, FPGA 등을 포함)가 RAM(746)에 저장된 데이터 구조를 정의하는 것과 소프트웨어에서 정의한 프로세스에 따라 이러한 데이터 구조를 수정하는 것을 포함하여, 여기에 설명된 특정 프로세스 또는 특정 프로세스의 일부를 실행하도록 할 수 있다. 추가로 또는 대안으로, 컴퓨터 시스템은 여기에 설명된 특정 프로세스나 특정 프로세스의 특정 부분을 실행하기 위해 소프트웨어 대신 또는 소프트웨어와 함께 작동할 수 있는 회로(예: 가속기(744))에 배선(hardwired)되거나 구현된 로직의 결과로 기능을 제공할 수 있다. 소프트웨어에 대한 참조는 로직을 포함할 수 있으며 적절한 경우에 그 반대도 마찬가지이다. 컴퓨터가 판독 가능한 매체에 대한 참조는 실행을 위한 소프트웨어를 저장하는 회로(예: 집적 회로(IC)), 실행을 위한 로직을 구현하는 회로 또는 적절한 경우 둘 다를 포함할 수 있다. 본 개시는 하드웨어 및 소프트웨어의 임의의 적절한 조합을 포괄한다.
도 8은 클라이언트 종단점으로서 다양한 레거시 및 이기종 몰입형 미디어 지원 디스플레이를 지원하는 예시적인 네트워크 미디어 배포 시스템(800)을 예시한다. 콘텐츠 획득 모듈(801)은 도 6 또는 도 5의 예시적인 실시예를 사용하여 미디어를 캡처하거나 생성한다. 인제스트 포맷은 콘텐츠 준비 모듈(802)에서 생성된 다음, 전송 모듈(803)을 사용하여 네트워크 미디어 배포 시스템의 하나 이상의 클라이언트 종단점(804)으로 전송된다. 게이트웨이는 네트워크의 다양한 클라이언트 종단점에 네트워크 액세스를 제공하기 위해 고객 전제 장비(customer premise equipment)에 서비스를 제공할 수 있다. 셋톱 박스는 또한 네트워크 서비스 제공자가 집계한(aggregated) 콘텐츠에 대한 액세스를 제공하는 고객 전제 장비 역할을 할 수 있다. 무선 복조기는 모바일 디바이스(예: 모바일 핸드셋 및 디스플레이를 가짐)의 모바일 네트워크 액세스 포인트 역할을 할 수 있다. 하나 이상의 실시예에서, 레거시 2D 텔레비전은 게이트웨이, 셋톱 박스 또는 WiFi 라우터에 직접 연결될 수 있다. 레거시 2D 디스플레이가 있는 컴퓨터 랩톱은 WiFi 라우터에 연결된 클라이언트 종단점일 수 있다. 헤드 마운트 2D(래스터 기반) 디스플레이도 라우터에 연결될 수 있다. 렌티큘러 라이트 필드 디스플레이는 게이트웨이일 수 있다. 디스플레이는 로컬 컴퓨팅 GPU, 저장 디바이스 및 광선 기반 렌티큘러 광학 기술을 사용하여 다수의 뷰를 생성하는 시각 프레젠테이션 유닛(Visual Presentation Unit)으로 구성될 수 있다. 홀로그램 디스플레이는 셋톱 박스에 연결될 수 있으며 로컬 컴퓨팅 CPU, GPU, 저장 디바이스, 및 프레넬(Fresnal)패턴, 웨이브 기반 홀로그램 시각화 유닛을 포함할 수 있다. 증강 현실 헤드셋은 무선 복조기에 연결될 수 있으며, GPU, 저장 디바이스, 배터리, 및 체적 비주얼 프레젠테이션 컴포넌트를 포함할 수 있다. 고밀도 라이트 필드 디스플레이(dense Light Field Display)는 WiFi 라우터에 연결될 수 있으며, 다수의 GPU, CPU 및 저장 디바이스; 눈 추적 디바이스; 카메라; 및 고밀도 광선 기반 라이트 필드 패널을 포함할 수 있다.
도 9는 도 8에 도시된 바와 같이 레거시 및 이기종 몰입형 미디어 지원 디스플레이를 서빙할 수 있는 몰입형 미디어 배포 모듈(900)의 실시예를 예시한다. 콘텐츠는 모듈(901)에서 생성되거나 획득되며, 이는 각각 내추럴 및 CGI 콘텐츠를 위해 도 5 및 도 6에 추가로 구현된다. 그런 다음, 콘텐츠(901)는 네트워크 인제스트 포맷 생성 모듈(Create Network Ingest Format Module)(902)을 사용하여 인제스트 포맷으로 변환된다. 모듈(902)은 마찬가지로 각각 내추럴 및 CGI 콘텐츠를 위해 도 5 및 도 6에 추가로 구현된다. 인제스트 미디어 포맷은 네트워크로 전송되어 저장 디바이스(903)에 저장된다. 선택적으로, 저장 디바이스는 몰입형 미디어 콘텐츠 제공자의 네트워크에 상주할 수 있으며, 903을 이등분하는 점선으로 표시된 것처럼 몰입형 미디어 네트워크 배포 모듈(번호가 지정되지 않음)에 의해 원격으로 액세스될 수 있다. 클라이언트 및 애플리케이션 특정 정보는 선택적으로 대체 "클라우드" 네트워크에 원격으로 존재할 수 있는 원격 저장 디바이스(904)에서 선택적으로 사용될 수 있다.
도 9에 도시된 바와 같이, 클라이언트 인터페이스 모듈(905)은 배포 네트워크의 주요 태스크를 실행하기 위해 정보의 주요 소스 및 싱크(sink) 역할을 한다. 이 특정 실시예에서, 모듈(905)은 네트워크의 다른 컴포넌트와 통합된 포맷으로 구현될 수 있다. 그럼에도 불구하고, 도 9의 모듈(905)에 의해 묘사된 태스크는 개시된 주제의 필수 엘리먼트를 형성한다.
모듈(905)은 클라이언트(908)의 특징 및 속성에 대한 정보를 수신하고, 또한 908에서 현재 실행 중인 애플리케이션에 관한 요구사항을 수집한다(collect). 이 정보는 디바이스(904)로부터 획득될 수 있거나, 또는 대안적인 실시예에서 클라이언트(908)에 직접 질의하는 것에 의해 획득될 수 있다. 클라이언트(908)에 대한 직접 질의의 경우, 클라이언트가 인터페이스 모듈(905)과 직접 통신할 수 있도록 양방향 프로토콜(도 9에 도시되지 않음)이 제시되고 작동하는 것으로 가정된다.
인터페이스 모듈(905)은 또한 도 10에 설명된 미디어 적응 및 단편화(Media Adaptation and Fragmentation) 모듈(910)을 시작하고 이와 통신한다. 인제스트 미디어가 모듈(910)에 의해 적응되고 단편화됨에 따라, 미디어는 배포 저장 디바이스(909)를 위해 준비된 미디어로 묘사된 중간 저장 디바이스로 선택적으로 전달된다. 배포 미디어가 준비되고 디바이스(909)에 저장됨에 따라, 인터페이스 모듈(905)은 몰입형 클라이언트(908)가 네트워크 인터페이스(908B)를 통해, "푸시" 요청을 통한 배포 미디어 및 대응하는 설명 정보(906)를 수신하거나, 클라이언트(908) 자체가 저장 디바이스(909)에서 미디어(906)의 "풀(pull)" 요청을 시작한다. 몰입형 클라이언트(908)는 GPU(또는 도시되지 않은 CPU)(908C)를 선택적으로 사용할 수 있다. 미디어의 배포 포맷은 클라이언트(908)의 저장 디바이스 또는 저장 캐시(908D)에 저장된다. 마지막으로, 클라이언트(908)는 시각화 컴포넌트(908A)를 통해 미디어를 시각적으로 제시한다.
몰입형 미디어를 클라이언트(908)로 스트리밍하는 프로세스를 통해, 인터페이스 모듈(905)은 클라이언트 진행 상황 및 상태 피드백 채널(Client Progress and Status Feedback Channel)(907)을 통해 클라이언트 진행 상황을 모니터링한다.
도 10은 인제스팅된 소스 미디어가 클라이언트(908)의 요구 사항과 매칭하도록 적절하게 적응될 수 있도록 미디어 적응 프로세스의 특정 실시예를 묘사한다. 미디어 적응 모듈(1001)은 클라이언트(908)에 대한 인제스트 미디어의 적절한 배포 포맷으로의 적응을 용이하게 하는 다수의 컴포넌트로 구성된다. 이러한 컴포넌트는 예시로 간주되어야 한다. 도 10에서, 적응 모듈(1001)은 네트워크 상의 현재 트래픽 부하를 추적하기 위해 입력 네트워크 상태(1005)를 수신하고; 클라이언트(908)정보는 속성 및 특징 설명, 애플리케이션 특징 및 설명과 애플리케이션 현재 상태, 클라이언트 절두체의 기하학적 구조를 인제스트 몰입형 미디어의 보간 능력에 매핑하는 데 도움이 되는 클라이언트 신경망 모델(사용 가능한 경우)을 포함한다. 적응 모듈(1001)은 적응된 출력이 생성될 때 클라이언트 적응 미디어 저장 디바이스(1006)에 저장되도록 한다.
적응 모듈(1001)은 렌더러(1001B) 또는 신경망 프로세서(1001C)를 사용하여 특정 인제스트 소스 미디어를 클라이언트에 적합한 포맷으로 적응시킨다. 신경망 프로세서(1001C)는 1001A의 신경망 모델을 사용한다. 이러한 신경망 프로세서(1001C)의 예는 MPI 및 MSI에 설명된 딥뷰(Deepview) 신경망 모델 생성기를 포함한다. 미디어가 2D 포맷이지만 클라이언트가 3D 포맷을 가져야 하면, 신경망 프로세서(1001C)는 2D 비디오 신호로부터의 고도로 상관된 이미지를 사용하여, 비디오에 묘사된 장면의 체적 표현을 도출하는 프로세스를 호출할 수 있다. 이러한 프로세스의 예는 버클리 캘리포니아 대학교에서 개발된 하나 또는 소수의 이미지 프로세스의 신경 복사 필드(Neural Radiance Field)일 수 있다. 적합한 렌더러(1001B)의 예는 적응 모듈(1001)과 직접 상호 작용하도록 수정될 OTOY 옥테인 렌더러(Octane renderer)(디스플레이되지 않음)의 수정된 버전일 수 있다. 적응 모듈(1001)은 인제스트 미디어의 포맷 및 클라이언트(908)가 요구하는 포맷과 관련하여 이러한 도구의 필요성에 따라 미디어 압축기(1001D) 및 미디어 압축해제기(1001E)를 선택적으로 사용할 수 있다.
도 11은 현재 클라이언트 적응된 미디어 저장 디바이스(1102)에 있는, 도 10의 미디어 적응 모듈(1101)로부터의 적응된 미디어를 궁극적으로 변환하는 적응된 미디어 패키징 모듈(1103)을 도시한다. 패키징 모듈(1103)은 모듈(1101)로부터의 적응된 미디어를 강력한 배포 포맷, 예를 들어 도 3 또는 도 4에 도시된 예시적인 포맷으로 포맷한다. 매니페스트 정보(1104A)는 수신할 것으로 예상할 수 있는 장면 데이터의 리스트를 클라이언트(908)에 제공하고 또한 시각적 애셋 및 대응하는 메타데이터, 오디오 애셋 및 대응하는 메타데이터의 리스트를 제공한다.
도 12는 적응된 미디어(1201)를 클라이언트(908)로 스트리밍하기에 적합한 개별 패킷(1203)으로 "단편화(fragment)"하는 패킷화기(Packetizer) 모듈(1202)을 도시한다.
시퀀스 다이어그램(1300)에 대해 도 13에 도시된 컴포넌트 및 통신이 다음과 같이 설명된다: 클라이언트 종단점(1301)은 네트워크 배포 인터페이스(1302)에 대한 미디어 요청(1308)을 시작한다. 요청(1308)은 URN 또는 다른 표준 명명법에 의해 클라이언트가 요청한 미디어를 식별하기 위한 정보를 포함한다. 네트워크 배포 인터페이스(1302)는 프로필 요청(Profiles Request)(1309)으로 요청(1308)에 응답하며, 이는 클라이언트(1301)가 현재 이용 가능한 리소스에 대한 정보(컴퓨팅, 스토리지, 충전된 배터리 퍼센트, 및 클라이언트의 현재 작동 상태를 특징짓기 위한 기타 정보를 포함함)를 제공하도록 요청한다. 프로필 요청(1309)은 또한 모델들이 클라이언트에서 이용 가능하면, 클라이언트가 클라이언트의 프레젠테이션 시스템의 특징과 매칭하도록 정확한(correct) 미디어 뷰를 추출하거나 보간하기 위해 신경망 추론을 위해 네트워크에 의해 사용될 수 있는 하나 이상의 신경망 모델을 제공하도록 요청한다. 클라이언트(1301)로부터 인터페이스(1302)로의 응답(1311)은 클라이언트 토큰, 애플리케이션 토큰, 및 하나 이상의 신경망 모델 토큰(이러한 신경망 모델 토큰이 클라이언트에서 이용 가능하면)을 제공한다. 그런 다음, 인터페이스(1302)는 세션 ID 토큰(1311)을 클라이언트(1301)에 제공한다. 그런 다음, 인터페이스(1302)는 미디어 인제스트 서버(1303)에 미디어 인제스트 요청(1312)을 요청하며, 이는 요청(1308)에서 식별된 미디어에 대한 URN 또는 표준 명명법 이름을 포함한다. 서버(1303)는 인제스트 미디어 토큰을 포함하는 응답(1313)으로 요청(1312)에 응답한다. 그런 다음, 인터페이스(1302)는 호출(1314)에서 응답(1313)으로부터의 미디어 토큰을 클라이언트(1301)에 제공한다. 그런 다음 인터페이스(1302)는 적응 인터페이스(1304)에 인제스트 미디어 토큰, 클라이언트 토큰, 애플리케이션 토큰 및 신경망 모델 토큰을 제공함으로써 1308에서의 요청된 미디어에 대한 적응 프로세스를 시작한다. 인터페이스(1304)는 인제스트 미디어 애셋에 대한 액세스를 요청하기 위해 호출(1316)에서 인제스트 미디어 토큰을 서버(1303)에 제공함으로써 인제스트 미디어에 대한 액세스를 요청한다. 서버(1303)는 인터페이스(1304)에 대한 응답(1317)에서 인제스트 미디어 액세스 토큰으로 요청(1316)에 응답한다. 그런 다음 인터페이스(1304)는 미디어 적응 모듈(1305)이 1313에서 생성된 세션 ID 토큰에 대응하는 클라이언트, 애플리케이션 및 신경망 추론 모델에 대한 인제스트 미디어 액세스 토큰에 위치한 인제스트 미디어를 적응시키도록 요청한다. 인터페이스(1304)에서 모듈(1305)로의 요청(1318)은 필요한 토큰과 세션 ID를 포함한다. 모듈(1305)은 업데이트(1319)에서 적응된 미디어 액세스 토큰 및 세션 ID를 인터페이스(1302)에 제공한다. 인터페이스(1302)는 인터페이스 호출(1320)에서 적응된 미디어 액세스 토큰 및 세션 ID를 패키징 모듈(1306)에 제공한다. 패키징 모듈(1306)은 응답(1321)에서 패키징된 미디어 액세스 토큰 및 세션 ID와 함께 응답(1321)을 인터페이스(1302)에 제공한다. 모듈(1306)은 응답(1322)에서 세션 ID에 대한 패키징된 애셋, URN 및 패키징된 미디어 액세스 토큰을 패키징된 미디어 서버(1307)에 제공한다. 클라이언트(1301)는 요청(1323)을 실행하여 메시지(1321)에서 수신된 패키징된 미디어 액세스 토큰에 대응하는 미디어 애셋의 스트리밍을 시작한다. 클라이언트(1301)는 다른 요청을 실행하고 메시지(1324)에서 상태 업데이트를 인터페이스(1302)에 제공한다.
도 14는 3D 포맷(1401) 및 2D 포맷(1402)의 몰입형 미디어 및 애셋의 두 부분으로 선택적으로 구성된 도 10의 인제스트 미디어 포맷 및 애셋(1002)을 도시한다. 2D 포맷(1402)은 단일 뷰 코딩된 비디오 스트림(예: ISO/IEC 14496 Part 10 고급 비디오 코딩)이거나 다중 뷰를 포함하는 코딩된 비디오 스트림(예: ISO/IEC 14496 Part 10에 대한 다중 뷰 압축 수정)일 수 있다.
일부 실시예는 시스템, 방법, 및/또는 통합의 가능한 기술 세부 사항 레벨에서 컴퓨터가 판독 가능한 매체에 관한 것일 수 있다. 컴퓨터가 판독 가능한 매체는 프로세서가 작동을 수행하게 하기 위한 컴퓨터가 판독 가능한 프로그램 명령을 갖는 컴퓨터가 판독 가능한 비일시적 저장 매체(또는 매체)를 포함할 수 있다.
컴퓨터가 판독 가능한 저장 매체는 명령 실행 디바이스에 의해 사용하기 위한 명령을 보유하고 저장할 수 있는 유형의 디바이스일 수 있다. 컴퓨터가 판독 가능한 저장 매체는 예를 들어 전자 저장 디바이스, 자기 저장 디바이스, 광학 저장 디바이스, 전자기 저장 디바이스, 반도체 저장 디바이스, 또는 이들의 임의의 적절한 조합일 수 있지만 이에 제한되지는 않는다. 컴퓨터 판독 가능한 저장 매체의 보다 구체적인 예의 비배타적인 리스트는 다음: 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(random access memory, RAM), 읽기 전용 메모리(read-only memory, ROM), 지울 수 있는 프로그램 가능한 판독- 전용 메모리(EPROM 또는 플래시 메모리), 정적 랜덤 액세스 메모리(static random access memory, SRAM), 휴대용 컴팩트 디스크 읽기 전용 메모리(CD-ROM), 디지털 다목적 디스크(digital versatile disk, DVD), 메모리 스틱, 플로피 디스크, 펀치 카드 또는 그 위에 기록된 명령을 갖는 홈(groove)의 융기 구조와 같은 기계적으로 인코딩된 디바이스, 및 전술한 것의 임의의 적절한 조합을 포함한다. 여기에서 사용된 컴퓨터가 판독 가능한 저장 매체는 전파 또는 기타 자유롭게 전파하는 전자기파, 도파관 또는 다른 전송 매체를 통해 전파되는 전자기파(예: 광섬유 케이블을 통과하는 광 펄스), 또는 와이어를 통해 전송되는 전기 신호와 같은 일시적인 신호 그 자체로 해석되어서는 안 된다
여기에서 설명된 컴퓨터가 판독 가능한 프로그램 명령은 컴퓨터가 판독 가능한 저장 매체로부터 각각의 컴퓨팅/처리 디바이스로, 또는 네트워크, 예를 들어, 인터넷, 근거리 통신망, 광역 통신망 및/또는 무선 네트워크를 통해 외부 컴퓨터 또는 외부 저장 디바이스로 다운로드될 수 있다. 네트워크는 구리 전송 케이블, 광 전송 섬유, 무선 전송, 라우터, 방화벽, 스위치, 게이트웨이 컴퓨터 및/또는 에지 서버를 포함할 수 있다. 각각의 컴퓨팅/처리 디바이스의 네트워크 어댑터 카드 또는 네트워크 인터페이스는 네트워크로부터 컴퓨터가 판독 가능한 프로그램 명령을 수신하고, 각각의 컴퓨팅/처리 디바이스 내의 컴퓨터가 판독 가능한 저장 매체에 저장하기 위해 컴퓨터 판독 가능한 프로그램 명령을 포워딩한다.
작동을 수행하기 위한 컴퓨터가 판독 가능한 프로그램 코드/명령은 어셈블러 명령, 명령 세트 아키텍처(instruction-set-architecture, ISA) 명령, 기계 명령, 기계 종속 명령, 마이크로코드, 펌웨어 명령, 상태 설정 데이터, 집적 회로용 구성 데이터, 또는 Smalltalk, C++ 등과 같은 객체 지향 프로그래밍 언어 및 "C" 프로그래밍 언어 또는 유사한 프로그래밍 언어와 같은 절차적 프로그래밍 언어를 포함하는 하나 이상의 프로그래밍 언어의 임의의 조합으로 작성된 소스 코드 또는 객체 코드일 수 있다. 컴퓨터가 판독 가능한 프로그램 명령은 사용자의 컴퓨터에서 전체적으로, 독립 실행형 소프트웨어 패키지로서 사용자의 컴퓨터에서 부분적으로, 사용자의 컴퓨터에서 부분적으로 그리고 원격 컴퓨터에서 부분적으로 또는 원격 컴퓨터 또는 서버에서 전체적으로 실행될 수 있다. 후자의 시나리오에서, 원격 컴퓨터는 근거리 통신망(local area network, LAN) 또는 광역 통신망(wide area network, WAN)을 포함한 임의의 유형의 네트워크를 통해 사용자의 컴퓨터에 연결될 수 있거나, 또는 연결은 (예를 들어 인터넷 서비스 제공자를 사용하여 인터넷을 통해) 외부 컴퓨터에 연결될 수 있다. 일부 실시예에서, 예를 들어 프로그램 가능 논리 회로, FPGA(field-programmable gate arrays), 또는 PLA(programmable logic arrays)를 포함하는 전자 회로는, 측면 또는 작동을 수행하기 위해, 전자 회로를 개인화하도록 컴퓨터가 판독 가능한 프로그램 명령의 상태 정보를 활용하는 것에 의해, 컴퓨터가 판독 가능한 프로그램 명령을 실행할 수 있다.
이러한 컴퓨터가 판독 가능한 프로그램 명령은 범용 컴퓨터, 특수 목적 컴퓨터 또는 다른 프로그램 가능한 데이터 처리 장치의 프로세서에 제공되어 기계를 생성할 수 있으므로, 컴퓨터의 프로세서 또는 기타 프로그램 가능 데이터 처리 장치를 통해 실행되는 명령은, 흐름도 및/또는 블록도 블록 또는 블록들에 지정된 기능/동작(act)을 구현하기 위한 수단을 생성한다. 이들 컴퓨터가 판독 가능한 프로그램 명령은 또한 컴퓨터, 프로그램 가능 데이터 처리 장치, 및/또는 다른 디바이스가 특정 방식으로 작동하도록 지시할 수 있는 컴퓨터가 판독 가능한 저장 매체에 저장될 수 있으므로, 그 내부에 저장된 명령을 가지는 컴퓨터가 판독 가능한 저장 매체는 흐름도 및/또는 블록도 블록 또는 블록들에 지정된 기능/동작의 측면을 구현하는 명령을 포함하는 제조 물품을 포함한다.
컴퓨터가 판독 가능한 프로그램 명령은 또한 컴퓨터, 다른 프로그램 가능 데이터 처리 장치 또는 다른 디바이스에 로딩되어, 컴퓨터, 다른 프로그램 가능 장치 또는 다른 디바이스에서 일련의 작동 단계가 수행되게 하여 컴퓨터 구현 프로세스를 생성할 수 있으므로, 컴퓨터, 다른 프로그램 가능 장치 또는 다른 디바이스에서 실행되는 명령이 흐름도 및/또는 블록도 블록 또는 블록들에 지정된 기능/동작을 구현한다.
도면의 흐름도 및 블록도는 다양한 실시예에 따른 시스템, 방법, 및 컴퓨터가 판독 가능한 매체의 가능한 구현의 아키텍처, 기능 및 작동을 예시한다. 이와 관련하여, 흐름도 또는 블록도의 각 블록은 지정된 논리 기능(들)을 구현하기 위한 하나 이상의 실행 가능한 명령을 포함하는 모듈, 세그먼트, 또는 명령의 일부를 나타낼 수 있다. 방법, 컴퓨터 시스템, 및 컴퓨터가 판독 가능한 매체는 도면에 도시된 것보다 추가 블록, 더 적은 블록, 상이한 블록, 또는 상이하게 배열된 블록을 포함할 수 있다. 일부 대안적인 구현에서, 블록에 언급된 기능은 도면에 언급된 순서와 다르게 발생할 수 있다. 예를 들어, 연속적으로 도시된 2개의 블록은 실제로 동시에 또는 실질적으로 동시에 실행될 수 있거나, 또는 관련된 기능에 따라 블록이 때때로 역순으로 실행될 수 있다. 또한 블록도 및/또는 흐름도 예시의 각 블록과 블록도 및/또는 흐름도 예시의 블록 조합은 지정된 기능 또는 동작을 수행하거나 또는 특수 목적 하드웨어와 컴퓨터 명령의 조합을 수행하는 특수 목적 하드웨어 기반 시스템에 의해 구현될 수 있다.
여기에 설명된 시스템 및/또는 방법은 하드웨어, 펌웨어, 또는 하드웨어와 소프트웨어의 조합의 다른 형태로 구현될 수 있음이 명백할 것이다. 이러한 시스템 및/또는 방법을 구현하는 데 사용되는 실제 특수 제어 하드웨어 또는 소프트웨어 코드는 구현을 제한하지 않는다. 따라서, 시스템 및/또는 방법의 작동 및 행동은 특정 소프트웨어 코드를 참조하지 않고 여기에서 설명되었으며 - 소프트웨어 및 하드웨어는 여기의 설명에 기반하여 시스템 및/또는 방법을 구현하도록 설계될 수 있음을 이해해야 한다.
여기에 사용된 어떤 엘리먼트, 액션 또는 명령도 명시적으로 설명되지 않는 한 중요하거나 필수적인 것으로 해석되어서는 안 된다. 또한, 본 명세서에서 사용되는 관사 "a" 및 "an"은 하나 이상의 항목을 포함하도록 의도되고, "하나 이상"과 상호교환적으로 사용될 수 있다. 또한, 여기에서 사용된 바와 같이, 용어 "세트"는 하나 이상의 항목(예: 관련 항목, 관련되지 않은 항목, 관련 및 관련되지 않은 항목의 조합 등)을 포함하도록 의도되고, "하나 이상"과 상호 교환적으로 사용될 수 있다. 하나의 항목만 의도된 경우 "하나" 또는 유사한 언어라는 용어가 사용된다. 또한, 여기에서 사용된 바와 같이, "가지다(has)", "가지다(have)", "갖는(having)" 등의 용어는 제한이 없는 용어로 의도된다. 또한, "~에 기반하여"라는 문구는 달리 명시적으로 언급되지 않는 한 "~에 적어도 부분적으로 기반하여"를 의미하도록 의도된다.
다양한 측면 및 실시예에 대한 설명은 예시의 목적으로 제시되었지만, 개시된 실시예를 완전하게 하거나 제한하도록 의도된 것은 아니다. 특징들의 조합이 청구범위에 인용되거나 및/또는 명세서에 개시되더라도, 이러한 조합은 가능한 구현의 개시를 제한하도록 의도되지 않는다. 사실, 이들 특징 중 다수는 청구범위에 구체적으로 언급되지 않은 방식 및/또는 명세서에 개시되지 않은 방식으로 조합될 수 있다. 아래에 나열된 각 종속항은 하나의 청구항에만 직접적으로 의존할 수 있지만 가능한 구현의 개시는 청구항 세트의 다른 모든 청구항과 조합된 각 종속항을 포함한다. 기술된 실시예의 범위를 벗어나지 않고 많은 수정 및 변형이 당업자에게 명백할 것이다. 여기에서 사용된 용어는 실시예의 원리, 시장에서 발견되는 기술에 대한 실질적인 애플리케이션 또는 기술적 개선을 가장 잘 설명하거나, 또는 당업자가 여기에 개시된 실시예를 이해할 수 있게 하기 위해 선택되었다.

Claims (20)

  1. 프로세서에 의해 실행 가능한, 몰입형 미디어를 스트리밍하는 방법으로서,
    2차원 포맷의 콘텐츠를 인제스팅하는(ingesting) 단계;
    상기 인제스팅된 콘텐츠를 신경망에 기반하여 3차원 포맷으로 변환하는 단계; 및
    상기 변환된 콘텐츠를 클라이언트 종단점(client end-point)으로 스트리밍하는 단계
    를 포함하는 스트리밍하는 방법.
  2. 제1항에 있어서,
    상기 인제스팅된 콘텐츠를 변환하는 것은,
    상기 인제스팅된 콘텐츠에 포함된 상관 이미지에 기반하여 상기 인제스팅된 콘텐츠에 묘사된 장면의 체적 표현을 상기 신경망에 의해 도출하는 것
    을 포함하는, 스트리밍하는 방법.
  3. 제1항에 있어서,
    상기 2차원 포맷은 단일 뷰 2차원 포맷인, 스트리밍하는 방법.
  4. 제1항에 있어서,
    상기 2차원 포맷은 다중 뷰 2차원 포맷인, 스트리밍하는 방법.
  5. 제1항에 있어서,
    상기 인제스팅된 콘텐츠는 중앙 처리 유닛 및 그래픽 처리 유닛 중 적어도 하나를 포함하는 적응 처리 유닛을 사용하여 변환되는, 스트리밍하는 방법.
  6. 제5항에 있어서,
    상기 신경망은 상기 적응 처리 유닛에 포함된 메모리에 저장된 복수의 신경망 모델 중 상기 적응 처리 유닛에 의해 선택된 신경망 모델에 대응하는, 스트리밍하는 방법.
  7. 제1항에 있어서,
    상기 클라이언트 종단점은 2차원 포맷을 지원할 수 없는, 스트리밍하는 방법.
  8. 제1항에 있어서,
    상기 클라이언트 종단점은 텔레비전, 컴퓨터, 머리 장착형 디스플레이, 렌티큘러 라이트 필드 디스플레이, 홀로그램 디스플레이, 증강 현실 디스플레이, 및 고밀도 라이트 필드 디스플레이 중 적어도 하나를 포함하는, 스트리밍하는 방법.
  9. 몰입형 미디어를 스트리밍하는 디바이스로서,
    프로그램 코드를 저장하도록 구성된 적어도 하나의 메모리; 및
    상기 프로그램 코드를 판독하고 상기 프로그램 코드에 의해 명령된 대로 작동하도록 구성된 적어도 하나의 프로세서
    를 포함하고,
    상기 프로그램 코드는,
    상기 적어도 하나의 프로세서가, 2차원 포맷의 콘텐츠를 인제스팅하게 하도록 구성된 인제스팅 코드;
    상기 적어도 하나의 프로세서가, 상기 인제스팅된 콘텐츠를 신경망에 기반하여 3차원 포맷으로 변환하게 하도록 구성된 변환 코드; 및
    상기 적어도 하나의 프로세서가, 상기 변환된 콘텐츠를 클라이언트 종단점으로 스트리밍하게 하도록 구성된 스트리밍 코드
    를 포함하는, 스트리밍하는 디바이스.
  10. 제9항에 있어서,
    상기 변환 코드는, 상기 적어도 하나의 프로세서가, 상기 인제스팅된 콘텐츠에 포함된 상관 이미지에 기반하여 상기 인제스팅된 콘텐츠에 묘사된 장면의 체적 표현을 상기 신경망에 의해 도출하게 하도록 구성된 도출 코드를 포함하는, 스트리밍하는 디바이스.
  11. 제9항에 있어서,
    상기 2차원 포맷은 단일 뷰 2차원 포맷인, 스트리밍하는 디바이스.
  12. 제9항에 있어서,
    상기 2차원 포맷은 다중 뷰 2차원 포맷인, 스트리밍하는 디바이스.
  13. 제9항에 있어서,
    상기 인제스팅된 콘텐츠는 상기 스트리밍하는 디바이스에 포함된 적응 처리 유닛을 사용하여 변환되고, 상기 적응 처리 유닛은 중앙 처리 유닛 및 그래픽 처리 유닛 중 적어도 하나를 포함하는, 스트리밍하는 디바이스.
  14. 제13항에 있어서,
    상기 신경망은 상기 적어도 하나의 메모리에 저장된 복수의 신경망 모델 중 상기 적응 처리 유닛에 의해 선택된 신경망 모델에 대응하는, 스트리밍하는 디바이스.
  15. 제9항에 있어서,
    상기 클라이언트 종단점은 2차원 포맷을 지원할 수 없는, 스트리밍하는 디바이스.
  16. 제9항에 있어서,
    상기 클라이언트 종단점은 텔레비전, 컴퓨터, 머리 장착형 디스플레이, 렌티큘러 라이트 필드 디스플레이, 홀로그램 디스플레이, 증강 현실 디스플레이, 및 고밀도 라이트 필드 디스플레이 중 적어도 하나를 포함하는, 스트리밍하는 디바이스.
  17. 명령을 저장하는 컴퓨터가 판독 가능한 비일시적 매체로서,
    상기 명령은, 몰입형 미디어 스트리밍을 위한 디바이스의 적어도 하나의 프로세서에 의해 실행될 때, 상기 적어도 하나의 프로세서가,
    2차원 포맷의 콘텐츠를 인제스팅하고;
    상기 인제스팅된 콘텐츠를 신경망에 기반하여 3차원 포맷으로 변환하며; 그리고
    상기 변환된 콘텐츠를 클라이언트 종단점으로 스트리밍하게 하는 하나 이상의 명령을 포함하는, 컴퓨터가 판독 가능한 비일시적 매체.
  18. 제17항에 있어서,
    상기 하나 이상의 명령은 추가로, 상기 적어도 하나의 프로세서가, 상기 인제스팅된 콘텐츠에 포함된 상관 이미지에 기반하여 상기 인제스팅된 콘텐츠에 묘사된 장면의 체적 표현을 상기 신경망에 의해 도출하게 하는, 컴퓨터가 판독 가능한 비일시적 매체.
  19. 제17항에 있어서,
    상기 2차원 포맷은 단일 뷰 2차원 포맷인, 컴퓨터가 판독 가능한 비일시적 매체.
  20. 제17항에 있어서,
    상기 2차원 포맷은 다중 뷰 2차원 포맷인, 컴퓨터가 판독 가능한 비일시적 매체.
KR1020227022429A 2020-12-08 2021-08-24 이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응 KR102598603B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020237037705A KR20230155615A (ko) 2020-12-08 2021-08-24 이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202063122769P 2020-12-08 2020-12-08
US63/122,769 2020-12-08
US17/406,268 US12003792B2 (en) 2021-08-19 Adaptation of 2D video for streaming to heterogenous client end-points
US17/406,268 2021-08-19
PCT/US2021/047284 WO2022125154A1 (en) 2020-12-08 2021-08-24 Adaptation of 2d video for streaming to heterogenous client end-points

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020237037705A Division KR20230155615A (ko) 2020-12-08 2021-08-24 이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응

Publications (2)

Publication Number Publication Date
KR20220110787A true KR20220110787A (ko) 2022-08-09
KR102598603B1 KR102598603B1 (ko) 2023-11-03

Family

ID=81848449

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020227022429A KR102598603B1 (ko) 2020-12-08 2021-08-24 이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응
KR1020237037705A KR20230155615A (ko) 2020-12-08 2021-08-24 이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020237037705A KR20230155615A (ko) 2020-12-08 2021-08-24 이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응

Country Status (5)

Country Link
EP (1) EP4085567A4 (ko)
JP (1) JP7448677B2 (ko)
KR (2) KR102598603B1 (ko)
CN (1) CN115136595A (ko)
WO (1) WO2022125154A1 (ko)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2024034646A1 (ja) * 2022-08-12 2024-02-15 ソニーグループ株式会社 データ配信システム、データ配信方法、データ処理装置及びデータ処理方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110014021A (ko) * 2009-08-04 2011-02-10 에스케이 텔레콤주식회사 고속영상 인제스팅 오류 검출 방법 및 시스템
KR20120054034A (ko) * 2009-08-06 2012-05-29 퀄컴 인코포레이티드 3차원 입력 포맷들을 따르는 비디오 데이터 변환

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20080204873A1 (en) * 2007-02-23 2008-08-28 Strategic Patent Acquisitions Llc Techniques for three dimensional displays
US8537200B2 (en) 2009-10-23 2013-09-17 Qualcomm Incorporated Depth map generation techniques for conversion of 2D video data to 3D video data
US20110138018A1 (en) 2009-12-04 2011-06-09 Qualcomm Incorporated Mobile media server
US11263823B2 (en) * 2012-02-24 2022-03-01 Matterport, Inc. Employing three-dimensional (3D) data predicted from two-dimensional (2D) images using neural networks for 3D modeling applications and other applications
US9918110B2 (en) 2013-12-13 2018-03-13 Fieldcast Llc Point of view multimedia platform
US11461936B2 (en) * 2015-03-17 2022-10-04 Raytrx, Llc Wearable image manipulation and control system with micro-displays and augmentation of vision and sensing in augmented reality glasses
US10638124B2 (en) * 2017-04-10 2020-04-28 Intel Corporation Using dynamic vision sensors for motion detection in head mounted displays
WO2019117866A1 (en) * 2017-12-12 2019-06-20 Google Llc Bitrate optimizations for immersive multimedia streaming
EP3823274A4 (en) 2018-07-13 2022-03-30 LG Electronics Inc. METHOD AND DEVICE FOR TRANSMITTING AND RECEIVING METADATA ON A DYNAMIC POINT COORDINATE SYSTEM
US11217006B2 (en) 2018-10-29 2022-01-04 Verizon Patent And Licensing Inc. Methods and systems for performing 3D simulation based on a 2D video image
US11880939B2 (en) 2020-08-20 2024-01-23 Intel Corporation Embedding complex 3D objects into an augmented reality scene using image segmentation

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20110014021A (ko) * 2009-08-04 2011-02-10 에스케이 텔레콤주식회사 고속영상 인제스팅 오류 검출 방법 및 시스템
KR20120054034A (ko) * 2009-08-06 2012-05-29 퀄컴 인코포레이티드 3차원 입력 포맷들을 따르는 비디오 데이터 변환

Also Published As

Publication number Publication date
JP2023516971A (ja) 2023-04-21
EP4085567A1 (en) 2022-11-09
WO2022125154A1 (en) 2022-06-16
US20220182597A1 (en) 2022-06-09
KR20230155615A (ko) 2023-11-10
JP7448677B2 (ja) 2024-03-12
CN115136595A (zh) 2022-09-30
EP4085567A4 (en) 2023-04-26
KR102598603B1 (ko) 2023-11-03

Similar Documents

Publication Publication Date Title
JP7392136B2 (ja) ビデオコンテンツを表示するための方法、コンピュータシステム、およびコンピュータプログラム
US20230319328A1 (en) Reference of neural network model for adaptation of 2d video for streaming to heterogeneous client end-points
KR102598603B1 (ko) 이기종 클라이언트 종단점에 대한 스트리밍을 위한 2d 비디오의 적응
JP7472298B2 (ja) 没入型メディアの設置、及び没入型メディアから異種クライアントエンドポイントへの配信
US12003792B2 (en) Adaptation of 2D video for streaming to heterogenous client end-points
JP7487331B2 (ja) 没入型メディアをストリーミングする方法、並びにそのコンピュータシステム、及びコンピュータプログラム
US20230007067A1 (en) Bidirectional presentation datastream
US20230007361A1 (en) Bidirectional presentation datastream using control and data plane channels
KR20230152130A (ko) 클라이언트 질의를 이용한 중복 자산의 재사용
KR20230141816A (ko) 자산 포맷들의 변환을 위한 몰입형 미디어 데이터 복잡도 분석기

Legal Events

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