KR20230118181A - 제어 및 데이터 평면 채널을 사용하는 양방향 프레젠테이션데이터스트림 - Google Patents

제어 및 데이터 평면 채널을 사용하는 양방향 프레젠테이션데이터스트림 Download PDF

Info

Publication number
KR20230118181A
KR20230118181A KR1020237023890A KR20237023890A KR20230118181A KR 20230118181 A KR20230118181 A KR 20230118181A KR 1020237023890 A KR1020237023890 A KR 1020237023890A KR 20237023890 A KR20237023890 A KR 20237023890A KR 20230118181 A KR20230118181 A KR 20230118181A
Authority
KR
South Korea
Prior art keywords
media
client
client device
protocol
server device
Prior art date
Application number
KR1020237023890A
Other languages
English (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 텐센트 아메리카 엘엘씨
Publication of KR20230118181A publication Critical patent/KR20230118181A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • 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/23418Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving operations for analysing video streams, e.g. detecting features or characteristics
    • 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/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • 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/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • 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/643Communication protocols
    • 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/643Communication protocols
    • H04N21/64322IP
    • 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/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • 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/85Assembly of content; Generation of multimedia applications
    • H04N21/858Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot
    • H04N21/8586Linking data to content, e.g. by linking an URL to a video object, by creating a hotspot by using a URL

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)
  • Telephonic Communication Services (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Processing Or Creating Images (AREA)

Abstract

본 개시의 측면은 미디어 처리를 위한 방법 및 장치를 제공한다. 일부 예에서, 상기 장치는 처리 회로를 포함한다. 상기 처리 회로는 제1 전송 프로토콜을 사용하는 제어 평면 채널을 통해 서버 디바이스와 복수의 제어 메시지를 교환한다. 상기 복수의 제어 메시지는 몰입형 미디어 배포를 위한 양방향 프로토콜의 제어 평면에 속한다. 상기 처리 회로는 제2 전송 프로토콜을 사용하는 제1 데이터 평면 채널을 통해 상기 서버 디바이스로부터 제1 복수의 데이터 메시지를 수신한다. 상기 제1 복수의 데이터 메시지는 상기 양방향 프로토콜의 데이터 평면에 속하고 몰입형 미디어 콘텐츠를 실어 전달한다. 상기 처리 회로는 상기 제1 복수의 데이터 메시지에 실려 전달되는 상기 몰입형 미디어 콘텐츠를 제시하도록 구성된다.

Description

제어 및 데이터 평면 채널을 사용하는 양방향 프레젠테이션 데이터스트림
참조에 의한 통합
본 출원은 "INTELLIGENT BIDIRECTIONAL PRESENTATION DATASTREAM USING CONTROL AND DATA PLANE CHANNELS(제어 및 데이터 평면 채널을 사용하는 양방향 프레젠테이션 데이터스트림)"라는 명칭으로 2021년 6월 30일에 출원된 미국 가출원 제63/217,049호에 대한 우선권 이익을 주장하여, "BIDIRECTIONAL PRESENTATION DATASTREAM USING CONTROL AND DATA PLANE CHANNELS"라는 명칭으로 2022년 6월 28일에 출원된 미국 특허출원 제17/851,838호에 대한 우선권의 이익을 주장한다. 이들 선행 출원의 개시내용은 그 전체가 참조에 의해 본 명세서에 통합된다.
본 개시는 일반적으로 미디어 처리 및 배포에 관련된 실시예를 설명한다.
본 명세서에 제공되는 배경 설명은 본 개시의 맥락을 일반적으로 제시하기 위한 것이다. 저작물(work)이 이 배경기술 섹션에 설명되는 범위에서, 현재 지명된 발명자들의 저작물은 물론 출원 시에 선행 기술로 인정되지 않을 수 있는 설명의 측면들은 명시적으로도 묵시적으로도 본 개시의 선행 기술로 인정되지 않는다.
몰입형 미디어(immersive media)는 일반적으로 예컨대 "레거시 미디어(legacy media)"로 알려진 시간 지정(timed) 2차원(2D) 및 대응하는 오디오용의 기존의 상용 네트워크를 통해 배포되는 것을 넘어선, 미디어의 경험에 물리적으로 존재하는 사용자의 지각을 생성하거나 향상시키기 위해 인간의 어느 또는 모든 감각 시스템(시각, 청각, 체감, 후각 및 가능하게는 미각)의 일부 또는 전부를 자극하는 미디어를 말한다. 몰입형 미디어와 레거시 미디어는 모두 시간이 지정되거나 지정되지 않은 것으로 특징지을 수 있다.
시간 지정(timed media) 미디어는 시간에 따라 구조화되고 제시되는 미디어를 말한다. 예로는 영화 피처(movie features), 뉴스 보도, 에피소드 콘텐츠 등이 있으며, 이들 모두가 시간에 따라 편성된다. 레거시 비디오 및 오디오는 일반적으로 시간 지정 미디어로 간주된다.
시간 미지정 미디어(untimed media)는 시간에 의해 구조화되지 않고 오히려 논리적, 공간적 및/또는 시간적 관계에 의해 구조화되는 미디어이다. 예로는 사용자가 게이밍 디바이스에 의해 생성된 경험을 통해 제어할 수 있는 비디오 게임이 있다. 시간 미지정 미디어의 다른 예로는 카메라로 촬영한 정지 이미지(still image) 사진이다. 시간 미지정 미디어는 시간 지정 미디어를, 예를 들어 비디오 게임 장면의 연속 루프형 오디오 또는 비디오 세그먼트에 포함할 수 있다. 반대로, 시간 지정 미디어는 시간 미지정 미디어를, 예를 들어 고정된 정지 이미지가 배경으로 있는 비디오를 포함할 수 있다.
몰입형 미디어 지원 디바이스(immersive media-capable device)는 몰입형 미디어를 액세스하고, 해석하고, 제공하는 기능을 갖춘 디바이스를 의미할 수 있다. 이러한 미디어 및 디바이스는 미디어의 양과 포맷, 그리고 이러한 미디어를 대규모로 배포하는 데 필요한, 즉 네트워크를 통한 레거시 비디오 및 오디오 미디어 배포와 동등한 배포를 달성하는 데 필요한 네트워크 자원의 수와 유형의 측면에서 이질적이다. 대조적으로, 노트북 디스플레이, 텔레비전 및 모바일 핸드셋 디스플레이와 같은 레거시 디바이스는 이러한 디바이스가 모두 직사각형 디스플레이 스크린으로 구성되어 있고, 2D 직사각형 비디오 또는 정지 이미지를 기본 미디어 포맷으로 사용하기 때문에 능력면에서 동질적이다.
본 개시의 측면들은 미디어 처리를 위한 방법 및 장치를 제공한다. 일부 예에서, 상기 장치는 처리 회로를 포함한다. 상기 처리 회로는 제1 전송 프로토콜을 사용하는 제어 평면 채널을 통해 서버 디바이스와 복수의 제어 메시지를 교환할 수 있다. 상기 복수의 제어 메시지는 몰입형 미디어 배포를 위한 양방향 프로토콜의 제어 평면에 속한다. 상치 처리 회로는 제2 전송 프로토콜을 사용하는 제1 데이터 평면 채널을 통해 상기 서버 디바이스로부터 제1 복수의 데이터 메시지를 수신한다. 상기 제1 복수의 데이터 메시지는 상기 양방향 프로토콜의 데이터 평면에 속하고 몰입형 미디어 콘텐츠를 실어 전달한다. 상기 처리 회로는 상기 제1 복수의 데이터 메시지에 실려 전달되는 상기 몰입형 미디어 콘텐츠를 제시한다.
일부 예에서, 상기 제1 전송 프로토콜은 송신 제어 프로토콜(transmission control protocol, TCP)이고, 상기 제2 전송 프로토콜은 사용자 데이터그램 프로토콜(user datagram protocol, UDP)이다.
일부 예에서, 상기 제1 전송 프로토콜은 연결 기반 전송 프로토콜(connection-based transport protocol)이고, 상기 제2 전송 프로토콜은 무연결 전송 프로토콜(connectionless transport protocol)이다.
일부 실시예에서, 상기 처리 회로는 상기 제어 평면 채널을 통해 교환되는 상기 복수의 제어 메시지에 따라 상기 서버 디바이스와 상기 제1 데이터 평면 채널을 설정한다.
일부 예에서, 상기 처리 회로는 상기 장치의 하나 이상의 특정 특성을 상기 제어 평면 채널을 통해 상기 서버 디바이스에 제공한다. 상기 하나 이상의 특정 특성은, 상기 장치의 컴퓨팅 자원, 상기 장치의 저장 자원, 상기 장치에서의 네트워크 서비스 공급자의 서비스 레벨 협약, 몰입형 애플리케이션 요구사항(immersive application requirement), 상기 장치의 유형, 상기 장치의 모델, 및 상기 장치의 신경망 모델 중 적어도 하나를 포함한다.
일부 예에서, 상기 처리 회로는 상기 제2 전송 프로토콜을 사용하는 제2 데이터 평면 채널을 통해 상기 서버 디바이스에 제2 복수의 데이터 메시지를 송신한다. 상기 제2 복수의 데이터 메시지는 상기 장치에서의 신경망 모델의 계층 정보, 및 상기 장치에 의한 렌더링된 미디어 콘텐츠 중 적어도 하나를 실어 전달한다.
일부 실시예에서, 상기 장치는 제1 클라이언트 디바이스이고, 상기 복수의 제어 메시지는 상기 서버 디바이스가 상기 몰입형 미디어 콘텐츠를 제2 클라이언트 디바이스와 공유할 수 있게 한다. 일례에서, 상기 처리 회로는 상기 서버 디바이스로부터의 요청에 응답하여, 상기 제어 평면 채널을 통해 공유 가능한 자산 유형과 변경할 수 없는 스토리지에 캐싱되는 상기 자산에 대한 통합 자원 식별자들(uniform resource identifiers, URIs)의 목록을 제공한다. 다른 예에서, 상기 처리 회로는 상기 서버 디바이스로부터의 요청에 응답하여, 상기 제어 평면 채널을 통해 상기 제1 클라이언트 디바이스에 의해 액세스 가능한 각각의 자산의 상태 업데이트를 제공한다. 다른 예에서, 상기 처리 회로는 상기 서버 디바이스로부터의 요청에 응답하여, 상기 제어 평면 채널을 통해 특정 자산 유형의 현재 상태와, 특정 서버 할당 식별자 및 특정 자산 통합 자원 식별자(uniform resource identifier, URI) 중 하나를 제공한다.
본 개시의 측면은 또한 컴퓨터에 의해 실행될 때 상기 컴퓨터로 하여금 미디어 처리를 위한 방법을 수행하게 하는 명령어를 저장하는, 컴퓨터로 판독 가능한 비일시적 매체를 제공한다.
개시된 주제의 추가 특징, 성질 및 다양한 이점은 다음의 상세한 설명 및 첨부된 도면으로부터 더욱 명백해질 것이다.
도 1은 일례에서의 시간 지정 미디어 배포의 종단 간 프로세스의 도면이다.
도 2는 일례에서의 시간 지정 미디어의 스트리밍에 사용되는 표준 미디어 포맷의 도면이다.
도 3은 일부 예에서의 시간 지정 몰입형 미디어의 표현 및 스트리밍을 위한 데이터 모델의 도면이다.
도 4는 일부 예에서의 시간 미지정 몰입형 미디어의 표현 및 스트리밍을 위한 데이터 모델의 도면이다.
도 5는 일부 예에서 자연 장면을 캡처하고 이종 클라이언트 종단점(heterogenous client end-point)에 서비스를 제공하는 네트워크에 대한 인제스트 포맷(ingest format)으로 사용될 수 있는 표현으로 변환하는 프로세스의 도면이다.
도 6은 일부 예에서 이종 클라이언트 종단점에 서비스를 제공하는 네트워크에 대한 인제스트 포맷으로 사용될 수 있는 합성 장면의 표현을 생성하기 위해 3차원(3D) 모델링 도구 및 포맷을 사용하는 프로세스의 도면이다.
도 7은 일부 예에서 복수의 이종 클라이언트 종단점에 서비스를 제공하는 네트워크의 도면이다.
도 8은 일부 예에서 특정 몰입형 미디어 클라이언트 종단점에 의한 소비를 위해 미디어를 적응시키는 네트워크의 프로세스 전에 미디어 인제스트 포맷으로 표현되는 특정 미디어에 관한 적응 정보를 제공하는 네트워크의 도면이다.
도 9는 일부 예에서 소스 미디어를 인제스트 포맷에서 특정 클라이언트 종단점에 적합한 특정 포맷으로 변환하는 미디어 렌더-변환기(media render-converter)를 포함하는 미디어 적응 프로세스의 시스템 도면이다.
도 10은 일부 예에서 적응된 소스 미디어를 표현 및 스트리밍에 적합한 데이터 모델로 포맷하는 네트워크의 도면이다.
도 11은 일부예에서 도 11의 데이터 모델을 네트워크 프로토콜 패킷의 페이로드로 프래그먼트화하는 미디어 스트리밍 프로세스의 시스템 도면이다.
도 12는 일부 예에서 인제스트 포맷의 특정 몰입형 미디어를 특정 몰입형 미디어 클라이언트 종단점에 대해 스트리밍 가능하고 적합한 배포 포맷으로 적응시키는 네트워크의 시퀀스 도면이다.
도 13은 일부 예에서의 인제스트 미디어 포맷의 도면이다.
도 14는 일부 예에서 코딩된 비디오 스트림과 함께 신경망 모델 정보의 캐리지(carriage)를 도시한다.
도 15는 일부 예에서 입력 몰입형 미디어 및 자산과 함께 신경망 모델 정보의 캐리지를 도시한다.
도 16a 및 도 6b는 일부 예에서 몰입형 미디어 배포를 위한 양방향 프로토콜을 사용하여 서버 측에서 클라이언트 측으로 전송되는 메시지를 도시한다.
도 16c는 일부 예에서 몰입형 미디어 배포를 위한 양방향 프로토콜을 사용하여 클라이언트 측에서 서버 측으로 전송되는 메시지를 도시한다.
도 17a∼도 17g는 일부 예에서 서버 측에서 클라이언트 측으로 전송되는 메시지의 정의를 도시한다.
도 18은 일부 예에서 클라이언트 측에서 서버 측으로 전송되는 메시지의 정의를 도시한다.
도 19a∼19e는 별개의 제어 평면 채널 및 데이터 평면 채널을 통한 양방향 프레젠테이션 데이터스트림(bidirectional presentation datastream)의 도면을 도시한다.
도 20은 일부 예에서 몰입형 미디어의 배포를 위해 별개의 제어 평면 채널 및 데이터 평면 채널을 통한 양방향 프로토콜을 사용하는 미디어 시스템의 도면을 도시한다.
도 21은 본 개시의 일부 실시예에 따른 프로세스를 개략적으로 설명하는 흐름도를 도시한다.
도 22는 본 발명의 일부 실시예에 따른 다른 프로세스를 개략적으로 설명하는 흐름도를 도시한다.
도 23은 일 실시예에 따른 컴퓨터 시스템의 개략도이다.
본 개시의 측면들은 별개의 데이터 평면 채널 및 제어 평면 채널을 통한 양방향 프레젠테이션 데이터스트림을 위한 기술을 제공한다. 본 개시는 일반적으로 비디오, 오디오, 지오메트릭(geometric) (3D) 객체, 햅틱(haptic), 연관된 메타데이터 또는 클라이언트 프레젠테이션 디바이스를 위한 다른 콘텐츠를 포함한, 미디어를 배포하는 시스템 및 네트워크에 대한 아키텍처, 구조 및 구성요소에 관련된 실시예를 설명한다. 일부 실시예는 미디어 콘텐츠를 이종 몰입형 및 상호작용형 클라이언트 프레젠테이션 디바이스에 배포하기 위한 시스템, 구조 및 아키텍처에 관한 것이다.
몰입형 미디어는 일반적으로 예컨대 "레거시 미디어(legacy media)"로 알려진 시간 지정 2차원(2D) 및 대응하는 오디오용의 기존 상용 네트워크를 통해 배포되는 것을 넘어선, 미디어의 경험에 물리적으로 존재하는 사용자의 지각을 생성하거나 향상시키기 위해 인간의 어느 또는 모든 감각 시스템(시각, 청각, 체감, 후각 및 가능하게는 미각)의 일부 또는 전부를 자극하는 미디어를 말한다. 몰입형 미디어와 레거시 미디어는 모두 시간이 지정되거나 지정되지 않은 것으로 특징지을 수 있다.
시간 지정 미디어는 시간에 따라 구조화되고 제시되는 미디어를 말한다. 예로는 영화 피처, 뉴스 보도, 에피소드 콘텐츠 등이 있으며, 이들 모두가 시간에 따라 편성된다. 레거시 비디오 및 오디오는 일반적으로 시간 지정 미디어로 간주된다.
시간 미지정 미디어는 시간에 의해 구조화되지 않고 오히려 논리적, 공간적 및/또는 시간적 관계에 의해 구조화되는 미디어이다. 예로는 사용자가 게이밍 디바이스에 의해 생성된 경험을 통해 제어할 수 있는 비디오 게임이 있다. 시간 미지정 미디어의 다른 예로는 카메라로 촬영한 정지 이미지 사진이다. 시간 미지정 미디어는 시간 지정 미디어를, 예를 들어 비디오 게임 장면의 연속 루프형 오디오 또는 비디오 세그먼트에 포함할 수 있다. 반대로, 시간 지정 미디어는 시간 미지정 미디어를, 예를 들어 고정된 정지 이미지가 배경으로 있는 비디오를 포함할 수 있다.
몰입형 미디어 지원 디바이스는 몰입형 미디어를 액세스하고, 해석하고, 제공하는 기능을 갖춘 디바이스를 의미할 수 있다. 이러한 미디어 및 디바이스는 미디어의 양과 포맷, 그리고 이러한 미디어를 대규모로 배포하는 데 필요한, 즉 네트워크를 통한 레거시 비디오 및 오디오 미디어 배포와 동등한 배포를 달성하는 데 필요한 네트워크 자원의 수와 유형의 측면에서 이질적이다. 대조적으로, 노트북 디스플레이, 텔레비전 및 모바일 핸드셋 디스플레이와 같은 레거시 디바이스는 이러한 디바이스가 모두 직사각형 디스플레이 스크린으로 구성되어 있고, 2D 직사각형 비디오 또는 정지 이미지를 기본 미디어 포맷으로 사용하기 때문에 능력면에서 동질적이다. 마찬가지로 레거시 디바이스에서 지원되는 오디오 포맷의 수는 비교적 작은 세트로 제한된다.
네트워크를 통한 임의의 미디어의 배포는 미디어를 입력 또는 네트워크 인제스트 포맷에서 최종 배포 포맷으로 재포맷하는 미디어 전달 시스템(media delivery system) 및 아키텍처를 사용할 수 있으며, 그 배포 포맷은 타깃 클라이언트 디바이스 및 그 애플리케이션에 적합할 뿐만 아니라 네트워크를 통해 스트리밍되는 데에도 도움이 된다. 미디어의 스트리밍은 넓게 미디어가 네트워크를 통해 미디어의 시간적 구조 또는 공간적 구조 중 하나 또는 둘 모두에 따라 논리적으로 편성되고 일정한 순서로 배열된 연속적인 작은 크기의 "덩어리(chunk)"로 전달되도록 하는 소스 미디어의 프래그먼트화 및 패킷화를 말한다. 이러한 배포 아키텍처 및 시스템에서, 미디어는 가장 핵심적인 미디어 정보만 클라이언트에 먼저 전달되도록 압축 또는 계층화(layering) 프로세스를 거칠 수 있다. 경우에 따라서는 클라이언트가 동일한 미디어 부분 중 어느 것을 최종 사용자에게 제시할 수 있기 전에 클라이언트가 미디어의 일부 부분에 대한 핵심적인 미디어 정보를 모두 수신한다.
타깃 클라이언트 종단점의 능력과 매칭되도록 입력 미디어를 재포맷하는 프로세스는 재포맷되는 특정 미디어의 일부 사전 지식을 캡슐화할 수 있는 네트워크 모델을 취하는 신경망 프로세스를 채용할 수 있다. 예를 들어, 특정 모델은 야외 공원 장면(공원 장면에 공통적인 나무, 식물, 잔디 및 기타 물체가 있음)을 인식하도록 조정될 수 있는 반면, 다른 특정 모델은 실내 저녁식사 장면(저녁 식탁, 서빙 기구, 식탁에 앉은 사람 등)을 인식하도록 조정될 수 있다. 일부 예에서, 네트워크 모델은 특정 맥락에서 객체, 예컨대 공원 장면 객체를 인식하도록 조정될 수 있으며, 특정 장면의 콘텐츠와 매칭되도록 조정된 네트워크 모델이 장비된 신경망 프로세스는 그렇게 조정되지 않은 네트워크 모델보다 더 나은 시각적 결과를 낳을 수 있다. 따라서 타깃 클라이언트 종단점의 능력과 매칭되도록 입력 미디어를 재포맷해야 하는 신경망 프로세스에 장면 특정(scene-specific) 네트워크 모델을 제공하는 이점이 있다.
2차원(2D) 미디어에 대한 특정 장면에 신경망 모델을 연관시키는 메커니즘은, 예를 들어 네트워크 모델을 압축하고 압축된 네트워크 모델을, 예를 들어 H.264, H.265 및 H.266 비디오 압축 포맷으로 코딩된 비디오 스트림에 메타데이터를 첨부하는 데 일반적으로 사용되는 보충 강화 정보(supplemental enhancement information, SEI) 구조화된 필드( structured field)에 의해 시각적 장면에 대한 2D 코딩된 비트스트림에 직접 삽입함으로써 달성될 수 있다. 코딩된 비디오 비트스트림 부분의 컨텍스트 내에 특정 신경망 모델을 포함하는 SEI 메시지의 존재는 네트워크 모델이 그 모델이 임베딩되어 있는 비트스트림 부분 내의 비디오 콘텐츠를 해석하고 적응시키는 데 사용될 것임을 지시하는 데 사용될 수 있다. 일부 예에서, SEI 메시지는 네트워크 모델에 대한 식별자에 의해, 실제 모델 자체가 없을 때 신경망 모델(들)이 사용될 수 있음을 시그널링하는 데 사용될 수 있다.
몰입형 미디어에 대한 적절한 신경망을 연관짓는 메커니즘은 사용할 적절한 신경망 모델을 참조하는 몰입형 미디어 자체에 의해 달성될 수 있다. 이 참조는 네트워크 모델과 그 파라미터를 객체별로, 또는 장면별로, 또는 이들의 일부 조합에 직접 임베딩함으로써 달성될 수 있다. 일부 예에서, 미디어 내에 하나 이상의 신경망 모델을 임베딩하는 대신, 미디어 객체 또는 장면은 식별자에 의해 특정 신경망 모델을 참조할 수 있다.
일부 다른 예에서, 클라이언트 종단점으로의 스트리밍을 위한 미디어의 적응을 위해 적절한 신경망을 참조하는 메커니즘은 특정 클라이언트 종단점 자체가 적어도 하나의 신경망 모델, 및 대응하는 파라미터를 사용할 적응 프로세스에 제공하기 위한 것이다. 이러한 메커니즘은 예를 들어 클라이언트가 자신을 네트워크에 어태치할 때, 적응 프로세스와 통신하여 신경망 모델(들)을 제공하는 클라이언트를 통해 구현될 수 있다.
타깃 클라이언트 종단점에 대한 비디오의 적응에 이어, 네트워크 내의 적응 프로세스는 결과에 압축 알고리즘을 적용하도록 선택할 수 있다. 또한, 압축 알고리즘은 일부 예에서 적응된 비디오 신호를 시각적 신호의 가장 덜 핵심적인 부분에 가장 핵심적인 부분에 대응하는 계층들로 분리할 수 있다.
일부 예에서, JPEG 표준(ISO/IEC 10918 Part 1)의 프로그레시브 포맷(progressive format)과 같은 압축 및 계층화 프로세스는 이미지를, 전체 이미지가 초기에 초점이 맞지 않는, 즉 전체 이미지 스캔에 대한 저차 DCT 계수로부터 기본 모양 및 색상만으로 먼저 제시되도록 하는 계층들로 분리하고, 이어서 이미지가 초점이 맞도록 하는, 즉 이미지 스캔의 고차 DCT 계수로부터 추가 세부 계층들로 분리할 수 있다.
미디어를 더 작은 부분들로 쪼개고, 연속적인 네트워크 프로토콜 패킷의 페이로드 부분으로 체계화하고(organizing), 이러한 프로토콜 패킷을 배포하는 프로세스는 미디어 스트리밍이라고 하는 반면 미디어를 다양한 이종 애플리케이션 중 하나를 운영하는 다양한 이종 클라이언트 종단점 중 하나에 대한 프레젠테이션에 적합한 포맷으로 변환하는 프로세스는 적응이라고 한다.
본 개시에서 사용되는 일부 용어에 대한 정의는 다음 단락에서 제공된다.
장면 그래프(Scene graph): 벡터 기반 그래픽 편집 애플리케이션 및 최신 컴퓨터 게임에서 일반적으로 사용되는 일반 데이터 구조로, 그래픽 장면의 논리적 및 종종(반드시 그런 것은 아님) 공간적 표현을 배열한다; 그래프 구조의 노드 및 정점의 모음이다.
노드(Node): 시각, 오디오, 햅틱(haptic), 후각, 미각 또는 관련 처리 정보의 논리적 또는 공간적 또는 시간적 표현과 관련된 정보로 구성된 장면 그래프의 기본 요소; 각 노드는 최대 하나의 출력 에지, 0개 이상의 입력 에지 및 이에 연결된 적어도 하나의 에지(입력 또는 출력)를 가져야 한다.
기본 계층(Base Layer): 일반적으로 자산을 렌더링하는 데 필요한 계산 자원 또는 시간, 또는 네트워크를 통해 자산을 송신하는 시간을 최소화하도록 공식화된 자산의 명목상 표현(nominal representation).
강화 계층(Enhancement Layer): 자산의 기본 계층 표현에 적용되는 경우, 기본 계층에서 지원되지 않는 특징 또는 능력을 포함하도록 기본 계층을 증강하는 정보 세트.
속성(Attribute): 기본적인(canonical) 또는 더 복잡한 형태(예컨대, 다른 노드의 관점에서)로 그 노드의 특정한 특성 또는 특징을 설명하기 위해 사용되는 노드와 연관된 메타데이터.
컨테이너(Container): 장면의 렌더링에 필요한 모든 미디어 자원 및 장면 그래프를 포함하는 모든 자연 장면, 모든 합성 장면, 또는 합성 장면과 자연 장면의 혼합을 표현하기 위해 정보를 저장하고 교환하는 직렬화된 포맷.
직렬화(Serialization): 데이터 구조나 객체 상태를 (예컨대, 파일 또는 메모리 버퍼에) 저장되거나 (예컨대, 네트워크 연결 링크를 통해) 송신되고 (어쩌면 다른 컴퓨터 환경에서) 나중에 재구축될 수 있는 포맷으로 변환하는 프로세스. 결과물인 일련의 비트가 직렬화 포맷에 따라 다시 읽힐 때, 원본 객체의 의미상 동일한 복제본(clone)을 만드는 데 사용할 수 있다.
렌더러(Renderer): 음향 물리학, 광 물리학, 시각적 인식, 오디오 인식, 수학 및 소프트웨어 개발과 관련된 전문분야의 선택적인 혼합에 기초한 (일반적으로 소프트웨어 기반) 애플리케이션 또는 프로세스로, 입력 장면 그래프 및 자산 컨테이너가 주어지면 타깃 디바이스에 프레젠테이션하기에 적합하거나 장면 그래프에서 렌더 타깃 노드의 속성에 의해 지정된대로 원하는 속성을 따르는 일반적으로 시각적 및/또는 오디오 신호를 내보낸다. 시각 기반 미디어 자산(visual-based media assets)의 경우, 렌더러는 타깃 디스플레이에 적합하거나, 중간 자산으로서 저장하기 위해 시각적 신호를 내보낼 수 있다(예: 다른 컨테이너에 다시 패키징됨, 즉 그래픽 파이프라인에서 일련의 렌더링 프로세스에 사용됨). 오디오 기반 미디어 자산의 경우, 렌더러는 다중 채널 라우드스피커 및/또는 바이노럴화된(binauralized) 헤드폰에 프레젠테이션하기 위해, 또는 다른 (출력) 컨테이너로 다시 패키징하기 위해 오디오 신호를 내보낼 수 있다. 인기 있는 렌더러의 예로는 Unity, Unreal이 있다.
평가(Evaluate): 출력이 추상적인 것에서 구체적인 결과로 이동하게 하는 결과를 생성한다(예컨대, 웹 페이지에 대한 문서 객체 모델의 평가와 유사).
스크립팅 언어(Scripting language): 장면 그래프 노드에 대한 동적 입력 및 변수 상태 변화를 처리하기 위해 런타임 시 렌더러에 의해 실행될 수 있는 해석형 프로그래밍 언어(interpreted programming language)로, 공간 및 시간 객체 토폴로지(물리력, 제약조건, IK, 변형, 충돌을 포함함)와, 에너지 전파 및 전송(빛, 소리)의 렌더링 및 평가에 영향을 미친다.
셰이더(Shader): 원래 셰이딩(이미지 내에서 적절한 수준의 빛, 어둠 및 색상 생성)에 사용되었지만 현재 컴퓨터 그래픽 특수 효과의 다양한 분야에서 다양한 특수 기능 또는 셰이딩과 관련 없는 비디오 후처리를 수행하거나, 또는 그래픽과 전혀 관련 없는 기능도 수행하는 컴퓨터 프로그램의 일종.
경로 추적(Path tracing): 장면의 조명이 현실에 충실하도록 3차원 장면을 렌더링하는 컴퓨터 그래픽 방법.
시간 지정 미디어(Timed media): 시간에 의해 순서가 정해진 미디어; 예컨대, 특정 클록에 따른 시작 및 종료 시간이 있다.
시간 미지정 미디어(Untimed media): 공간적, 논리적 또는 시간적 관계에 의해 체계화된 미디어; 예컨대, 사용자(들)가 취한 행동에 따라 실현되는 상호작용 경험에서처럼.
신경망 모델(Neural network model): 원래 신호에 의해 명시적으로 제공되지 않은 시각적 신호에 대한 새로운 보기의 보간을 포함할 수 있는 개선된 시각적 출력에 도달하기 위해 시각적 신호에 적용되는 잘 정의된 수학적 연산에 사용되는 가중치(즉, 수치 값)를 정의하는 파라미터 및 텐서(예: 행렬)의 모음.
본 개시의 일부 측면에 따르면, 몰입형 미디어는 몰입형 미디어 지원 디바이스에 의해 인간에게 제시될 때, 보다 현실적이고 자연계 내에서의 경험에 대한 인간의 이해와 일치하는 방식으로, 시각(sight), 소리(sound), 미각(taste), 촉각(touch), 및 청각(hearing)의 오감 중 임의의 감각을 자극하는, 즉 그렇지 않으면 레거시 디바이스에 의해 제시되는 레거시 미디어로 달성하였을 것 이상으로 자극하는 하나 이상의 유형의 미디어로 간주될 수 있다. 이 맥락에서, 레거시 미디어라는 용어는 사용자의 상호작용 능력이 일시 중지, 재생, 빨리 감기(fast-forward) 또는 되감기(rewind)로 제한되는 2차원(2D) 시각적 미디어, 정지 또는 동영상 프레임, 및/또는 대응하는 오디오를 의미하고; 레거시 디바이스는 레거시 미디어만 프레젠테이션할 수 있는 능력이 제한된 텔레비전, 랩톱, 디스플레이 및 모바일 디바이스를 의미할 수 있다.
일부 소비자 대면(consumer-facing) 애플리케이션 시나리오에서, 몰입형 미디어용 프레젠테이션 디바이스(presentation device)(즉, 몰입형 미디어 지원 디바이스)는 특히 디바이스가 실제 세계에 대한 인간의 이해 및 상호작용에 더 근접한 프레젠테이션을 생성할 수 있도록 몰입형 미디어에 의해 구체화되는 특정 정보를 활용하는 능력을 갖춘, 즉, 그렇게 하기 위해 레거시 디바이스의 능력을 넘어선 소비자 대면 하드웨어 디바이스이다. 레거시 디바이스는 레거시 미디어만 제시하도록 능력이 제한되는 반면 몰입형 미디어 디바이스는 그러한 제한을 받지 않는다.
지난 10년 동안, 머리 장착형(head-mounted) 디스플레이, 증강 현실(augmented-reality) 안경, 핸드헬드(hand-held) 제어기, 햅틱 장갑 및 게임 콘솔(game console)을 포함한, 다수의 몰입형 미디어 지원 디바이스가 소비자 시장에 소개되었다. 마찬가지로, 홀로그램 디스플레이 및 기타 형태의 볼류메트릭 디스플레이(volumetric display)가 향후 10년 이내에 등장할 조짐을 보인다. 이러한 디바이스의 즉각적인 또는 임박한 가용성에도 불구하고 상용 네트워크를 통한 몰입형 미디어의 배포를 위한 일관된 종단 간 생태계는 여러 가지 이유로 실현되지 못했다.
그 이유 중 하나는 상용 네트워크를 통한, 현재의 대규모 미디어의 배포와 관련된 두 가지 주요 사용 사례를 다룰 수 있는 몰입형 미디어에 대한 단일 표준 표현이 부족하기 때문이다: 1) 라이브 액션 이벤트에 대한 실시간 배포, 즉 콘텐츠가 실시간 또는 거의 실시간으로 생성되어 클라이언트 종단점에 배포되는 경우, 및 2) 콘텐츠를 실시간으로 배포할 필요가 없는 비실시간 배포, 즉 콘텐츠가 물리적으로 캡처 또는 생성되고 있기 때문. 각각 이 두 사용 사례는 오늘날 존재하는 배포의 방송 포맷과 주문형(on-demand) 포맷에 비교될 수 있다.
실시간 배포를 위해, 콘텐츠는 하나 이상의 카메라(들)에 의해 캡처되거나 컴퓨터 생성 기술을 사용하여 생성될 수 있다. 일부 예에서, 카메라(들)에 의해 캡처된 콘텐츠는 본 명세서에서 자연 콘텐츠로 지칭되는 반면, 컴퓨터 생성 기술을 사용하여 생성된 콘텐츠는 본 명세서에서 합성 콘텐츠로 지칭된다. 합성 콘텐츠를 표현하는 미디어 포맷은 3D 모델링, 시각 효과 및 CAD/CAM 산업에서 사용되는 포맷일 수 있고 메시(mesh), 텍스처(texture), 포인트 클라우드(point cloud), 구조화된 볼륨(structured volume), 무정형 볼륨(amorphous volume)(예: 불, 연기 및 안개), 셰이더, 절차적으로 생성된 지오메트리, 재질, 조명, 가상 카메라 해상도(virtual camera definition) 및 애니메이션과 같은 객체 포맷 및 도구를 포함할 수 있다. 합성 콘텐츠는 컴퓨터로 생성되지만, 합성 미디어 포맷은 자연 콘텐츠와 합성 콘텐츠 모두에 사용할 수 있다. 다만, 자연 콘텐츠를 합성 미디어 포맷(예: 합성 표현)으로 변환하는 프로세스는 시간과 컴퓨팅 집약적인 프로세스일 수 있으므로 실시간 애플리케이션 및 사용 사례에 대해서는 비실용적일 수 있다.
자연 콘텐츠의 실시간 배포를 위해, 카메라로 캡처된 콘텐츠는 래스터 포맷(raster format)으로 배포될 수 있으며, 많은 레거시 디스플레이 디바이스가 마찬가지로 래스터 포맷을 표시하도록 설계되었기 때문에 레거시 디스플레이 디바이스에 적합하다. 즉, 레거시 디스플레이가 래스터 포맷을 표시하도록 동질적으로 설계된 것을 고려하면, 래스터 포맷의 배포는 따라서 래스터 포맷만 표시할 수 있는 디스플레이에 최적으로 적합하다.
그러나 몰입형 미디어 지원 디스플레이는 반드시 래스터 기반 형식의 디스플레이로 제한되지는 않는다. 또한 일부 몰입형 미디어 지원 디스플레이는 래스터 기반 포맷으로만 사용할 수 있는 미디어를 제시할 수 없다. 몰입형 미디어의 배포를 위한 일관된 종단 간 생태계가 아직 없는 다른 중요한 이유는 래스터 기반 포맷이 아닌 다른 포맷을 기반으로 몰입형 경험을 생성하도록 최적화된 디스플레이의 가용성이다.
다수의 상이한 몰입형 미디어 디바이스를 위한 일관된 배포 시스템을 생성하는 것의 또 다른 문제는 현재 및 신생 몰입형 미디어 지원 디바이스 자체가 상당히 다를 수 있다는 점이다. 예를 들어, 일부 몰입형 미디어 디바이스는, 예컨대 머리 장착형 디스플레이와 같이 한 번에 한 명의 사용자만 사용하도록 명시적으로 설계되어 있다. 일부 다른 몰입형 미디어 디바이스는 두 명 이상의 사용자가 동시에 사용할 수 있도록 설계된다. 예컨대, "루킹 글래스 팩토리(Looking Glass Factory) 8K 디스플레이"(이하, "렌티큘러 라이트 필드 디스플레이(lenticular light field display)")는 최대 12명의 사용자가 동시에 볼 수 있는 콘텐츠를 표시할 수 있으며, 여기서 각각의 사용자는 표시되는 콘텐츠에 대해 자신만의 고유한 관점(즉, 뷰(view))을 체험하고 있다.
일관된 배포 시스템의 개발을 더욱 복잡하게 만드는 것은 각각의 디스플레이가 생성할 수 있는 고유한 뷰의 수가 크게 다를 수 있다는 점이다. 대부분의 경우, 레거시 디스플레이는 콘텐츠의 단일 뷰만 생성할 수 있다. 반면, 렌티큘러 라이트 필드 디스플레이는 각각의 사용자가 동일한 시각적 장면의 고유한 뷰를 경험하면서 여러 사용자를 지원할 수 있다. 동일한 장면의 여러 뷰를 생성하기 위해, 렌티큘러 라이트 필드 디스플레이는 디스플레이에 대한 입력으로서 동일한 장면의 45개의 고유한 뷰가 필요한 특정 볼류메트릭 뷰잉 절두체(volumetric viewing frustum)를 생성한다. 이것은 동일한 장면에 대한 45개의 약간 다른 고유한 래스터 표현이 캡처되어 이 하나의 특정 디스플레이에, 즉 뷰잉 절두체에 특정한 포맷으로 디스플레이에 배포되어야 한다는 것을 의미한다. 대조적으로 레거시 디스플레이의 뷰잉 절두체는 단일 2차원 평면으로 제한되므로, 디스플레이를 경험하고 있는 동시 뷰어(view)의 수에 관계없이 디스플레이의 뷰 절두체를 통해 콘텐츠에 대한 하나 이상의 뷰잉 관점(viewing perspective)을 제시할 방법이 없다.
일반적으로, 몰입형 미디어 디스플레이는 모든 디스플레이의 다음과 같은 특성에 따라 크게 달라질 수 있다: 뷰잉 절두체의 크기와 부피, 동시에 지원되는 뷰어의 수, 점 기반, 광선 기반 또는 파동 기반 기술일 수 있는 뷰잉 절두체를 채우는 데 사용되는 광학 기술, 뷰잉 절두체를 점유하는 빛의 단위(점, 광선 또는 파동)의 밀도, 컴퓨팅 능력 및 컴퓨팅 유형(CPU 또는 GPU)의 가용성, 전력원 및 가용성(배터리 또는 와이어), 로컬 스토리지 또는 캐시의 용량, 클라우드 기반 컴퓨팅 및 스토리지와 같은 보조 자원에 대한 액세스. 이러한 특성은 몰입형 미디어 디스플레이의 이질성의 한 원인이 되며, 이는 레거시 디스플레이의 동질성과는 대조적으로, 레거시 및 몰입형의 디스플레이 유형 둘 다를 포함한, 모두를 지원할 수 있는 단일 배포 시스템의 개발을 복잡하게 만든다.
개시된 주제는 단일 네트워크의 맥락 내에서 클라이언트 종단점으로서 레거시 및 몰입형 미디어 디스플레이를 모두 지원할 수 있는 네트워크 기반 미디어 배포 시스템의 개발을 다룬다. 구체적으로, 해당 클라이언트 종단점 디바이스에서 현재 실행 중인 애플리케이션을 포함한, 클라이언트 종단점 디바이스의 특정 특성에 적합한 포맷으로 입력 몰입형 미디어 소스를 적응시키는 메커니즘이 여기에서 제시된다. 입력 몰입형 미디어 소스를 적응시키는 이러한 메커니즘은 입력 몰입형 미디어의 특성을 클라이언트 디바이스에서 실행 중인 애플리케이션을 포함하여, 타깃 종단점 클라이언트 디바이스의 특성과 조화시킨 다음, 입력 몰입형 미디어를 타깃 종단점과 그 애플리케이션에 적합한 포맷으로 적응시킨다. 또한, 적응 프로세스는 클라이언트 종단점에 의해 요구되는 추가 뷰를 생성하기 위해 입력 미디어로부터 추가 뷰, 예컨대 새로운 뷰를 보간하는 것을 포함할 수 있다. 이러한 보간은 신경망 프로세스의 도움으로 수행될 수 있다.
개시된 주제의 나머지 부분은 일반성을 잃지 않으면서, 입력 몰입형 미디어 소스를 특정 종단점 클라이언트 디바이스에 적응시키는 프로세스가 특정 클라이언트 종단점 디바이스에서 실행 중인 특정 애플리케이션에 동일한 입력 몰입형 미디어 소스를 적응시키는 프로세스와 동일하거나 유사하다고 가정한다는 점에 유의한다. 즉, 종단점 디바이스의 특성에 맞게 입력 미디어 소스를 적응시키는 문제는 특정 입력 미디어 소스를 특정 애플리케이션의 특성에 맞게 적응시키는 문제와 동일한 복잡도를 갖는다.
레거시 미디어에 의해 지원되는 레거시 디바이스는 레거시 미디어의 표준 기반 표현을 생성하는 레거시 미디어 콘텐츠 공급자와, 레거시 디바이스를 표준 레거시 콘텐츠 소스에 연결하기 위한 네트워크 인프라를 제공하는 상용 네트워크 서비스 공급자의 생태계에 의해 지원되기 때문에 마찬가지로 광범위한 소비자 채택을 달성했다. 네트워크를 통해 레거시 미디어를 배포는 역할을 넘어, 상용 네트워크 서비스 공급자는 또한 콘텐츠 배포 네트워크들(content distribution networks, CDNs)의 레거시 콘텐츠에 대한 액세스와 레거시 클라이언트 디바이스의 페어링을 용이하게 할 수 있다. 적절한 형식의 콘텐츠에 대한 액세스와 페어링되면, 레거시 클라이언트 디바이스는 최종 사용자에게 프레젠테이션하기 위해 콘텐츠 서버에서 디바이스로 레거시 콘텐츠를 요청하거나 끌어올 수 있다(pull: 풀). 그럼에도 불구하고 네트워크 서버가 적절한 미디어를 적절한 클라이언트에 푸시하는(push) 아키텍처는 전체 아키텍처 및 솔루션 설계에 추가적인 복잡도를 초래하지 않고 동등하게 관련이 있다.
본 개시의 일부 측면에 따르면, 이종 클라이언트를 지원하는 미디어 배포 네트워크는 입력 미디어 포맷에서 특정 타깃 포맷으로 적응되는 자산 중 일부가 유사한 디스플레이 타깃(클라이언트 디바이스)의 세트 전반에 걸쳐 재사용될 수 있다는 사실을 활용할 수 있다. 예를 들어, 타깃 디스플레이에 적합한 형식으로 일단 변환된 일부 자산은 유사한 적응 요구사항을 가진 그러한 여러 디스플레이에서 재사용될 수 있다. 일부 예에서, 미디어 배포 네트워크는 캐싱 메커니즘을 채용하여 적응된 자산을 비교적 변경할 수 없는 스토리지에 저장할 수 있다.
본 개시의 일 측면에 따르면, 몰입형 미디어는 장면 설명으로도 알려진 장면 그래프에 의해 설명되는 "장면"으로 체계화될 수 있다. 장면 그래프의 범위는 프레젠테이션의 일부인 특정 설정을 포함하는 몰입형 자산의 시각적, 오디오 및 다른 형태의 몰입형 자산을 설명하는 것으로, 예를 들어 영화와 같은 프레젠테이션의 일부인 빌딩 안의 특정 장소에서 발생하는 사건 및 배우를 설명하는 것이다. 단일 프레젠테이션을 포함하는 모든 장면의 목록은 장면의 매니페스트(manifest)로 공식화될 수 있다.
일부 예에서, 그러한 콘텐츠를 배포해야 하기 전에 준비되는 콘텐츠에 대해, 전체 프레젠테이션에 사용될 모든 자산 및 각 자산이 프레젠테이션 내의 다양한 장면에서 사용되는 빈도를 식별할 수 있도록 "자료 명세서(bill of materials)"가 생성될 수 있다. 미디어 배포 네트워크는 특정 프레젠테이션에 대한 자산 요구사항을 충족시키는 데 사용될 수 있는 캐싱된 자원의 존재에 대한 지식을 갖도록 구현될 수 있다.
본 개시의 일부 측면은 미디어 배포 네트워크(예: 미디어 배포 네트워크를 클라이언트 디바이스와 인터페이싱하는 미디어 배포 네트워크 내의 서버 디바이스)와 클라이언트 디바이스 사이에 사용될 수 있는 양방향 프로토콜을 제공할 수 있다. 일부 예에서 양방향 프로토콜은 몰입형 미디어를 배포하는 미디어 배포 네트워크에서 사용될 수 있다. 양방향 프로토콜은 다양한 포맷의 자산 유형을 필요로 하는 다양한 클라이언트 디바이스의 다양성을 지원할 수 있다. 일부 예에서, 양방향 프로토콜은 특정 클라이언트 디바이스에 의한 사용을 위해 이전에 이미 적응된 자산의 재사용을 가능하게 할 수 있다.
본 발명에서, 일반성의 잃지 않으면서, 입력 몰입형 미디어 소스를 특정 종단점 클라이언트 디바이스에 적응시키는 프로세스는 동일한 입력 몰입형 미디어 소스를 특정 종단점 클라이언트 디바이스에서 실행 중인 특정 애플리케이션에 적응시키는 프로세스와 동일하거나 유사하다는 점에 유의한다. 종단점 디바이스의 특성에 맞게 입력 미디어 소스를 적응시키는 기술은 특정 애플리케이션의 특성에 맞게 입력 미디어 소스를 적응시키는 기술과 거의 동일할 수 있다.
본 개시의 일 측면에 따르면, 레거시 미디어에 의해 지원되는 레거시 디바이스는 레거시 미디어의 표준 기반 표현을 생성하는 레거시 미디어 콘텐츠 공급자 및 레거시 디바이스를 표준 레거시 콘텐츠의 소스에 연결하는 네트워크 인프라를 제공하는 상용 네트워크 서비스 공급자의 에코시스템에 의해 마찬가지로 지원되기 때문에 광범위한 소비자 채택을 달성했다. 네트워크를 통해 레거시 미디어를 배포는 역할을 넘어, 상용 네트워크 서비스 공급자는 또한 콘텐츠 배포 네트워크들(CDNs)의 레거시 콘텐츠에 대한 액세스와 레거시 클라이언트 디바이스의 페어링을 용이하게 할 수 있다. 적절한 형식의 콘텐츠에 대한 액세스와 페어링되면, 레거시 클라이언트 디바이스는 최종 사용자에게 프레젠테이션하기 위해 콘텐츠 서버에서 디바이스로 레거시 콘텐츠를 요청하거나 끌어올 수 있다(풀). 그럼에도 불구하고, 미디어 배포 네트워크는 네트워크 서버가 적절한 미디어를 적절한 클라이언트에 푸시하는 아키텍처를 이용할 수 있다.
본 개시의 일부 측면은 미디어 배포 네트워크를 클라이언트 디바이스와 인터페이싱하기 위한 인터페이스 디바이스(서버 디바이스라고도 함)를 포함하는 미디어 배포 네트워크를 제공한다. 서버 디바이스는 클라이언트 디바이스와의 통신을 위해 양방향 통신 프로토콜(양방향 프로토콜이라고도 함)을 사용할 수 있으며, 클라이언트 디바이스의 고유성으로부터, 또는 클라이언트 디바이스에서 실행 중인 애플리케이션으로부터 비롯되는 요구사항을 매칭시키기 위해 미디어의 적응을 용이하게 할 수 있다. 서버 디바이스는 또한 양방향 프로토콜을 사용하여 새로 적응되었거나 이전에 적응되고 캐싱된 자산을 특정 클라이언트 디바이스에 스트리밍할 수 있다. 일부 예에서, 서버 디바이스는 양방향 프로토콜을 사용하여 클라이언트 디바이스가 서버 디바이스로부터 특정 지원을 요청하는 능력을 지원하도록, 예를 들어 클라이언트 디바이스가 자산을 제공하기 위한 준비로 자산의 렌더링을 보조하도록 할 수 있다.
본 명세서에서는 다양한 실시예에 따른 방법, 장치(시스템), 및 컴퓨터로 판독 가능한 매체의 흐름도 예시 및/또는 블록도를 참조하여 측면들을 설명한다. 흐름도 예시 및/또는 블록도의 각각의 블록, 및 흐름도 예시 및/또는 블록도의 블록 조합은 컴퓨터로 판독 가능한 프로그램 명령어에 의해 구현될 수 있음을 이해할 것이다.
다음의 설명된 예시적인 실시예는 클라이언트 디바이스를 위한 비디오, 오디오, 지오메트릭 (3D) 객체, 햅틱, 연관된 메타데이터, 또는 기타 콘텐츠를 포함한 미디어를 배포하는 시스템 및 네트워크에 대한 아키텍처, 구조 및 구성요소에 관한 것이다. 특정 실시예는 미디어 콘텐츠를 이종 몰입형 및 상호작용 클라이언트 디바이스에 배포하기 위한 지시된 시스템, 구조 및 아키텍처이다..
도 1은 시간 지정 레거시 미디어 배포의 종단 간 프로세스(100)의 도면을 보여준다. 도 1에서, 시간 지정 시청각 콘텐츠(audio-visual content)는 카메라 또는 마이크로폰(101A)에 의해 캡처되거나 컴퓨터(101B)에 의해 생성되어, 준비 모듈(103)에 입력되는 2D 이미지 및 관련 오디오의 시퀀스(102)를 생성한다. 준비 모듈(103)의 출력은 컨버터 모듈(104)에 의해, 예컨대, 주문형 미디어를 위한 표준 메자닌 포맷(standard Mezzanine format)으로 변환될 준비가 되어 있는 마스터 포맷으로 지칭되거나, 예컨대, 라이브 이벤트를 위한 표준 기여 포맷(standard contribution format)으로 지칭되는 편집된 콘텐츠이다. 일례에서, 미디어는 상용 네트워크 서비스 공급자에 의해 수집되고, 적응 모듈(105)은 미디어를 표준 배포 포맷으로 패키징되는 다양한 비트레이트, 시간 해상도(프레임 레이트) 또는 공간 해상도(프레임 크기)로 패키징한다. 최종 적응 결과(resulting adaptation)는 다양한 클라이언트(108A)∼(108C)가 미디어를 인출하여 최종 사용자에게 제시하기 위해 풀 요청(pull-request)(107A)∼(107C)하는 콘텐츠 배포 네트워크(content distribution network, CDN)(106)에 저장된다. 마스터 포맷은 (101A) 또는 (101B) 둘 다로부터의 미디어 하이브리드로 구성될 수 있으며, (101A)의 형식은 예컨대, 라이브 스포츠 이벤트로부터 획득되는 미디어와 같이 실시간으로 획득될 있다는 점에 유의하는 것이 중요하다. 또한, 클라이언트(108A)∼(108C)는 클라이언트의 구성 및/또는 현재 네트워크 조건에 가장 적합한 특정 적응을 선택할 책임이 있지만, 네트워크 서버(도 1에 도시되지 않음)는 적절한 콘텐츠를 결정하고 후속적으로 클라이언트(108A)∼(108C)에 푸시하는 것도 마찬가지로 가능하다.
도 2는 일부 예에서 예컨대, 비디오, 오디오 및 지원 메타데이터(자막에 사용되는 것과 같은 시간 지정 텍스트 포함)와 같은 레거시 시간 지정 미디어의 배포에 사용되는 표준 미디어 포맷(200)의 도면을 보여준다. 도 1의 CDN(106)에 의해 언급된 바와 같이, 미디어는 도 2의 CDN(201A)∼(201C)과 같은 CDN에 표준 기반 배포 포맷으로 저장된다. 표준 기반 포맷은 MPD(202)로 표시되고, 이는 기간(203A) 및 기간(203B) 등과 같은 기간을 포함하는 다수의 섹션으로 구성되며, 클록에 대응하는 시작 및 종료 시간이 있다. 일례에서, 각각의 기간(예: (203A) (203B))은 하나 이상의 적응 세트(204A)∼(204F)를 가리킨다. (204A)∼(204F)의 적응 세트 각각은 일반적으로 단일 유형의 미디어, 예컨대 비디오, 오디오 또는 시간 지정 텍스트에 사용된다. 일부 예에서, 임의의 주어진 기간(예: (203A))에 대해, 다수의 적응 세트(예: (204A)∼(204C))가 제공될 수 있는데, 예컨대, 비디오에 대해 하나, 다양한 언어로의 번역에 사용되는 것과 같은 오디오에 대해 다수가 제공될 수 있다. (204A)∼(204F)의 적응 세트 각각은 미디어의 비트레이트, 프레임 레이트 및 프레임 해상도(비디오용)에 관한 정보를 제공하는 하나 이상의 표현(205)을 가리킨다. 다수의 표현(205)이 예를 들어 초고화질, 고화질 또는 표준 화질 비디오 각각에 대한 표현(205)에 대한 액세스를 제공하는 데 사용될 수 있다. 각각의 표현(205)은 미디어가 클라이언트에 의한 인출(도 1의 (108A)∼(108C)로 도시됨) 또는 네트워크 미디어 서버(도 1에 도시되지 않음)에 의한 배포(푸시 기반 아키텍처)를 위해 실제로 저장되어 있는 하나 이상의 세그먼트 파일(206)을 가리킨다.
도 3은 일례에서 시간 지정 이종 몰입형 미디어에 대한 스트리밍 가능 포맷(300)의 표현을 보여주고; 도 4는 일례에서 시간 미지정 이종 몰입형 미디어에 대한 스트리밍 가능 포맷(400)의 표현을 보여준다. 도 3의 사례에서, 도 3는 시간 지정 미디어에 대한 장면(301)을 가리킨다. 도 4의 사례에서, 도 4는 시간 미지정 미디어에 대한 장면(401)을 가리킨다. 두 사례 모두, 장면은 다양한 장면 표현 또는 장면 설명으로 구현될 수 있다.
예를 들어, 일부 몰입형 미디어 설계에서, 장면은 장면 그래프에 의해 또는 다중 평면 이미지(multi-plane image, MPI) 또는 다중 구형 이미지(multi-spherical image, MSI)로 구현될 수 있다. MPI 및 MSI 기술은 둘다 자연 콘텐츠, 즉 하나 이상의 카메라로부터 동시에 캡처된 현실 세계의 이미지에 대한 디스플레이에 구애받지 않는(display-agnostic) 장면 표현을 만드는 데 도움이 되는 기술의 예이다. 반면에 장면 그래프 기술은 합성 표현의 형태로 자연 이미지와 컴퓨터 생성 이미지를 모두 표현하는 데 사용될 수 있지만, 이러한 표현은 콘텐츠가 하나 이상의 카메라에 의해 자연 장면으로서 캡처되는 경우 생성하는 데 특히 계산 집약적이다. 즉, 자연적으로 캡처된 콘텐츠의 장면 그래프 표현은 생성하는 데 시간과 계산 집약적이며, 이후에 타깃 몰입형 클라이언트 디스플레이의 뷰잉 절두체를 채우기에 충분하고 적절한 수의 뷰를 보간하는 데 사용할 수 있는 합성 표현을 생성하기 위해 사진 측량법(photogrammetry)이나 딥 러닝 또는 둘 모두의 기술을 사용한 자연 이미지의 복잡 분석을 필요로 한다. 결과적으로 이러한 합성 표현은 실시간 배포가 필요한 사용 사례를 고려하기 위해 실제로 실시간으로 생성될 수 없기 때문에, 자연 콘텐츠를 표현하기 위한 후보로 고려하기에는 현재 비실용적이다. 일부 예에서 컴퓨터 생성 이미지에 대한 최상의 후보 표현은, 컴퓨터 생성 이미지가 3D 모델링 프로세스 및 도구를 사용하여 생성되므로 합성 모델과 함께 장면 그래프를 사용하는 것이다.
자연 및 컴퓨터 생성 콘텐츠 모두의 최적 표현에서의 이러한 이분법은 자연적으로 캡처된 콘텐츠에 대한 최적의 인제스트 포맷이 컴퓨터 생성 콘텐츠 또는 실시간 배포 애플리케이션에 필수적이지 않은 자연 콘텐츠에 대한 최적의 인제스트 형식과 다르다는 것을 시사한다. 따라서, 개시된 주제는 시각적 몰입형 미디어가 자연적으로 생성되든 컴퓨터에 의해 생성되든 간에, 시각적 몰입형 미디어에 대한 다수의 인제스트 포맷을 지원하기에 충분히 강인함을 목표로 한다.
다음은 컴퓨터 생성 기술 을 사용하여 생성된 시각적 몰입형 미디어 또는 자연 장면의 대응하는 합성 표현, 즉 실시간 배포 애플리케이션에 필수적이지 않은 것을 생성하기 위해 딥 러닝이나 사진 측량 기술을 채용하는 자연적으로 캡처된 콘텐츠를 표현하기에 적합한 포맷으로서 장면 그래프를 구현하는 예시적인 기술이다.
1. OTOY에 의한 ORBX®
OTOY에 의한 ORBX는 광선 추적 가능, 레거시(프레임 기반), 볼류메트릭 및 기타 유형의 합성 또는 벡터 기반 시각적 포맷을 포함한, 시간 지정 또는 시간 미지정의 임의의 유형의 시각적 미디어를 지원할 수 있는 몇 가지 장면 그래프 기술 중 하나이다. 일 측면에 따르면, ORBX는 메시, 포인트 클라우드 및 텍스처에 대한 무료 입수 가능한 및/또는 오픈 소스 포맷에 대한 기본 지원(native support)을 제공하기 때문에 ORBX는 다른 장면 그래프와 다르다. ORBX는 장면 그래프에서 작동하는 다수의 벤더의 기술 간의 교환을 용이하게 하는 것을 목표로 의도적으로 설계된 장면 그래프이다. 또한, ORBX는 풍부한 자료 시스템, 개방형 셰이더 언어 지원, 강력한 카메라 시스템 및 Lua 스크립트 지원을 제공한다. ORBX는 또한 몰입형 디지털 경험 연합(immersive digital experiences alliance, IDEA)에서 로열티 없는 조건으로 라이선스를 위해 공개한 몰입형 기술 미디어 포맷의 기반이기도 하다. 미디어의 실시간 배포 맥락에서, 자연 장면의 ORBX 표현을 생성하고 배포하는 능력은 카메라 캡처 데이터의 복잡한 분석과 동일한 데이터의 합성 표현으로의 합성을 수행하는 컴퓨팅 자원의 가용성의 함수이다. 현재까지 실시간 배포를 위한 충분한 컴퓨팅 가용성은 실용적이지 않지만 그럼에도 불구하고 불가능하지는 않는다.
2. Pixar에 의한 보편적 장면 묘사
Pixar의 보편적 장면 묘사(universal scene description, USD)는 시각 효과(visual effects, VFX) 및 전문 콘텐츠 제작 커뮤니티에서 사용될 다른 장면 그래프이다. USD는 Nvidia의 GPU로 3D 모델 생성 및 렌더링을 위한 개발자용 도구 세트인 Nvidia의 Omniverse 플랫폼에 통합된다. USD의 서브세트는 Apple과 Pixar에 의해 USDZ로 공개되었다. USDZ는 Apple의 ARKit에서 지원된다.
3. Khronos에 의한 glTF2.0
glTF2.0은 Khronos 3D Group에 의해 작성된 그래픽 언어 송신 포맷 사양의 최신 버전이다. 이 포맷은 일반적으로 "png" 및 "jpeg" 이미지 포맷을 포함하여, 장면에서 정적 (시간 미지정) 객체를 지원할 수 있는 간단한 장면 그래프 포맷을 지원한다. glTF2.0은 glTF 프리미티브를 사용하여 설명된 기본 형상(예: 지오메트릭 객체)의 변환, 회전 및 크기조정의 지원을 포함하여, 간단한 애니메이션을 지원한다. glTF2.0은 시간 지정 미디어를 지원하지 않으므로 비디오나 오디오를 지원하지 않는다.
몰입형 시각적 미디어의 상기한 장면 표현은 단지 예로 제공되며, 클라이언트 종단점 디바이스의 특정 특성에 적합한 포맷으로 입력 몰입형 미디어 소스를 적응시키는 프로세스를 지정하는 능력에 있어서 개시된 주제를 한정하지 않는다는 점에 유의한다.
더욱이, 위의 예시적인 미디어 표현 중 임의의 것 또는 모두는 딥 러닝 기술을 현재 채용하거나 채용할 수 있어 절두체의 특정 치수에 기초하여 특정 디스플레이의 뷰잉 절두체를 채우기 위해 특정 뷰의 선택을 가능하게 하거나 용이하게 하는 신경망 모델을 훈련하고 생성한다. 특정 디스플레이의 뷰잉 절두체에 대해 선택된 뷰는 예컨대, MSI 또는 MPI 기술로부터 장면 표현에 명시적으로 제공되는 기존 뷰에서 보간되거나, 특정 가상 카메라 위치, 필터 또는 이러한 렌더 엔진에 대한 가상 카메라 설명에 기초한 렌더 엔진으로부터 직접 렌더링될 수 있다.
따라서, 개시된 주제는 자연적으로 캡처되거나(예: 하나 이상의 카메라로) 컴퓨터 생성 기술을 사용하여 생성되는 미디어의 실시간 또는 "주문형(예: 비실시간)" 배포 모두에 대한 요건을 충분히 충족시킬 수 있는 비교적 작지만 잘 알려진 몰입형 미디어 인제스트 포맷의 세트가 있다는 것을 고려할 만큼 충분히 강력하다.
모바일 네트워크용 5G, 및 고정 네트워크용 광섬유 케이블과 같은 진보한 네트워크 기술이 전개됨에 따라, 신경망 모델 또는 네트워크 기반 렌더 엔진을 사용하여 몰입형 미디어 인제스트 포맷으로부터 뷰의 보간이 더욱 용이해진다. 즉, 이러한 진보한 네트워크 기술은 이러한 진보한 네트워크 인프라가 점점 더 많은 양의 시각 정보의 전송 및 전달을 지원할 수 있기 때문에 상용 네트워크의 용량과 능력을 향상시킨다. 다중 액세스 에지 컴퓨팅(multi-access edge computing, MEC), 소프트웨어 정의 네트워크(software defined network, SDN) 및 네트워크 기능 가상화(network functions virtualization, NFV)와 같은 네트워크 인프라 관리 기술은 상용 네트워크 서비스 공급자가 그들의 네트워크 인프라를 유연하게 구성하여 특정 네트워크에 대한 수요 변화에 적응할 수 있게 한다, 예컨대 네트워크 처리량, 네트워크 속도, 왕복 대기시간(roundtrip latency) 및 컴퓨팅 자원에 대한 수요의 동적인 증가 또는 감소에 대응할 수 있게 한다. 또한 동적 네트워크 요구사항에 적응하는 이 내재된 기능은 마찬가지로 이종 클라이언트 종단점을 위한 잠재적으로 이종 시각적 미디어 포맷이 있는 다양한 몰입형 미디어 애플리케이션을 지원하기 위해 몰입형 미디어 인제스트 포맷을 적합한 배포 포맷으로 적응시키는 네트워크의 능력을 용이하게 한다.
몰입형 미디어 애플리케이션 자체는 또한 게임 상태에서 실시간 업데이트에 응답하기 위해 상당히 낮은 네트워크 대기시간을 필요로 하는 게이밍 애플리케이션, 네트워크의 업링크 및 업링크 부분 모두에 대한 대칭 처리량 요구사항을 갖는 텔레프레즌스 애플리케이션, 및 데이터를 소비하는 클라이언트 종단점 디스플레이의 유형에 의존하는 다운링크 자원에 대한 수요가 증가할 수 있는 수동 뷰잉 애플리케이션을 포함하는 네트워크 자원에 대한 다양한 요구 사항을 가질 수 있다. 일반적으로 모든 소비자 대면 애플리케이션은 스토리지, 컴퓨팅 및 전원에 대한 다양한 온보드(onboard) 클라이언트 능력과 마찬가지로 특정 미디어 표현에 대한 다양한 요구사항을 갖춘 다양한 클라이언트 종단점에서 지원될 수 있다.
따라서, 개시된 주제는 충분히 장비된 네트워크, 즉 최신 네트워크의 특성 중 일부 또는 전부를 채용하는 네트워크가 다음에 지정된 특징에 따라 복수의 레거시 및 몰입형 미디어 지원 디바이스를 동시에 지원할 수 있게 한다::
1. 미디어의 배포를 위한 실시간 및 주문형 사용 사례 모두에 실용적인 미디어 미이어 인제스트 포맷을 활용하기 위한 유연성을 제공한다.
2. 레거시 및 몰입형 미디어 지원 클라이언트 종단점 모두에 대해 자연 콘텐츠 및 컴퓨터 생성 콘텐츠를 모두 지원하기 위한 유연성을 제공한다.
3. 시간 지정 미디어와 시간 지정 미디어를 모두 지원한다.
4. 애플리케이션의 요구사항에 기초할 뿐만 아니라 클라이언트 종단점의 특징 및 능력에 기초하여 소스 미디어 인제스트 포맷을 적합한 배포 포맷으로 동적으로 적응시키는 프로세스를 제공한다.
5. 배포 포맷이 IP 기반 네트워크를 통해 스트리밍 가능한 것을 확인한다.
6. 네트워크가 레거시 및 몰입형 미디어 지원 디바이스를 모두 포함할 수 있는 복수의 이종 클라이언트 종단점에 동시에 서비스를 제공할 수 있게 한다.
7. 장면 경계를 따라 배포 미디어의 체계화를 용이하게 하는 예시적인 미디어 표현 프레임워크를 제공한다.
개시된 주제에 의해 가능해진 개선의 종단 간 실시예는 도 3 내지 도 15의 상세한 설명에 기술된 처리 및 구성요소에 따라 달성된다.
도 3 및 도 4는 각각 특정 클라이언트 종단점의 능력과 매칭되도록 인제스트 소스 포맷으로부터 적응될 수 있는 예시적인 포괄 배포 포맷(encompassing distribution format )을 채용한다.
전술한 바와 같이, 도 3에 도시된 미디어는 시간이 지정되어 있고 도 4에 도시된 미디어는 시간이 지정되어 있지 않다. 특정 포괄 포맷은 각 계층이 미디어 표현에 기여하는 핵심적인 정보의 양에 따라 각각이 계층화될 수 있는 다양한 미디어 속성을 수용할 수 있는 구조로 충분히 강건하다. 계층화 프로세스는 예를 들어 프로그레시브 JPEG 및 확장 가능한 비디오 아키텍처(예: ISO/IEC 14496-10 Scalable Advanced Video Coding에 지정된 것)에 적용될 수 있음에 유의한다.
일 측면에 따르면, 포괄 미디어 포맷에 따라 스트리밍되는 미디어는 레거시 시각 및 오디오 미디어에 한정되지 않고, 시각, 소리, 미각, 촉각 및 후각에 대한 인간의 감각을 자극하기 위해 기계와 상호작용하는 신호를 생성할 수 있는 모든 유형의 미디어 정보를 포함할 수 있다.
다른 측면에 따르면, 포괄 미디어 포맷에 따라 스트리밍되는 미디어는 시간 지정 미디어 또는 시간 지정 미디어 둘 다, 또는 둘의 혼합일 수 있다.
또 다른 측면에 따르면, 포괄 미디어 포맷은 기본 계층 및 강화 계층 아키텍처를 사용하여 미디어 객체에 대한 계층화된 표현을 가능하게 함으로써 스트리밍 가능하다. 한 예에서, 별개의 기본 계층 및 강화 계층이 각각의 장면에서 미디어 객체에 대한 다중 해상도(multi-resolution) 또는 다중 테셀레이션(multi-tesselation) 분석 기술을 적용하여 계산된다. 이는 ISO/IEC 10918-1(JPEG) 및 ISO/IEC 15444-1(JPEG2000)에 지정된 점진적으로 렌더링되는 이미지 포맷과 유사하지만, 래스터 기반 시각적 포맷에 한정되지 않는다. 일례에서, 지오메트릭 객체에 대한 점진적 표현은 웨이블릿 분석을 사용하여 계산된 객체의 다중 해상도 표현일 수 있다.
미디어 포맷의 계층화된 표현의 다른 예에서, 강화 계층은 기본 계층에 의해 표현되는 시각적 객체의 표면의 재료 속성을 개선하는 것(refining)과 같이, 기본 계층에 다른 속성을 적용한다. 또 다른 예에서, 속성은 표면을 매끄러운 텍스처에서 다공성 텍스처로 변경하거나 무광택 표면에서 광택 표면으로 변경하는 것과 같이 기본 계층 객체 표면의 텍스처를 개선할 수 있다.
계층화된 표현의 또 다른 예에서, 장면에서 하나 이상의 시각적 객체의 표면은 램버시안(Lambertian)에서 광선 추적 가능한 것으로 변경될 수 있다.
계층화된 표현의 또 다른 예에서, 네트워크는 기본 계층 표현을 클라이언트에 배포하여 클라이언트가 기본 표현의 해상도 또는 다른 특성을 개선하기 위해 추가적인 강화 계층의 전송을 기다리는 동안 클라이언트가 장면의 명목상 프레젠테이션(nominal presentation)을 생성할 수 있도록 할 것이다.
또 다른 측면에 따르면, 강화 계층의 속성 또는 개선 정보의 해상도는 오늘날 기존의 MPEG 비디오 및 JPEG 이미지 표준에서와 같이 기본 계층의 객체의 해상도와 명시적으로 결합되지 않는다.
또 다른 측면에 따르면, 포괄 미디어 포맷은 프레젠테이션 디바이스 또는 기계에 의해 제시되거나 작동될 수 있는 임의의 유형의 정보 미디어를 지원함으로써, 이종 클라이언트 종단점에 대한 이종 미디어 포맷의 지원을 가능하게 한다. 미디어 포맷을 배포하는 네트워크의 한 실시예에서, 네트워크는 먼저 클라이언트의 능력을 결정하기 위해 클라이언트 종단점에 질의할 것이고, 클라이언트가 의미 있게 미디어 표현을 인제스팅할 수 없으면 네트워크는 클라이언트에 의해 지원되지 않는 속성의 계층을 제거하거나, 미디어를 현재 포맷에서 클라이언트 종단점에 적합한 형식으로 적응시킨다. 이러한 적응의 한 예에서 네트워크는 네트워크 기반 미디어 처리 프로토콜을 사용하여, 볼류메트릭 시각적 미디어 자산을 동일한 시각적 자산의 2D 표현으로 변환한다. 이러한 적응의 다른 예에서, 네트워크는 미디어를 적절한 형식으로 다시 포맷하거나 클라이언트 종단점에 필요한 뷰를 선택적으로 합성하기 위해 신경망 프로세스를 채용할 수 있다.
다른 측면에 따르면, 완전한 또는 부분적으로 완전한 몰입형 경험(라이브 스트리밍 이벤트, 게임 또는 주문형 자산의 재생)을 위한 매니페스트는 렌더링 및 게임 엔진이 프레젠테이션을 생성하기 위해 현재 인제스트할 수 있는 최소한의 정보인 장면으로 체계화된다. 매니페스트는 클라이언트에 의해 요청디는 몰입형 경험 전체에 대해 렌더링될 개별 장면 목록을 포함한다. 각각의 장면과 연관된 것은 장면 지오메트리의 스트리밍 가능한 버전에 대응하는 장면 내의 지오메트릭 객체의 하나 이상의 표현이다. 장면 표현의 한 실시예는 장면에 대한 지오메트릭 객체의 저해상도 버전을 말한다. 동일한 장면의 다른 실시예는 동일한 장면의 지오메트릭 객체에 추가 세부사항을 추가하거나 테셀레이션을 증가시키 위해 장면의 저해상도 표현을 위한 강화 레이어를 말한다. 전술한 바와 같이, 각각의 장면은 점진적인 방식으로 장면의 지오메트릭 객체의 세부사항을 증가시키기 위해 하나 이상의 강화 계층를 가질 수 있다.
다른 측면에 따르면, 장면 내에서 참조되는 미디어 객체의 각 계층은 자원이 네트워크 내에서 액세스될 수 있는 주소를 가리키는 토큰(예: URI)과 연관된다. 이러한 자원은 클라이언트가 콘텐츠를 인출할 수 있는 CDN과 유사합니다.
다른 측면에 따르면, 지오메트릭 객체의 표현을 위한 토큰은 네트워크 내의 위치 또는 클라이언트 내의 위치를 가리킬 수 있다. 즉, 클라이언트는 네트워크 기반 미디어 처리를 위해 네트워크에서 자원을 사용할 수 있음을 네트워크에 시그널링할 수 있다.
도 3은 일부 예에서 시간 지정 미디어에 대한 포괄 미디어 포맷의 실시예를 설명한다. 일부 예에서, 시간 지정 장면 매니페스트는 장면(장면 정보라고도 함)(301)을 포함한다. 장면(301)은 장면(301)을 포함하는 미디어 자산의 유형 및 처리 정보를 개별적으로 설명하는 구성요소(302)의 목록을 참조한다. 구성요소(302)는 기본 계층(304) 및 속성 강화 계층(305)을 더 참조하는 자산(303)을 참조한다.
도 4는 일부 예에서 시간 미지정 미디어에 대한 포괄 미디어 포맷의 실시예를 설명한다. 시간 미지정 장면 매니페스트는 장면(401)을 포함한다. 장면(장면 정보라고도 함)(401)은 클록에 따른 시작 및 종료 지속시간과 연관이 없다. 장면(401)은 장면(401)을 포함하는 미디어 자산의 유형 및 처리 정보를 개별적으로 설명하는 구성요소(402) 목록을 참조한다. 구성요소(402)는 기본 계층(404) 및 속성 강화 계층(405)을 더 참조하는 자산(403)(예: 시각적, 오디오 및 햅틱 자산)을 참조한다. 또한, 장면(401)은 시간이 지정되지 않은 미디어를 위한 다른 장면(411)을 참조한다. 장면(401)은 또한 일부 예에서 시간 지정 미디어 장면(407)을 참조할 수 있다.
도 5는 자연 콘텐츠로부터 인제스트 포맷을 합성하기 위한 프로세스(500)의 도면을 보여준다. 프로세스(500)는 콘텐츠 캡처를 위한 제1 서브프로세스 및 자연 이미지를 위한 인제스트 포맷 합성의 제2 서브프로세스를 포함한다.
도 5의 예에서, 제1 서브프로세스에서 카메라 유닛은 자연 이미지 콘텐츠(509)를 캡처하는 데 사용될 수 있다. 예를 들어, 카메라 유닛(501)은 사람이 있는 장면을 캡처하기 위해 단일 카메라 렌즈를 사용할 수 있다. 카메라 유닛(502)은 고리 모양의 물체 주위에 5개의 카메라 렌즈를 장착하여 5개의 발산 시야를 갖는 장면을 촬영할 수 있다. (502)의 배치는 VR 애플리케이션을 위한 전방위 콘텐츠를 캡처하기 위한 예시적인 배치이다. 카메라 유닛(503)은 구의 내경 부분에 7개의 카메라 렌즈를 장착하여 7개의 수렴 시야를 갖는 장면을 촬영한다. (503)의 배치는 라이트 필드 또는 홀로그램 몰입형 디스플레이를 위한 라이트 필드를 캡처하기 위한 예시적인 배치이다.
도 5의 예에서, 제2 서브프로세스에서는 자연 이미지 콘텐츠(509)가 합성된다. 예를 들어, 자연 이미지 콘텐츠(509)는 합성 모듈(504)에 대한 입력으로서 제공되며, 합성 모듈(504)은 예를 들어 캡처 신경망 모델(508)를 생성하기 위해 훈련 이미지 모음(506)을 사용하는 신경망 훈련 모듈(505)을 채용할 수 있다. 훈련 프로세스 대신 일반적으로 사용되는 다른 프로세스는 사진 측량법이다. 도 5에 나타낸 프로세스(500) 동안 모델(508)이 생성되면, 모델(508)은 자연 콘텐츠에 대한 인제스트 포맷(507)의 자산 중 하나가 된다. 인제스트 포맷(507)의 예시적인 실시예는 MPI 및 MSI를 포함한다.
도 6은 합성 미디어(608), 예컨대 컴퓨터 생성 이미지에 대한 인제스트 포맷을 생성하기 위한 프로세스(600)의 도면을 보여준다. 도 6의 예에서, LIDAR 카메라(601)는 장면의 포인트 클라우드(602)를 캡처한다. 컴퓨터 생성 이미지(CGI) 도구, 3D 모델링 도구 또는 합성 콘텐츠를 생성하는 다른 애니메이션 프로세스가 컴퓨터(603)에 채용되어 네트워크를 통해 CGI 자산을 생성(604)한다. 배우(605)가 착용한, 센서를 구비한 모션 캡처 슈트(605A)는 배우(605)의 움직임을 디지털로 기록하여 애니메이션화 모션 캡처(animated motion capture, MoCap) 데이터(606)를 생성한다. 데이터(602), (604) 및 (606)은 합성 모듈(607)에 대한 입력으로서 제공되며, 합성 모듈(607)은 마찬가지로 예를 들어 신경망 모델(도 6에 도시되지 않음)을 생성하기 위해 신경망 및 훈련 데이터를 사용할 수 있다.
도 7은 일부 예에서 클라이언트 종단점으로서 다양한 레거시 및 이종 몰입형 미디어 지원 디스플레이를 지원하는 네트워크 미디어 배포 시스템(700)을 도시한다. 도 7의 예에서, 콘텐츠 취득 모듈(701)은 도 6 또는 도 5의 예시적인 실시예를 사용하여 미디어를 캡처하거나 생성한다. 인제스트 포맷은 콘텐츠 준비 모듈(702)에서 생성된 다음 송신 모듈(703)을 사용하여 네트워크 미디어 배포 시스템 내의 하나 이상의 클라이언트 종단점에 송신된다. 게이트웨이(704)는 네트워크에 대한 다양한 클라이언트 종단점에의 네트워크 액세스를 제공하기 위해 고객 댁내 장비(customer premise equipment)에 서비스를 제공할 수 있다. 셋톱 박스(705)는 또한 네트워크 서비스 공급자에 의해 집성된 콘텐츠에 대한 액세스를 제공하기 위해 고객 댁내 장비의 역할을 할 수 있다. 무선 복조기(706)는 모바일 디바이스(예: 모바일 핸드셋 및 디스플레이(713)에서와 같이)에 대한 모바일 네트워크 액세스 포인트 역할을 할 수 있다. 하나 이상의 실시예에서, 레거시 2D 텔레비전(707)은 게이트웨이(704), 셋톱 박스(705) 또는 WiFi 라우터(708)에 직접 연결될 수 있다. 레거시 2D 디스플레이(709)를 구비한 컴퓨터 랩톱은 WiFi 라우터(708)에 연결된 클라이언트 종단점일 수 있다. 머리 장착형 2D(래스터 기반) 디스플레이(710)도 라우터(708)에 연결될 수 있다. 렌티큘러 라이트 필드 디스플레이(711)는 게이트웨이(704)에 연결될 수 있다. 디스플레이(711)는 로컬 컴퓨팅 GPU(711A), 스토리지(711B) 및 광선 기반 렌티큘러 광학 기술을 사용하여 다중 뷰를 생성하는 시각적 프레젠테이션 유닛(711C)으로 구성될 수 있다. 홀로그램 디스플레이(712)는 셋톱 박스(705)에 연결될 수 있고 로컬 컴퓨팅 CPUs(712A), GPUs(712B), 스토리지(712C) 및 프레넬 패턴(Fresnal pattern), 파동 기반 홀로그램 시각화 유닛(712D)을 포함할 수 있다. 증강 현실 헤드셋(714)은 무선 복조기(706)에 연결될 수 있고 GPU(714A), 저장 디바이스(714B), 배터리(714C) 및 볼류메트릭 시각적 프레젠테이션 구성요소(714D)를 포함할 수 있다. 조밀한 라이트 필드 디스플레이(715)는 WiFi 라우터(708)에 연결될 수 있고 다수의 GPUs(715A), CPUs(715B) 및 스토리지 디바이스(715C), 눈 추적 장치(715D); 카메라(715E); 고밀도 광선 기반(dense ray-based) 라이트 필드 패널(715F)을 포함할 수 있다.
도 8은 이전에 도 7에 도시된 바와 같이 레거시 및 이종 몰입형 미디어 지원 디스플레이를 제공할 수 있는 몰입형 미디어 배포 모듈(800)의 도면을 도시한다. 콘텐츠는 모듈(801)에서 생성되거나 취득되며, 이는 도 5 및 도 6에 자연 콘텐츠 및 CGI 콘텐츠 각각에 대해 구현되어 있다. 그런 다음 콘텐츠는 네트워크 인제스트 포맷 생성 모듈(802)을 사용하여 인제스트 포맷으로 변환된다. 네트워크 인제스트 포맷 생성 모듈(802)의 일부 예는 도 5 및 도 6에 자연 콘텐츠 및 CGI 콘텐츠 각각에 대해 구현되어 있다. 인제스트 미디어 포맷은 네트워크로 전송되고 스토리지 디바이스(803)에 저장된다. 일부 다른 예에서, 스토리지 디바이스는 몰입형 미디어 콘텐츠 제작자의 네트워크에 상주할 수 있고 이등분하는 파선으로 표시된 것처럼 몰입형 미디어 네트워크 배포 모듈(800)에 의해 원격으로 액세스될 수 있다. 클라이언트 및 애플리케이션 특정 정보는 일부 예에서, 원격 스토리지 디바이스(804)에서 사용 가능하며, 이는 일례에서 대체 클라우드 네트워크에 원격으로 선택적으로 존재할 수 있다.
도 8에 도시된 바와 같이, 클라이언트 인터페이스 모듈(805)(예: 일부 예에서 서버 디바이스로 지칭됨)은 배포 네트워크의 주요 태스크을 실행하기 위한 정보의 주요 소스 및 싱크 역할을 한다. 이 특정 실시예에서, 클라이언트 인터페이스 모듈(805)은 네트워크의 다른 구성요소와 통합된 포맷으로 구현될 수 있다. 그럼에도 불구하고 도 8의 클라이언트 인터페이스 모듈(805)에 의해 표시되는 태스크는 8은 일부 예에서 개시된 주제의 요소를 형성한다. 클라이언트 인터페이스 모듈(805)은 클라이언트 디바이스의 특성에 따라 미디어의 모든 처리 및 배포를 용이하게 하기 위해 클라이언트 디바이스와의 통신을 위한 양방향 프로토콜을 더 채용할 수 있다. 또한, 양방향 프로토콜은 서로 다른 전달 채널, 즉 제어 평면 채널과 데이터 평면 채널을 통해 구현될 수 있다.
본 개시의 일부 측면에 따르면, 클라이언트 인터페이스 모듈(805)은 클라이언트 디바이스와의 통신을 위한 양방향 프로토콜을 더 채용하여 클라이언트 디바이스의 특성에 따른 미디어(예: 몰입형 미디어)의 처리 및 배포를 용이하게 할 수 있다.
클라이언트 인터페이스 모듈(805)은 도 8의 클라이언트(808)(클라이언트 디바이스(808)라고도 함)와 같은 클라이언트 디바이스의 특징 및 속성에 대한 정보를 수신하고,, 클라이언트(808)에서 현재 실행 중인 애플리케이션에 관한 요구사항을 더 수집한다. 이 정보는 디바이스치(804)로부터 획득될 수 있거나, 대안 실시예에서 클라이언트(808)에 직접 질의하여 획득할 수 있다. 일부 예에서, 클라이언트 인터페이스 모듈(805)과 클라이언트(808) 사이의 직접 통신을 가능하게 하기 위해 양방향 프로토콜이 사용된다. 예를 들어, 클라이언트 인터페이스 모듈(805)은 클라이언트(808)에 직접 질의를 전송할 수 있다. 양방향 프로토콜에서 메시지의 예는 도 17a∼도 17g 및 도 18을 참조하여 제공된다.
클라이언트 인터페이스 모듈(805)은 또한 도 9에서 설명될 미디어 적응 및 프래그먼트화 모듈(810)과의 통신을 개시하고 통신한다. 인제스트 미디어가 모듈(810)에 의해 적응되고 프래그먼트화됨에 따라, 일부 예에서 미디어는 배포 스토리지 디바이스(809)를 위해 준비된 미디어로 나타낸 중간 스토리지 디바이스로 전송된다. 배포 미디어가 준비되고 디바이스(809)에 저장됨에 따라, 클라이언트 인터페이스 모듈(805)은 네트워크 인터페이스(808B)를 통해 몰입형 클라이언트(808)가 배포 미디어 및 대응하는 설명 정보(806)를 수신하거나 푸시 요청을 통해 또는 클라이언트(808) 자체가 스토리지 디바이스(809)로부터 미디어(806)의 풀 요청을 개시할 수 있도록 보장한다. 몰입형 클라이언트(808)는 일부 예에서 GPUs(또는 도시되지 않은 CPUs)(808C)를 채용할 수 있다. 미디어의 배포 포맷은 클라이언트(808)의 스토리지 디바이스 또는 스토리지 캐시(808D)에 저장된다. 마지막으로 몰입형 클라이언트(808)는 시각화 구성요소(808A)를 통해 미디어를 시각적으로 제시한다.
몰입형 미디어를 몰입형 클라이언트(808)로 스트리밍하는 프로세스 내내, 클라이언트 인터페이스 모듈(805)은 클라이언트 진행 및 상태 피드백 채널(807)을 통해 클라이언트의 진행 상태를 모니터링할 수 있다.
도 9는 일부 예에서 인제스트된 소스 미디어가 몰입형 클라이언트(808)의 요구사항에 매칭되도록 적절하게 적응될 수 있도록 미디어 적응 프로세스의 도면을 나타낸다. 미디어 적응 모듈(901)은 몰입형 클라이언트(808)를 위한 적절한 배포 포맷으로 인제스트 미디어의 적응을 용이하게 하는 다수의 구성요소로 구성된다. 도 9에서, 미디어 적응 모듈(901)은 네트워크상의 현재 트래픽 부하를 추적하기 위해 입력 네트워크 상태(905)를 수신한다. 몰입형 클라이언트(808) 정보는 속성 및 기능 설명, 애플리케이션 특징 및 설명은 물론 애플리케이션 현재 상태, 클라이언트 신경망 모델(사용 가능한 경우)을 포함하여 클라이언트의 절두체의 지오메트리를 인제스트 몰입형 미디어의 보간 능력에 매핑하는 데 도움을 준다. 미디어 적응 모듈(901)은 적응된 출력이 생성될 때에 클라이언트 적응 미디어 스토리지 다비이스(906)에 저장되도록 보장한다.
일부 예에서, 미디어 적응 모듈(901)은 특정 인제스트 소스 미디어를 클라이언트에 적합한 포맷으로 적응시키기 위해 렌더러(901B) 또는 신경망 프로세서(901C)를 사용한다. 일례에서, 미디어 적응 모듈(901)은 일례에서 서버 디바이스와 같은 클라이언트 인터페이스 모듈(903)로부터 클라이언트 정보(904)를 수신한다. 클라이언트 정보(904)는 클라이언트 설명 및 현재 상태, 애플리케이션 설명 및 현재 상태를 포함할 수 있고, 클라이언트 신경망 모델을 포함할 수 있다. 신경망 프로세서(901C)는 신경망 모델(901A)을 사용한다. 이러한 신경망 프로세서(901C)의 예는 MPI 및 MSI에 기술된 딥뷰(deepview) 신경망 모델 생성기를 포함한다. 일부 예에서, 미디어는 2D 포맷이지만, 클라이언트는 3D 포맷을 필요로 하면, 신경망 프로세서(901C)는 비디오에 묘사된 장면의 볼류메트릭 표현을 도출하기 위해 2D 비디오 신호에서 고도로 상관된 이미지를 사용하는 프로세스를 호출할 수 있다. 이러한 프로세스의 예로는 캘리포니아 버클리 대학교에서 개발한 하나 또는 몇 개의 이미지 프로세스에서 나오는 신경 방사 필드(neural radiance field)가 있다. 적합한 렌더러(901B)의 일례는 미디어 적응 모듈(901)과 직접 상호작용하도록 수정될 OTOY Octane 렌더러(미도시)의 수정된 버전일 수 있다. 미디어 적응 모듈(901)은 일부 예에서 미디어 압축기(901D) 및 인제스트 미디어의 포맷 및 몰입형 클라이언트(808)에 의해 요구되는 포맷과 관련하여 이들 도구의 필요성에 의존하는 미디어 압축해제기(901E)를 채용할 수 있다.
도 10은 일부 예에서 클라이언트 적응형 미디어 스토리지 디바이스(1002)에 현재 상주하는 미디어 적응 모듈(1001)(예: 도 9의 미디어 적응 모듈(901)에 대응함)로부터 적응형 미디어를 궁극적으로 변환하는 적응형 미디어 패키징 프로세스를 도시한다. 예를 들어, 미디어 패키징 모듈(1003)은 미디어 적응 모듈(1001)로부터의 적응된 미디어를 강력한 배포 포맷(1004)으로, 예를 들어 도 3 및 도 5에 도시된 예시적인 포맷으로 포맷한다. 매니페스트 정보(1004A)는 클라이언트(808)가 수신할 것으로 예상할 수 있는 장면 데이터의 목록을 몰입형 클라이언트(808)에 제공하고 시각적 자산 및 대응하는 메타데이터, 그리고 오디오 자산 및 대응하는 메타데이터의 목록도 제공한다.
도 11은 일부 예에서 프래그먼트화 프로세스를 도시한다. 도 11의 예에서, 패킷화기(1102)는 다양한 적응된 미디어(1101)를 네트워크 상의 클라이언트 종ㄷ단(1104)으로 도시된, 몰입형 클라이언트(808)에 스트리밍하기에 적합한 개별 패킷(1103)으로 프래그먼트화한다.
도 12는 일부 예에서 특정 몰입형 미디어 클라이언트 종단점에 대해 스트리밍 가능하고 적합한 배포 포맷으로 인제스트 포맷의 특정 몰입형 미디어를 적응시키는 네트워크의 시퀀스 도면을 도시한다.
도 12에 도시된 구성요소 및 통신을 설명하면 다음과 같다: 클라이언트(1201)(일부 예에서 클라이언트 종단점라고도 함)는 네트워크 배포 인터페이스(1202)에 대해 미디어 요청(1208)을 개시한다. 미디어 요청(1208)은 URN 또는 다른 표준 명명법에 의해 클라이언트(1201)에 의해 요청된 미디어를 식별하기 위한 정보를 포함한다. 네트워크 배포 인터페이스(1202)는 프로파일 요청(1209)으로 미디어 요청(1208)에 응답하며, 이는 현재 사용 가능한 자원에 대한 정보(컴퓨팅, 스토리지, 충전된 배터리 백분율 및 클라이언트의 현재 작동 상태를 특징짓는 기타 정보 포함)를 클라이언트(1201)가 제공하도록 요청한다. 프로파일 요청(1209)은 또한 클라이언트의 프레젠테이션 시스템의 특징과 매칭되도록 정확한 미디어 뷰를 추출하거나 보간하기 위한 신경망 추론을 위해 네트워크에서 사용할 수 있는 하나 이상의 신경망 모델을 클라이언트가 제공하도록 요청한다. 클라이언트(1201)에서 네트워크 배포 인터페이스(1202)로의 응답(1210)은 클라이언트 토큰, 애플리케이션 토큰 및 하나 이상의 신경망 모델 토큰을 제공한다(이러한 신경망 모델 토큰을 클라이언트에서 사용할 수 있는 경우). 그러면 네트워크 배포 인터페이스(1202)는 클라이언트(1201)에 세션 ID 토큰(1211)을 제공한다. 그 다음에 네트워크 배포 인터페이스(1202)는 요청(1208)에서 식별된 미디어에 대한 URN 또는 표준 명명법 명칭을 포함하는 인제스트 미디어 요청(1212)으로 인제스트 미디어 서버(1203)를 요청한다. 그러면 인제스트 미디어 서버(1203)는 인제스트 미디어 토큰을 포함하는 응답(1213)으로 요청(1212)에 답한다. 네트워크 배포 인터페이스(1202)는 클라이언트(1201)에 대한 호출(1214)의 응답(1213)으로부터의 미디어 토큰을 제공한다. 네트워크 배포 인터페이스(1202)는 적응 인터페이스(1204)에 인제스트 미디어 토큰, 클라이언트 토큰, 애플리케이션 토큰 및 신경망 모델 토큰(1215)을 제공함으로써 미디어 요청(1208)에 대한 적응 프로세스를 개시한다. 적응 인터페이스(1204)는 인제스트 미디어 자산에 대한 액세스를 요청하기 위해 콜(1216)에서 인제스트 미디어 토큰을 인제스트 미디어 서버(1203)에 제공함으로써 인제스트 미디어에 대한 액세스를 요청한다. 인제스트 미디어 서버(1203)는 적응 인터페이스(1204)에 대한 응답(1217)에서 인제스트 미디어 액세스 토큰으로 요청(1216)에 응답한다. 그런 다음 적응 인터페이스(1204)는 미디어 적응 모듈(1205)이 클라이언트, 애플리케이션 및 (1213)에서 생성된 세션 ID 토큰에 대응하는 신경망 추론 모델에 대한 인제스트 미디어 액세스 토큰에 위치한 인제스트 미디어를 적응시키도록 요청한다. 적응 인터페이스(1204)에서 미디어 적응 모듈(1205)로의 요청(1218)은 필수 토큰 및 세션 ID를 포함한다. 미디어 적응 모듈(1205)은 업데이트(1219)에서 적응된 미디어 액세스 토큰 및 세션 ID를 네트워크 배포 인터페이스(1202)에 제공한다. 네트워크 배포 인터페이스(1202)는 인터페이스 호출(1220)에서 적응된 미디어 액세스 토큰 및 세션 ID를 패키징 모듈(1206)에 제공한다. 패키징 모듈(1206)은 응답 메시지(1221)에서 패키징된 미디어 액세스 토큰 및 세션 ID과 함께 네트워크 배포 인터페이스(1302)에 응답(1221)을 제공한다. 패키징 모듈(1206)은 응답(1222)에서 패키징된 자산, URN 및 세션 ID에 대한 패키징된 미디어 액세스 토큰을 패키징된 미디어 서버(1207)에 제공한다. 클라이언트(1201)는 응답 메시지(1221)에서 수신된 패키징된 미디어 액세스 토큰에 대응하는 미디어 자산의 스트리밍을 개시하기 위한 요청(1223)을 실행한다. 클라이언트(1201)는 다른 요청을 실행하고 메시지(1224)의 상태 업데이트를 네트워크 배포 인터페이스(1202)에 제공한다.
도 13은 일부 예에서 두 부분: 몰입형 미디어와 3D 포맷(1301) 및 2D 포맷(1302)의 자산으로 구성되는 도 9의 인제스트 미디어 포맷 및 자산(902)을 나타낸다. 2D 포맷(1302)은 예컨대, ISO/IEC 14496 Part 10 Advanced Video Coding과 같은 단일 뷰 코딩된 비디오 스트림일 수 있거나, 예컨대 ISO/IEC 14496 Part 10에 대한 다중 뷰 압축 개정과 같은 다중 뷰를 포함하는 코딩된 비디오 스트림일 수 있다.
도 14는 코딩된 비디오 스트림과 함께 신경망 모델 정보의 캐리지를 나타낸다. 도 14에서, 코딩된 비디오 스트림(1401)은 하나 이상의 SEI 메시지(1401A) 및 코딩된 비디오 스트림(1401B)에 실려 직접 전달되는 신경망 모델 및 대응하는 파라미터를 포함한다. 반면 코딩된 비디오 스트림(1402)에서, 하나 이상의 SEI 메시지는 신경망 모델에 대한 식별자 및 대응하는 파라미터(1402A) 및 코딩된 비디오 비트스트림(1402B)을 실어 전달한다. (1402)에 대한 시나리오에서, 신경망 모델 및 파라미터는 예를 들어 도 9의 (901A)에서 코딩된 비디오 스트림 외부에 저장된다.
도 15는 인제스트된 몰입형 미디어 및 자산 3D 포맷(1501)(도 13의 3D 포맷(1301)의 몰입형 미디어 및 자산에 대응)으로 신경망 모델 정보의 전달을 나타낸다. 인제스트된 몰입형 미디어 및 자산 3D 포맷(1501)은 (1502)로 표시된 장면 1 내지 N을 참조한다. 각각의 장면(1502)은 지오메트릭(1503) 및 처리 파라미터(1504)를 참조한다. 지오메트릭(1503)은 신경망 모델에 대한 참조(1503A)를 포함할 수 있다. 처리 파라미터(1504)도 또한 신경망 모델에 대한 참조(1504A)를 포함할 수 있다. (1504A) 및 (1503A)는 모두 장면과 함께 직접 저장된 네트워크 모델 또는 인제스트된 미디어의 외부에 상주하는 신경망 모델, 예를 들어 도 9의 (901A)에 저장된 네트워크 모델을 참조하는 식별자를 참조할 수 있다.
본 개시의 다양한 모듈은 개별 디바이스일 수 있거나, 디바이스 내의 구성요소일 수 있음에 유의한다. 일부 예에서 모듈은 개별 디바이스일 수 있으며 다른 디바이스와 결합될 수 있다. 일부 예에서 모듈은 처리 회로일 수 있고, 다른 처리 회로와 상호연결될 수 있다. 일부 예에서 모듈은 소프트웨어 명령어 모듈일 수 있으며 하나 이상의 프로세서에 의해 실행될 수 있다.
본 발명의 일부 측면은 미디어 배포 네트워크의 클라이언트 인터페이스(즉, 서버 디바이스라고도 함)가 클라이언트 프레젠테이션 종단점(즉, 클라이언트 디바이스라고도 함)과 직접 통신할 수 있도록 양방향 메시지를 가진 양방향 프로토콜을 제공한다. 일부 예에서, 양방향 프로토콜은 전송 계층 위의 네트워크 계층에서 구현될 수 있다. 일부 예에서, 양방향 프로토콜을 사용하여, 서버 디바이스는 클라이언트 디바이스의 클라이언트 특정 특성 및 지원되는 특징에 관한 정보를 획득할 수 있다. 일부 예에서, 양방향 프로토콜을 사용하여, 서버 디바이스는 클라이언트 디바이스에 대한 미디어의 적응 및 배포를 위한 고유한 세션 및 동작 컨텍스트를 확립함으로써 클라이언트 디바이스에 대한 미디어의 배포를 관리할 수 있다. 일부 예에서, 양방향 프로토콜을 사용하여, 서버 디바이스는 클라이언트 디바이스가 예를 들어 특정 미디어의 프레젠테이션 시에, 컴퓨팅 또는 저장을 위해 클라이언트 디바이스의 자원를 보충하기 위해 네트워크에 의존할 필요가 있을 때 또는 필요한 경우, 세션 동안 상황에 응답할 수 있다.
일부 예에서, 양방향 프로토콜은 입력 미디어의 적응 프로세스에서 클라이언트 디바이스의 능력과 매칭되도록 서버 디바이스를 보조할 수 있다. 일부 예에서, 양방향 프로토콜은 여러 클라이언트 디바이스에 걸친 프레젠테이션을 위한 특정 미디어 자산의 재사용이 콘텐츠 제작자, 예컨대 스튜디오 또는 클라이언트 디바이스에 의해 허용되는 경우, 효율적인 재사용을 가능하게 할 수 있다. 일부 예에서, 양방향 프로토콜을 사용하여, 서버 디바이스는 네트워크 운영자(무선 서비스 공급자, 무선 캐리어, 모바일 네트워크 캐리어라고도 함)와 클라이언트 디바이스 간의 기존 서비스 레벨 협정에 따라 미디어의 거의 실시간 프레젠테이션을 용이하게 할 수 있다. 일부 예에서, 양방향 프로토콜을 사용하여, 서버 디바이스는 애플리케이션의 요구사항, 예컨대 상호작용형 게임 대 선형 수동 뷰잉 경험에 따라 미디어의 클라이언트 디바이스의 거의 실시간 프레젠테이션을 용이하게 할 수 있다.
본 발명의 일 측면에 따르면, 양방향 프로토콜은 클라이언트 디바이스와 직접 통신하는 서버 디바이스를 위한 양방향 프레젠테이션 데이터스트림을 형성하는 데 사용된다. 양방향 프레젠테이션 데이터스트림은 입력 미디어를 클라이언트 디바이스에 적합한 배포 포맷으로 적시에 적응시키고 프레젠테이션을 위해 적응된 미디어를 클라이언트로 스트리밍하는 것을 용이하게 하기 위해 서버 디바이스와 클라이언트 디바이스 간에 교환되는 일련의 메시지를 포함한다.
양방향 프로토콜은 다양한 포맷의 자산 유형을 필요로 하는 다양한 클라이언트 디바이스를 지원할 수 있고 특정 클라이언트에 의한 사용을 위해 이전에 적응된 자산을 재사용할 수 있는 미디어 배포 네트워크를 구축하는 데 사용될 수 있다.
도 16a∼도 16c는 서버 디바이스(예: 도 8에서 클라이언트 인터페이스 모듈(805)로 도시됨)와 클라이언트 디바이스(예: 도 8에서 몰입형 클라이언트(808)로 도시됨) 간에 교환될 수 있는 메시지의 목록을 제공한다. 일부 예에서, 메시지 목록은 서버 디바이스에서 시작되어 클라이언트 디바이스로 전송되는 메시지 및 정보(806)를 포함할 수 있고, 클라이언트 디바이스에서 시작되고 서버 디바이스로 전송되는 피드백 및 상태(807)를 포함할 수 있다.
도 16a 및 도 16b는 서버 디바이스에서 클라이언트 디바이스로 전송되는 제1 메시지 그룹(1에서 20까지 번호가 매겨진 메시지)을 도시하고; 도 16c는 일부 실시예에 따라 클라이언트 디바이스에서 서버 디바이스로 전송되는 제2 메시지 그룹(21 내지 31로 번호가 매겨진 메시지)를 도시한다.
도 17a∼도 17g는 일부 예에서의 제1 메시지 그룹에 대한 의미론적 정보의 표를 도시한다. 도 18은 일부 예에서의 제2 메시지 그룹에 대한 의미론적 정보의 표를 도시한다.
도 16a∼도 16c, 도 17a∼도 17g 및 도 18의 메시지는 예시를 위한 것임에 유의한다. 양방향 프로토콜에서의 메시지는 수정 및/또는 생략될 수 있다. 추가 메시지가 추가될 수 있다.
일부 구현에서, 미디어 배포 네트워크는 몰입형 미디어 콘텐츠와 같은 미디어의 적응 및 스트리밍을 용이하게 하기 위해 양방향 프로토콜에 의해 정의된 메시지를 사용할 수 있다. 일부 예에서 양방향 프로토콜은 실행할 동작(action)을 시그널링하는 특정 메시지를 포함할 수 있다. 예를 들어, 특정 메시지는 클라이언트 디바이스로 하여금 자신의 처리 특성을 서버 디바이스에 전송하도록 하여, 클라이언트 디바이스의 처리 특성을 수신할 때, 서버 디바이스가 인제스트된 미디어를 클라인트 디바이스에 적합한 포맷을 의미 있게 적용할 수 있는 충분한 정보를 갖추게 할 수 있다. 다른 예로, 서버 디바이스와 클라이언트 디바이스 간에 메시지를 교환하여 서버 디바이스가 클라이언트 디바이스의 최종 사용자가 경험하기를 원하는 프레젠테이션을 위한 장면의 매니페스트를 전송할 수 있도록 한다. 예를 들어, 그러한 매니페스트를 수신하면, 클라이언트 디바이스는 첫 번째 장면, 두 번째 장면 등에 대한 자산 각각을 요청하는 것을 포함하여, 프레젠테이션 생성을 준비하는 데 필요한 단계를 시작할 수 있다. 그러면 서버 디바이스는 자산을 미디어 소스에서 클라이언트로 직접 보내거나 가까운 데이터베이스에서 자산을 인출하도록 클라이언트에 알림으로써 자산에 대한 각 요청에 응답할 수 있다. 메시지 요청에 응답하여, 클라이언트 디바이스 또는 서버 디바이스는 메시지의 요청이 성공적으로 수행되었음을 지시하기 위해 확인응답(acknowledgement)으로 응답하거나 오류가 발생했음을 지시하기 위해 부정적인 확인응답(negative acknowledgement)으로 응답할 수 있다.
본 개시의 일부 측면은 양방향 프로토콜의 구현을 용이하게 하는 기술을 제공한다. 예를 들어 양방향 프로토콜의 메시지는 두 가지 범주: 제어 메시지와 데이터 메시지로 구분된다. 일부 예에서, 데이터 메시지는 전달을 위한 미디어 데이터를 포함하고, 제어 메시지는 데이터 메시지를 전달하기 위한 제어 정보를 포함한다. 예를 들어, 제어 메시지는 데이터 메시지 전달을 준비하기 위한 설정 정보, 데이터 메시지 전달 시 처리 정보, 데이터 메시지 전달 후 확인 정보 등을 포함할 수 있다.
또한, 제어 메시지와 데이터 메시지를 전달하기 위해 별개의 통신 기술이 사용된다. 예를 들어, 빠른 전달을 가능하게 하는 제1 통신 기술은 데이터 메시지를 전달하는 데 사용될 수 있고, 안정적인 전달을 보장하는 제2 통신 기술은 제어 메시지를 전달하는 데 사용될 수 있다. 예를 들어 사용자 데이터그램프로토콜(UDP)과 같은 낮은 대기시간 네트워크 전송 프로토콜을 사용하여 데이터 메시지를 전달할 수 있으며 송신 제어 프로토콜(TCP)과 같은 보다 안정적인 연결 기반 네트워크 전송 프로토콜을 사용하여 제어 메시지를 전달한다. TCP는 순서지정, 신뢰성 및 무결성을 보장할 수 있다. UDP는 오버헤드와 대기시간을 줄이고 대량의 데이터 유닛을 전송할 수 있다.
일부 예에서, 제어 메시지는 제어 평면을 형성하고, 제어 평면 채널은 제어 메시지의 전달을 위한 미디어 배포 네트워크 아키텍처의 통합 구성요소를 말한다. 일례에서, 제어 평면 채널은 제어 메시지를 전달하기 위해 TCP 프로토콜에 따라 설정될 수 있다. 또한, 데이터 메시지는 데이터 평면을 형성하고, 데이터 평면 채널은 데이터 메시지 전달을 위한 미디어 배포 네트워크 아키텍처의 통합 구성요소를 말한다. 예를 들어, 데이터 평면 채널은 데이터 메시지를 전달하기 위해 UDP에 따라 설정될 수 있다.
이러한 방식으로, 미디어 데이터는 더 적은 지연으로 데이터 평면 채널을 통해 전송될 수 있고, 데이터 평면 채널을 통한 전송을 돕기 위한 설정 정보, 모니터링 정보 및 상태 통지와 제어 정보가 데이터 평면 채널을 통해 전송되어, 성공적인 데이터 메시지 송신을 보장하거나 데이터 평면 채널을 통한 송신 오류를 검출하고 데이터 평면 채널을 통한 재전송을 트리거한다.
본 발명의 일 측면에 따르면, 제어 평면 채널과 데이터 평면 채널이 분리된 양방향 통신은 다양한 포맷의 자산 유형을 요구하는 다양한 클라이언트 디바이스를 지원할 수 있고, 특정 클라이언트 디바이스에 의한 사용을 위해 이전에 적응된 자산을 재사용할 수 있는 미디어 배포 네트워크를 구축하는 데 사용될 수 있다. 제어 평면 채널과 데이터 평면 채널을 통한 양방향 통신의 분리에 의해, 일부 예에서 데이터 메시지는 대기 시간이 덜 필요하지만 신뢰성은 낮은 전송 계층을 통해 전달되고, 제어 메시지는 메시지 전달 속도가 느린 보다 안정적인 전송 계층을 통해 전달됨으로써 보다 강력하고 효율적인 미디어 배포 네트워크가 구현될 수 있다.
도 19a는 본 개시의 일부 실시예에 따른 미디어 시스템(1900)의 블록도를 도시한다. 미디어 시스템(1900)은 서버 디바이스(1901) 및 클라이언트 디바이스(1906)를 포함한다. 서버 디바이스(1901)는 일부 예에서 미디어 배포 네트워크의 클라이언트 인터페이스 모듈(예: 클라이언트 인터페이스 모듈(805))이라고도 한다. 도 19a의 예에서, 통신 채널(1902), (1903), (1904) 및 (1905)는 서버 디바이스(1901)와 클라이언트 디바이스(1906) 사이의 양방향 통신을 위해 설정될 수 있다. 일부 예에서, 통신 채널은 물리적인 전송 매체를 의미할 수 있거나 원격 통신 및 컴퓨터 네트워킹에서 다중화된 매체를 통한 논리적 연결을 의미할 수 있다.
구체적으로, 통신 채널(1902)은 서버 디바이스(1901)에서 클라이언트 디바이스(1906)로 제어 메시지를 전달하도록 구성된다. 도 19b는 통신 채널(1902)에 의해 전달될 수 있는 도 16a∼도 16c의 양방향 프로토콜로부터의 제어 메시지 목록을 도시한다.
통신 채널(1903)은 클라이언트 디바이스(1906)에서 서버 디바이스(1901)로 제어 메시지를 전달하도록 구성된다. 도 19c는 통신 채널(1903)에 의해 전달될 수 있는 도 16a∼도 16c의 양방향 프로토콜로부터의 제어 메시지 목록을 도시한다.
일부 예에서, 통신 채널(1902) 및 통신 채널(1903)은 양방향인 제어 평면 채널일 수 있다. 도 19b 및 도 19c의 제어 메시지는 양방향 프로토콜의 제어 평면을 형성한다.
통신 채널(1904)은 서버 디바이스(1901)에서 클라이언트 디바이스(1906)로 데이터 메시지를 전달하도록 구성된다. 도 19d는 통신 채널(1904)에 의해 전달될 수 있는 도 16a∼도 16c의 양방향 프로토콜로부터의 제어 메시지 목록을 도시한다.
통신 채널(1905)은 클라이언트 디바이스(1906)에서 서버 디바이스(1901)로 데이터 메시지를 전달하도록 구성된다. 도 19e는 통신 채널(1905)에 의해 전달될 수 있는 도 16a∼도 16c의 양방향 프로토콜로부터의 제어 메시지 목록을 도시한다.
일부 예에서, 통신 채널(1904)은 단방향인 데이터 평면 채널이고, 통신 채널(1905)은 단방향인 다른 데이터 평면 채널이다. 도 19d 및 도 19e의 데이터 메시지는 양방향 프로토콜의 데이터 평면을 형성한다.
도 19b∼도 10e의 메시지는 예시를 위한 것임에 유의한다. 통신 채널(1902)∼(1905)의 메시지는 수정 및/또는 생략될 수 있다. 추가 메시지가 추가될 수 있다.
도 20은 일부 예에서 양방향 프로토콜의 사용을 예시하는 미디어 시스템(2000)의 블록도를 도시한다. 일부 예에서, 양방향 프로토콜은 도 16a∼도 16c, 도 17a∼도 17g 및 도 18의 메시지를 포함할 수 있다.
메시지는 도 19a∼도 19e에 따라 제어 평면 및 데이터 평면으로 분리될 수 있다. 미디어 시스템(2000)은 몰입형 미디어 애플리케이션, 증강 현실(AR) 애플리케이션, 가상 현실 애플리케이션, 비디오 게임 애플리케이션, 스포츠 게임 애니메이션 애플리케이션, 원격 회의 및 텔레프레즌스 애플리케이션, 미디어 스트리밍 애플리케이션 등과 같은 다양하나 애플리케이션에 사용될 수 있다.
미디어 시스템(2000)은 네트워크(도시되지 않음)에 의해 연결될 수 있는 서버 디바이스(2010) 및 도 2에 도시된 클라이언트 디바이스(2060A), (2060B) 및 (2060C)와 같은 복수의 미디어 클라이언트 디바이스를 포함한다. 일례에서, 서버 디바이스(2010)는 몰입형 미디어 코딩 기능을 가진 하나 이상의 디바이스를 포함할 수 있다. 일례에서, 서버 디바이스(2010)는 데스크톱 컴퓨터, 랩톱 컴퓨터, 서버 컴퓨터, 태블릿 컴퓨터 등과 같은 단일 컴퓨팅 디바이스를 포함한다. 다른 예에서, 서버 디바이스(2010)는 데이터 센터(들), 서버 팜(server farm)(들) 등을 포함한다. 서버 디바이스(2010)는 몰입형 콘텐츠, 비디오 콘텐츠, 오디오 콘텐츠 등과 같은 입력 미디어 콘텐츠를 수신할 수 있다. 클라이언트 디바이스(예: 클라이언트 디바이스(2060A), (2060B) 및 (2060C))는 각각 미디어 애플리케이션을 위한 미디어 프레젠테이션 기능을 갖는 하나 이상의 디바이스를 포함한다. 일례에서, 미디어 클라이언트 디바이스는 데스크톱 컴퓨터, 랩톱 컴퓨터, 서버 컴퓨터, 태블릿 컴퓨터, 머리 장착형 디스플레이(HMD) 디바이스, 렌티큘러 라이트 필드 디스플레이 등과 같은 프레젠팅 디바이스(presenting device)를 포함할 수 있다. 미디어 클라이언트 디바이스는 일부 예에서 적절한 미디어 프레젠팅 포맷에 따라 미디어를 제시할 수 있다.
서버 디바이스(2010)는 임의의 적합한 기술을 사용하여 구현될 수 있다. 도 20의 예에서, 서버 디바이스(2010)는 함께 연결된 처리 회로(2030) 및 인터페이스 회로(2011)를 포함한다.
처리 회로(2030)는 하나 이상의 중앙 처리 유닛(CPU), 하나 이상의 그래픽 처리 유닛(GPU), 주문형 반도체로(application specific integrated circuit, ASIC) 등과 같은 임의의 적합한 처리 회로를 포함할 수 있다. 도 20의 예에서, 처리 회로(2030)는 양방향 프로토콜에 따라 메시지를 형성하도록 구성되고 양방향 프로토콜에 따라 메시지를 해석할 수 있다. 또한, 처리 회로(2030)는 미디어 콘텐츠를 실어 전달하는 미디어 스트림을 생성할 수 있다. 일부 예에서, 미디어 스트림은 서버 디바이스(2010)와 미디어 클라이언트 디바이스 사이에서 교환되는 메시지에 기초하여 적응될 수 있다.
인터페이스 회로(2011)는 서버 디바이스(2010)와 네트워크를 인터페이싱할 수 있다. 인터페이스 회로(2011)는 네트워크로부터 신호를 수신하는 수신부 및 네트워크에 신호를 전송하는 송신부를 포함할 수 있다. 예를 들어, 인터페이스 회로(2011)는 네트워크를 통해 클라이언트 디바이스(2060A), 클라이언트 디바이스(2060B), 클라이언트 디바이스(2060C) 등과 같은 다른 디바이스에 메시지를 실어 전달하는 신호를 전송할 수 있다. 인터페이스 회로(2011)는 클라이언트 디바이스(2060A), (2060B) 및 (2060C)와 같은 미디어 클라이언트 디바이스로부터 메시지를 실어 전달하는 신호를 수신할 수 있다.
네트워크는 이더넷 연결, 광섬유 연결, WiFi 연결, 셀룰러 네트워크 연결 등과 같은 유선 및/또는 무선 연결을 통해 서버 디바이스(2010) 및 클라이언트 디바이스(예: 클라이언트 디바이스(2060A), (2060B) 및 (2060C))와 적절하게 연결된다.
클라이언트 디바이스(예: 클라이언트 디바이스(2060A), (2060B) 및 (2060C))는 양방향 프로토콜을 사용하여 미디어 프레젠테이션 및 양방향 통신을 위해 각각 구성된다.
클라이언트 디바이스(2060A), (2060B) 및 (2060B)와 같은 미디어 클라이언트 디바이스는 임의의 적합한 기술을 사용하여 구현될 수 있다. 도 20의 예에서, 클라이언트 디바이스(2060A) 및 (2060B)가 도시되지만, 사용자 A 및 사용자 B와 같은 각각의 사용자에 의해 사용될 수 있는 사용자 장비인 이어폰을 구비한 헤드 마운트 디스플레이(HMD)에 제한되지 않는다. 클라이언트 디바이스 (2060C)가 도시되어 있지만, 다수의 사용자가 동시에 볼 수 있는 콘텐츠를 표시할 수 있는 렌티큘러 라이트 필드 디스플레이로 한정되지 않으며, 여기서 각 사용자는 표시되고 있는 콘텐츠에 대한 자신의 고유한 관점(즉, 뷰)을 경험한다.
도 20에서, 클라이언트 디바이스(2060A)는 도 20에 도시된 바와 같이 함께 결합된 처리 회로(2061A), 및 인터페이스 회로(2061A)를 포함한다. 클라이언트 디바이스(2060B)는 도 20에 도시된 바와 같이 함께 결합된 처리 회로(2070B), 및 인터페이스 회로(2061B)를 포함한다. 클라이언트 디바이스(2060C)는 도 20에 도시된 바와 같이 함께 결합된 처리 회로(2070C), 및 인터페이스 회로(2061C)를 포함한다.
인터페이스 회로(2061A)는 클라이언트 디바이스(2060A)를 네트워크와 인터페이싱할 수 있다. 인터페이스 회로(2061A)는 네트워크로부터 신호를 수신하는 수신부 및 네트워크에 신호를 송신하는 송신부를 포함할 수 있다. 예를 들어, 인터페이스 회로(2061A)는 서버 디바이스(2010)로부터 메시지를 실어 전달하는 신호를 수신할 수 있고, 서버 디바이스(2010)에 메시지를 실어 전달하는 신호를 송신할 수 있다.
처리 회로(2070A)는 CPU, GPU, 주문형 반도체(ASIC) 등과 같은 적절한 처리 회로를 포함할 수 있다. 처리 회로(2070A)는 미디어 디코더, 렌더 등과 같은 다양한 구성요소를 포함하도록 구성될 수 있다.
유사하게, 인터페이스 회로(2061B)는 클라이언트 디바이스(2060B)를 네트워크와 인터페이싱할 수 있다. 인터페이스 회로(2061B)는 네트워크로부터 신호를 수신하는 수신부 및 네트워크에 신호를 송신하는 송신부를 포함할 수 있다. 예를 들어, 인터페이스 회로(2061B)는 서버 디바이스(2010)로부터 메시지를 실어 전달하는 신호를 수신할 수 있고, 서버 디바이스(2010)에 메시지를 실어 전달하는 신호를 송신할 수 있다.
처리 회로(2070B)는 CPU, GPU, 주문형 반도체(ASIC) 등과 같은 적절한 처리 회로를 포함할 수 있다. 처리 회로(2070B)는 미디어 디코더, 렌더 등과 같은 다양한 구성요소를 포함하도록 구성될 수 있다.
유사하게, 인터페이스 회로(2061C)는 클라이언트 디바이스(2060C)를 네트워크와 인터페이싱할 수 있다. 인터페이스 회로(2061C)는 네트워크로부터 신호를 수신하는 수신부 및 네트워크에 신호를 송신하는 송신부를 포함할 수 있다. 예를 들어, 인터페이스 회로(2061C)는 서버 디바이스(2010)로부터 메시지를 실어 전달하는 신호를 수신할 수 있고, 서버 디바이스(2010)에 메시지를 실어 전달하는 신호를 송신할 수 있다.
처리 회로(2070C)는 CPU, GPU, 주문형 반도체(ASIC) 등과 같은 적절한 처리 회로를 포함할 수 있다. 처리 회로(2070C)는 미디어 디코더, 렌더 등과 같은 다양한 구성요소를 포함하도록 구성될 수 있다.
본 발명의 일 측면에 따르면, 서버 디바이스(2010) 및 클라이언트 디바이스(2060A)는 그 사이에서 제어 메시지를 교환(송신 및/또는 수신)하기 위한 제어 평면 채널(2001)을 설정할 수 있고; 서버 디바이스(2010)와 클라이언트 디바이스(2060B)는 그 사이에서 제어 메시지를 교환하기 위한 제어 평면 채널(2003)을 설정할 수 있고; 서버 디바이스(2010)와 클라이언트 디바이스(2060C)는 그 사이에서 제어 메시지를 교환하기 위한 제어 평면 채널(2005)을 설정할 수 있다. 예를 들어, 제어 평면 채널(2001), (2003), (2005)은 TCP를 사용할 수 있고 제어 메시지의 양방향 송신을 수행할 수 있다.
일부 예에서, 데이터 평면 채널은 채널 평면 채널(2001), (2003), 및 ( 2005)에서 교환된 제어 메시지에 기초하여 미디어 시스템(2000)에서 설정될 수 있다. 일례에서, 데이터 평면 채널(2002)은 제어 평면 채널(2001)을 통해 교환된 제어 메시지에 기초하여 서버 디바이스(2010)와 클라이언트 디바이스(2060A) 사이에 설정될 수 있고; 데이터 평면 채널(2004)은 제어 평면 채널(2003)을 통해 교환된 제어 메시지에 기초하여 서버 디바이스(2010)와 클라이언트 디바이스(2060B) 사이에 설정될 수 있고; 데이터 평면 채널(2006)은 제어 평면 채널(2005)을 통해 교환된 제어 메시지에 기초하여 서버 디바이스(2010)와 클라이언트 디바이스(2060C) 사이에 설정될 수 있다. 일례에서, 데이터 평면 채널(2002), (2004) 및 (2006)은 UDP를 사용할 수 있고, 데이터 메시지의 단방향 송신을 수행할 수 있다.
일부 예에서, 제어 평면 채널(2001), (2003) 및 (2005)를 사용하여, 서버 디바이스(2010)는 클라이언트 디바이스(2060A), (2060B) 및 (2060C)의 클라이언트 특정 특성 및 지원되는 특징에 대한 정보를 획득할수 있다. 일례에서, 서버 디바이스(2010)는 제어 채널 평면(2001), (2003) 및 (2005)을 통해 각각의 미디어 클라이언트 디바이스로부터 정보를 요청하기 위해 클라이언트 디바이스(2060A), (2060B) 및 (2060C)에 대한 각각의 메시지를 생성할 수 있다. 정보는 미디어 클라이언트 디바이스의 컴퓨팅 자원, 미디어 클라이언트 디바이스의 스토리지 자원, 미디어 클라이언트 디바이스와 네트워크 서비스 공급자의 서비스 레벨 협정, 미디어 클라이언트 디바이스의 몰입형 애플리케이션 요구사항, 미디어 클라이언트 디바이스의 유형, 미디어 클라이언트 디바이스의 모델, 클라이언트 디바이스에서의 신경망 모델을 포함할 수 있지만 이에 한정되지 않는다. 클라이언트 디바이스(2060A), (2060B) 및 (2060C)는 제어 평면 채널(2001), (2003), 및 (2005)을 통해 서버 디바이스(2010)로부터 수신된 메시지에 대한 응답으로 요청된 정보를 제공할 수 있다. 일부 예에서, 클라이언트 디바이스(2060A), (2060B) 및 (2060C)는 클라이언트 특정 특성 및 지원되는 특징을 요청 없이 자발적으로 제공할 수 있다.
일부 예에서, 제어 평면 채널(2001), (2003), 및 (2005)을 통해 교환된 제어 메시지를 사용하여, 서버 디바이스(2010)는 미디어를 미디어 클라이언트 디바이스에 적응 및 배포하기 위한 고유한 세션 및 운영 컨텍스트를 확립함으로써 미디어 클라이언트 디바이스에 대한 미디어의 배포를 관리할 수 있다. 일부 예에서, 제어 평면 채널(2001), (2003), 및 (2005)을 통해 교환된 제어 메시지는 미디어 클라이언트 디바이스의 능력에 매칭시키기 위한 입력 미디어의 적응 프로세스에서 미디어 서버 디바이스(2010)를 도울 수 있다.
예를 들어, 서버 디바이스(2010)는 제어 평면 채널(2001)을 통해 교환된 제어 메시지에 기초하여 클라이언트 디바이스(2060A)와 제1 고유 세션(예: 데이터 평면 채널(2002))을 설정할 수 있다. 서버 디바이스(2010)는 클라이언트 디바이스(2060A)의 능력에 매칭되도록 입력 미디어로부터 적응되는 제1 미디어 스트림을 생성할 수 있다. 데이터 평면 채널(2002)은 클라이언트 디바이스(2060A)에 제1 미디어 스트림을 제공할 수 있다.
서버 디바이스(2010)는 제어 평면 채널(2003)을 통해 교환된 제어 메시지에 기초하여 클라이언트 디바이스(2060B)와 제2 고유 세션(예: 데이터 평면 채널(2004))을 설정할 수 있다. 서버 디바이스(2010)는 클라이언트 디바이스(2060B)의 능력과 매칭되도록 입력 미디어로부터 적응되는 제2 미디어 스트림을 생성할 수 있다. 데이터 평면 채널(2004)은 클라이언트 디바이스(2060B)에 제2 미디어 스트림을 제공할 수 있다.
서버 디바이스(2010)는 제어 평면 채널(2005)을 통해 교환된 제어 메시지에 기초하여 클라이언트 디바이스(2060C)와 제3 고유 세션(예: 데이터 평면 채널(2006))을 설정할 수 있다. 서버 디바이스(2010)는 클라이언트 디바이스(2060C)의 능력과 매칭되도록 입력 미디어로부터 적응되는 제3 미디어 스트림을 생성할 수 있다. 데이터 평면 채널(2006)은 클라이언트 디바이스(2060C)에 제3 미디어 스트림을 제공할 수 있다.
일부 예에서, 제어 평면 채널을 사용하여, 서버 디바이스(2010)는 미디어 클라이언트 디바이스가 예컨대, 특정 미디어 프레젠테이션에서, 컴퓨팅 또는 저장을 위한 클라이언트 디바이스의 자원를 보충하기 위해 네트워크에 의존할 필요가 있을 때 또는 필요한 경우 세션 동안 상황에 응답할 수 있다. 일례에서, 클라이언트 디바이스(2060B)는 제어 평면 채널(2003)을 통해 클라이언트 디바이스(2060B)가 컴퓨팅 자원(예: 렌더링을 위한 컴퓨팅 자원)을 보충하기 위해 네트워크에 의존할 필요가 있음을 서버 디바이스(2010)에 알린다. 서버 디바이스(2010)는 클라이언트 디바이스(2060B)에 보충 컴퓨팅 자원를 제공하기로 결정할 수 있다. 예를 들어, 서버 디바이스(2010)는 클라이언트 디바이스(2020B)를 위해 미디어 데이터에 대해 계산량이 많은(computation heavy) 미디어 처리를 수행할 수 있다.
일부 예에서, 제어 평면 채널을 사용하면 다수의 클라이언트 디바이스에 걸친 프레젠테이션을 위해 특징 미디어 자잔의 효율 적인 재사용이 콘텐츠 생성자, 예컨대 스튜디오 또는 클라이언트 디바이스에 의해 허용될 때 또는 허용되는 경우 그러한 효율적인 재사용을 가능하게 할 수 있다. 일례에서, 서버 디바이스(2010)는 클라이언트 디바이스(2060A)의 미디어 자산을 클라이언트 디바이스(2060B)에 재사용하기로 결정할 수 있다. 예를 들어, 서버 디바이스(2010)는 제어 평면 채널(2001)을 통해 클라이언트 디바이스(2060A)로부터 캐시(예: 스토리지(2099))에 있는 렌더링된 미디어 자산의 정보를 획득할 수 있고, 그 정보를 제어 평면 채널(2003)을 통해 클라이언트 디바이스(2060B)에 제공할 수 있다. 그러면 클라이언트 디바이스(2060B)는 정보에 따라 렌더링된 미디어 자산에 대한 캐시에 액세스할 수 있다. 스토리지(2099)는 클라이언트 디바이스(2060A)의 내부 구성요소일 수 있거나 클라이언트 디바이스(2060A)의 외부 구성요소일 수 있음에 유의한다.
다른 예에서, 서버 디바이스(2010)는 렌더링된 미디어 자산을 서버 디바이스(2010)로 되돌려 보내도록 클라이언트 디바이스(2060A)에 요청할 수 있고, 그런 다음 서버 디바이스(2010)는 수신된 미디어 자산을 클라이언트 디바이스(2060B)에 제공할 수 있다. 일례에서, 제어 평면 채널(2001)을 통해, 다른 데이터 평면 채널(2007)이 클라이언트 디바이스(2060A)에서 서버 디바이스(2010)로 렌더링된 미디어 자산을 다시 전송하도록 설정된다.
도 21은 본 개시의 일 실시예에 따른 프로세스(2100)를 개략적으로 설명하는 흐름도를 도시한다. 프로세스(2100)는 서버 디바이스(2010)와 같은 서버 디바이스에서 사용될 수 있다. 다양한 실시예에서, 프로세스(2100)는 서버 디바이스(2010) 등의 처리 회로(2030)와 같은, 처리 회로에 의해 실행된다. 일부 실시예에서, 프로세스(2100)는 소프트웨어 명령어로 구현되며, 따라서 처리 회로가 소프트웨어 명령어를 실행할 때, 처리 회로는 프로세스(2100)를 수행한다. 프로세스는 (S2101)에서 시작하여 (S2110)으로 진행한다.
(S2110)에서, 서버 디바이스는 제1 전송 프로토콜을 사용하는 제어 평면 채널을 통해 복수의 제어 메시지를 클라이언트 디바이스와 교환한다. 복수의 제어 메시지는 몰입형 미디어 배포를 위한 양방향 프로토콜의 제어 평면에 속한다. 몰입형 미디어 배포를 위한 양방향 프로토콜은 일례에서 개방형 시스템 상호연결(open system interconnection, OSI) 모델에서의 애플리케이션 계층, 프레젠테이션 계층 등과 같은 전송 계층 위의 네트워크 계층에서 구현될 수 있다.
(S2120)에서, 서버 디바이스는 제2 전송 프로토콜을 사용하는 제1 데이터 평면 채널을 통해 제1 복수의 데이터 메시지를 클라이언트 디바이스에 송신한다. 제1 복수의 데이터 메시지는 양방향 프로토콜의 데이터 평면에 속하며 3D 그래픽 데이터와 같은 적어도 몰입형 미디어 콘텐츠를 실어 전달한다.
일부 예에서, 제1 전송 프로토콜은 송신 제어 프로토콜(TCP)이고 제2 전송 프로토콜은 사용자 데이터그램 프로토콜(UDP)이다.
일부 예에서, 제1 전송 프로토콜은 연결 기반 전송 프로토콜이고 양방향일 수 있다. 제2 전송 프로토콜은 무연결 전송 프로토콜이고 단방향일 수 있다.
일부 예에서, 서버 디바이스는 제어 평면 채널을 통해 교환되는 복수의 제어 메시지에 따라 클라이언트 디바이스와의 제1 데이터 평면 채널을 설정할 수 있다.
일부 예에서, 서버 디바이스는 제어 평면 채널을 통해 클라이언트 디바이스의 하나 이상의 특정 특성을 수신할 수 있고, 하나 이상의 특정 특성에 따라 제1 복수의 데이터 메시지에 실려 전달되는 미디어 스트림을 적응시킬 수 있다. 일부 예에서, 하나 이상의 특정 특성은 클라이언트 디바이스의 컴퓨팅 자원, 클라이언트 디바이스의 스토리지 자원, 클라이언트 디바이스에서의 네트워크 서비스 공급자의 서비스 레벨 협정, 몰입형 애플리케이션 요구사항 클라이언트 디바이스의 유형, 클라이언트 디바이스의 모델 및 클라이언트 디바이스에서의 신경망 모델 중 적어도 하나를 포함할 수 있다.
일부 예에서, 서버 디바이스는 클라이언트 디바이스로부터 제2 전송 프로토콜을 사용하는 제2 데이터 평면 채널을 통해 제2 복수의 데이터 메시지를 수신할 수 있다. 제2 복수의 데이터 메시지는 클라이언트 디바이스에서의 신경망 모델의 계층 정보 및 클라이언트 디바이스에 의한 렌더링된 미디어 콘텐츠 중 적어도 하나를 실어 전달한다. 일례에서, 서버 디바이스는 클라이언트 디바이스에 의해 렌더링된 미디어 콘텐츠를 다른 클라이언트 디바이스에 전송할 수 있다.
일부 실시예에서, 클라이언트 디바이스는 제1 클라이언트 디바이스이고, 복수의 제어 메시지는 서버 디바이스가 몰입형 미디어 콘텐츠를 제2 클라이언트 디바이스와 공유할 수 있게 한다. 일례에서, 서버 디바이스는 서버 디바이스로부터의 요청에 대한 응답으로, 제1 클라이언트 디바이스로부터 제어 평면 채널을 통해, 공유 가능한 자산 유형 및 변경할 수 없는 스토리지에 캐싱된 자산에 대한 통합 자원 식별자(URIs)의 목록을 수신할 수 있다. 다른 예에서, 서버 디바이스는 서비스 디바이스로부터의 요청에 대한 응답으로, 제어 평면 채널을 통해 제1 클라이언트 디바이스에 의해 액세스 가능한 각각의 자산의 상태 업데이트를 수신할 수 있다. 다른 예에서, 서버 디바이스는 서버 디바이스로부터의 요청에 대한 응답으로, 제1 클라이언트 디바이스로부터 제어 평면 채널을 통해 특정 자산 유형의 현재 상태와, 특정 서버 할당 식별자 및 특정 자산 통합 자원 식별자(URI) 중 하나를 수신할 수 있다. 서버 디바이스는 서버 디바이스와 제2 클라이언트 디바이스 사이의 제어 평면 채널을 통해 제어 메시지를 제2 클라이언트 디바이스에 제공할 수 있고, 제어 메시지는 제2 클라이언트 디바이스가 캐싱된 자산과 같은, 제1 클라이언트 디바이스의 몰입형 미디어 콘텐츠에 액세스하게 할 수 있다.
그 다음에, 프로세스는 (S2199)로 진행하고 종료한다.
프로세스(2100)는 적절하게 적응될 수 있다. 프로세스(2100)의 단계(들)는 수정 및/또는 생략될 수 있다. 추가 단계를 추가할 수 있다. 임의의 적합한 구현 순서가 사용될 수 있다.
도 22는 본 개시의 일 실시예에 따른 프로세스(2200)를 개략적으로 설명하는 흐름도를 도시한다. 프로세스(2200)는 클라이언트 디바이스(2060A), 클라이언트 디바이스(2060B), 클라이언트 디바이스(2060C) 등과 같은 클라이언트 디바이스에서 사용될 수 있다. 다양한 실시예에서, 프로세스(2200)는 처리 회로(2070A), 처리 회로(2070B), 처리 회로(2070C) 등과 같은 처리 회로에 의해 실행된다. 일부 실시예에서, 프로세스(2200)는 소프트웨어 명령어로 구현되며, 따라서 처리 회로가 소프트웨어 명령어를 실행할 때, 처리 회로는 프로세스(2200)를 수행한다. 프로세스는 (S2201)에서 시작하여 (S2210)으로 진행한다.
(S2210)에서, 클라이언트 디바이스는 제1 전송 프로토콜을 사용하는 제어 평면 채널을 통해 복수의 제어 메시지를 서버 디바이스와 교환한다. 복수의 제어 메시지는 몰입형 미디어 배포를 위한 양방향 프로토콜의 제어 평면에 속한다. 몰입형 미디어 배포를 위한 양방향 프로토콜은 일례에서 개방형 시스템 상호연결(OSI) 모델에서의 애플리케이션 계층, 프레젠테이션 계층 등과 같은 전송 계층 위의 네트워크 계층에서 구현될 수 있다.
(S2220)에서, 클라이언트 디바이스는 제2 전송 프로토콜을 사용하는 제1 데이터 평면 채널을 통해 제1 복수의 데이터 메시지를 서버 디바이스로부터 수신한다. 제1 복수의 데이터 메시지는 양방향 프로토콜의 데이터 평면에 속하고 적어도 몰입형 미디어 콘텐츠를 실어 전달한다
(S2230)에서, 클라이언트 디바이스는 제1 복수의 데이터 메시지에 실려 전달되는 몰입형 미디어 콘텐츠를 제시할 수 있다.
일부 예에서, 제1 전송 프로토콜은 송신 제어 프로토콜(TCP)이고 제2 전송 프로토콜은 사용자 데이터그램 프로토콜(UDP)이다.
일부 예에서, 제1 전송 프로토콜은 연결 기반 전송 프로토콜이고 양방향이며, 제2 전송 프로토콜은 무연결 전송 프로토콜이고 단방향이다.
일부 예에서, 클라이언트 디바이스는 제어 평면 채널을 통해 교환되는 복수의 제어 메시지에 따라 서버 디바이스와의 제1 데이터 평면 채널을 설정한다.
일부 예에서, 클라이언트 디바이스는 클라이언트 디바이스의 하나 이상의 특정 특성을 제어 평면 채널을 통해 서버 디바이스에 제공한다. 하나 이상의 특정 특성은 클라이언트 디바이스의 컴퓨팅 자원, 클라이언트 디바이스의 스토리지 자원, 클라이언트 디바이스에서의 네트워크 서비스 공급자의 서비스 레벨 협정약, 몰입형 애플리케이션 요구사항, 클라이언트 디바이스의 유형, 클라이언트 디바이스의 모델 및 클라이언트 디바이스의 신경망 모델 중 적어도 하나를 포함한다.
일부 예에서, 클라이언트 디바이스는 제2 전송 프로토콜을 사용하는 제2 데이터 평면 채널을 통해 제2 복수의 데이터 메시지를 서버 디바이스에 송신할 수 있다. 제2 복수의 데이터 메시지는 클라이언트 디바이스에서의 신경망 모델의 계층 정보 또는 클라이언트 디바이스에 의한 렌더링된 미디어 콘텐츠 중 적어도 하나를 실어 전달한다.
일부 예에서, 클라이언트 디바이스는 제1 클라이언트 디바이스이고, 복수의 제어 메시지는 서버 디바이스가 몰입형 미디어 콘텐츠를 제2 클라이언트 디바이스와 공유할 수 있게 한다. 일례에서, 제1 클라이언트 디바이스는 서버 디바이스로부터의 요청에 응답하여, 공유 가능한 자산 유형 및 제어 평면 채널을 통해 변경 불가능한 스토리지에 캐시된 자산에 대한 통합 자원 식별자(URIs)를 제공한다. 다른 예에서, 제1 클라이언트 디바이스는 서버 디바이스로부터의 요청에 응답하여, 제어 평면 채널을 통해 제1 클라이언트 디바이스에 의해 액세스 가능한 각 자산의 상태 업데이트를 제공한다. 다른 예에서, 제1 클라이언트 디바이스는 서버 디바이스로부터의 요청에 응답하여, 제어 평면 채널을 통해 특정 자산 유형의 현재 상태와, 특정 서버 할당 식별자 및 특정 자산 통합 자원 식별자(URI) 중 하나를 제공한다. 서버 디바이스는 캐싱된 자산과 같은, 몰입형 미디어 콘텐츠에 액세스하도록 제2 클라이언트 디바이스를 제어하기 위해 제1 클라이언트 디바이스로부터 수신된 정보를 사용할 수 있다.
그 다음에, 처리는 (S2299)로 진행하여 종료한다.
프로세스(2200)는 적절하게 적응될 수 있다. 프로세스(2200)의 단계(들)는 수정 및/또는 생략될 수 있다. 추가 단계가 추가될 수 있다. 임의의 적합한 구현 순서가 사용될 수 있다.
전술한 기술은 컴퓨터로 판독 가능한 명령어를 사용하여 컴퓨터 소프트웨어로 구현될 수 있고 하나 이상의 컴퓨터로 판독 가능한 매체에 물리적으로 저장될 수 있다. 예를 들어, 도 23은 개시된 주제의 특정 실시예를 구현하기에 적합한 컴퓨터 시스템(2300)을 도시한다.
컴퓨터 소프트웨어는 컴퓨터 중앙 처리 유닛(central processing unit, CPU), 그래픽 처리 유닛(graphics processing unit, GPU) 등에 의해, 어셈블리(assembly), 컴파일(compilation), 링킹(linking), 또는 이와 유사한 메커니즘을 거쳐 직접, 또는 해석(interpretation), 마이크로 코드 실행(micro-code execution) 등을 통해 실행될 수 있는 명령어를 포함하는 코드를 생성할 수 있는 임의의 적절한 기계어 코드 또는 컴퓨터 언어를 사용하여 코딩될 수 있다.
명령어는, 예를 들어 개인용 컴퓨터, 태블릿 컴퓨터, 서버, 스마트폰, 게이밍 기기, 사물 인터넷 기기 등을 포함한, 다양한 유형의 컴퓨터 또는 그 구성요소에서 실행될 수 있다.
도 23의 컴퓨터 시스템(2300)의 구성요소는 본질적으로 예시적인 것이며, 본 개시의 실시예를 구현하는 컴퓨터 소프트웨어의 사용 또는 기능의 범위에 대한 어떠한 한정도 시사하려는 것은 아니다. 구성요소의 구성은 컴퓨터 시스템(2300)의 예시적인 실시예에 나타낸 구성요소 중 어느 하나 또는 조합과 관련된 임의의 종속성 또는 요건을 가지는 것으로 해석되어서는 안 된다.
컴퓨터 시스템(2300)은 특정 휴먼 인터페이스 입력 기기(human interface input device)를 포함할 수 있다. 이러한 휴먼 인터페이스 입력 기기는 한 명 이상의 인간 사용자에 의한 입력, 예를 들어 촉각 입력(예: 키 누름(keystroke), 스와이프(swip), 데이터 장갑 움직임), 오디오 입력(예: 음성, 박수), 시각적 입력(예: 제스처), 후각 입력(도시되지 않음)에 입력에 응답할 수 있다. 휴먼 인터페이스 기기는 또한 오디오(예: 음성, 음악, 주변 소리), 이미지(예: 스캔된 이미지, 정지 이미지 카메라로부터 획득한 픽처 이미지), 비디오(예: 2차원 비디오, 입체 비디오(stereoscopic video)를 포함한 3차원 비디오)와 같은, 사람에 의한 의식적 입력과 반드시 직접 관련이 있는 것은 아닌 특정 미디어를 캡처하는 데 사용될 수도 있다.
입력 휴먼 인터페이스 기기는 키보드(2301), 마우스(2302), 트랙 패드(2303), 터치 스크린(2310), 데이터 장갑(도시되지 않음), 조이스틱(2305), 마이크로폰(2306), 스캐너(2307), 카메라(2308) 중 하나 이상(각각 하나만 표시됨)을 포함할 수 있다.
컴퓨터 시스템(2300)은 특정 휴먼 인터페이스 출력 기기를 포함할 수 있다. 이러한 휴먼 인터페이스 출력 기기는 예를 들어 촉각 출력, 소리, 빛 및 냄새/맛을 통해, 한 명 이상의 인간 사용자의 감각을 자극할 수 있다. 이러한 휴먼 인터페이스 출력 기기는 촉각 출력 기기(예: 터치 스크린(2310), 데이터 장갑(도시되지 않음), 또는 조이스틱(2305)에 의한 촉각 피드백이지만, 입력 기기의 역할을 하지 않는 촉각 피드백 기기도 있을 수 있음), 오디오 출력 기기(예: 스피커(2309), 헤드폰(도시되지 않음)), 시각적 출력 기기(예: 각각 터치 스크린 입력 기능이 있거나 없는, 각각 촉각 피드백 기능이 있거나 없는, CRT 스크린, LCD 스크린, 플라즈마 스크린, OLED 스크린을 포함한, 스크린(2310) - 그 일부는 스테레오그래픽 출력(stereographic), 가상 현실 안경(virtual-reality glasses)(도시되지 않음), 홀로그래픽 디스플레이(holographic display) 및 연기 탱크(smoke tank)(도시되지 않음)와 같은 수단을 통해 2차원 시각적 출력 또는 3차원 이상의 출력을 할 수 있음 -), 및 프린터(도시되지 않음)를 포함할 수 있다.
컴퓨터 시스템(2300)은 또한 CD/DVD 등의 매체(2321)를 갖는 CD/DVD ROM RW(2320)을 포함한 광학 매체, 썸 드라이브(thumb-drive)(2322), 착탈 가능한 하드 드라이브 또는 솔리드 스테이트 드라이브(2323), 테이프 및 플로피 디스크(도시되지 않음)와 같은 레거시 자기 매체, 보안 동글(security dongle)(도시되지 않음)과 같은 특수한 ROM/ASIC/PLD 기반 기기 등의 인간이 액세스 가능할 수 있는 저장 기기 및 그 연관 매체를 포함할 수도 있다.
당업자는 또한 현재 개시된 주제와 관련하여 사용된 바와 같이 컴퓨터로 판독 가능한 매체"라는 용어가 송신 매체, 반송파(carrier wave) 또는 기타 일시적인 신호를 포함하지 않는다는 것을 이해해야 한다.
컴퓨터 시스템(2300)은 또한 하나 이상의 통신 네트워크(2355)에 대한 인터페이스(2354)를 포함할 수 있다. 네트워크는 예를 들어 무선, 유선, 광 등의 네트워크일 수 있다. 네트워크는 또한 로컬, 광역, 대도시, 차량 및 산업, 실시간, 지연 허용 등의 네트워크일 수 있다. 네트워크의 예로는 이더넷, 무선 LAN, GSM, 3G, 4G, 5G, LTE, 등을 포함하는 셀룰러 네트워크, 케이블 TV, 위성 TV, 및 지상파 방송 TV를 포함하는 TV 유선 또는 무선 광역 디지털 네트워크, CANbus를 포함하는 차량 및 산업용, 등을 포함한다. 특정 네트워크는 일반적으로 특정 범용 데이터 포트 또는 주변 버스(2349)(예: 컴퓨터 시스템(2300)의 USB 포트)에 부착된 외부 네트워크 인터페이스 어댑터)를 필요로 하며; 다른 것은 일반적으로 이하에 설명하는 바와 같이 시스템 버스에 부착함으로써 컴퓨터 시스템(2300)의 코어에 통합된다(예: PC 컴퓨터 시스템에의 이더넷 인터페이스 또는 스마트폰 컴퓨터 시스템에의 셀룰러 네트워크 인터페이스). 이러한 네트워크 중 임의의 것을 사용하여, 컴퓨터 시스템(2300)은 다른 네트워크와 통신할 수 있다. 이러한 통신은 단방향, 수신 전용(예: TV 방송), 단방향 전송 전용(예: CANbus에서 특정 CANbus 기기로) 또는 양방향(예: 로컬 또는 광역 디지털 네트워크를 사용하여 다른 컴퓨터 시스템으로)일 수 있다. 특정 프로토콜 및 프로토콜 스택이 전술한 바와 같은 네트워크 및 네트워크 인터페이스 각각에 사용될 수 있다.
전술한 휴먼 인터페이스 기기, 인간이 액세스 가능한 저장 기기 및 네트워크 인터페이스는 컴퓨터 시스템(2300)의 코어(2340)에 부착될 수 있다.
코어(2340)는 하나 이상의 중앙 처리 유닛(CPU)(2341), 그래픽 처리 유닛(GPU)(2342), 필드 프로그래머블 게이트 어레이(Field Programmable Gate Area, FPGA)(2343) 형태의 특화된 프로그램 가능한 처리 유닛, 특정 태스크를 위한 하드웨어 가속기(2344), 그래픽 어댑터(2350) 등을 포함할 수 있다. 판독 전용 메모리(Read-only memory, ROM)(2345), 랜덤 액세스 메모리(2346), 사용자가 액세스할 수 없는 내부 하드 드라이브, SSD 등의 내부 대용량 저장장치(2347)와 함께, 이러한 기기는 시스템 버스(2348)을 통해 연결될 수 있다. 일부 컴퓨터 시스템에서, 시스템 버스(2348)는 추가적인 CPU, GPU 등에 의한 확장을 가능하게 하는 하나 이상의 물리 플러그의 형태로 액세스 가능할 수 있다. 주변 기기는 코어의 시스템 버스(2348)에 직접 연결되거나 주변 버스(2349)를 통해 연결될 수 있다. 일례에서, 스크린(2310)이 그래픽 어댑터(2350)에 연결될 수 있다. 주변 버스를 위한 아키텍처로는 PCI, USB 등을 포함한다.
CPU(2341), GPU(2342), FPGA(2343) 및 가속기(2344)는, 조합하여, 전술한 컴퓨터 코드를 구성할 수 있는 특정 명령어를 실행할 수 있다. 그 컴퓨터 코드는 ROM(2345) 또는 RAM(2346)에 저장될 수 있다. 이행 데이터(transitional data)는 RAM(2346)에도 저장될 수 있는 반면, 영구 데이터는 예를 들어, 내부 대용량 저장장치(2347)에 저장될 수 있다. 메모리 소자 중 어느 것에 대한 빠른 저장 및 검색은, 하나 이상의 CPU(2341), GPU(2342), 대용량 저장장치(2347), ROM(2345), RAM(2346) 등과 밀접하게 연관될 수 있는 캐시 메모리의 사용을 통해 가능해질 수 있다.
컴퓨터로 판독 가능한 매체는 다양한 컴퓨터로 구현되는 동작(computer-implemented operation)을 수행하기 위한 컴퓨터 코드를 가질 수 있다. 매체 및 컴퓨터 코드는 본 개시의 목적을 위해 특별히 설계되고 구축된 것일 수 있거나, 컴퓨터 소프트웨어 분야의 당업자에게 잘 알려져 있고 이용 가능한 종류일 수 있다.
한정이 아닌 예로서, 아키텍처(2300), 구체적으로 코어(2340)를 갖는 컴퓨터 시스템은 하나 이상의 유형의 컴퓨터로 판독 가능한 매체에 구현된 소프트웨어 실행하는 프로세서(들)(CPU, GPU, FPGA, 가속기 등을 포함)의 결과로서 기능을 제공할 수 있다. 이러한 컴퓨터로 판독 가능한 매체는 위에서 소개한 바와 같이 사용자가 액세스할 수 있는 대용량 저장장치와 연관된 매체일 수 있을 뿐만 아니라 코어 내부 대용량 저장장치(2347) 또는 ROM(2345)과 같은, 비일시적인 성질의 코어(2340)의 특정 저장장치일 수 있다. 본 개시의 다양한 실시예를 구현하는 소프트웨어는 이러한 기기에 저장되고 코어(2340)에 의해 실행될 수 있다. 컴퓨터로 판독 가능한 매체는 구체적인 필요에 따라, 하나 이상의 메모리 소자 또는 칩을 포함할 수 있다. 소프트웨어는 코어(2340) 및 특히 내부의 프로세서(CPU, GPU, FPGA 등 포함)로 하여금 RAM(2346)에 저장된 데이터 구조를 정의하고 소프트웨어에 의해 정의된 프로세스에 따라 이러한 데이터 구조를 수정하는 것을 포함하여, 여기에 설명된 특정 프로세스 또는 특정 프로세스의 특정 부분을 실행하도록 할 수 있다. 추가로 또는 대안으로서, 컴퓨터 시스템은 여기에 설명된 특정 프로세스 또는 특정 프로세스의 특정 부분을 실행하기 위해 소프트웨어 대신 또는 소프트웨어와 함께 작동할 수 있는, 논리 배선(logic hardwired)의 결과로서 그렇지 않으면 회로(예: 가속기(2344))에 다른 방식으로 구현되는 기능을 제공할 수 있다. 소프트웨어에 대한 언급은 논리를 포함할 수 있으며, 적절한 경우 그 반대도 마찬가지이다. 컴퓨터로 판독 가능한 매체에 대한 언급은 실행을 위한 소프트웨어를 저장하는 회로(예: 집적 회로(IC)), 실행을 위한 논리를 구현하는 회로, 또는 적절한 경우 둘 다를 포함할 수 있다. 본 개시는 하드웨어와 소프트웨어의 임의의 적절한 조합을 포함한다.
본 개시는 몇몇 예시적인 실시예를 설명했지만, 본 개시의 범위 내에 속하는 변경, 순열 및 다양한 대체 등가물이 있다. 따라서, 당업자는 본 명세서에 명시적으로 도시되지 않거나 설명되지 않았지만, 본 개시의 원리를 구현하고 따라서 본 개의 사상 및 범위 내에 있는 수많은 시스템 및 방법을 고안할 수 있다는 것을 이해할 것이다.

