KR20140122210A - 오프라인 햅틱 변환 시스템 - Google Patents

오프라인 햅틱 변환 시스템 Download PDF

Info

Publication number
KR20140122210A
KR20140122210A KR20140042566A KR20140042566A KR20140122210A KR 20140122210 A KR20140122210 A KR 20140122210A KR 20140042566 A KR20140042566 A KR 20140042566A KR 20140042566 A KR20140042566 A KR 20140042566A KR 20140122210 A KR20140122210 A KR 20140122210A
Authority
KR
South Korea
Prior art keywords
haptic
signal
input
signals
offline
Prior art date
Application number
KR20140042566A
Other languages
English (en)
Inventor
로버트 라크르와
사트비르 싱 바티아
장-프랑수아 블랜차드-디온
스테판 디 랭크
크리스토퍼 제이 율리히
락 티엔 판
Original Assignee
임머숀 코퍼레이션
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 임머숀 코퍼레이션 filed Critical 임머숀 코퍼레이션
Publication of KR20140122210A publication Critical patent/KR20140122210A/ko

Links

Images

Classifications

    • GPHYSICS
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B6/00Tactile signalling systems, e.g. personal calling systems
    • 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/016Input arrangements with force or tactile feedback as computer generated output to the user
    • 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/165Management of the audio stream, e.g. setting of volume, audio stream path
    • 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/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47217End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for controlling playback functions for recorded or on-demand content, e.g. using progress bars, mode or play-point indicators or bookmarks

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Signal Processing (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • User Interface Of Digital Computer (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

오프라인 햅틱 변환을 제어하는 시스템이 제공된다. 시스템은 소스로부터 입력을 수신한다. 시스템은 또한 입력을 햅틱 신호로 변환한다. 시스템은 또한 햅틱 신호를 인코딩한다. 시스템은 또한 소스 내에 햅틱 신호를 저장하고, 여기서 햅틱 신호는 소스 내에서 입력과 조합된다. 다르게는, 햅틱 신호를 인코딩하고 햅틱 신호를 소스 내에 저장하는 대신, 시스템은, 소스와는 독립적으로, 별도로 햅틱 신호를 처리한다.

Description

오프라인 햅틱 변환 시스템{OFFLINE HAPTIC CONVERSION SYSTEM}
관련 출원들
본 출원은 2013년 4월 9일자로 출원된 미합중국 가출원번호 제61/810,196호의 우선권을 주장하며(이 개시는 본 명세서에서 참조한다), 또한, 2013년 5월 24일자로 출원된 미합중국 가출원번호 제61/827,341호의 우선권을 주장한다(이 개시는 본 명세서에서 참조한다).
기술 분야
일 실시예는 일반적으로 장치에 관한 것이며, 더 구체적으로는 햅틱 효과를 생성하는 장치에 관한 것이다.
햅틱(haptics)은 사용자에게 힘, 진동 및 동작 같은 햅틱 피드백 효과(즉, "햅틱 효과")를 가함으로써 사용자의 촉감을 이용하는 촉각 및 힘 피드백 기술이다. 모바일 장치, 터치 스크린 장치 및 개인용 컴퓨터 같은 장치는 햅틱 효과를 발생시키도록 구성될 수 있다. 일반적으로, 햅틱 효과를 발생시킬 수 있는 내장형 하드웨어(예컨대 액츄에이터(actuator))에 대한 요청이 장치의 운영 체제("OS") 내에 프로그래밍될 수 있다. 이러한 요청은 어떤 햅틱 효과를 재생(play)할지 특정시킨다. 예컨대, 사용자가 예컨대, 버튼, 터치 스크린, 레버(lever), 조이스틱, 휠(wheel) 또는 어떤 다른 제어장치를 사용하여 장치와 상호 작용할 때, 장치의 OS는 제어 회로를 통해 내장형 하드웨어로 재생 명령을 발송할 수 있다. 이어서 내장형 하드웨어는 적절한 햅틱 효과를 생성한다.
장치는, 햅틱 효과가 다른 콘텐츠에 포함되도록, 햅틱 효과의 출력을 오디오 같은 다른 콘텐츠의 출력과 합동시키도록 구성될 수 있다. 예컨대, 오디오 효과 발생기(developer)는 기관총 발사, 폭발 또는 자동차 충돌 같은, 장치에 의해 출력될 수 있는 오디오 효과를 발생시킬 수 있다. 또한, 비디오 효과 같은 다른 유형의 콘텐츠가 발생될 수 있고, 이후에 장치에 의해 출력될 수 있다. 햅틱 효과 발생기는 이후에 장치에 대한 햅틱 효과를 만들 수 있고(author), 장치는 다른 콘텐츠와 함께 햅틱 효과를 출력하도록 구성될 수 있다. 그러나, 이러한 과정은 일반적으로 오디오 효과 또는 다른 유형의 콘텐츠를 정확하게 보조하는(compliment) 햅틱 효과를 만들기 위해 햅틱 효과 발생기를 개별적으로 판단할 것을 요구한다. 오디오 효과 또는 다른 유형의 콘텐츠를 보조하지 않는 열악하게 만들어진 햅틱 효과는 햅틱 효과가 오디오 효과 또는 다른 콘텐츠와 "맞물리지(mesh)" 않는 전체적으로 조화되지 않은 효과를 생성할 수 있다. 일반적으로 이러한 유형의 사용자 경험은 요망되지 않는다.
일 실시예는 오프라인 햅틱 변환을 제어하는 시스템이다. 시스템은 소스로부터 입력을 수신한다. 시스템은 또한 입력을 햅틱 신호로 변환한다. 시스템은 또한 햅틱 신호를 인코딩한다. 시스템은 또한 소스 내에 햅틱 신호를 저장하고, 여기서 햅틱 신호는 소스 내에서 입력과 조합된다. 다른 실시예에서, 햅틱 신호를 인코딩하고 햅틱 신호를 소스 내에 저장하는 대신, 시스템은, 소스와는 독립적으로, 별도로 햅틱 신호를 처리한다.
다른 실시예, 상세 내용, 이점, 및 변형예는 첨부의 도면과 함께 설명될 후술하는 바람직한 실시예의 상세한 설명으로부터 명백해질 것이다.
도 1은 본 발명의 일 실시예에 따른, 시스템(10)의 블록도를 도시.
도 2는 본 발명의 실시예에 따른, 입력 신호를 햅틱 신호로 오프라인 햅틱 변환하는 것 및 햅틱 신호를 인코딩하는 것을 수행하는 시스템을 도시.
도 3은 본 발명의 실시예에 따른, 햅틱 신호를 디코딩하는 것 및 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 재생하는 것을 수행하는 시스템을 도시.
도 4는 본 발명의 실시예에 따른, 입력 신호를 햅틱 신호로 오프라인 햅틱 변환하는 것 및 햅틱 신호를 인코딩하는 것에 대한 흐름도를 도시.
도 5는 본 발명의 실시예에 따른, 햅틱 신호를 디코딩하는 것 및 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 재생하는 것에 대한 흐름도를 도시.
도 6은 본 발명의 실시예에 따른, 인코딩된 멀티미디어 신호의 오디오 구성요소에 대한 핸들러(handler) 박스 구조를 도시.
도 7은 본 발명의 실시예에 따른, 인코딩된 멀티미디어 신호의 비디오 구성요소에 대한 핸들러 박스 구조를 도시.
도 8은 본 발명의 실시예에 따른, 인코딩된 멀티미디어 신호의 햅틱 구성요소에 대한 핸들러 박스 구조를 도시.
도 9는 본 발명의 실시예에 따른, 인코딩된 멀티미디어 신호의 오디오 구성요소, 비디오 구성요소, 및 햅틱 구성요소에 대한 헤더(header) 박스 구조를 도시.
도 10은 본 발명의 실시예에 따른, 인코딩된 멀티미디어 신호의 햅틱 구성요소에 대한 유효(valid) 객체 프로필 유형을 도시.
도 11은 본 발명의 실시예에 따른, 인코딩된 멀티미디어 신호의 햅틱 구성요소에 대한 무효(invalid) 객체 프로필 유형을 도시.
도 12는 본 발명의 실시예에 따른, 오프라인 햅틱 변환 모듈의 기능에 대한 흐름도를 도시.
일 실시예는, 오디오 신호, 비디오 신호, 또는 멀티미디어 신호와 같은 입력을 햅틱 신호로 "오프라인" 변환 수행할 수 있는 시스템이고, 여기서 햅틱 신호는 액츄에이터와 같은 햅틱 출력 장치로 하여금 하나 이상의 햅틱 효과를 출력하게 할 수 있다. 햅틱 변환을 "오프라인"으로 수행하는 데 있어서, 햅틱 변환을 "실시간으로" 또는 입력을 재생하는 도중에 수행하는 것과는 대조적으로, 시스템은 입력을 재생하기 전에 햅틱 변환을 수행할 수 있다. 오프라인 햅틱 변환을 수행하는 데 있어서, 시스템은 먼저 멀티미디어 파일 또는 어떤 다른 유형의 컴퓨터 파일과 같은 소스로부터 입력을 수신할 수 있다. 이어서 시스템은 입력을 햅틱 신호로 변환할 수 있다. 이어서 시스템은 이후에 햅틱 신호를 인코딩할 수 있는데, 여기서 시스템은 오리지널(original) 신호의 소스 내에 햅틱 신호를 포함할 수 있고, 여기서 시스템은 소스 내에서의 오리지널 입력과 햅틱 신호를 조합할 수 있다. 다르게는, 햅틱 신호를 인코딩한 후, 시스템은 별도의 소스 내에 햅틱 신호를 임베딩(embed) 할 수 있다. 또한, 시스템은 소스로부터 인코딩된 햅틱 신호를 추출하고 인코딩된 햅틱 신호를 디코딩할 수 있다. 이어서 시스템은 디코딩된 햅틱 신호를 햅틱 출력 장치 또는 햅틱 출력 장치 세트(예컨대 액츄에이터 또는 액츄에이터 세트)로 발송하고, 햅틱 출력 장치(들)로 하여금 디코딩된 햅틱 신호에 기초한 햅틱 효과를 발생시키게 할 수 있다. 시스템은 또한 입력에 기초하여 또는 입력과 함께 햅틱 효과의 재생을 시스템에 의해 발생된 다른 효과(예컨대 오디오 효과 및 비디오 효과)의 재생과 함께 동기화시킬 수 있다.
도 1은 본 발명의 일 실시예에 따른 시스템(10)의 블록도를 도시한다. 일 실시예에서, 시스템(10)은 모바일 장치의 부분이고, 시스템(10)은 모바일 장치에 대한 오프라인 햅틱 변환 기능을 제공한다. 다른 실시예에서, 시스템(10)은 웨어러블(wearable) 장치의 부분이고, 시스템(10)은 웨어러블 장치에 대한 햅틱 효과 패턴 변형 기능을 제공한다. 웨어러블 장치의 예들은 손목 밴드, 머리띠, 안경, 반지, 다리 밴드, 의류에 통합되는 어레이(array) 또는 사용자가 몸에 착용할 수 있거나 사용자가 휴대할 수 있는 임의의 다른 유형의 장치를 포함한다. 일부 웨어러블 장치는 "햅틱적으로 이용가능"할 수 있는데, 이는 그들이 햅틱 효과를 발생시키는 메커니즘을 포함한다는 것을 의미한다. 다른 실시예에서, 시스템(10)은 장치(예컨대, 모바일 장치 또는 웨어러블 장치)로부터 분리되고, 장치에 대한 햅틱 효과 패턴 변환 기능을 원격으로 제공한다. 단일 시스템으로서 도시되지만, 시스템(10)의 기능은 분산된 시스템으로서 구현될 수 있다. 시스템(10)은 버스(12) 또는 정보를 통신하기 위한 다른 통신 메커니즘, 및 정보를 처리하기 위해 버스(12)에 연결된 프로세서(22)를 포함한다. 프로세서(22)는 임의의 유형의 범용 또는 특정 목적 프로세서일 수 있다. 시스템(10)은 프로세서(22)에 의해 실행되는 정보 및 명령어를 저장하기 위한 메모리(14)를 더 포함한다. 메모리(14)는 랜덤 액세스 메모리("RAM"), 읽기 전용 메모리("ROM"), 자기 또는 광 디스크 같은 정적(static) 저장장치, 또는 임의의 다른 유형의 컴퓨터 판독가능 매체의 임의의 조합을 포함할 수 있다.
컴퓨터 판독가능 매체는 프로세서(22)에 의해 액세스 될 수 있는 임의의 이용가능 매체일 수 있고 휘발성 및 비휘발성 매체 양자, 착탈식 및 비착탈식 매체, 통신 매체, 및 저장 매체를 모두 포함할 수 있다. 통신 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 반송파 또는 다른 전송 메커니즘 같은 변조 데이터 신호 내의 다른 데이터를 포함할 수 있고, 본 기술분야에 공지된 임의의 다른 형태의 정보 전달 매체를 포함할 수 있다. 저장 매체는 RAM, 플래시 메모리, ROM, 소거 및 프로그램 가능 읽기 전용 메모리("EPROM"), 전기적 소거 및 프로그램 가능 읽기 전용 메모리("EEPROM"), 레지스터, 하드 디스크, 착탈식 디스크, 콤팩트 디스크 읽기 전용 메모리("CD-ROM"), 또는 본 기술분야에 공지된 임의의 다른 형태의 저장 매체를 포함할 수 있다.
일 실시예에서, 메모리(14)는 프로세서(22)에 의해 실행될 때 기능을 제공하는 소프트웨어 모듈을 저장한다. 모듈은 시스템(10)을 위한 운영 체제 기능을 제공하는 운영 체제(15)뿐만 아니라, 일 실시예에서 모바일 장치의 나머지 부분을 포함한다. 모듈은, 아래에 보다 상세히 개시된 바와 같이, 햅틱 신호로 입력을 변환하는 것, 햅틱 신호를 인코딩하는 것, 햅틱 신호를 디코딩하는 것, 및 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 재생하는 것을 제어하는 오프라인 햅틱 변환 모듈(16)을 더 포함한다. 특정 실시예들에서, 오프라인 햅틱 변환 모듈(16)은 복수의 모듈들을 포함할 수 있고, 여기서 각 모듈은 햅틱 신호로 입력을 변환하는 것, 햅틱 신호를 인코딩하는 것, 햅틱 신호를 디코딩하는 것, 및 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 재생하는 것을 제어하기 위한 특정 개별 기능을 제공한다. 시스템(10)은 통상적으로 임머숀 코퍼레이션(Immersion Corporation) 사의 인티그레이터™(Integrator™) 소프트웨어 같은 추가적인 기능을 포함하기 위해 하나 이상의 추가적인 어플리케이션 모듈(18)을 포함할 것이다.
원격 소스로부터 데이터를 전송 및/또는 수신하는 실시예들에서, 시스템(10)은 적외선, 라디오(radio), 와이파이, 또는 셀룰러 네트워크 통신 같은 모바일 무선 네트워크 통신을 제공하기 위해, 네트워크 인터페이스 카드 같은 통신 장치(20)를 더 포함한다. 다른 실시예들에서, 통신 장치(20)는 이더넷 접속 또는 모뎀 같은 유선 네트워크 접속을 제공한다.
프로세서(22)는 사용자에게 그래픽 표현 또는 사용자 인터페이스를 디스플레이하기 위한, 액정 디스플레이("LCD") 같은 디스플레이(24)에 버스(12)를 통해 더 연결된다. 디스플레이(24)는 프로세서(22)로부터 신호를 발신 및 수신하도록 구성된 터치 스크린 같은 터치 감응 입력 장치일 수 있고, 멀티 터치(multi-touch) 터치 스크린일 수 있다.
일 실시예에서, 시스템(10)은 액츄에이터(26)를 더 포함한다. 프로세서(22)는, 진동촉각 햅틱 효과, 정전기 마찰 햅틱 효과, 또는 변형 햅틱 효과 같은 햅틱 효과들을 차례로 출력하는 액츄에이터(26)로 발생된 햅틱 효과와 연관된 햅틱 신호를 전송할 수 있다. 액츄에이터(26)는 액츄에이터 구동 회로를 포함한다. 액츄에이터(26)는, 예컨대, 전기 모터, 전자기 액츄에이터, 보이스 코일, 형상 기억 합금, 전기 활성 폴리머, 솔레노이드, 편심 회전 질량 모터("ERM"), 선형 공진 액츄에이터("LRA"), 압전 액츄에이터, 고대역폭 액츄에이터, 전기활성 고분자("EAP") 액츄에이터, 정전 마찰 디스플레이, 또는 초음파 진동 발생기일 수 있다. 다른 실시예들에서, 시스템(10)은 액츄에이터(26)에 더하여 하나 이상의 추가적인 액츄에이터를 포함할 수 있다(도 1에 도시되지 않음). 액츄에이터(26)는 햅틱 출력 장치의 일례이고, 여기서 햅틱 출력 장치는, 구동 신호에 응답하여, 진동촉각 햅틱 효과, 정전기 마찰 햅틱 효과, 또는 변형 햅틱 효과 같은 햅틱 효과를 출력하도록 구성된 장치이다. 다른 실시예들에서, 액츄에이터(26)는 어떤 다른 유형의 햅틱 출력 장치로 대체될 수 있다. 또한, 다른 대안적인 실시예들에서, 시스템(10)은 액츄에이터(26)를 포함하지 않을 수 있고, 시스템(10)으로부터 분리된 장치가 액츄에이터, 또는 햅틱 효과를 발생시키는 다른 햅틱 출력 장치를 포함하고, 시스템(10)은 통신 장치(20)를 통해 그 장치로 발생된 햅틱 신호를 발송한다.
일 실시예에서, 시스템(10)은 스피커(28)를 더 포함한다. 프로세서(22)는, 오디오 효과를 차례로 출력하는 스피커(28)로 오디오 신호를 전송할 수 있다. 스피커(28)는, 예컨대, 다이나믹 스피커(dynamic loudspeaker), 전기다이나믹 스피커, 압전 스피커, 자기변형 스피커, 정전 스피커, 리본 및 평면 자기 스피커, 굴곡파 스피커, 평면 패널 스피커, 하일 에어 모션 트랜스듀서(heil air motion transducer), 플라즈마 아크 스피커, 및 디지털 스피커일 수 있다. 다른 실시예들에서, 시스템(10)은, 스피커(28)에 더하여 하나 이상의 추가적인 스피커를 포함할 수 있다(도 1에 도시되지 않음). 또한, 다른 대안적인 실시예들에서, 시스템(10)은 스피커(28)를 포함하지 않을 수 있고, 시스템(10)으로부터 분리된 장치가 오디오 효과를 출력하는 스피커를 포함하고, 시스템(10)은 통신 장치(20)를 통해 그 장치에 오디오 신호를 발송한다.
일 실시예에서, 시스템(10)은 센서(30)를 더 포함한다. 센서(30)는 에너지의 형태, 또는 소리, 움직임, 가속도, 생체 신호, 거리, 유동(flow), 힘/압력/변형(strain)/구부러짐, 습도, 선형 위치, 방향/경사, 라디오 주파수, 회전 위치, 회전 속도, 스위치의 조작, 온도, 진동, 또는 가시 광선 강도 같은, 그러나 이에 제한되지는 않는, 다른 물리적 특성을 검출하도록 구성될 수 있다. 센서(30)는 검출 된 에너지, 또는 다른 물리적 특성을, 전기 신호 또는 가상 센서 정보를 나타내는 임의의 신호로 변환하도록 더 구성될 수 있다. 센서(30)는 가속도 센서, 심전도, 뇌전도, 근전도, 안전도(electrooculogram), 구개전도(electropalatograph), 갈바니 피부 감응 센서(galvanic skin response sensor), 용량성 센서, 홀 효과 센서, 적외선 센서, 초음파 센서, 압력 센서, 광섬유 센서, 굴곡 센서(또는 벤드(bend) 센서), 힘 감응 레지스터, 로드 셀(load cell), 루센스(LuSense) CPS2 155, 미니어처 압력 트랜스듀서, 압전 센서, 스트레인 게이지, 습도계, 선형 위치 터치 센서, 선형 전위차계(또는 슬라이더), 선형 가변 차등 변압기, 나침반, 경사계, 자기 태그(또는 무선 주파수 식별 태그), 회전식 인코더, 회전식 전위차계, 자이로스코프, 온-오프 스위치, 온도 센서(예컨대, 온도계, 열전대, 저항 온도 검출기, 서미스터(thermistor), 또는 온도-변환 집적 회로), 마이크로폰, 광도계, 고도계, 바이오 모니터, 카메라, 또는 광-종속 레지스터 같은, 그러나 이에 제한되지 않는, 임의의 장치일 수 있다. 다른 실시예들에서, 시스템(10)은, 센서(30)에 더하여 하나 이상의 추가적인 센서를 포함할 수 있다(도 1에 도시되지 않음). 이러한 실시예들 중 일부에서, 센서(30) 및 하나 이상의 추가적인 센서는 센서 어레이, 또는 어떤 다른 유형의 센서 집합체의 일부일 수 있다. 또한, 다른 대안적인 실시예들에서, 시스템(10)은 센서(30)를 포함하지 않을 수 있고, 시스템(10)으로부터 분리된 장치가 에너지의 형태 또는 다른 물리적 특성을 검출하는 센서를 포함하고, 검출된 에너지 또는 다른 물리적 특성을 전기적 신호 또는 가상 센서 정보를 나타내는 다른 유형의 신호로 변환한다. 이어서 장치는 통신 장치(20)를 통해 시스템(10)으로 변환된 신호를 발송할 수 있다.
도 2는 본 발명의 실시예에 따른, 입력 신호를 햅틱 신호로 오프라인 햅틱 변환하는 것 및 햅틱 신호를 인코딩하는 것을 수행하는 시스템을 도시한다. 일 실시예에서, 후술된 도 3, 4, 5 및 12의 기능뿐만 아니라, 도 2의 기능은 메모리 또는 다른 컴퓨터 판독 또는 유형 매체에 저장된 소프트웨어에 의해 구현되고, 프로세서에 의해 실행된다. 다른 실시예들에서, 각각의 기능은 하드웨어(예컨대, 주문형 집적 회로("ASIC"), 프로그램가능 게이트 어레이("PGA"), 필드 프로그램가능 게이트 어레이("FPGA") 등의 사용을 통해), 또는 하드웨어 및 소프트웨어의 임의의 조합에 의해 수행될 수 있다. 특정 실시예들에서, 일부의 기능은 생략될 수 있다.
도 2에 도시된 시스템은 미디어 편집 어플리케이션(200)을 포함한다. 미디어 편집 어플리케이션(200)은 오디오 데이터를 포함하는 오디오 신호, 비디오 데이터를 포함하는 비디오 신호, 또는 오디오 신호 및 비디오 신호를 모두 포함하는 멀티미디어 신호 같은, 입력 신호를 편집하는 기능을 수행하도록 구성된 어플리케이션이다. 입력 신호를 편집하는 기능을 수행함에 있어, 미디어 편집 어플리케이션(200)은 사용자에게 사용자 인터페이스를 디스플레이할 수 있고, 여기서 사용자 인터페이스는 입력 신호의 시각적 표현을 포함하고, 사용자 인터페이스와 상호작용함으로써 사용자는 입력 신호의 하나 이상의 부분 또는 전체 입력 신호를 수정할 수 있다. 도시된 실시예에서, 입력 신호는 비디오 신호 및 두 오디오 신호를 포함하는 멀티미디어 신호이다. 그러나, 이는 예시적인 실시예이고, 다른 실시예들에서, 멀티미디어 신호는 임의의 수의 오디오 신호를 포함할 수 있고, 임의의 수의 비디오 신호를 포함할 수 있다. 다른 실시예들에서, 입력 신호는 오디오 신호, 비디오 신호, 가속도 신호, 방향 신호, 주변 광 신호 또는 센서가 캡처한 데이터를 포함할 수 있는 다른 유형의 신호 같은, 다른 유형의 입력 신호일 수 있다. 또한, 입력 신호가 멀티미디어 신호인 다른 대안적인 실시예들에서, 멀티미디어 신호는 오디오 신호 및 비디오 신호에 더하여 가속도 신호, 방향 신호, 주변 광 신호, 또는 센서가 캡처한 데이터를 포함할 수 있는 다른 형태의 신호 같은, 다른 유형의 신호를 포함할 수 있다.
미디어 편집 어플리케이션(200)은 멀티미디어 파일(210)로부터 인코딩된 멀티미디어 신호를 추출하고, 인코딩된 멀티미디어 신호를 디코딩함으로써 멀티미디어 신호를 수신할 수 있다. 멀티미디어 파일(210)은 인코딩된 멀티미디어 신호 또는 다른 유형의 인코딩된 신호 같은 데이터를 저장하는 컴퓨터 파일이다. 일례의 실시예에서, 멀티미디어 파일(210)은 MPEG-4 파트 14("MP4") 파일일 수 있다. MP4 파일에 관한 구체적인 상세내용은 MPEG4 파트-1 표준(ISO/IEC 14496-1 시스템), MPEG4 파트-3 표준(ISO/IEC 14496-3 오디오) 및 MPEG4 파트-12 표준(ISO/IEC 14496-12 미디어 파일 형식)에서 찾을 수 있고, 그 내용은 본 명세서에 그 전체가 참조로서 포함된다.
단계(1)에서, 사용자는 멀티미디어 신호 내에 포함된 오디오 신호의 하나 이상의 부분을 선택한다(도 2에서는 "오디오 영역"으로서 식별됨). 시스템은 오디오 신호의 하나 이상의 부분을 포함하는 리스트인 편집 리스트(220)를 생성한다. 다른 실시예에서, 오디오 신호의 하나 이상의 부분을 선택하는 것 대신, 사용자는 전체 오디오 신호를 선택할 수 있다. 또한, 다른 실시예들에서, 사용자는 비디오 신호 같은 멀티미디어 신호 내에 포함된 다른 유형의 신호를 선택할 수 있다.
단계(2)에서, 사용자는 시스템에게 하나 이상의 햅틱 신호로 오디오 신호의 하나 이상의 부분을 변환하도록 명령한다(도 2에서는 "'햅틱 생성' 특징을 개시"하는 것으로서 식별됨). 햅틱 신호는 하나 이상의 햅틱 효과와 연관될 수 있는 신호이고, 햅틱 신호는 액츄에이터 같은 햅틱 출력 장치로 발송될 수 있는데, 여기서 햅틱 출력 장치는 햅틱 신호에 기초한 하나 이상의 햅틱 효과를 출력할 수 있다. 햅틱 효과의 예는 햅틱 출력 장치의 사용자가 느끼는 진동을 생성할 수 있는 진동촉각 햅틱 효과이다. 햅틱 효과의 다른 예는 정전기 마찰 햅틱 효과 또는 변형 햅틱 효과를 포함할 수 있다. 햅틱 신호는 파형 같은 데이터를 포함할 수 있고, 여기서 파형은 펄스 코드 변조("PCM") 형식 내의 하나 이상의 신호 값의 집합이다. 실시예에 따르면, 시스템은 햅틱 조정자 모듈(230)을 호출하는데, 여기서 햅틱 조정자 모듈(230)은 하나 이상의 햅틱 신호로 오디오 신호의 하나 이상의 부분을 변환하는 것을 제어하고, 하나 이상의 햅틱 신호를 인코딩하는 것 또한 제어하는 모듈이다. 사용자가 전체 오디오 신호를 선택하는 다른 실시예에서, 사용자는 시스템에게 하나 이상의 햅틱 신호들로 전체 오디오 신호를 변환하도록 명령할 수 있고, 햅틱 조정자 모듈(230)은 하나 이상의 햅틱 신호로 전체 오디오 신호를 변환하는 것을 제어할 수 있다.
단계(3)에서, 햅틱 조정자 모듈(230)은 편집 리스트(220)를 읽고, 편집 리스트(220)로부터 제1 아이템(즉, 오디오 신호의 제1 부분)을 선택하여 오프라인 햅틱 변환 모듈(240)을 호출한다. 오프라인 햅틱 변환 모듈(240)은 오디오 신호 또는 오디오 신호의 일부분 같은 입력을 하나 이상의 햅틱 신호로 변환하는 모듈이다. 오프라인 햅틱 변환 모듈(240)은 입력으로서 다음을 취할 수 있다: (1) PCM 오디오 데이터 같은 데이터를 포함하는 임의 크기의 데이터 버퍼; (2) 데이터 버퍼 내의 채널 수; (3) 데이터 버퍼의 샘플 당 비트; 및 (4) 데이터 버퍼의 샘플링 속도(sample rate). 오프라인 햅틱 변환 모듈(240)은 또한 출력으로서 다음을 생성할 수 있다: 햅틱 출력 장치를 통해 하나 이상의 햅틱 효과를 발생시키는 것을 제어하는 햅틱 데이터를 포함하는 햅틱 신호를 포함하는 데이터 버퍼. 일 실시예에서, 햅틱 신호는 "햅틱 프레임 속도"에서 변화하는 크기(magnitude) 값의 시퀀스를 포함하는 단일 채널일 수 있다. 햅틱 프레임 속도는 햅틱 데이터가 오프라인 햅틱 변환 모듈(240)에 의해 출력되는 속도를 정의한다. 햅틱 프레임 속도는 오디오 신호, 비디오 신호, 또는 멀티미디어 신호 같은 입력 신호의 비디오 프레임 속도 또는 오디오 프레임 속도를 매치(match)시키는 속도로서 설정될 수 있다. 다르게는, 햅틱 프레임 속도는 햅틱 샘플 당 오디오(또는 비디오) 샘플 개수로서 정의될 수 있다. 일 실시예에서, 오프라인 햅틱 변환 모듈(240)은 사용자가 햅틱 프레임 속도를 설정(예컨대, 초당 15 프레임 내지 초당 60 프레임)하게 하는 구성 인터페이스를 포함할 수 있다. 또한, 일 실시예에서, 오프라인 햅틱 변환 모듈(240)은 또한 사용자가 햅틱 변환 동작을 시작하기 전에 기존 햅틱 파라미터(예컨대 강도, 밀도, 또는 선명도)를 변경하게 하는 방법을 노출시킬 수 있다.
오프라인 햅틱 변환 모듈(240)은 하나 이상의 햅틱 신호로 입력을 변환하는 것에 관한 관련 기술분야에서 통상의 지식을 가진 자에게 알려진 임의의 햅틱 변환 알고리즘을 사용할 수 있다. 예컨대, 오프라인 햅틱 변환 모듈(240)은 입력의 각 부분에 대한 최대 진폭 값을 식별하고, 햅틱 신호의 크기를 정의하는 식별된 최대 진폭 값에 기초하여 입력의 각 부분에 대한 햅틱 신호를 발생시키는 햅틱 변환 알고리즘을 사용할 수 있다. 햅틱 변환 알고리즘의 예는 다음의 특허 또는 특허 출원에 기술되어 있다(이들 모두는 본원에 그 전체가 참조로서 포함된다): 미국 특허 번호 7,979,146; 미국 특허 번호 8,000,825; 미국 특허 번호 8,378,964; 미국 특허 공개 공보 번호 2011/0202155; 미국 특허 공개 공보 번호 2011/0215913; 미국 특허 공개 공보 번호 2012/0206246; 미국 특허 공개 공보 번호 2012/0206247; 미국 특허 공개 공보 번호 2013/0265286; 미국 특허 공개 공보 번호 2013/0131851; 미국 특허 공개 공보 번호 2013/0207917; 미국 특허 공개 공보 번호 2013/0335209; 미국 특허 공개 공보 번호 2014/0064516; 미국 특허 출원 번호 13/661,140; 미국 특허 출원 번호 13/785,166; 미국 특허 출원 번호 13/788,487; 미국 특허 출원 번호 14/078,438; 미국 특허 출원 번호 14/078,442; 미국 특허 출원 번호 14/078,445; 미국 특허 출원 번호 14/051,933; 미국 특허 출원 번호 14/020,461; 및 미국 특허 출원 번호 14/020,502.
일 실시예에서, 인코딩된 오디오 신호 또는 다른 유형의 신호의 하나 이상의 부분들은, 멀티미디어 파일(210)로부터 추출되고, 디코딩되고, 오프라인 햅틱 변환 모듈(240)의 하나 이상의 호출을 통해 오프라인 햅틱 변환 모듈(240)로 발송될 수 있는데, 여기서 오프라인 햅틱 변환 모듈(240)은 하나 이상의 햅틱 신호로 오디오 신호의 각 부분을 변환시킬 수 있고, 하나 이상의 햅틱 신호를 출력할 수 있다. 이것은 "단계적 변환"으로서 식별되고, 도 2에 도시된다. 다른 실시예에서, 전체 오디오 신호 또는 다른 유형의 신호는, 멀티미디어 파일(210)로부터 추출되고, 디코딩되고, 오프라인 햅틱 변환 모듈(240)의 단일 호출을 통해 오프라인 햅틱 변환 모듈(240)로 발송될 수 있는데, 여기서 오프라인 햅틱 변환 모듈(240)은 하나 이상의 햅틱 신호로 전체 오디오 신호를 변환시킬 수 있고, 하나 이상의 햅틱 신호를 출력할 수 있다. 이는 "전체적 변환"으로서 식별된다.
실시예에 따르면, 오프라인 햅틱 변환 모듈(240)은 하나 이상의 햅틱 신호로 전체 입력 신호(또는 입력 신호의 하나 이상의 부분들)을 햅틱 변환하는 것을 "오프라인"으로 수행할 수 있다. 햅틱 변환을 "오프라인"으로 수행함에 있어, 오프라인 햅틱 변환 모듈(240)은 미디어 편집 어플리케이션(200)에 의해 입력 신호를 재생하기 전에 햅틱 변환을 수행할 수 있다.
단계(4)에서, 햅틱 조정자 모듈(230)은 햅틱 인코더 모듈(250)을 호출한다. 햅틱 인코더 모듈(250)은 인코딩된 형식으로 하나 이상의 햅틱 신호를 인코딩하고 멀티미디어 파일(210) 내에 인코딩된 하나 이상의 햅틱 신호를 저장하는 모듈이다. 멀티미디어 파일(210) 내에 인코딩된 하나 이상의 햅틱 신호를 저장함에 있어, 햅틱 인코더 모듈(250)은 멀티미디어 파일(210) 내에 하나 이상의 햅틱 신호의 각 햅틱 신호를 정의 및 배치할 수 있다. 따라서, 하나 이상의 햅틱 신호는 멀티미디어 파일(210) 내에 임베딩될 수 있고, 여기서 하나 이상의 햅틱 신호는 오리지널 멀티미디어 신호와 조합된다. 다른 실시예에서, 햅틱 인코더 모듈(250)은 멀티미디어 파일(210)로부터 분리된 멀티미디어 파일 내에 인코딩된 하나 이상의 햅틱 신호를 저장할 수 있다(도 2에는 도시되지 않음). 또한, 또 다른 대안적인 실시예에서, 햅틱 인코더 모듈(250)은 멀티미디어 파일(210), 또는 별도의 멀티미디어 파일 내에 하나 이상의 미리 정의된 햅틱 효과에 기초하여 하나 이상의 인코딩된 햅틱 신호를 추가적으로 저장할 수 있다. 햅틱 신호를 인코딩하고 멀티미디어 파일 내에 인코딩된 햅틱 신호를 저장하는 기능은 도 6 내지 11과 함께 더욱 상세히 아래에서 더 설명한다. 또한, 시스템은 편집리스트(220)로부터 각 아이템(즉, 오디오 신호의 각 부분)에 대해 단계(3) 및 단계(4)를 반복한다.
단계(5)에서, 미디어 편집 어플리케이션(200)은 멀티미디어 신호의 시각적 표현을 업데이트하여 하나 이상의 생성된 햅틱 신호의 표현을 포함한다.
도 3은 본 발명의 실시예에 따른, 햅틱 신호를 디코딩하는 것 및 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 재생하는 것을 수행하는 시스템을 도시한다. 도 3에 도시된 시스템은 미디어 편집 어플리케이션(200) 및/또는 미디어 플레이어 어플리케이션(300)를 포함한다. 미디어 편집 어플리케이션(200)은 이전에 도 2와 함께 상술되어 있다. 미디어 플레이어 어플리케이션(300)은 오디오 데이터를 포함하는 오디오 신호, 비디오 데이터를 포함하는 비디오 신호 또는 오디오 신호 및 비디오 신호를 모두 포함하는 멀티미디어 신호 같은, 입력 신호를 재생하는 기능을 수행하도록 구성된 어플리케이션이다.
단계(1)에서, 사용자는 시스템에게, 인코딩되어 멀티미디어 파일(210)내에 저장되는, 오디오 데이터를 포함하는 오디오 신호, 비디오 데이터를 포함하는 비디오 신호 또는 오디오 신호 및 비디오 신호를 모두 포함하는 멀티미디어 신호 같은 입력 신호를 재생하도록 명령한다. 도시된 실시예에서, 멀티미디어 파일(210) 내에 저장된 인코딩된 입력 신호는 인코딩된 멀티미디어 신호이다. 멀티미디어 파일(210)은 이전에 도 2와 함께 상술되어 있다. 실시예에 따르면, 멀티미디어 파일(210)은 멀티미디어 파일(210) 내에 인코딩된 멀티미디어 신호와 조합되는 하나 이상의 인코딩된 햅틱 신호를 더 포함한다. 일 실시예에서, 사용자는 시스템에게 미디어 편집 어플리케이션(200)의 사용자 인터페이스와 상호작용함으로써 멀티미디어 신호를 재생하도록 명령할 수 있다. 다른 실시예에서, 사용자는 시스템에게 미디어 플레이어 어플리케이션(300)의 사용자 인터페이스와 상호작용함으로써 멀티미디어 신호를 재생하도록 명령할 수 있다.
단계(2)에서, 미디어 편집 어플리케이션(200) 또는 미디어 플레이어 어플리케이션(300) 중 하나는 멀티미디어 신호를 재생한다. 실시예에 따르면, 미디어 편집 어플리케이션(200) 또는 미디어 플레이어 어플리케이션(300)은 멀티미디어 파일(210)로부터 인코딩된 멀티미디어 신호를 검색하고, 인코딩된 멀티미디어 신호를 디코딩하고, 디코딩된 멀티미디어 신호를 재생한다.
단계(3)에서, 운영 체제 기능을 제공하도록 구성되는 모듈인 운영 체제 모듈(310)은, 햅틱 디코더 모듈(320)을 호출한다. 햅틱 디코더 모듈(320)는 멀티미디어 파일(210)로부터 하나 이상의 인코딩된 햅틱 신호를 추출하고 하나 이상의 인코딩된 햅틱 신호를 디코딩하도록 구성된 모듈이다. 인코딩된 햅틱 신호를 디코딩하는 기능은 도 6 내지 11과 함께 더욱 상세하게 아래에 더 설명된다.
단계(4)에서, 햅틱 디코더 모듈(320)은 햅틱 출력(330)을 생성한다. 햅틱 디코더 모듈(320)은 액츄에이터 같은 하나 이상의 햅틱 출력 장치로 하나 이상의 햅틱 신호를 발송함으로써 햅틱 출력(330)을 생성할 수 있고, 여기서 하나 이상의 햅틱 신호는 하나 이상의 햅틱 출력 장치로 하여금 하나 이상의 햅틱 효과를 생성하게 한다. 햅틱 출력(330)은 진동촉각 햅틱 효과(340 및 350) 같은 진동촉각 햅틱 효과를 포함할 수 있다.
또한 햅틱 디코더 모듈(320)은 오디오 효과(360) 및 비디오 효과(370) 같은 오디오 출력 및/또는 비디오 출력의 재생과 햅틱 출력의 재생을 동기화시킨다. 따라서, 햅틱 디코더 모듈(320)은 스피커 같은 오디오 출력 장치로 하나 이상의 오디오 신호를 발송하는 것, 및/또는 디스플레이 같은 비디오 출력 장치에 하나 이상의 비디오 신호를 발송하는 것과 하나 이상의 햅틱 출력 장치로 하나 이상의 햅틱 신호를 발송하는 것을 동기화시킬 수 있다. 이러한 동기화를 용이하게 하기 위해, 햅틱 디코더 모듈(320)은 하나 이상의 오디오 신호의 오디오 데이터 및/또는 하나 이상의 햅틱 신호의 비디오 데이터와 하나 이상의 햅틱 신호의 햅틱 데이터를 동기화시킬 수 있다. 보다 구체적으로는, 햅틱 디코더 모듈(320)은 반복적으로 햅틱 프레임 속도와 같은 속도로 햅틱 출력 장치에 햅틱 신호를 발송하도록 구성된 모듈을 호출하고, 여기서 햅틱 프레임 속도는 오디오 출력 장치로 오디오 신호를 발송하는 데 사용되는 오디오 프레임 속도 및/또는 비디오 출력 장치로 비디오 신호를 발송하는 데 사용되는 비디오 프레임 속도와 동일한 속도로 정의된다. 따라서, 햅틱 프레임 속도는 오디오 프레임 속도 및/또는 비디오 프레임 속도와 동일하기 때문에, 오디오 효과 및/또는 비디오 효과는 햅틱 효과가 출력되는 시간과 동일, 또는 실질적으로 동일(예컨대, 1초 이내)한 시간에서 출력될 수 있다.
도 4는 본 발명의 실시예에 따른, 입력 신호를 햅틱 신호로 오프라인 햅틱 변환하는 것 및 햅틱 신호를 인코딩하는 것에 대한 흐름도를 도시한다. 실시예에 따르면, 입력 신호는 오디오 신호 및 비디오 신호를 포함하는 멀티미디어 신호(405)이다. 그러나, 다른 실시예들에서, 입력 신호는 오디오 신호, 비디오 신호, 가속도 신호, 방향 신호, 주변 광 신호 또는 센서가 캡처한 데이터를 포함할 수 있는 다른 유형의 신호 같은, 다른 유형의 입력 신호일 수 있다. 또한, 입력 신호가 멀티미디어 신호인 다른 실시예들에서, 멀티미디어 신호는 임의의 수의 오디오 신호를 포함할 수 있고/있거나, 임의의 수의 비디오 신호를 포함할 수 있고/있거나, 오디오 신호 및 비디오 신호에 더하여 가속도 신호, 방향 신호, 주변 광 신호, 또는 센서가 캡처한 데이터를 포함할 수 있는 다른 유형의 신호 같은, 다른 형태의 신호를 포함할 수 있다. 실시예에 따르면, 멀티미디어 신호(405)는 인코딩된 멀티미디어 신호일 수 있고, 멀티미디어 파일 같은 소스 내에 저장될 수 있다.
단계(410)에서, 멀티미디어 신호(405)의 오디오 신호가 추출되고 오디오 신호(415)로 디코딩된다. 이어서 오디오 신호(415)는 입력으로서 오프라인 햅틱 변환 모듈(420)로 발송된다. 오프라인 햅틱 변환 모듈(420)은 햅틱 신호(425)로 오디오 신호(415)를 변환한다. 햅틱 신호(425)는 햅틱 데이터를 포함하는 신호이고, 여기서 햅틱 데이터는 진폭 값의 시퀀스 또는 PCM 스트림을 포함한다. 실시예에 따르면, 오프라인 햅틱 변환 모듈(415)은 햅틱 신호(425)로 오디오 신호(415)를 변환하는 것에 관한 관련 기술분야에서 통상의 지식을 가진 자에게 널리 알려진 임의의 햅틱 변환 알고리즘을 사용할 수 있다. 또한, 실시예에서, 오프라인 햅틱 변환 모듈(415)은 햅틱 변환을 "오프라인"으로 수행할 수 있고, 여기서 오프라인 햅틱 변환 모듈(420)은 오디오 신호를 재생하기 전에 햅틱 변환을 수행할 수 있다.
단계(430)에서, 햅틱 신호(425)는 인코딩된 햅틱 신호(435)로 인코딩된다. 또한, 단계(440)에서, 인코딩된 햅틱 신호(435) 및 멀티미디어 신호(405)는 멀티미디어 신호(445)로 다중화(즉, 조합)되고, 여기서 멀티미디어 신호(445)는 오디오 신호, 비디오 신호 및 햅틱 신호(즉, 인코딩된 햅틱 신호(435))를 포함한다. 인코딩된 햅틱 신호(435)로 햅틱 신호(425)를 인코딩하는 것 및 인코딩된 햅틱 신호(435)와 멀티미디어 신호(405)를 다중화하는 것은 도 6 내지 11과 함께 더욱 상세하게 아래에 더 설명된다.
도 5는 본 발명의 실시예에 따른, 햅틱 신호를 디코딩하는 것 및 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 재생하는 것에 대한 흐름도를 도시한다. 단계(510)에서, 멀티미디어 신호(445)는 오디오 신호(511), 비디오 신호(512), 및 햅틱 신호(513)로 역다중화(즉, 분할)된다. 멀티미디어 신호(445)는 이전에 도 4와 함께 상술되어 있고, 다시 설명되지 않는다.
단계(520)에서, 오디오 신호(511), 비디오 신호(512), 및 햅틱 신호(513)는 각각 디코딩된다. 또한, 오디오 신호(511) 및 비디오 신호(512)가 디코딩된 이후, 그들은 오디오/비디오 렌더러(renderer)(530)로 발송되고, 여기서 오디오/비디오 렌더러(530)는 하나 이상의 오디오 출력 장치에서 하나 이상의 오디오 효과를 출력하는 것, 및 하나 이상의 비디오 출력 장치에서 하나 이상의 비디오 효과를 출력하는 것을 제어한다. 실시예에 따르면, 하나 이상의 오디오 효과는 오디오 신호(511)에 기초하여 출력되고, 하나 이상의 비디오 효과 비디오 신호(512)에 기초하여 출력된다. 특정 실시예들에서, 각각의 오디오 출력 장치는 스피커이고, 각각의 비디오 출력 장치는 디스플레이이다. 또한, 햅틱 신호(513)는 디코딩된 햅틱 신호(525)로 디코딩된다. 실시예에 따르면, 디코딩된 햅틱 신호(525)는 디코딩된 햅틱 데이터를 포함하는 신호이고, 여기서 디코딩된 햅틱 데이터는 진폭 값의 시퀀스 또는 PCM 스트림을 포함한다. 햅틱 신호(513)가 디코딩된 햅틱 신호(525)로 디코딩된 후, 디코딩된 햅틱 신호(525)는 진동 렌더러(570)로 발송되고, 여기서 햅틱 신호(525)를 진동 렌더러(570)으로 발송하는 것은 더욱 상세하게 아래에 더 설명된다. 실시예에 따르면, 진동 렌더러(570)는 햅틱 출력 장치에서 하나 이상의 햅틱 효과를 출력하는 것을 제어하고, 여기서 하나 이상의 햅틱 효과를 출력하는 것은 또한 더욱 상세하게 아래에 더 설명된다. 또한, 오디오 신호(511) 및 비디오 신호(512)를 오디오/비디오 렌더러(530)로 발송하는 것, 및 디코딩된 햅틱 신호(520)를 진동 렌더러(570)으로 발송하는 것을 동기화시킬 수 있어서, 하나 이상의 오디오 효과 및 하나 이상의 비디오 효과가 하나 이상의 햅틱 효과가 출력되는 시간과 동일, 또는 실질적으로 동일한 시간에서 출력되게 된다.
단계(540)에서 하나 이상의 햅틱 출력 장치가 선택된다. 단계(550)에서, 디코딩된 햅틱 신호(525)의 진폭 햅틱 파라미터가 변조되고, 이는 선택된 햅틱 출력 장치(들)에 대한 디코딩된 햅틱 신호(525)를 구성한다. 단계(560)에서, 디코딩된 햅틱 신호(525)가 선택된 햅틱 출력 장치(들)에 대해 구성되도록 강도 햅틱 파라미터, 밀도 햅틱 파라미터, 또는 선명도 햅틱 파라미터 같은 다른 햅틱 파라미터가 변조된다. 특정 실시예들에서, 단계(540, 550, 및 560)에서 수행되는 기능은 생략될 수 있다. 또한, 디코딩된 햅틱 신호(525)가 변조된 후, 디코딩된 햅틱 신호(525)는 진동 렌더러(570)로 발송되는데, 여기서 진동 렌더러(570)는 액츄에이터(들)(580)에서 하나 이상의 햅틱 효과를 출력하는 것을 제어하고, 여기서 액츄에이터는 햅틱 출력 장치의 일례에 해당한다. 실시예에 따르면, 하나 이상의 햅틱 효과는 디코딩된 햅틱 신호(525)에 기초하여 출력된다.
햅틱 신호를 인코딩하고 인코딩된 햅틱 신호를 MP4 파일 같은 멀티미디어 파일 내에 저장하는 기능이, 예시적인 실시예에 따라, 이제 더욱 상세하게 설명된다. 햅틱 신호를 인코딩하는 것 및 멀티미디어 파일 내에 인코딩된 햅틱 신호를 저장하는 것에 대한 예시적인 구현예가 설명되지만, 관련 분야의 통상의 기술자는, 다른 대안적인 실시예들에서, 햅틱 신호를 인코딩하는 것 및 멀티미디어 파일 내에 인코딩된 햅틱 신호를 저장하는 것이 여러 방식으로 구현될 수 있다는 것을 쉽게 이해할 것이다. 전술한 바와 같이, 멀티미디어 파일은 인코딩된 멀티미디어 신호를 포함할 수 있고, 여기서 인코딩된 멀티미디어 신호는 인코딩된 오디오 신호 및 인코딩된 비디오 신호 같은 인코딩된 신호의 임의의 수를 포함할 수 있다. 실시예에 따르면, 햅틱 신호는 인코딩되어 멀티미디어 파일 내에 저장될 수 있고, 여기서 인코딩된 햅틱 신호는 멀티미디어 파일 내에 저장된 다른 인코딩된 오디오 신호 및/또는 인코딩된 비디오 신호와 함께 조합되거나 인터리빙된다(interleaved).
실시예에 따르면, 인코딩된 신호들 둘다 파형과 같은 데이터를 포함한다는 점에서, 인코딩된 햅틱 신호는 인코딩된 오디오 신호(또는 다른 유형의 인코딩된 신호)와 유사하고, 여기서 파형은 PCM 형식 내의 하나 이상의 신호 값 세트이다. 따라서, 인코딩된 햅틱 신호가 멀티미디어 파일 내에서 형식화되어, 인코딩된 햅틱 신호가 다른 타입의 인코딩된 신호(예컨대 인코딩된 오디오 신호)와 헷갈리지 않게 되는 것이 중요하고, 그 반대의 경우도 마찬가지다. 또한, 멀티미디어 파일은, 일련의 객체이고, 박스(box)로서 식별된다. 모든 데이터는 박스 내에 저장되고; 멀티미디어 파일 내에 저장된 다른 데이터는 없다. 따라서, 멀티미디어 파일의 인코딩된 신호는 멀티미디어 파일의 박스 내에 저장된다. 따라서, 실시예에 따르면, 인코딩된 햅틱 신호는, 오디오 및 비디오가 존재하는 다른 trak 박스와 함께, 표준 "moov" 박스 내의 별도의 "trak" 박스 내에 저장된다. 다음 표는 햅틱 박스 구조를 도시한다.
박스 계층 구조 설명
moov 모든 메타데이터에 대한 컨테이너
trak 개별 트랙 또는 스트림에 대한 컨테이너
mdia 트랙 내의 미디어 정보에 대한 컨테이너
mdhd 미디어에 관한 전체 정보, 미디어 헤더
hdlr 미디어(핸들러) 유형을 선언
minf 미디어 정보 컨테이너
nmhd 널(Null) 미디어 헤더
stbl 샘플 테이블 박스
stsd 샘플 설명(코덱 유형, 초기화 등)
hapt 이러한 트랙을 햅틱 스트림으로서 가리키는, 햅틱 박스
esds 기초 스트림 설명
실시예에 따르면, 인코딩된 햅틱 신호가 오디오 또는 비디오 같은 다른 유형의 미디어로서 렌더링되지 않는다는 것을 확실히 하기 위해, 별도의 "hapt" 박스는 인코딩된 신호가 인코딩된 햅틱 신호라는 것을 가리킬 수 있다. 추가적으로, 또한, 추가로 인코딩된 햅틱 신호가 미디어의 다른 유형으로 렌더링되지 않는 것을 확실하게 하기 위해, 인코딩된 햅틱 신호는 시간 메타데이터 트랙(timed metadata track)(즉, "메타")으로서 표시될 수 있다. 이는 핸들러 유형 필드를 "hdlr" 박스 내의 "meta" 값으로 설정함으로써 이루어질 수 있다. 시간 메타데이터 트랙은 시간 기반의 미디어 데이터를 저장하도록 구성된다. 이러한 유형의 트랙, 또는 스트림 내에 인코딩된 햅틱 신호를 저장하는 것은, 인코딩된 햅틱 신호를 미디어로 간주하게 하지만, 오디오 형식 또는 비디오 형식 같은 햅틱 형식 이외의 형식인 미디어 형식은 아니다. 따라서, 인코딩된 햅틱 신호에 대한 시간 메타데이터 스트림을 지정하면, 인코딩된 햅틱 신호는 인코딩된 햅틱 신호의 형식이 인코딩된 오디오 신호 또는 인코딩된 비디오 신호 같은 다른 유형의 인코딩된 신호의 형식과 유사함에도 불구하고, 오디오 또는 비디오 같은 다른 유형의 미디어로서 렌더링되지 않는다.
도 6은 본 발명의 실시예에 따른 인코딩된 멀티미디어 신호의 오디오 구성요소를 위한 핸들러 박스 구조(600)를 도시한다. 실시예에 따르면, 인코딩된 멀티미디어 신호는 인코딩된 오디오 신호인 오디오 구성요소를 포함한다. 인코딩된 오디오 신호는 멀티미디어 파일의 트랙 박스 내에 저장된다. 또한, 트랙 박스는 핸들러(또는 "hdlr") 박스를 핸들러 박스 구조(600)로 포함한다. 핸들러 박스 구조(600)는 핸들러 유형 필드(610)를 트랙이 사운드 트랙임을 나타내는 "soun" 값으로 포함한다.
도 7은 본 발명의 실시예에 따른 인코딩된 멀티미디어 신호의 비디오 구성요소를 위한 핸들러 박스 구조를 도시한다. 실시예에 따르면, 인코딩된 멀티미디어 신호는 인코딩된 비디오 신호인 비디오 구성요소를 포함한다. 인코딩된 비디오 신호는 멀티미디어 파일의 트랙 박스 내에 저장된다. 또한, 트랙 박스는 hdlr 박스를 핸들러 박스 구조(700)로 포함한다. 핸들러 박스 구조(700)는 핸들러 유형 필드(710)를 트랙이 비디오 트랙임을 나타내는 "vide" 값으로 포함한다.
도 8은 본 발명의 실시예에 따른 인코딩된 멀티미디어 신호의 햅틱 구성요소를 위한 핸들러 박스 구조를 도시한다. 실시예에 따르면, 인코딩된 멀티미디어 신호는 인코딩된 햅틱 신호인 햅틱 구성요소를 포함한다. 인코딩된 햅틱 신호는 멀티미디어 파일의 "트랙" 박스 내에 저장된다. 또한, 트랙 박스는 hdlr 박스를 핸들러 박스 구조(800)로 포함한다. 핸들러 박스 구조(800)는 핸들러 유형 필드(810)를 트랙이 햅틱 트랙임을 나타내는 "meta" 값으로 포함한다.
도 9는 본 발명의 실시예에 따른 인코딩된 멀티미디어 신호의 오디오 구성요소, 비디오 구성요소 및 햅틱 구성요소를 위한 헤더 박스 구조를 도시한다. 실시예에 따르면, 멀티미디어 신호는 인코딩된 오디오 신호인 오디오 구성요소, 인코딩된 비디오 신호인 비디오 구성요소 및 인코딩된 햅틱 신호인 햅틱 구성요소를 포함한다. 인코딩된 오디오 신호는 멀티미디어 파일의 트랙 박스(910) 내에 저장된다. 트랙 박스(910)는 "minf" 컨테이너 박스 하위에 "smhd" 박스(911)를 포함하며, smhd 박스(911)는 그 트랙이 오디오 트랙임을 나타내는 사운드 미디어 헤더 박스이다. 인코딩된 비디오 신호는 멀티미디어 파일의 트랙 박스(920) 내에 저장된다. 트랙 박스(920)는 "minf" 컨테이너 박스 하위에 "vmhd" 박스(921)를 포함하며, vmhd 박스(921)는 그 트랙이 비디오 트랙임을 나타내는 비디오 미디어 헤더 박스이다. 인코딩된 햅틱 신호는 멀티미디어 파일의 트랙 박스(930) 내에 저장된다. 트랙 박스(930)는 "minf" 컨테이너 박스 하위에 "nmhd" 박스(931)를 포함하며, nmhd 박스(931)는 그 트랙이 햅틱 트랙임을 나타내는 널 미디어 헤더 박스이다. 더 구체적으로, nmhd 박스(931)는 트랙이 오디오 트랙 또는 비디오 트랙이 아니지만 여전히 햅틱 트랙으로서 해석될 수 있음을 나타낼 수 있다.
또한, 상기에 기재한 바와 같이, 전술한 표에 나타난 햅틱 박스 구조 같은 햅틱 박스 구조 내에 샘플 테이블 박스(즉, "stbl" 박스)가 있다. stbl 박스 하에, 샘플 기재 박스(즉, "stsd" 박스)가 있다. stsd 박스에서, 트랙의 형식이 명시된다. 햅틱 트랙에서, 상기에 기재한 바와 같이, 시간 메타데이터 트랙이 인코딩된 햅틱 신호를 포함하는 것을 나타내는 햅틱 박스가 정의될 수 있다. 소정 실시예에서, "meta" 핸들러 타입은 메타데이터 샘플 엔트리(MetaDataSampleEntry) 클래스가 실행되는 것을 필요로 할 수 있지만, 메타데이터 샘플 엔트리 클래스는 새로운 서브 클래스로 연장될 수 있는 빈 클래스로 정의될 수 있다. 또한, 임의의 햅틱 특정 데이터(haptic-specific data)는 하기에 더 자세히 기재될 것과 같이 "esds" 박스 내에 저장될 수 있다.
추가적으로, 트랙 지속시간 및 타임스케일 같은 임의의 타이밍 데이터는 "mdhd" 박스 내에 존재할 수 있고, 여기서 mdhd 박스는 햅틱 트랙의 전체적 지속시간 및 타임스케일을 설명한다. "타임스케일"은 1 초에 통과하는 타임 유닛의 수를 포함하는 32 비트 무부호(unsigned) 정수이다. 예컨대, 햅틱 트랙이 초당 50 샘플의 업데이트 속도를 가진다면, 이 타임스케일은 50으로 설정된다. "지속기간"은 타임스케일의 스케일 내에서 햅틱 트랙의 길이를 선언하는 64 비트 무부호 정수이다. 예컨대, 타임스케일이 값 50으로 설정되면, 모든 샘플은 20 ms의 길이를 갖는다. 햅틱 트랙이 5초 길이라면, 지속시간은 값 250(즉, 5*1000/20)의 값을 가져야 한다.
또한, 전술한 바와 같이, 전술한 표에 도시된 햅틱 박스 구조 같은 햅틱 박스 구조 내에서, hapt 컨테이너 박스 하위에 있는 아이(child) 박스는 기초 스트림 설명 박스(즉, "esds" 박스)이고, 또한 ES 설명자(ES_Descriptor)로서 참조된다. 햅틱에 적용될 때, 이 박스는 스트림이 상주하는 트랙 박스와 연관된 스트림을 디코딩하는 데 필요한 정보를 포함한다.
실시예에 따르면, ES 설명자 박스는 기초 스트림을 파싱(parse)하고 읽기 위한 파라미터 및 요건을 포함하는 디코더 구성 설명자(DecoderConfigDescriptor) 구조를 포함한다. 디코더 구성 설명자 내에, 객체 프로필 지시(objectProfileIndication) 값 및 디코더 특정 정보(DecoderSpecificInfo) 구조에 대한 필드가 존재한다. 객체 프로필 지시 값은 스트림에 대한 객체 프로필 유형을 제공한다. 필드는, 사용자 제공 객체 프로필 유형의 범위인, 0xC0와 0xFE 사이의 값으로 설정될 수 있고, hapt 박스 구조 내에 사용될 때, 이는 햅틱 유형으로서 공지될 수 있다. 도 10 및 11과 함께 더욱 상세히 아래에 더 설명하는 바와 같이, 실시예에 따라, 객체 프로필 유형으로서 0xC0와 0xFE 사이의 값을 사용하는 hapt 박스를 포함하는 trak 박스 구조만이 유효 햅틱 스트림으로 간주될 것이다. 디코더 특정 정보 구조는 객체 프로필 지시 값에 기초하여 다른 클래스에 의해 확장되는 추상 클래스이다. 일 실시예에서, 이 구조는 인코딩된 햅틱 신호가 생성되는 신호 유형 및 햅틱 출력 장치(예컨대, 액츄에이터) 같은 햅틱 특정 데이터를 포함하는 햅틱 특정 구성(HapticSpecificConfig) 클래스에 의해 확장될 수 있다. 햅틱 특정 구성 클래스는 더욱 상세하게 아래에 더 설명한다.
도 10은 본 발명의 실시예에 따른, 인코딩된 멀티미디어 신호의 햅틱 구성요소에 대한 유효 객체 프로필 유형을 도시한다. 실시예에 따르면, 인코딩된 멀티미디어 신호는 인코딩된 햅틱 신호인 햅틱 구성요소를 포함한다. 또한, 햅틱 박스 구조(1000)가 인코딩된 멀티미디어 신호를 저장하는 멀티미디어 파일에 대해 정의된다. 햅틱 박스 구조(1000)는 0xC0와 0xFE의 범위 내 값을 가지는, 객체 프로필 지시 필드(1010)를 포함한다. 객체 프로필 지시 필드(1010)의 값이 유효한 범위 내에 있기 때문에, 인코딩된 햅틱 신호를 포함하는 트랙은 유효 햅틱 트랙으로 간주된다.
도 11은 본 발명의 실시예에 따른, 인코딩된 멀티미디어 신호의 햅틱 구성요소에 대한 무효 객체 프로필 유형을 도시한다. 실시예에 따르면, 인코딩된 멀티미디어 신호는 인코딩된 햅틱 신호인 햅틱 구성요소를 포함한다. 또한, 햅틱 박스 구조(1100)가 인코딩된 멀티미디어 신호를 저장하는 멀티미디어 파일에 대해 정의된다. 햅틱 박스 구조(1100)는 0x40의 값을 가지는, 객체 프로필 지시 필드(1110)를 포함한다. 객체 프로필 지시 필드(1110)의 값이 유효한 범위 내에 있지 않기 때문에, 인코딩된 햅틱 신호를 포함하는 트랙은 유효 햅틱 트랙으로 간주되지 않는다.
미디어 플레이어 어플리케이션 및 미디어 편집 어플리케이션은 일반적으로 멀티미디어 파일의 기초 스트림 설명 박스 내의 구성 정보를 필요로 하고, 여기서 구성 정보는 디코딩 처리에 필요하다. 따라서, 디코더 구성 설명자는 디코더 특정 정보 추상 클래스의 서브 클래스를 포함할 수 있다. 햅틱 스트림에 대해, 디코더 특정 정보 추상 클래스는 본 발명의 실시예에 따른, 햅틱 특정 구성 클래스에 의해 확장될 수 있다. 햅틱 특정 구성은, 각각, 객체 유형 지시 값 및 스트림 유형(streamType) 값이 0xC0 및 0x20일때, 추상 클래스인 디코더 특정 정보를 확장시킬 수 있고, 이는 스트림이 햅틱 데이터를 포함한다는 것을 가리킨다. 햅틱 특정 구성 클래스의 예시적인 구문(syntax)가 아래와 같이 다음 표에 나타난다.
구문 비트 수 약호
HapticSpecificConfig()
{
hapticStreamType ;
if (hapticStreamType == 0x3) {
audioObjectType ;
channelConfiguration;
}
else {
hapticDecoderType ;
actuatorConfiguration ;
}
samplingFrequencyIndex ;
if (samplingFrequencyIndex == 0xF) {
samplingFrequency ;
}
EndpointConfiguration ;
}


2

5
4


4
4

4

24

8


bslbf

bslbf
bslbf


bslbf
bslbf

bslbf

uimsbf

bslbf
햅틱 스트림 유형 설명
0x0 예약(Reserved)
0x1 예약
0x2 햅틱 인코딩된 스트림
0x3 오디오 인코딩된 스트림
샘플링 주파수 인덱스
0x0 예약
0x1 200
0x2 8000
0x3 - 0xE 예약
0xF 이스케이프 값(Escape value)
액츄에이터 구성 설명
0x0 예약
0x1 단일 액츄에이터
0x2 - 0xF 예약
채널 수
0 -
1 모노(Mono)
엔드포인트 ( Endpoint ) 구성 설명
0x0 시간 순 진폭
0x1 PCM 파형
0x2 - 0xFF 예약
햅틱 디코더 유형 설명
0x0 로(Raw) 스트림
0x1 - 0xF 예약
실시예에 따르면, 인코딩된 햅틱 신호는 멀티미디어 파일 내의 인코딩된 오디오 신호 및/또는 인코딩된 비디오 신호와 조합되거나 인터리빙된다. 더 구체적으로는, 인코딩된 오디오 신호를 포함하는 스트림은 사운드 유형인 trak 객체와 연관될 수 있다. 또한, 인코딩된 비디오 신호를 포함하는 스트림은 비디오 유형인 trak 객체와 연관될 수 있다. 또한, 인코딩된 햅틱 신호를 포함하는 스트림은 시간 메타데이터 유형인 trak 객체와 연관될 수 있다. 이러한 스트림은 박스 구조 내의 moov 박스와 동일한 레벨에 상주하는 "mdat" 박스 내에서, 인터리빙, 또는 조합될 수 있다. mdat 박스는 미디어 편집 어플리케이션 또는 미디어 플레이어 어플리케이션이 파싱, 디코딩 및 렌더링하는 실제 데이터를 포함한다. 인터리빙된 데이터 박스로부터 인코딩된 햅틱 신호를 추출하는 것 및 인코딩된 햅틱 신호를 디코딩하는 것에 있어서, 미디어 편집 어플리케이션 또는 미디어 플레이어 어플리케이션은 오프셋을 샘플 테이블 내의 인코딩된 햅틱 신호의 덩어리(chunk) 또는 부분들에 대해 참조할 수 있다.
도 12는 본 발명의 일 실시예에 따른, 오프라인 햅틱 변환 모듈(예컨대 도 1의 오프라인 햅틱 변환 모듈(16))의 기능에 대한 흐름도를 도시한다. 흐름이 시작되어 단계(1210)로 진행한다. 단계(1210)에서, 입력은 소스로부터 수신된다. 특정 실시예들에서, 입력은 다음 중 하나가 될 수 있다: 오디오 신호의 적어도 일부분; 비디오 신호의 적어도 일부분; 또는 오디오 신호 및 비디오 신호를 모두 포함하는 멀티미디어 신호의 적어도 일부분. 또한, 특정 실시예들에서, 소스는 멀티미디어 파일이다. 소스가 멀티미디어 파일인 실시예들에서, 입력 신호는 멀티미디어 파일로부터 추출될 수 있고, 입력 신호는 디코딩될 수 있다. 흐름은 이어서 단계(1220)로 진행한다.
단계(1220)에서, 입력은 하나 이상의 햅틱 신호로 변환된다. 특정 실시예들에서, 입력 신호는 소스로부터 추출되고, 입력 신호는 하나 이상의 햅틱 신호로 변환된다. 다른 실시예들에서, 입력 신호의 하나 이상의 부분은 소스로부터 추출되고, 입력 신호의 하나 이상의 부분은 하나 이상의 햅틱 신호로 변환된다. 또한, 특정 실시예들에서, 하나 이상의 햅틱 신호로 입력을 변환하는 것은 입력을 재생하기 전에 수행될 수 있다. 흐름은 이어서 단계(1230)로 진행한다.
단계(1230)에서, 하나 이상의 햅틱 신호가 인코딩된다. 흐름은 이어서 단계(1240)로 진행한다.
단계(1240)에서, 하나 이상의 햅틱 신호가 저장된다. 특정 실시예들에서, 하나 이상의 햅틱 신호는 소스 내에 저장될 수 있고, 여기서 하나 이상의 햅틱 신호는 소스의 컨테이너 내의 입력과 조합된다. 다른 실시예들에서, 하나 이상의 햅틱 신호는 별도의 파일 또는 스트림 내에 저장될 수 있다. 흐름은 이어서 단계(1250)로 진행한다.
단계(1250)에서, 하나 이상의 햅틱 신호가 추출된다. 하나 이상의 햅틱 신호가 소스 내에 저장되는 실시예들에서, 하나 이상의 햅틱 신호는 소스 내에 저장된 입력으로부터 추출될 수 있다. 하나 이상의 햅틱 신호가 별도의 파일 또는 스트림 내에 저장되는 실시예들에서, 하나 이상의 햅틱 신호는 별도의 파일 또는 스트림으로부터 추출될 수 있다. 흐름은 이어서 단계(1260)로 진행한다.
단계(1260)에서, 하나 이상의 햅틱 신호가 디코딩된다. 흐름은 이어서 단계(1270)로 진행한다.
단계(1270)에서, 하나 이상의 햅틱 효과는 하나 이상의 햅틱 신호에 기초하여 생성된다. 특정 실시예들에서, 하나 이상의 햅틱 신호는 햅틱 출력 장치로 발송되어 하나 이상의 햅틱 효과를 발생시킨다. 이러한 실시예들 중 일부에서, 햅틱 출력 장치는 액츄에이터이다. 또한, 이러한 실시예들 중 일부에서, 하나 이상의 햅틱 신호는 각각 하나 이상의 크기 값의 시퀀스를 포함할 수 있고, 1초 당 햅틱 출력 장치로 발송되는 하나 이상의 크기 값의 시퀀스의 일부를 정의하는 햅틱 프레임 속도가 구성될 수 있다. 흐름은 이어서 단계(1280)로 진행한다.
단계(1280)에서, 하나 이상의 햅틱 효과는 연관된 미디어로부터의 하나 이상의 효과와 동기화된다. 특정 실시예들에서, 연관된 미디어는 입력일 수 있다. 이러한 실시예들 중 일부에서, 연관된 미디어로부터의 하나 이상의 효과는 입력에 기초하여 또는 입력과 함께 발생되는 하나 이상의 효과일 수 있다. 그런 다음 흐름은 종료한다.
따라서, 일 실시예에서, 시스템은 햅틱 신호로 오디오 신호 같은 입력 신호를 "오프라인"에서 변환할 수 있다. 햅틱 신호는 이어서 멀티미디어 파일로 임베딩될 수 있는데, 여기서 햅틱 신호는 멀티미디어 파일 내에 포함된 오디오 신호 및 비디오 신호와 조합될 수 있다. 햅틱 신호를 사용하여 발생된 햅틱 효과는 이어서 오디오 신호를 사용하여 발생된 오디오 효과 및 비디오 신호를 사용하여 발생된 비디오 효과와 동기화될 수 있다. 오디오 효과 및 비디오 효과와 햅틱 효과를 동기화 시키는 것은 멀티미디어 파일의 사용자를 위한 엔터테인먼트의 추가적인 레이어를 제공할 수 있다. 따라서, 시스템은 사용자에 대한 빠르고 쉬운 방법을 제공하여 멀티미디어 파일에 포함된 멀티미디어 신호에 대해 햅틱 효과를 생성할 수 있다. 시스템은 추가로 햅틱 출력 장치 상에 햅틱 효과를 렌더링하기 위한 신뢰할 수 있는 방법을 제공할 수 있다.
본 명세서에 기재된 발명의 특징, 구조, 또는 특성은 하나 이상의 실시예들에서 임의의 적절한 방식으로 조합될 수 있다. 예컨대, 본 명세서 전반에 걸쳐 기술된 "일 실시예", "일부 실시예들", "특정 실시예", "특정 실시예들", 또는 다른 유사한 어구의 사용은, 실시예와 관련되어 설명된 구체적인 특징, 구조 또는 특성이 본 발명의 적어도 하나의 실시예에 포함될 수 있다는 사실을 말한다. 따라서, 본 명세서 전반에 걸쳐 기술된 "일 실시예", "일부 실시예들", "특정 실시예", "특정 실시예들", 또는 다른 유사한 어구가 나타났다고 해서 반드시 모두 실시예들의 동일한 그룹을 참조하는 것은 아니며, 설명된 특징, 구조, 또는 특성은 하나 이상의 실시예들에서 임의의 적절한 방식으로 조합될 수 있다.
본 기술분야에서 통상의 지식을 가진 자는 상술된 바와 같은 본 발명이 다른 순서의 단계로, 및/또는 개시된 것과 다른 구성의 요소로 실시될 수 있다는 것을 쉽게 이해할 것이다. 따라서, 본 발명이 이러한 바람직한 실시예에 기초하여 설명되었지만, 본 발명의 사상 및 범위 내에 있는, 특정 수정, 변형 및 대안적인 구조가 명백할 것이라는 점이 본 기술분야의 통상의 기술자에게 명백할 것이다. 따라서, 본 발명의 경계 및 범위를 결정하기 위해서는, 첨부된 청구 범위를 참조해야 한다.

Claims (20)

  1. 프로세서에 의해 실행될 때, 프로세서로 하여금 오프라인 햅틱 변환을 제어하게 하는 저장된 명령어(instructions)를 갖는 컴퓨터 판독가능 매체에 있어서,
    제어는
    소스로부터 입력을 수신하는 것;
    입력을 하나 이상의 햅틱 신호로 변환하는 것;
    하나 이상의 햅틱 신호를 인코딩하는 것; 및
    하나 이상의 햅틱 신호를 저장하는 것을 포함하고,
    상기 입력을 하나 이상의 햅틱 신호로 변환하는 것은 입력의 재생 전에 수행되는 컴퓨터 판독가능 매체.
  2. 제1항에 있어서, 제어는
    하나 이상의 햅틱 신호를 추출하는 것;
    하나 이상의 햅틱 신호를 디코딩하는 것;
    하나 이상의 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 발생시키는 것; 및
    하나 이상의 햅틱 효과를 입력과 동기화시키는 것을 더 포함하는 컴퓨터 판독가능 매체.
  3. 제2항에 있어서, 상기 하나 이상의 햅틱 효과를 발생시키는 것은 하나 이상의 햅틱 효과를 발생시키기 위해 하나 이상의 햅틱 효과를 햅틱 출력 장치로 발송하는 것을 더 포함하는 컴퓨터 판독가능 매체.
  4. 제3항에 있어서, 상기 햅틱 출력 장치는 액츄에이터를 포함하는 컴퓨터 판독가능 매체.
  5. 제3항에 있어서, 상기 하나 이상의 햅틱 신호는 하나 이상의 크기 값(magnitude value)의 시퀀스를 각각 포함하고,
    제어는 햅틱 출력 장치로 매초 발송되는 하나 이상의 크기 값의 시퀀스의 일부분을 정의하는 햅틱 프레임 속도(frame rate)를 구성하는 것을 더 포함하는 컴퓨터 판독가능 매체.
  6. 제1항에 있어서, 상기 입력을 하나 이상의 햅틱 신호로 변환하는 것은
    소스로부터 입력 신호를 추출하는 것과,
    입력 신호를 하나 이상의 햅틱 신호로 변환하는 것을 더 포함하는 컴퓨터 판독가능 매체.
  7. 제1항에 있어서, 상기 입력을 하나 이상의 햅틱 신호로 변환하는 것은
    입력 신호의 하나 이상의 부분을 소스로부터 추출하는 것과,
    입력 신호의 하나 이상의 부분을 하나 이상의 햅틱 신호로 변환하는 것을 더 포함하는 컴퓨터 판독가능 매체.
  8. 제1항에 있어서, 상기 입력은 오디오 신호의 적어도 일부분, 비디오 신호의 적어도 일부분 또는 오디오 신호와 비디오 신호 양자를 포함하는 멀티미디어 신호의 적어도 일부분 중 하나를 포함하는 컴퓨터 판독가능 매체.
  9. 제1항에 있어서, 상기 소스는 멀티미디어 파일을 포함하는 컴퓨터 판독가능 매체.
  10. 제1항에 있어서, 상기 하나 이상의 햅틱 신호를 저장하는 것은 하나 이상의 햅틱 신호를 소스 내에 저장하는 것을 더 포함하며, 상기 하나 이상의 햅틱 신호는 소스의 컨테이너 내에서 입력과 조합되는 컴퓨터 판독가능 매체.
  11. 제1항에 있어서, 상기 하나 이상의 햅틱 신호를 저장하는 것은 하나 이상의 햅틱 신호를 별도의 파일 또는 스트림 내에 저장하는 것을 더 포함하는 컴퓨터 판독가능 매체.
  12. 오프라인 햅틱 변환 제어를 위한 컴퓨터 구현 방법으로서,
    소스로부터 입력을 수신하는 단계;
    입력을 하나 이상의 햅틱 신호로 변환하는 단계;
    하나 이상의 햅틱 신호를 인코딩하는 단계; 및
    하나 이상의 햅틱 신호를 저장하는 단계를 포함하고,
    상기 입력을 하나 이상의 햅틱 신호로 변환하는 단계는 입력의 재생 전에 수행되는 컴퓨터 구현 방법.
  13. 제12항에 있어서,
    하나 이상의 햅틱 신호를 추출하는 단계;
    하나 이상의 햅틱 신호를 디코딩하는 단계;
    하나 이상의 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 발생시키는 단계; 및
    하나 이상의 햅틱 효과를 입력과 동기화시키는 단계를 더 포함하는 컴퓨터 구현 방법.
  14. 제12항에 있어서, 상기 입력을 하나 이상의 햅틱 신호로 변환하는 단계는
    소스로부터 입력 신호를 추출하는 단계와,
    입력 신호를 하나 이상의 햅틱 신호로 변환하는 단계를 더 포함하는 컴퓨터 구현 방법.
  15. 제12항에 있어서, 상기 입력을 하나 이상의 햅틱 신호로 변환하는 단계는
    입력 신호의 하나 이상의 부분을 소스로부터 추출하는 단계와,
    입력 신호의 하나 이상의 부분을 하나 이상의 햅틱 신호로 변환하는 단계를 더 포함하는 컴퓨터 구현 방법.
  16. 오프라인 햅틱 변환 제어 시스템이며,
    오프라인 햅틱 변환 모듈을 저장하도록 구성된 메모리; 및
    메모리 상에 저장된 오프라인 햅틱 변환을 실행하도록 구성된 프로세서를 포함하며,
    상기 오프라인 햅틱 변환 모듈은 입력을 소스로부터 수신하도록 구성되고,
    상기 오프라인 햅틱 변환 모듈은 입력을 입력의 재생 전에 하나 이상의 햅틱 신호로 변환하도록 더 구성되고,
    상기 오프라인 햅틱 변환 모듈은 하나 이상의 햅틱 신호를 인코딩하도록 더 구성되고,
    상기 오프라인 햅틱 변환 모듈은 하나 이상의 햅틱 신호를 저장하도록 더 구성되는 오프라인 햅틱 변환 제어 시스템.
  17. 제16항에 있어서,
    상기 오프라인 햅틱 변환 모듈은 하나 이상의 햅틱 신호를 추출하도록 더 구성되고,
    상기 오프라인 햅틱 변환 모듈은 하나 이상의 햅틱 신호를 디코딩하도록 더 구성되고,
    상기 오프라인 햅틱 변환 모듈은 하나 이상의 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 발생시키도록 더 구성되고,
    상기 오프라인 햅틱 변환 모듈은 입력과 하나 이상의 햅틱 효과를 동기화시키도록 더 구성되는 오프라인 햅틱 변환 제어 시스템.
  18. 제16항에 있어서,
    상기 오프라인 햅틱 변환 모듈은 소스로부터 입력 신호를 추출하도록 더 구성되고,
    상기 오프라인 햅틱 변환 모듈은 입력 신호를 하나 이상의 햅틱 신호로 변환하도록 더 구성되는 오프라인 햅틱 변환 제어 시스템.
  19. 제16항에 있어서,
    상기 오프라인 햅틱 변환 모듈은 입력 신호의 하나 이상의 부분을 소스로부터 추출하도록 더 구성되고,
    상기 오프라인 햅틱 변환 모듈은 입력 신호의 하나 이상의 부분을 하나 이상의 햅틱 신호로 변환하도록 더 구성되는 오프라인 햅틱 변환 제어 시스템.
  20. 프로세서에 의해 실행될 때, 프로세서가 햅틱 파일 또는 스트림의 재생을 제어하도록 하는 저장된 명령어를 갖는 컴퓨터 판독가능 매체에 있어서,
    제어는
    하나 이상의 햅틱 신호를 소스 내에 저장된 입력으로부터 추출하는 것;
    하나 이상의 햅틱 신호를 디코딩하는 것;
    하나 이상의 햅틱 신호에 기초하여 하나 이상의 햅틱 효과를 발생시키는 것; 및
    하나 이상의 햅틱 효과를 입력과 동기화시키는 것을 포함하는 컴퓨터 판독가능 매체.
KR20140042566A 2013-04-09 2014-04-09 오프라인 햅틱 변환 시스템 KR20140122210A (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201361810196P 2013-04-09 2013-04-09
US61/810,196 2013-04-09
US201361827341P 2013-05-24 2013-05-24
US61/827,341 2013-05-24
US14/246,817 2014-04-07
US14/246,817 US9997032B2 (en) 2013-04-09 2014-04-07 Offline haptic conversion system

Publications (1)

Publication Number Publication Date
KR20140122210A true KR20140122210A (ko) 2014-10-17

Family

ID=50513683

Family Applications (1)

Application Number Title Priority Date Filing Date
KR20140042566A KR20140122210A (ko) 2013-04-09 2014-04-09 오프라인 햅틱 변환 시스템

Country Status (5)

Country Link
US (2) US9997032B2 (ko)
EP (2) EP2790099A1 (ko)
JP (2) JP6416490B2 (ko)
KR (1) KR20140122210A (ko)
CN (2) CN104102341A (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160128228A (ko) * 2015-04-28 2016-11-07 임머숀 코퍼레이션 햅틱 재생 조절 시스템

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9519346B2 (en) 2013-05-17 2016-12-13 Immersion Corporation Low-frequency effects haptic conversion system
US9514620B2 (en) 2013-09-06 2016-12-06 Immersion Corporation Spatialized haptic feedback based on dynamically scaled values
US10437341B2 (en) 2014-01-16 2019-10-08 Immersion Corporation Systems and methods for user generated content authoring
CN115700434A (zh) 2014-09-02 2023-02-07 苹果公司 用于可变触觉输出的语义框架
EP3037918A1 (en) * 2014-12-23 2016-06-29 Thomson Licensing System and method for localizing haptic effects on a body
US10254838B2 (en) * 2014-12-23 2019-04-09 Immersion Corporation Architecture and communication protocol for haptic output devices
EP3112987A1 (en) * 2015-06-29 2017-01-04 Thomson Licensing Method and schemes for perceptually driven encoding of haptic effects
US9847000B2 (en) 2015-10-29 2017-12-19 Immersion Corporation Ambient triggered notifications for rendering haptic effects
US10152125B2 (en) * 2015-11-20 2018-12-11 Immersion Corporation Haptically enabled flexible devices
DK179657B1 (en) 2016-06-12 2019-03-13 Apple Inc. Devices, methods and graphical user interfaces for providing haptic feedback
DK179823B1 (en) 2016-06-12 2019-07-12 Apple Inc. DEVICES, METHODS, AND GRAPHICAL USER INTERFACES FOR PROVIDING HAPTIC FEEDBACK
EP3293611B1 (en) * 2016-09-06 2019-05-15 Apple Inc. Devices, methods, and graphical user interfaces for haptic mixing
EP3531250B1 (en) * 2016-09-06 2021-02-24 Apple Inc. Devices, methods, and graphical user interfaces for haptic mixing
DK179278B1 (en) 2016-09-06 2018-03-26 Apple Inc Devices, methods and graphical user interfaces for haptic mixing
DK201670720A1 (en) 2016-09-06 2018-03-26 Apple Inc Devices, Methods, and Graphical User Interfaces for Generating Tactile Outputs
US10104471B2 (en) * 2016-11-30 2018-10-16 Google Llc Tactile bass response
DK201770372A1 (en) 2017-05-16 2019-01-08 Apple Inc. TACTILE FEEDBACK FOR LOCKED DEVICE USER INTERFACES
US20190041987A1 (en) * 2017-08-03 2019-02-07 Immersion Corporation Haptic effect encoding and rendering system
US10832537B2 (en) * 2018-04-04 2020-11-10 Cirrus Logic, Inc. Methods and apparatus for outputting a haptic signal to a haptic transducer
US20200012347A1 (en) * 2018-07-09 2020-01-09 Immersion Corporation Systems and Methods for Providing Automatic Haptic Generation for Video Content
US11269415B2 (en) 2018-08-14 2022-03-08 Cirrus Logic, Inc. Haptic output systems
US11991473B2 (en) * 2018-08-30 2024-05-21 Sony Corporation Transmitting apparatus, transmission method, receiving apparatus, and reception method
GB201817495D0 (en) 2018-10-26 2018-12-12 Cirrus Logic Int Semiconductor Ltd A force sensing system and method
CN109982426B (zh) * 2019-03-21 2021-04-13 中国科学院合肥物质科学研究院 一种无人驾驶车辆传感器数据离线同步方法
US11509292B2 (en) 2019-03-29 2022-11-22 Cirrus Logic, Inc. Identifying mechanical impedance of an electromagnetic load using least-mean-squares filter
US10828672B2 (en) 2019-03-29 2020-11-10 Cirrus Logic, Inc. Driver circuitry
US11644370B2 (en) 2019-03-29 2023-05-09 Cirrus Logic, Inc. Force sensing with an electromagnetic load
US10955955B2 (en) 2019-03-29 2021-03-23 Cirrus Logic, Inc. Controller for use in a device comprising force sensors
KR20200133127A (ko) * 2019-05-17 2020-11-26 한국전자기술연구원 실시간 몰입형 콘텐츠 제공 시스템 및 이의 햅틱 효과 전송 방법
US10976825B2 (en) 2019-06-07 2021-04-13 Cirrus Logic, Inc. Methods and apparatuses for controlling operation of a vibrational output system and/or operation of an input sensor system
KR20220024091A (ko) 2019-06-21 2022-03-03 시러스 로직 인터내셔널 세미컨덕터 리미티드 디바이스 상에 복수의 가상 버튼을 구성하기 위한 방법 및 장치
US11408787B2 (en) 2019-10-15 2022-08-09 Cirrus Logic, Inc. Control methods for a force sensor system
US11380175B2 (en) 2019-10-24 2022-07-05 Cirrus Logic, Inc. Reproducibility of haptic waveform
WO2021117758A1 (ja) 2019-12-09 2021-06-17 住友ベークライト株式会社 熱硬化性樹脂組成物、樹脂シートおよび金属ベース基板
US11662821B2 (en) 2020-04-16 2023-05-30 Cirrus Logic, Inc. In-situ monitoring, calibration, and testing of a haptic actuator
US11933822B2 (en) 2021-06-16 2024-03-19 Cirrus Logic Inc. Methods and systems for in-system estimation of actuator parameters
US11765499B2 (en) 2021-06-22 2023-09-19 Cirrus Logic Inc. Methods and systems for managing mixed mode electromechanical actuator drive
US11908310B2 (en) 2021-06-22 2024-02-20 Cirrus Logic Inc. Methods and systems for detecting and managing unexpected spectral content in an amplifier system

Family Cites Families (28)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5684722A (en) 1994-09-21 1997-11-04 Thorner; Craig Apparatus and method for generating a control signal for a tactile sensation generator
JPH11133850A (ja) * 1997-11-04 1999-05-21 Sony Corp 触覚による情報伝達装置
JP3072293B2 (ja) 1999-05-14 2000-07-31 松下電子工業株式会社 半導体装置およびその製造方法
US7623114B2 (en) 2001-10-09 2009-11-24 Immersion Corporation Haptic feedback sensations based on audio output from computer devices
US7765333B2 (en) * 2004-07-15 2010-07-27 Immersion Corporation System and method for ordering haptic effects
CN104063056B (zh) * 2006-04-06 2018-04-20 意美森公司 用于增强的触觉效果的系统和方法
US8000825B2 (en) 2006-04-13 2011-08-16 Immersion Corporation System and method for automatically producing haptic events from a digital audio file
US8378964B2 (en) 2006-04-13 2013-02-19 Immersion Corporation System and method for automatically producing haptic events from a digital audio signal
US7979146B2 (en) 2006-04-13 2011-07-12 Immersion Corporation System and method for automatically producing haptic events from a digital audio signal
KR100835297B1 (ko) * 2007-03-02 2008-06-05 광주과학기술원 촉감 정보 표현을 위한 노드 구조 및 이를 이용한 촉감정보 전송 방법과 시스템
US8621348B2 (en) 2007-05-25 2013-12-31 Immersion Corporation Customizing haptic effects on an end user device
US9019087B2 (en) 2007-10-16 2015-04-28 Immersion Corporation Synchronization of haptic effect data in a media stream
US8902050B2 (en) * 2009-10-29 2014-12-02 Immersion Corporation Systems and methods for haptic augmentation of voice-to-text conversion
US9448626B2 (en) 2011-02-11 2016-09-20 Immersion Corporation Sound to haptic effect conversion system using amplitude value
US8717152B2 (en) 2011-02-11 2014-05-06 Immersion Corporation Sound to haptic effect conversion system using waveform
US9083821B2 (en) 2011-06-03 2015-07-14 Apple Inc. Converting audio to haptic feedback in an electronic device
EP2629178B1 (en) 2012-02-15 2018-01-10 Immersion Corporation High definition haptic effects generation using primitives
US9715276B2 (en) 2012-04-04 2017-07-25 Immersion Corporation Sound to haptic effect conversion system using multiple actuators
US8860563B2 (en) 2012-06-14 2014-10-14 Immersion Corporation Haptic effect conversion system using granular synthesis
US9368005B2 (en) 2012-08-31 2016-06-14 Immersion Corporation Sound to haptic effect conversion system using mapping
US9092059B2 (en) 2012-10-26 2015-07-28 Immersion Corporation Stream-independent sound to haptic effect conversion system
US9128523B2 (en) 2012-12-20 2015-09-08 Amazon Technologies, Inc. Dynamically generating haptic effects from audio data
US8754757B1 (en) 2013-03-05 2014-06-17 Immersion Corporation Automatic fitting of haptic effects
US9443401B2 (en) 2013-09-06 2016-09-13 Immersion Corporation Automatic remote sensing and haptic conversion system
US9898085B2 (en) 2013-09-06 2018-02-20 Immersion Corporation Haptic conversion system using segmenting and combining
US9158379B2 (en) 2013-09-06 2015-10-13 Immersion Corporation Haptic warping system that transforms a haptic signal into a collection of vibrotactile haptic effect patterns
US10599218B2 (en) 2013-09-06 2020-03-24 Immersion Corporation Haptic conversion system using frequency shifting
US9245429B2 (en) 2013-09-06 2016-01-26 Immersion Corporation Haptic warping system

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20160128228A (ko) * 2015-04-28 2016-11-07 임머숀 코퍼레이션 햅틱 재생 조절 시스템

Also Published As

Publication number Publication date
JP2014204445A (ja) 2014-10-27
JP2019022223A (ja) 2019-02-07
EP2790099A1 (en) 2014-10-15
US20180268667A1 (en) 2018-09-20
JP6639602B2 (ja) 2020-02-05
JP6416490B2 (ja) 2018-10-31
EP3495941A1 (en) 2019-06-12
CN104102341A (zh) 2014-10-15
CN110531857A (zh) 2019-12-03
US9997032B2 (en) 2018-06-12
US20140300454A1 (en) 2014-10-09
US10529197B2 (en) 2020-01-07

Similar Documents

Publication Publication Date Title
JP6639602B2 (ja) オフラインハプティック変換システム
US9454881B2 (en) Haptic warping system
US9508236B2 (en) Haptic warping system that transforms a haptic signal into a collection of vibrotactile haptic effect patterns
JP6615307B2 (ja) 動的ハプティック変換システム
KR102204606B1 (ko) 다수의 액츄에이터를 사용하는 사운드-햅틱 효과 변환 시스템
JP6534799B2 (ja) ハプティック信号の多重化および逆多重化
KR102642780B1 (ko) 햅틱 재생 조절 시스템
CN108399003A (zh) 带有选择的触觉元数据的触觉广播
JP7380568B2 (ja) 触覚提示装置の事前駆動
TW202403508A (zh) 編碼/解碼觸覺資料的方法及設備

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E601 Decision to refuse application