KR102176391B1 - 햅틱 데이터 인코딩 및 스트리밍을 위한 방법 및 시스템 - Google Patents

햅틱 데이터 인코딩 및 스트리밍을 위한 방법 및 시스템 Download PDF

Info

Publication number
KR102176391B1
KR102176391B1 KR1020140063058A KR20140063058A KR102176391B1 KR 102176391 B1 KR102176391 B1 KR 102176391B1 KR 1020140063058 A KR1020140063058 A KR 1020140063058A KR 20140063058 A KR20140063058 A KR 20140063058A KR 102176391 B1 KR102176391 B1 KR 102176391B1
Authority
KR
South Korea
Prior art keywords
haptic
data
encoded
haptic data
stream
Prior art date
Application number
KR1020140063058A
Other languages
English (en)
Other versions
KR20140138087A (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 KR20140138087A publication Critical patent/KR20140138087A/ko
Application granted granted Critical
Publication of KR102176391B1 publication Critical patent/KR102176391B1/ko

Links

Images

Classifications

    • 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/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • H04N21/6379Control signals issued by the client directed to the server or network components directed to server directed to encoder, e.g. for requesting a lower encoding rate
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/20Input arrangements for video game devices
    • A63F13/21Input arrangements for video game devices characterised by their sensors, purposes or types
    • A63F13/215Input arrangements for video game devices characterised by their sensors, purposes or types comprising means for detecting acoustic signals, e.g. using a microphone
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F13/00Video games, i.e. games using an electronically generated display having two or more dimensions
    • A63F13/25Output arrangements for video game devices
    • A63F13/28Output arrangements for video game devices responding to control signals received from the game device for affecting ambient conditions, e.g. for vibrating players' seats, activating scent dispensers or affecting temperature or light
    • A63F13/285Generating tactile feedback signals via the game input device, e.g. force feedback
    • 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
    • G08SIGNALLING
    • G08BSIGNALLING OR CALLING SYSTEMS; ORDER TELEGRAPHS; ALARM SYSTEMS
    • G08B6/00Tactile signalling systems, e.g. personal calling systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/70Media network packetisation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/44Decoders specially adapted therefor, e.g. video decoders which are asymmetric with respect to the encoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N19/00Methods or arrangements for coding, decoding, compressing or decompressing digital video signals
    • H04N19/46Embedding additional information in the video signal during the compression process
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/233Processing of audio elementary streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/234Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs
    • H04N21/2343Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements
    • H04N21/234336Processing of video elementary streams, e.g. splicing of video streams or manipulating encoded video stream scene graphs involving reformatting operations of video signals for distribution or compliance with end-user requests or end-user device requirements by media transcoding, e.g. video is transformed into a slideshow of still pictures or audio is converted into text
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/23Processing of content or additional data; Elementary server operations; Server middleware
    • H04N21/236Assembling of a multiplex stream, e.g. transport stream, by combining a video stream with other content or additional data, e.g. inserting a URL [Uniform Resource Locator] into a video stream, multiplexing software data into a video stream; Remultiplexing of multiplex streams; Insertion of stuffing bits into the multiplex stream, e.g. to obtain a constant bit-rate; Assembling of a packetised elementary stream
    • H04N21/23614Multiplexing of additional data and video streams
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4382Demodulation or channel decoding, e.g. QPSK demodulation
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/438Interfacing the downstream path of the transmission network originating from a server, e.g. retrieving encoded video stream packets from an IP network
    • H04N21/4385Multiplex stream processing, e.g. multiplex stream decrypting
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/4508Management of client data or end-user data
    • H04N21/4516Management of client data or end-user data involving client characteristics, e.g. Set-Top-Box type, software version or amount of memory available
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/633Control signals issued by server directed to the network components or client
    • H04N21/6332Control signals issued by server directed to the network components or client directed to client
    • H04N21/6336Control signals issued by server directed to the network components or client directed to client directed to decoder
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • H04N21/6582Data stored in the client, e.g. viewing habits, hardware capabilities, credit card number
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8106Monomedia components thereof involving special audio data, e.g. different tracks for different languages
    • H04N21/8113Monomedia components thereof involving special audio data, e.g. different tracks for different languages comprising music, e.g. song in MP3 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8126Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts
    • H04N21/8133Monomedia components thereof involving additional data, e.g. news, sports, stocks, weather forecasts specifically related to the content, e.g. biography of the actors in a movie, detailed information about an article seen in a video program
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/816Monomedia components thereof involving special video data, e.g 3D video
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/85Assembly of content; Generation of multimedia applications
    • H04N21/854Content authoring
    • H04N21/85406Content authoring involving a specific file format, e.g. MP4 format

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • General Health & Medical Sciences (AREA)
  • Databases & Information Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Information Transfer Between Computers (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Details Of Audible-Bandwidth Transducers (AREA)

Abstract

본 방법은 오디오 데이터 및/또는 비디오 데이터를 포함하는 디지털 콘텐츠 데이터를 수신하는 단계, 수신된 디지털 콘텐츠 데이터의 적어도 일부를 이용하여 햅틱 데이터를 생성하는 단계, 통신 네트워크를 통한 효과적인 전송을 위해 햅틱 데이터를 인코딩하는 단계, 수신된 디지털 콘텐츠 데이터를 이용하여 인코딩된 햅틱 데이터를 멀티플렉싱하는 단계, 멀티플렉싱된 데이터 스트림의 메타데이터에 인코딩된 햅틱 데이터를 디코딩하기 위한 정보를 내장하는 단계, 및 통신 네트워크를 통해 멀티플렉싱된 데이터 스트림을 전송하는 단계를 포함한다. 본 방법은 또한 햅틱 데이터를 분석하여 햅틱 데이터의 적어도 하나의 특성을 결정하는 단계를 포함할 수 있으며, 햅틱 데이터를 인코딩하는 단계는 결정된 특성에 기초하여, 미리 정의된 기준에 부합하는 햅틱 데이터를 인코딩하는 단계를 포함할 수 있다.

Description

햅틱 데이터 인코딩 및 스트리밍을 위한 방법 및 시스템{METHOD AND SYSTEM FOR HAPTIC DATA ENCODING AND STREAMING}
관련 출원에 대한 상호 참조
본 출원은 2013년 5월 24일자로 출원되었으며 "햅틱 미디어 인코딩의 시스템 및 방법(System and Method of Haptic Media Encoding)"이라는 명칭의 미국 가특허출원 제61/827,341호, 2013년 9월 6일자로 출원되었으며 "햅틱 콘텐츠 생성, 분배 및 재생 솔루션(Haptic Content Creation, Distribution and Playback Solution)"이라는 명칭의 미국 가특허출원 제61/874,920호, 및 2013년 11월 21일자로 출원되었으며 "햅틱 데이터 인코딩 및 스트리밍을 위한 방법 및 시스템(Method and System for Haptic Data Encoding and Streaming)"이라는 명칭의 미국 가특허출원 제61/907,318호에 대한 우선권의 이익을 주장하며, 그 전체 내용은 본 명세서에서 전체에 참조로서 결합된다.
본 발명은 햅틱 스트림을 네트워크를 통해 저장 및/또는 전송하기 위한 디지털 콘텐츠의 일부로서 인코딩하기 위한 시스템 및 방법에 관한 것이다.
다양한 디지털 콘텐츠 어플리케이션의 사용자의 경험을 향상시키기 위해 햅틱 효과의 이용이 증가함에 따라, 네트워크를 통해 다른 디지털 콘텐츠(예를 들면, 멀티미디어 데이터)와 함께 햅틱 데이터를 효과적으로 저장 및/또는 전송하는 것이 바람직하다. 햅틱 데이터 스트림은 통상적으로 본래의 펄스 코드 변조("PCM") 데이터 포맷으로 표현된다. 네트워크(유선 또는 무선)를 통해 초당 8000개의 샘플을 8비트로 샘플링한 햅틱 데이터를 스트리밍하기 위해, 초당 64kbits(8KB) 또는 초과 8KBps는 대역폭에 대해 전송되어야 한다. 그러나, 네트워크를 통해 불필요한 데이터 또는 제로를 스트리밍함으로써 낭비되는 시간 및 대역폭일 수 있으며, 콘텐츠 배급자 및 최종 유저 양측에게도 이상적이지 않은, 스트림의 침묵 기간, 즉 어떠한 햅틱 데이터도 스트리밍되지 않는 기간이 있을 수 있다. 햅틱 데이터 스트림을 저장하는 것도 동일한 도전에 직면해 있다.
디지털 콘텐츠 스트리밍에 관련하여, 적응적 비트 레이트 스트리밍은 디지털 네트워크를 통해 다량의 데이터를 스트리밍 또는 전송할 때 오디오/비디오 신호의 품질을 가변하기 위한 공통된 실행이다. 이것은 오디오/비디오 신호의 매끄러운 스트리밍 또는 재생이 네트워크 속도 및/또는 정체를 가변함으로써 여전히 실현할 수 있도록 행해진다. 예를 들면, 만일 비디오가 매우 높은 품질로 스트리밍되고, 스트리밍되는 네트워크가 심한 네트워크 정체를 겪거나, 다운로드 속도가 갑작스럽게 느려지게 되는 경우, 스트림 서버는 여전히 데이터를 전송할 수 있겠지만, 네트워크 대역폭을 유지하기 위해 더 낮은 품질의 데이터를 전송할 것이다. 정체가 완화되고 네트워크 속도가 증가하게 되면, 전송되는 데이터는 네트워크 대역폭이 보다 자유롭게 활용할 수 있는 만큼 더 높은 품질이 될 것이다. 이는 전송될 데이터량이 훨씬 적게 되도록 다수의 비트 레이트로 데이터를 인코딩함으로써 행해질 수 있다.
햅틱 신호들은 신호가 단순히 파형일 경우에 오디오 신호로서 해석될 수 있다. 그러나, 간단하게 햅틱 신호를 오디오 신호와 같이 처리하고 햅틱 신호를 다수의 비트 레이트로 트랜스코딩하는 것은 다양한 네트워크 속도에 대해 품질을 맞추는데 있어서 충분한 여지를 제공하지 못할 수 있다. 고품질의 햅틱 신호는 오디오 신호에 대해 매우 낮은 샘플 레이트이며 낮은 품질의 신호라고 고려되는, 8kHz의 샘플 레이트를 갖는 것으로 고려될 수 있다. 햅틱 신호의 품질을 단순히 저하시킴으로써, 완벽하게 다른 유저 경험이 도입될 수 있고, 동일한 스트림의 비트를 단지 임의적으로 제거함으로써 품질을 저하하는 것은 의도되지 않은 텍스쳐링을 초래할 수 있으며 신호의 명료성을 없앨 수 있다.
햅틱 데이터가 네트워크를 통해 보다 효율적으로 저장 및/또는 전송되게 하는 햅틱 데이터 인코딩 스킴을 제공하는 것이 바람직하다.
본 발명의 일 양상에 따르면, 오디오 데이터 및/또는 비디오 데이터를 포함하는 디지털 콘텐츠 데이터를 수신하는 단계; 수신된 디지털 콘텐츠 데이터의 적어도 일부를 이용하여 햅틱 데이터를 생성하는 단계; 통신 네트워크를 통한 효과적인 전송을 위해 햅틱 데이터를 인코딩하는 단계; 수신된 디지털 콘텐츠 데이터를 이용하여 인코딩된 햅틱 데이터를 멀티플렉싱하는 단계; 멀티플렉싱된 데이터 스트림의 메타데이터에 인코딩된 햅틱 데이터를 디코딩하기 위한 정보를 내장하는 단계; 및 통신 네트워크를 통해 멀티플렉싱된 데이터 스트림을 전송하는 단계를 포함하는 방법을 제공한다.
일 실시예에서, 본 발명은 햅틱 데이터를 이용하여 유저 디지털 콘텐츠 경험을 풍부하게 하기 위한 컴퓨터 실행의 방법일 수 있으며 컴퓨터 프로그램 모듈로 프로그램된 프로세서를 갖는 컴퓨팅 디바이스상에서 수행될 수 있다. 컴퓨터 실행의 방법은 통신 네트워크를 통해 다른 디지털 콘텐츠 데이터와 함께 햅틱 데이터를 전송하여 최종 유저가 네트워크에 결합된 최종 유저 디바이스상에 생성된 햅틱 효과를 경험할 수 있게 할 수 있다.
일 실시예에서, 본 방법은 햅틱 데이터를 분석하여 햅틱 데이터의 적어도 하나의 특성을 결정하는 단계를 포함하고, 햅틱 데이터를 인코딩하는 단계는 결정된 특성에 기초하여, 미리 정의된 기준에 부합하는 햅틱 데이터를 인코딩하는 단계를 포함한다.
일 실시예에서, 미리 정의된 기준은 비트 수가 가장 적은 햅틱 비트 스트림으로 인코딩된 출력을 포함한다.
일 실시예에서, 본 방법은 최종 유저 디바이스로부터 최종 유저 디바이스의 엔드포인트 구성을 수신하는 단계를 포함하고, 미리 정의된 기준은 최종 유저 디바이스의 수신된 엔트포인트 구성에 대응하는 햅틱 데이터의 주파수 범위를 유지하는 것을 포함한다.
일 실시예에서, 햅틱 데이터를 인코딩하는 단계는 결정된 특성에 기초하여 미리 결정된 인코더들의 리스트로부터 하나의 인코더를 선택하고 선택된 인코더를 적용하여 햅틱 데이터를 변환한다.
일 실시예에서, 미리 결정된 인코더들의 리스트는 향상된 오디오 코딩 인코더 및/또는 무손실 오디오 인코더를 포함한다.
일 실시예에서, 햅틱 데이터의 특성은 햅틱 데이터, 햅틱 데이터의 의도된 이용 케이스, 햅틱 데이터의 크기, 햅틱 데이터의 주파수, 및 햅틱 데이터의 침묵 길이에 기초하여 햅틱 효과를 생성하도록 사용되는 한 종류 이상의 햅틱 출력 디바이스를 포함한다.
일 실시예에서, 햅틱 출력 디바이스의 종류는 이심 회전체 액츄에이터, 선형 공진 액츄에이터 및 압전 액츄에이터로 구성된 그룹 중 하나 이상을 포함한다.
일 실시예에서, 햅틱 데이터의 의도된 이용 케이스는 음악, 영화 및 게임으로 구성된 그룹으로부터 선택된다.
일 실시예에서, 햅틱 데이터를 인코딩하는 단계는, 햅틱 데이터에 미리 결정된 인코더들의 리스트 중 각각의 것을 적용하여 인코딩된 햅틱 데이터 스트림의 대응하는 리스트를 생성하는 단계, 및 미리 결정된 기준을 이용하여, 인코딩된 햅틱 데이터 스트림의 리스트로부터 인코딩된 햅틱 데이터 스트림을 선택하는 단계를 포함한다.
일 실시예에서, 햅틱 데이터를 인코딩하는 단계는, 밀도 인자의 선정된 리스트에 대한 햅틱 데이터를 인코딩하여 복수의 인코딩된 햅틱 데이터 스트림을 생성하는 단계를 포함하고, 각각의 인코딩된 햅틱 데이터 스트림은 밀도 인자의 선정된 리스트의 하나의 밀도 인자에 대응하고, 상기 방법은, 통신 네트워크를 통해 최종 유저 디바이스로부터 네트워크 대역폭 정보를 수신하는 단계, 및 수신된 디지털 콘텐츠 데이터를 이용하여 멀티플렉싱하기 위해 통신 네트워크 대역폭의 조건과 매칭되는 대응하는 밀도 인자에 기초하여 인코딩된 햅틱 데이터 스트림들 중 하나를 선택하는 단계를 포함한다.
일 실시예에서, 복수의 인코딩된 데이터 스트림 중 제1 인코딩된 데이터 스트림은 밀도 인자의 선정된 리스트의 제1 밀도 인자에 대응하고, 복수의 인코딩된 데이터 스트림 중 제2 인코딩된 데이터 스트림은 밀도 인자의 선정된 리스트의 제2 밀도 인자에 대응하며, 제2 인코딩된 데이터 스트림은 제1 데이터 스트림 이상의 햅틱 데이터를 포함하고 제2 밀도 인자는 제1 밀도 인자보다 크다.
일 실시예에서, 본 방법은 네트워크 대역폭 정보의 변화를 검출하는 단계, 통신 네트워크 대역폭의 조건에 매칭되는 대응하는 밀도 인자에 기초하여 인코딩된 햅틱 데이터 스트림들 중 상이한 것을 선택하는 단계, 및 인코딩된 데이터 스트림들 중 선택된 상이한 것을 최종 유저 디바이스에 전송하는 단계를 포함한다.
본 발명의 일 양상에 따르면, 오디오 데이터 및/또는 비디오 데이터를 포함하는 디지털 콘텐츠 데이터를 수신하고, 수신된 디지털 콘텐츠 데이터의 적어도 일부를 이용하여 햅틱 데이터를 생성하고, 통신 네트워크를 통한 효과적인 전송을 위해 햅틱 데이터를 인코딩하고, 수신된 디지털 콘텐츠 데이터를 이용하여 인코딩된 햅틱 데이터를 멀티플렉싱하고, 멀티플렉싱된 데이터 스트림의 메타데이터에 인코딩된 햅틱 데이터를 디코딩하기 위한 정보를 내장하며, 통신 네트워크를 통해 멀티플렉싱된 데이터 스트림을 전송하도록 구성된 프로세서를 포함하는 시스템을 제공한다. 이 시스템은 통신 네트워크를 통해 멀티플렉싱된 인코딩된 햅틱 데이터와 디지털 콘택츠 데이터를 수신하도록 구성된 유저 디바이스를 포함한다. 유저 디바이스는 햅틱 데이터에 기초하여 햅틱 효과를 출력하도록 구성된 햅틱 출력 디바이스를 포함한다.
일 실시예에서, 프로세서는 또한 햅틱 데이터를 분석하여 햅틱 데이터의 적어도 하나의 특성을 결정하고, 결정된 특성에 기초하여, 미리 정의된 기준에 부합하는 햅틱 데이터를 인코딩하도록 구성된다.
일 실시예에서, 프로세서는 유저 디바이스로부터 유저 디바이스의 엔드포인트 구성을 수신하도록 구성되고, 미리 정의된 기준은 최종 유저 디바이스의 수신된 엔트포인트 구성에 대응하는 햅틱 데이터의 주파수 범위를 유지하는 것을 포함한다.
일 실시예에서, 프로세서는 결정된 특성에 기초하여 미리 결정된 인코더들의 리스트로부터 하나의 인코더를 선택하고 선택된 인코더를 적용하여 햅틱 데이터를 변환하도록 구성된다.
일 실시예에서, 프로세서는 햅틱 데이터에 미리 결정된 인코더들의 리스트 중 각각의 것을 적용하여 인코딩된 햅틱 데이터 스트림의 대응하는 리스트를 생성하고, 미리 결정된 기준을 이용하여, 인코딩된 햅틱 데이터 스트림의 리스트로부터 인코딩된 햅틱 데이터 스트림을 선택하도록 구성된다.
일 실시예에서, 프로세서는 밀도 인자의 선정된 리스트에 대한 햅틱 데이터를 인코딩하여 복수의 인코딩된 햅틱 데이터 스트림 -각각의 인코딩된 햅틱 데이터 스트림은 밀도 인자의 선정된 리스트의 하나의 밀도 인자에 대응함- 을 생성하고, 통신 네트워크를 통해 최종 유저 디바이스로부터 네트워크 대역폭 정보를 수신하며, 수신된 디지털 콘텐츠 데이터를 이용하여 멀티플렉싱하기 위해 통신 네트워크 대역폭의 조건과 매칭되는 대응하는 밀도 인자에 기초하여 인코딩된 햅틱 데이터 스트림들 중 하나를 선택하도록 구성된다.
일 실시예에서, 프로세서는 네트워크 대역폭 정보의 변화를 검출하고, 통신 네트워크 대역폭의 조건에 매칭되는 대응하는 밀도 인자에 기초하여 인코딩된 햅틱 데이터 스트림들 중 상이한 것을 선택하며, 인코딩된 데이터 스트림들 중 선택된 상이한 것을 최종 유저 디바이스에 전송하도록 구성된다.
이들 및 다른 특징, 본 기술의 특성은 물론 구조의 관련 소자들의 동작 및 기능에 대한 방법과 제조 부품들의 조합은 첨부된 도면을 참조하여 후속하는 상세한 설명과 첨부된 청구항을 고려할시 보다 명백해질 것이며, 이들 모두는 본 명세서의 일부를 구성하고, 동일 참조 부호들은 다양한 도면에서 대응하는 부분을 지칭한다. 그러나, 도면은 단지 삽화 및 설명을 위한 것이며 본 발명의 범위를 제한하려는 의도는 아니다. 상세한 설명 및 청구항에서 사용되는 바와 같이, 단수형 "하나(a)", "하나(an)" 및 "그것(the)"은 문맥상 명확하게 상반되는 것을 지칭하지 않는 한 복수의 것을 포함한다.
도 1은 로컬 또는 원격으로, 다른 멀티미디어 데이터에 의해 플레이되는 햅틱 데이터를 생성하고 인코딩하는 방법의 일 실시예를 도시한다;
도 2는 다른 인코딩된 멀티미디어 데이터와 동기하여 햅틱 데이터를 디코딩 및 디스플레이하기 위한 방법의 일 실시예를 도시한다;
도 3은 통신 네트워크를 통해 멀티미디어 데이터와 함께 인코딩된 햅틱 데이터를 전송하기 위한 시스템의 일 실시예를 도시한다;
도 4는 햅틱 데이터의 생성에 사용된 상이한 프로파일을 저장하는 데이터 구조의 일 실시예를 도시한다;
도 5는 엔드포인트 및 이용 케이스에 기초하여 햅틱 데이터가 생성되는 사용자 선택가능 방법의 일 실시예를 도시한다;
도 6은 엔드포인트 및 이용 케이스에 기초하여 햅틱 데이터가 생성되는 자동 검출 방법의 일 실시예를 도시한다;
도 7은 네트워크를 통한 전송을 위해 햅틱 데이터 스트림을 인코딩하는 방법의 일 실시예를 도시한다;
도 8a 내지 도 8c는 밀도 인자가 상이한 햅틱 신호의 실시예들을 도시한다;
도 9는 적응 햅틱 밀도 트랜스코딩을 위한 방법의 일 실시예를 도시한다;
도 10은 시간에 걸쳐서 활용가능한 네트워크 대역폭에 관련하여 적응 밀도 트랜스코딩의 일 실시예를 도시한다;
도 11은 MP4 파일내의 오디오 데이터에 대한 핸들러 구조의 일 실시예를 도시한다;
도 12는 MP4 파일내의 비디오 데이터에 대한 핸들러 구조의 일 실시예를 도시한다;
도 13은 MP4 파일내의 햅틱 데이터에 대한 핸들러 구조의 일 실시예를 도시한다;
도 14는 MP4 파일의 오디오, 비디오 및 햅틱 데이터 헤더의 일 실시예를 도시한다;
도 15는 MP4 파일의 햅틱 데이터에 대한 유효한 설정의 일 실시예를 도시한다;
도 16은 MP4 파일의 햅틱 데이터에 대한 유효하지 않은 설정의 일 실시예를 도시한다.
본 발명의 실시예는, 디지털 콘텐츠를 소비할 때 유저 경험을 풍부하게 하기 위한 디지털 콘텐츠의 일부로서의 햅틱 데이터를 생성하고, 전송 및/또는 저장하기 위한 시스템 및 방법에 관한 것이다. 본원에서 사용된 바와 같이, "디지털 콘텐츠"는 비일시적 스토리지 미디어에서 전송되고 저장될 수 있는 정보를 지칭하며, 예를 들어 오디오 및/또는 비디오 데이터를 포함할 수 있다. 이와 같이, 디지털 콘텐츠는, 다양한 파일 포맷을 사용하여 인코딩된 정보 및/또는 비일시적 스토리지 미디어에서 전송되고 저장될 수 있는 다른 비인코딩된(un-encoded) 콘텐츠를 포함한다.
일 실시예에서, 멀티미디어 데이터의 재생에 햅틱 효과를 추가하는 것이 바람직할 수 있다. 도 1은, 본 발명의 일 실시예에 따른, 로컬 또는 원격으로, 궁극적으로는 다른 디지털 콘텐츠에 의해 플레이되는 햅틱 데이터를 생성하고 인코딩하는 방법(100)을 도시한다. 도시된 바와 같이, 상기 방법(100)은, 소스 멀티미디어 프로세싱 스테이지(110), 오디오-햅틱 변환 스테이지(120), 햅틱 인코딩 스테이지(130), 멀티플렉싱 스테이지(140), 멀티미디어 인터리빙 스테이지(150)를 포함한다.
일 실시예에서, 햅틱 데이터는 멀티미디어 데이터 스트림의 오디오 데이터로부터 생성될 수 있다. 오디오 데이터는, 소스 멀티미디어 프로세싱 스테이지(110) 중에 추출되어, 이하에 보다 상세하게 설명되는 바와 같이, 오디오-햅틱 변환 스테이지(120) 중에 본래의 햅틱 데이터 스트림으로 변환될 수 있다. 본래의 햅틱 데이터는 햅틱 인코딩 스테이지(130) 중에 추가로 인코딩될 수 있어, 햅틱 데이터의 전송 또는 저장을 위해 보다 적은 네트워크 대역폭 또는 보다 적은 스토리지 공간을 필요로 하게 된다. 멀티플렉싱 스테이지(140) 중에, 인코딩된 햅틱 데이터가 소스 멀티미디어 데이터 스트림과 합쳐져서, 인코딩된 햅틱 데이터 및 소스 멀티미디어 데이터가 멀티미디어 인터리빙 스테이지(150) 중에 인터리빙될 수 있다.
일 실시예에서, 스테이지(110) 중에 멀티미디어 데이터로부터 추출된 오디오 데이터는 단지, 예를 들어 PCM 포맷에서의 비트 스트림 내의 본래의 데이터일 수 있다. 일 실시예에서, 오디오 데이터는, AAC(Advanced Audio Coding) 인코더를 사용하여 인코딩되는 것과 같이, 이미 인코딩되어 있을 수 있다. 후자의 경우, 인코딩된 오디오 데이터는, 스테이지(110)의 최종 단계로서 또는 스테이지(120) 중의 제1 단계로서, 우선 디코딩될 수 있다. 일 실시예에서, 스테이지(130) 동안에 사용되는 햅틱 데이터는 멀티미디어 데이터(110)에 포함된 오디오 데이터로부터 생성되지 않고, 대신에, 도 1에 도시된 바와 같이, 본래의 햅틱 데이터 스토리지(125) 등의 다른 소스로부터 얻어질 수 있다. 일 실시예에서, 오디오 데이터 대신에 또는 오디오 데이터에 추가하여 비디오 데이터가 상술된 방법(100)에서 햅틱 데이터를 생성하는데 사용될 수 있다. 예를 들어, 소정의 비디오 데이터 전환(transition), 예를 들어 밝아지는 장면(lightening scene)은, 유저에게 제공되어야 하는 햅틱 효과를 위한 트리거로서 사용되어, 유저는 밝아지는 장면과 연관되어 천둥이 울리는 감각을 경험할 수 있다.
도 2는, 본 발명의 일 실시예에 따른, 다른 인코딩된 멀티미디어 데이터와 동기하여 햅틱 데이터를 디코딩하고 표시하는 방법(200)을 도시한다. 일 실시예에서, 디멀티플렉서(de-multiplexer)(204)는 우선, 인터리빙된 멀티미디어 데이터 스트림(202)을, 인터리빙된 멀티미디어 데이터(202)가 플레이되는 최종 디바이스에서 오디오 데이터 스트림(206), 비디오 데이터 스트림(208) 및 햅틱 데이터 스트림(210)을 포함하는 다수의 데이터 스트림으로 분리할 수 있다. 일 실시예에서, 디코더/싱크로나이저(synchronizer)(212)는 하나 이상의 오디오 디코더, 하나 이상의 비디오 디코더 및 하나 이상의 햅틱 디코더(도시되지 않음)를 포함할 수 있다. 디코딩된 오디오 데이터 및 비디오 데이터는 재생을 위해 오디오/비디오 렌더러(renderer)(214)(예를 들어, 스피커 및 표시 화면)로 보내질 수 있다. 디코딩된 햅틱 데이터 스트림(216)은, 오디오 및 비디오 데이터와 동기하여 표시하기 위해, 디바이스(H1, H2, H3, H4 및/또는 H5) 등의 하나 이상의 햅틱 출력 디바이스로 보내질 수 있다.
일 실시예에서, 햅틱 출력 디바이스(H1...H5)는 적어도 하나의 엔드포인트 프로세서(218), 진동 진폭 변조기(220), 진동 렌더러(224) 및 적어도 하나의 액츄에이터(226)로 구성될 수 있다. 다른 신호 프로세싱 디바이스(222)가 엔드포인트 프로세서(들)에 의해 출력되는 신호(들)을 변경하는데 사용될 수도 있다. 도시된 실시예는 임의의 방식으로 한정되는 것으로 의도되지 않는다.
본원에서 지칭된 바와 같이, "햅틱 출력 디바이스"는 액츄에이터, 예를 들어 편심 질량이 모터에 의해 전송되는 "ERM(Eccentric Rotating Mass)", 스프링에 부착된 질량이 전후로 구동되는 "LRA(Linear Resonant Actuator)", 또는 압전 재료, 전기 활성 중합체 또는 형상 기억 합금 등의 "스마트 재료(smart material)" 등의 전자기 액츄에이터와, 매크로 합성 섬유 액츄에이터와, 정전 액츄에이터와, 전기 촉각 액츄에이터와, 및/또는 햅틱(예를 들어, 진동 촉각) 피드백 등의 물리적 피드백을 제공하는 다른 종류의 액츄에이터를 포함할 수 있다. 햅틱 출력 디바이스는, 정전 마찰("ESF"), 초음파 표면 마찰("USF")을 사용하는 디바이스, 또는 초음파 햅틱 변환기를 사용하여 음향 방사 압력을 유도하는 디바이스, 또는 햅틱 기판 및 가요성 또는 변형가능한 표면을 사용하는 디바이스, 또는 에어 젯을 사용하는 에어의 퍼프(puff) 등의 투사되는 햅틱 출력을 제공하는 디바이스 등의, 비기계적 또는 비진동 디바이스를 포함할 수 있다. 이러한 햅틱 출력 디바이스의 실시는 당업자에게 공지되어 있으며, 따라서 본원에 더 상세하게 설명하지 않는다.
도 3은, 인코딩된 햅틱 데이터를 통신 네트워크 상에서 멀티미디어 데이터와 함께 전송시키는 시스템(300)의 일 실시예를 도시한다. 도시된 바와 같이, 시스템(300)은 프로세서(310)와, 원격 스토리지(330)와, 최종 유저 디바이스(334, 336, 338)와, 프로세서(310), 원격 스토리지(330) 및 최종 유저 디바이스(334, 336, 338)를 연결하는 하나 이상의 통신 네트워크(들)(332)를 포함한다. 일 실시예에서, 프로세서(310)는 원격 스토리지(330)에 추가하여 또는 원격 스토리지(330) 대신에 자체 전자 스토리지(328)를 포함할 수 있다. 일 실시예에서, 원격 스토리지(330)는 프로세서(329) 및 비일시적 스토리지 미디어(331)를 포함할 수도 있다. 프로세서(329)는, 도 4에 대해 이하에 보다 상세하게 설명되는 바와 같이, 디지털 콘텐츠 데이터베이스 및 최종 유저 디바이스(334, 336, 338)의 프로파일 정보를 유지할 수 있다.
프로세서(310)는 시스템(300)의 동작 및 기능을 관리하거나 제어하기 위한 일반용 또는 특수 목적의 프로세서 또는 마이크로컨트롤러일 수 있다. 일 실시예에서, 프로세서(310)는, 예를 들어 최종 유저 디바이스(334)에 내장된 "ASIC(application-specific integrated circuit)"로서 특별히 설계되고, 최종 유저 디바이스(334) 상에서 플레이되는 영화의 사용자의 즐거움을 향상시키기 위해 최종 유저 디바이스(334) 내의 햅틱 출력 디바이스를 통해 햅틱 효과를 제공하도록 구성될 수 있다. 일 실시예에서, 프로세서(310)는, 사전정의된 인자에 기초하여, 다른 원격 최종 유저 디바이스(336)로부터 통신 네트워크(들)(332)를 거쳐 수신된 피드백에 기초하여 어떤 햅틱 효과가 생성되어야 하는 지를 결정하고, 그 후 예를 들어, 최종 유저 디바이스(336) 상에서 햅틱 출력 디바이스를 구동시키는데 사용될 수 있는 스트리밍 명령을 제공하도록 구성될 수도 있다. 네트워크(332)는 유선 또는 무선 연결부를 포함할 수 있다. 본 발명의 몇몇의 양태에서, 네트워크는, 예를 들어 인터넷, 인트라넷, PAN(Personal Area Network), LAN(Local Area Network), WAN(Wide Area Network), SAN(Storage Area Network), MAN(Metropolitan Area Network), 무선 네트워크, 셀룰러 통신 네트워크, 공중 교환 전화 네트워크(Public Switched Telephone Network), 및/또는 기타 네트워크 중 임의의 하나 이상을 포함할 수 있다.
예를 들어, 통신 네트워크(332)는, (웹사이트, 비디오, 음악 등의) 콘텐츠를 분배하여 전세계적으로 이러한 자산(asset) 또는 콘텐츠에 보다 신속하게 액세스할 수 있도록 하는데 통상적으로 사용되는 CDN(Content Distribution Network)일 수 있다. CDN은 전세계에 걸쳐 기본적으로 자주 액세스되는 콘텐츠를 미러링하는 에지 서버(Edge server)를 사용하고, 또한 에지 서버 상에서 콘텐츠의 수명주기를 자동적으로 관리한다. 실제의 자산 또는 콘텐츠는 통상적으로 보다 영구적인 오리진 서버(origin server) 상에 저장되고 갱신되며, CDN은, 필요에 따라, 자산 및 콘텐츠에 자동적으로 액세스하고, 이들을 적합한 에지 서버에 미러링한다.
일 실시예에서, 프로세서(310)는, 시스템(300) 내에서 임의의 기능을 행하도록 각각 구성된, 복수의 프로세서를 포함할 수 있다. 일 실시예에서, 프로세서(310)는 하나 이상의 컴퓨터 프로그램 모듈을 실행하도록 구성될 수 있다. 하나 이상의 컴퓨터 프로그램 모듈은 적어도 하나의 멀티미디어 모듈(312), 하나 이상의 햅틱 인코딩 모듈(314), 유저 인터페이스 모듈(324), 통신 모듈(326)을 포함할 수 있다. 일 실시예에서, 햅틱 인코딩 모듈(314)은 오디오-햅틱 변환 모듈(316), 햅틱 압축 모듈(318), 햅틱 밀도 트랜스코딩 모듈(320) 및 멀티미디어 어셈블리 모듈(322)을 포함할 수 있다. 예를 들어, 멀티미디어 어셈블리 모듈(322)은, 도 3에 도시된 바와 같이, MP4 컨테이너 포맷에 따른 오디오, 비디오 및 햅틱 데이터를 포함하는 멀티미디어 데이터 스트림을 어셈블리하도록 구성될 수 있다. 일 실시예에서, 로컬 스토리지(328) 및 원격 스토리지(330)는, 이하에 보다 상세하게 설명되는 바와 같이, 압축 이전 및 압축 이후의 상이한 햅틱 이용 케이스에 대한 다양한 프로파일과, 생성된 햅틱 데이터 스트림을 저장하는데 사용될 수 있다.
모듈(312 내지 326)은 단일 프로세싱 유닛(310) 내에 함께 위치되는 것으로 도 3에 도시되어 있지만, 프로세서(310)가 다수의 프로세싱 유닛을 포함하는 실시예에서, 하나 이상의 모듈(312 내지 326)이 다른 모듈로부터 원격으로 위치될 수 있다. 이하에 보다 상세하게 설명되는 상이한 모듈(312 내지 326)에 의해 제공되는 기능성의 설명은 도시의 목적을 위한 것이며, 임의의 모듈(312 내지 326)은 설명된 것보다 많거나 적은 기능성을 제공할 수 있기 때문에 이에 한정되는 것으로 의도되지 않는다. 예를 들어, 하나 이상의 모듈(312 내지 326)이 제거될 수 있고, 그 기능성의 일부 또는 전부가 모듈(312 내지 326) 중 다른 것에 의해 제공될 수 있다. 다른 예로서, 프로세서(310)는, 모듈(312 내지 326) 중 하나에 대해, 이하에 귀속되는 기능성의 일부 또는 전부를 행할 수 있는 하나 이상의 추가 모듈을 실행하도록 구성될 수 있다. 모듈(312 내지 326)의 기능 및 동작은 이하에 보다 상세하게 설명된다.
적응형 오디오- 햅틱 변환
상술된 바와 같이, 햅틱 데이터를 표시 또는 재생하는데 사용될 수 있는 다양한 종류의 햅틱 출력 디바이스가 존재한다. 각각의 종류의 햅틱 출력 디바이스 및 상이한 종류의 햅틱 출력 디바이스에 특별히 맞춰진 오디오-햅틱 알고리즘과, 상이한 오디오-햅틱 알고리즘은 상이한 특성을 갖는 햅틱 데이터 스트림을 야기할 수 있다. 각각의 종류의 햅틱 출력 디바이스에 대해 또한 특정 최종 유저 디바이스에 특별히 맞춰진 특정 오디오-햅틱 변환 알고리즘을 포함하는 햅틱 데이터 생성용의 오디오-햅틱 변환 알고리즘의 리스트를 유지하는 것은, 오디오-햅틱 변환 알고리즘 및 햅틱 출력 디바이스의 개수가 증가하기 때문에 유지하는 것이 어려워질 수 있다.
일 실시예에서, 일반적으로 오디오-햅틱 변환 알고리즘을 포함하는 최종 유저 디바이스에 포함되는 각각의 종류의 햅틱 출력 디바이스는 엔드포인트로서 처리될 수 있고, 햅틱 출력 디바이스에 대한 각각의 알고리즘은 특별한 경험을 제공하는 것을 목적으로 하는 프로파일로서 처리될 수 있다. 본 발명의 실시예는, 햅틱 출력 디바이스의 종류와, 오디오-햅틱 변환 프로파일을 변경하는데 사용될 수 있는 임의의 추가 인자를 시스템이 자동적으로 검출하게 한다. 시스템의 일 실시예에서, 유저는 주어진 이용 케이스 동안에 그/그녀가 작동시키기를 원하는 프로파일을 선택할 수도 있다.
본 발명의 실시예는, 개발자가 각각의 엔드포인트(즉, 햅틱 출력 디바이스)에 대해 모든 이용 가능한 알고리즘을 단지 1번 컴파일하게 하는 것만으로 컴필레이션 시간을 절약할 수 있다. 유저가 상이한 경험을 원할 수 있는 상이한 상황이 있어서, 한 번에 디바이스 상의 하나의 알고리즘이 충분치 않을 수 있다. 오디오-햅틱 자동 변환 알고리즘은, 영화용인 경우, 또한 게임용인 경우 등은 음악용과는 동일하지 않을 수 있다. 최종 유저 디바이스 내의 엔드포인트(들)(즉, 햅틱 출력 디바이스(들))는 통상적으로 고정되지만, 본원에 기술된 실시예는 최종 유저 디바이스가 어플리케이션 포커스, 센서-기반 데이터 및 환경 인자에 기초하여 그 거동을 조정하게 한다.
도 4는 햅틱 데이터를 생성하는데 필요한 상이한 프로파일의 데이터베이스(400)의 일 실시예를 도시한다. 일 실시예에서, 프로파일은 전자 스토리지(328) 내에 저장될 수 있다. 일 실시예에서, 프로파일은 그 이용 케이스, 예를 들어 영화 이용 케이스(410), 음악 이용 케이스(420) 및 게임 이용 케이스(430)에 따라 구성될 수 있다. 영화 이용 케이스(410)에서, 햅틱 효과는 최종 유저가 영화 또는 텔레비전 쇼 또는 광고 등의 임의의 다른 비디오를 보면서 경험하도록 의도된다. 음악 이용 케이스(420)에서, 햅틱 효과는 최종 유저가 음악을 들으면서 경험하도록 의도된다. 유사하게, 게임 이용 케이스(430)에서, 햅틱 효과는 최종 유저가 게임을 하면서 경험하도록 의도된다.
각각의 상이한 이용 케이스에서, 유저는 상이한 햅틱 경험을 원할 수 있기 때문에 이용 케이스에 기초하여 프로파일을 구성하는 것이 유리할 수 있다. 햅틱 효과는 이상적으로는, 영화용으로서와, 그리고 추가적으로 게임용 등에서와 음악용으로는 상이할 수 있다. 각각의 이용 케이스 내에서, 프로파일은 각각의 엔드포인트(endpoint)(즉, 일반적으로 오디오-햅틱 변환 알고리즘을 갖는 최종 유저 디바이스의 햅틱 출력 디바이스)용으로 저장될 수 있다. 예를 들어, 영화 이용 케이스(410)에 대해, 프로파일(412)은 압전 액츄에이터용으로 특정 오디오-햅틱 변환 알고리즘을 갖는 최종 유저 디바이스(334)용으로 저장되고, 프로파일(414)은 ERM 액츄에이터를 갖고 오디오-햅틱 변환 알고리즘에 대응하는 최종 유저 디바이스(336)용으로 저장되고, 프로파일(416)은 LRA를 갖고 오디오-햅틱 변환 알고리즘에 대응하는 최종 유저 디바이스(338)용으로 저장된다. 음악 이용 케이스(420)에 대해, 프로파일(422)은 압전 액츄에이터를 갖는 최종 유저 디바이스(334)용으로 저장되고, 프로파일(424)은 ERM 액츄에이터를 포함하는 최종 유저 디바이스(336)용으로 저장되고, 프로파일(426)은 LRA를 포함하는 최종 유저 디바이스(338)용으로 저장된다. 유사하게, 프로파일(432)은 햅틱 출력 디바이스가 압전 액츄에이터인 게임 이용 케이스(430)용으로 저장되고, 프로파일(434)은 게임 이용 케이스용이며 ERM 액츄에이터용으로 저장되고, 프로파일(436)은 게임 이용 케이스용이며 LRA용으로 저장된다. 이러한 실시예에서, 단일 최종 유저 디바이스는 하나보다 많은 엔드포인트를 포함할 수 있다.
본 발명의 실시예는 각각의 엔드포인트에 대해, 단지 한번, 오프라인 또는 실시간으로 각각의 엔드포인트에 대해 모든 이용 가능한 프로파일 알고리즘을 컴파일함으로써 컴필레이션 시간을 절약할 수 있다. 또한, 본 발명의 실시예는, 단일 디바이스의 엔드포인트(햅틱 출력 디바이스)가 변경되지 않더라도, 엔드포인트가 어플리케이션 포커스, 센서 기반 데이터 및 환경 인자에 기초하여 그의 거동을 조정하도록 한다.
일 실시예에서, 시스템(300)은 햅틱 출력 디바이스 및 추가의 인자의 종류를 자동적으로 검출한다. 예를 들어, 오디오-햅틱 모듈(316)은 통신 네트워크(332)를 거쳐 통신 모듈(326)을 통해 최종 유저 디바이스(334)와 통신할 수 있어서, 오디오-햅틱 변환 프로파일을 변경하는데 이용될 수 있는 최종 유저 디바이스(334)가 갖고 있는 햅틱 출력 디바이스(들)의 종류(들)을 결정한다. 일 실시예에서, 최종 유저 디바이스(336)의 유저는 유저 인터페이스 모듈(324)을 통해 통신 네트워크(332)를 거쳐 햅틱 인코딩 모듈(314)과 통신할 수 있어서, 주어진 이용 케이스 동안 그/그녀가 작동시키기 원하는 프로파일을 선택한다.
도 5는 햅틱 데이터가 엔드포인트와 이용 케이스에 기초하여 생성되는 오디오-햅틱 모듈(316)의 유저 선택 가능한 실시예를 도시한다. 이러한 실시예에서, 도면부호 502에서는 오디오-햅틱 모듈(316)은 모든 활용 가능한 오디오-햅틱 알고리즘을 도 4의 데이터베이스에(400)에 미리 저장한다. 각각의 오디오-햅틱 알고리즘은 유저에게 이해 가능한 방식으로 식별될 수 있다. 이는 오디오-햅틱 설정 어플리케이션/액티비티 또는 개별 어플리케이션/액티비티를 통해 행해질 수 있다.
최종 유저 디바이스에서 플레이되는 디지털 콘텐츠에 햅틱 효과를 추가하는 것이 바람직한 경우, 도면부호 504에서 오디오-햅틱 모듈(316)은 요구되는 정보 또는 유저 입력에 기초하여 이용 케이스를 결정한다. 이러한 실시예에서, 오디오-햅틱 모듈(316)은 포그라운드(foreground) 또는 백그라운드(background)에서 어플리케이션이 동작하는 이용 케이스 결정 단계(504)동안 또한 체크될 수 있어서, 디바이스는 유저 선택 오디오-햅틱 알고리즘을 실행하도록 오디오-햅틱 모듈(316)을 재구성할 수 있다.
도면부호 506에서, 오디오-햅틱 모듈(316)은 요구되는 최종 유저 디바이스의 엔드포인트 구성을 결정한다. 일 실시예에서, 오디오-햅틱 모듈(316)은 유저 인터페이스 모듈(324)을 통해 유저 입력을 취득함으로써 결정을 간단히 행할 수 있다. 일 실시예에서, 오디오-햅틱 모듈(316)은 엔드포인트 구성을 취득하기 위해 전자 스토리지(328)에 등록된 최종 유저 디바이스 데이터베이스를 검색할 수 있다. 일 실시예에서, 오디오-햅틱 모듈(316)은 엔드포인트 구성을 취득하기 위해 통신 모듈(326)을 통해 요구된 최종 유저 디바이스와 통신할 수 있다. 일 실시예에서, 최종 유저 디바이스는 상이한 종류의 햅틱 효과를 표시하기 위해 다수의 엔드포인트를 가질 수 있다. 예를 들어, 최종 유저 디바이스(338)는 LRA, 앱전 액츄에이터 및 ERM 액츄에이터를 가질 수 있다.
이용 케이스와 엔드포인트 구성 모두에 대한 정보가 취득된 후에, 도면부호 508에서, 오디오-햅틱 모듈(316)은 유저 선택 프로파일(들)을 식별할 수 있다. 일 실시예에서, 이는 도 4에 도시된 바와 같이, 데이터베이스(400)의 룩업 테이블을 이용함으로써 이를 달성할 수 있다.
엔드포인트와 유저 선택 프로파일(들)의 구성에 기초하여, 도면부호 512에서, 오디오-햅틱 모듈(316)은 오디오 데이터(510)에 대해 적절한 알고리즘(들)을 적용하고 본래의(raw) 햅틱 데이터(514)를 생성하도록 자기 자신을 구성할 수 있다. 예를 들어, 유저가 LRA를 갖는 디바이스를 갖고, 음악 피드백용으로 "배시(bassy)" 프로파일을 선택하면, 음악이 플레이될 때, 오디오-햅틱 모듈(316)은 음악 이용 케이스라고 이해하고, LRA용으로 특정하여 생성된 프로파일(416)로부터 "배시" 처리 알고리즘(예를 들어, 저주파만)을 선택한다. 디바이스가 LRA 대신에 압전 액츄에이터 또는 ERM 액츄에이터를 가지면, 대응하는 알고리즘은 이들 엔드포인트용으로 프로파일(410, 414)로부터 선택될 수 있다.
일 실시예에서, 프로세서(310)는 하나의 엔드포인트용으로 의도된 본래의 햅틱 데이터(514)를 다른 엔드포인트용의 본래의 햅틱 데이터로 변환하기 위해 적절한 알고리즘을 적용하도록 구성된 햅틱-햅틱 모듈(도시 안함)을 포함할 수 있다. 예를 들어, 햅틱-햅틱 모듈은 LRA용으로 생성된 본래의 햅틱 데이터(514)를 압전 액츄에이터용의 햅틱 데이터로 또는 그 역으로 변환할 수 있다. 이러한 햅틱-햅틱 신호 변환은 최종 유저 디바이스에서 햅틱 데이터가 인코딩될 때, 또는 햅틱 데이터가 디코딩될 때 완료될 수 있다.
도 6은 햅틱 데이터가 유저 특정 오디오-햅틱 알고리즘없이 엔드포인트와 이용 케이스에 기초하여 생성되는 오디오-햅틱 모듈(316)의 자동 검출 실시예(600)를 도시한다. 도면부호 610에서, 오디오-햅틱 모듈(316)은 최종 유저 디바이스(또는 시스템(300))에 어플리케이션이 설치되는 경우 디지털 콘텐츠 플레이 어플리케이션의 정보를 등록할 수 있다. 이러한 어플리케이션의 예는 오디오 플레이어, 비디오 플레이어 또는 게임 플레이어를 포함할 수 있다. 도면부호 612에서, 오디오-햅틱 모듈(316)은 최종 유저 디바이스 또는 시스템의 센서(들)에 의해 측정될 수 있는 인자와 같은 환경 인자를 등록할 수 있다. 예를 들어, 최종 유저 디바이스를 둘러싸는 조명(예를 들어 밝음 또는 어두움), 디바이스에 대한 외부 온도 등이 검출될 수 있고, 주어진 시간에 이용하기 위한 프로파일을 결정하기 위해 입력으로써 이용될 수 있다. 예를 들어, 디바이스가 낮은 조명 환경에서 이용된다고 결정되면, 보다 강한 또는 보다 약한 햅틱 효과가 유저에게 바람직할 수 있다.
최종 유저 디바이스에서 플레이되는 디지털 콘텐츠에 햅틱 효과를 추가하는 것이 바람직한 경우, 도면부호 614에서, 오디오-햅틱 모듈(316)은 요구 정보 또는 유저 입력에 기초하여 이용 케이스를 결정할 수 있다. 도면부호 616에서, 오디오-햅틱 모듈(316)은 햅틱 효과가 멀티미디어 데이터와 함께 표시되는 최종 유저 디바이스의 엔드포인트 구성을 결정한다.
일 실시예에서, 오디오-햅틱 모듈(316)은 유저 인터페이스 모듈(324)을 통해 유저 입력을 취득함으로써 결정을 행할 수 있다. 일 실시예에서, 오디오-햅틱 모듈(316)은 엔드포인트 구성을 취득하기 위해 통신 모듈(326)을 통해 요구되는 최종 유저 디바이스(예를 들어, 최종 유저 디바이스(338))와 통신할 수 있다. 일 실시예에서, 최종 유저 디바이스는 상이한 햅틱 효과를 표시하기 위해 다수의 엔드포인트를 가질 수 있다. 예를 들어, 최종 유저 디바이스(338)는 LRA, 압전 액츄에이터 및/또는 ERM 액츄에이터를 가질 수 있다.
이용 케이스와 엔드포인트 구성 모두의 정보를 취득한 후, 도면부호 618에서, 오디오-햅틱 모듈(316)은 유저 선택없이 단계 610 내지 616 동안 수집되고 결정되는 모든 정보를 고려하여, 이용되는 적절한 프로파일 또는 변환 알고리즘을 식별할 수 있다. 일 실시예에서, 이는 도 4에 도시된 데이터베이스(400)의 룩업 테이블을 이용하여 달성될 수 있다. 도면부호 620에서, 오디오-햅틱 모듈(316)은 오디오 데이터(622)에 결정된 변환 알고리즘을 적용하고 본래의 햅틱 데이터(624)를 생성하도록 자기 자신을 구성할 수 있다.
도 6에 도시된 바와 같은 자동 검출 실시예(600)는 도 5에 도시된 유저 선택 가능 실시예(500)와는, 유저가 오디오-햅틱 모듈(316)을 구성하기 위해 시스템(300) 또는 최종 유저 디바이스(334, 336, 338)과 직접 상호작용하지 않는다는 점에서 상이하다. 자동 검출 실시예(600)에서, 오디오-햅틱 모듈(316)은, 플레이되는 디지털 콘텐츠용의 주어진 특정 어플리케이션용으로 가장 적합한 오디오-햅틱 변환 알고리즘을 적절하게 선택하기 위해, 최종 유저 디바이스의 엔드포인트(햅틱 출력 디바이스) 구성뿐만 아니라 센서 정보, 이용 케이스를 포함하는 외부 인자를 이용할 수 있다.
일 실시예에서, 인코더는 각각의 엔드포인트용의 햅틱 데이터를 인코딩하고 햅틱 스트림으로 다중화(multiplex)할 수 있고, 모든 햅틱 스트림은 최종 유저 디바이스와 통신할 수 있다. 최종 유저 디바이스는 특정 최종 유저 디바이스인 엔드포인트(햅틱 출력 디바이스)와 매치되는 적절한 햅틱 신호를 식별하여 추출할 수 있다.
햅틱 스트림의 다양한 인코딩
전술한 생성된 햅틱 데이터는 본래의 햅틱 데이터 스트림으로써 지칭될 수 있다. 전술한 바와 같이, 본래의 햅틱 데이터 스트림의 저장 및/또는 전송은 다양한 이유로 햅틱 데이터를 통신하는데 가장 효율적인 방식은 아닐 수 있다. 예를 들어, 이는 스트림의 침묵(햅틱 데이터가 없음) 기간일 수 있다.
도 7은 네트워크에 걸쳐 전송하기 위해 본래의 햅틱 데이터 스트림을 인코딩하기 위한 방법(700)의 실시예를 도시한다. 본 실시예에서, 도면부호 702에서, 햅틱 인코딩 모듈(314)은 오디오-햅틱 모듈(316)(예를 들어, 도 5의 단계 514 및 도 6의 단계 624) 및/또는 햅틱-햅틱 모듈에 의해 생성될 수 있는 본래의 햅틱 데이터를 수신한다. 도면부호 704에서, 햅틱 데이터의 콘텐츠는 본래의 햅틱 데이터 스트림의 특성을 결정하기 위해 분석되고, 이는, 햅틱 데이터가 플레이되도록 의도되는 햅틱 출력 디바이스의 종류와, 본래의 햅틱 데이터의 의도되는 이용 케이스와, 본래의 햅틱 데이터의 주파수와, 본래의 햅틱 데이터 스트림의 침묵 길이, 본래의 햅틱 데이터의 진폭 등을 포함할 수 있다. 도면부호 706에서, 햅틱 인코딩 모듈(314)은 원래의 햅틱 데이터의 결정된 특성에 기초하여 본래의 햅틱 데이터를 미리 정해진 기준에 맞추도록 인코딩할 수 있다.
본 실시예에서, 도면부호 708에서, 햅틱 인코딩 모듈(314)은 우선, 특정 스트림용의 인코더의 리스트로부터 인코더를 선택할 수 있고, 이어서 도면부호 710에서, 선택된 인코더를 본래의 햅틱 데이터 스트림에 적용할 수 있다. 예를 들어, 압축 용도로 햅틱 스트림을 인코딩하기 위해 이용될 수 있는 다수의 오디오 인코더가 있다. 그러나, 오디오 인코더는 이들의 장점 및 단점을 갖고 있다. 예를 들어, 전술한 AAC는 공간 및 일반 인코딩의 품질의 관점에서 보다 우수할 수 있고, 무손실 오디오 코덱(FLAC)은 스트림이 많은 침묵을 가질 때 보다 우수할 수 있다. AAC 또는 FLAC 이외의 임의의 다른 적절한 인코더, 즉 디지털 신호 코더/압축기가 이용될 수 있다. 인코딩된 데이터 스트림의 능률 및 효율을 보장하도록 본래의 햅틱 데이터 스트림의 결정된 특성과 매치되도록 적절한 인코더가 선택될 수 있다.
일 실시예에서, 최종 유저 디바이스에서의 재생에 이용되는 햅틱 출력 디바이스와 매치되는 본래의 햅틱 데이터의 주파수의 범위를 보존하기 위해 미리 정해진 기준이 이용될 수 있고, 이는 햅틱 인코딩 모듈(314)이 도 4에 관련하여 전술한 미리 저장된 이용 케이스와 엔드포인트 프로파일을 포함하는 데이터 베이스(400)에 액세스하는 것을 요구할 수 있다.
일 실시예에서, 도면부호 712에서, 햅틱 인코딩 모듈(314)은 미리 결정된 인코더의 리스트에서의 각각의 인코더로 본래의 햅틱 데이터 스트림을 인코딩할 수 있고, 이어서 도면부호 714에서, 인코딩 출력으로서 최소 비트수를 갖는 인코딩된 햅틱 데이터 스트림을 선택할 수 있다. 일 실시예에서, 도면부호 716에서, 햅틱 인코딩 모듈(314)은 이용되는 인코더에 관한 정보 및 인코딩된 햅틱 데이터 스트림을 디코딩하기 위해 필요한 임의의 다른 정보를 저장할 수 있다. 일 실시예에서, 인코딩된 햅틱 데이터 스트림용의 인코더 정보는 컨테이너 포맷의 메타데이터에 내장될 수 있다. 최종 유저 디바이스측에서, 이러한 정보가 분석될 수 있고, 올바른 디코더가 이러한 스트림을 디코딩하기 위해 이용될 수 있다. 예를 들어, 인코더 정보는 MPEG4 포맷에서 유저 개인 또는 커스텀 원자(atom)에 내장될 수 있다.
일 실시예에서, 햅틱 인코딩 모듈(314)은 또한 이하에서 보다 상세히 설명하는 바와 같이 본래의 햅틱 데이터가 통신 네트워크 상에서 스트리밍될 때 본래의 햅틱 데이터를 인코딩하는 대역폭 유효성을 고려하여 취해질 수 있다.
적응형 밀도 트랜스코딩
일 실시예에서, 보다 적은 비트를 송신하면서 햅틱 데이터 스트림의 햅틱 파형의 특성을 레버리지(leveraging)함으로써 햅틱 신호 품질을 보존하는 방법이 제공된다. 다중 인코딩 체계를 이용하는 목적이 정체한 네트워크를 위해 보다 적은 양의 데이터를 송신하는 것이므로, 본 발명의 실시예는 햅틱 데이터 스트림용의 적응 밀도 스트리밍을 제공한다. 밀도 인자는 임계치에 기초하여 소정량의 데이터에 대해 햅틱을 적용함으로써 신호를 어떻게 밀집 또는 희박하게 하는지를 결정할 수 있다. 상이한 햅틱 밀도 인자를 이용하여 햅틱 데이터 스트림을 인코딩하기 위해 트랜스코딩 스테이지에서 이것이 행해지면, 햅틱은 네트워크 대역폭이 자유롭게 활용 가능하지 않을 때에는 적은 데이터를 갖고 송신될 수 있고, 충분한 활용 가능한 네트워크 대역폭이 있을 때에는 보다 많은 데이터를 갖고 송신될 수 있다.
일 실시예에서, 불필요한 데이터는 잘라내면서 햅틱 데이터의 관련된 고품질 부분은 유지되어, 주어진 시간에 활용 가능한 네트워크 대역폭을 보다 적게 점유한다. 디지털 콘텐츠를 전송할 때, 오디오/비디오/메타데이터와 함께 별개의 종류의 매체를 추가하는 것은 오디오/비디오/메타데이터 품질에 당연히 영향을 미칠 수 있다. 본 발명의 실시예는, 보다 적은 오버헤드를 갖고 기분좋은 햅틱 경험을 제공하면서, 오디오/비디오/메타데이터 신호의 품질에 보다 많이 영향을 주는 것을 최소화하도록 조력한다.
도 8a 내지 도 8c는 네트워크를 통해 스트리밍하기 위한 본래의 햅틱 신호(데이터 스트림)를 인코딩하는데 이용될 수 있는 다양한 밀도 인자의 실시 형태를 도시한다. 도 8a는 중간 밀도 인자를 도시하고, 도 8b는 고밀도 인자를 도시하고, 도 8c는 저밀도 인자를 도시한다. 도 8a 내지 도 8c에서 연하게 그늘진 영역("이용된 데이터" 영역)은 신호의 어떤 부분이 이용되고 인코딩되는 지를 나타내고, 도 8a 내지 도 8c에서 진하게 그늘진 영역("무시된 데이터" 영역)은 신호의 어떤 부분이 무시되는 지를 나타낸다.
예를 들어, 도 8a는 중간 밀도 인자를 이용하여 인코딩되는 본래의 햅틱 데이터 신호를 도시한다. 신호가 트랜스코더 내에 입력되는 본래의 햅틱 데이터를 나타내면, 트랜스코더는 고밀도 인자로 신호에 존재하는 것보다 더 적은 데이터인, 단지 "이용된 데이터" 영역 내의 신호에 대응하는 햅틱 데이터를 출력할 수 있다. 도 8b는 고밀도 인자를 이용하여 인코딩되는 본래의 햅틱 데이터를 도시한다. 네트워크 대역폭이 활용가능할 때의 스트림의 경우, 더 많은 데이터가 네트워크를 통해 스트리밍됨에 따라 트랜스코딩에서 이러한 고밀도 인자를 이용하는 것이 유용할 수 있다. 도 8c는 저밀도 인자를 이용하여 인코딩되는 본래의 햅틱 데이터를 도시한다. 많은 양의 네트워크 정체가 있을 때의 스트림의 경우, 출력 스트림이 더 적은 비트의 데이터를 전달하고 비교적 큰 크기의 이벤트에 대한 데이터만을 전송하기 때문에 이러한 타입의 트랜스코딩이 적절할 수 있다.
도 8a 내지 도 8c에 도시된 바와 같이, 출력 신호에 나타나는 데이터의 양은, 햅틱 인코딩 모듈(314)로 하여금, 필요할 경우 신호에서 덜 중요할 수 있고(예를 들어, 신호가 동작할 가치가 없는 크기가 매우 작거나, 대역폭을 보존하는데 무시될 수 있는 햅틱 신호에서의 아주 작은 세밀함(miniscule details)) 네트워크를 통해 더 많은 대역폭이 활용가능하게 될 경우 더 많은 데이터를 포함하는, 임의의 정보를 앞서게 하는 밀도 인자를 변경함으로써 조절될 수 있다. 실시 형태에서, 그 신호(즉, 도 8a 내지 도 8c의 중심선에서) 에서 제로 값을 가진 데이터는, 햅틱 신호로부터 어떤 것도 전송될 필요가 없다는 것을 나타내는 것으로 가정한다.
도 9는 적응형(adaptive) 햅틱 밀도 트랜스코딩 방법(900)의 실시 형태를 도시한다. 본 명세서에서 이용되는 바와 같이, 트랜스코딩은 본래의 햅틱 데이터의 인코딩과 상호변경가능하지만, 그 인코딩은 소스(예를 들어, 스트리밍 서버)로부터 상이한 목적지(예를 들어, 원격 최종 유저 디바이스)로의 변환용이라는 점이 강조된다. 도시된 바와 같이, 입력은, 상술한 바와 같이 오디오-햅틱 모듈(316; audio-to-haptic module)에 의해 생성되는 데이터와 같은 본래의 햅틱 데이터(902)이다. 햅틱 트랜스코더(904)는 각각이 도 8a 내지 도 8c에 대해 상술한 바와 같이 특정 밀도 인자에 대응하는, 다수의 비트 레이트에서 본래의 햅틱 데이터(902)를 인코딩한다. 햅틱 웹 서버(906)는 다양한 밀도 인자로 인코딩되는 햅틱 비트 스트림을 저장하고, 인코딩된 햅틱 데이터 스트림에 대해 매니페스트 파일(908)을 유지한다. 최종 유저 디바이스(912)(예를 들어, 도 3의 최종 유저 디바이스(334, 336, 338))는 네트워크(910)(또는 도3에서와 같은 332)를 통해 햅틱 웹 서버(906)와 통신하여 소정의 본래의 햅틱 신호(902)에 대해 인코딩된 햅틱 데이터 스트림 중 하나를 수신한다.
실시 형태에서, 햅틱 데이터 스트림의 밀도는 1과 15(15는 최고 밀도이고, 1은 최저 밀도임) 사이의 밀도 인자를 변경함으로써 조절될 수 있다. 이 값은 얼마나 많은 데이터가 인코딩된 햅틱 데이터 스트림에 포함되는지에 대한 (상술된 바와 같이) 임계값으로 작용한다. 결과적으로, 더 작은 밀도값, 더 작은 저-크기(덜 중요한) 본래의 햅틱 데이터가 인코딩된 햅틱 데이터 스트림에 포함된다. 트랜스코더(904)가 밀도 임계값을 증가시킴에 따라, 더 많은 저-크기 및 상세 데이터가 인코딩된 햅틱 데이터 스트림에 증가적으로 추가된다. 따라서, 더 높은 밀도가 우수한 네트워크 접속성에 맵핑되고, 더 낮은 밀도가 열악한 네트워크 접속성에 맵핑된다.
도 9에 도시된 바와 같이, 햅틱 웹 서버(906)는 5개의 상이한 밀도 인자로 인코딩된 햅틱 비트 스트림(1-5)을 저장하고, 특정 본래의 햅틱 데이터 입력에 대응하는 인코딩된 햅틱 데이터 스트림을 위해 매니페스트 파일(908)을 유지한다. 예를 들어, 웹 서버(906)의 스트림(1)은 1의 밀도 인자로, 스트림(2)은 2의 밀도 인자로 등으로 인코딩된다. 최종 유저 디바이스(912)는 상이한 비트 레이트에서 활용가능한 햅틱 데이터 스트림 및 인코딩된 햅틱 데이터 스트림의 세그먼트를 알게 된다. 시작시에, 최종 유저 디바이스(912)는 최저 비트 레이트 햅틱 데이터 스트림(1)으로부터 세그먼트를 요청할 수 있다. 최종 유저 디바이스(912)가 다운로드된 세그먼트의 비트 레이트보다 네트워크의 다운로드 속도가 큰 것을 발견하면, 그 후, 최종 유저 디바이스(912)는 도 10에 도시된 바와 같이, 다음에 높은 비트 레이트 세그먼트, 예를 들어, 스트림(2)의 세그먼트 또는 어떤 것이 중간 매체 스트림으로 고려될 것인지를 요청할 수 있다. 그 후, 최종 유저 디바이스(912)가 세그먼트에 대한 다운로드 속도가 그 세그먼트에 대한 비트 레이트보다 낮다고 결정하면, 최종 유저 디바이스(912)는 네트워크 처리량(throughput)이 저하되었다고 결정하고, 도 10에 도시된 바와 같이, 더 낮은 비트 레이트 세그먼트를 요청할 수 있다. 만약 활용가능한 대역폭이 현저히 증가하면, 최종 유저 디바이스(912)는 도 10에 도시된 바와 같이, 더 높은 비트 레이트 세그먼트 또는 어떤 것이 고밀도 스트림으로 고려될지 등을 요청할 수 있다. 세그먼트 크기는 실시에 따라 변경될 수 있다. 실시 형태에서, 세그먼트 크기는 2초와 같이 작을 수 있다. 실시 형태에서, 세그먼트 크기는 10초와 같이 클 수 있다.
실시 형태에서, 햅틱 밀도 트랜스코딩 모듈(320)은 네트워크 전송용 오디오/비디오(예를 들어, 도 3의 멀티미디어 모듈(312)을 트랜스코딩하는 동일한 알고리즘으로 집적될 수 있다. 생성된 햅틱 스트림의 수는 생성된 오디오/비디오 스트림의 수와 동일하고, 각 햅틱 스트림에 대한 밀도 인자는 반드시 각각의 트랜스코딩에 대해 상이할 필요는 없다. 예를 들어, 실시 형태에서, 생성된 10개의 상이한 오디오/비디오 스트림이 있다면, 본래의 햅틱 데이터는 5개의 상이한 밀도 인자로 5배 트랜스코딩될 수 있다.
상술된 햅틱 데이터의 적응형 비트레이트 트랜스코딩은 미디어 데이터를 스트리밍할 때 변화되는 네트워크 접속성을 지원하기 위해 상이한 품질로 오디오/비디오를 프리 렌더링(pre-render)하는데 이용되는 적응형 비트레이트 스트리밍과 동일하지 않을 수 있다는 점에 주의해야 한다. 후자는 전형적으로 모든 입력 오디오 데이터 또는 비디오 데이터에 압축 알고리즘을 적용하여 적은 수의 비트를 전송하는 것에 초점을 맞춘다. 햅틱 데이터 스트림으로, 본 발명의 실시 형태에 따른 적응형 비트레이트 스트리밍은 더 적은 신호를 전송하지만, 여전히 중요하지 않은(즉, 낮은 크기) 햅틱 신호의 특정 섹션을 포기하고 햅틱 신호의 상위 우선 섹션에 초점을 맞춤으로써 상대적인 햅틱 효과를 제공한다. 이는, 더 적은 비트를 전송하면서도 햅틱 파형의 특성에 영향을 줌으로써, 실제 햅틱 품질을 보존할 수 있고, 이에 따라 요구되는 대역폭을 감소시킨다. 본 발명의 실시 형태의 다른 잠재적인 장점은, 오리지널 햅틱 신호의 동일 포맷이 상이한 밀도로 인코딩된 햅틱 데이터에 대해 유지될 수 있다는 점이다. 종래의 트랜스코딩에서, 소스의 포맷은 네트워크 전송용 데이터를 압축하기 위해 상이한 포맷으로 재 인코딩될 수 있기 때문에 보존될 수 없다.
내장된 햅틱을 가진 MP4
본 발명의 실시 형태는, 또한 햅틱 데이터가 다른 디지털 콘텐츠의 전달에 영향없이 다른 디지털 콘텐츠로 스트리밍될 수 있도록 MP4 호환형 파일 컨테이너에 햅틱 비트 스트림을 인베딩하기 위한 방법을 제공한다. 동일한 방법이 다른 유사한 컨테이너에도 적용될 수 있다.
MP4가 네트워크를 통해 디지털 콘텐츠를 스트리밍하기 위한 컨테이너 포맷으로서 후술되지만, MP4가 신규 환경을 생성하기 위해 표준 오디오 및 비디오 스트림으로 인터리빙되는 데이터의 가변 타입을 인베딩하기 위해 변형하는 능력뿐만 아니라 지원되는 포맷 면에서 최상의 순응성(flexibility)을 제공한다고 현재 여겨지기 때문에, 본 발명의 실시 형태는 다른 컨테이너 포맷에도 적용될 수 있다는 것을 이해해야 한다. 데이터의 가변 타입이 추가적인 오디오 스트림, 폐쇄 캡션닝(closed captioning) 스트림 등을 포함하지만, 본 발명의 실시 형태는 MP4 컨테이너 내에 존재할 수 있는 오디오 및/또는 비디오 스트림과 햅틱 스트림을 인터리빙하는 것에 대해 설명한다. 최종 유저 디바이스측에서, 내장된 햅틱 신호가 추출되어 표준 오디오 및 비디오 재생과 동시에 햅틱 출력 디바이스에 대해 재생될 수 있다. 제안되는 방식은 오디오 및 비디오 이외에 다른 디지털 콘텐츠에 적용된다는 것을 이해해야 한다.
오디오 신호와 햅틱 신호 사이에 많은 유사성이 있다. 햅틱 신호는 상기 도 7에 대한 설명에서 변경가능한 햅틱 인코더를 이용할 경우 오디오 신호의 것과 유사하게 인코딩된다. 그 현재 형태에서, 이는, 햅틱 신호가 MP4에 의해 지원되게 하지만, 또한 햅틱 신호가 표준 MP4 플레이어에 의해 오디오 신호로서 해석되지 않는 것을 보장하도록 햅틱과 오디오 박스 구조 사이에 충분하게 구별되는 것이 요구된다. 반대로, 오디오 신호가 존재하면 햅틱 신호로 오판되지 않는다.
햅틱 신호는 편의상 AAC로서 인코딩될 수 있다. 이러한 인코딩은 상술한 바와 같이 인코딩된 햅틱 신호(데이터 스트림)를 제공하는 다양한 방법으로 인해 변경되게 하지만, 그 박스 구조는 유사하게 유지될 수 있다. 햅틱 신호는, 오디오 및 비디오용으로 존재하는 다른 'trak' 박스와 함께, 표준 'moov' 박스 내에 개별의 'trak'박스를 필요로 한다. 이하 표 I는 햅틱 박스 구조를 열거한다. MPEG4 Part-12 표준(ISO/IEC 14496-12 미디어 파일 포맷)(이하 "포맷 표준"으로 칭함)이 표 I의 MP4 박스 계층도 상의 일반적인 정보를 제공한다.
표 I: 햅틱용 박스 계층도
Figure 112014049390510-pat00001
햅틱 데이터는 오디오 또는 비디오로서 간주되지 않는다. 대부분 플레이어들이 그 각각의 'trak' 박스에 의해 특정되는 오디오 스트림의 임의의 결합 또는 비디오 스트림의 임의의 결합 또는 수로 하려고 하기 때문에, 햅틱 데이터는 타임드(timed) 메타데이터 트랙('meta')으로 나타내야 한다. 이는 핸들러_타입 필드를 'hdlr' 박스의 'meta'로 설명하여 행해질 수 있다.
포맷 표준에서 섹션 8.4.3에 특정화된 타임드 메타데이터 트랙은 시간 기반 미디어 콘텐츠를 저장하기 위한 것이다. 이러한 타입의 트랙에 햅틱 신호를 저장하면, 그 스트림이 미디어로 여겨지게 되지만, 오디오 또는 비디오 포맷으로 여겨지지 않는다. 이 경우, 햅틱 데이터용의 타임드 메타데이터 스트림을 특정하는 것은, 그 원래의 인코딩이 오디오 포맷임에도 불구하고 재생 중에 햅틱 데이터가 오디오로서 간주되지 않는다.
도 11 내지 도 13은 소리(1100), 비디오(1200) 및 햅틱(1300)용의 핸들러 참조 박스를 도시하고, MP4 파일 내에 함께 내장될 때 어떻게 소리, 비디오 및 햅틱 핸들러 타입이 상이한지를 보여준다. 각각의 'trak'(1102, 1202, 1302)에 대한 핸들러_타입은 도 11 내지 도13에 도시된 바와 같이 'hblr' 박스(1104, 1204, 1304)에 특정된다. 소리, 비디오 및 타임드 메타데이터 트랙에 대한 핸들러 타입은 포맷 표준의 섹션 8.4.3에 특정된 바와 같이 각각 'soun'(도 11의 1106), 'vide'(도 12의 1206) 및 'meta'(도 13의 1306)이다.
추가적으로, 햅틱 스트림이 타임드 메타데이터 트랙으로 분류되기 때문에, 널(null) 미디어 헤더 박스('nmhd' 참조)(도 14의 1408)는 포맷 표준에서 섹션 8.4.5.5 아래에 특정된 바와 같이 'minf' 컨테이너 박스(도 14의 1406 참조) 아래에 있다. 이는, 스트림이 오디오('smhd'-소리 미디어 헤더)(도 14의 1402) 또는 비디오('vmhd'-비디오 미디어 헤더)(도 14의 1404)가 아니가, 미디어 스트림으로 여전히 해석될 수 있다는 것을 나타낸다. 도 14는 소리, 비디오 및 햅틱 각각에 대한 완전한 박스 구조를 보여줌으로써 이를 더 상세히 도시한다.
또한, 박스 구조 내에서, 'stbl' (샘플 표 박스) 아래에 'stsd' 박스가 있고, 이는 상기 표 I에 도시된 바와 같이 샘플 디스크립션 박스이다. 이 박스에서, 'trak'의 포맷이 특정된다. 예를 들어, 'stsd'의 제1 자 박스(child box)는 전형적으로 AAC 오디오 트랙용의 'mp4a'이다. 햅틱의 경우, 4개의 캐릭터 코드("FOURCC") 값 'hapt'를 가진 새로운 제네릭 박스(generic box)가 생성된다. 이는, 이러한 타임드 메타데이터 트랙이 햅틱 신호를 설명하는 정보를 포함하는 것을 나타낸다. 포맷 표준의 섹션 8.5.2.2에 따르면, 'meta' 핸들러 타입은 메타 데이터 샘플 엔트리("MetaDataSampleEntry") 클래스가 실행될 것을 요구하지만, 새로운 서브클래스에 의해 확장될 수 있는 엠프티 클래스로서 정의된다. 실시 형태에서, 이러한 엠프티 클래스는 임의의 추가 정보로 확장되지 않는다. 임의의 햅틱-특정 정보는 표 I 및 후술되는 바와 같이 'esds' 박스에 저장된다.
트랙 지연 및 시간비율(timescale)과 같은 모든 타이밍 정보는 햅틱 트랙의 전체 지연 및 시간비율을 설명하기 위해 'mdhd' 박스에 존재해야 한다. MPEG4 Part-1 표준(ISO/IEC 14496-1 시스템)(이하 "시스템 표준"으로 칭함)에 따르면, 시간비율은 1초에 통과하는 시간 단위의 수를 포함하는 32비트 부호없는 정수이다. 예를 들어, 햅틱 트랙이 초당 50 샘플의 업데이트 속도를 가지면, 이러한 시간비율은 50으로 설정된다. 지연 필드는 시간비율의 크기(scale)에서 이러한 햅틱 트랙의 길이를 선포하는 64비트 부호없는 정수이다. 예를 들어, 시간비율이 50으로 설정되면, 모든 샘플은 20ms의 길이를 갖는다. 햅틱 트랙이 5초 길면, 지연 필드는 250(5*1000/20)의 값을 가져야 한다.
상기 표 I에 열거된 바와 같이, 'hapt' 컨테이너 박스 아래의 자 박스만이 ES_Descriptor로도 칭해지는 'esds' 박스(엘리멘터리 스트림 디스크립션)이다. 오디오에 적용될 때, 이 박스는 그것이 존재하는 'trak'와 연관된 스트림을 디코딩하는데 이용되는 정보를 포함한다. 이는 햅틱과 유사하게 이용될 수 있다. 'esds' 박스 상의 신택스 상세는 시스템 표준의 섹션 8.3.3.1에 제공된다.
도 15는 MP4 파일의 햅틱 데이터용 오브젝트 프로파일 지시("objectProfileIndication") 값의 유효 설정의 실시 형태를 도시한다. 시스템 표준의 섹션 8.3.3에 따르면, ES_Descriptor 박스는 디코더 구성 디스크립터("DecoderConfigDescriptor") 구조를 포함하고, 이는 엘리멘터리 스트림을 분석하고 판독하는 파라미터 및 요구조건을 포함한다. DecoderConfigDescriptor 내에, objectProfileIndication 값 및 디코더 특정 정보("DecoderSpecificInfo") 구조용 필드가 있다.
objectProfileIndication 값은 이러한 스트림에 대해 오브젝트 프로파일 타입을 제공한다. 이 필드는 0xC0과 0xFE 사이의 값, 즉, 'hapt' 박스 구조 내에서 이용될 때 햅틱 타입으로 알려진(시스템 표준의 표 8-5 참조) 유저-프라이비트 오브젝트 프로파일 타입의 범위로 설정된다.
DecoderSpecificInfo 구조는 objectProfileIndication 값(시스템 표준의 표 8-5 참조)에 기초하여 다른 클래스에 의해 확장되는 요약 클래스이다. 하나의 햅틱 실시의 경우, 이러한 구조는 햅틱 특정 구성("HapticSpecificConfig") 클래스에 의해 확장될 수 있고, 이는 신호 타입과 같은 햅틱-특정 정보 및 인코딩된 신호가 생성된 액츄에이터를 포함한다.
명료화를 위해, 오프젝트 프로파일 타입으로서 0xC0와 0xFE 사이의 값을 이용하여, 'hapt' 박스를 포함하는 'trak' 박스 구조만이 도 15에 도시된 바와 같이 유효 햅틱 스트림으로 간주된다. 오브젝트 프로파일 타입이 임의의 다른 값이면, 도 16에 도시된 바와 같이 무효로 간주되고, 여기서 objectProfileIndication 값은 AAC 메인 프로파일로 설정된다.
MPEG-4 시스템은 일반적으로 디코딩 프로세스용으로 필요한 엘리멘터리 디스크립터의 구성 정보를 예상한다. DecoderConfigDescriptor는 시스템 표준의 섹션 8.3.3에서 설명된 바와 같이 DecoderSpecificInfo 요약 클래스의 서브클래스를 포함해야 한다. 오디오 스트림의 경우, DecoderSpecificInfo는 MPEG4 Part-3 표준(ISO/IEC 14496-3 오디오)(이후 "오디오 표준"이라 칭함)의 섹션 1.6.2.1에서 설명된 바와 같이, 오디오-특정 구성("AudioSpecificConfig") 클래스에 의해 확장된다. 햅틱 스트림의 경우, DecoderSpecificInfo는 본 명세서에서 설명된 바와 같이 HapticSpecificConfig 클래스에 의해 확장된다.
objectTypeIndication의 값 및 streamType 값이, 이 스트림이 햅틱 정보를 포함하는 것을 나타내는 0xC0 및 0x20일 경우, 시스템 표준에서 정의된 바와 같이, HapticSpecificConfig는 요약 클래스 DecoderSpecificInfo를 확장시킨다. 이하의 표 II-VIII는 HapticSpecificConfig의 신택스, 햅틱 스트림 타입, 샘플링 주파수, 액츄에이터 구성, 채널 구성, 엔드포인트 구성 및 햅틱 디코더 타입용으로 이용될 수 있는 추가적인 정보를 제공한다.
표 II: HapticSpecificConfig의 신택스
Figure 112014049390510-pat00002
표 III: 햅틱 스트림 타입
Figure 112014049390510-pat00003
표 IV: 샘플링 주파수 인덱스
Figure 112014049390510-pat00004
표 V: 액츄에이터 구성
Figure 112014049390510-pat00005
표 VI: 채널 구성
Figure 112014049390510-pat00006
표 VII: 엔드포인트 구성
Figure 112014049390510-pat00007
표 VIII: 햅틱 디코더 타입
Figure 112014049390510-pat00008
상기 디스크립션은 실제 스트림 그 자체보다 인코딩된 햅틱 스트림을 특정한다. 전형적으로, 소리, 비디오, 또는 타임드 메타데이터 타입인 각 'trak' 오브젝트와 연관된 스트림이 있다. 이러한 스트림은 MP4 박스 구조에서 'moov' 박스와 동일 레벨에 있는 'mdat' 박스에서 인터리브된다. 'mdat' 박스는 플레이어가 분석하고, 디코딩하고, 엔드-플랫폼에 두는 실제 데이터를 포함한다. 포맷 소프트웨어(formatting software)는 각 스트림에 대한 세그먼트 크기를 결정하고 비디오, 오디오 및 메타데이터 (햅틱) 샘플의 모든 인코딩된 세그먼트를 인터리브하는 역활을 한다. 이 경우, 햅틱 신호는 오디오 및 비디오 신호의 경우 어떻게 추출이 행해지는 것과 유사하게, 오프셋을 샘플 표의 세그먼트에 참조시킴으로써 인터리브된 데이터로부터 추출될 수 있다.
저장되거나 저장될 수 있는, 본 명세서에서 설명된 다양한 입력, 출력, 구성, 및/또는 다른 정보는 하나 이상의 데이터베이스에 저장될 수 있다. 이러한 데이터베이스는 예를 들어, 오라클 사에 의해 상업적으로 판매되는 ORACLETM 관련 데이터베이스일 수 있고, 이를 포함할 수 있고 또는 이에 인터페이스할 수 있다. INFORMIXTM, DB2(Database 2) 또는 파일 기반을 포함하는 다른 데이터 스토리지와 같은 다른 데이터베이스, 또는 쿼리 포맷, 플랫폼, 또는 OLAP(On Line Analytical Processing), SQL(Standard Query Language), SAN(storage area network), MICROSOFT ACCESSTM 등과 같은 리소스가 또한 이용, 합체 또는 액세스될 수 있다. 데이터베이스는 하나 이상의 물리적 디바이스 및 하나 이상의 물리적 위치에 있는 하나 이상의 이러한 데이터베이스를 포함할 수 있다. 데이터베이스는 복수 타입의 데이터 및/또는 파일 및 연관된 데이터 또는 파일 디스크립션, 관리 정보, 또는 임의의 다른 데이터를 저장할 수 있다.
본 발명의 태양에 따르면, 햅틱 데이터로 유저 디지털 콘텐츠 환경을 강화시키는 컴퓨터-실행되는 방법이 제공된다. 이 방법은 컴퓨터 프로그램 모듈로 프로그래밍된 프로세서를 구비한 컴퓨팅 디바이스 상에서 실행된다. 이 방법은 오디오 데이터 및/또는 비디오 데이터를 포함하는 디지털 콘텐츠 데이터를 수신하는 단계; 수신된 디지털 콘텐츠 데이터의 적어도 일부를 이용하여 햅틱 데이터를 생성하는 단계; 통신 네트워크를 통해 효율적인 전송을 위해 생성된 햅틱 데이터를 인코딩하는 단계; 수신된 디지털 콘텐츠 데이터로 인코딩된 햅틱 데이터를 멀티플렉싱하는 단계; 멀티플렉싱된 데이터 스트림의 메타데이터에 인코딩된 햅틱 데이터를 디코딩하는 정보를 인베딩하는 단계; 및 통신 네트워크를 통해 멀티플렉싱된 데이터 스트림을 전송하는 단계를 포함한다.
본 발명의 태양에 따르면, 최종 유저가 최종 유저 디바이스 상에 생성된 햅틱 효과를 경험하도록 네트워크를 통해 다른 디지털 콘텐츠 데이터와 함께 햅틱 데이터를 전송하는 컴퓨터-실행되는 방법이 제공된다. 최종 유저 디바이스는 네트워크에 결합된다. 이 방법은 컴퓨터 프로그램 모듈로 프로그래밍된 프로세서를 구비한 컴퓨팅 디바이스 상에서 실행된다. 이 방법은 햅틱 데이터의 적어도 하나의 특성을 결정하도록 햅틱 데이터를 분석하고, 결정된 특성에 기초하여 소정의 기준(criteria)을 만족시키도록 햅틱 데이터를 인코딩하는 단계를 포함한다.
본 발명의 태양에 따르면, 햅틱 데이터로 유저 디지털 콘텐츠 환경을 강화시키는 컴퓨터-실행되는 방법이 제공된다. 이 방법은 컴퓨터 프로그램 모듈로 프로그래밍된 프로세서를 구비한 컴퓨팅 디바이스 상에서 실행된다. 이 방법은 본래의 햅틱 데이터를 수신하고, 수신된 본래의 햅틱 데이터를 소정 리스트의 밀도 인자로 인코딩하여 인코딩된 햅틱 데이터 스트림의 리스트를 생성하고 - 각각의 인코딩된 햅틱 데이터 스트림은 소정 리스트의 밀도 인자에 대응함-, 통신 네트워크를 통해 최종 유저 디바이스로부터 네트워크 대역폭 정보를 수신하고, 통신 네트워크 대역폭의 조건과 일치하는 대응 밀도 인자에 기초하여 인코딩된 햅틱 데이터 스트림 중 하나를 선택하고, 선택된 인코딩된 햅틱 데이터 스트림을 최종 유저 디바이스에 전송하는 단계를 포함한다.
본 발명의 다른 태양, 용도 및 장점은 본 명세서에 설명된 본 발명의 실시 및 본 명세서를 고려하여 당업자에게 자명한다. 본 명세서는 예시적인 것으로 고려될 뿐이며, 따라서, 본 발명의 범위는 다음의 청구범위에 의해서만 제한되어야 한다.

Claims (26)

  1. 오디오 데이터 및 비디오 데이터 중 적어도 하나를 포함하는 디지털 콘텐츠 데이터를 수신하는 단계;
    상기 디지털 콘텐츠 데이터의 적어도 일부를 이용하여 햅틱 데이터를 생성하는 단계;
    통신 네트워크를 통한 전송을 위해, 상기 햅틱 데이터를 인코딩하여 인코딩된 햅틱 데이터를 생성하는 단계;
    인코딩된 햅틱 데이터를 상기 디지털 콘텐츠 데이터를 이용하여 멀티플렉싱하여 멀티플렉싱된 데이터 스트림을 생성하는 단계;
    상기 멀티플렉싱된 데이터 스트림의 파일 컨테이너의 메타데이터에 상기 인코딩된 햅틱 데이터를 디코딩하기 위한 인코더 정보를 내장하는 단계; 및
    통신 네트워크를 통해 상기 멀티플렉싱된 데이터 스트림을 전송하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 햅틱 데이터를 분석하여 햅틱 데이터의 적어도 하나의 특성을 결정하는 단계를 더 포함하고,
    햅틱 데이터를 인코딩하는 단계는 적어도 하나의 특성에 기초하여, 미리 정의된 기준에 부합하는 햅틱 데이터를 인코딩하는 단계를 포함하는, 방법.
  3. 제2항에 있어서,
    상기 미리 정의된 기준은 비트 수가 가장 적은 햅틱 비트 스트림으로 인코딩된 출력을 포함하는, 방법.
  4. 제2항에 있어서,
    최종 유저 디바이스로부터 최종 유저 디바이스의 엔드포인트 구성을 수신하는 단계를 더 포함하고,
    상기 미리 정의된 기준은 최종 유저 디바이스의 수신된 상기 엔드포인트 구성에 대응하는 햅틱 데이터의 주파수 범위를 유지하는 것을 포함하는, 방법.
  5. 제2항에 있어서,
    햅틱 데이터를 인코딩하는 단계는 상기 적어도 하나의 특성에 기초하여 미리 결정된 인코더들의 리스트로부터 하나의 인코더를 선택하고 선택된 상기 인코더를 적용하여 햅틱 데이터를 변환하는, 방법.
  6. 제5항에 있어서,
    상기 미리 결정된 인코더들의 리스트는 향상된 오디오 코딩 인코더 및/또는 무손실 오디오 인코더(Free Lossless Audio encoder)를 포함하는, 방법.
  7. 제2항에 있어서,
    상기 햅틱 데이터의 적어도 하나의 특성은 햅틱 데이터, 햅틱 데이터의 의도된 이용 케이스, 햅틱 데이터의 크기, 햅틱 데이터의 주파수, 및 햅틱 데이터의 침묵 길이에 기초하여 햅틱 효과를 생성하도록 사용되는 한 종류 이상의 햅틱 출력 디바이스를 포함하는, 방법.
  8. 제7항에 있어서,
    상기 한 종류 이상의 햅틱 출력 디바이스는 이심 회전체 액츄에이터(eccentric rotating mass actuator), 선형 공진 액츄에이터(linear resonant actuator) 및 압전 액츄에이터로 구성된 그룹 중 하나 이상을 포함하는, 방법.
  9. 제7항에 있어서,
    상기 햅틱 데이터의 의도된 이용 케이스는 음악, 영화 및 게임으로 구성된 그룹으로부터 선택되는, 방법.
  10. 제2항에 있어서,
    상기 햅틱 데이터를 인코딩하는 단계는,
    상기 햅틱 데이터에 미리 결정된 인코더들의 리스트 중 각각의 것을 적용하여 인코딩된 햅틱 데이터 스트림의 대응하는 리스트를 생성하는 단계; 및
    상기 미리 정의된 기준을 이용하여, 인코딩된 햅틱 데이터 스트림의 리스트로부터 인코딩된 햅틱 데이터 스트림을 선택하는 단계를 포함하는, 방법.
  11. 제1항에 있어서,
    햅틱 데이터를 인코딩하는 단계는, 밀도 인자(density factor)의 선정된 리스트에 대한 햅틱 데이터를 인코딩하여 복수의 인코딩된 햅틱 데이터 스트림을 생성하는 단계를 포함하고, 각각의 상기 복수의 인코딩된 햅틱 데이터 스트림은 밀도 인자의 선정된 리스트의 하나의 밀도 인자에 대응하고, 상기 방법은,
    통신 네트워크를 통해 최종 유저 디바이스로부터 네트워크 대역폭 정보를 수신하는 단계; 및
    수신된 디지털 콘텐츠 데이터를 이용하여 멀티플렉싱하기 위해 통신 네트워크 대역폭의 조건과 매칭되는 대응하는 밀도 인자에 기초하여 상기 복수의 인코딩된 햅틱 데이터 스트림 중 하나를 선택하는 단계를 더 포함하는, 방법.
  12. 제11항에 있어서,
    복수의 인코딩된 데이터 스트림 중 제1 인코딩된 데이터 스트림은 밀도 인자의 선정된 리스트의 제1 밀도 인자에 대응하고, 복수의 인코딩된 데이터 스트림 중 제2 인코딩된 데이터 스트림은 밀도 인자의 선정된 리스트의 제2 밀도 인자에 대응하며, 상기 제2 인코딩된 데이터 스트림은 제1 데이터 스트림 이상의 햅틱 데이터를 포함하고 상기 제2 밀도 인자는 제1 밀도 인자보다 큰, 방법.
  13. 제11항에 있어서,
    네트워크 대역폭 정보의 변화를 검출하는 단계;
    통신 네트워크 대역폭의 조건에 매칭되는 대응하는 밀도 인자에 기초하여 상기 복수의 인코딩된 햅틱 데이터 스트림 중 상이한 것을 선택하는 단계; 및
    인코딩된 데이터 스트림 중 선택된 상이한 것을 최종 유저 디바이스에 전송하는 단계를 더 포함하는, 방법.
  14. 오디오 데이터 및 비디오 데이터 중 적어도 하나를 포함하는 디지털 콘텐츠 데이터를 수신하고,
    상기 디지털 콘텐츠 데이터의 적어도 일부를 이용하여 햅틱 데이터를 생성하고,
    통신 네트워크를 통한 전송을 위해, 상기 햅틱 데이터를 인코딩하여 인코딩된 햅틱 데이터를 생성하고,
    상기 인코딩된 햅틱 데이터를 상기 디지털 콘텐츠 데이터를 이용하여 멀티플렉싱하여 멀티플렉싱된 데이터 스트림을 생성하고,
    상기 멀티플렉싱된 데이터 스트림의 파일 컨테이너의 메타데이터에 상기 인코딩된 햅틱 데이터를 디코딩하기 위한 인코더 정보를 내장하며,
    멀티플렉싱된 인코딩된 햅틱 데이터와 디지털 콘텐츠 데이터를 통신 네트워크를 통해 수신하도록 구성되는 유저 디바이스 -상기 유저 디바이스는 햅틱 데이터에 기초하여 햅틱 효과를 출력하도록 구성된 햅틱 출력 디바이스를 포함함- 에 상기 멀티플렉싱된 데이터 스트림을 통신 네트워크를 통해 전송하도록
    구성된 프로세서를 포함하는, 시스템.
  15. 제14항에 있어서,
    상기 프로세서는 또한 상기 햅틱 데이터를 분석하여 햅틱 데이터의 적어도 하나의 특성을 결정하고, 적어도 하나의 특성에 기초하여, 미리 정의된 기준에 부합하는 햅틱 데이터를 인코딩하도록 구성된, 시스템.
  16. 제15항에 있어서,
    상기 미리 정의된 기준은 비트 수가 가장 적은 햅틱 비트 스트림으로 인코딩된 출력을 포함하는, 시스템.
  17. 제15항에 있어서,
    상기 프로세서는 또한 유저 디바이스로부터 유저 디바이스의 엔드포인트 구성을 수신하도록 구성되고, 상기 미리 정의된 기준은 최종 유저 디바이스의 수신된 상기 엔드포인트 구성에 대응하는 햅틱 데이터의 주파수 범위를 유지하는 것을 포함하는, 시스템.
  18. 제15항에 있어서,
    상기 프로세서는 또한 적어도 하나의 특성에 기초하여 미리 결정된 인코더들의 리스트로부터 하나의 인코더를 선택하고 선택된 상기 인코더를 적용하여 햅틱 데이터를 변환하도록 구성된, 시스템.
  19. 제18항에 있어서,
    상기 미리 결정된 인코더들의 리스트는 향상된 오디오 코딩 인코더 및/또는 무손실 오디오 인코더를 포함하는, 시스템.
  20. 제15항에 있어서,
    상기 햅틱 데이터의 적어도 하나의 특성은 햅틱 데이터, 햅틱 데이터의 의도된 이용 케이스, 햅틱 데이터의 크기, 햅틱 데이터의 주파수, 및 햅틱 데이터의 침묵 길이에 기초하여 햅틱 효과를 생성하도록 사용되는 한 종류 이상의 햅틱 출력 디바이스를 포함하는, 시스템.
  21. 제20항에 있어서,
    상기 한 종류 이상의 햅틱 출력 디바이스는 이심 회전체 액츄에이터, 선형 공진 액츄에이터 및 압전 액츄에이터로 구성된 그룹 중 하나 이상을 포함하는, 시스템.
  22. 제20항에 있어서,
    상기 햅틱 데이터의 의도된 이용 케이스는 음악, 영화 및 게임으로 구성된 그룹으로부터 선택되는, 시스템.
  23. 제15항에 있어서,
    상기 프로세서는 또한 상기 햅틱 데이터에 미리 결정된 인코더들의 리스트 중 각각의 것을 적용하여 인코딩된 햅틱 데이터 스트림의 대응하는 리스트를 생성하고;
    상기 미리 정의된 기준을 이용하여, 인코딩된 햅틱 데이터 스트림의 리스트로부터 인코딩된 햅틱 데이터 스트림을 선택하도록 구성된, 시스템.
  24. 제14항에 있어서,
    상기 프로세서는 또한 밀도 인자의 선정된 리스트에 대한 햅틱 데이터를 인코딩하여 복수의 인코딩된 햅틱 데이터 스트림 -각각의 상기 복수의 인코딩된 햅틱 데이터 스트림은 밀도 인자의 선정된 리스트의 하나의 밀도 인자에 대응함- 을 생성하고;
    통신 네트워크를 통해 최종 유저 디바이스로부터 네트워크 대역폭 정보를 수신하며;
    수신된 디지털 콘텐츠 데이터를 이용하여 멀티플렉싱하기 위해 통신 네트워크 대역폭의 조건과 매칭되는 대응하는 밀도 인자에 기초하여 상기 복수의 인코딩된 햅틱 데이터 스트림 중 하나를 선택하도록 구성된, 시스템.
  25. 제24항에 있어서,
    복수의 인코딩된 데이터 스트림 중 제1 인코딩된 데이터 스트림은 밀도 인자의 선정된 리스트의 제1 밀도 인자에 대응하고, 복수의 인코딩된 데이터 스트림 중 제2 인코딩된 데이터 스트림은 밀도 인자의 선정된 리스트의 제2 밀도 인자에 대응하며, 상기 제2 인코딩된 데이터 스트림은 제1 데이터 스트림 이상의 햅틱 데이터를 포함하고 상기 제2 밀도 인자는 제1 밀도 인자보다 큰, 시스템.
  26. 제24항에 있어서,
    상기 프로세서는 또한 네트워크 대역폭 정보의 변화를 검출하고;
    통신 네트워크 대역폭의 조건에 매칭되는 대응하는 밀도 인자에 기초하여 상기 복수의 인코딩된 햅틱 데이터 스트림 중 상이한 것을 선택하며;
    상기 인코딩된 데이터 스트림 중 선택된 상이한 것을 최종 유저 디바이스에 전송하도록 구성된, 시스템.
KR1020140063058A 2013-05-24 2014-05-26 햅틱 데이터 인코딩 및 스트리밍을 위한 방법 및 시스템 KR102176391B1 (ko)

Applications Claiming Priority (6)

Application Number Priority Date Filing Date Title
US201361827341P 2013-05-24 2013-05-24
US61/827,341 2013-05-24
US201361874920P 2013-09-06 2013-09-06
US61/874,920 2013-09-06
US201361907318P 2013-11-21 2013-11-21
US61/907,318 2013-11-21

Publications (2)

Publication Number Publication Date
KR20140138087A KR20140138087A (ko) 2014-12-03
KR102176391B1 true KR102176391B1 (ko) 2020-11-09

Family

ID=50943052

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020140063058A KR102176391B1 (ko) 2013-05-24 2014-05-26 햅틱 데이터 인코딩 및 스트리밍을 위한 방법 및 시스템

Country Status (5)

Country Link
US (3) US9437087B2 (ko)
EP (2) EP2806353B1 (ko)
JP (2) JP6411069B2 (ko)
KR (1) KR102176391B1 (ko)
CN (2) CN109876431A (ko)

Families Citing this family (38)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2806353B1 (en) * 2013-05-24 2018-07-18 Immersion Corporation Method and system for haptic data encoding
US9652945B2 (en) * 2013-09-06 2017-05-16 Immersion Corporation Method and system for providing haptic effects based on information complementary to multimedia content
US9576445B2 (en) 2013-09-06 2017-02-21 Immersion Corp. Systems and methods for generating haptic effects associated with an envelope in audio signals
US9619980B2 (en) 2013-09-06 2017-04-11 Immersion Corporation Systems and methods for generating haptic effects associated with audio signals
US9711014B2 (en) 2013-09-06 2017-07-18 Immersion Corporation Systems and methods for generating haptic effects associated with transitions in audio signals
US9349378B2 (en) * 2013-11-19 2016-05-24 Dolby Laboratories Licensing Corporation Haptic signal synthesis and transport in a bit stream
KR20170030510A (ko) 2014-07-07 2017-03-17 임머숀 코퍼레이션 제2 스크린 햅틱
US10268286B2 (en) 2014-12-23 2019-04-23 Immersion Corporation Controlling power distribution to haptic output devices
KR101790892B1 (ko) * 2016-05-17 2017-10-26 주식회사 씨케이머티리얼즈랩 음향 신호를 촉각 신호로 변환하기 방법 및 이를 이용하는 햅틱 장치
EP3267288A1 (en) * 2016-07-08 2018-01-10 Thomson Licensing Method, apparatus and system for rendering haptic effects
JP2018060313A (ja) * 2016-10-04 2018-04-12 ソニー株式会社 受信装置および方法、送信装置および方法、並びにプログラム
CN106454365B (zh) * 2016-11-22 2018-07-10 包磊 多媒体数据的编码、解码方法及编码、解码装置
US11290755B2 (en) * 2017-01-10 2022-03-29 Qualcomm Incorporated Signaling data for prefetching support for streaming media data
US10075251B2 (en) 2017-02-08 2018-09-11 Immersion Corporation Haptic broadcast with select haptic metadata based on haptic playback capability
CN106803982A (zh) * 2017-03-01 2017-06-06 深圳市集贤科技有限公司 一种带按摩功能的vr遥控器
US20190041987A1 (en) * 2017-08-03 2019-02-07 Immersion Corporation Haptic effect encoding and rendering system
CN107566847B (zh) * 2017-09-18 2020-02-14 浙江大学 一种将触感数据编码为视频流进行保存和传输的方法
WO2020003728A1 (ja) * 2018-06-28 2020-01-02 ソニー株式会社 符号化装置、符号化方法、復号装置、復号方法、プログラム
JP7351299B2 (ja) * 2018-07-03 2023-09-27 ソニーグループ株式会社 符号化装置、符号化方法、復号装置、復号方法、プログラム
CN113196210A (zh) * 2018-12-13 2021-07-30 索尼集团公司 信息处理装置、信息处理系统、信息处理方法和程序
CN113260488A (zh) * 2019-02-01 2021-08-13 索尼集团公司 解码装置、解码方法和程序
US10921893B2 (en) * 2019-02-04 2021-02-16 Subpac, Inc. Personalized tactile output
CN113841107A (zh) * 2019-04-26 2021-12-24 惠普发展公司,有限责任合伙企业 空间音频和触觉
US10951951B2 (en) * 2019-07-30 2021-03-16 Sony Interactive Entertainment Inc. Haptics metadata in a spectating stream
US11340704B2 (en) * 2019-08-21 2022-05-24 Subpac, Inc. Tactile audio enhancement
CN114303185A (zh) 2019-09-03 2022-04-08 索尼集团公司 控制装置、扬声器装置和声音输出方法
US10984638B1 (en) * 2019-10-17 2021-04-20 Immersion Corporation Systems, devices, and methods for encoding haptic tracks
US11282281B2 (en) * 2019-11-13 2022-03-22 At&T Intellectual Property I, L.P. Activation of extended reality actuators based on content analysis
WO2021176904A1 (ja) * 2020-03-05 2021-09-10 ソニーグループ株式会社 ビットストリーム生成方法、符号化装置、復号装置
US20230145547A1 (en) * 2020-04-29 2023-05-11 Sony Group Corporation Decoding device, decoding method, program, encoding device, and encoding method
JP2022097227A (ja) * 2020-12-18 2022-06-30 株式会社Jvcケンウッド 情報提供装置、情報提供方法、およびプログラム
CN114115538A (zh) * 2021-11-23 2022-03-01 瑞声开泰声学科技(上海)有限公司 一种触觉反馈数据处理方法、装置及计算机可读存储介质
GB2615361B (en) * 2022-02-08 2024-05-29 Sony Interactive Entertainment Europe Ltd Method for generating feedback in a multimedia entertainment system
WO2023176928A1 (ja) * 2022-03-18 2023-09-21 ソニーグループ株式会社 情報処理装置および方法
US20240129047A1 (en) * 2022-10-17 2024-04-18 Tencent America LLC Method for creating sparse isobmff haptics tracks
US20240129578A1 (en) * 2022-10-17 2024-04-18 Tencent America LLC Method and apparatus for defining frames and timed referenced network abstraction layer (nals) structure in haptics signals
US20240129579A1 (en) * 2022-10-17 2024-04-18 Tencent America LLC Isobmff haptic tracks with sample anchoring of haptic effects
WO2024096812A1 (en) * 2022-10-31 2024-05-10 Razer (Asia-Pacific) Pte. Ltd. Method and system for generating haptic effects

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090096632A1 (en) 2007-10-16 2009-04-16 Immersion Corporation Synchronization of haptic effect data in a media stream
JP2012168947A (ja) * 2011-02-11 2012-09-06 Immersion Corp 振幅値を利用した音響−触覚効果変換システム
US20120306631A1 (en) 2011-06-03 2012-12-06 Apple Inc. Audio Conversion To Vibration Patterns

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1258922C (zh) * 2000-09-22 2006-06-07 皇家菲利浦电子有限公司 细粒可分级性的最佳传输/流式顺序
US7016409B2 (en) * 2003-11-12 2006-03-21 Sony Corporation Apparatus and method for use in providing dynamic bit rate encoding
JP2006163579A (ja) * 2004-12-03 2006-06-22 Sony Corp 情報処理システム、情報処理装置及び情報処理方法
CN104063056B (zh) * 2006-04-06 2018-04-20 意美森公司 用于增强的触觉效果的系统和方法
US8378964B2 (en) * 2006-04-13 2013-02-19 Immersion Corporation System and method for automatically producing haptic events from a digital audio signal
US20090189748A1 (en) * 2006-08-24 2009-07-30 Koninklijke Philips Electronics N.V. Device for and method of processing an audio signal and/or a video signal to generate haptic excitation
US20090079690A1 (en) * 2007-09-21 2009-03-26 Sony Computer Entertainment America Inc. Method and apparatus for enhancing entertainment software through haptic insertion
US7911328B2 (en) * 2007-11-21 2011-03-22 The Guitammer Company Capture and remote reproduction of haptic events in synchronous association with the video and audio capture and reproduction of those events
EP2315441A4 (en) * 2008-07-15 2014-07-16 Sharp Kk DATA TRANSMISSION DEVICE, DATA RECEIVING DEVICE, DATA TRANSMISSION METHOD, DATA RECEIVING METHOD AND METHOD FOR CONTROLLING THE AUDIOVISUAL ENVIRONMENT
CN102227694A (zh) * 2008-10-10 2011-10-26 因特网服务有限责任公司 供触觉编码的媒体使用的触觉输出装置
US20110280398A1 (en) * 2010-05-17 2011-11-17 Anatoly Fradis Secured content distribution system
CN102208188B (zh) * 2011-07-13 2013-04-17 华为技术有限公司 音频信号编解码方法和设备
WO2013008869A1 (ja) * 2011-07-14 2013-01-17 株式会社ニコン 電子機器及びデータ生成方法
CN103765856B (zh) * 2011-09-06 2017-12-15 瑞典爱立信有限公司 用于具有多层或多个流的渐进媒体下载的装置和方法
EP2806353B1 (en) * 2013-05-24 2018-07-18 Immersion Corporation Method and system for haptic data encoding
CN104980247B (zh) * 2014-04-04 2019-11-22 北京三星通信技术研究有限公司 自适应调整调制编码方式和参考信号图样的方法、基站、终端和系统

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20090096632A1 (en) 2007-10-16 2009-04-16 Immersion Corporation Synchronization of haptic effect data in a media stream
JP2011501575A (ja) * 2007-10-16 2011-01-06 イマージョン コーポレイション 媒体トランスポートストリームにおける触覚効果データの同期化
JP2012168947A (ja) * 2011-02-11 2012-09-06 Immersion Corp 振幅値を利用した音響−触覚効果変換システム
US20120306631A1 (en) 2011-06-03 2012-12-06 Apple Inc. Audio Conversion To Vibration Patterns

Also Published As

Publication number Publication date
JP2019024228A (ja) 2019-02-14
JP2014239430A (ja) 2014-12-18
US9437087B2 (en) 2016-09-06
EP2806353B1 (en) 2018-07-18
US10085069B2 (en) 2018-09-25
US20190098368A1 (en) 2019-03-28
JP6630798B2 (ja) 2020-01-15
EP3399763A1 (en) 2018-11-07
EP2806353A1 (en) 2014-11-26
US20160345073A1 (en) 2016-11-24
CN104184721A (zh) 2014-12-03
KR20140138087A (ko) 2014-12-03
CN104184721B (zh) 2019-03-12
JP6411069B2 (ja) 2018-10-24
CN109876431A (zh) 2019-06-14
US10542325B2 (en) 2020-01-21
US20140347177A1 (en) 2014-11-27

Similar Documents

Publication Publication Date Title
KR102176391B1 (ko) 햅틱 데이터 인코딩 및 스트리밍을 위한 방법 및 시스템
US10171541B2 (en) Methods, devices, and computer programs for improving coding of media presentation description data
US11537562B2 (en) Auxiliary manifest file to provide timed metadata
EP3026916A1 (en) Method and apparatus for encoding three-dimensional content
CN113748659B (zh) 接收会话的媒体数据的方法、装置和非易失性计算机可读介质
CN113767639B (zh) 接收媒体数据的方法、装置和非易失性计算机可读介质
CN113661692B (zh) 接收媒体数据的方法、装置和非易失性计算机可读存储介质
JP7252373B2 (ja) メディアコンテンツのメディアデータを受信する方法、装置、およびコンピュータプログラム
JP2023520651A (ja) メディア・ストリーミング方法及び装置
CN115299022B (zh) 基于http的动态自适应流传输的方法和装置
JP7241874B2 (ja) カプセル化されたメディアコンテンツの利用可能な部分をシグナリングするための方法、装置、及びコンピュータプログラム
CN112188256B (zh) 信息处理方法、信息提供方法、装置、电子设备及存储介质
GB2567485A (en) Method and device for exchanging data between a web application and an associated web engine
CN113364728B (zh) 媒体内容接收方法、装置、存储介质和计算机设备
WO2023204289A1 (ja) 情報処理装置および方法
CN115362665A (zh) 用于通过http的动态自适应流传输的方法和设备
KR20230101907A (ko) 미디어 플레이백 동안 프리롤 및 미드롤 콘텐츠를 지원하기 위한 mpeg dash를 위한 방법 및 장치
CN117256136A (zh) 用于处理备选媒体表示描述的方法、设备和计算机可读介质
CN115462063A (zh) 用于通过http的动态自适应流传输的方法和设备
Suchomski Format independence provision of audio and video data in multimedia database management systems

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