Claims (20)

  1. 클라이언트 디바이스에서의 미디어 스트리밍 방법으로서,
    제1 전송 프로토콜을 사용하는 제어 평면 채널을 통해 서버 디바이스와 복수의 제어 메시지를 교환하는 단계 - 상기 복수의 제어 메시지는 몰입형 미디어 배포를 위한 양방향 프로토콜의 제어 평면에 속함 -;
    제2 전송 프로토콜을 사용하는 제1 데이터 평면 채널을 통해 상기 서버 디바이스로부터 제1 복수의 데이터 메시지를 수신하는 단계 - 상기 제1 복수의 데이터 메시지는 상기 양방향 프로토콜의 데이터 평면에 속하고 몰입형 미디어 콘텐츠를 실어 전달함 -; 및
    상기 제1 복수의 데이터 메시지에 실려 전달되는 상기 몰입형 미디어 콘텐츠를 제시하는 단계
    를 포함하는 미디어 스트리밍 방법.
  2. 제1항에 있어서,
    상기 제1 전송 프로토콜은 송신 제어 프로토콜(transmission control protocol, TCP)이고, 상기 제2 전송 프로토콜은 사용자 데이터그램 프로토콜(user datagram protocol, UDP)인, 미디어 스트리밍 방법.
  3. 제1항에 있어서,
    상기 제1 전송 프로토콜은 연결 기반 전송 프로토콜이고, 상기 제2 전송 프로토콜은 무연결 전송 프로토콜인, 미디어 스트리밍 방법.
  4. 제1항에 있어서,
    상기 제어 평면 채널을 통해 교환되는 상기 복수의 제어 메시지에 따라 상기 서버 디바이스와 상기 제1 데이터 평면 채널을 설정하는 단계를 더 포함하는 미디어 스트리밍 방법.
  5. 제1항에 있어서,
    상기 클라이언트 디바이스의 하나 이상의 특정 특성을 상기 제어 평면 채널을 통해 상기 서버 디바이스에 제공하는 단계를 더 포함하며,
    상기 하나 이상의 특정 특성은,
    상기 클라이언트 디바이스의 컴퓨팅 자원;
    상기 클라이언트 디바이스의 저장 자원;
    상기 클라이언트 디바이스에서의 네트워크 서비스 공급자의 서비스 레벨 협약;
    몰입형 애플리케이션 요구사항
    상기 클라이언트 디바이스의 유형;
    상기 클라이언트 디바이스의 모델; 및
    상기 클라이언트 디바이스의 신경망 모델 중 적어도 하나를 포함하는, 미디어 스트리밍 방법.
  6. 제1항에 있어서,
    상기 제2 전송 프로토콜을 사용하는 제2 데이터 평면 채널을 통해 상기 서버 디바이스에 제2 복수의 데이터 메시지를 송신하는 단계를 더 포함하며,
    상기 제2 복수의 데이터 메시지는,
    상기 클라이언트 디바이스에서의 신경망 모델의 계층 정보; 및
    상기 클라이언트 디바이스에 의한 렌더링된 미디어 콘텐츠 중 적어도 하나를 실어 전달하는, 미디어 스트리밍 방법.
  7. 제1항에 있어서,
    상기 클라이언트 디바이스는 제1 클라이언트 디바이스이고, 상기 복수의 제어 메시지는 상기 서버 디바이스가 상기 몰입형 미디어 콘텐츠를 제2 클라이언트 디바이스와 공유할 수 있게 하는, 미디어 스트리밍 방법.
  8. 제7항에 있어서,
    상기 복수의 제어 메시지를 교환하는 단계는,
    상기 서버 디바이스로부터의 요청에 응답하여, 상기 제어 평면 채널을 통해 공유 가능한 자산 유형과 변경할 수 없는 스토리지에 캐싱되는 상기 자산에 대한 통합 자원 식별자들(uniform resource identifiers, URIs)의 목록을 제공하는 단계를 더 포함하는, 미디어 스트리밍 방법.
  9. 제7항에 있어서,
    상기 복수의 제어 메시지를 교환하는 단계는,
    상기 서버 디바이스로부터의 요청에 응답하여, 상기 제어 평면 채널을 통해 상기 제1 클라이언트 디바이스에 의해 액세스 가능한 각각의 자산의 상태 업데이트를 제공하는 단계를 더 포함하는, 미디어 스트리밍 방법.
  10. 제7항에 있어서,
    상기 복수의 제어 메시지를 교환하는 단계는,
    상기 서버 디바이스로부터의 요청에 응답하여, 상기 제어 평면 채널을 통해 특정 자산 유형의 현재 상태와, 특정 서버 할당 식별자 및 특정 자산 통합 자원 식별자(URI) 중 하나를 제공하는 단계를 더 포함하는, 미디어 스트리밍 방법.
  11. 미디어 스트리밍을 위한 장치로서,
    처리 회로를 포함하고,
    상기 처리 회로는,
    제1 전송 프로토콜을 사용하는 제어 평면 채널을 통해 서버 디바이스와 복수의 제어 메시지를 교환하고 - 상기 복수의 제어 메시지는 몰입형 미디어 배포를 위한 양방향 프로토콜의 제어 평면에 속함 -;
    제2 전송 프로토콜을 사용하는 제1 데이터 평면 채널을 통해 상기 서버 디바이스로부터 제1 복수의 데이터 메시지를 수신하고 - 상기 제1 복수의 데이터 메시지는 상기 양방향 프로토콜의 데이터 평면에 속하고 몰입형 미디어 콘텐츠를 실어 전달함 -; 및
    상기 제1 복수의 데이터 메시지에 실려 전달되는 상기 몰입형 미디어 콘텐츠를 제시하도록 구성되는,
    장치.
  12. 제11항에 있어서,
    상기 제1 전송 프로토콜은 송신 제어 프로토콜(TCP)이고, 상기 제2 전송 프로토콜은 사용자 데이터그램 프로토콜(UDP)인, 장치.
  13. 제11항에 있어서,
    상기 제1 전송 프로토콜은 연결 기반 전송 프로토콜이고, 상기 제2 전송 프로토콜은 무연결 전송 프로토콜인, 장치.
  14. 제11항에 있어서,
    상기 처리 회로는 상기 제어 평면 채널을 통해 교환되는 상기 복수의 제어 메시지에 따라 상기 서버 디바이스와 상기 제1 데이터 평면 채널을 설정하도록 구성되는, 장치.
  15. 제11항에 있어서,
    상기 처리 회로는 상기 장치의 하나 이상의 특정 특성을 상기 제어 평면 채널을 통해 상기 서버 디바이스에 제공하도록 구성되며,
    상기 하나 이상의 특정 특성은,
    상기 장치의 컴퓨팅 자원;
    상기 장치의 저장 자원;
    상기 장치에서의 네트워크 서비스 공급자의 서비스 레벨 협약;
    몰입형 애플리케이션 요구사항
    상기 장치의 유형;
    상기 장치의 모델; 및
    상기 장치의 신경망 모델 중 적어도 하나를 포함하는, 장치.
  16. 제11항에 있어서,
    상기 처리 회로는 상기 제2 전송 프로토콜을 사용하는 제2 데이터 평면 채널을 통해 상기 서버 디바이스에 제2 복수의 데이터 메시지를 송신하도록 구성되며,
    상기 제2 복수의 데이터 메시지는,
    상기 장치에서의 신경망 모델의 계층 정보; 및
    상기 장치에 의한 렌더링된 미디어 콘텐츠 중 적어도 하나를 실어 전달하는, 장치.
  17. 제1항에 있어서,
    상기 장치는 제1 클라이언트 디바이스이고, 상기 복수의 제어 메시지는 상기 서버 디바이스가 상기 몰입형 미디어 콘텐츠를 제2 클라이언트 디바이스와 공유할 수 있게 하는, 장치.
  18. 제17항에 있어서,
    상기 처리 회로는 상기 서버 디바이스로부터의 요청에 응답하여, 상기 제어 평면 채널을 통해 공유 가능한 자산 유형과 변경할 수 없는 스토리지에 캐싱되는 상기 자산에 대한 통합 자원 식별자들(URIs)의 목록을 제공하도록 구성되는, 장치.
  19. 제17항에 있어서,
    상기 처리 회로는 상기 서버 디바이스로부터의 요청에 응답하여, 상기 제어 평면 채널을 통해 상기 제1 클라이언트 디바이스에 의해 액세스 가능한 각각의 자산의 상태 업데이트를 제공하도록 구성되는, 장치.
  20. 제17항에 있어서,
    상기 처리 회로는 상기 서버 디바이스로부터의 요청에 응답하여, 상기 제어 평면 채널을 통해 특정 자산 유형의 현재 상태와, 특정 서버 할당 식별자 및 특정 자산 통합 자원 식별자(URI) 중 하나를 제공하도록 구성되는, 장치.
