KR102585727B1 - 경량형 xr 장치를 위한 xr 스트리밍 시스템 및 이의 운용 방법 - Google Patents

경량형 xr 장치를 위한 xr 스트리밍 시스템 및 이의 운용 방법 Download PDF

Info

Publication number
KR102585727B1
KR102585727B1 KR1020210144554A KR20210144554A KR102585727B1 KR 102585727 B1 KR102585727 B1 KR 102585727B1 KR 1020210144554 A KR1020210144554 A KR 1020210144554A KR 20210144554 A KR20210144554 A KR 20210144554A KR 102585727 B1 KR102585727 B1 KR 102585727B1
Authority
KR
South Korea
Prior art keywords
server
user device
mediation server
split rendering
lightweight
Prior art date
Application number
KR1020210144554A
Other languages
English (en)
Other versions
KR20230060595A (ko
Inventor
장준환
박우출
양진욱
윤상필
최민수
이준석
송수호
구본재
Original Assignee
한국전자기술연구원
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 한국전자기술연구원 filed Critical 한국전자기술연구원
Priority to KR1020210144554A priority Critical patent/KR102585727B1/ko
Priority to PCT/KR2021/017526 priority patent/WO2023074998A1/ko
Publication of KR20230060595A publication Critical patent/KR20230060595A/ko
Application granted granted Critical
Publication of KR102585727B1 publication Critical patent/KR102585727B1/ko
Priority to US18/529,607 priority patent/US20240107098A1/en

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/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
    • 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
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T15/003D [Three Dimensional] image rendering
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/006Mixed reality
    • 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
    • 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/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25841Management of client data involving the geographical location of the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4318Generation of visual interfaces for content selection or interaction; Content or additional data rendering by altering the content in the rendering process, e.g. blanking, blurring or masking an image region
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44209Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • H04N21/44218Detecting physical presence or behaviour of the user, e.g. using sensors to detect if the user is leaving the room or changes his face expression during a TV program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4524Management of client data or end-user data involving the geographical location of the client
    • 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
    • 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/8146Monomedia components thereof involving graphical data, e.g. 3D object, 2D graphics

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Computer Graphics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

본 발명은 중개 서버가, 접속된 사용자 장치로부터 XR 컨텐츠 재생 요청을 수신하는 경우, 유휴 분할 렌더링 서버를 검색하는 단계, 검색된 유휴 분할 렌더링 서버를 상기 사용자 장치에 할당하는 단계, 상기 사용자 장치로부터 영상 데이터 및 센서 데이터를 수신하는 단계, 상기 수신된 영상 데이터 및 센서 데이터를 기반으로 회전 매트릭스를 생성하는 단계, 상기 회전 매트릭스를 상기 할당된 분할 렌더링 서버에 전송하는 단계를 포함하는 것을 특징으로 하는 XR 스트리밍 서비스를 위한 중개 서버 운용 방법 및 이를 지원하는 XR 스트리밍 시스템을 개시한다.

Description

경량형 XR 장치를 위한 XR 스트리밍 시스템 및 이의 운용 방법{Cross Reality Streaming System for lightweight XR device and operating method thereof}
본 발명은 XR 스트리밍에 관한 것으로서, 더욱 상세하게는 경량형 XR 장치 대상 콘텐츠 제공을 위한 XR 스트리밍 시스템 및 이의 운용 방법에 관한 것이다.
가상현실(Virtual Reality: VR) 및 증강현실(Augmented Reality: AR)이 등장한 이후, 스마트폰 애플리케이션을 다양한 관심이 증가하는 가운데, 혼합현실(Mixed Reality: MR)이 다양한 분야 예컨대, 교육 및 상업적으로 활용되고 있다. 최근에는 상술한 세 가지 개념을 아우르는 크로스 현실(Cross Reality: XR)이 제시되고 있다.
한편, 호흡기 질환으로 인한 팬데믹 상황에서의 업무 지원을 위하여, 원격 업무 시스템이 다양한 형태로 적용되고 있으며, 현재는 원격 업무뿐만 아니라 로블록스나 마인크래프트가 구축하고자 하는 메타버스 등의 크로스 현실 세계에 관한 기술이 주목 받고 있다.
그러나 현재까지 구축되고 있는 시스템들은 투박하고 현실과 동떨어진 그래픽이 적용되고 있으며, 상호작용의 범위 또한 제한적으로 이루어지고 있다. 이에 따라, 현재까지 제공되고 있는 크로스 현실 세계 기술은, 회의나 업무를 처리할 수 있을 정도로 구축되지 못하고, 단순 놀이 공간을 제공하는데 그치고 있다.
상술한 크로스 현실 세계와 같은 메타버스 플랫폼들의 한계점 중 하나는 XR 장치들의 성능과 관련된다. 이전 VR 또는 AR 서비스와 관련해서 오큘러스 퀘스트2 등의 비약적인 발전을 이룬 VR(Virtual Reality) 헤드셋이나 홀로렌즈2와 같은 MR(Mixed Reality) 장비가 등장했지만, 성능이나 사용성(발열 등의 문제) 예컨대, 높은 해상도 구현을 위한 장치의 크기가 커지면서 장시간 이용 시 불편함이 상당하다는 문제가 있다.
상술한 문제점을 해결하기 위하여, 본 발명은 경량형 XR 장치를 통해서 상대적으로 낮은 해상도의 영상을 송출하더라도, 해당 영상에 대한 렌더링 성능을 개선하여 경량형 XR 장치에서도 고품질의 XR 콘텐츠를 소비하고 상호작용할 수 있는 기술을 제공할 수 있는 경량형 XR 장치를 위한 XR 스트리밍 시스템 및 이의 운용 방법을 제공함에 있다.
또는, 본 발명은 확장이 가능한 분할 렌더링 서버 및 중개 서버(MEC, Mobile Edge Computer)구현 방법을 통하여, 경량형 XR 장치가 중개 서버 및 분할 렌더링 서버와 2D 영상 포맷으로 패키징된 데이터만을 주고받음으로써 최소한의 하드웨어 리소스만 가지고도 고품질의 콘텐츠를 소비할 수 있게 만들며, 확장 가능한 분할 렌더링 서버를 도입함에 따라 효율적으로 다수 사용자에게 서비스를 제공할 수 있도록 하는 경량형 XR 장치를 위한 XR 스트리밍 시스템 및 이의 운용 방법을 제공함에 있다.
한편, 이러한 본 발명의 목적은 상기의 목적으로 제한되지 않으며, 언급되지 않은 또 다른 목적들은 아래의 기재로부터 명확하게 이해될 수 있을 것이다.
상술한 바와 같은 목적을 달성하기 위한 본 발명의 경량형 XR 장치를 위한 XR 스트리밍 시스템은 영상 데이터 및 센서 데이터를 수집하여 전달하는 사용자 장치, 상기 사용자 장치의 XR 컨텐츠 요청에 따라 상기 사용자 장치에 분할 렌더링 서버를 할당하고, 상기 사용자 장치로부터 수신된 영상 데이터 및 센서 데이터를 기반으로 회전 매트릭스를 구성한 후, 상기 사용자 장치에 할당된 분할 렌더링 서버에 상기 회전 매트릭스를 전달하는 중개 서버, 상기 중개 서버로부터 수신된 회전 매트릭스를 기반으로 3D 랜더링을 수행하여 2D 영상을 생성하고, 상기 생성된 2D 영상을 상기 사용자 장치에 전송하는 상기 할당된 분할 렌더링 서버를 포함하는 것을 특징으로 한다.
여기서, 상기 중개 서버는 상기 사용자 장치의 위치 및 상기 사용자 장치의 포즈와 관련한 센서 데이터를 수신하는 것을 특징으로 한다.
또한, 상기 중개 서버는 분할 렌더링 서버들을 관리하고, 상기 사용자 장치의 XR 컨텐츠 요청에 대응하여 유휴 분할 렌더링 서버를 검색한 후, 유휴 분할 렌더링 서버를 상기 사용자 장치에 할당하는 것을 특징으로 한다.
추가로, 상기 중개 서버는 유휴 분할 렌더링 서버가 없는 경우, 상기 사용자 장치에 분할 렌더링 서버 할당을 위한 대기를 요청하는 것을 특징으로 한다.
한편, 상기 중개 서버는 상기 사용자 장치와 TCP 기반 통신을 수행하여 상기 사용자 장치가 QUIC 통신 프로토콜을 지원하는지 확인하는 것을 특징으로 한다.
또한, 상기 중개 서버는 상기 분할 렌더링 서버와 UDP 기반 데이터 송수신을 수행하는 것을 특징으로 한다.
본 발명의 실시 예에 따른 XR 스트리밍 서비스를 지원하는 중개 서버의 운용 방법은 상기 중개 서버가, 접속된 사용자 장치로부터 XR 컨텐츠 재생 요청을 수신하는 경우, 유휴 분할 렌더링 서버를 검색하는 단계, 검색된 유휴 분할 렌더링 서버를 상기 사용자 장치에 할당하는 단계, 상기 사용자 장치로부터 영상 데이터 및 센서 데이터를 수신하는 단계, 상기 수신된 영상 데이터 및 센서 데이터를 기반으로 회전 매트릭스를 생성하는 단계, 상기 회전 매트릭스를 상기 할당된 분할 렌더링 서버에 전송하는 단계를 포함하는 것을 특징으로 한다.
여기서, 상기 방법은 유휴 분할 렌더링 서버가 없는 경우, 상기 사용자 장치에 분할 렌더링 서버 할당을 위한 대기를 요청하는 단계를 더 포함할 수 있다.
또한, 상기 방법은 상기 사용자 장치와 TCP 기반 통신을 수행하여 상기 사용자 장치가 QUIC 통신 프로토콜을 지원하는지 확인하는 단계를 더 포함할 수 있다.
한편, 상기 전송하는 단계는 상기 분할 렌더링 서버와 UDP 기반 데이터 송수신 하는 단계를 포함할 수 있다.
본 발명에 따르면, 본 발명은 최소 비용(연산력, 장비 코스트 등)으로 경량형 XR 장치에서도 고품질의 XR 콘텐츠를 실시간으로 즐길 수 있도록 지원한다.
또한, 본 발명은 사용자 단말 어플리케이션의 경량화 및 호환성을 증대시키고, 전송 속도가 빠른 비동기 방식(UDP)의 표준 통신 방식(QUIC) 도입으로 네트워크 오버헤드, 트래픽, 응답 지연 시간 최소화를 통해 더 나은 사용자 경험 제공할 수 있도록 지원한다.
아울러, 상술한 효과 이외의 다양한 효과들이 후술될 본 발명의 실시 예에 따른 상세한 설명에서 직접적 또는 암시적으로 개시될 수 있다.
도 1은 본 발명의 실시 예에 따른 XR 스트리밍 시스템 구성의 한 예를 나타낸 도면이다.
도 2는 본 발명의 실시 예에 따른 확장 형태의 XR 스트리밍 시스템 구성의 다른 예를 나타낸 도면이다.
도 3은 본 발명의 실시 예에 따른 경량형 XR 장치 구성의 한 예를 나타낸 도면이다.
도 4는 본 발명의 실시 예에 따른 중개 서버 구성의 한 예를 나타낸 도면이다.
도 5는 본 발명의 실시 예에 따른 XR 스트리밍 플랫폼 QUIC 패킷 헤더의 한 예를 나타낸 도면이다.
도 6은 본 발명의 실시 예에 따른 분할 렌더링 서버 구성의 한 예를 나타낸 도면이다.
도 7은 본 발명의 실시 예에 따른 XR 스트리밍 시스템의 중개 서버 운용 방법의 한 예를 나타낸 도면이다.
본 발명의 과제 해결 수단의 특징 및 이점을 보다 명확히 하기 위하여, 첨부된 도면에 도시된 본 발명의 특정 실시 예를 참조하여 본 발명을 더 상세하게 설명한다.
다만, 하기의 설명 및 첨부된 도면에서 본 발명의 요지를 흐릴 수 있는 공지 기능 또는 구성에 대한 상세한 설명은 생략한다. 또한, 도면 전체에 걸쳐 동일한 구성 요소들은 가능한 한 동일한 도면 부호로 나타내고 있음에 유의하여야 한다.
이하의 설명 및 도면에서 사용된 용어나 단어는 통상적이거나 사전적인 의미로 한정해서 해석되어서는 아니 되며, 발명자는 그 자신의 발명을 가장 최선의 방법으로 설명하기 위한 용어의 개념으로 적절하게 정의할 수 있다는 원칙에 입각하여 본 발명의 기술적 사상에 부합하는 의미와 개념으로 해석되어야만 한다. 따라서 본 명세서에 기재된 실시 예와 도면에 도시된 구성은 본 발명의 가장 바람직한 일 실시 예에 불과할 뿐이고, 본 발명의 기술적 사상을 모두 대변하는 것은 아니므로, 본 출원시점에 있어서 이들을 대체할 수 있는 다양한 균등물과 변형 예들이 있을 수 있음을 이해하여야 한다.
또한, 제1, 제2 등과 같이 서수를 포함하는 용어는 다양한 구성요소들을 설명하기 위해 사용하는 것으로, 하나의 구성요소를 다른 구성요소로부터 구별하는 목적으로만 사용될 뿐, 상기 구성요소들을 한정하기 위해 사용되지 않는다. 예를 들어, 본 발명의 권리 범위를 벗어나지 않으면서 제2 구성요소는 제1 구성요소로 명명될 수 있고, 유사하게 제1 구성요소도 제2 구성요소로 명명될 수 있다.
또한, 본 명세서에서 사용한 용어는 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 본 발명을 한정하려는 의도가 아니다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함한다. 또한, 본 명세서에서 기술되는 "포함 한다" 또는 "가지다" 등의 용어는 명세서상에 기재된 특징, 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것이 존재함을 지정하려는 것이지, 하나 또는 그 이상의 다른 특징들이나 숫자, 단계, 동작, 구성요소, 부품 또는 이들을 조합한 것들의 존재 또는 부가 가능성을 미리 배제하지 않는 것으로 이해되어야 한다.
또한, 명세서에 기재된 "부", "기", "모듈" 등의 용어는 적어도 하나의 기능이나 동작을 처리하는 단위를 의미하며, 이는 하드웨어나 소프트웨어 또는 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, "일(a 또는 an)", "하나(one)", "그(the)" 및 유사 관련어는 본 발명을 기술하는 문맥에 있어서(특히, 이하의 청구항의 문맥에서) 본 명세서에 달리 지시되거나 문맥에 의해 분명하게 반박되지 않는 한, 단수 및 복수 모두를 포함하는 의미로 사용될 수 있다.
상술한 용어들 이외에, 이하의 설명에서 사용되는 특정 용어들은 본 발명의 이해를 돕기 위해서 제공된 것이며, 이러한 특정 용어의 사용은 본 발명의 기술적 사상을 벗어나지 않는 범위에서 다른 형태로 변경될 수 있다.
아울러, 본 발명의 범위 내의 실시 예들은 컴퓨터 실행가능 명령어 또는 컴퓨터 판독가능 매체에 저장된 데이터 구조를 가지거나 전달하는 컴퓨터 판독가능 매체를 포함한다. 이러한 컴퓨터 판독가능 매체는, 범용 또는 특수 목적의 컴퓨터 시스템에 의해 액세스 가능한 임의의 이용 가능한 매체일 수 있다. 예로서, 이러한 컴퓨터 판독가능 매체는 RAM, ROM, EPROM, CD-ROM 또는 기타 광 디스크 저장장치, 자기 디스크 저장장치 또는 기타 자기 저장장치, 또는 컴퓨터 실행가능 명령어, 컴퓨터 판독가능 명령어 또는 데이터 구조의 형태로 된 소정의 프로그램 코드 수단을 저장하거나 전달하는 데에 이용될 수 있고, 범용 또는 특수 목적 컴퓨터 시스템에 의해 액세스 될 수 있는 임의의 기타 매체와 같은 물리적 저장 매체를 포함할 수 있지만, 이에 한정되지 않는다.
이하, 각 도면들을 통하여, 본 발명을 구성하는 시스템과 장치 및 방법 등에 대해서 보다 상세히 설명하기로 한다.
도 1은 본 발명의 실시 예에 따른 XR 스트리밍 시스템 구성의 한 예를 나타낸 도면이며, 도 2는 본 발명의 실시 예에 따른 확장 형태의 XR 스트리밍 시스템 구성의 다른 예를 나타낸 도면이다.
도 1 및 도 2를 참조하면, 본 발명의 실시 예에 따른 XR 스트리밍 시스템(10)은 경량형 XR 장치(100), 중개 서버(200) 및 분할 렌더링 서버(300)를 포함할 수 있다. 상기 XR 스트리밍 시스템(10)을 구성하는 각 장치들(또는 장치와 서버들)은 IP(Internet Protocol) 기반의 통신을 수행하여 데이터를 교환할 수 있다.
상기 경량형 XR 장치(100)는 XR 스트리밍 시스템(10)을 이용할 수 있는 장치로서, 지정된 무게 이하를 가지거나, 지정된 구성품(예: 지정된 해상도의 영상을 수집할 수 있으면서 지정된 무게 이하인 초소형 카메라, 장치 착용자의 다양한 움직임과 관련한 센서 데이터를 수집할 수 있으면서 지정된 무게 이하인 센서 모듈, 지정된 무게 이하의 하드웨어 등)을 포함하는 사용자 장치를 의미할 수 있다. 또는, 상기 경량형의 의미는 서버(또는 서버 장치)와 2D 영상 포맷으로 패키징된 데이터를 송수신할 수 있는 최소 하드웨어 리소스를 포함하는 구성을 의미할 수 있다.
상기 경량형 XR 장치(100)는 사용자가 착용한 상태에서 사용자 및 사용자의 주변 상황에 대한 영상을 획득하고, 획득된 영상을 중개 서버(200) 및 분할 렌더링 서버(300)에 전송할 수 있는 장치를 포함할 수 있다. 예컨대, 상기 경량형 XR 장치(100)는 사용자의 머리에 착용할 수 있는 헤드 마운트 장치(101), 사용자의 눈 부위에 착용할 수 있는 고글형 장치(102) 및 주변 영상을 획득할 수 있는 카메라가 설치된 휴대용 통신 장치(103)를 포함할 수 있다. 또는, 상기 경량형 XR 장치(100)는 스마트폰, VR 헤드셋, 홀로렌즈 등 XR(VR, AR, MR) 콘텐츠를 즐길 수 있는 단말 장치들을 말한다. 상기 경량형 XR 장치(100)는 모노 또는 스테레오 영상 및 센서 데이터(예: IMU(Inertial Measurement Unit) 데이터 값 [가속도, 회전 속도, 자력계 등])를 수집할 수 있다. 상기 경량형 XR 장치(100)는 수집된 데이터들(예: 영상 데이터 및 센서 데이터)을 중개 서버(200)로 전송하고, 분할 렌더링 서버(300)로부터 2D로 만들어진 영상을 수신 할 수 있다. 상기 경량형 XR 장치(100)는 분할 렌더링 서버(300)로부터 수신한 영상을 사전 정의된 표준에 따라 압축 및 분할 방식을 기반으로 처리하여 재생할 수 있다. 경량형 XR 장치(100)는 중개 서버(200)로 연결 요청하면서 분할 렌더링 서버(300)로 연결 요청을 하기 때문에 각 서버로의 연결을 각 1개씩 총 2개를 갖는다. 상기 경량형 XR 장치(100)는 중개 서버(200) 및 분할 렌더링 서버(300)와 통신 채널을 형성하면서, 자신의 식별 정보를 각 서버에 전달할 수 있다.
상기 중개 서버(200)는 경량형 XR 장치(100)로부터 연결 요청을 수신하면, 연결 요청한 경량형 XR 장치(100)와 통신 채널을 형성할 수 있다. 상기 중개 서버(200)는 통신 채널을 형성한 경량형 XR 장치(100)로부터 영상 데이터 및 센서 데이터를 수신할 수 있다. 한편, 중개 서버(200)는 분할 렌더링 서버(300)로부터 연결 요청을 수신하고, 연결 요청한 분할 렌더링 서버(300)와 통신 채널을 형성할 수 있다. 상기 중개 서버(200)는 경량형 XR 장치(100)로부터 수신된 영상 데이터 및 센서 데이터를 분할 렌더링 서버(300)에 전달할 수 있다. 즉, 상기 중개 서버(200)는 경량형 XR 장치(100) 및 분할 렌더링 서버(300)를 모두 클라이언트로 취급하여 관리할 수 있다. 하나의 중개 서버(200)는 복수개의 경량형 XR 장치(100) 및 복수개의 분할 렌더링 서버(300)와 통신 채널을 형성하고, 영상 데이터 및 센서 데이터의 중개를 수행할 수 있다. 또는, 복수개의 중개 서버(200)가 마련되고, 각각의 중개 서버가 하나의 경량형 XR 장치(100)와 하나의 분할 렌더링 서버(300) 간의 데이터 중개를 처리할 수도 있다. 상기 중개 서버(200)는 여러 대의 분할 렌더링 서버(300)와 연결을 가질 수 있음에 따라, 상기 중개 서버(200)는 유휴 분할 렌더링 서버를 사용자 장치(예: 상기 경량형 XR 장치(100))에 할당하는 등의 연결 관리 역할을 할 수 있다. 상기 중개 서버(200) 및 상기 분할 렌더링 서버(300)는 UDP 기반의 통신 프로토콜을 사용할 수 있으며, 상기 UDP 기반 통신 프로토콜은 IETF QUIC를 기반으로 한다. IETF QUIC는 HTTP 3.0에 채택된 통신 프로토콜이며 차세대 표준 통신 프로토콜이다.
상기 분할 렌더링 서버(300)는 중개 서버(200)에 연결 요청을 하는 클라이언트 입장이지만 경량형 XR 장치(100)로부터 연결 요청을 받기 때문에 동시에 서버 역할도 수행한다. 상기 분할 렌더링 서버(300)는 하나의 중개 서버(200)와의 연결만을 가질 수 있으며, 여러 사용자 장치들(예: 상기 경량형 XR 장치(100)들)과 연결을 가질 수 있다.
도 3은 본 발명의 실시 예에 따른 경량형 XR 장치 구성의 한 예를 나타낸 도면이다.
도 3을 참조하면, 일 실시 예에 따른 경량형 XR 장치(100)는 통신 회로(110), 영상 수집 장치(120), 센서 모듈(130), 영상 출력 장치(140), 메모리(150), 오디오 장치(160) 및 프로세서(170)를 포함할 수 있다.
상기 통신 회로(110)는 경량형 XR 장치(100)의 통신 기능을 지원할 수 있다. 상기 통신 회로(110)는 사용자 조작에 대응하여 중개 서버(200)와 통신 채널을 형성하고, 상기 영상 수집 장치(120)가 수집한 영상 데이터 및 상기 센서 모듈(130)이 수집한 센서 데이터를 상기 중개 서버(200)에 전달할 수 있다. 또는, 상기 통신 회로(110)는 사용자 조작에 대응하여 분할 렌더링 서버(300)와 통신 채널을 형성하고, 상기 분할 렌더링 서버(300)로부터 XR 스트리밍 데이터를 수신할 수 있다.
상기 영상 수집 장치(120)는 일정 방향의 영상을 수집할 수 있는 카메라를 포함할 수 있다. 추가적으로 상기 영상 수집 장치(120)는 주변 오디오 신호를 수집할 수도 있다. 상기 영상 수집 장치(120)는 실시간 획득되는 영상 데이터를 상기 프로세서(170) 제어에 대응하여 중개 서버(200)에 전달할 수 있다.
상기 센서 모듈(130)은 경량형 XR 장치(100)의 다양한 움직임에 대응하는 센서 데이터를 생성하고, 생성된 센서 데이터를 프로세서(170) 제어에 대응하여 중개 서버(200)에 전달할 수 있다. 상기 센서 모듈(130)은 예컨대, 가속도 센서, 자이로 센서, 근접 센서, 조도 센서, 고도 센서, 위치 정보 수집 센서 등 경량형 XR 장치(100)를 착용한 사용자의 위치 및 움직임과 관련한 다양한 센서 데이터를 수집할 수 있는 복수개의 센서들로 구성될 수 있다.
상기 영상 출력 장치(140)는 경량형 XR 장치(100)의 화면 표시 기능을 지원하는 장치일 수 있다. 예컨대, 상기 영상 출력 장치(140)는 디스플레이 또는 프로젝션 장치 등을 포함할 수 있다. 상기 영상 출력 장치(140)는 중개 서버(200) 접속에 따른 접속 화면, 상기 분할 렌더링 서버(300)가 제공한 XR 스트리밍 데이터 표시 화면 등을 출력할 수 있다.
상기 메모리(150)는 본 발명의 XR 스트리밍 서비스와 관련한 다양한 데이터를 저장할 수 있다. 예컨대, 상기 메모리(150)는 상기 영상 수집 장치(120)가 수집한 영상 데이터, 상기 센서 모듈(130)이 수집한 센서 데이터를 임시 또는 반영구적으로 저장하고, 프로세서(170) 제어에 대응하여 저장된 영상 데이터 및 센서 데이터를 중개 서버(200)에 전송할 수 있다. 상기 메모리(150)는 상기 분할 렌더링 서버(300)로부터 XR 스트리밍 데이터를 임시 저장하고, 프로세서(170) 제어에 대응하여 영상 출력 장치(140)에 전달할 수 있다.
상기 오디오 장치(160)는 경량형 XR 장치(100)의 오디오 신호 처리를 담당할 수 있다. 이와 관련하여 상기 오디오 장치(160)는 적어도 하나의 마이크 및 적어도 하나의 스피커를 포함할 수 있다. 상기 마이크는 상기 영상 수집 장치(120)가 영상을 수집하는 동안 활성화되어 주변 오디오 신호를 수집할 수 있다. 또한, 상기 스피커는 상기 분할 렌더링 서버(300)로부터 수신된 XR 스트리밍 데이터를 상기 영상 출력 장치로 출력하는 동안, 상기 XR 스트리밍 데이터에 포함된 오디오 신호를 출력할 수 있다. 상기 XR 스트리밍 데이터에 오디오 신호가 포함되어 있지 않은 경우 상기 스피커는 별도의 오디오 신호 출력을 중지하거나 또는 지정된 오디오 신호 또는 음악 관련 오디오 신호를 출력할 수 있다.
상기 프로세서(170)는 상기 경량형 XR 장치(100) 운용과 관련한 데이터의 수집과, 저장, 전송, 수신, 처리를 수행할 수 있다. 예컨대, 프로세서(170)는 사용자 조작에 따라 통신 회로(110)를 제어하여 중개 서버(200)와 통신 채널을 형성하고, 중개 서버(200)로부터 XR 스트리밍 컨텐츠 목록을 수신하여 영상 출력 장치(140)에 출력할 수 있다. 사용자 선택에 따라 특정 컨텐츠가 선택되면, 상기 프로세서(170)는 필요에 따라 영상 수집 장치(120) 및 센서 모듈(130)을 활성화하고, 수집된 영상 데이터 및 센서 데이터를 중개 서버(200)에 전송할 수 있다. 상기 프로세서(170)는 분할 렌더링 서버(300)로부터 XR 스트리밍 데이터를 수신하면, 수신된 데이터에 대한 압축 해제 및 재생을 처리할 수 있다.
도 4는 본 발명의 실시 예에 따른 중개 서버 구성의 한 예를 나타낸 도면이며, 도 5는 본 발명의 실시 예에 따른 XR 스트리밍 플랫폼 QUIC 패킷 헤더의 한 예를 나타낸 도면이다.
도 4를 참조하면, 일 실시 예에 따른 중개 서버(200)는 제1 서버 통신 회로(210) 및 제1 저장 장치(250)를 포함할 수 있다.
상기 제1 서버 통신 회로(210)는 REST API 인터페이스, TCP API 핸들러, API 액츄에이터, QUIC 인터페이스, QUIC API 핸들러, 연결 매니저를 포함할 수 있다. REST API Interface(TCP)는 REST API Interface는 HTTP 1.1/2.0 기반의 통신 프로토콜이며, 경량형 XR 장치(100)가 중개 서버로 접속하는 최초의 접근 지점이다. 이 프로토콜을 통해 경량형 XR 장치(100)는 현재 플랫폼에서 제공하고 있는 콘텐츠의 목록을 조회할 수 있으며, 해당 경량형 XR 장치(100)가 XR 스트리밍 서비스를 사용할 수 있는지 등의 정보를 알 수 있다. 현재 모든 경량형 XR 장치(100)가 QUIC 통신 프로토콜을 지원할 수 있는 것은 아니므로 기존 TCP 기반의 통신을 통해 서비스 가능 여부 등의 정보를 전달받는다. 그래서 경량형 XR 장치(100)와 중개 서버(200)는 TCP, UDP 두 가지 타입의 통신 방법을 사용하는 반면에 분할 렌더링 서버(300)는 UDP 방식만 지원한다. TCP API Handler는 패킷의 헤더를 검출하여 어떤 API 서비스를 호출했는지 확인하고 API Actuator에 필요한 인자들을 전달한다. API Actuator는 요청된 API 서비스의 종류에 따라 직접 시스템 자원에 접근하여 CRUD(create, read, update, delete) 작업을 수행한다. 예컨대, API 액츄에이터는 XR 콘텐츠 서비스 루트 디렉토리에 접근하여 콘텐츠 디렉토리들을 모두 훑어가며 메타 데이터를 읽어 서비스 가능한 항목들을 리스트 형태로 출력할 수 있다. QUIC Interface(UDP)는 저지연 데이터 전송을 위해 IETF QUIC 프로토콜을 지원하는 외부 인터페이스이며, 감지된 QUIC event를 기반으로 다음 동작을 수행한다. XR 스트리밍 플랫폼에서는 전송 지연을 최소화하기 위해 송신한 요청(request)에 대한 1:1 응답(response)은 지원하지 않는다. QUIC API Handler는 어플리케이션 레벨의 캡슐화 및 디캡슐화를 수행하여 탑재된 코드에 따라 내부적으로 사용할 수 있는 형태로 데이터를 변환하는 역할을 수행한다. 정의된 코드는 최대 4글자 형태로 정의되어 있으며, 코드를 포함한 패킷 헤더의 구조는 도 5에 도시된 바와 같다. 도 5를 참조하면, XR 스트리밍 플랫폼 QUIC 패킷 헤더는 fourCC 필드, Total size 필드 및 Reserved 필드를 포함할 수 있다. FourCC 필드는 최대 4글자 형태의 코드를 담는 필드이며, 코드의 종류는 pose, get, colr, 에소, occ_ 및 mdia를 포함할 수 있다. pose는 회전 매트릭스 정보이며, get은 quic 프로토콜 상의 request-response 모델을 갖는 동작을 정의하고, colr는 포인트 클라우드 데이터 중 색 값을 갖는 데이터를 의미하고, dpth는 포인트 클라우드 데이터 중 깊이 값을 갖는 데이터를 의미하며, occ_는 포인트 클라우드 데이터 중 투명도 값을 갖는 데이터를 의미하며, mdia는 일반 2D 영상 전송을 의미할 수 있다. Connection Manager는 경량형 XR 장치(100)와 분할 렌더링 서버(300)와의 연결 중개를 담당한다. 연결 매니저(Connection manager)는 유휴 분할 렌더링 서버를 경량형 XR 장치(100)에 할당하며, 클라이언트와의 서비스가 종료된 분할 렌더링 서버를 다시 대기 풀로 할당한다. 서로 매칭된 경량형 XR 장치(100)와 분할 렌더링 서버 정보를 담은 테이블을 내부적으로 관리하고 있으며, 종료된 클라이언트는 주기적으로 테이블에서 삭제된다.
또한, 상기 제1 서버 통신 회로(210)는 접속된 경량형 XR 장치(100)의 XR 스트리밍 서비스 지원을 위한 다양한 제어를 수행할 수 있다. 예컨대, 제1 서버 통신 회로(110)는 경량형 XR 장치(100) 및 분할 렌더링 서버(300)와의 세션 형성과, 세션을 통한 데이터 송수신 및 세션 종료를 수행할 수 있다. 상기 제1 서버 통신 회로(210)는 Session Pool들을 운용하며, 각각의 Session Pool에는 Session 항목이 포함될 수 있다. 상기 Session Pools는 경량형 XR 장치(100) 연결들을 총 관리하는 컨테이너이며 별도의 기능을 포함하고 있지는 않다. Session은 경량형 XR 장치(100)와의 연결 세션을 의미하며, 사용자 장치 당 각 1개씩의 protocol interpreter, demuxer, decoder, slam 모듈 등이 포함된다. Protocol Interpreter는 QUIC API Handler를 통해 전달된 코드를 해석하여 각 코드 별로 다음 액션을 수행한다. 해석된 코드가 Colr, dpth, occ_, mdia인 경우 각 채널에 할당된 demuxer 모듈로 데이터를 전달한다. Pose는 중개 서버(200)에서 분할 렌더링 서버(300)로 데이터를 전송하는 방향에서 사용하는 코드이다. Demuxer는 chunk(복수개의 프레임) 단위로 분할된 영상 데이터를 일반 영상 형태로 변환하여 재구성하는 역할을 한다. Decoder는 표준 코덱에 의해 압축된 영상을 디코딩하여 SLAM 모듈에서 이용 가능한 형태의 데이터로 변환한다. SLAM(Simultaneous Localization and Mapping)은 경량형 XR 장치(100)의 위치와 포즈 정보를 계산하는 모듈이며 decoder로부터 모노/스테레오 영상과 IMU 정보(또는 센서 데이터)를 입력 소스로 하며, 출력은 4x4 회전 매트릭스 형태가 된다. SLAM 모듈에서 매트릭스가 전달되면, session에서는 가지고 있는 분할 렌더링 서버(300)로의 연결을 통해 데이터 스트림을 만들고 QUIC API Handler를 통해 데이터를 캡슐화하여 분할 렌더링 서버(300)로 전송하게 된다.
도 6은 본 발명의 실시 예에 따른 분할 렌더링 서버 구성의 한 예를 나타낸 도면이다.
도 6을 참조하면, 일 실시 예에 따른 분할 렌더링 서버(300)는 제2 서버 통신 회로(310), 제2 저장 장치(350) 및 프로세싱 하드웨어 장치(370)를 포함할 수 있다.
상기 제2 서버 통신 회로(310)는 앞서 설명한 중개 서버(200)와 유사하게 Session Pools, 연결 매니저, QUIC API 핸들러, QUIC 인터페이스(UDP)를 포함할 수 있다. 분할 렌더링 서버(300)의 QUIC Interface는 중개 서버(200)의 QUIC 인터페이스와 동일한 역할과 기능을 수행할 수 있다. 또한, 분할 렌더링 서버(300)의 QUIC API Handler는 중개 서버(200)의 QUIC API 핸들러와 동일한 역할과 기능을 수행할 수 있다. Connection Manager는 중개 서버(200)와 동일한 역할 및 기능을 수행하지만, 관리하는 연결 대상은 경량형 XR 장치(100)뿐이다. 분할 렌더링 서버(300)의 Session Pools는 중개 서버(200)의 Session Pools와 동일한 역할과 기능을 수행할 수 있다. 분할 렌더링 서버(300)의 Session은 Encoder, Muxer, Protocol Interpreter로 구성될 수 있다. 분할 렌더링 서버(300)의 Protocol Interpreter는 중개 서버(200)의 Protocol Interpreter와 동일한 역할 및 기능을 수행하되, pose 코드를 갖는 데이터를 중개 서버(200)로부터 수신하면, 해당 정보를 프로세싱 하드웨어 장치(370)(예: 렌더링 모듈)로 전달한다. Muxer는 Encoding된 영상을 chunk(복수개의 frame) 단위로 분할하는 역할을 하며, 상기 Muxer의 분할 및 조립에 사용되는 방식은 CMAF(Common Media Application Format) 표준 방식이 될 수 있다. 분할 렌더링 서버(300)의 Encoder는 raw 영상을 표준 코덱(H.264 혹은 그에 준하는 코덱)으로 압축하는 역할을 수행한다. 영상의 소스는 렌더링 모듈에서 전달받는다.
상기 제2 저장 장치(350)는 3D 공간 데이터를 저장한다. 제2 저장 장치(350)는 프로세싱 하드웨어 장치(370) 요청에 대응하여 3D 공간 데이터를 제공한다.
상기 프로세싱 하드웨어 장치(370)는 제2 저장 장치(350)에 저장된 3D 공간 데이터에 대한 렌더링을 수행한다. 이러한 프로세싱 하드웨어 장치(370)는 렌더링 모듈, Spartial 3D Reconstruction, CUDA 인터페이스 및 Multi GPU 리소스를 포함할 수 있다. 상기 Multi GPU Resources는 영상을 빠른 속도로 생성하고 전송하기 위해 사용되며, 본 플랫폼에서는 GPU에 포함된 하드웨어 encoder를 활용하여 고속으로 영상을 생성할 수 있도록 구성된다. 하나의 GPU마다 사용할 수 있는 encoder의 개수가 다르므로, 렌더링 모듈은 서비스의 형태 및 규모에 따라 GPU를 선정할 수 있다. CUDA Interface는 GPU 자원을 사용할 수 있도록 해주는 인터페이스이며, NVIDIA 사에서 배포하는 SDK를 포함할 수 있다. Spatial 3D Reconstruction은 포인트 클라우드 형태로 수집된 3D 공간 정보를 불러와서, 내부 렌더링 모듈에서 사용할 수 있는 형태로 재가공해주는 모듈이다. 렌더링 모듈은 복원된 3D 공간 상에서, protocol interpreter를 통해 전달되는 경량형 XR 장치(100)의 pose 정보를 실시간으로 업데이트하여 그에 맞는 시점에 따라 2D 영상을 렌더링 파이프라인 (geometry, shader, rasterization) 등을 거쳐 생성하는 모듈이다. 이 렌더링 모듈의 출력은 2D 영상이며 이는 encoder로 전달되어 최종적으로 경량형 XR 장치(100)로 전달된다.
도 7은 본 발명의 실시 예에 따른 XR 스트리밍 시스템의 중개 서버 운용 방법의 한 예를 나타낸 도면이다.
도 7을 참조하면, 701 단계에서, 중개 서버(200)는 경량형 XR 장치(100)의 XR 스트리밍 서비스 요청이 수신되는지 확인할 수 있다. 상기 경량형 XR 장치(100)의 XR 스트리밍 서비스 요청이 없는 경우, 703 단계에서 지정된 기능을 처리할 수 있다. 예컨대, 상기 중개 서버(200)는 접속된 경량형 XR 장치(100)에 XR 컨텐츠 목록을 제공할 수 있다. 또는, 중개 서버(200)는 기존 서비스 요청된 다른 경량형 XR 장치의 XR 스트리밍을 위한 서비스 지원을 처리할 수 있다. 서비스 요청 수신 과정에서, 중개 서버(200)는 TCP 기반의 통신을 통하여 경량형 XR 장치(100)가 QUIC 인터페이스를 이용할 수 있는지를 확인할 수 있다. 이를 위하여, 중개 서버(200)는 경량형 XR 장치(100)와 TCP 또는 UDP 두 가지 타입의 통신 방법을 이용할 수 있다.
701 단계에서, 경량형 XR 장치(100)의 XR 스트리밍 서비스가 요청되면, 705 단계에서, 중개 서버(200)는 분할 렌더링 서버들 중 유휴 분할 렌더링 서버 확인을 수행할 수 있다. 이와 관련하여, 중개 서버(200)는 분할 렌더링 서버들과 통신 채널을 형성하고, 통신 채널을 형성한 분할 렌더링 서버들에 대한 관리 테이블 생성 및 유지 관리를 처리할 수 있다. 중개 서버(200)의 분할 렌더링 서버(300)에 관한 테이블 관리는, 분할 렌더링 서버(300)가 제공하는 장치 정보를 기준으로 수행될 수 있다.
상기 중개 서버(200)는 707 단계에서 유휴 분할 렌더링 서버를 상기 경량형 XR 장치(100)에 할당할 수 있다. 유휴 분할 렌더링 서버가 없는 경우, 상기 중개 서버(200)는 경량형 XR 장치(100)에 분할 렌더링 서버 할당을 위해 대기를 요청할 수 있다.
상기 중개 서버(200)는 709 단계에서, 경량형 XR 장치(100)로부터 수신된 정보 분석, 경량형 XR 장치의 위치와 포즈 계산하여 회전 매트릭스 구성할 수 있다. 상기 중개 서버(200)는 711 단계에서, 상기 회전 매트릭스에 대응하는 데이터 스트림 생성하여 할당된 분할 렌더링 서버에 전송할 수 있다. 이 과정에서 상기 중개 서버(200)는 UDP 방식을 기반으로 데이터 전송을 처리할 수 있다.
이상에서 설명한 바와 같이, 본 명세서는 다수의 특정한 구현물의 세부사항들을 포함하지만, 이들은 어떠한 발명이나 청구 가능한 것의 범위에 대해서도 제한적인 것으로서 이해되어서는 안 되며, 오히려 특정한 발명의 특정한 실시형태에 특유할 수 있는 특징들에 대한 설명으로서 이해되어야 한다.
또한, 특정한 순서로 도면에서 동작들을 묘사하고 있지만, 이는 바람직한 결과를 얻기 위하여 도시된 그 특정한 순서나 순차적인 순서대로 그러한 동작들을 수행하여야 한다거나 모든 도시된 동작들이 수행되어야 하는 것으로 이해되어서는 안 된다. 특정한 경우, 멀티태스킹과 병렬 프로세싱이 유리할 수 있다. 또한, 상술한 실시형태의 다양한 시스템 컴포넌트의 분리는 그러한 분리를 모든 실시형태에서 요구하는 것으로 이해되어서는 안 되며, 설명한 프로그램 컴포넌트와 시스템들은 일반적으로 단일의 소프트웨어 제품으로 함께 통합되거나 다중 소프트웨어 제품에 패키징될 수 있다는 점을 이해하여야 한다.
본 기술한 설명은 본 발명의 최상의 모드를 제시하고 있으며, 본 발명을 설명하기 위하여, 그리고 통상의 기술자가 본 발명을 제작 및 이용할 수 있도록 하기 위한 예를 제공하고 있다. 이렇게 작성된 명세서는 그 제시된 구체적인 용어에 본 발명을 제한하는 것이 아니다. 따라서, 상술한 예를 참조하여 본 발명을 상세하게 설명하였지만, 통상의 기술자라면 본 발명의 범위를 벗어나지 않으면서도 본 예들에 대한 개조, 변경 및 변형을 가할 수 있다.
따라서 본 발명의 범위는 설명된 실시 예에 의하여 정할 것이 아니고 특허청구범위에 의해 정하여져야 한다.
10: XR 스트리밍 시스템
100: 경량형 XR 장치
200: 중개 서버
300: 분할 렌더링 서버

Claims (10)

  1. 영상 데이터 및 센서 데이터를 수집하여 전달하는 사용자 장치;
    상기 사용자 장치의 XR 컨텐츠 요청에 따라 상기 사용자 장치에 분할 렌더링 서버를 할당하고, 상기 사용자 장치로부터 수신된 영상 데이터 및 센서 데이터를 기반으로 회전 매트릭스를 구성한 후, 상기 사용자 장치에 할당된 분할 렌더링 서버에 상기 회전 매트릭스를 전달하는 중개 서버;
    상기 중개 서버로부터 수신된 회전 매트릭스를 기반으로 3D 랜더링을 수행하여 2D 영상을 생성하고, 상기 생성된 2D 영상을 상기 사용자 장치에 전송하는 상기 할당된 분할 렌더링 서버;를 포함하는 것을 특징으로 하는 XR 스트리밍 시스템.
  2. 제1항에 있어서,
    상기 중개 서버는
    상기 사용자 장치의 위치 및 상기 사용자 장치의 포즈와 관련한 센서 데이터를 수신하는 것을 특징으로 하는 XR 스트리밍 시스템.
  3. 제1항에 있어서,
    상기 중개 서버는
    분할 렌더링 서버들을 관리하고, 상기 사용자 장치의 XR 컨텐츠 요청에 대응하여 유휴 분할 렌더링 서버를 검색한 후, 유휴 분할 렌더링 서버를 상기 사용자 장치에 할당하는 것을 특징으로 하는 XR 스트리밍 시스템.
  4. 제1항에 있어서,
    상기 중개 서버는
    유휴 분할 렌더링 서버가 없는 경우, 상기 사용자 장치에 분할 렌더링 서버 할당을 위한 대기를 요청하는 것을 특징으로 하는 XR 스트리밍 시스템.
  5. 제1항에 있어서,
    상기 중개 서버는
    상기 사용자 장치와 TCP 기반 통신을 수행하여 상기 사용자 장치가 QUIC 통신 프로토콜을 지원하는지 확인하는 것을 특징으로 하는 XR 스트리밍 시스템.
  6. 제1항에 있어서,
    상기 중개 서버는
    상기 분할 렌더링 서버와 UDP 기반 데이터 송수신을 수행하는 것을 특징으로 하는 XR 스트리밍 시스템.
  7. XR 스트리밍 서비스를 지원하는 중개 서버에 있어서,
    상기 중개 서버가, 접속된 사용자 장치로부터 XR 컨텐츠 재생 요청을 수신하는 경우, 유휴 분할 렌더링 서버를 검색하는 단계;
    검색된 유휴 분할 렌더링 서버를 상기 사용자 장치에 할당하는 단계;
    상기 사용자 장치로부터 영상 데이터 및 센서 데이터를 수신하는 단계;
    상기 수신된 영상 데이터 및 센서 데이터를 기반으로 회전 매트릭스를 생성하는 단계;
    상기 회전 매트릭스를 상기 할당된 분할 렌더링 서버에 전송하는 단계;를 포함하는 것을 특징으로 하는 XR 스트리밍 서비스를 위한 중개 서버 운용 방법.
  8. 제7항에 있어서,
    유휴 분할 렌더링 서버가 없는 경우, 상기 사용자 장치에 분할 렌더링 서버 할당을 위한 대기를 요청하는 단계;를 더 포함하는 것을 특징으로 하는 XR 스트리밍 서비스를 위한 중개 서버 운용 방법.
  9. 제7항에 있어서,
    상기 사용자 장치와 TCP 기반 통신을 수행하여 상기 사용자 장치가 QUIC 통신 프로토콜을 지원하는지 확인하는 단계;를 더 포함하는 것을 특징으로 하는 XR 스트리밍 서비스를 위한 중개 서버 운용 방법.
  10. 제7항에 있어서,
    상기 전송하는 단계는
    상기 분할 렌더링 서버와 UDP 기반 데이터 송수신 하는 단계;를 포함하는 것을 특징으로 하는 XR 스트리밍 서비스를 위한 중개 서버 운용 방법.
KR1020210144554A 2021-10-27 2021-10-27 경량형 xr 장치를 위한 xr 스트리밍 시스템 및 이의 운용 방법 KR102585727B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020210144554A KR102585727B1 (ko) 2021-10-27 2021-10-27 경량형 xr 장치를 위한 xr 스트리밍 시스템 및 이의 운용 방법
PCT/KR2021/017526 WO2023074998A1 (ko) 2021-10-27 2021-11-25 경량형 xr 장치를 위한 xr 스트리밍 시스템 및 이의 운용 방법
US18/529,607 US20240107098A1 (en) 2021-10-27 2023-12-05 Xr streaming system for lightweight xr device and operation method therefor

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210144554A KR102585727B1 (ko) 2021-10-27 2021-10-27 경량형 xr 장치를 위한 xr 스트리밍 시스템 및 이의 운용 방법

Publications (2)

Publication Number Publication Date
KR20230060595A KR20230060595A (ko) 2023-05-08
KR102585727B1 true KR102585727B1 (ko) 2023-10-10

Family

ID=86160048

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210144554A KR102585727B1 (ko) 2021-10-27 2021-10-27 경량형 xr 장치를 위한 xr 스트리밍 시스템 및 이의 운용 방법

Country Status (3)

Country Link
US (1) US20240107098A1 (ko)
KR (1) KR102585727B1 (ko)
WO (1) WO2023074998A1 (ko)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102081364B1 (ko) * 2019-11-27 2020-02-25 (주)비디오몬스터 클라우드 기반 가변형 분산 렌더링 시스템 및 방법
WO2021044593A1 (ja) 2019-09-05 2021-03-11 三菱電機株式会社 エッジ装置、エッジ方法、エッジプログラム、管理装置、管理方法、管理プログラム、分散処理システム、及び、分散処理方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR102257039B1 (ko) * 2019-09-10 2021-05-28 주식회사 피앤씨솔루션 분산처리 기반의 hmd용 머신러닝 시스템
KR102238670B1 (ko) * 2019-10-31 2021-04-09 박재범 사용자의 유휴 자원을 활용한 분산 렌더링 시스템 및 분산 렌더링 방법

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2021044593A1 (ja) 2019-09-05 2021-03-11 三菱電機株式会社 エッジ装置、エッジ方法、エッジプログラム、管理装置、管理方法、管理プログラム、分散処理システム、及び、分散処理方法
KR102081364B1 (ko) * 2019-11-27 2020-02-25 (주)비디오몬스터 클라우드 기반 가변형 분산 렌더링 시스템 및 방법

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
장준환 외5, 엣지 클라우드 기반 AR 분할 렌더링 영상 실시간 스트리밍 재생기술에 관한 연구, 2021.06. 전자공학회 논문지 제58권 제6호

Also Published As

Publication number Publication date
WO2023074998A1 (ko) 2023-05-04
KR20230060595A (ko) 2023-05-08
US20240107098A1 (en) 2024-03-28

Similar Documents

Publication Publication Date Title
EP3695383B1 (en) Method and apparatus for rendering three-dimensional content
US10049495B2 (en) System and method for providing virtual reality content
US20160225188A1 (en) Virtual-reality presentation volume within which human participants freely move while experiencing a virtual environment
Han Mobile immersive computing: Research challenges and the road ahead
JP2022546145A (ja) クラウドネイティブによる3d場面のゲーム方法及びシステム
US11676330B2 (en) 3d conversations in an artificial reality environment
US20230102054A1 (en) Method, an apparatus and a computer program product for video encoding and video decoding
CN104765636B (zh) 一种远程桌面图像的合成方法和装置
US20240153148A1 (en) Partial access metadata for video-based point cloud compression data
US11961178B2 (en) Reduction of the effects of latency for extended reality experiences by split rendering of imagery types
WO2022132249A1 (en) Reference of neural network model for adaptation of 2d video for streaming to heterogeneous client end-points
KR102585727B1 (ko) 경량형 xr 장치를 위한 xr 스트리밍 시스템 및 이의 운용 방법
KR20220046356A (ko) 이동 통신 시스템에서 컨텐츠를 렌더링하는 방법 및 장치
Petit et al. A 3d data intensive tele-immersive grid
EP4156109A1 (en) Apparatus and method for establishing a three-dimensional conversational service
CN114513512B (zh) 界面渲染的方法及装置
Akyildiz Metaverse: Challenges for extended reality and holographic-type communication in the next decade
KR20130109904A (ko) 멀티스크린 기반의 다차원 게임 서비스 방법 및 그 장치
US11943271B2 (en) Reference of neural network model by immersive media for adaptation of media for streaming to heterogenous client end-points
WO2024034646A1 (ja) データ配信システム、データ配信方法、データ処理装置及びデータ処理方法
US20230007067A1 (en) Bidirectional presentation datastream
US20230007361A1 (en) Bidirectional presentation datastream using control and data plane channels
Seligmann SmmmmS lient for Remote Rendered irtual Heality
Petit et al. HAL Id: hal-00514549
Petit et al. HAL Id: hal-00514549 https://hal. science/hal-00514549v2

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right