KR20190088032A - 가상 현실 환경을 위한 이동 스피커 - Google Patents

가상 현실 환경을 위한 이동 스피커 Download PDF

Info

Publication number
KR20190088032A
KR20190088032A KR1020190006342A KR20190006342A KR20190088032A KR 20190088032 A KR20190088032 A KR 20190088032A KR 1020190006342 A KR1020190006342 A KR 1020190006342A KR 20190006342 A KR20190006342 A KR 20190006342A KR 20190088032 A KR20190088032 A KR 20190088032A
Authority
KR
South Korea
Prior art keywords
speaker
robotic
virtual object
virtual
location
Prior art date
Application number
KR1020190006342A
Other languages
English (en)
Other versions
KR102602149B1 (ko
Inventor
스벤 크라츠
아담 블랑제
조셉 페르베커
스테판 마티
Original Assignee
하만인터내셔날인더스트리스인코포레이티드
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 하만인터내셔날인더스트리스인코포레이티드 filed Critical 하만인터내셔날인더스트리스인코포레이티드
Publication of KR20190088032A publication Critical patent/KR20190088032A/ko
Application granted granted Critical
Publication of KR102602149B1 publication Critical patent/KR102602149B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/302Electronic adaptation of stereophonic sound system to listener position or orientation
    • H04S7/303Tracking of listener position or orientation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R5/00Stereophonic arrangements
    • H04R5/02Spatial or constructional arrangements of loudspeakers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/011Arrangements for interaction with the human body, e.g. for user immersion in virtual reality
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/162Interface to dedicated audio devices, e.g. audio drivers, interface to CODECs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T13/00Animation
    • G06T13/203D [Three Dimensional] animation
    • G06T13/2053D [Three Dimensional] animation driven by audio data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T19/00Manipulating 3D models or images for computer graphics
    • G06T19/003Navigation within 3D models or images
    • 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
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R9/00Transducers of moving-coil, moving-strip, or moving-wire type
    • H04R9/06Loudspeakers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/302Electronic adaptation of stereophonic sound system to listener position or orientation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S7/00Indicating arrangements; Control arrangements, e.g. balance control
    • H04S7/30Control circuits for electronic adaptation of the sound field
    • H04S7/305Electronic adaptation of stereophonic audio signals to reverberation of the listening space
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04SSTEREOPHONIC SYSTEMS 
    • H04S2400/00Details of stereophonic systems covered by H04S but not provided for in its groups
    • H04S2400/11Positioning of individual sound objects, e.g. moving airplane, within a sound field

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Software Systems (AREA)
  • Computer Graphics (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Remote Sensing (AREA)
  • Radar, Positioning & Navigation (AREA)
  • Obtaining Desirable Characteristics In Audible-Bandwidth Transducers (AREA)
  • Manipulator (AREA)
  • Stereophonic System (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

컴퓨팅 시스템은 명령 및 메모리에 연결된 프로세서를 포함하는 메모리를 포함한다. 프로세서는, 명령을 실행할 때, 가상 환경 내에 포함되는 가상 객체와 연관된 사운드를 로봇 스피커로 매핑하는 단계, 로봇 스피커로 정보를 전송하여, 로봇 스피커가 가상 환경 내 가상 객체의 위치에 대응하는 물리적 환경 내 위치로 이동하게 하는 단계, 및 오디오 신호를 로봇 스피커로 전송하는 단계를 수행하도록 구성된다. 로봇 스피커는, 오디오 신호를 기초로 물리적 환경 내 위치에서 가상 객체와 연관된 사운드를 출력한다.

Description

가상 현실 환경을 위한 이동 스피커{MOBILE SPEAKER SYSTEM FOR VIRTUAL REALITY ENVIRONMENTS}
다양한 실시예가 일반적으로 오디오 시스템과 관련되고, 더 구체적으로 가상 현실 환경을 위한 이동형 스피커 시스템과 관련된다.
가상 현실은 점점 흥미가 증가하는 기술 영역이다. 가상 현실 시스템은 사용자를 다양한 유형의 가상 객체 및 이러한 가상 객체에 의해 생성되는 사운드를 일반적으로 포함하는 컴퓨터-생성 가상 환경에 몰입시킨다. 가상 현실을 위한 응용분야의 예로는, 엔터테인먼트, 게임, 의료, 통신 및 개인 훈련 및 개발이 있다.
일반적으로 종래의 가상 현실 기법은 사용자가 착용하는 가상 현실 헤드셋을 포함한다. 컴퓨팅 시스템이 헤드셋을 통해 사용자에게 표시되는 가상 환경을 포함하는 가상 현실 콘텐츠를 생성한다. 컴퓨팅 시스템이 또한 사용자 대화, 가령, 게임 컨트롤러 또는 사용자가 수행하는 움직임을 통한 대화에 응답하여, 가상 현실 콘텐츠의 양태를 더 업데이트할 수 있다.
앞서 언급된 바와 같이, 가상 환경이 가상 환경 내에서 사운드를 생성 및/또는 사운드에 영향을 미치는 임의의 개수의 가상 객체를 포함할 수 있다. 일반적으로 이들 가상 객체와 연관된 사운드가 하나 이상의 오디오 디바이스, 가령, 헤드폰, VR 헤드셋에 포함된 스피커 및/또는 사용자가 위치하는 물리적 환경에 포함된 스피커를 통해 사용자로 출력된다.
종래의 시스템이 일반적으로 가상 환경에 포함되는 다양한 유형의 객체와 연관된 사운드 효과를 포함하는 동적 오디오 출력을 제공할 수 있더라도, 출력된 오디오가 가상 현실 콘텐츠의 다양한 양태를 정확하게 나타내지 않을 수 있다. 예를 들어, 사용자로부터 특정 거리만큼 이격되어 있고 사용자 위로 특정 거리에 위치하는 가상 객체의 경우, 오디오를 사용자에게 출력하는 헤드폰 또는 스피커를 구현하는 종래의 시스템은, 사용자가 가상 객체에 의해 생성된 사운드를 가상 환경 내 가상 객체의 특정 위치로부터 발산되는 것으로 지각하도록, 오디오를 출력하지 못할 수 있다.
이와 같이, 가상 현실 환경과 연관된 오디오를 생성 및 출력하기 위한 더 효과적인 기법이 유용할 것이다.
한 가지 실시예가 로봇 스피커로 사운드를 매핑하기 위한 방법을 제공한다. 상기 방법은 가상 환경 내에 포함되는 가상 객체와 연관된 사운드를 로봇 스피커로 매핑하는 단계, 정보를 로봇 스피커로 전송하여 로봇 스피커가 가상 환경 내 가상 객체의 위치에 대응하는 물리적 환경 내 위치로 이동하게 하는 단계, 및 오디오 신호를 로봇 스피커로 전송하는 단계를 포함하며, 이때 로봇 스피커는 오디오 신호를 기초로 물리적 환경 내 위치에서, 가상 객체와 연관된 사운드를 출력한다.
추가 실시예가 앞서 제공된 방법을 구현하도록 구성된 시스템, 디바이스 및 컴퓨터 판독형 저장 매체 등을 제공한다.
개시된 기법의 적어도 하나의 이점이 가상 현실 콘텐츠의 사용자로의 오디오 출력이 가상 현실 콘텐츠를 더 정확히 나타낸다는 것이다. 특히, 사용자가 듣는 오디오가 사용자가 가상 현실 콘텐츠에서 보는 것을 기초로 하는 오디오에 대한 사용자 예상과 더 가깝게 매칭된다. 결과적으로, 오디오가 더 몰입하는 가상 현실 경험을 촉진한다.
앞서 언급된 특징부가 상세히 이해될 수 있는 방식으로, 앞서 간략히 요약된 다양한 실시예의 더 구체적인 기재가 실시예를 참조하여 이뤄질 수 있고, 이들 실시예 중 일부가 첨부된 도면에서 도시된다. 그러나 첨부된 도면은 단지 일반적인 실시예를 도시할 뿐이며, 따라서 고려되는 실시예에 대해 이의 범위의 한정으로 간주되지 않으며, 그 밖의 다른 동등하게 유효한 실시예를 인정할 수 있다.
도 1은 다양한 실시예의 하나 이상의 양태에 따라, 하나 이상의 로봇 스피커를 구현하는 가상 현실 시스템을 도시하는 개념도이다.
도 2는 다양한 실시예의 하나 이상의 양태에 따라, 도 1의 가상 현실 시스템의 컴퓨팅 디바이스를 도시하는 블록도이다.
도 3은 다양한 실시예의 하나 이상의 양태에 따라, 도 1의 로봇 스피커를 도시하는 블록도이다.
도 4는 다양한 실시예의 하나 이상의 양태에 따라, 로봇 스피커로 가상 객체를 매핑하기 위한 방법 단계들의 흐름도이다.
도 5는 다양한 실시예의 하나 이상의 양태에 따라, 로봇 스피커를 통해 가상 객체와 연관된 오디오를 출력하기 위한 방법 단계의 흐름도이다.
도 6a-6c는 다양한 실시예의 하나 이상의 양태에 따라, 바퀴를 갖는 로봇 스피커를 통해 가상 객체와 연관된 사운드를 출력하기 위한 기법을 도시하는 다이어그램이다.
도 7은 다양한 실시예의 하나 이상의 양태에 따라, 복수의 로봇 스피커를 도시하는 다이어그램이며, 여기서 둘 이상의 로봇 스피커는 하나 이상의 선 배열로 배열될 수 있다.
도 8은 다양한 실시예의 하나 이상의 양태에 따라, 구조물 상에 배열되는 복수의 로봇 스피커를 도시하는 다이어그램이다.
도 9a-9b는 다양한 실시예의 하나 이상의 양태에 따라, 천장에 매달린 복수의 로봇 스피커 및 가스 추진에 의한 로봇 스피커의 움직임을 도시하는 다이어그램이다.
다음의 기재에서, 복수의 특정 상세사항이 제공되어 다양한 실시예의 더 완전한 이해를 제공할 수 있다. 그러나 해당 분야의 통상의 기술자라면 다양한 실시예가 이들 특정 상세사항 중 하나 이상 없이 실시될 수 있음을 알 것이다.
시스템 개관
도 1은 다양한 실시예의 하나 이상의 양태에 따라, 하나 이상의 로봇 스피커를 구현하는 가상 현실 시스템을 설명하는 개념도이다. 도시된 바와 같이, VR 시스템(100)은 VR 헤드셋(110) 및 하나 이상의 컴퓨팅 디바이스(112)를 포함한다. 상기 VR 시스템(100)은 하나 이상의 로봇 스피커(108)와 통신 가능하게 연결된다. 도시된 바와 같이, VR 시스템(100), 로봇 스피커(108), 및 사용자(102)가 물리적 환경(physical environment)(104) 내에 위치한다. 다양한 실시예에서, 물리적 환경(104)은 개방 환경(가령, 개방 필드) 또는 폐쇄 환경(가령, 벽과 천장을 갖는 방)일 수 있다. 물리적 환경(104)은 물리적 환경(104) 내 (도시되지 않은) 벽, 천장, 바닥, 물리적 객체 등의 존재 또는 부재를 기초로 다양한 음향 특성을 가질 수 있다. 본 명세서에 기재된 실시예가 VR 시스템(100)으로 구현되지만, 기재된 실시예가 임의의 유형의 가상 환경 컴퓨팅 시스템(가령, 증강 현실 시스템)으로 구현될 수 있음이 자명할 것이다.
일반적으로, VR 시스템(100)은 VR 콘텐츠, 가령, 하나 이상의 가상 객체를 포함하는 가상 환경을 생성하고, 사용자(102)로부터 수신된 입력에 응답하여 VR 콘텐츠를 업데이트한다. 일반적으로 VR 콘텐츠는 시각적 콘텐츠(가령, 가상 객체) 및 시각적 콘텐츠에 대응하는 오디오 콘텐츠(가령, 가상 객체에 의해 생성되는 사운드)를 모두 포함한다. 시각적 콘텐츠는 하나 이상의 디스플레이 디바이스(가령, VR 헤드셋(110) 내에 장착되거나 그 밖의 다른 방식으로 연결되는 하나 이상의 디스플레이)를 통해 사용자(102)에게 디스플레이될 수 있다. 오디오 콘텐츠는 하나 이상의 로봇 스피커(108)를 통해 그리고 선택사항으로서 하나 이상의 추가적인 정적 오디오 디바이스(가령, 헤드폰, VR 헤드셋(110) 상의 하나 이상의 스피커, 물리적 환경(104) 내에 배열되는 하나 이상의 정지형 스피커 등)를 통해 사용자(102)에게 제공될 수 있다.
일반적으로 종래의 VR 방식은 물리적 환경 내에 포함되는 정적 오디오 디바이스, 가령, 사용자가 착용하는 헤드폰, 또는 정지형 스피커를 통해 오디오 콘텐츠를 출력한다. 앞서 언급된 바와 같이, 정적 오디오 디바이스를 통해 출력되는 오디오 콘텐츠가 가상 환경 및/또는 가상 환경에 포함되는 가상 객체를 정확히 나타내지 않을 수 있다. 예를 들어, 정지형 스피커에 의해 출력된 사운드가 사용자와 가상 환경 내에 포함되는 가상 객체 간 거리, 방향 및/또는 모션을 정확히 반영하지 않을 수 있다.
따라서 다양한 실시예에서, VR 시스템(100)은 가상 환경 내에서 생성되고 있는 하나 이상의 사운드를 식별하고 사운드(들)가 하나 이상의 로봇 스피커(108)를 통해 출력되기 위한 후보인지 여부를 결정한다. 예를 들어, 가상 객체가 로봇 스피커(108)로 매핑되기 위한 후보자이고 하나 이상의 기준의 세트를 충족하는 경우, 가령, 가상 객체가 가상 환경 내 사용자(102)의 위치의 특정 거리 내에 있는 경우, 특정 가상 객체에 의해 생성되거나 그 밖의 다른 방식으로 연관된 사운드가 로봇 스피커(108)를 통해 출력될 수 있다. 가상 객체 및/또는 사운드가 로봇 스피커(108)를 통해 출력되기 위한 후보이고, 로봇 스피커(108)가 사운드를 출력하기 위해 이용 가능한 경우, 사운드 및/또는 가상 객체가 로봇 스피커(108)로 매핑된다. 그 후 로봇 스피커(108)가 가상 환경 내에서 사운드가 발산되는(또는 발산될) 위치에 대응하는 물리적 환경(104) 내 위치로 이동될 수 있다. 그 후 사운드는 로봇 스피커(108)를 통해 출력되어, 가상 환경 내 대응하는 가상 객체의 위치, 배향, 움직임 등을 더 정확히 반영하는 몰입형 청각 환경(immersive auditory environment)을 생성할 수 있다.
일부 실시예에서, 사용자(102)가 물리적 환경(104) 내 위치 또는 배향을 변경하지 않고 가상 환경 내에서 움직이거나 배향을 변경(가령, 제스처, 게임 컨트롤러, 조이스틱 등을 이용한 입력을 통해 가상 환경 내에서 이동하거나 배향을 변경)할 때 및/또는 VR 콘텐츠와 대화할 때, 로봇 스피커(108)가 물리적 환경(104) 내에서 위치 변경되어 가상 환경 내 사용자(102)의 업데이트된 위치 및/또는 배향을 반영할 수 있다. 덧붙여, 사용자(102)가 물리적 환경(104) 내에서 이동하거나 배향을 변경했는지 또는 가상 환경 내 사용자(102)의 위치 및/또는 배향이 변경됐는지 무관하게, 로봇 스피커(108)는 물리적 환경(104) 내에서 위치 변경되어, 가상 환경 내 가상 객체의 위치 및 배향을 반영할 수 있다.
도시된 바와 같이, VR 시스템(100)은 하나 이상의 컴퓨팅 디바이스(112)를 포함할 수 있다. 다양한 실시예에서, 컴퓨팅 디바이스(들)(112)가 사용자 입력에 응답하여 VR 콘텐츠를 생성하고 VR 콘텐츠를 업데이트한다. 일부 실시예에서, 도 1에 도시된 바와 같이 컴퓨팅 디바이스(들)(112)가 VR 헤드셋(110)과 분리되고 통신 가능하게 연결된다. 덧붙여, 일부 실시예에서, 컴퓨팅 디바이스(들)(112)는 VR 헤드셋(110)과 일체 구성 및/또는 연결된다. VR 시스템(100)과 함께 구현될 수 있는 컴퓨팅 디바이스(112)의 예시가 도 2를 참조하여 이하에서 더 상세히 기재된다.
도시된 바와 같이, VR 헤드셋(110)은 VR 시스템(100)의 사용자(102)에 의해 착용되도록 구성된다. VR 헤드셋(110)은 유선 연결(가령, 하나 이상의 케이블, 커넥터 등) 및/또는 무선 연결(가령, Wi-Fi, 블루투스 등)을 통해 컴퓨팅 디바이스(들)(112)로 통신 가능하게 연결될 수 있다. VR 헤드셋(110)은 하나 이상의 입/출력 디바이스를 포함할 수 있고, 이들 중 하나 이상이 컴퓨팅 디바이스(들)(112)와 함께 동작될 수 있다. 예를 들어, VR 헤드셋(110)이 하나 이상의 센서(가령, 관성 센서, 가속도계, 자이로스코프, 자력계, 근접도 센서 등)를 포함할 수 있다. 하나 이상의 센서로부터의 데이터가 컴퓨팅 디바이스(들)(112)로 전송될 수 있고, 상기 디바이스는 사용자(102)의 위치, 사용자(102)의 모션, 사용자(102)의 머리의 절대 및/또는 상대 배향(106)(및 이에 따른 VR 헤드셋(110)의 절대 및 상대 배향), VR 헤드셋이 사용자(102)에 의해 착용되어 있는지 여부 등을 결정할 수 있다. 덧붙여, VR 헤드셋(110)은 하나 이상의 시각적 출력 디바이스(가령, 컴퓨팅 디바이스(들)(112)로부터 수신된 시각적 콘텐츠를 출력하기 위한 디스플레이(들))를 포함할 수 있다. VR 헤드셋(110)은 하나 이상의 오디오 출력 디바이스(가령, 컴퓨팅 디바이스(들)(112)로부터 수신된 오디오 콘텐츠를 출력하기 위한 헤드폰, 일체형 스피커 등)를 더 포함할 수 있다.
본 명세서에서 사용될 때, 물리적 환경(104) 내 사용자(102)의 위치가 물리적 환경(104)의 x, y 및 z 축을 따르는 3차원 공간으로 정의될 수 있다. 물리적 환경(104) 내 사용자(102)의 배향이 물리적 환경(104)의 3차원 공간 내에서 사용자(102)가 향하는 방향으로서 정의될 수 있다. 배향은 절대 기준계에 대해 또는 물리적 환경(104) 내 기준 위치 또는 객체에 대해 정의될 수 있다.
VR 시스템(100)은 컴퓨팅 디바이스(들)(112) 및/또는 VR 헤드셋(110)에 연결된 하나 이상의 입력 디바이스(도시되지 않음)를 포함할 수 있다. 예를 들어, VR 헤드셋(110)은 사용자 입력을 수신하기 위한 하나 이상의 입력 디바이스(가령, 버튼, 스위치, 터치 패드, 마이크로폰 등)를 포함할 수 있다. VR 시스템(100)은 (가령, 유선 또는 무선 연결에 의해) 컴퓨팅 디바이스(들)(112) 및/또는 VR 헤드셋(110)에 통신 가능하게 연결되고 사용자(102)에 의해 동작되도록 구성된 하나 이상의 개별 제어기 디바이스(가령, 게임패드, 조이스틱, 그 밖의 다른 핸드헬드 제어기 디바이스)를 더 포함할 수 있다. VR 시스템(100)은 입력 디바이스를 통해 사용자(102)로부터 입력(가령, VR 콘텐츠와 대화하는 입력, 메뉴 내비게이션 입력, 음성 입력, 볼륨 변경 입력)을 수신할 수 있다. VR 시스템(100)은 입력 디바이스를 통해 수신된 입력에 응답하여 VR 콘텐츠를 업데이트할 수 있다. 일부 실시예에서, 입력 디바이스 중 하나 이상이 또한 햅틱 피드백을 사용자(102)에게 제공할 수 있다.
각각의 로봇 스피커(108)가 하나 이상의 오디오 출력 디바이스(가령, 하나 이상의 스피커, 증폭기 등)를 포함할 수 있다. 오디오 출력 디바이스는 오디오 신호를 수신하고 (가령, 디코딩, 증폭, 디지털 신호 처리, 오디오 효과 등을 통해) 오디오 신호를 처리하여, 하나 이상의 스피커를 통해 출력되는 오디오 출력을 생성할 수 있다. 오디오 신호는 컴퓨팅 디바이스(들)(112)에 의해 생성된 오디오 콘텐츠(가령, VR 콘텐츠의 오디오 콘텐츠)를 포함할 수 있다.
각각의 로봇 스피커(108)는 또한 이동 구성요소(mobility component)(가령, 이동 구성요소(326), 도 3)를 포함할 수 있다. 로봇 스피커(108)의 이동 구성요소는 로봇 스피커(108)를 하나의 위치에서 또 다른 위치로 이동시킬 수 있고 물리적 환경(104) 내에서 배향을 변경할 수 있는 기계적, 전기적, 및/또는 그 밖의 다른 임의의 적합한 구성요소를 포함할 수 있으며, 이는 이하에서 도 3, 6a-6c, 7-8 및 9a-9b와 관련하여 더 상세히 기재된다.
도 2는 다양한 실시예의 하나 이상의 양태에 따르는 VR 시스템(100)의 컴퓨팅 디바이스(112)를 도시한다. 다양한 실시예에서, 하나 이상의 컴퓨팅 디바이스(들)(112)가 헤드셋(110)으로부터 분리되고 통신 가능하게 연결될 수 있거나, 헤드셋(110)과 일체 구성되거나, 이들의 조합일 수 있다. 도시된 바와 같이, 컴퓨팅 디바이스(112)는 하나 이상의 프로세서(202), 입/출력(I/O) 디바이스(204) 및 메모리(206)를 포함한다.
프로세서(들)(202)는 데이터를 처리하고 프로그램 명령을 실행하도록 구성된 임의의 기술적으로 구현 가능한 하드웨어 유닛일 수 있다. 프로세서(들)(202)는, 비제한적 예를 들어, 중앙 처리 장치(CPU), 그래픽 처리 장치(GPU), 주문형 집적 회로(ASIC), 현장 프로그램 가능 게이트 어레이(FPGA), 디지털 신호 프로세서(DSP) 및 이들의 임의의 조합을 포함할 수 있다.
I/O 디바이스(204)는 입력을 수신 및/또는 출력을 제공하기 위한 디바이스를 포함할 수 있다. 비제한적 예를 들면, I/O 디바이스(204)가 하나 이상의 제어기 디바이스, 키보드, 마우스, 터치패드, 하나 이상의 센서 디바이스(가령, 카메라, 모션 센서, 가속도계, 자이로스코프, 자력계, 관성 센서 등), 하나 이상의 마이크로폰, 헤드폰, 및 하나 이상의 정적 오디오 디바이스를 포함할 수 있다. I/O 디바이스(204) 중 하나 이상이 VR 헤드셋(110) 내에 포함될 수 있다. I/O 디바이스(204)는 임의의 적합한 통신 기법을 이용하여 타 컴퓨팅 디바이스(112), VR 헤드셋(110), 및 로봇 스피커(108)와 통신하기 위한 하나 이상의 통신 디바이스(도시되지 않음)(가령, 무선 통신 디바이스, 유선 통신 디바이스)를 더 포함할 수 있다.
메모리(206)는 데이터 및 소프트웨어 애플리케이션을 저장하기 위한 임의의 기술적으로 구현 가능한 저장 매체를 포함할 수 있다. 메모리의 예를 들면, 랜덤 액세스 메모리(RAM) 모듈, 리드-온리 메모리(ROM) 모듈, 하드 디스크 드라이브, 솔리드 스테이트 드라이브, 플래시 메모리 등을 포함할 수 있다.
도 2에 도시된 바와 같이, 메모리(206)는 VR 모듈(208), 추적 모듈(210), 장면 관리자 모듈(212), 오디오 관리자 모듈(214), 물리적 환경 분석 모듈(216), 오디오 처리 모듈(218), VR 콘텐츠 정의(220), 가상 객체 정보(222), 물리적 환경 정보(224), 로봇 스피커 정보(226) 및 사용자 속성 정보(228)를 포함한다.
동작 중에, VR 모듈(208)은 사용자 입력, 가령, 센서 또는 제어기 디바이스를 통해 수신된 입력에 응답하여, VR 콘텐츠를 생성하고 VR 콘텐츠를 업데이트한다. VR 콘텐츠는 가상 환경, 하나 이상의 가상 객체, 및 선택사항으로서 가상 환경 내에서의 사용자(102)의 표현을 포함할 수 있다. 사용자(102)의 표현은 시각적일 필요가 없고 가상 환경에서의 사용자(102)에 할당된 속성(가령, 위치, 모션, 배향, 치수 등)을 구현할 수 있다. 사용자(102)의 표현은 또한 하나 이상의 연관된 가상 객체(가령, 가상 신체 부위)를 더 포함할 수 있고, VR 콘텐츠 내 캐릭터에 대응할 수 있다. VR 모듈(208)은 메모리(206)에 저장된 사전 설정된 VR 콘텐츠 정의(220)에 따라 VR 콘텐츠를 생성할 수 있다. VR 콘텐츠 정의(220)는 가능한 가상 환경, 가상 객체, 및 사용자 표현의 정의를 포함할 수 있다. 다양한 실시예에서, VR 콘텐츠 정의(220)는 VR 모듈(208)의 개발자에 의해 만들어질 수 있고, 메모리(206) 내 라이브러리 또는 데이터베이스(가령, 객체 클래스의 라이브러리, 속성에 대한 가능한 파라미터 범위의 데이터베이스)로서 저장되거나 및/또는 VR 모듈(208) 내에 사전-설정될 수 있다(가령, VR 모듈(208)의 프로그램 명령 내에 설정될 수 있다).
일부 실시예에서, VR 콘텐츠 정의(220)가 가상 객체 및/또는 상기 가상 객체와 연관된 사운드를 로봇 스피커(108)에 매핑하기 위한 우선순위 레벨을 더 정의할 수 있다. 예를 들어, VR 콘텐츠 정의(220)는 VR 콘텐츠에서 개(dog)를 정의할 수 있다. VR 콘텐츠 정의(220)는 VR 콘텐츠 내 가상 개의 임의의 인스턴스를 로봇 스피커(108)로 매핑하기 위한 우선순위 레벨을 더 정의할 수 있다. 우선순위 레벨은 하나 이상의 가상 객체에 할당되는 등급, 가상 객체가 로봇 스피커(108)로 매핑되어야 한다는 지시자, 또는 가상 객체가 로봇 스피커(108)에 절대 매핑될 수 없다는 지시자일 수 있다.
추적 모듈(210)은 사용자(102)와 로봇 스피커(108)를 추적한다. 예를 들어, 추적 모듈(210)은, 하나 이상의 I/O 디바이스(204)(가령, 헤드셋(110) 상의 하나 이상의 센서)와 함께, 물리적 환경(104)에서의 사용자(102) 및/또는 사용자(102)의 머리 배향(106)의 위치 및 모션을 결정하고 추적한다. 추적 모듈(210)은 사용자(102)의 위치, 모션, 및 배향(106)에 대응하는 메타데이터를 메모리(206)에 사용자 속성 정보(228)로서 저장할 수 있다. 사용자 속성 정보(228)는 물리적 환경(104) 내 사용자(102)와 연관된 속성의 메타데이터를 저장한다. 사용자(102)와 연관된 속성은 사용자(102)의 위치, 사용자(102)의 검출된 모션(가령, 모션의 속력 및 방향) 및 사용자(102)의 배향(106)을 포함할 수 있다. VR 모듈(208)은 사용자 속성 정보(228)를 판독하여, 가상 환경 내 사용자(102)의 위치, 모션, 및 배향을 결정할 수 있다.
일부 실시예에서, 또한 추적 모듈(210)은 로봇 스피커(108)의 위치를 결정 및 추적한다. 예를 들어, 추적 모듈(210)은 하나 이상의 I/O 디바이스(204)(가령, 마이크로폰, 센서)와 함께 하나 이상의 기법(가령, 삼변측량)을 이용하여, 로봇 스피커(108)의 위치를 결정 및 추적할 수 있다. 추가로 또는 대안으로, 각각의 로봇 스피커(108)는 물리적 환경(104) 내 로봇 스피커(108)의 위치를 결정하고 위치를 컴퓨팅 디바이스(112)로 전송하도록 구성된 I/O 디바이스(가령, 센서(324)) 및/또는 그 밖의 다른 구성요소를 포함할 수 있다. 예를 들어, 로봇 스피커(108)는 스피커 위치 정보(318)(도 3)를 컴퓨팅 디바이스(112)로 전송할 수 있다. 그 후 추적 모듈(210)은 로봇 스피커(108)의 위치에 대응하는 메타데이터를 로봇 스피커 정보(226)로서 메모리(206)에 저장할 수 있다. 일부 실시예에서, 추적 모듈(210)은 하나 이상의 추적 시스템(가령, OPTITRACK, LIGHTHOUSE, 코딩된 조명 시스템)과 (가령, VR 헤드셋(110)을 추적함으로써) 함께 사용자(102)를 추적하고 로봇 스피커(108)를 추적한다.
다양한 실시예에서, 장면 관리자 모듈(212)은 VR 모듈(208)에 의해 생성된 VR 콘텐츠에서 가상 객체를 식별한다. 장면 관리자 모듈(212)은 가상 객체의 속성을 결정하고 가상 객체의 속성에 대응하는 메타데이터를 가상 객체 정보(222)로서 메모리(206)에 저장한다. 가상 객체 정보(222)는 가상 환경 내 가상 객체의 속성에 대응하는 메타데이터를 포함한다. 일부 실시예에서, 가상 객체는 가상 환경을 구성하는 시각적 객체(가령, 지면, 하늘의 구름, 풍경 등) 및 가상 환경 내에 존재하는 그 밖의 다른 가상 객체(가령, 동물, 사람, 물건)를 포함한다. 일부 실시예에서, 장면 관리자 모듈(212)은 VR 모듈(208)에 의해 생성된 VR 콘텐츠를 평가함으로써 가상 객체를 식별하고 가상 객체의 속성을 결정한다. 장면 관리자 모듈(212)은 VR 콘텐츠를 주기적으로(가령, 매 초마다) 또는 연속으로 평가할 수 있다.
장면 관리자 모듈(212)에 의해 결정될 수 있는 가상 객체의 속성의 비제한적 예로는, 가상 환경 내 가상 객체의 위치, 가상 환경 내 사용자(102)에 대응하는 위치로부터의 가상 객체의 거리, 가상 환경 내 타 가상 객체(가령, 벽 등)까지의 거리, 가상 객체에서부터 가상 환경 내 사용자 또는 또 다른 가상 객체까지의 최단 직선 경로(가령, 광선-추적 경로), 가상 객체의 잔향 속성(가령, 반사계수, 객체의 형태 등), 가상 객체의 사운드 흡수 또는 차단 속성(가령, 사운드 흡수 계수 등), 가상 객체의 치수(가령, 길이, 폭, 높이), 및 가상 객체의 형태 또는 지오메트리(가령, 가상 객체가 평면 형태를 가지는지 또는 삐죽삐죽한 형태를 가지는지 등)이 있을 수 있다.
다양한 실시예에서, 오디오 관리자 모듈(214)은 VR 모듈(208)에 의해 생성된 VR 콘텐츠에서 가상 객체(가령, 장면 관리자 모듈(212)에 의해 식별되는 동일한 가상 객체)를 식별한다. 특정 가상 객체의 경우, 오디오 관리자 모듈(214)이 (가령, 가상 객체 정보(222)로부터) 가상 객체의 속성을 획득한다.
오디오 관리자 모듈(214)은 가상 객체가 유한 개수의 로봇 스피커(108)에 포함되는 로봇 스피커에 매핑되기 위한 후보인지 여부를 결정한다. 일부 실시예에서, 오디오 관리자 모듈(214)은 가상 객체가 사운드를 생성하는지 여부 및/또는 가상 객체가 타 가상 객체로부터의 사운드에 영향을 미치는지 여부를 결정함으로써, 가상 객체가 로봇 스피커로 매핑되기 위한 후보인지 여부를 결정한다. 일부 실시예에서, VR 콘텐츠 정의(220) 또는 가상 객체 정보(222)는 가상 객체가 사운드를 생성(가령, 말하는 가상 사람, 짖는 가상 개, 파도 소리를 내는 가상 바다)하는지 여부 또는 타 가상 객체에 의해 생성되는 사운드에 영향을 미치는지 여부를 정의할 수 있다. 예를 들어, 가상 객체는 사운드를 반사시킴으로써(가령, 사운드를 반사시키는 벽) 또는 사운드를 차단함으로써(가령, 창 또는 문이 통과하는 사운드를 차단하거나 약하게 할 수 있음), 사운드에 영향을 미칠 수 있다. 일부 실시예에서, 가상 객체가 사운드를 생성 및/또는 사운드에 영향을 미치도록 결정된 경우, 가상 객체는 로봇 스피커(108)로 매핑되기 위한 후보라고 결정된다. 일부 실시예에서, 가상 객체가 사운드를 생성하거나 사운드에 영향을 미치는지에 무관하게, VR 콘텐츠 정의(220) 또는 가상 객체 정보(222)가 가상 객체가 로봇 스피커에 매핑되기 위한 후보임을 가리킬 수 있다.
가상 객체가 로봇 스피커(108)로 매핑되기 위한 후보로 결정된 경우, 오디오 관리자 모듈(214)은 가상 객체에 의해 생성되거나 영향받는 사운드를 식별한다. 그 후 오디오 관리자 모듈(214)은 (가령, 가상 객체 정보(222)로부터) 식별된 사운드의 속성 및/또는 가상 객체의 속성을 평가하여, 사운드 및/또는 가상 객체가 가상 객체를 로봇 스피커(108)로 매핑하기 위한 하나 이상의 기준의 세트를 충족시키는지 여부를 결정할 수 있다. 사운드 및/또는 가상 객체가 기준의 세트를 충족한다고 결정되는 경우, 가상 객체 및/또는 사운드가 로봇 스피커(108)로 매핑될 수 있다.
일부 실시예에서, 오디오 관리자 모듈(214)은 가상 객체의 속성 및 사운드의 속성을 평가하여, 사운드 및/또는 가상 객체가 기준의 세트를 충족하는지 여부를 결정할 수 있다. 기준의 비제한적 예를 들면, 가상 객체가 가상 환경 내에서 사용자(102)로부터 임계 거리 범위 내에 있는지 여부, 사운드가 지정 주파수 범위 내에 있는지 여부, 가상 객체가 로봇 스피커(108)로의 매핑을 필요로 한다고 지정되었는지 여부, 및 가상 객체가 특정 유형의 사운드를 생성하는지 여부를 포함한다.
일부 실시예에서, 로봇 스피커(108)로 매핑하기 위한 기준이 가상 객체가 가상 환경 내에서 사용자의 위치로부터의 임계 거리 범위 내에 있는지 여부이다. 오디오 관리자 모듈(214)은 가상 객체가 사용자의 위치에 지나치게 멀거나 지나치게 가까운 경우 가상 객체가 임계 거리 범위 밖에 있음을 결정할 수 있다. 사용자의 위치로부터 지나치게 먼 사운드가 출력으로부터 생략되거나 및/또는 하나 이상의 정적 오디오 디바이스(가령, 정지형 스피커)를 통해 출력될 수 있으며, 사용자의 위치에 지나치게 가까운 사운드는 하나 이상의 정적 오디오 디바이스(가령, 헤드폰)를 통해 출력될 수 있다. 오디오 관리자 모듈(214)이 가상 객체가 임계 거리 범위 밖에 있다고 결정하는 경우, 가상 객체는 이 기준을 충족하지 않는다.
일부 실시예에서, 로봇 스피커(108)로 매핑하기 위한 또 다른 기준은 사운드가 임계 주파수 범위 내에 있는지 여부이다. 오디오 관리자 모듈(214)은 사운드가 임계 주파수 범위 내에 있지 않은 주파수를 갖는 경우 사운드가 임계 주파수 범위를 벗어난다고 결정할 수 있다. 임계 주파수 범위 밖의 사운드는, 정적 오디오 디바이스에 의해 출력될 때 로봇 스피커(108)에 비해 사용자가 지각 가능한 차이를 거의 또는 전혀 갖지 않을 수 있다. 따라서 임계 주파수 범위 밖의 사운드가 로봇 스피커(108)를 대신하여 정적 오디오 디바이스에 의해 출력될 수 있다. 오디오 관리자 모듈(214)이 사운드가 임계 주파수 범위 밖에 있다고 결정한 경우, 사운드는 이 기준을 충족하지 않는다.
일부 실시예에서, 로봇 스피커(108)로 매핑하기 위한 또 다른 기준은 가상 객체가 로봇 스피커(108)로 매핑되어야 한다고 지정되었는지 여부이다. 오디오 관리자 모듈(214)은 가상 객체가 개발자에 의해 (가령, VR 콘텐츠 정의(220) 내에) 상기 가상 객체를 로봇 스피커(108)로 매핑해야 한다고 지정되었다고 결정할 수 있다. 가상 객체는 VR 콘텐츠 내 가상 객체의 중요도를 기초로 하나 이상의 로봇 스피커(108)로 매핑되어야 한다고 개발자에 의해 지정될 수 있다. 오디오 관리자 모듈(214)이 가상 객체가 로봇 스피커(108)로 매핑되어야 한다고 지정됐다고 결정한 경우, 가상 객체는 매핑되기 위한 기준 세트를 충족한다.
일부 실시예에서, 로봇 스피커(108)로의 매핑되기 위한 또 다른 기준은 VR 콘텐츠 내 사운드의 유형 및/또는 VR 콘텐츠 내 사운드를 생성하는 가상 객체의 유형이다. 즉, 특정 사운드가 로봇 스피커(108)를 통해 출력되기에 더 적합하다. 예를 들어, 1인칭 슈터 게임과 관련된 VR 콘텐츠에서, 적 캐릭터로부터의 사운드가 비교적 더 중요한 것으로 간주될 수 있으며, 따라서 가상 환경 내 다른 객체로부터의 주변 사운드(가령, 강이 흐르는 소리)보다, 로봇 스피커(108)를 통해 출력되기 더 적합할 수 있다. 오디오 관리자 모듈(214)이 적 캐릭터 사운드가 환경 내 객체로부터의 사운드보다 더 중요하다고 결정한 경우, 오디오 관리자 모듈(214)은 적 캐릭터 사운드가 기준을 충족하고 환경 내 다른 객체(흐르는 강물)로부터의 사운드가 기준을 충족하지 않는다고 결정할 수 있다. 일부 실시예에서, 오디오 관리자 모듈(214)은 환경 내 객체로부터의 사운드가 기준을 충족하지만, 적 캐릭터 사운드보다 낮은 우선순위를 가진다고 결정할 수 있다.
또 다른 예를 들면, 캐릭터로부터의 음성이 사용자 표현으로부터의 내적 독백에 대응하는 음성보다 로봇 스피커(108)를 통해 출력되기에 더 적합할 수 있는데, 왜냐하면 일반적으로 공간감 및 거리감이 내적 독백에 필요하지 않기 때문이다. 오디오 관리자 모듈(214)은 캐릭터로부터의 음성이 기준을 충족하고 내적 독백이 기준을 충족하지 않는다고 결정할 수 있다. 일부 실시예에서, 오디오 관리자 모듈(214)은 내적 독백이 기준을 충족하지만 캐릭터로부터의 음성보다 낮은 우선순위를 가진다고 결정할 수 있다.
또 다른 예를 들면, 주연 캐릭터로부터의 음성이, 조연 캐릭터로부터의 음성보다, 더 중요한 것으로 간주될 수 있으며, 따라서 로봇 스피커(108)를 통해 출력되기 더 적합할 수 있다. 오디오 관리자 모듈(214)은 주연 캐릭터로부터의 음성이 기준을 충족한다고 결정할 수 있다. 오디오 관리자 모듈(216)은 조연 캐릭터로부터의 음성이 또한 기준을 충족하지만, 주연 캐릭터로부터의 음성보다 더 낮은 우선순위를 가진다고 결정할 수 있다.
일부 실시예에서, 오디오 관리자 모듈(214)은 또한 기준의 세트를 기초로 사운드 및/또는 가상 객체에 대한 우선순위를 결정한다. 오디오 관리자 모듈(214)은 기준의 세트를 기초로 로봇 스피커(108)로 매핑되기 위한 가상 객체를 우선순위 또는 탈우선순위화할 수 있다. 예를 들어, 사용자에게 가깝지만 여전히 임계 거리 범위 내에 있는 가상 객체가 사용자로부터 멀지만 임계 거리 범위 내에 있는 가상 객체보다 우선순위를 가질 수 있다. 또 다른 예를 들면, VR 콘텐츠가 가상 우림에서 개최되는 가상 회의에 대응하는 경우, 참석자로부터의 음성이 환경과 연관된 주변 사운드보다 중요하기 때문에, 회의 참석자로부터의 음성이 가상 우림 내 객체들로부터의 주변 사운드에 비해 우선순위를 가질 수 있다. 가상 객체가 로봇 스피커(108)로 매핑될 필요가 있다고 지정되는 경우, 오디오 관리자 모듈(214)은 가상 객체가 가장 높은 우선순위를 가진다고 결정할 수 있다.
사운드 및/또는 가상 객체가 기준의 세트를 충족하고, 로봇 스피커(108)가 매핑에 이용 가능한 경우, 가상 객체 및/또는 사운드가 로봇 스피커(108)로 매핑된다. 어떠한 로봇 스피커(108)도 매핑에 이용 가능하지 않는 경우(가령, 모든 로봇 스피커(108)가 가상 객체에 이미 매핑된 경우), 오디오 관리자 모듈(214)은 사운드 및/또는 가상 객체가 로봇 스피커(108)에 이미 매핑된 또 다른 가상 객체에 비해 우선순위를 갖는지 여부를 결정할 수 있다. 오디오 관리자 모듈(214)이 사운드 및/또는 가상 객체가 로봇 스피커(108)에 이미 매핑된 또 다른 가상 객체보다 우선순위를 가진다고 결정하는 경우, 오디오 관리자 모듈(214)이 현재 매핑을 제거하고 더 높은 우선순위 사운드 및/또는 가상 객체와 로봇 스피커(108) 간 새 매핑을 생성할 수 있다.
일부 실시예에서, 가상 객체 및/또는 상기 가상 객체와 연관된 사운드의 로봇 스피커로의 매핑이 동적이고 시간에 따라 변한다. 예를 들어, 특정 가상 객체 및/또는 가상 객체에 의해 생성 또는 영향받는 사운드가 기준 세트를 충족하는지 여부가 VR 콘텐츠가 업데이트됨에 따라 시간에 따라 변할 수 있다. 로봇 스피커(108)로 매핑되는 가상 객체가 기준 세트를 더는 충족하지 않는 경우, 오디오 관리자 모듈(214)이 상기 매핑을 제거하거나 및/또는 상기 매핑을 더 높은 우선순위 가상 객체와 로봇 스피커(108) 간 매핑으로 교체할 수 있다. 일부 실시예에서, 오디오 관리자 모듈(214)이 가상 객체 및/또는 상기 가상 객체와 연관된 사운드가 로봇 스피커(108)로 어떻게 매핑되는지 및 임의의 매핑이 삭제 또는 교체되어야 하는지 여부를 지속적으로 결정한다.
일부 실시예에서, 복수의 가상 객체 및/또는 상기 복수의 가상 객체와 연관된 사운드가 동일한 로봇 스피커(108)로 매핑될 수 있다. 예를 들어, 가상 환경 내 캐릭터 음성이 캐릭터의 음성을 낮추는 창을 통해 들릴 수 있다. 이러한 상황에서, 캐릭터(사운드의 생산자)와 창(사운드에 영향을 미치는 객체) 모두 동일한 로봇 스피커(108)로 매핑될 수 있다.
일부 실시예에서, 동일한 가상 객체 및/또는 상기 동일한 가상 객체와 연관된 사운드가 복수의 로봇 스피커(108)로 매핑될 수 있다. 예를 들어, 가상 환경 내 바다가 움직이는 파도에 대응하는 사운드를 생성할 수 있다. 바다가 복수의 로봇 스피커(108)로 매핑될 수 있으며, 복수의 로봇 스피커(108)가 로봇 스피커의 선 배열(line array)을 형성할 수 있다. 파도가 가상 환경 내에서 이동하는 것처럼 파도 사운드의 출력이 상기 배열 내 첫 번째 로봇 스피커에서 시작하여 상기 배열 내 다른 로봇 스피커(108)로 이동할 수 있다. 로봇 스피커(108)의 선 배열의 예시가 도 7과 관련하여 이하에서 기재된다.
일부 실시예에서, 오디오 관리자 모듈(214)은 로봇 스피커(108)로 매핑된 하나 이상의 가상 객체 및/또는 하나 이상의 가상 객체와 연관된 사운드에 대해, 가상 객체에 의해 생성되거나 영향받는 사운드에 대응하는 오디오 신호에 적용될 하나 이상의 처리 동작을 결정할 수 있다. 처리 동작의 예시로는 진폭 조절, 이퀄라이제이션(equalization), 공간화(spatialization), 및/또는 그 밖의 다른 유형의 오디오 효과(가령, 잔향)를 포함한다. 오디오 관리자 모듈(214)은 가상 객체 정보(222)(가령, 가상 객체와 사용자 간 거리, 가상 벽의 반사 또는 흡수 계수 등), 물리적 환경 정보(224)(가령, 물리적 환경(104) 내 벽의 존재 또는 부재), 로봇 스피커 정보(226)(가령, 사용자(102)에 대한 로봇 스피커(108)의 위치), 및 사용자 속성 정보(228)(가령, 사용자(102)의 위치 및/또는 배향)를 기초로 적용될 처리 동작(들)을 결정할 수 있다. 오디오 관리자 모듈(214)은 오디오 처리 모듈(218)에게 하나 이상의 프로세서(202)(가령, 디지털 신호 프로세서)와 함께, 결정된 처리 동작에 따라 가상 객체에 의해 생성되거나 영향받는 사운드에 대응하는 오디오 신호를 처리할 것을 명령할 수 있다.
예를 들어, 오디오 관리자 모듈(214)은 가상 객체와 가상 환경 내 사용자(102)에 대응하는 위치 간 거리를 매핑된 로봇 스피커(108)와 사용자(102) 사이의 거리에 비교할 수 있다. 오디오 관리자 모듈(214)은 거리를 조화시키기 위해 오디오 신호에 대한 하나 이상의 처리 동작(가령, 이퀄라이제이션, 진폭 및/또는 잔향 조절)을 결정할 수 있다. 처리 동작에 따라 오디오 신호가 처리되어, 오디오 신호에 대응하는 오디오가 로봇 스피커(108)를 통해 출력될 때, 오디오가 가상 객체와 가상 환경 내 사용자(102)에 대응하는 위치 간 거리와 실질적으로 동일한 거리로부터 온 것으로 사용자(102)에 의해 지각될 수 있다.
오디오 관리자 모듈(214)은 로봇 스피커(들)(108)에 매핑된 하나 이상의 가상 객체 및/또는 상기 하나 이상의 가상 객체와 연관된 사운드에 대해, 로봇 스피커(들)(108)가 위치할 물리적 환경(104) 내 타깃 위치 및 배향을 더 결정할 수 있다. 오디오 관리자 모듈(214)은 로봇 스피커 정보(226)를 액세스하여, 각각의 로봇 스피커(108)의 현재 위치를 결정하고, 각각의 로봇 스피커(108)에 대해 타깃 위치 및 배향을 결정하고, 타깃 위치(들)를 로봇 스피커(들)(108)로 전송할 수 있다.
일부 실시예에서, 오디오 관리자 모듈(214)에 의해 기준의 세트를 충족하지 않는 사운드 및/또는 가상 객체가 VR 오디오 출력을 위한 종래의 기법을 통해 출력(가령, 정적 오디오 디바이스를 통해 출력)될 수 있다. 이러한 사운드는 하나 이상의 정적 오디오 디바이스를 통해 출력될 수 있다.
예를 들어, 사용자(102)는 작은 방인 물리적 환경(104) 내에서 VR 시스템(100)을 이용하는 중일 수 있다. VR 시스템(100)은 사용자(102)를 위해 큰 객석 및 사용자(102)에 인접한 가상 사람을 포함하는 VR 콘텐츠를 생성하며, 이때 사용자(102)의 위치가 객석의 중심이다. 가상의 사람이 가상 강당에서 박수를 친다. 가상의 사람과 사용자 간 짧은 거리 때문에 박수 사운드 자체가 정적 오디오 디바이스(가령, VR 헤드셋(110) 상의 헤드폰, 스피커)를 통해 출력될 수 있다. 박수 사운드가 가상 강당의 벽에 반사될 수 있다. 오디오 관리자 모듈(214)이 벽이 박수 사운드에 영향을 미치는 가상 객체이기 때문에 벽이 로봇 스피커(108)로의 매핑되기 위한 후보자라고 더 결정할 수 있다. 오디오 관리자 모듈(214)은 박수 및/또는 벽의 반사된 사운드가 로봇 스피커(108)로 매핑되기 위한 기준의 세트를 충족한다고 결정할 수 있다. 그 후 오디오 관리자 모듈(214)은 벽을 각자의 로봇 스피커(108)로 매핑할 수 있다. 오디오 관리자 모듈(214)은, 적어도 가상 객체 정보(222), 물리적 환경 정보(224), 로봇 스피커 정보(226), 및 사용자 정보(228)를 기초로, 가상 강당 내 벽과 사용자 간 거리가 물리적 환경(104) 내 로봇 스피커(108)와 사용자(102) 간 거리보다 김을 더 결정할 수 있다. 따라서 오디오 관리자 모듈(214)은 거리 차이를 고려하는 벽에 의한 사운드 반사에 대응하는 오디오 신호에 적용될 하나 이상의 처리 동작을 결정하고, 대응하는 오디오 출력이 사운드의 반사(가령, 에코)로서 사용자에 의해 지각됨을 보장할 수 있다. 이러한 방식으로, 로봇 스피커(108)를 통해 출력된 오디오 신호가 가상 강당 내 벽과 사용자 위치 간 거리에 더 밀접하게 상관된다. 오디오 관리자 모듈(214)이 로봇 스피커(들)(108)에게 각자의 타깃 위치 및/또는 배향으로 이동할 것을 더 명령함으로써, 사용자에 대한 벽의 위치(들), 방향(들) 등과 더 밀접하게 상관할 수 있다.
물리적 환경 분석 모듈(216)이 물리적 환경(104)의 하나 이상의 속성(가령, 치수, 물리적 객체의 위치, 물리적 객체까지의 거리 등)을 결정하고 속성을 분석하여 물리적 환경(104)의 음향 특성을 결정할 수 있다. 일부 실시예에서, 물리적 환경 분석 모듈(216)은, 하나 이상의 I/O 디바이스(204) 및/또는 I/O 디바이스(304)(가령, 로봇 스피커(108) 상의 센서(324))를 통해, 물리적 환경(104)의 속성을 결정할 수 있다. 또 다른 실시예에서, 물리적 환경(104)의 속성이 개별 실내 음향 분석 시스템(도시되지 않음) 및/또는 사용자 입력으로부터 획득될 수 있다. 물리적 환경(104)의 속성에 대응하는 메타데이터가 메모리(206)에 물리적 환경 정보(224)로서 저장될 수 있다. 물리적 환경 분석 모듈(216)은 물리적 환경 정보(224)를 분석하여 물리적 환경(104)의 음향 특성을 결정할 수 있다. 예를 들어, 물리적 환경 분석 모듈(216)은 물리적 환경 정보(224)로부터 물리적 환경(104)의 벽의 반사율을 결정할 수 있다. 대안으로, 물리적 환경(104)의 음향 특성이 실내 음향 분석 시스템으로부터 및/또는 사용자 입력으로부터 획득될 수 있다.
오디오 처리 모듈(218)은 로봇 스피커(108)로 매핑되는 가상 객체와 연관된 사운드에 대응하는 오디오 신호를 처리한다. 상기 오디오 처리 모듈(218)은 오디오 신호에 대한 오디오 관리자 모듈(214)에 의해 결정되는 처리 동작을 수행한다. 일부 실시예에서, 처리는 프로세서(202)(가령, 디지털 신호 프로세서)와 함께 수행된다. 그 후 오디오 신호가 출력되도록 로봇 스피커(108)로 전송된다. 일부 실시예에서, 오디오 처리 모듈(218)이 오디오 관리자 모듈(214)에 포함되고, 따라서 오디오 관리자 모듈(214)이 처리 동작을 결정하고, 오디오 신호에 대한 처리 동작을 수행하며, 처리된 오디오 신호를 로봇 스피커(108)로 전송한다.
일부 실시예에서, VR 시스템(100)은 복수의 컴퓨팅 디바이스(112)를 포함할 수 있다. (메모리(206)에 저장된 모듈에 의해 표현되는) VR 시스템(100)의 기능 및 메모리(206)에 저장된 정보가 복수의 디바이스(112) 간에 분할될 수 있다. 예를 들어, 제1 컴퓨팅 디바이스(112)가 가상 현실 모듈(208), 장면 관리자 모듈(212), VR 콘텐츠 정의(220), 및 가상 객체 정보(222)를 포함할 수 있다. 제2 컴퓨팅 디바이스(112)는 추적 모듈(210), 오디오 관리자 모듈(214), 물리적 환경 분석 모듈(216), 오디오 처리 모듈(218), 물리적 환경 정보(224), 로봇 스피커 정보(226), 및 사용자 속성 정보(228)를 포함할 수 있다. 제1 컴퓨팅 디바이스(112)는 가상 객체 정보(222)를 제2 컴퓨팅 디바이스(112)(가령, 오디오 관리자 모듈(214))로 제공할 수 있다. 로봇 스피커(108)는 적어도 제2 컴퓨팅 디바이스(112)와 통신 가능하게 연결될 수 있으며, 선택사항으로서 제1 컴퓨팅 디바이스(112)와도 역시 연결될 수 있다.
도 3은 다양한 실시예의 하나 이상의 양태에 따르는 로봇 스피커(108)를 도시한다. 도시된 바와 같이 로봇 스피커(108)는 하나 이상의 프로세서(302), 입/출력(I/O) 디바이스(304) 및 메모리(306)를 포함한다.
프로세서(들)(302)는 데이터를 처리하고 프로그램 명령을 실행하도록 구성된 임의의 기술적으로 구현 가능한 하드웨어 유닛일 수 있다. 프로세서(들)(302)는, 비제한적 예를 들어, 중앙 처리 장치(CPU), 그래픽 처리 장치(GPU), 주문형 집적 회로(ASIC), 현장 프로그램 가능 게이트 어레이(FPGA), 디지털 신호 프로세서(DSP) 또는 이들의 임의의 조합을 포함할 수 있다.
I/O 디바이스(304)는 입력을 수신 및/또는 출력을 제공하기 위한 디바이스를 포함할 수 있다. 비제한적 예를 들면, I/O 디바이스(304)가 하나 이상의 센서(324)(가령, 가속도계, 자이로스코프, 관성 센서 등) 및/또는 하나 이상의 오디오 출력 디바이스(310)를 포함할 수 있다. 일부 실시예에서, 센서(324)가 초음파 범위 파인더, 레이저 거리 측정 디바이스, 광학 센서, RF 센서, 및 블루투스 센서(가령, 블루투스 저 에너지 센서) 중 하나 이상을 포함한다. I/O 디바이스(304)는 VR 시스템(100), VR 헤드셋(110), 및/또는 그 밖의 다른 로봇 스피커(108) 내 컴퓨팅 디바이스(들)(112)와 통신하기 위한 하나 이상의 통신 디바이스(도시되지 않음)(가령, 무선 통신 디바이스)를 더 포함할 수 있다. 일부 실시예에서, 로봇 스피커(108)는 임의의 적합한 무선 통신 기법(가령, Wi-Fi, 블루투스)을 통해 컴퓨팅 디바이스(112), VR 헤드셋(110), 및 그 밖의 다른 로봇 스피커(108)와 통신할 수 있다.
이동 구성요소(326)는 물리적 환경(104) 내 로봇 스피커(108)의 배향을 이동 및 변경한다. 일반적으로, 이동 구성요소(326)는 물리적 환경(104) 내 로봇 스피커(108)를 이동 및/또는 회전시키기 위한 임의의 유형의 기계적, 전기적, 유체, 공기흐름 생성 및/또는 그 밖의 다른 임의의 적합한 구성요소를 포함할 수 있다. 이동 구성요소(326)가 컴퓨팅 디바이스(112)로부터의 명령 및/또는 타깃 위치에 따라 로봇 스피커(108)를 이동 및 배향 변경할 수 있다. 이동 구성요소(326)는 x, y, 및/또는 z 차원에 대해 로봇 스피커(108)의 위치를 변경하고 3차원 공간에서의 임의의 적합한 방향으로 로봇 스피커(108)를 배향 변경할 수 있다. 다양한 실시예에서, 이동 구성요소(326)는 로봇 스피커(108)를 적어도 x 및 y 방향에서 모든 방향으로 자유롭게 이동시킬 수 있는 홀로노믹(holonomic)이다. 로봇 스피커(108)의 이동 구성요소 및 운동의 상세한 예시가 도 6a-9b와 관련하여 이하에서 설명된다.
오디오 출력 디바이스(310)는 컴퓨팅 디바이스(112)로부터 수신된 오디오 신호에 대응하는 오디오를 출력한다. 오디오 출력 디바이스(310)는 하나 이상의 스피커를 포함할 수 있고 디코더(가령, 아날로그-디지털 변환기), 증폭기, 및 전치-증폭기 중 하나 이상을 더 포함할 수 있다.
메모리(306)는 데이터 및 소프트웨어 애플리케이션을 저장하기 위한 임의의 기술적으로 구현 가능한 저장 매체를 포함할 수 있다. 메모리는 예를 들어 랜덤 액세스 메모리(RAM) 모듈, 리드-온리 메모리(ROM) 모듈, 하드 디스크 드라이브, 솔리드 스테이트 드라이브, 플래시 메모리 등을 포함할 수 있다. 도 3에 도시된 바와 같이, 메모리(306)는 스피커 관리자 모듈(312), 위치설정 모듈(314), 오디오 출력 모듈(316), 및 스피커 위치 정보(318)를 포함한다.
동작 중에, 스피커 관리자 모듈(312)은 로봇 스피커(108)의 현재 위치를 추적한다. 스피커 관리자 모듈(312)은, 센서(324)와 함께, 로봇 스피커(108)의 현재 위치를 결정한다. 스피커 관리자 모듈(312)은 로봇 스피커(108)의 현재 위치에 대응하는 메타데이터를 메모리(306)에 스피커 위치 정보(318)로서 저장한다. 일부 실시예에서, 스피커 관리자 모듈(312)은 또한 하나 이상의 센서(324)를 통해 로봇 스피커(108)와 사용자(102) 간 거리를 추적하고 스피커 위치 정보(318)에 거리에 대응하는 메타데이터를 저장할 수 있다. 스피커 관리자 모듈(312)은 스피커 위치 정보(318)를 컴퓨팅 디바이스(112)로 전송할 수 있다.
일부 실시예에서, 스피커 관리자 모듈(312)은 컴퓨팅 디바이스(112)로부터 사용자(102) 및 로봇 스피커(108)에 대한 추적 정보(가령, 추적 모듈(210)에 의해 생성된 사용자 속성 정보(228) 및 로봇 스피커 정보(226))를 컴퓨팅 디바이스(112)로부터 수신한다. 따라서 스피커 관리자 모듈(312)은 물리적 환경(104) 내 로봇 스피커(108)의 움직임을 보조하면서, 물리적 환경(104) 내 사용자(102) 및 그 밖의 다른 로봇 스피커(108)의 위치를 획득할 수 있다.
위치설정 모듈(314)은 로봇 스피커(108)의 움직임을 지시한다. 위치설정 모듈(314)은, 예를 들어, 이동 구성요소(326)를 제어함으로써, 물리적 환경(108) 내에서의 로봇 스피커(108)의 움직임을 제어할 수 있다. 위치설정 모듈(314)은 또한, 센서(324)를 통해, 물리적 환경(104) 내에서 이동하는 동안 로봇 스피커(108)가 피해야 하는 장애물(가령, 물리적 환경(108) 내 다른 로봇 스피커(108) 및 그 밖의 다른 객체)을 검출할 수 있다. 일부 실시예에서, 위치설정 모듈(314)은 물리적 환경(104)에서 장애물(가령, 그 밖의 다른 로봇 스피커(108), 그 밖의 다른 객체)을 피해기 위한 서브-모듈 또는 서브-루틴을 포함할 수 있다. 위치설정 모듈(314)은 또한 로봇 스피커(108)의 움직임의 연속 제어 및 장애물 검출을 위한 제어 루프 피드백 기능(가령, 비례-적분-미분(PID: proportional-integral-derivative) 루프 기능)을 포함할 수 있다. 일부 실시예에서, 위치설정 모듈(314)은 특수 로봇 운동 모듈(가령, ROBOT OPERATING SYSTEM)을 포함할 수 있다.
오디오 출력 모듈(316)은 오디오 출력 디바이스(310)와 함께, 오디오 신호에 대해 하나 이상의 동작을 수행하여, 오디오 출력 디바이스(310)의 하나 이상의 스피커를 통해 사용자(102)에게 오디오를 출력할 수 있다. 일부 실시예에서, 동작은 오디오 신호를 디코딩하는 것, 오디오 신호를 증폭하는 것, 및 오디오 신호를 오디오로 변환하는 것을 포함한다.
다양한 실시예에서, 동작 중에, 로봇 스피커(108)는 컴퓨팅 디바이스(112)로부터 오디오 신호 및 타깃 위치를 수신한다. 스피커 관리자 모듈(312)은 타깃 위치를 수신하고 위치설정 모듈(314)에게 이동 구성요소(326)를 발동할 것을 지시함으로써 로봇 스피커(108)를 현재 위치에서 타깃 위치로 이동시킬 수 있다. 위치설정 모듈(314)은 이동 구성요소(326)를 발동하여 로봇 스피커(108)를 타깃 위치로 이동시킬 수 있다. 오디오 출력 모듈(316)은 로봇 스피커(108)가 타깃 위치에 위치될 때 출력되도록 오디오 신호에 대해 하나 이상의 동작을 수행한다.
일부 실시예에서, 로봇 스피커(108)는 타깃 위치로 이동하면서 오디오를 출력할 수 있다. 예를 들어, VR 콘텐츠가 움직이면서 말하는 가상 캐릭터를 포함하는 경우, 가상 캐릭터가 매핑되는 로봇 스피커(108)가 로봇 스피커(108)가 이동함에 따라 가상 캐릭터의 음성에 대응하는 오디오를 출력할 수 있다.
일부 실시예에서, 도 2의 컴퓨팅 디바이스(112)에 포함된 특정 모듈은 로봇 스피커(108)에 대신 포함될 수 있다. 예를 들어, 각각의 로봇 스피커(108)는 오디오 처리 모듈(218)과 유사한 오디오 처리 모듈을 포함할 수 있다(그리고 오디오 처리 모듈(218)은 선택사항으로서 컴퓨팅 디바이스(112)로부터 생략될 수 있다). 로봇 스피커(108)에서의 오디오 처리 모듈은 메모리(306)에 포함될 수 있다(가령, 오디오 출력 모듈(316)에 포함되거나 개별 모듈로서 포함될 수 있다). 이러한 실시예에서, 오디오 관리자 모듈(214)은 도 2와 관련하여 앞서 기재된 오디오 신호에 대한 처리 동작을 결정한다. 그 후 오디오 관리자 모듈(214)은 수행될 처리 동작(가령, 어느 처리 동작이 수행될지에 대한 명령) 및 이에 대응하는 오디오 신호를 로봇 스피커(108)로 통신할 수 있다. 로봇 스피커(108)에서의 오디오 처리 모듈은 오디오 관리자 모듈(214)로부터의 통신에 따라 오디오 신호에 대한 처리 동작을 수행한다.
도 4는 일부 실시예에 따라, 하나 이상의 로봇 스피커(108)로 하나 이상의 가상 객체를 매핑하기 위한 방법 단계들의 흐름도이다. 방법 단계들이 도 2의 시스템과 관련하여 기재되지만, 해당 분양의 통상의 기술자라면 임의의 순서로 방법 단계들을 구현하도록 구성된 임의의 시스템이 고려되는 실시예의 범주 내에 속함을 이해할 것이다.
도시된 바와 같이, 방법(400)은 단계(402)에서 시작하며, 여기서 컴퓨팅 디바이스(112)의 오디오 관리자 모듈(214)은 가상 환경 내에 포함되는 가상 객체를 식별한다. 가상 객체 및 가상환경은 VR 모듈(208)에 의해 생성되는 VR 콘텐츠에 포함된다. 단계(404)에서, 오디오 관리자 모듈(214)은 가상 객체와 연관된 정보를 획득한다. 예를 들어, 오디오 관리자 모듈(214)은 가상 객체 정보(222)로부터 가상 객체 정보를 획득할 수 있다.
단계(406)에서, 오디오 관리자 모듈(214)은 가상 객체가 가상 환경에서 사운드를 생성하는지 여부를 결정한다. 단계(406)에서, 오디오 관리자 모듈(214)은 가상 객체가 사운드를 생성한다고 결정한 경우, 방법(400)은 단계(412)로 진행된다. 단계(406)에서, 오디오 관리자 모듈(214)이 가상 객체가 사운드를 생성하지 않는다고 결정한 경우, 방법(400)은 단계(408)로 진행한다.
단계(408)에서, 오디오 관리자 모듈(214)은 가상 객체가 가상 환경 내 사운드(가령, 그 밖의 다른 가상 객체에 의해 생성된 사운드)에 영향을 미치는지 여부를 결정한다. 단계(408)에서, 오디오 관리자 모듈(214)이 가상 객체가 가상 환경 내 사운드에 영향을 미친다고 결정하는 경우, 상기 방법(400)은 단계(412)로 진행한다. 단계(408)에서, 오디오 관리자 모듈(214)이 가상 객체가 가상 환경 내 사운드에 영향을 미치지 않는다고 결정한 경우, 방법(400)은 단계(410)로 진행되고, 여기서, 오디오 관리자 모듈(214)은 가상 객체를 무시한다. 예를 들어, 단계(410)에서, 오디오 관리자 모듈(214)은 가상 객체를 임의의 로봇 스피커(108)로 매핑하지 않을 것이다.
단계(412)에서, 오디오 관리자 모듈(214)은 가상 객체와 연관된 사운드를 식별한다. 사운드가 가상 객체에 의해 생성되거나 영향받는(가령, 반사되는, 약해지는) 경우, 사운드는 가상 객체와 연관될 수 있다. 단계(414)에서, 오디오 관리자 모듈(214)이 사운드 및/또는 가상 객체가 하나 이상의 로봇 스피커 매핑 기준의 세트를 충족하는지 여부를 결정한다. 단계(414)에서, 오디오 관리자 모듈(214)이 사운드 및/또는 가상 객체가 기준의 세트를 충족하지 않는다고 결정하는 경우, 방법(400)은 단계(418)로 진행되며, 여기서, 오디오 관리자 모듈(214)이 가상 객체와 연관된 사운드를 하나 이상의 정적 오디오 디바이스를 통해 출력한다. 가상 객체와 연관된, 그러나 로봇 스피커(108)로 매핑되지 않은 사운드가 하나 이상의 정적 오디오 디바이스(가령, VR 헤드셋(110) 상의 헤드폰, 스피커, 물리적 환경(104)에서 사용자(102) 주위의 정지형 스피커)를 통해 출력될 수 있다.
단계(414)에서, 오디오 관리자 모듈(214)이 사운드 및/또는 가상 객체가 기준의 세트를 충족한다고 결정하는 경우, 방법(400)은 단계(416)로 진행되며, 여기서 오디오 관리자 모듈(214)이 가상 객체 및/또는 가상 객체와 연관된 사운드를 로봇 스피커(108)로 매핑한다. 단계(420)에서, 오디오 관리자 모듈(214)은 로봇 스피커(108)에 대한 타깃 위치를 결정하고 선택사항으로서 하나 이상의 처리 동작을 결정한다. 단계(422)에서, 오디오 처리 모듈(218)은 단계(420)에서 결정된 처리 동작을 가상 객체와 연관된 오디오 신호로 적용시킨다. 단계(424)에서, 오디오 관리자 모듈(214)은 오디오 신호 및 타깃 위치를 로봇 스피커(108)로 전송한다.
도 5는 일부 실시예에 따라, 가상 객체와 연관된 오디오를 로봇 스피커를 통해 출력하기 위한 방법 단계들의 흐름도이다. 방법 단계들이 도 3의 시스템과 관련하여 기재되지만, 해당 분야의 통상의 기술자라면 임의의 순서로 방법 단계들을 구현하도록 구성된 임의의 시스템이 고려되는 실시예의 범주 내에 속함을 이해할 것이다.
도시된 바와 같이, 방법(500)은 단계(502)에서 시작하며, 여기서 로봇 스피커(108)가 스피커 관리자 모듈(312)을 통해, 가상 객체와 연관된 타깃 위치 및 오디오 신호를 수신한다. 단계(504)에서, 로봇 스피커(108)의 위치설정 모듈(314)에 의해 로봇 스피커(108)는 이동 구성요소(326)를 통해, 타깃 위치로 이동할 수 있다. 단계(506)에서, 로봇 스피커(108)의 오디오 출력 모듈(316)이 오디오 신호에 대응하는 오디오를 오디오 출력 디바이스(들)(310)를 통해 출력한다. 일부 실시예에서, 로봇 스피커(108)는 오디오 신호에 대응하는 오디오를 출력하기 전에 (가령, 오디오 출력 모듈(216) 또는 개별 오디오 처리 모듈을 통해) 오디오 관리자 모듈(214)에 의해 결정되는, 오디오 신호에 대한 하나 이상의 처리 동작을 수행한다. 로봇 스피커(108)는 앞서 기재된 단계(422)에서처럼 컴퓨팅 디바이스(112) 대신 오디오 신호에 대한 처리 동작을 수행할 수 있다.
도 6a-6c는 다양한 실시예의 하나 이상의 양태에 따라, 바퀴를 갖는 로봇 스피커를 통해 가상 객체와 연관된 사운드를 출력하기 위한 기법을 도시하는 다이어그램이다. 도시된 바와 같이, 물리적 환경(104)은 VR 헤드셋(110)을 착용한 사용자(102) 주위에 배열된 로봇 스피커(108-1 내지 108-5)를 포함한다. 예를 들어, 로봇 스피커(108-2)는 위치(608)에 위치하고 로봇 스피커(108-5)는 위치(610)에 위치한다. 각각의 로봇 스피커(108)가 사용자(102)를 향해 배향된다. 도 6a에 도시된 바와 같이 로봇 스피커(108)는 물리적 환경(104) 내 위치에서 사운드를 출력할 수 있다. 각각의 로봇 스피커(108)는 하나 이상의 바퀴(602)를 포함하는 이동 구성요소(326)를 포함한다. 이하에서 언급된 실시예가 바퀴와 관련하여 기재되지만, 기법은 임의의 유형의 이동 구성요소(326)에 적용 가능하다.
각각의 로봇 스피커(108)가 하나 이상의 바퀴(602)를 통해 물리적 환경(104)에서 이리 저리 이동할 수 있다. 예를 들어, 도 6b에 도시된 바와 같이, 로봇 스피커(108-2)는 위치(608)에서 타깃 위치(612)로 이동할 수 있고, 로봇 스피커(108-5)는 위치(610)에서 타깃 위치(614)로 이동할 수 있다. 직선 경로는 회피될 장애물을 포함할 수 있기 때문에, 로봇 스피커(108-2 및 108-5)가 각자의 타깃 위치에 도달하기 위해 이동하는 경로가 직선 경로일 필요는 없다.
다양한 실시예에서, 로봇 스피커(108)로 매핑된 가상 객체의, 가상 환경 내 사용자(102)에 대한 위치 및/또는 배향이 변경됐기 때문에, 또는 상이한 가상 객체가 로봇 스피커(108)로 매핑됐기 때문에, 로봇 스피커(108)는 타깃 위치로 이동할 수 있다. 로봇 스피커(108)는 가상 객체의 업데이트된 위치 및/또는 배향과 매칭하기 위해 또는 새로 매핑된 가상 객체의 위치 및/배향을 매칭하기 위해, 이동 및/또는 배향을 변경할 수 있다.
도 6c에 도시된 바와 같이, 로봇 스피커(108-2 및 108-5)는 각각 타깃 위치(612 및 614)에 도달했다. 위치(612 및 614)에서, 각각, 로봇 스피커(108-2 및 108-5)는 로봇 스피커(108-2 및 108-5)로 각각 매핑된 가상 객체와 연관된 오디오를 출력한다. 일부 실시예에서, 로봇 스피커(108-2 및 108-5)는, 컴퓨팅 디바이스(112)(도 6a-6c에 도시되지 않음)에 의해 생성된 VR 콘텐츠에 따라, 타깃 위치로 이동하면서, 가상 객체와 연관된 사운드를 로봇 스피커(108-2 및 108-5)로 출력할 수 있다.
도 7은 다양한 실시예의 하나 이상의 양태에 따라, 복수의 로봇 스피커를 도시하는 다이어그램이며, 이들 중 둘 이상이 하나 이상의 선 배열로 배열될 수 있다. 도 7에 도시된 바와 같이, 물리적 환경(104)은 VR 헤드셋(110)을 착용하는 사용자(102) 주위에 배열된 로봇 스피커(108-1 내지 108-10)를 포함할 수 있다. 로봇 스피커(108-2, 108-3, 108-4, 및 108-5)는 로봇 스피커의 제1 선 배열로 배열된다. 제1 가상 객체가 로봇 스피커(108-2, 108-3, 108-4, 및 108-5)로 매핑될 수 있다. 로봇 스피커(108-7, 108-8, 108-9, 및 108-10)는 로봇 스피커의 제2 선 배열로 배열된다. 제2 가상 객체는 로봇 스피커(108-7, 108-8, 108-9, 및 108-10)로 매핑될 수 있다. 로봇 스피커(108)는 바퀴(608)를 포함하는 이동 구성요소(326)를 가진다. 로봇 스피커(108)는 이리 저리 이동하고 로봇 스피커(108)의 임의의 개수의 선 배열을 형성할 수 있다.
다양한 실시예에서, 제1 가상 객체와 연관된 이동하는 사운드(가령, 바람 사운드, 파도 사운드, 사용자(102)를 스쳐 지나가는 차량 사운드)가 로봇 스피커(108-2, 108-3, 108-4, 및 108-5)의 제1 선 배열을 통해 출력될 수 있다. 이러한 실시예에서, 사운드는 선 배열 내 각각의 로봇 스피커에서 순차적으로 출력될 수 있다. 예를 들어, 사운드가 우선 로봇 스피커(108-2)에서 출력될 수 있고, 그 후 로봇 스피커(108-3)에서, 그 후 로봇 스피커(108-4)에서, 그 후 로봇 스피커(108-5)에서 출력될 수 있다. 로봇 스피커(108-2 내지 108-5)에 의한 사운드의 순차적 출력은 사용자(102)에 대한 이동하는 사운드를 모방한다. 또한, 사운드가 왕복 이동하는 사운드인 경우(가령, 짖는 개가 두 위치 사이에서 왕복으로 달리고 있는 경우), 사운드는 스피커의 선 배열을 횡단하면서 왕복으로 출력될 수 있다(가령, 스피커(108-2, 108-3, 108-4, 및 108-5) 각각을 통해 순차적으로 출력되고, 그 후 역 방향으로 상기 스피커 각각을 통해 출력되고, 그 후 원래의 순차 방향으로 상기 스피커 각각을 통해 출력되며, 이러한 식으로 계속된다).
또 다른 예를 들면, 제2 가상 객체와 연관된 사운드가 로봇 스피커(108-7, 108-8, 108-9, 및 108-10)의 제2 선 배열을 통해 출력될 수 있다. 사운드가 빔-형성되고 로봇 스피커(108-7, 108-8, 108-9, 및 108-10)를 통해 출력될 수 있다. 로봇 스피커(108)가 스피커의 하나 이상의 배열(가령, 선형 배열, 2차원 또는 평면 배열)을 형성할 수 있는 실시예에서, 오디오 관리자 모듈(214)은 스피커의 배열을 통해 출력되도록 오디오 신호를 준비하기에 적합한 하나 이상의 처리 동작(가령, 빔형성)을 결정할 수 있다.
도 8은 다양한 실시예의 하나 이상의 양태에 따라, 구조물 상에 배열되는 복수의 로봇 스피커를 도시하는 다이어그램이다. 도 8에 도시된 바와 같이, 물리적 환경(104)은 구조물(802)(가령, 트러스 구조물) 상에 배열되는 로봇 스피커(108-1 내지 108-6)를 포함한다. 구조물(802)은 바퀴(804-1 내지 804-6)를 포함할 수 있다. 도시된 바와 같이, 구조물(802)은 위에서 아래로 볼 때 원형이고, 사용자(102)를 둘러싼다. 구조물(802)은 강성일 수 있다. 구조물(802)은 사용자(102) 주위를 회전하고 바퀴(804)를 통해 물리적 환경(104)에서 이러 저리 움직일 수 있다. 따라서 바퀴(804)를 갖는 구조물(802)이 로봇 스피커(108)에 대한 이동 구성요소(326)로서 역할 할 수 있다. 로봇 스피커(108)는 (가령, 스피커 관리자 모듈(312)을 통해) 서로 통신하여 구조물(802)의 움직임 및 회전을 조화시킬 수 있다.
일부 실시예에서, 구조물(802)은, 바퀴(804) 대신, 움직임 및 회전을 위한 관절형 로봇 사지(가령, 팔, 다리)를 가질 수 있다. 일부 추가 실시예에서, 구조물(802)은 (가령, 도르래 시스템을 통해) 천장에 매달릴 수 있다. 덧붙여, 일부 실시예에서, 구조물(802)은 위에서 아래로 볼 때 원형이 아닌 다른 형태, 가령, 타원형, 장방형, 삼각형 등을 갖는 것으로 구현될 수 있다.
도 9a-9b는 다양한 실시예의 하나 이상의 양태에 따라, 천장에 매달린 복수의 로봇 스피커 및 가스 추진에 의한 로봇 스피커의 움직임을 도시하는 다이어그램이다. 도 9a에 도시된 바와 같이, 물리적 환경(104)은 천장 구조물(902)에 매달린 로봇 스피커(108-1 내지 108-4)를 포함한다. 각각의 로봇 스피커(108)는 줄(904)에 의해 천장 구조물(902)에 매달릴 수 있다. 본 명세서에서 사용될 때, 줄(904)은 가요성이거나(가령, 케이블, 로프, 와이어) 비-가요성(가령, 막대, 파이프, 장대)일 수 있다. 줄의 유형에 따라, 줄(904)은 장착 포인트에 힌지(hinge)를 포함하거나, 전동식(motorized), 및/또는 기계작동식(actuated)일 수 있다.
도 9a-9b에서 각각의 로봇 스피커(108)의 이동 구성요소(326)는 가스 추진 시스템을 포함할 수 있다. 가스 추진 시스템은 가스(가령, 압축된 가스)의 컨테이너 및 상기 가스 컨테이너로부터 가스를 분사하기 위한 디바이스를 포함할 수 있다. 예를 들어, 가스(908)의 제트를 분사함으로써, 로봇 스피커(108-4)는 위치(906)에서 타깃 위치(910)로 이동할 수 있다. 그 후 가스 제트(908)를 제어된 방식으로 연속으로 분사함으로써 일정 시간 주기 동안 로봇 스피커(108-4)는 타깃 위치(910)에 고정될 수 있다. 일부 실시예에서, 이동 구성요소(326)는 그 밖의 다른 형태의 가스 추진을 포함할 수 있다. 예를 들어, 일부 실시예에서, 이동 구성요소(326)는 물리적 환경(104)에서 공기를 이동시키는 가스 추진 시스템, 가령, 프로펠러, 로터, 팬 등을 포함할 수 있다.
일부 실시예에서, 천장 구조물(902)은 로봇 스피커(108)가 매달린 줄(904)의 길이를 변경할 수 있는 하나 이상의 디바이스를 포함한다. 즉, 일부 실시예에서, 상기 줄(904)은 수축 가능하고 연장 가능하다(가령, 전동식 스풀(spool)을 이용함, 줄(904)이 텔레스코픽 확장형 장대임). 상기 디바이스는 대응하는 로봇 스피커(108)의 위치설정 모듈(314)과 통신하기 위한 통신 디바이스를 포함할 수 있다. 상기 디바이스는 타깃 위치 및/또는 배향까지 로봇 스피커(108)를 이동 및/또는 배향 변경하도록 줄(904)의 길이를 변경하는 것과 관련된 명령을 위치설정 모듈(314)로부터 수신할 수 있다.
일부 추가 실시예에서, 줄(904)은 천장 구조물(902)에 직접 부착되지 않고, 천장 구조물(902) 상에 또는 아래에서 기도록 구성된 로봇에 부착된다. 기는 로봇은 임의의 적합한 기법(가령, 마이크로-흡착(micro-suction), 마이크로-접착(micro-adhesion), 상향 프로펠러, 디딤판 내 마이크로-가시 등)을 이용해 천장 구조물(902) 상에 또는 아래에서 길 수 있다. 로봇은 또한 줄(904)을 수축 또는 연장하기 위한 디바이스를 포함할 수 있다. 기는 로봇은 타깃 위치 및/또는 배향까지 로봇 스피커(108)를 이동 및/또는 배향 변경하기 위한 명령을 위치설정 모듈(314)로부터 수신할 수 있다.
다양한 실시예에서, 로봇 스피커(108)는 물리적 환경(104)의 특정 양태에 제한될 수 있다. 예를 들어, 각각의 로봇 스피커(108)는 물리적 환경(104)의 벽 내에 금속 스터드에 부착되기 위한 하나 이상의 자석, 및 벽을 횡단하여 이동하도록 이 곳 저 곳으로(가령, 스터드에서 스터드로) 이동하기 위한 디바이스를 포함할 수 있다. 로봇 스피커(108)는 벽을 위아래로 이동하기 위한 디바이스(가령, 로봇 사지, 가스 추진)를 더 포함할 수 있다.
또 다른 예를 들면, 로봇 스피커(108)가 각각 개별적으로 호버링(hovering)할 수 있도록 구성된다(가령, 호버링 플랫폼, 가령, 드론 유닛 상에 장착될 수 있다). 이러한 로봇 스피커(108)는 추진 유닛(propulsion unit)(가령, 케이징된 프로펠러 및 로터, 공기보다 가벼운 호버링 디바이스, 윙 메커니즘)을 포함할 수 있고, 선택사항으로서, 추진 유닛으로부터의 노이즈를 감소시키기 위한 노이즈 상쇄 구성요소를 포함할 수 있다. 일부 실시예에서, 호버링 방식은 저중력 또는 무중력 환경(가령, 우주 정거장)에서 사용되도록 적합할 수 있다. 저중력 또는 무중력 환경에 대한 적응 시 추진 유닛이 반응 바퀴, 반응 제어 제트, 또는 반응 코일을 포함할 수 있다.
이동 구성요소(326) 내에 구현될 수 있는 로봇 스피커(108)를 이동시키기 위한 방식 또는 구성요소의 상기의 예시에 한정되지 않음을 알아야 한다. 로봇 스피커(108)를 이동하기 위한 그 밖의 다른 방식이 가능하다. 더 일반적으로, 로봇 스피커(108)가 임의의 적합한 방식을 이용해 이동하고 배향 변경하도록 구성될 수 있다. 예를 들어, 앞서 기재된 것에 추가로 그 밖의 다른 예시적 방식은 다음을 포함할 수 있다: 2개의 바퀴를 갖는 단일 차축을 각각 가질 수 있는 자체 밸런싱 플랫폼(가령, 2개의 바퀴를 갖는 역립 진자), 단일 볼(단일 바퀴) 상에 각각 안착할 수 있는 자체 밸런싱 플랫폼(가령, 배향을 변경하지 않고 어느 방향으로도 이동할 수 있는 볼을 이용하는 역립 진자), 또는 동축 로터, 멀티-로터 기반의 호버링 이동 플랫폼(가령, 쿼드콥터(quadcopter)), 또는 추진 이동 플랫폼 기반의 수직 가스 제트.
요컨대, 가상 현실 시스템이 가상 환경에서 가상 객체를 로봇 스피커로 매핑되기 위한 후보로서 식별한다. 그 후 가상 현실 시스템은 가상 객체가 로봇 스피커로 매핑되기 위한 하나 이상의 기준을 충족하는지 여부를 결정한다. 가상 객체가 하나 이상의 기준을 충족하는 경우, 가상 현실 시스템은 가상 객체를 하나 이상의 로봇 스피커로 매핑한다. 그 후, 가상 현실 시스템은 로봇 스피커에 대한 위치 정보를 결정하고 선택사항으로서 가상 객체 및/또는 사용자가 위치하는 물리적 환경의 특성을 기초로 가상 객체와 연관된 오디오 신호를 (가령, 하나 이상의 디지털 신호 처리 알고리즘을 통해) 처리한다. 그 후 로봇 스피커가 위치 정보에 따라 위치되고 오디오 신호를 출력한다.
개시된 기법에 의해 달성되는 적어도 하나의 기술적 개선은 가상 현실 콘텐츠에 대한 오디오 출력이 가상 현실 콘텐츠를 더 정확히 나타낸다는 것이다. 사용자가 가상 현실 콘텐츠의 시각적 구성요소를 가상 현실 콘텐츠의 음향 구성요소와 함께 위치하는 것으로 지각함으로써, 예를 들어, 사용자 관점에서, 가상 객체의 시각적 표현과 음향적 표현이 가상 환경 내에서 매칭될 수 있다. 또 다른 기술적 개선은 오디오 출력이 가상 현실 시스템의 사용자가 위치하는 물리적 환경의 음향 특성을 고려한다는 것이다. 결과적으로, 사용자가 듣는 오디오가 (가령, 가상 현실 헤드셋을 통해) 사용자가 보는 것과 더 밀접하게 상관되기 때문에, 가상 현실 사용자 경험이 개선된다.
1. 일부 실시예에서, 컴퓨팅 시스템이 명령을 포함하는 메모리, 및 메모리에 연결된 프로세서를 포함하며, 상기 프로세서는 명령을 실행할 때, 가상 환경 내에 포함된 가상 객체와 연관된 사운드를 로봇 스피커로 매핑하는 단계, 로봇 스피커로 정보를 전송하여 로봇 스피커가 가상 환경 내 가상 객체의 위치에 대응하는 물리적 환경 내 위치로 이동하게 하는 단계, 및 오디오 신호를 로봇 스피커로 전송하는 단계 - 상기 로봇 스피커는, 오디오 신호를 기초로, 상기 물리적 환경 내 위치에서, 가상 객체와 연관된 사운드를 출력함 - 를 수행하도록 구성된다.
2. 항목 1에 있어서, 상기 명령은 프로세서를, 가상 환경 내에 포함된 제2 가상 객체와 연관된 제2 사운드를 로봇 스피커로 매핑하고, 제2 정보를 로봇 스피커로 전송하여, 로봇 스피커가 상기 가상 환경 내 제2 가상 객체의 위치에 대응하는 물리적 환경 내 제2 위치로 이동하게 하며, 제2 오디오 신호를 로봇 스피커로 전송하도록 더 구성하며, 로봇 스피커는, 제2 오디오 신호를 기초로, 물리적 환경 내 제2 위치에서, 제2 가상 객체와 연관된 제2 사운드를 출력한다.
3. 항목 1 또는 2에 있어서, 상기 명령은 프로세서를, 제2 사운드를 로봇 스피커로 매핑하기 전에, 로봇 스피커와 상기 가상 객체와 연관된 사운드 간 매핑을 제거하도록 더 구성한다.
4. 항목 1 내지 3 중 어느 한 항목에 있어서, 상기 명령은 프로세서를, 제2 정보를 로봇 스피커로 전송하여, 로봇 스피커가 가상 환경 내 가상 객체의 제2 위치에 대응하는 물리적 환경 내 제2 위치로 이동하게 하고, 제2 오디오 신호를 로봇 스피커로 전송하도록 더 구성하며, 로봇 스피커는, 제2 오디오 신호를 기초로, 물리적 환경 내 제2 위치에서, 가상 객체와 연관된 제2 사운드를 출력한다.
5. 항목 1 내지 4 중 어느 한 항목에 있어서, 상기 명령은 프로세서를, 가상 환경 내 가상 객체의 위치와 가상 환경 내 사용자 위치 간 거리가 지정 거리 내에 있다는 결정을 기초로, 가상 객체와 연관된 사운드가 로봇 스피커로 매핑될 것이라고 결정하도록 더 구성한다.
6. 항목 1 내지 5 중 어느 한 항목에 있어서, 상기 명령은 프로세서를, 가상 객체와 연관된 사운드가 지정 주파수 범위 내에 있다는 결정을 기초로, 가상 객체와 연관된 사운드가 로봇 스피커로 매핑될 것이라고 결정하도록 더 구성한다.
7. 항목 1 내지 6 중 어느 한 항목에 있어서, 상기 명령은 프로세서를, 가상 환경 내에 포함된 복수의 가상 객체의 각각의 가상 객체에 대해, 매핑 우선순위를 결정하도록 더 구성하며, 복수의 가상 객체는 상기 가상 객체를 포함한다.
8. 항목 1 내지 7 중 어느 한 항목에 있어서, 상기 명령은 프로세서를, 복수의 가상 객체 내에 포함된 제2 가상 객체가 상기 가상 객체보다 높은 매핑 우선순위를 가진다고 결정하고, 상기 결정을 기초로, 상기 가상 객체와 연관된 사운드와 로봇 스피커 간 매핑을 제거하고, 제2 가상 객체와 연관된 사운드를 로봇 스피커로 매핑하도록 더 구성한다.
9. 항목 1 내지 8 중 어느 한 항목에 있어서, 가상 객체와 연관된 사운드는 가상 객체에 의해 생성된 사운드를 포함한다.
10. 항목 1 내지 9 중 어느 한 항목에 있어서, 가상 객체와 연관된 사운드는 가상 객체에 의해 반사되는 사운드를 포함한다.
11. 일부 실시예에서, 컴퓨터로 구현되는 방법이 가상 환경 내에 포함되는 복수의 가상 객체에 포함된 가상 객체를 로봇 스피커로 매핑하는 단계, 정보를 로봇 스피커로 전송하여, 로봇 스피커가 가상 환경 내 가상 객체의 위치에 대응하는 물리적 환경 내 위치로 이동하게 하는 단계, 및 오디오 신호를 로봇 스피커로 전송하는 단계 - 로봇 스피커가, 오디오 신호를 기초로, 물리적 환경 내 위치에서, 가상 객체와 연관된 하나 이상의 사운드를 출력함 - 를 포함한다.
12. 항목 11에 있어서, 방법은 오디오 신호를 로봇 스피커로 전송하기 전에, 물리적 환경 내 위치 및 가상 환경 내 가상 객체의 위치 중 적어도 하나를 기초로 오디오 신호에 대한 하나 이상의 처리 동작을 수행하는 단계를 더 포함한다.
13. 항목 11 또는 12에 있어서, 하나 이상의 처리 동작은 진폭 조절, 이퀄라이제이션, 공간화 및 빔형성 중 적어도 하나를 포함한다.
14. 항목 11 내지 13 중 어느 한 항목에 있어서, 가상 환경 내에 포함된 제2 가상 객체와 연관된 제2 사운드를 로봇 스피커로 매핑하는 단계, 제2 정보를 로봇 스피커로 전송하여, 로봇 스피커가 가상 환경 내 제2 가상 객체의 위치에 대응하는 물리적 환경 내 제2 위치로 이동하게 하는 단계, 및 제2 오디오 신호를 로봇 스피커로 전송하는 단계 - 로봇 스피커는, 제2 오디오 신호를 기초로 물리적 환경 내 제2 위치에서, 제2 가상 객체와 연관된 제2 사운드를 출력함 - 를 더 포함한다.
15. 항목 11 내지 14 중 어느 한 항목에 있어서, 제2 정보를 로봇 스피커로 전송하여, 로봇 스피커가 가상 환경 내 가상 객체의 제2 위치에 대응하는 물리적 환경 내 제2 위치로 이동하게 하는 단계, 및 제2 오디오 신호를 로봇 스피커로 전송하는 단계 - 로봇 스피커는, 제2 오디오 신호를 기초로 물리적 환경 내 제2 위치에서, 가상 객체와 연관된 제2 사운드를 출력함 - 를 더 포함한다.
16. 일부 실시예에서, 오디오 디바이스가 이동 디바이스, 오디오 출력 디바이스, 및 이동 디바이스 및 오디오 출력 디바이스에 연결된 하나 이상의 회로를 포함하며, 상기 하나 이상의 회로는 타깃 위치를 수신 - 상기 타깃 위치는 가상 환경 내 가상 객체의 위치에 대응함 - 하고, 이동 디바이스를 통해 오디오 디바이스를 타깃 위치로 이동하며, 오디오 출력 디바이스를 통해, 가상 객체와 연관된 사운드를 타깃 위치에서 출력하도록 구성된다.
17. 항목 16에 있어서, 이동 디바이스는 바퀴, 로봇 사지(robotic appendage), 가스 추진 구성요소, 및 수축 가능 줄(retractable tether) 중 적어도 하나를 포함한다.
18. 항목 16 또는 17에 있어서, 하나 이상의 회로는 가상 환경 내 가상 객체의 움직임에 응답하여 오디오 디바이스를 제2 타깃 위치로 이동시키도록 더 구성되며, 제2 타깃 위치는 움직임 후 가상 환경 내 가상 객체의 제2 위치에 대응한다.
19. 항목 16 내지 18 중 어느 한 항목에 있어서, 하나 이상의 회로는 제2 타깃 위치를 수신 - 상기 제2 타깃 위치는 가상 환경 내 제2 가상 객체의 위치에 대응 - 하고, 오디오 디바이스를 이동 디바이스를 통해 제2 타깃 위치로 이동시키며, 오디오 출력 디바이스를 통해, 제2 가상 객체와 연관된 사운드를 제2 타깃 위치에서 출력하도록 더 구성된다.
20. 항목 16 내지 19 중 어느 한 항목에 있어서, 이동 디바이스는 호버링 구성요소를 포함한다.
임의의 청구항에 언급된 청구항 요소 및/또는 이 출원에 기재된 임의의 요소 중 임의의 것 그리고 이들의 모든 조합이 어떠한 방식으로든 기재된 실시예의 고려되는 범주 내에 속한다.
다양한 실시예의 기재가 설명 목적으로 제공되었지만 개시된 실시예를 한정하려는 의도는 없다. 많은 수정 및 변경이 기재된 실시예의 범위 및 사상 내에서 해당 분야의 통상의 기술자에게 자명할 것이다.
본 발명의 양태가 시스템, 방법 또는 컴퓨터 프로그램 프로덕트로서 구현될 수 있다. 따라서 본 발명의 양태가 전체 하드웨어 실시예, 전체 소프트웨어 실시예(가령, 펌웨어, 상주 소프트웨어, 마이크로-코드 등), 또는 모두 일반적으로 "모듈" 또는 "시스템"으로 본 명세서에서 지칭될 수 있는 소프트웨어와 하드웨어 양태를 조합하는 실시예의 형태를 취할 수 있다. 덧붙여, 본 발명의 양태는 여기에 구현되는 컴퓨터 판독형 프로그램 코드를 갖는 하나 이상의 컴퓨터 판독형 매체(들)로 구현되는 컴퓨터 프로그램 프로덕트의 형태를 취할 수 있다.
하나 이상의 컴퓨터 판독형 매체(들)의 임의의 조합이 이용될 수 있다. 컴퓨터 판독형 매체는 컴퓨터 판독형 신호 매체 또는 컴퓨터 판독형 저장 매체일 수 있다. 컴퓨터 판독형 저장 매체는, 비제한적 예를 들면, 전자, 자기, 광학, 전자기, 적외선, 또는 반도체 시스템, 장치, 또는 디바이스, 또는 이들의 임의의 적합한 조합일 수 있다. 컴퓨터 판독형 저장 매체의 더 구체적 예시(비제한적 리스트)로는 다음을 포함할 것이다: 하나 이상의 와이어를 포함하는 전기 연결, 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 액세스 메모리(RAM), 리드-온리 메모리(ROM), 소거 가능 프로그램 가능 리드-온리 메모리(EPROM 또는 플래시 메모리), 광섬유, 휴대용 컴팩트 디스크 리드-온리 메모리(CD-ROM), 광학 저장 디바이스, 자기 저장 디바이스, 또는 이들의 임의의 적합한 조합. 이 문서의 맥락에서, 컴퓨터 판독형 저장 매체는 명령 실행 시스템, 장치, 또는 디바이스에 의해 또는 이와 함께 사용되기 위한 프로그램을 포함하거나 저장할 수 있는 임의의 유형의 매체(tangible medium)일 수 있다.
본 발명의 양태는 본 발명의 실시예에 따르는 방법, 장치(시스템) 및 컴퓨터 프로그램 프로덕트의 흐름도 및/또는 블록도를 참조하여 기재된다. 흐름도 및/또는 블록도의 각각의 블록 및 이들의 조합이 컴퓨터 프로그램 명령에 의해 구현될 수 있음이 이해될 것이다. 이들 컴퓨터 프로그램 명령은 범용 컴퓨터, 특수 용도 컴퓨터의 프로세서, 또는 그 밖의 다른 프로그램 가능 데이터 처리 장치로 제공되어, 컴퓨터 또는 그 밖의 다른 프로그램 가능 데이터 처리 장치의 프로세서를 통해 실행되는 명령이 흐름도 및/또는 블록도의 하나 이상의 블록으로 특정된 기능/동작의 구현을 가능하게 하도록 머신을 생성할 수 있다. 이러한 프로세서의 비제한적 예로는 범용 프로세서, 특수 용도 프로세서, 주문형 프로세서, 또는 현장 프로그램 가능 프로세서 또는 게이트 어레이가 있을 수 있다.
도면의 흐름도 및 블록도가 본 발명의 다양한 실시예에 따르는 시스템, 방법 및 컴퓨터 프로그램 프로덕트의 가능한 구현의 아키텍처, 기능 및 동작을 도시한다. 이와 관련하여, 흐름도 또는 블록도의 각각의 블록이 특정 로직 기능(들)을 구현하기 위한 하나 이상의 실행 명령을 포함하는 모듈, 세그먼트, 또는 코드의 일부분을 나타낼 수 있다. 일부 대안적 구현예에서, 블록 내에 언급된 기능은 도면에 나타난 순서가 아닌 순서로 발생할 수 있다. 예를 들어, 연속으로 나타난 두 개의 블록이, 실제로는, 실질적으로 동시에 실행될 수 있거나, 때때로 관련 기능에 따라 블록들이 반대 순서로 실행될 수 있다. 블록도 및/또는 흐름도의 각각의 블록 및 블록도 및/또는 흐름도의 블록들의 조합이 특정 기능 또는 동작을 수행하는 특수 용도 하드웨어 기반 시스템에 의해, 또는 특수 용도 하드웨어와 컴퓨터 명령의 조합에 의해 구현될 수 있다.
상기 내용이 본 발명의 실시예와 관련된 것이지만, 기본적인 범위 내에서, 본 발명의의 그 밖의 다른 추가 실시예가 고려될 수 있고, 이 범위는 이하의 청구범위에 의해 결정된다.

Claims (20)

  1. 컴퓨팅 시스템으로서,
    명령을 포함하는 메모리, 및
    메모리에 연결된 프로세서
    를 포함하며, 상기 프로세서는 명령을 실행할 때,
    가상 환경 내에 포함된 가상 객체와 연관된 사운드를 로봇 스피커로 매핑하는 단계,
    로봇 스피커로 정보를 전송하여 로봇 스피커가 가상 환경 내 가상 객체의 위치에 대응하는 물리적 환경 내 위치로 이동하게 하는 단계, 및
    오디오 신호를 로봇 스피커로 전송하는 단계 - 상기 로봇 스피커는, 오디오 신호를 기초로, 상기 물리적 환경 내 위치에서, 가상 객체와 연관된 사운드를 출력함 - 를 수행하도록 구성되는, 컴퓨팅 시스템.
  2. 제1항에 있어서, 상기 명령은 프로세서를,
    가상 환경 내에 포함된 제2 가상 객체와 연관된 제2 사운드를 로봇 스피커로 매핑하고,
    제2 정보를 로봇 스피커로 전송하여, 로봇 스피커가 상기 가상 환경 내 제2 가상 객체의 위치에 대응하는 물리적 환경 내 제2 위치로 이동하게 하며,
    제2 오디오 신호를 로봇 스피커로 전송하도록 더 구성하며, 로봇 스피커는, 제2 오디오 신호를 기초로, 물리적 환경 내 제2 위치에서, 제2 가상 객체와 연관된 제2 사운드를 출력하는, 컴퓨팅 시스템.
  3. 제2항에 있어서, 상기 명령은 프로세서를,
    제2 사운드를 로봇 스피커로 매핑하기 전에, 로봇 스피커와 상기 가상 객체와 연관된 사운드 간 매핑을 제거하도록 더 구성하는, 컴퓨팅 시스템.
  4. 제1항에 있어서, 상기 명령은 프로세서를,
    제2 정보를 로봇 스피커로 전송하여, 로봇 스피커가 가상 환경 내 가상 객체의 제2 위치에 대응하는 물리적 환경 내 제2 위치로 이동하게 하고,
    제2 오디오 신호를 로봇 스피커로 전송하도록 더 구성하며,
    로봇 스피커는, 제2 오디오 신호를 기초로, 물리적 환경 내 제2 위치에서, 가상 객체와 연관된 제2 사운드를 출력하는, 컴퓨팅 시스템.
  5. 제1항에 있어서, 상기 명령은 프로세서를,
    가상 환경 내 가상 객체의 위치와 가상 환경 내 사용자 위치 간 거리가 지정 거리 내에 있다는 결정을 기초로, 가상 객체와 연관된 사운드가 로봇 스피커로 매핑될 것이라고 결정하도록 더 구성하는, 컴퓨팅 시스템.
  6. 제1항에 있어서, 상기 명령은 프로세서를,
    가상 객체와 연관된 사운드가 지정 주파수 범위 내에 있다는 결정을 기초로, 가상 객체와 연관된 사운드가 로봇 스피커로 매핑될 것이라고 결정하도록 더 구성하는, 컴퓨팅 시스템.
  7. 제1항에 있어서, 상기 명령은 프로세서를,
    가상 환경 내에 포함된 복수의 가상 객체의 각각의 가상 객체에 대해, 매핑 우선순위를 결정하도록 더 구성하며, 복수의 가상 객체는 상기 가상 객체를 포함하는, 컴퓨팅 시스템.
  8. 제7항에 있어서, 상기 명령은 프로세서를,
    복수의 가상 객체 내에 포함된 제2 가상 객체가 상기 가상 객체보다 높은 매핑 우선순위를 가진다고 결정하고,
    상기 결정을 기초로,
    상기 가상 객체와 연관된 사운드와 로봇 스피커 간 매핑을 제거하고,
    제2 가상 객체와 연관된 사운드를 로봇 스피커로 매핑하도록 더 구성하는, 컴퓨팅 시스템.
  9. 제1항에 있어서, 가상 객체와 연관된 사운드는 가상 객체에 의해 생성된 사운드를 포함하는, 컴퓨팅 시스템.
  10. 제1항에 있어서, 가상 객체와 연관된 사운드는 가상 객체에 의해 반사되는 사운드를 포함하는, 컴퓨팅 시스템.
  11. 컴퓨터로 구현되는 방법으로서,
    가상 환경 내에 포함되는 복수의 가상 객체에 포함된 가상 객체를 로봇 스피커로 매핑하는 단계,
    정보를 로봇 스피커로 전송하여, 로봇 스피커가 가상 환경 내 가상 객체의 위치에 대응하는 물리적 환경 내 위치로 이동하게 하는 단계, 및
    오디오 신호를 로봇 스피커로 전송하는 단계 - 로봇 스피커가, 오디오 신호를 기초로, 물리적 환경 내 위치에서, 가상 객체와 연관된 하나 이상의 사운드를 출력함 - 를 포함하는, 컴퓨터로 구현되는 방법.
  12. 제11항에 있어서, 오디오 신호를 로봇 스피커로 전송하기 전에, 물리적 환경 내 위치 및 가상 환경 내 가상 객체의 위치 중 적어도 하나를 기초로 오디오 신호에 대한 하나 이상의 처리 동작을 수행하는 단계를 더 포함하는, 컴퓨터로 구현되는 방법.
  13. 제12항에 있어서, 하나 이상의 처리 동작은 진폭 조절, 이퀄라이제이션, 공간화 및 빔형성 중 적어도 하나를 포함하는, 컴퓨터로 구현되는 방법.
  14. 제11항에 있어서,
    가상 환경 내에 포함된 제2 가상 객체와 연관된 제2 사운드를 로봇 스피커로 매핑하는 단계,
    제2 정보를 로봇 스피커로 전송하여, 로봇 스피커가 가상 환경 내 제2 가상 객체의 위치에 대응하는 물리적 환경 내 제2 위치로 이동하게 하는 단계, 및
    제2 오디오 신호를 로봇 스피커로 전송하는 단계 - 로봇 스피커는, 제2 오디오 신호를 기초로 물리적 환경 내 제2 위치에서, 제2 가상 객체와 연관된 제2 사운드를 출력함 - 를 더 포함하는, 컴퓨터로 구현되는 방법.
  15. 제11항에 있어서,
    제2 정보를 로봇 스피커로 전송하여, 로봇 스피커가 가상 환경 내 가상 객체의 제2 위치에 대응하는 물리적 환경 내 제2 위치로 이동하게 하는 단계, 및
    제2 오디오 신호를 로봇 스피커로 전송하는 단계 - 로봇 스피커는, 제2 오디오 신호를 기초로 물리적 환경 내 제2 위치에서, 가상 객체와 연관된 제2 사운드를 출력함 - 를 더 포함하는, 컴퓨터로 구현되는 방법.
  16. 오디오 디바이스로서,
    이동 디바이스,
    오디오 출력 디바이스, 및
    이동 디바이스 및 오디오 출력 디바이스에 연결된 하나 이상의 회로
    를 포함하며, 상기 하나 이상의 회로는
    타깃 위치를 수신 - 상기 타깃 위치는 가상 환경 내 가상 객체의 위치에 대응함 - 하고,
    이동 디바이스를 통해 오디오 디바이스를 타깃 위치로 이동하며,
    오디오 출력 디바이스를 통해, 가상 객체와 연관된 사운드를 타깃 위치에서 출력하도록 구성되는, 오디오 디바이스.
  17. 제16항에 있어서, 이동 디바이스는 바퀴, 로봇 사지(robotic appendage), 가스 추진 구성요소, 및 수축 가능 줄(retractable tether) 중 적어도 하나를 포함하는, 오디오 디바이스.
  18. 제16항에 있어서, 하나 이상의 회로는 가상 환경 내 가상 객체의 움직임에 응답하여 오디오 디바이스를 제2 타깃 위치로 이동시키도록 더 구성되며, 제2 타깃 위치는 움직임 후 가상 환경 내 가상 객체의 제2 위치에 대응하는, 오디오 디바이스.
  19. 제16항에 있어서, 하나 이상의 회로는
    제2 타깃 위치를 수신 - 상기 제2 타깃 위치는 가상 환경 내 제2 가상 객체의 위치에 대응 - 하고,
    오디오 디바이스를 이동 디바이스를 통해 제2 타깃 위치로 이동시키며,
    오디오 출력 디바이스를 통해, 제2 가상 객체와 연관된 사운드를 제2 타깃 위치에서 출력하도록 더 구성되는, 오디오 디바이스.
  20. 제16항에 있어서, 이동 디바이스는 호버링 구성요소를 포함하는, 오디오 디바이스.
KR1020190006342A 2018-01-17 2019-01-17 가상 현실 환경을 위한 이동 스피커 KR102602149B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US15/873,852 2018-01-17
US15/873,852 US10225656B1 (en) 2018-01-17 2018-01-17 Mobile speaker system for virtual reality environments

Publications (2)

Publication Number Publication Date
KR20190088032A true KR20190088032A (ko) 2019-07-25
KR102602149B1 KR102602149B1 (ko) 2023-11-14

Family

ID=65138813

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190006342A KR102602149B1 (ko) 2018-01-17 2019-01-17 가상 현실 환경을 위한 이동 스피커

Country Status (4)

Country Link
US (1) US10225656B1 (ko)
EP (1) EP3515093A1 (ko)
JP (1) JP7325966B2 (ko)
KR (1) KR102602149B1 (ko)

Families Citing this family (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10058395B2 (en) * 2014-08-01 2018-08-28 Intuitive Surgical Operations, Inc. Active and semi-active damping in a telesurgical system
EP3579584A1 (en) * 2018-06-07 2019-12-11 Nokia Technologies Oy Controlling rendering of a spatial audio scene
US10869128B2 (en) 2018-08-07 2020-12-15 Pangissimo Llc Modular speaker system
CN109308179A (zh) * 2018-09-25 2019-02-05 Oppo广东移动通信有限公司 3d音效处理方法及相关产品
US20200228911A1 (en) * 2019-01-16 2020-07-16 Roblox Corporation Audio spatialization
WO2020161816A1 (ja) * 2019-02-06 2020-08-13 マクセル株式会社 複合現実表示装置および複合現実表示方法
US10674307B1 (en) * 2019-03-27 2020-06-02 Facebook Technologies, Llc Determination of acoustic parameters for a headset using a mapping server
US10846898B2 (en) * 2019-03-28 2020-11-24 Nanning Fugui Precision Industrial Co., Ltd. Method and device for setting a multi-user virtual reality chat environment
DE112020002711T5 (de) * 2019-06-05 2022-02-17 Sony Group Corporation Informationsverarbeitungsvorrichtung, informationsverarbeitungsverfahren und programm
US11276215B1 (en) 2019-08-28 2022-03-15 Facebook Technologies, Llc Spatial audio and avatar control using captured audio signals
US12009877B1 (en) * 2019-09-05 2024-06-11 Apple Inc. Modification of signal attenuation relative to distance based on signal characteristics
CN111586553B (zh) 2020-05-27 2022-06-03 京东方科技集团股份有限公司 显示装置及其工作方法
US11830119B1 (en) * 2020-05-29 2023-11-28 Apple Inc. Modifying an environment based on sound
WO2022031418A1 (en) * 2020-07-31 2022-02-10 Sterling Labs Llc. Sound rendering for a shared point of view
US11997470B2 (en) * 2020-09-07 2024-05-28 Samsung Electronics Co., Ltd. Method and apparatus for processing sound effect
US11388537B2 (en) * 2020-10-21 2022-07-12 Sony Corporation Configuration of audio reproduction system
US20230121724A1 (en) * 2021-10-20 2023-04-20 Ford Global Technologies, Llc Multi-vehicle audio system
WO2024111877A1 (en) * 2022-11-21 2024-05-30 Samsung Electronics Co., Ltd. Method and system for providing ideal playback position for a robotic speaker in an environment
CN115866493A (zh) * 2022-12-21 2023-03-28 潍坊歌尔丹拿电子科技有限公司 扬声器系统、音频播放方法、设备及计算机可读存储介质

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007301036A (ja) * 2006-05-09 2007-11-22 Nintendo Co Ltd ゲーム装置およびゲームプログラム
US20170010671A1 (en) * 2015-07-10 2017-01-12 8982406 Canada Inc. Haptic interface with localized feedback
JP2017069804A (ja) * 2015-09-30 2017-04-06 ヤマハ株式会社 放音装置及び音響装置

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5185801A (en) 1989-12-28 1993-02-09 Meyer Sound Laboratories Incorporated Correction circuit and method for improving the transient behavior of a two-way loudspeaker system
US5404406A (en) * 1992-11-30 1995-04-04 Victor Company Of Japan, Ltd. Method for controlling localization of sound image
IL138695A (en) 2000-09-26 2004-08-31 Rafael Armament Dev Authority Unmanned mobile device
US20050271221A1 (en) 2004-05-05 2005-12-08 Southwest Research Institute Airborne collection of acoustic data using an unmanned aerial vehicle
JP2006074589A (ja) * 2004-09-03 2006-03-16 Matsushita Electric Ind Co Ltd 音響処理装置
US20060254853A1 (en) * 2005-05-10 2006-11-16 David Van Gieson Track audio system
JP4674505B2 (ja) * 2005-08-01 2011-04-20 ソニー株式会社 音声信号処理方法、音場再現システム
JP5013303B2 (ja) * 2006-01-06 2012-08-29 株式会社セガ ゲーム装置及びその制御方法
US7510142B2 (en) 2006-02-24 2009-03-31 Stealth Robotics Aerial robot
US20070253561A1 (en) * 2006-04-27 2007-11-01 Tsp Systems, Inc. Systems and methods for audio enhancement
US8116482B2 (en) 2006-08-28 2012-02-14 Southwest Research Institute Low noise microphone for use in windy environments and/or in the presence of engine noise
US9037468B2 (en) * 2008-10-27 2015-05-19 Sony Computer Entertainment Inc. Sound localization for user in motion
US8320588B2 (en) 2009-02-10 2012-11-27 Mcpherson Jerome Aby Microphone mover
US8976986B2 (en) * 2009-09-21 2015-03-10 Microsoft Technology Licensing, Llc Volume adjustment based on listener position
JP5641834B2 (ja) * 2010-09-08 2014-12-17 株式会社カプコン ゲームプログラム及びゲーム装置
US9477141B2 (en) 2011-08-31 2016-10-25 Cablecam, Llc Aerial movement system having multiple payloads
US10469790B2 (en) 2011-08-31 2019-11-05 Cablecam, Llc Control system and method for an aerially moved payload system
TW201326874A (zh) 2011-12-26 2013-07-01 Hon Hai Prec Ind Co Ltd 飛行探測系統
WO2013150374A1 (en) 2012-04-04 2013-10-10 Sonarworks Ltd. Optimizing audio systems
LV14747B (lv) * 2012-04-04 2014-03-20 Sonarworks, Sia Elektroakustisko izstarotāju akustisko parametru korekcijas paņēmiens un iekārta tā realizēšanai
WO2014032709A1 (en) 2012-08-29 2014-03-06 Huawei Technologies Co., Ltd. Audio rendering system
EP2923500A4 (en) * 2012-11-22 2016-06-08 Razer Asia Pacific Pte Ltd METHOD FOR TRANSMITTING A MODIFIED AUDIO SIGNAL AND GRAPHICAL USER INTERFACE PRODUCED BY AN APPLICATION PROGRAM
US9398392B2 (en) * 2014-06-30 2016-07-19 Microsoft Technology Licensing, Llc Audio calibration and adjustment
CN105899965B (zh) 2014-08-29 2018-10-02 深圳市大疆创新科技有限公司 用于采集音频数据的无人飞行器
US9544679B2 (en) * 2014-12-08 2017-01-10 Harman International Industries, Inc. Adjusting speakers using facial recognition
US10640204B2 (en) 2015-03-03 2020-05-05 Amazon Technologies, Inc. Unmanned aerial vehicle with a tri-wing configuration
KR20170019649A (ko) * 2015-08-12 2017-02-22 삼성전자주식회사 사운드를 제공하는 전자 장치 및 방법
US9596544B1 (en) * 2015-12-30 2017-03-14 Gregory Douglas Brotherton Head mounted phased focused speakers
EP3264259A1 (en) * 2016-06-30 2018-01-03 Nokia Technologies Oy Audio volume handling
HK1219390A2 (zh) * 2016-07-28 2017-03-31 Siremix Gmbh 終端混音設備
JP6783925B2 (ja) * 2016-09-16 2020-11-11 バーブ サージカル インコーポレイテッドVerb Surgical Inc. ロボットアーム

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007301036A (ja) * 2006-05-09 2007-11-22 Nintendo Co Ltd ゲーム装置およびゲームプログラム
US20170010671A1 (en) * 2015-07-10 2017-01-12 8982406 Canada Inc. Haptic interface with localized feedback
JP2017069804A (ja) * 2015-09-30 2017-04-06 ヤマハ株式会社 放音装置及び音響装置

Also Published As

Publication number Publication date
KR102602149B1 (ko) 2023-11-14
CN110045818A (zh) 2019-07-23
JP7325966B2 (ja) 2023-08-15
EP3515093A1 (en) 2019-07-24
JP2019126036A (ja) 2019-07-25
US10225656B1 (en) 2019-03-05

Similar Documents

Publication Publication Date Title
KR102602149B1 (ko) 가상 현실 환경을 위한 이동 스피커
US10863270B1 (en) Beamforming for a wearable computer
US11173611B2 (en) Spatial acoustic filtering by a mobile robot
US20190221035A1 (en) Physical obstacle avoidance in a virtual reality environment
US10500496B2 (en) Physical obstacle avoidance in a virtual reality environment
US10067736B2 (en) Proximity based noise and chat
US8170222B2 (en) Augmented reality enhanced audio
JP6055657B2 (ja) ゲームシステム、ゲーム処理制御方法、ゲーム装置、および、ゲームプログラム
JP6461850B2 (ja) シミュレーションシステム及びプログラム
CN107613428B (zh) 声音处理方法、装置和电子设备
US20230241782A1 (en) Condition-Based Robot Audio Techniques
JP6330200B2 (ja) 音源位置推定装置、移動体および移動体の制御方法
JP2019129538A (ja) 設定変更可能な非公開モードを備えたウェアラブルサウンドシステム
US20190130889A1 (en) Drone-based interactive and active audio system
JP7259843B2 (ja) 情報処理装置、情報処理方法、およびプログラム
US20230186542A1 (en) Information processing apparatus, information processing method, and computer-readable recording medium
JP2018180542A (ja) ネットワークに連結した音響機器とのマルチモーダルインタラクション方法およびシステム
CN116940966A (zh) 指示虚拟位置的真实世界信标
KR20210141294A (ko) 전자 장치 및 그의 제어 방법
CN110045818B (zh) 用于虚拟现实环境的移动扬声器系统
WO2020022122A1 (ja) 情報処理装置、行動決定方法及びプログラム
US11027430B2 (en) Systems and methods for latency compensation in robotic teleoperation
EP3661233B1 (en) Wearable beamforming speaker array
CN112882481A (zh) 一种基于slam的移动式多模态交互导览机器人系统
JP6558179B2 (ja) 情報処理装置、情報処理システム、及びプログラム

Legal Events

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