KR1020237023890A 2021-06-30 2022-06-30 제어 및 데이터 평면 채널을 사용하는 양방향 프레젠테이션데이터스트림 KR20230118181A (ko)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US202163217049P 2021-06-30 2021-06-30
US63/217,049 2021-06-30
US17/851,838 US20230007361A1 (en) 2021-06-30 2022-06-28 Bidirectional presentation datastream using control and data plane channels
US17/851,838 2022-06-28
PCT/US2022/073296 WO2023279051A1 (en) 2021-06-30 2022-06-30 Bidirectional presentation datastream using control and data plane channels

Publications (1)

Publication Number Publication Date
KR20230118181A true KR20230118181A (ko) 2023-08-10

Family

ID=84693005

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237023890A KR20230118181A (ko) 2021-06-30 2022-06-30 제어 및 데이터 평면 채널을 사용하는 양방향 프레젠테이션데이터스트림

Country Status (6)

Country Link
US (1) US20230007361A1 (ko)
EP (1) EP4169179A4 (ko)
JP (1) JP2023544383A (ko)
KR (1) KR20230118181A (ko)
CN (1) CN116235429B (ko)
WO (1) WO2023279051A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102711305B1 (ko) * 2024-03-29 2024-09-30 주식회사 소울엑스 콘텐츠 제작 서비스 장치 및 그 장치의 구동방법

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4209838A (en) * 1976-12-20 1980-06-24 Sperry Rand Corporation Asynchronous bidirectional interface with priority bus monitoring among contending controllers and echo from a terminator
US20060140146A1 (en) * 2003-07-03 2006-06-29 Johannes Funk Method for controlling data circuits
US9021134B1 (en) * 2006-03-03 2015-04-28 Juniper Networks, Inc. Media stream transport conversion within an intermediate network device
US9055278B2 (en) * 2009-01-07 2015-06-09 Dolby Laboratories Licensing Corporation Conversion, correction, and other operations related to multiplexed data sets
US11277598B2 (en) * 2009-07-14 2022-03-15 Cable Television Laboratories, Inc. Systems and methods for network-based media processing
US8819726B2 (en) * 2010-10-14 2014-08-26 Cyandia, Inc. Methods, apparatus, and systems for presenting television programming and related information
US8755342B2 (en) * 2011-10-05 2014-06-17 Cisco Technology, Inc. System and method for dynamic bearer selection for immersive video collaboration in mobile wireless networks
BR112015006455B1 (pt) * 2012-10-26 2022-12-20 Apple Inc Terminal móvel, servidor operável para adaptação de multimídia com base em orientação de vídeo, método para adaptação de multimídia em um servidor com base em orientação de dispositivo de um terminal móvel e meio de armazenamento legível por máquina
US9462089B1 (en) * 2013-03-15 2016-10-04 Kaazing Corporation Communication channels
US10250673B1 (en) * 2014-03-14 2019-04-02 Amazon Technologies, Inc. Storage workload management using redirected messages
US9648073B2 (en) 2014-04-10 2017-05-09 Qualcomm Incorporated Streaming control for real-time transport protocol
US11064003B2 (en) * 2016-03-07 2021-07-13 Lg Electronics Inc. Method and apparatus for receiving streaming via transport protocol in wireless communication system
US10020025B2 (en) * 2016-07-22 2018-07-10 Zeality Inc. Methods and systems for customizing immersive media content
US10148356B2 (en) * 2016-09-16 2018-12-04 International Business Machines Corporation Data transfer over bi-directional links leveraging counter-propagating back channel for low-latency responses
US10348784B2 (en) * 2017-02-15 2019-07-09 Microsoft Technology Licensing, Llc Conferencing server directly accessible from public internet
US10735825B1 (en) * 2019-02-07 2020-08-04 Disney Enterprises, Inc. Coordination of media content delivery to multiple media players
US11050977B2 (en) * 2019-06-18 2021-06-29 Tmrw Foundation Ip & Holding Sarl Immersive interactive remote participation in live entertainment
DE102020120923A1 (de) * 2019-08-08 2021-02-11 Intel Corporation Geräte, systeme und verfahren für immersives live-streaming und echtzeitkommunikation
US11516152B2 (en) * 2019-09-28 2022-11-29 Tencent America LLC First-in first-out function for segmented data stream processing
US11637929B2 (en) * 2020-12-02 2023-04-25 Avaya Management L.P. Efficient media establishment for WebRTC call center agents

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102711305B1 (ko) * 2024-03-29 2024-09-30 주식회사 소울엑스 콘텐츠 제작 서비스 장치 및 그 장치의 구동방법

Also Published As

Publication number Publication date
JP2023544383A (ja) 2023-10-23
EP4169179A1 (en) 2023-04-26
US20230007361A1 (en) 2023-01-05
WO2023279051A1 (en) 2023-01-05
CN116235429A (zh) 2023-06-06
CN116235429A8 (zh) 2024-05-17
CN116235429B (zh) 2024-09-27
EP4169179A4 (en) 2023-12-13

Similar Documents

Publication Publication Date Title
US20230319328A1 (en) Reference of neural network model for adaptation of 2d video for streaming to heterogeneous client end-points
US20240292041A1 (en) Adaptation of 2d video for streaming to heterogenous client end-points
US20240179203A1 (en) Reference of neural network model by immersive media for adaptation of media for streaming to heterogenous client end-points
US11570227B2 (en) Set up and distribution of immersive media to heterogenous client end-points
US12058193B2 (en) Bidirectional presentation datastream
CN116235429B (zh) 进行媒体流式传输的方法、设备及计算机可读存储介质
US20240357000A1 (en) Bidirectional presentation data stream
US20230370666A1 (en) Streaming scene prioritizer for immersive media
US20230338834A1 (en) Smart client for streaming of scene-based immersive media to game engine

Legal Events

Date Code Title Description
A201 Request for examination