KR20210079017A - 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치 - Google Patents

디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치 Download PDF

Info

Publication number
KR20210079017A
KR20210079017A KR1020190171055A KR20190171055A KR20210079017A KR 20210079017 A KR20210079017 A KR 20210079017A KR 1020190171055 A KR1020190171055 A KR 1020190171055A KR 20190171055 A KR20190171055 A KR 20190171055A KR 20210079017 A KR20210079017 A KR 20210079017A
Authority
KR
South Korea
Prior art keywords
audio
video
delay time
playback
reproduction
Prior art date
Application number
KR1020190171055A
Other languages
English (en)
Other versions
KR102306226B1 (ko
Inventor
조인제
이대희
Original Assignee
애드커넥티드 주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 애드커넥티드 주식회사 filed Critical 애드커넥티드 주식회사
Priority to KR1020190171055A priority Critical patent/KR102306226B1/ko
Publication of KR20210079017A publication Critical patent/KR20210079017A/ko
Application granted granted Critical
Publication of KR102306226B1 publication Critical patent/KR102306226B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • 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/4302Content synchronisation processes, e.g. decoder synchronisation
    • H04N21/4307Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
    • H04N21/43076Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen of the same content streams on multiple devices, e.g. when family members are watching the same movie on different devices
    • 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/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • 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/8547Content authoring involving timestamps for synchronizing content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R1/00Details of transducers, loudspeakers or microphones
    • H04R1/20Arrangements for obtaining desired frequency or directional characteristics
    • H04R1/32Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only
    • H04R1/323Arrangements for obtaining desired frequency or directional characteristics for obtaining desired directional characteristic only for loudspeakers

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • Otolaryngology (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법에 관한 것으로서, 네트워크에 연결된 복수의 커넥티드 장치가 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송하는 단계, 비디오 재생 듀티 사이클 동안 비디오 재생 지연 시간 리스트 또는 비디오 재생 싱크 타임스탬프를 수신하는 단계, 오디오 재생 듀티 사이클 동안 가상 동기화 오디오 지연거리, 커넥티드 장치들의 오디오 지연거리, 스윗 스팟 위치, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프 중 적어도 하나 이상을 수신하는 단계, 상기 비디오 재생 듀티 사이클 동안 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 결정하고, 상기 비디오 재생 지연 시간 보정량을 고려하여 상기 비디오 재생 싱크 타임스탬프를 보정하는 단계, 및 상기 오디오 재생 듀티 사이클 동안 상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 상기 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정하는 단계를 포함하는 것을 특징으로 하며, 슬레이브 장치와 마스터 장치를 포함한 커넥티드 장치들이 스윗 스팟으로부터 각각 다른 거리만큼 떨어져 있는 경우에도 시청자가 커넥티드 장치들로부터 같은 비디오와 오디오를 시청할 수 있다.

Description

디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치{Method of video/audio playback synchronization of digital contents and apparatus using the same}
본 발명은 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법에 관한 것으로서, 더욱 상세하게는 슬레이브 장치와 마스터 장치를 포함한 커넥티드 장치들이 스윗 스팟으로부터 각각 다른 거리만큼 떨어져 있는 경우에도 시청자가 커넥티드 장치들로부터 같은 비디오와 오디오를 시청할 수 있는, 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치에 관한 것이다.
일반적으로 오디오 콘텐츠 및 비디오 콘텐츠의 재생 싱크(playback synchronization)를 맞추기 위해서는 마스터 장치(master device)의 마스터 클락(master clock) 및 재생 지연 시간(playback delay time)이 조절되어야 한다. 종래에는 마스터 클락을 기준으로, 모든 슬레이브 장치(slave devices)의 로컬 클락(local clock)의 동기화가 이루어졌다.
이러한 경우, 마스터 클락과 클락 편차(drift)가 큰 슬레이브 장치의 경우이거나 기계사양이 낮고 가용 리소스가 작은 슬레이브 장치는 한정된 재생 듀티 사이클 내에서 상대적으로 재생 싱크 가능한 시간이 짧아지게 된다. 이러한 문제점의 해결을 위해서 슬레이브 장치의 상태를 고려하여, 슬레이브 장치마다 서로 다른 기준으로, 마스터 장치와 함께 재생 지연 시간을 조절하여, 재생 동기화 수행이 필요하다.
선행특허 1(KR 10-2017-0016413 A, 2017.02.13. 공개)는 재생 동기화 방법에 관한 선행기술로서, 제1 디바이스가 재생 스케줄에 따라 컨텐츠를 재생하고, 제2 디바이스도 재생 스케줄에 따른 재생이 가능하도록 제2 디바이스에 재생 스케줄을 전송하는 것이다.
선행특허 2(KR 10-2017-0044922 A, 2017.04.26)는 멀티스크린 장치간 콘텐츠 동기화 재생 방법에 관한 선행기술로서, 제 1 멀티 스크린 장치가 제 2 멀티 스크린 장치로 동기화를 위한 콘텐츠를 요청하고, 상기 제 2 멀티 스크린 장치가 제 1 멀티 스크린 장치로 콘텐츠 및 동기정보를 제공하면, 상기 동기정보를 이용하여 상기 제 1 멀티 스크린 장치에서 콘텐츠 동기화 재생을 수행하는 것이 개시되어 있다.
그러나 선행특허 1과 2를 살펴보면, 종래와 같이 어느 하나의 장치가 동기화 정보를 다른 장치로 전송함으로써, 복수의 장치가 콘텐츠 동기화를 하고 있을 뿐, 각 장치별로 서로 다른 기계사양과 가용 리소스와 같은 특성을 반영하면서 복수의 장치의 지연시간을 줄이고 있지는 못하는 실정이다.
따라서, 본 발명이 해결하고자 하는 첫 번째 과제는 슬레이브 장치와 마스터 장치를 포함한 커넥티드 장치들이 스윗 스팟으로부터 각각 다른 거리만큼 떨어져 있는 경우에도 시청자가 커넥티드 장치들로부터 같은 비디오와 오디오를 시청할 수 있는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법을 제공하는 것이다.
본 발명이 해결하고자 하는 두 번째 과제는 커넥티드 장치의 이동 속도를 고려하여 디지털 콘텐츠의 샘플링 레이트를 동적으로 조정함으로써, 스윗 스팟까지의 오디오 도달시간에 영향을 미치는 도플러 효과를 제거할 수 있는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치를 제공하는 것이다.
또한, 상기된 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공하는데 있다.
본 발명은 상기 첫 번째 과제를 달성하기 위하여, 네트워크에 연결된 복수의 커넥티드 장치가 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송하는 단계; 비디오 재생 듀티 사이클 동안 비디오 재생 지연 시간 리스트 또는 비디오 재생 싱크 타임스탬프를 수신하는 단계; 오디오 재생 듀티 사이클 동안 가상 동기화 오디오 지연거리, 커넥티드 장치들의 오디오 지연거리, 스윗 스팟 위치, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프 중 적어도 하나 이상을 수신하는 단계; 상기 비디오 재생 듀티 사이클 동안 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 결정하고, 상기 비디오 재생 지연 시간 보정량을 고려하여 상기 비디오 재생 싱크 타임스탬프를 보정하는 단계; 및 상기 오디오 재생 듀티 사이클 동안 상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 상기 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정하는 단계를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법을 제공한다.
본 발명의 일 실시 예에 의하면, 상기 가상 동기화 오디오 지연거리는 적어도 하나 이상의 스윗 스팟 위치와 복수의 커넥티드 장치들의 상대적인 위치차의 합을 최소로 만드는 거리를 고려하여 상기 스윗 스팟 위치 별로 결정되는 것이 바람직하다.
또한, 상기 복수의 커넥티드 장치들 또는 상기 마스터 장치 중 적어도 하나의 장치에 포함된 지향성 서브 스피커들을 활성화시키는 단계를 더 포함하고, 상기 지향성 서브 스피커들은 상기 적어도 하나 이상의 스윗 스팟 위치들 중 적어도 하나의 방향으로 배치될 수 있다.
상기 복수의 커넥티드 장치들 또는 상기 마스터 장치와 각 스윗 스팟 위치 간의 상대적인 거리 변화가 있는 경우, 오디오의 동기화를 위해 상기 복수의 커넥티드 장치들 또는 상기 마스터 장치가 출력하는 오디오 콘텐츠의 주파수를 조정하는 단계를 더 포함하는 것이 바람직하다.
본 발명의 다른 실시 예에 의하면, 네트워크에 연결된 마스터 장치가 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 커넥티드 장치들로부터 수신하는 단계; 상기 커넥티드 장치들로부터 수신한 비디오 재생 지연 시간의 리스트 및 상기 비디오 재생 지연 시간 리스트로부터 생성된 비디오 재생 싱크 타임스탬프를 상기 커넥티드 장치들로 전송하는 단계; 및 상기 커넥티드 장치들로부터 수신한 위치 정보를 이용하여 생성된 가상 동기화 오디오 지연거리, 오디오 재생 싱크 타임스탬프, 각 커넥티드 장치의 오디오 지연거리, 스윗 스팟 위치, 또는 오디오 재생 지연시간 리스트를 상기 커넥티드 장치들로 전송하는 단계를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법을 제공한다.
본 발명의 또 다른 실시 예에 의하면, 네트워크에 연결된 복수의 슬레이브 장치가 각각의 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송하는 단계; 상기 마스터 장치는 상기 슬레이브 장치들로부터 수신한 비디오 재생 지연 시간을 이용하여 비디오 재생 지연 시간 리스트를 생성하고, 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 싱크 타임스탬프를 생성하는 단계; 상기 마스터 장치는 상기 슬레이브 장치들로부터 수신한 위치 정보를 이용하여 가상 동기화 오디오 지연거리를 생성하고, 상기 생성된 가상 동기화 오디오 지연거리를 이용하여 오디오 재생 싱크 타임스탬프를 생성하는 단계; 상기 슬레이브 장치들이 상기 마스터 장치로부터 비디오 재생 듀티 사이클마다 상기 비디오 재생 지연 시간 리스트 또는 상기 비디오 재생 싱크 타임스탬프를 수신하는 단계; 상기 슬레이브 장치들이 상기 마스터 장치로부터 상기 가상 동기화 오디오 지연거리, 상기 오디오 재생 싱크 타임스탬프, 각 장치의 오디오 지연거리, 스윗 스팟 위치, 또는 오디오 재생 지연시간 리스트 중 적어도 하나를 수신하는 단계; 상기 슬레이브 장치들은 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 각각 결정하고, 상기 비디오 재생 지연 시간 보정량을 고려하여 각각의 비디오 재생 싱크 타임스탬프를 보정하는 단계; 및 상기 가상 동기화 오디오 지연거리, 마스터 장치와 슬레이브 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정하는 단계를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법을 제공한다.
한편, 상기 스윗 스팟이 하나 이상 존재하는 경우, 모든 스윗 스팟이 일정 반경내에 오디오 반사파가 발생할 수 있는 위치로 결정되거나, 일정 반경내에 오디오 반사파가 발생할 수 없는 위치로 결정되는 것이 바람직하다.
본 발명은 상기 두 번째 과제를 달성하기 위하여, 네트워크에 연결된 커넥티드 장치가 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송하는 전송부; 비디오 재생 듀티 사이클 동안 비디오 재생 지연 시간 리스트 또는 비디오 재생 싱크 타임스탬프를 수신하고, 오디오 재생 듀티 사이클 동안 가상 동기화 오디오 지연거리, 커넥티드 장치들의 오디오 지연거리, 스윗 스팟 위치, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프 중 적어도 하나 이상을 수신하는 수신부; 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 결정하는 비디오 재생 지연시간 보정량 결정부; 상기 비디오 재생 지연 시간 보정량을 고려하여 상기 비디오 재생 싱크 타임스탬프를 보정하는 비디오 타임스탬프 보정부; 및 상기 오디오 재생 듀티 사이클 동안 상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정하는 오디오 타임스탬프 보정부를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치를 제공한다.
상기 가상 동기화 오디오 지연거리는 적어도 하나 이상의 스윗 스팟 위치와 커넥티드 장치들의 상대적인 위치를 고려하여 상기 스윗 스팟 위치 별로 결정되는 것이 바람직하다.
상기 커넥티드 장치에 포함된 지향성 서브 스피커들은 상기 적어도 하나 이상의 스윗 스팟 위치들 중 적어도 하나의 방향으로 배치될 수 있다.
또한, 상기 커넥티드 장치와 각 스윗 스팟 위치 간의 상대적인 거리 변화가 있는 경우, 각 스윗 스팟에서 듣는 오디오의 동기화를 위해 상기 커넥티드 장치가 출력하는 오디오 콘텐츠의 주파수를 조정하는 오디오 샘플링 레이트 결정부를 더 포함할 수 있다.
본 발명의 다른 실시 예에 의하면, 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 네트워크에 연결된 커넥티드 장치들로부터 수신하는 수신부; 상기 커넥티드 장치들로부터 수신한 비디오 재생 지연 시간의 리스트 및 상기 재생 지연 시간 리스트로부터 생성된 비디오 재생 싱크 타임스탬프를 상기 커넥티드 장치들로 전송하는 전송부; 상기 커넥티드 장치들로부터 수신한 위치 정보를 이용하여 가상 동기화 오디오 지연거리를 생성하는 가상 동기화 지연거리 생성부; 및 상기 생성된 가상 동기화 오디오 지연거리를 이용하여 오디오 재생 싱크 타임스탬프를 생성하는 오디오 재생싱크 타임스탬프 생성부; 상기 전송부는 상기 가상 동기화 오디오 지연거리, 상기 오디오 재생 싱크 타임스탬프, 각 장치의 오디오 지연거리, 스윗 스팟 위치, 또는 오디오 재생 지연시간 리스트를 상기 커넥티드 장치들로 전송하는 것을 특징으로 하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치를 제공한다.
본 발명의 또 다른 실시 예에 의하면, 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송하는 전송부; 상기 마스터 장치로부터 비디오 재생 듀티 사이클 동안 상기 비디오 재생 지연 시간 리스트 또는 상기 비디오 재생 싱크 타임스탬프를 수신하고, 오디오 재생 듀티 사이클 동안 상기 마스터 장치로부터 가상 동기화 오디오 지연거리가상 동기화 오디오 지연거리, 커넥티드 장치들의 오디오 지연거리, 스윗 스팟 위치, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프 중 적어도 하나를 수신하는 수신부; 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 결정하는 비디오 재생지연시간 보정량 결정부; 상기 비디오 재생 지연 시간 보정량을 고려하여 상기 비디오 재생 싱크 타임스탬프를 보정하는 비디오 타임스탬부 보정부; 및 상기 오디오 재생 듀티 사이클 동안 상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정하는 오디오 타임스탬프 보정부를 포함하는 적어도 하나 이상의 커넥티드 장치; 및 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 상기 적어도 하나 이상의 커넥티드 장치로부터 수신하는 수신부; 상기 적어도 하나 이상의 커넥티드 장치들로부터 수신한 비디오 재생 지연 시간으로부터 비디오 재생 지연 시간 리스트를 생성하는 재생지연시간 리스트 생성부; 상기 생성된 비디오 재생 지연 시간 리스트로부터 비디오 재생 싱크 타임스탬프를 생성하는 비디오 재생싱크 타임스탬프 생성부; 상기 적어도 하나 이상의 커넥티드 장치들로부터 수신한 위치 정보와 상기 스윗 스팟 위치를 이용하여 가상 동기화 오디오 지연거리를 생성하는 가상 동기화 지연거리 생성부; 상기 생성된 가상 동기화 오디오 지연거리를 이용하여 오디오 재생 싱크 타임스탬프를 생성하는 오디오 재생싱크 타임스탬프 생성부; 및 상기 생성된 비디오 재생 싱크 타임스탬프 및 상기 오디오 재생 싱크 타임스탬프를 상기 적어도 하나 이상의 커넥티드 장치로 전송하는 전송부를 포함하는 마스터 장치를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 시스템을 제공한다.
상기 다른 기술적 과제를 해결하기 위하여, 본 발명은 상기된 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록 매체를 제공한다.
본 발명에 따르면, 슬레이브 장치와 마스터 장치를 포함한 커넥티드 장치들이 스윗 스팟으로부터 각각 다른 거리만큼 떨어져 있는 경우에도 시청자가 커넥티드 장치들로부터 같은 비디오와 오디오를 시청할 수 있다.
또한, 본 발명에 따르면, 커넥티드 장치의 이동 속도를 고려하여 디지털 콘텐츠의 샘플링 레이트를 동적으로 조정함으로써, 스윗 스팟까지의 오디오 도달시간에 영향을 미치는 도플러 효과를 제거할 수 있다.
도 1은 본 발명의 일 실시예에 따른 커넥티드 장치 간 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 과정을 도시한 것이다.
도 2는 네트워크로 연결된 마스터 장치와 슬레이브 장치들 간의 클락 정보를 도시한 것이다.
도 3은 본 발명의 바람직한 일 실시 예에 따른 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치를 나타낸 블록도이다.
도 4는 본 발명의 바람직한 일 실시 예에 따른 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 마스터 장치를 나타낸 블록도이다.
도 5는 복수의 커넥티드 장치에서 스윗 스팟 위치를 기준으로 비디오 및 오디오 동기화를 수행하는 경우를 도시한 것이다.
도 6은 커넥티드 장치와 스윗 스팟의 상대적인 움직임에 따른 주파수 변화를 도시한 것이다.
도 7은 음원이 이동함에 따른 파장의 길이변화를 나타낸 것이다.
도 8은 본 발명의 바람직한 일 실시 예에 따른 슬레이브 장치에서 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법의 흐름도이다.
도 9는 본 발명의 바람직한 일 실시 예에 따른 마스터 장치가 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법의 흐름도이다.
도 10은 본 발명의 바람직한 다른 실시 예에 따른 슬레이브 장치에서 디지털 콘텐츠의 비디오 재생 동기화를 맞추는 방법의 흐름도이다.
도 11은 본 발명의 바람직한 다른 실시 예에 따른 마스터 장치에서 디지털 콘텐츠의 비디오 재생 동기화를 맞추는 방법의 흐름도이다.
도 12는 스윗 스팟 주변의 재생 사운드 환경을 고려하는 경우이다.
복수의 커넥티드 장치에서 동일한 오디오를 재생하는 경우, 청취자에 위치에 따라서 오디오 재생 지연이 발생하고, 결과적으로 오디오 하울링(sound howling, 동기화가 맞지 않아 발생하는 잡음)이 발생한다. 따라서 이러한 오디오 하울링을 제거하기 위해서는, 모든 커넥티드 장치간의 오디오 재생시간 동기화가 필요하다.
오디오 하울링이 제거된 청취자의 위치인 스윗 스팟(sweet spot)이 선정되면, 모든 오디오 재생기기의 위치와 스윗 스팟까지의 오디오가 도달하는 시간을 고려하여 인위적인 오디오 재생 지연을 생성하는 것이 바람직하다.
결과적으로 영상 시청자에게 다수의 커넥티드 장치에서 동일한 비디오를 보여주고, 영상 시청자와 커넥티드 장치의 위치정보를 고려하여 오디오 지연시간(audio delay time)을 조정함으로써, 시청자가 잡음없는 오디오를 들을 수 있도록 할 필요가 있다.
또한 최근에는 AI 스피커와 같이 하나의 스피커에 다수의 방향성 스피커(directional speaker)가 내장되어 있는 스피커가 출시되고 있다. 따라서 상기 방향성 스피커를 이용하면 하나의 스피커에서도 복수의 스윗 스팟을 고려하여 오디오 동기화가 가능하다. 또한 커넥티드 장치가 모바일 장치인 경우, 움직임을 고려해야 하므로, 상호 움직임을 고려하여, 도플러 효과(Doppler-effect)를 고려하여 오디오 동기화가 필요하다.
이하 첨부된 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 본 발명을 용이하게 실시할 수 있는 바람직한 실시 예를 상세히 설명한다. 그러나 이들 실시 예는 본 발명을 보다 구체적으로 설명하기 위한 것으로, 본 발명의 범위가 이에 의하여 제한되지 않는다는 것은 당업계의 통상의 지식을 가진 자에게 자명할 것이다.
본 발명이 해결하고자 하는 과제의 해결 방안을 명확하게 하기 위한 발명의 구성을 본 발명의 바람직한 실시 예에 근거하여 첨부 도면을 참조하여 상세히 설명하되, 도면의 구성요소들에 참조번호를 부여함에 있어서 동일 구성요소에 대해서는 비록 다른 도면상에 있더라도 동일 참조번호를 부여하였으며 당해 도면에 대한 설명시 필요한 경우 다른 도면의 구성요소를 인용할 수 있음을 미리 밝혀둔다. 아울러 본 발명의 바람직한 실시 예에 대한 동작 원리를 상세하게 설명함에 있어 본 발명과 관련된 공지 기능 혹은 구성에 대한 구체적인 설명 그리고 그 이외의 제반 사항이 본 발명의 요지를 불필요하게 흐릴 수 있다고 판단되는 경우, 그 상세한 설명을 생략한다.
도 1은 본 발명의 일 실시예에 따른 커넥티드 장치 간 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 과정을 도시한 것이다.
도 1을 참조하면, 마스터 장치(100)와 복수의 슬레이브 장치(200, 제1 슬레이브 장치~제n 슬레이브 장치) 간에 네트워크로 연결되어 있는 상태에서 동기화를 위한 정보를 송수신하고 있다.
110 단계에서 복수의 슬레이브 장치(200)는 네트워크로 연결된 마스터 장치(100)로 비디오 재생 지연 시간 정보와 오디오 재생 지연 시간 정보를 전송한다. 네트워크를 통해 슬레이브 장치와 슬레이브 장치, 슬레이브 장치와 마스터 장치 사이에 무선 연결되어 있으므로, 복수의 슬레이브 장치(200)는 커넥티드 장치가 될 수 있다. 또한, 상기 커넥티드 장치는 마스터 장치를 포함할 수 있다. 각각의 슬레이브 장치의 비디오 또는 오디오 재생 듀티 사이클은 재생하는 콘텐츠의 프레임 레이트를 고려하여 결정되는 것이 바람직하다.
120 단계에서 복수의 슬레이브 장치(200)는 각 슬레이브 장치의 위치 정보를 마스터 장치로 전송한다.
130 단계에서 마스터 장치(100)는 110 단계에서 수신한 비디오 재생 지연 시간 정보를 이용하여 전체 슬레이브 장치(200)의 비디오 재생 지연 시간 리스트 정보 및 비디오 재생 싱크 타임스탬프를 생성한다.
135 단계에서 마스터 장치(100)는 120 단계에서 수신한 위치 정보와 오디오 재생 지연 시간을 이용하여 가상 동기화 오디오 지연거리, 스윗 스팟 위치, 각 슬레이브 장치의 오디오 지연거리, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프를 생성한다.
140 단계에서 각 슬레이브 장치(200)는 마스터 장치(100)로부터 상기 생성된 비디오 재생 지연 시간 리스트 정보 및 비디오 재생 싱크 타임스탬프를 수신한다.
150 단계에서 각 슬레이브 장치(200)는 마스터 장치(100)로부터 상기 생성된 가상 동기화 오디오 지연거리, 스윗 스팟 위치, 각 슬레이브 장치의 오디오 지연거리, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프를 수신한다.
160 단계에서 각 슬레이브 장치(200)는 마스터 장치(100)에서 수신한 비디오 재생 지연 시간 리스트 및 비디오 재생 듀티 사이클을 이용하여, 비디오 재생 지연 시간 보정량을 상기 비디오 재생 듀티 사이클 내에서 결정한다. 상기 비디오 재생 지연 시간 리스트로부터 리스트에 있는 마스터 장치의 재생 지연 시간과 각각의 슬레이브 재생 지연 시간의 차이를 나타내는 델타 재생 지연 시간 리스트가 생성될 수 있다.
170 단계에서 각 슬레이브 장치(200)는 상기 비디오 재생 지연 시간 보정량을 고려하여 상기 비디오 재생 싱크 타임스탬프를 보정 한다. 비디오 재생 싱크 타임스탬프를 보정한이후에도 각 슬레이브 장치의 재생 지연 시간의 시간 차이는 재생 듀티 사이클 내에서 이루어지는 것이 바람직하다.
180 단계에서 각 슬레이브 장치(200)는 상기 오디오 재생 듀티 사이클 동안 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정한다.
비디오 데이터를 포함한 디지털 콘텐츠가 특정 비디오 타임스탬프에 비디오가 동기화되어 재생되도록 설정되면, 상기 비디오 타임스탬프, 왓쳐(watcher)의 위치, 또는 각 슬레이브 장치의 위치를 고려하여, 오디오 재생 시간을 결정하는 것이 바람직하다. 이때 각 슬레이브 장치는 오디오 지연 시간(audio-delay-time)을 적용함으로써, 리스너에게 전달되는 오디오 도달시간의 차이를 제거할 수 있다.
190 단계에서 각 슬레이브 장치(200)는 도플러 효과를 고려하여 오디오 샘플링 레이트를 결정한다.
오디오 도달시간에 영향을 미치는 도플러 효과를 제거하기 위해, 현재 슬레이브 장치의 이동 속도를 고려하여 디지털 콘텐츠의 샘플링 레이트를 동적으로 조정하는 것이 바람직하다. 상기 샘플링 레이트의 조정은 이동하는 슬레이브 장치의 위치 변화에 따른 오디오 주파수의 변화를 보정할 수 있다.
한편, 마스터 장치와 슬레이브 장치간에 디지털 콘텐츠의 재생 동기화 이후, 사용자의 피드백 신호를 수신하고, 재생 듀티 사이클 동안 피드백 신호의 송신이 이루어지면, 다수의 장치에서 발생할 수 있는 시간 지연없이 사용자 피드백을 효과적으로 처리할 수 있다.
도 2는 네트워크로 연결된 마스터 장치와 슬레이브 장치들 간의 클락 정보를 도시한 것이다.
도 2를 참조하면, 마스터 장치는 마스터 클락(110)에 따라 디지털 콘텐츠를 재생하고, 슬레이브 장치는 각 슬레이브 로컬 클락(210, 220, 230, 및 240)에 따라 디지털 콘텐츠를 재생한다.
마스터 장치의 마스터 클락(110)에서 특정 디지털 콘텐츠가 재생되는 시점을 111로 표시하고, 각 슬레이브 장치의 슬레이브 로컬 클락(210 내지 240)을 기준으로 특정 디지털 콘텐츠가 재생되는 시점을 211, 221, 231, 241로 표시하기로 한다.
도 2에 도시된 클락 정보를 참조하면, 마스터 장치보다 제1 슬레이브 장치와 제4 슬레이브 장치는 특정 디지털 콘텐츠가 빨리 재생되고, 제2 슬레이브 장치와 제3 슬레이브 장치는 늦게 재생되는 것을 나타낸다.
비디오 재생 지연 시간은 마스터 장치 및 슬레이브 장치들에서 비디오 재생 듀티 사이클 동안 재생된 디지털 콘텐츠의 타임스탬프 정보를 고려하여 계산되는 것이 바람직하다. 즉, 마스터 장치 및 슬레이브 장치들은 각각의 클락 정보(210 내지 240)를 고려하여 비디오 재생 듀티 사이클 동안 재생된 디지털 콘텐츠의 타임스탬프의 차이를 계산하여 비디오 재생 지연 시간을 계산한다.
즉, 비디오 재생 지연 시간은 하나의 비디오 재생 듀티 사이클 내에 존재하는, 또는 서로 다른 비디오 재생 듀티 사이클에 존재하는 디지털 콘텐츠의 두 개의 타임 스탬프 (A), (B)를 고려하여 아래와 같이 정의할 수 있다. 서로 다른 재생 듀티 사이클에 타임 스탬프가 존재하는 경우에는, 타임 스탬프 (A), (B) 차이값으로 어떤 재생 듀티 사이클에서 디지털 콘텐츠 재생 동기화가 이루어져야 하는지 계산될 수 있다.
재생 지연 시간 = ((제n 슬레이브 로컬 클락(디지털 콘텐츠의 타임 스탬프(B) - 제n 슬레이브 로컬 클락(디지털 콘텐츠의 타임 스탬프(A)) - ((디지털 콘텐츠의 타임스탬프(B) - 디지털 콘텐츠의 타임스탬프(A))가 된다.
상기 타임 스탬프(A), (B)는 하나의 재생 듀티 사이클 내에 존재하며, B가 A보다 큰 값을 갖는 경우이다.
타임 스탬프는 디지털 콘텐츠에 포함된 시간으로, 비디오 디지털 콘텐츠의 경우 특정 프레임을 재생하는 시간을 의미한다.
제n 슬레이브 로컬 클락(디지털 콘텐츠의 타임 스탬프(B)는 디지털 콘텐츠의 타임 스탬프 (B)가 재생되는 로컬 클락을 의미하므로, 제n 슬레이브 로컬 클락(디지털 콘텐츠의 타임 스탬프(B) - 제n 슬레이브 로컬 클락(디지털 콘텐츠의 타임 스탬프(A)는 제n 슬레이브 장치에서 타임 스탬프(B)와 타임스탬프(A)를 재생한 로컬 클락의 차를 나타낸다.
또한, 디지털 콘텐츠의 타임스탬프(B) - 디지털 콘텐츠의 타임스탬프(A)는 타임스탬프(B)와 타임스탬프(A)의 절대적 시간 차이를 나타낸다.
따라서, 재생 지연 시간은 두 개의 타임스탬프의 로컬 클럭의 차에 타임스탬프의 차를 반영함으로써, 계산될 수 있다.
마스터 장치는 일정한 재생 듀티 사이클마다 슬레이브 장치에서 수신한 비디오 재생 지연 시간 리스트, 비디오 재생 지연 시간들 간의 시간 차이, 또는 델타 비디오 재생 지연 시간 리스트(마스터 비디오 재생 지연 시간과 각각의 슬레이브 비디오 재생 지연 시간의 차이를 말한다. 또는 각 장치 간의 재생 지연 시간의 차이의 합을 가장 작게 만드는 버추얼 마스터 장치를 선정하고, 버추얼 마스터 장치의 재생 지연 시간과 각 슬레이브 장치의 재생 지연 시간의 차이로 계산된 재생 지연 시간 리스트 말한다. 이러한 경우, 재생 지연 시간을 보정하기 위한 버추얼 마스터 장치는 듀티 사이클 마다 변경될 수 있다.) 중 적어도 하나 이상을 생성한 후, 모든 슬레이브 장치로 브로드캐스팅한다. 이때, 브로드캐스팅은 재생 듀티 사이클마다 반복적으로 이루어지는 것이 바람직하다.
마스터 장치는 비디오 재생 지연 시간 리스트 정보를 이용하여 네트워크에 연결된 슬레이브 장치들이 재생 듀티 사이클 동안 재생 동기화의 문제가 없도록 비디오 재생 싱크 타임스탬프(playback sync timestamp)를 계산하여 브로드캐스팅하는 것이 바람직하다.
상기 브로드캐스팅된 비디오 재생 싱크 타임스탬프는 다음 재생 듀티 사이클 동안 디지털 콘텐츠에 재생 지연 시간을 적용하는 기준이 된다.
마스터 장치가 재생 싱크 타임 스탬프를 브로드캐스팅하는 이유는 각 슬레이브 장치의 재생 지연 시간 정보를 이용하여 몇 번의 재생 듀티 사이클 이후에 싱크를 맞추는 것이 효율적인지 확인할 수 있기 때문이다. 따라서, 마스터 장치가 모든 슬레이브 장치들의 재생 지연 시간을 이용하여 모든 장치의 재생 지연 시간 차이를 계산하고, 계산된 재생 지연 시간 차이가 하나의 재생 듀티 사이클 내에 포함되는 경우에는 추가적인 재생 지연 시간 보정이 필요하지 않으므로 마스터 장치가 재생 싱크 타임 스탬프를 브로드캐스팅할 필요가 없게 된다.
그러나 마스터 장치가 재생 싱크 타임 스탬프를 브로드캐스팅할 필요가 없다고 할지라도 슬레이브 장치들은 각자의 재생 지연 시간을 스트로브 신호를 통해 마스터 장치로 보내 마스터 장치가 모니터링할 수 있도록 할 수 있다.
반면, 슬레이브 장치는 수신한 비디오 재생 지연 시간 리스트 또는 델타 비디오 재생 지연 시간 리스트를 이용하여 슬레이브 장치의 비디오 재생 지연 시간 보정량을 계산할 수 있다.
슬레이브 장치의 비디오 재생 지연 시간 보정량의 계산은 마스터 장치로부터 전달되는 비디오 재생 지연 시간 보정량이 아니라 각 슬레이브 장치에서 계산되는 것이 바람직하나, 마스터 장치로부터 비디오 재생 지연 시간 보정량이 전달되는 것도 가능하다.
도 2의 제3 슬레이브 로컬 클락(230)을 통해 비디오 재생 지연 시간, 및 비디오 재생 지연 시간 보정량을 보다 상세히 살펴보기로 한다.
제3 슬레이브 장치의 제3 슬레이브 로컬 클락(230)을 살펴보면, 비디오 재생 지연 시간(232)이 해당 듀티 사이클을 벗어나 있다.
이때, 제3 슬레이브 장치는 마스터 장치의 비디오 재생 지연 시간을 고려하여 비디오 재생 지연 시간 보정량을 계산하지 않고, 네트워크에 연결된 마스터 장치와 슬레이브 장치의 비디오 재생 지연 시간 차이 리스트 또는 델타 비디오 재생 지연 시간 리스트의 평균값을 이용하여 평균 재생 지연 시간을 계산할 수 있다. 상기 계산된 평균 재생 지연 시간(233)과 각 장치의 재생 지연 시간(232)과의 차(234)가 제3 슬레이브 장치의 재생 지연 시간 보정량(235)으로 적용될 수 있다.
각 슬레이브 장치에서는 상기 재생 지연 시간 보정량 만큼 재생해야할 타임스탬프 정보를 보정해야 한다. 재생 시간 보정량이 큰 경우는, 재생 지연 시간이 큰 경우이므로, 다른 슬레이브 기기보다 이전의 디지털 컨텐츠의 타임 스탬프를 재생하고 있는 경우이다. 따라서 이러한 경우에는 재생할 디지털 컨텐츠를 다른 기기보다 미리 재생하는 것이 필요하다. 따라서 현재의 디지털 컨텐츠의 재생 위치, 즉 타임스탬프를 변경하여 저장한 후, 재생한다.
그리고 일정 듀티 사이클마다, 이전에 계산된 타임스탬프와 현재 타임스탬프를 이용한 재생 로컬 클락을 계산하고, 재생 지연 시간을 계산하여 마스터 기기에 송신한다. 마스터 기기는 수신한 재생 지연 시간의 크기를 모니터링하여, 재생 동기화를 위한 브로드캐스팅 신호를 송신 여부를 결정할 수 있다.
다른 실시 예로서, 상기 평균 재생 지연 시간이 재생 지연 시간 보정량(235)으로 적용될 수 있다.
이 경우 마스터 장치도 슬레이브 장치에 적용된 비디오 재생 지연 시간 보정량과 동일한 보정량을 적용하게 되므로, 네트워크에 연결된 마스터 장치와 슬레이브 장치의 재생 시간 차이는 줄어들게 된다.
또한 이렇게 조정된 네트워크에 연결된 마스터 장치와 슬레이브 장치의 델타 비디오 재생 지연 시간 리스트에 있는 값들간의 모든 차이는 재생 듀티 사이클보다 보다 작아야 하고, 재생 듀티 사이클 내에서 조정되어야 한다. 따라서 재생 듀티 사이클 동안, 마스터 장치와 슬레이브 장치들간에 비동기적으로 비디오 재생시간의 시간 차이를 상대적으로 조정하므로, 다음 재생 듀티 사이클에서는 상대적인 시간 차이가 줄어들게 되고, 모든 장치들 간에 안정적으로 비디오 재생 동기화 수행이 가능하다.
이러한 조건을 이용하여, 마스터 장치는 비디오 재생 싱크 타임스탬프(playback sync timestamp)를 설정할 수 있다.
제3 슬레이브 장치는 다른 장치들보다 긴 비디오 재생 지연 시간(232)을 가지므로, 마스터 장치가 설정한 비디오 재생 싱크 타임스탬프에 콘텐츠 프레임을 동기화하여 재생할 수 있는 가능성이 가장 낮다. 따라서 다수의 장치들에서 콘텐츠 재생 동기화 가능성을 높이기 위해, 비디오 재생 지연 시간 보정량을 최소화하기 위한 방법으로, 전체 재생 지연 시간 리스트의 시간 차이의 평균값을 사용하여 각각의 슬레이브 장치마다 비디오 재생 지연 시간 보정량을 계산하고, 또한 계산된 값이 재생 듀티 사이클 내에서 비디오 재생 지연 시간에 반영되도록 한다. 제3 슬레이브 로컬 클락(230)의 비디오 재생 지연 시간 보정량(235)이 재생 듀티 사이클을 벗어나는 경우, 재생 듀티 사이클 범위로 다시 조정된 것을 확인할 수 있다.
마스터 장치는 상기 비디오 재생 지연 시간 보정량 조건을 반영하여, 미리 정의된 재생 듀티 사이클 내에서 비디오 재생 싱크 타임스탬프를 선정할 수 있다. 제3 슬레이브 로컬 클락(230)의 비디오 재생 지연 시간(232) 보다 작은 비디오 재생 지연 시간 보정량(235)이 적용되었고, 상기 비디오 재생 지연 시간 보정량(235)은 재생 듀티 사이클 내로 조정된 경우이다.
따라서 제3 슬레이브 로컬 클락(230)의 경우 비디오 재생 듀티 사이클의 비디오 재생 싱크 타임스탬프로 재생하는 경우, 비디오 재생 지연 시간(235)이 발생하게 된다. 또한 마스터 장치의 경우에도 비디오 재생 지연 시간 보정량을 적용하였으므로, 전체적인 델타 비디오 재생 지연 시간 리스트의 평균값은 줄어들게 된다.
재생 듀티 사이클은 재생할 콘텐츠의 해상도 및 채널 정보를 이용하여 듀티 사이클을 조절할 수 있다. 콘텐츠의 해상도가 높고, 많은 채널 정보를 포함한 경우, 네트워크 장치마다 특정 재생시간에 콘텐츠를 재생할 수 있는 확률은 상대적으로 낮아진다. 따라서 재생 콘텐츠의 해상도가 높고, 채널수가 많을수록 재생 듀티 사이클은 상대적으로 길게 마스터 장치에서 설정할 수 있다. 도 2에서는 제2 재생 듀티 사이클은 제1 재생 듀티 사이클보다 길게 설정된 것이 도시되어 있다. 이러한 재생 듀티 사이클 정의는 재생 콘텐츠의 프레임 레이트 및 채널 정보를 이용하여 마스터 장치에서 설정될 수 있다.
비디오 재생 싱크 타임스탬프는 비디오 재생 지연 시간을 고려하여 마스터 장치(100)가 설정한 각 슬레이브 장치의 재생 동기화 시간이다.
비디오 재생 지연 시간 보정량이 정해지면, 수신한 디지털 콘텐츠의 비디오 타임스탬프 값의 조정이 필요하고, 제3 슬레이브 장치는 비디오 재생 지연 시간 보정량(235)만큼 조정되어도, 다른 슬레이브 장치의 재생 지연 시간과의 차이가 발생한다.
그러나 비디오 재생 듀티 사이클에서의 비디오 재생 지연 시간(235)은 이전의 재생 듀티 사이클에서 발생한 비디오 재생 지연 시간(232)보다 줄어들게 된다. 또한 비디오 재생 지연 시간 리스트에서의 시간 차이도 줄어들게 된다. 이후 상기 과정을 반복하면서 시간 차이가 일정 임계값을 만족하는 경우, 비디오 재생 동기화를 위한 트레이닝을 종료하거나 유보할 수 있다.
상기의 네트워크에 연결된 마스터 장치 또는 슬레이브 장치들 간의 비디오 재생 지연 시간 보정량 및 비디오 재생 싱크 타임스탬프 보정은 지속적으로 재생 듀티 사이클마다 이루어져야 하는데, 동기화를 위해서는 모든 장치간에 상기 비디오 재생 지연 시간 보정량을 계산하기 위한 트레이닝 기간이 필요하다.
이후에 마스터 장치는 재트레이닝이 필요한 경우에만 재생 듀티 사이클마다 수집하는 비디오 재생 지연 시간 리스트 또는 델타 비디오 재생 지연 시간 리스트를 선택적으로 브로드캐스팅할 수 있고, 슬레이브 장치는 비디오 재생 지연 시간 리스트 또는 델타 비디오 재생 지연 시간 리스트를 수신하는 경우에 비디오 재생 지연 시간 보정량 및 비디오 재생 싱크 타임스탬프 보정을 적용할 수 있다.
마스터 장치가 선택적으로 트레이닝 기간에 비디오 재생 지연 시간 리스트 또는 델타 비디오 재생 지연 시간 리스트를 브로드캐스팅을 결정하는 경우는, 모든 장치의 델타 비디오 재생 지연 시간 리스트의 시간 차이들 중 적어도 하나의 시간 차이가 재생 듀티 사이클을 초과하는 경우이다. 이러한 경우 마스터 장치는 수신한 비디오 재생 지연 시간 리스트와 새로운 비디오 재생 싱크 타임스탬프를 브로드캐스팅하여, 슬레이브 장치의 콘텐츠 재생을 다시 동기화하도록 할 수 있다.
또한 슬레이브 장치는 항상 미리 정해진 재생 듀티 사이클동안 슬레이브 장치에서 발생된 비디오 재생 지연 시간 또는 델타 비디오 재생 지연 시간 정보를 스트로브 신호로 마스터 장치에게 송신할 수 있다.
마스터 장치가 비디오 재생 지연 시간 리스트 또는 델타 비디오 재생 지연 시간 리스트를 선택적으로 브로드캐스팅을 결정하는 또 다른 경우는 콘텐츠 프레임 레이트가 변경되는 경우이다. 통신상태가 좋지 않거나 인위적으로 콘텐츠 프레임 레이트가 조정되는 경우, 재생 듀티 사이클이 조정되어야 하고, 따라서 다수의 장치들간의 콘텐츠 재생 동기화를 위한 트레이닝이 수행되는 것이 바람직하다.
도 3은 본 발명의 바람직한 일 실시 예에 따른 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치를 나타낸 블록도이다.
도 3을 참조하면, 본 발명의 바람직한 일 실시 예에 따른 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치는 수신부(300), 비디오 재생지연시간 보정량 결정부(310), 비디오 타임스탬프 결정부(320), 비디오 재생부(330), 오디오 타임스탬프 보정부(340), 오디오 샘플링레이트 결정부(350), 오디오 재생부(360), 및 전송부(370)를 포함하여 구성된다.
수신부(300)는 비디오 재생 듀티 사이클 동안 마스터 장치로부터 비디오 재생 지연 시간 리스트 또는 비디오 재생 싱크 타임스탬프를 수신한다. 상기 수신된 비디오 재생 지연 시간 리스트는 마스터 장치가 상기 복수의 커넥티드 장치들 각각으로부터 수신한 비디오 재생 지연 시간을 이용하여 생성한 것이다. 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간들 간의 시간 차이, 또는 델타 재생 지연 시간 리스트(마스터 재생 지연 시간과 각각의 슬레이브 재생 지연 시간의 차이를 말한다) 등이 생성될 수 있다.
수신부(300)는 마스터 장치로부터 오디오 재생 듀티 사이클 동안 가상 동기화 오디오 지연거리, 커넥티드 장치들의 오디오 지연거리, 또는 스윗 스팟 위치, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프를 수신할 수 있다.
비디오 재생지연시간 보정량 결정부(310)는 상기 마스터 장치와 복수의 커넥티드 장치들 간의 재생 동기화를 맞추기 위해 상기 비디오 재생 지연 시간 리스트를 참조하여 비디오 재생 지연 시간 보정량을 결정한다. 본 발명의 실시예에 따르면, 복수의 커넥티드 장치들이 마스터 장치의 비디오 재생 지연 시간을 이용하여 재생 지연 시간 보정량을 보정하는 것이 아니라, 네트워크에 연결된 마스터 장치와 슬레이브 장치의 재생 지연 시간 차이 리스트 또는 델타 재생 지연 시간 리스트의 평균값을 이용하여 비디오 재생 지연 시간 보정량를 적용하는 것이 바람직하다. 본 발명의 실시에에서는 평균값을 이용하였으나 다른 통계값으로 대체될 수 있을 것이다.
비디오 타임스탬프 보정부(320)는 상기 비디오 재생 지연 시간 보정량을 고려하여 상기 비디오 재생 싱크 타임스탬프를 보정한다.
비디오 재생부(330)는 상기 결정된 비디오 재생 싱크 타임스탬프에 따라 디지털 콘텐츠를 재생한다.
오디오 재생지연시간 보정량 결정부(335)는 상기 오디오 재생 듀티 사이클 동안 상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 오디오 재생 지연 시간 보정량을 결정한다.
상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 또는 상기 스윗 스팟 위치를 이용하여 계산된 보정량은 도 5에서 상세히 설명하기로 한다.
또한, 도 2에서 개시한 비디오 재생 지연 시간 리스트에서 비디오 재생지연시간 보정량을 계산한 방법과 같은 방법으로 오디오 재생 지연 시간 리스트로부터 오디오 재생지연시간 보정량을 계산할 수 있다.
오디오 타임스탬프 보정부(340)는 상기 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정한다.
오디오 샘플링레이트 결정부(350)는 상기 커넥티드 장치와 각 스윗 스팟 위치 간의 상대적인 거리 변화가 있는 경우, 각 스윗 스팟에서 듣는 오디오의 동기화를 위해 오디오 재생부(360)가 출력하는 오디오 콘텐츠의 주파수를 결정한다.
오디오 재생부(360)는 상기 결정된 오디오 재생 싱크 타임스탬프 및 오디오 콘텐츠의 주파수에 따라 오디오를 재생한다.
전송부(370)는 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송한다.
도 4는 본 발명의 바람직한 일 실시 예에 따른 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 마스터 장치를 나타낸 블록도이다.
도 4를 참조하면, 본 발명의 바람직한 일 실시 예에 따른 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 마스터 장치는 수신부(400), 비디오 재생지연시간 리스트 생성부(410), 비디오 재생지연시간 보정량 계산부(420), 비디오 재생싱크 타임스탬프 생성부(430), 가상 동기화 지연거리 생성부(440), 오디오 재생싱크 타임스탬프 생성부(450), 비디오 타임스탬프 보정부(460), 비디오 재생부(470), 오디오 타임스탬프 보정부(480), 오디오 샘플링레이트 결정부(485), 오디오 재생부(490), 및 전송부(495)를 포함하여 구성된다.
수신부(400)는 재생 듀티 사이클 내에 복수의 커넥티드 장치들로부터 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 주기적으로 수신한다.
비디오 재생지연시간 리스트 생성부(410)는 상기 복수의 커넥티드 장치들 각각으로부터 수신한 재생 지연 시간을 이용하여 비디오 재생 지연 시간 리스트를 생성한다.
상기 비디오 재생 지연 시간 리스트로부터 재생 지연 시간들 간의 시간 차이, 또는 델타 재생 지연 시간 리스트(마스터 재생 지연 시간과 각각의 슬레이브 재생 지연 시간의 차이를 말한다) 등이 생성될 수 있다.
비디오 재생지연시간 보정량 계산부(420)는 상기 복수의 커넥티드 장치들 간의 재생 동기화를 맞추기 위해 상기 재생 지연 시간 리스트를 참조하여 비디오 재생 지연 시간 보정량을 계산한다. 본 발명의 실시예에 따르면, 복수의 커넥티드 장치들이 마스터 장치의 재생 지연 시간을 이용하여 재생 지연 시간 보정량을 조정하지 않는 것이 아니라, 네트워크에 연결된 마스터 장치와 슬레이브 장치의 재생 지연 시간 차이 리스트 또는 델타 재생 지연 시간 리스트의 평균값을 이용하여 재생 지연 시간 보정량를 적용하는 것이 바람직하다.
비디오 재생싱크 타임스탬프 생성부(430)는 상기 비디오 재생 지연 시간에 따라 상기 재생 동기화에 사용되는 비디오 재생 싱크 타임스탬프를 생성한다.
가상 동기화 지연거리 생성부(440)는 상기 슬레이브 장치들로부터 수신한 위치 정보를 이용하여 가상 동기화 오디오 지연거리를 생성한다.
오디오 재생싱크 타임스탬프 생성부(450)는 상기 생성된 가상 동기화 오디오 지연거리를 이용하여 오디오 재생 싱크 타임스탬프를 생성한다.
비디오 재생싱크 타임스탬프 보정부(460)는 상기 비디오 재생 지연 시간 보정량를 고려하여 상기 비디오 재생싱크 타임스탬프를 보정한다.
비디오 재생부(470)는 상기 보정된 비디오 재생싱크 타임스탬프에 따라 디지털 콘텐츠를 재생한다.
오디오 재생지연시간 보정량 결정부(475)는 상기 오디오 재생 듀티 사이클 동안 상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 오디오 재생 지연 시간 보정량을 결정한다.
상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 또는 상기 스윗 스팟 위치를 이용하여 계산된 보정량은 도 5에서 설명하기로 한다.
또한, 도 2에서 개시한 비디오 재생 지연 시간 리스트에서 비디오 재생지연시간 보정량을 계산한 방법과 같은 방법으로 오디오 재생 지연 시간 리스트로부터 오디오 재생지연시간 보정량을 계산할 수 있다.
오디오 타임스탬프 보정부(340)는 상기 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정한다.
오디오 샘플링레이트 결정부(485)는 상기 커넥티드 장치와 각 스윗 스팟 위치 간의 상대적인 거리 변화가 있는 경우, 각 스윗 스팟에서 듣는 오디오의 동기화를 위해 오디오 재생부(490)가 출력하는 오디오 콘텐츠의 주파수를 결정한다.
오디오 재생부(490)는 상기 보정된 오디오 재생 싱크 타임스탬프 및 오디오 콘텐츠의 주파수에 따라 오디오를 재생한다.
전송부(495)는 상기 슬레이브 장치들로부터 수신한 비디오 재생 지연 시간의 리스트 및 상기 재생 지연 시간 리스트로부터 생성된 비디오 재생 싱크 타임스탬프를 상기 슬레이브 장치들로 전송한다.
또한, 전송부(495)는 오디오 재생싱크 타임스탬프 생성부(450)에서 생성된 오디오 재생싱크 타임스탬프, 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트를 상기 슬레이브 장치들로 전송할 수 있다.
도 5는 복수의 커넥티드 장치에서 스윗 스팟 위치를 기준으로 비디오 및 오디오 동기화를 수행하는 경우를 도시한 것이다.
복수의 커넥티드 장치는 이동이 가능한 모바일 장치를 포함하는 장치이며, 자동차, 오토바이, 자전거, 모바일 폰, 웨어러블 디바이스 등을 포함할 수 있다.
복수의 커넥티드 장치는 무선통신으로 연결되어 있으며, 자동차의 경우 V2X를 위한 통신 표준 기술로서 DSRC방식의 WAVE(Wireless Access in Vehicular Environment)와 cellular V2X 방식의 LTE V2X를 사용하는 것이 바람직하다.
또한, 와이파이, 블루투스, 지그비, LTE, 5G, LTE-M, LPWAN, Z-WAVE 등과 같은 IoT 무선 통신 기술이 복수의 커넥티드 장치에 사용될 수 있다.
도 5를 참조하면, 복수의 커넥티드 장치 중 마스터 장치(511)가 다수의 스윗 스팟 위치(510, 520)를 선정하여 슬레이브 장치(512, 513, 514, 515)에 전송할 수 있다. 이러한 스윗 스팟 위치는 주요 관심지역에 해당되는 POI(point-of-interest) 및 실시간 이미지 분석을 통해, 이동인구밀도가 높은 지역으로 선정하는 것이 바람직하다.
도 5에서는 스윗 스팟 위치가 510과 520으로 선정된 경우이다. 이러한 경우, 커넥티드 장치(511, 512, 513, 514, 515)는 대형 디스플레이 장치와 다수의 지향성 스피커가 내장된 장치이며, 해당 커넥티드 장치는 위치변화가 없이 고정되어 있을 수도 있고, 차량과 같이 움직이는 모바일 장치에 포함될 수 있다.
또한 각 커넥티드 장치에 다수의 지향성 스피커가 내장되어 있으므로, 다수의 스윗 스팟 위치에 대해, 지향성 스피커를 작동시켜, 여러 스윗 스팟 위치에 대해 멀티 채널 오디오 동기화 수행이 가능할 것이다.
도 5를 참조하면, 스윗 스팟(510)을 기준으로 5개의 커넥티드 장치가 배치된 경우이다. 이 때, 스윗 스팟(510)을 기준으로 5대의 커넥티드 장치를 이용하여 비디오/오디오 동기화를 수행하는 경우, 스윗 스팟(510)과 모든 커넥티드 장치들(511, 512, 513, 514, 415)은 서로 다른 거리에 위치하므로 오디오 하울링(audio howling)이 발생하게 된다. 이러한 오디오 하울링의 발생 차이는 각 커넥티드 장치와 스윗 스팟 위치간의 편차에 기인한다.
하울링 발생은 스윗 스팟(510)으로부터 가장 멀리 위치한 커넥티드 장치(515)와 스윗 스팟(510) 사이의 거리에서 스윗 스팟(510)으로부터 가장 가까운 위치에 있는 커넥티드 장치(512)와 스윗 스팟(510) 사이의 거리를 뺀 값에서 오디오 속도를 나눈 값만큼 발생할 수 있다.
오디오 하울링의 발생은 줄이기 위해서는 각 커넥티드 장치와 스윗 스팟 위치 사이의 거리 차이를 고려할 필요가 있다.
이를 위해서 모든 커넥티드 장치(511, 512, 513, 514, 515)를 스윗 스팟 위치(510)와의 동일한 거리를 갖도록 가상 동기화 위치 A(virtual-sync-position A)에 위치하도록 배치하였다고 가정하고 오디오를 출력하면, 스윗 스팟 위치(510)에서는 오디오 하울링이 최소화된 오디오 동기화가 이루어진 오디오를 들을 수 있다. 스윗 스팟 위치(510)를 고려한 가상 동기화 위치 A는 아래와 같이 계산할 수 있다.
커넥티드 장치 j와 스윗 스팟 i 사이의 오디오 지연거리는 제i 스윗 스팟과 제j 커넥티드 장치 간의 거리이다. 상기 스윗 스팟과 커넥티드 장치 간의 위치정보로 지연거리정보를 알 수 있다.
Figure pat00001
여기서, i는 스윗 스팟 위치 색인, j는 커넥티드 장치 위치색인을 나타낸다.
Figure pat00002
는 다수의 커넥티드 장치와 스윗 스팟(i)간의 오디오 지연거리 중, 가장 작은 거리값을 나타낸다.
도 5를 참조하면, 가상동기화 오디오 지연거리i는 가상 동기화 위치 A와 가상 동기화 위치 B를 정의할 수 있다. 가상동기화 오디오 지연거리(530)는 가상 동기화 위치 A를 정의하는데 사용된다.
수학식 1과 같이 가상동기화 오디오 지연거리i는 커넥티드 장치 j의 위치에서 스윗스팟 i의 거리차를 최소화하기 위한 거리 조정값이다. 또한 상기 가상 동기화 오디오 지연거리i 계산시에,
Figure pat00003
의 적용없이 가상 동기화 오디오 지연거리i의 적용도 가능하며, 이러한 경우에는 오디오 지연거리ij의 평균값을 적용하는 경우이다.
한편, 보정 오디오 지연거리ij를 음파 속도로 나누면 특정 오디오 동기화를 위한 최적의 오디오 지연 시간i를 계산할 수 있다.
Figure pat00004
Figure pat00005
여기서, i는 스윗 스팟 위치의 갯수이고, j는 커넥티드 장치의 갯수이다.
상기 보정 오디오 지연 시간ij를 이용하여 각 커넥티드 장치에서 오디오 동기화를 수행할 수 있고, 상기 오디오 지연 시간ij를 고려하여, 오디오 동기화를 위한 오디오 재생 싱크 타임스탬프를 마스터 장치(511)에서 브로드캐스팅 할 수 있다.
비디오 동기화와 무관하게 오디오 동기화는 커넥티드 장치의 위치와 스윗 스팟 위치 간의 거리차를 고려하여 각 커넥티드 장치마다 서로 다른 오디오 지연 시간을 적용해야 한다.
따라서 상기에서 결정된 오디오 재생 싱크 타임스탬프에서 상기에서 결정된 보정 오디오 지연시간ij를 고려하여, 각 커넥티드 장치의 오디오 재생 싱크 타임스탬프를 조정할 수 있다.
나아가 비디오와 오디오의 재생 시간의 차가 발생되는데 이러한 차이에도 스윗 스팟 위치에서 비디오/오디오의 재생이 자연스럽게 인식되도록 조정되는 것이 바람직하다.
비디오/오디오가 비동기화된 경우, 일반적으로 영상보다 늦게 도착한 소리보다, 먼저 도착한 소리에 더욱 민감하게 인식된다. 이러한 비디오/오디오 비동기화에 대해 사람이 인지 못하는 수준의 범위는 아래와 같은 예로 제시할 수 있다
표준(연도) 지연 임계값(ms) 선행(advanced) 임계값(ms)
ITU BT.1359 (1998) -30 +22.5
ATSC IS/191 (2003) -45 +15
EBU R37 (2007) -60 +40
따라서, 상기 표 1의 비디오/오디오 비동기화 수준을 만족하는 범위에서 가상 동기화 오디오 지연거리의 조정이 필요하다. 표 1의 지연 임계값의 최대값인 -60ms와 선행 임계값의 최대값인 +40ms를 고려하여 해당 비디오/오디오 비동기화 범위를 거리로 환산하면, -20.58m(-0.060s*343m/s)와 13.73m(+0.040s*343m/s)로 계산된다.
따라서 상기 계산에 따른 비동기화 범위를 적용하면, 가상 동기화 오디오 지연거리의 최대 조정 범위는 -20.58 ~ 13.73m 로, 모든 커넥티드 장치들이 위치 정보 오차를 포함하여, 누적된 오디오 지연에 따른 타이밍 오차범위가 약 34m 위치정확도 보다 양호한 경우, 비디오/오디오 재생시간의 비동기화에 따른 부작용을 최소화할 수 있다.
한편, 가상 동기화 오디오 지연거리는 오디오 재생 동기화를 위해 계산되는 값이다. 따라서 가상 동기화 오디오 지연거리를 계산하는 오디오 재생 듀티 사이클이 필요하며, 이러한 비디오/오디오 동기화를 위한 가상 동기화 오디오 지연거리 결정을 위한 오디오 재생 듀티 사이클은 비디오 재생 동기화를 위한 비디오 재생 듀티 사이클 보다 긴 주기를 갖는다.
가상 동기화 오디오 지연거리의 오디오 재생 듀티 사이클은 리스너(listener)의 신체상태에 따라 결정될 수 있으며, 긴장상태에서 24ms 보다 작은 주기를 갖는 오디오에 대해서는 인지 못하는 것으로 알려져 있다.
따라서, 상기 계산에 따른 비동기화 범위를 적용하는 경우, 가상 동기화 오디오 지연거리를 결정하는 오디오 재생 듀티 사이클은 24ms 보다 짧은 주기내에서 결정되어야 하고, 가상 동기화 오디오 지연거리의 결정을 위해서는 스윗 스팟 위치를 기준으로 각 커넥티드 장치간의 거리 오차(position accuracy)가 34m 이내에서 결정되어야 한다.
또한 이러한 조건을 만족하기 위해서 스윗 스팟 위치를 오디오 재생 듀티 사이클 동안 변경할 수도 있다. 이러한 경우, 커넥티드 장치 위치와 스윗 스팟 위치가 동시에 변경되는 경우를 고려하여 도플러 효과(Doppler-effect)를 고려해야 한다.
이러한 경우, 실제 스윗 스팟 위치가 변경되더라도, 스윗 스팟 위치가 고정되었다고 가정하고, 스윗 스팟 위치를 기준으로, 커넥티드 장치의 상대적인 속도변화값을 반영하여 도플러 효과를 적용할 수 있다.
커넥티드 장치의 위치나 스윗 스팟 위치가 변경되는 경우에는 도플러 효과를 고려하여 한다. 예를 들면 스윗 스팟 위치가 결정된 상태에서 커넥티드 장치는 일정방향으로 움직일 수 있다. 이러한 경우 도플러 효과에 의해 오디오 주파수의 변화가 발생한다.
도 6은 커넥티드 장치와 스윗 스팟의 상대적인 움직임에 따른 주파수 변화를 도시한 것이다.
도 6을 참조하면, 커넥티드 장치의 움직임이 없는 경우에는 스윗 스팟 위치에서 측정된 오디오의 주파수가 502로 도시된 것과 같이 측정될 수 있다. 그러나 일정 속도로 커넥티드 장치가 스윗 스팟 위치로부터 멀어지는 경우(501), 정지된 스윗 스팟 위치에서 측정된 오디오의 주파수는 낮아지고, 커넥티드 장치가 스윗 스팟 위치로부터 가까워지는 경우(503), 정지된 스윗 스팟 위치에서 측정된 오디오의 주파수는 높아지는 것을 알 수 있다.
도 7은 음원이 이동함에 따른 파장의 길이변화를 나타낸 것이다.
도 7(a)를 참조하면, 커넥티드 장치가 정지한 경우, 음원(S)의 거리에 따른 파장의 길이는 모두 동일하다. 그러나 도 7(b)에서와 같이 음원이 관찰자 A로 이동하는 경우(S1→S2→S3→S4), 이동 속도만큼 측정된 음원의 파장의 길이는 짧아지고, 동시에 오디오 주파수는 커지게 된다. 반면, 관찰자 C는 음원이 멀어지게 되므로 파장의 길이는 길어지고 오디오 주파수는 작아지게 된다.
도플러 효과에 의해서 관찰자에게 관측되는 주파수는 아래와 같다.
Figure pat00006
여기서, fobs는 관찰자에게 관측되는 주파수, fs는 음원의 주파수, vw는 오디오의 속도, vs는 음원의 속도이다.
따라서 스윗 스팟 위치에서 들리는 복수의 커넥티드 장치로부터의 오디오를 동기화시키기 위해서는 디지털 콘텐츠의 샘플링 레이트를 도플러 효과를 고려하여 미리 선정하는 것이 바람직하다. 이동하는 커넥티드 장치와 스윗 스팟 위치 간의 위치변화와 커넥티드 장치의 이동속도를 반영하여, 커넥티드 장치에서 디지털 콘텐츠의 샘플링 레이트를 조정하고, 도플러 효과에 따른 오디오 주파수 변화를 보정하는 것이 바람직하다.
예를 들어, vw를 340m/s로 설정하고, 스윗 스팟 위치에서 수신되어야 하는 오디오 주파수를 150Hz로 정의한 경우에, 커넥티드 장치가 스윗 스팟 위치 방향과 반대방향으로 35m/s이동하는 경우, 커넥티드 장치의 바람직한 재생 오디오 주파수는 165.4Hz에 해당된다.
도 8은 본 발명의 바람직한 일 실시 예에 따른 슬레이브 장치에서 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법의 흐름도이다.
도 8을 참조하면, 본 실시 예에 따른 슬레이브 장치가 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법은 도 3에 도시된 슬레이브 장치에서 시계열적으로 처리되는 단계들로 구성된다.
따라서, 이하 생략된 내용이라 하더라도 도 3에 도시된 슬레이브 장치에 관하여 이상에서 기술된 내용은 본 실시 예에 따른 슬레이브 장치가 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법에도 적용된다.
도 8은 비디오 재생 듀티 사이클 및 비디오 재생 듀티 사이클 보다 긴 오디오 재생 듀티 사이클로 비디오 및 오디오 동기화를 수행하는 과정이며, 도 10은 비디오 재생 동기화를 수행하기 위해, 비디오 재생 듀티 사이클동안 비디오 동기화를 수행하는 과정이라는 차이가 있다. 두 과정은 서로 다른 듀티 사이클로 별개로 처리될 수 있고, 도 8의 비디오 및 오디오 동기화 수행시에는 도 10의 비디오 동기화를 생략할 수 있다.
800 단계에서 네트워크 상에 연결된 커넥티드 장치들 중에서 마스터 장치가 결정된다.
810 단계에서 슬레이브 장치는 각각의 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송한다.
슬레이브 장치의 위치 정보는 각각의 슬레이브 장치에서 결정될 수도 있고, 마스터 장치에서 결정할 수 있다. 마스터 장치에 장착된 카메라 및 슬레이브 장치에서 수신한 위치정보를 바탕으로 슬레이브 장치 위치 정보를 보정(calibration)할 수 있다. 또한, 마스터 장치에서는 획득된 이미지 정보 및 주변의 정밀맵 정보를 이용하여, 슬레이브 장치에서 수신한 위치 정보를 보정할 수 있다.
820 단계에서 슬레이브 장치는 비디오 재생 듀티 사이클 동안 비디오 재생 지연 시간 리스트 또는 비디오 재생 싱크 타임스탬프를 마스터 장치로부터 수신한다.
830 단계에서 슬레이브 장치는 가상 동기화 오디오 지연거리(virtual synchronization audio delay distance), 커넥티드 장치들의 오디오 지연거리, 또는 스윗 스팟 위치, 오디오 재생지연 시간 리스트, 오디오 재생 싱크 타임스탬프를 마스터 장치로부터 수신한다.
이때, 커넥티드 장치의 위치정확도 및 스윗 스팟 위치에서 수신되어야 하는 오디오 주파수를 고려하여 오디오 재생 듀티 사이클이 결정되는 것이 바람직하다.
또한, 위치 정확도가 높은 경우에는 오디오 재생 듀티 사이클을 크게 설정할 수 있고, 위치 정확도가 낮은 경우에는 보다 빈번하게 오디오 재생 듀티 사이클을 작게 설정하여 위치 변화를 모니터링하는 것이 바람직하다.
상기 가상 동기화 오디오 지연거리와 오디오 재생 싱크 타임스탬프는 각각의 스윗 스팟 위치에 대응된다. 예를 들어, 하나의 스피커에 여러 개의 지향성 스피커가 내장된 경우, 하나의 커넥티드 장치(마스터 장치와 슬레이브 장치들을 포함함)에서 복수의 스윗 스팟 위치들로 오디오 신호를 재생할 수 있다. 따라서 스윗 스팟 위치들의 개수에 따라 가상 동기화 오디오 지연거리와 오디오 재생 싱크 타임스탬프의 개수가 결정된다.
커넥티드 장치의 위치정보는 마스터 장치의 위치정보와 슬레이브 장치들의 모든 절대 위치정보가 포함된 정보를 수신하거나, 상대적인 거리값(제i 스윗 스팟과 제j 커넥티드 장치 간의 거리)을 수신할 수 있다.
840 단계에서 슬레이브 장치는 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 결정한다.
상기 비디오 재생 지연 시간 보정량으로 비디오 재생 싱크 타임스탬프를 보정하여 각 슬레이브 장치의 비디오 재생 시간 지연을 보정할 수 있다.
850 단계에서 슬레이브 장치는 상기 비디오 재생 지연 시간 보정량을 고려하여 비디오 재생 싱크 타임스탬프를 보정한다.
슬레이브 장치의 비디오 타임스탬프는 슬레이브 장치들의 서로 다른 기계사양 및 가용 리소스(available resource) 상태와 슬레이브 장치와 스윗 스팟의 위치를 고려하여 비디오 타임 스탬프를 결정하는 것이 바람직하다.
860 단계에서 슬레이브 장치는 오디오 지연 시간 보정량을 고려하여 오디오 재생 싱크 타임 스탬프를 보정한다.
본 발명의 일 실시예로서, 스윗 스팟 위치 및 커넥티드 장치들 간의 상대적인 위치값을 반영하여 비디오 및 오디오 동기화를 위한 사운드 지연 시간을 계산하는 과정을 이하 상세히 살펴보기로 한다.
실제 커넥티드 장치는 가상 동기화 오디오 지연거리 상에 존재하지 않으므로, 커넥티드 장치가 가상 동기화 오디오 지연거리에서 오디오를 재생하는 것처럼, 오디오 재생 싱크 타임스탬프의 보정이 필요하다.
예를 들어 도 5에서 커넥티드 장치(515)는 가상 동기화 오디오 지연거리(530)보다 먼거리에 있으므로, 다른 커넥티드 장치보다 먼저 오디오를 재생해야만 한다. 따라서 실제 커넥티드 장치 장치의 위치 정보와 가상 동기화 오디오 지연거리값을 이용하여, 오디오 재생의 오디오 지연 시간을 조정할 수 있다. 해당 계산식은 아래와 같다.
Figure pat00007
870 단계에서 슬레이브 장치는 도플러 효과를 고려하여 오디오의 샘플링 레이트를 조정한다. 커넥티드 장치가 스윗 스팟 위치와 멀어지는 경우, 실제 스윗 스팟 위치에 도착한 오디오 주파수는 커넥티드 장치에서 재생한 오디오 주파수보다 작아진다. 또한 반대의 경우에는 오디오 주파수가 커지게 된다.
따라서 커넥티드 장치와 스윗 스팟의 이동속도 변화에 따른, 도플러 효과의 보정이 필요하다. 이를 위해서 스윗 스팟 위치에 원하는 오디오 샘플링 레이트가 정해지면, 커넥티드 장치와 스윗 스팟 위치의 거리가 멀어지는 경우에는 상대적인 이동속도의 변화를 고려하여, 재생 오디오 샘플링 레이트을 높여서 재생하면, 실제 스윗 스팟 위치로 전달된 오디오 샘플링 레이트은 재생된 오디오 샘플링 레이트보다 작은 값을 갖게 되므로, 최종적으로 원하는 오디오 샘플링 레이트값을 얻을 수 있다.
870 단계 이후 비디오 및 오디오 동기화를 수행하기 위해서 갱신된 커넥티드 장치의 위치 정보를 마스터 장치로 보내는 것이 바람직하다.
여기에서 위치 정보는 커넥티드 장치의 절대좌표값, 또는 스윗 스팟 위치와 커넥티드 장치의 위치값과의 차이를 나타내는 델타 위치거리(delta position distance)를 비디오 또는 오디오 재생 듀티 사이클 동안 스트로브 신호로 전송할 수 있다.
비디오 또는 오디오 재생 듀티 사이클은 사람이 오디오 신호의 비동기화(asynchronies)를 느끼지 못하는 주기내에서 수행되거나 비디오/오디오 타이밍 지연을 느끼지 못하는 범위내에서 수행되는 것이 바람직할 것이다. 또한 오디오 재생 듀티 사이클은 커넥티드 장치의 위치 정확도 및 스윗 스팟 위치에서 수신될 오디오 신호의 오디오 샘플링 레이트에 의해서 결정될 수 있다.
도 9는 본 발명의 바람직한 일 실시 예에 따른 마스터 장치가 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법의 흐름도이다.
도 9을 참조하면, 본 실시 예에 따른 마스터 장치가 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법은 도 4에 도시된 마스터 장치에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 4에 도시된 마스터 장치에 관하여 이상에서 기술된 내용은 본 실시 예에 따른 마스터 장치가 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법에도 적용된다.
910 단계에서 마스터 장치는 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 슬레이브 장치들로부터 수신한다.
920 단계에서 마스터 장치는 상기 슬레이브 장치들로부터 수신한 비디오 재생 지연 시간의 리스트 및 상기 재생 지연 시간 리스트로부터 생성된 비디오 재생 싱크 타임스탬프를 상기 슬레이브 장치들로 전송한다.
930 단계에서 마스터 장치는 상기 슬레이브 장치들로부터 수신한 위치 정보를 이용하여 가상 동기화 오디오 지연거리를 생성한다.
도 5의 가상 동기화 오디오 지연거리(530)는 가장 짧은 값을 갖는 슬레이브 장치의 오디오 지연 거리(512)와 가장 긴 값을 갖는 오디오 지연거리(515) 사이에 존재한다. 가상 동기화 오디오 지연거리(530)는 스윗 스팟 위치(510)를 기준으로 모든 커넥티드 장치가 동일한 거리상에 존재하는 것으로 가정하는 가상의 동심원의 반지름이다. 따라서 커넥티드 장치를 가상 동기화 오디오 지연거리를 반지름으로 하는 동심원에 위치하도록 조정하는 것으로 가정하면, 스윗 스팟 위치에서 하울링과 사운드 지연이 최소화된 오디오가 전달될 수 있을 것이다.
또한 각 커넥티드 장치와 스윗 스팟 위치 간의 절대적인 거리차에 의한 사운드 지연을 제거하는 것이 아닌, 커넥티드 장치와 스윗 스팟 위치 간의 상대적인 거리를 조절하고, 스윗 스팟 위치와 커넥티드 장치간의 거리차를 모두 동일하게 가정함으로써, 거리차로 발생할 수 있는 하울링을 효과적으로 제거할 수 있다.
가상 동기화 오디오 지연거리는 각각의 스윗 스팟 위치에 대응되며, 가상 동기화 오디오 지연거리를 구하는 식은 수학식 1과 같다.
상기 수학식 1에서 평균값을 적용하거나 커넥티드 장치의 이동속도의 변화를 추가적으로 고려하여 가상 동기화 오디오 지연거리를 결정할 수 있다.
940 단계에서 마스터 장치는 상기 슬레이브 장치들로부터 수신한 위치 정보를 이용하여 생성된 가상 동기화 오디오 지연거리, 오디오 재생 싱크 타임스탬프, 각 장치의 오디오 지연거리 , 스윗 스팟 위치, 또는 오디오 재생 지연시간 리스트를 상기 슬레이브 장치들로 전송한다.
상기 생성된 가상 동기화 오디오 지연거리값을 이용하여 최적의 비디오/오디오 재생 동기화를 위한 비디오 지연 시간을 계산할 수 있고, 해당 계산식은 아래와 같다.
Figure pat00008
비디오 지연시간i를 이용하여 동기화를 위한 오디오 재생 싱크 타임스탬프를 결정할 수 있다.
도 10은 본 발명의 바람직한 다른 실시 예에 따른 슬레이브 장치에서 디지털 콘텐츠의 비디오 재생 동기화를 맞추는 방법의 흐름도이다.
도 10을 참조하면, 본 실시 예에 따른 슬레이브 장치가 디지털 콘텐츠의 비디오 재생 싱크를 맞추는 방법은 도 3에 도시된 슬레이브 장치에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 3에 도시된 슬레이브 장치에 관하여 이상에서 기술된 내용은 본 실시 예에 따른 슬레이브 장치가 디지털 콘텐츠의 비디오 재생 싱크를 맞추는 방법에도 적용된다.
1010 단계에서 슬레이브 장치는 네트워크에 연결 요청 신호를 마스터 장치에 요청한다.
1020 단계에서 슬레이브 장치는 슬레이브 장치의 위치를 결정한다. 슬레이브 장치의 위치 정보는 각각의 슬레이브 장치에서 결정될 수도 있고, 마스터 장치에서 결정할 수 있다. 마스터 장치에 장착된 카메라 및 슬레이브 장치에서 수신한 위치정보를 바탕으로 슬레이브 장치 위치 정보를 보정(calibration)할 수 있다.
1030 단계에서 슬레이브 장치는 비디오 재생 듀티 사이클 동안 마스터 장치가 수집한 재생 지연 시간 리스트 또는 델타 재생 지연 시간 리스트 정보 및 비디오 재생 싱크 타임스탬프 정보를 수신한다. 상기 비디오 재생 듀티 사이클은 마스터 장치가 재생 콘텐츠의 프레임 레이트를 고려하여 결정하는 것이 바람직하다. 상기 재생 지연 시간 리스트 또는 델타 재생 지연 시간 리스트 정보 외에 로컬 클락 드리프트 리스트 또는 델타 로컬 클락 드리프트 리스트를 더 포함할 수 있다.
한편, 상기 복수의 슬레이브 장치의 재생 지연 시간 리스트 또는 재생 동기화에 사용되는 비디오 재생 싱크 타임스탬프는 트레이닝 데이터에 포함될 수 있고, 재생 듀티 사이클 내에 디스플레이 재생 동기화에 사용되는 트레이닝 데이터를 주기적으로 수신하는 것이 바람직하다. 1030 단계에서 수신한 재생 싱크 타임스탬프 정보는 도 8의 820 단계에서 수신한 비디오 재생 싱크 타임스탬프 정보에 대응한다.
1040 단계에서 슬레이브 장치는 재생 지연 시간 보정량(playback-delay-time correction)을 계산한다. 슬레이브 장치들 간의 재생 동기화를 맞추기 위해 상기 트레이닝 데이터에 포함된 재생 지연 시간 리스트를 참조하여 재생 지연 시간 보정량을 계산하는 것이 바람직하다. 한편, 마스터 장치는 마스터 클락 보정량(master-clock correction)을 계산한다.
1050 단계에서 재생 듀티 사이클(playback-duty-cycle) 내에서 재생 지연 시간 보정량(playback-delay-time correction)을 결정한다. 여기에서 클락 듀티 사이클은 재생 듀티 사이클보다 항상 짧다. 상기 재생 지연 시간 보정량 조건을 이용하여 마스터 장치는 재생 콘텐츠의 재생 싱크 타임스탬프 동기화 정보(playback-timestamp synchronization)를 브로드캐스팅할 수 있다. 1050 단계에서 네트워크에 연결된 모든 슬레이브 장치의 로컬 클락 드리프트 리스트 및 재생 지연 시간 리스트를 이용하여, 슬레이브 장치는 클락 듀티 사이클(clock-duty-cycle) 내에서 로컬 클락 보정량(local-clock correction)을 추가로 조정할 수 있다.
1060 단계에서 슬레이브 장치는 1050 단계에서 결정된 재생 지연 시간 보정량으로 타이머와 재생 싱크 타임스탬프 동기화 정보를 보정하여, 콘텐츠의 재생을 동기화한다.
1070 단계는 슬레이브 장치에서 재생 듀티 사이클의 주기로 계산된 재생 지연 시간을 마스터 장치로 송신한다. 재생 지연 시간 보정량으로 보정된 재생 지연 시간을 상기 재생 듀티 사이클에 기초한 스트로브 신호에 포함하여 마스터 장치로 전송하는 것이 바람직하다.
1080 단계에서 슬레이브 장치는 정해진 임계값의 만족 여부에 따라서, 재생 지연 시간 송신 여부를 결정할 수 있다. 1070 단계에서 계산된 재생 지연 시간이 임계값보다 큰 경우 1020 단계 또는 1030 단계로 진행할 수 있고, 1070 단계에서 계산된 재생 지연 시간이 임계값보다 크지 않은 경우 종료할 수 있다.
한편, 네트워크에 연결된 다수의 슬레이브 장치에서 사용자 피드백 신호를 마스터 장치에 전송하는 경우, 동일한 재생 듀티 사이클 구간내에서 전송함으로써, 다수의 장치에서 사용자 실시간 신호를 지연없이 효과적으로 처리할 수 있다.
도 11은 본 발명의 바람직한 다른 실시 예에 따른 마스터 장치에서 디지털 콘텐츠의 비디오 재생 동기화를 맞추는 방법의 흐름도이다.
도 11을 참조하면, 본 실시 예에 따른 마스터 장치가 디지털 콘텐츠의 재생 싱크를 맞추는 방법은 도 4에 도시된 마스터 장치에서 시계열적으로 처리되는 단계들로 구성된다. 따라서, 이하 생략된 내용이라 하더라도 도 4에 도시된 마스터 장치에 관하여 이상에서 기술된 내용은 본 실시 예에 따른 마스터 장치가 디지털 콘텐츠의 비디오 재생 동기화를 맞추는 방법에도 적용된다.
1110 단계에서 마스터 장치는 네트워크에 연결 요청 신호를 슬레이브 장치로부터 수신한다.
1120 단계에서 마스터 장치는 슬레이브 장치의 위치를 결정한다. 슬레이브 장치의 위치 정보는 각각의 슬레이브 장치에서 결정될 수도 있고, 마스터 장치에서 결정할 수 있다. 마스터 장치에 장착된 카메라 및 슬레이브 장치에서 수신한 위치정보를 바탕으로 슬레이브 장치 위치 정보를 보정(calibration)할 수 있다.
1130 단계에서 마스터 장치는 재생 콘텐츠의 프레임 레이트를 고려하여 재생 듀티 사이클을 결정한다. 상기 재생 듀티 사이클은 상기 디지털 콘텐츠의 프레임 레이트 외에 채널 정보를 고려하여 결정되는 것이 바람직하다.
1140 단계는 마스터 장치는 슬레이브 장치로부터 재생 듀티 사이클의 주기로 계산된 재생 지연 시간을 수신한다.
1150 단계에서 마스터 장치는 슬레이브 장치로 재생 듀티 사이클 마다 수집한 재생 지연 시간 리스트 또는 델타 재생 지연 시간 리스트 정보 및 재생 싱크 타임스탬프 정보를 송신한다. 상기 재생 지연 시간 리스트 또는 델타 재생 지연 시간 리스트 정보는 로컬 클락 드리프트 리스트 또는 델타 로컬 클락 드리프트 리스트를 포함할 수 있다.
상기 재생 싱크 타임스탬프는 상기 재생 지연 시간 리스트 또는 상기 재생 듀티 사이클 내에 있는 재생 지연 시간들 간의 시간 차이, 즉 델타 재생 지연 시간 리트트에 기초하여 결정될 수 있다.
다른 실시 예로서, 재생 싱크 타임스탬프는 재생 지연 시간 리스트 내에 있는 재생 지연 시간 간의 표준편차가 가장 작게 계산되는 타임스탬프를 재생 싱크 타임스탬프로 결정할 수 있다. 1150 단계에서의 재생 싱크 타임스탬프는 도 9의 920 단계에서의 비디오 재생 싱크 타임스탬프에 대응한다.
1160 단계에서 마스터 장치는 비디오 재생 지연 시간 보정량을 계산한다.
1170 단계에서 마스터 장치는 클락 듀티 사이클(clock-duty-cycle) 내에서 마스터 클락 보정량(local-clock correction)을 조정하거나, 재생 듀티 사이클(playback-duty-cycle) 내에서 비디오 재생 지연 시간 보정량을 결정한다. 여기에서 클락 듀티 사이클은 재생 듀티 사이클보다 항상 짧다. 상기 재생 지연 시간 보정량 조건을 이용하여 마스터 장치는 재생 콘텐츠의 재생 싱크 타임스탬프 동기화 정보(playback-timestamp synchronization)를 브로드캐스팅할 수 있다.
1180 단계에서 마스터 장치는 1170 단계에서 결정된 재생 지연 시간 보정량으로 타이머를 보정하고, 재생 싱크 타임스탬프 동기화 정보를 보정하여, 콘텐츠의 재생을 동기화한다.
도 12는 스윗 스팟 주변의 재생 사운드 환경을 고려하는 경우이다.
첫번째 환경은 스윗 스팟 A(510) 및 스윗 스팟 B(520)에 동일하게 건물(1200, 1300)이 있는 경우이다.
두번째 환경은 스윗 스팟 B(520)의 뒤쪽에 건물(1300)이 없이 빈 공간(free space)이 존재하는 경우이다.
따라서 첫번째 환경과 두번째 환경은 빈 공간의 유무에 따라서 오디오의 에코(echo) 환경이 달라진다. 이러한 에코는 오디오의 확상 현상이 큰 저주파수에서 더 크게 발생한다. 따라서 다수의 커넥티드 장치에서 오디오를 재생하고 일정 레벨 오디오 사운드를 유지하기 위한 볼륨 컨트롤을 위해서는 오디오 재생 환경을 고려하는 것이 바람직하다.
동일한 재생 환경을 유지하기 위해, 멀티 스윗 스팟 선정시, 빌딩/벽/장애물이 있는 곳으로 스윗 스팟을 선정하거나, 반대로 빈 공간에 멀티 스윗 스팟을 선정할 수 있다.
또한 동일한 재생환경에서 일정 수준의 오디오 볼륨 레벨을 유지하기 위해서, 각 커넥티드 장치에 장착된 마이크로폰을 이용하여 오디오 레벨을 결정할 수 있다. 이 때, 각 커넥티드 장치에서 재생 오디오의 저주파수 범위를 반영하여, 측정하는 오디오 주파수 범위를 결정할 수 있다. 또한 오디오 사운드 레벨을 결정하기 위한 측정 인터벌은 단기/장기 인터벌로 구분하여 결정할 수 있다. 예를 들어 단기 인터벌 동안 오디오 레벨 보다 높고, 장기 인터벌 오디오 레벨보다 낮추어 측정 인터벌을 적용할 수 있다.
또한 커넥티드 장치에서 측정하는 오디오 볼륨 레벨은 스윗 스팟 거리에 따라 적용 오디오 레벨이 달라질 수 있다. 측정된 오디오 레벨을 만족하지 않는 경우에는 특정 커넥티드 장치의 사운드 재생 볼륨을 조절해야 하는데, 이때, 멀티 스윗 스팟으로 사운드를 재생하는 커넥티드 장치(513)와, 멀티 스윗 스팟을 기준으로 반사되는 사운드에 영향이 큰 위치에 존재하는 커넥티드 장치(511)에 대해 우선적으로 사운드 볼륨을 조정하는 것이 바람직하다.
본 실시 예에서 사용되는 '~부'라는 용어는 소프트웨어 또는 FPGA(field-programmable gate array) 또는 ASIC과 같은 하드웨어 구성요소를 의미하며, '~부'는 어떤 역할들을 수행한다. 그렇지만 '~부'는 소프트웨어 또는 하드웨어에 한정되는 의미는 아니다. '~부'는 어드레싱할 수 있는 저장 매체에 있도록 구성될 수도 있고 하나 또는 그 이상의 프로세서들을 재생시키도록 구성될 수도 있다. 따라서, 일 예로서 '~부'는 소프트웨어 구성요소들, 객체지향 소프트웨어 구성요소들, 클래스 구성요소들 및 태스크 구성요소들과 같은 구성요소들과, 프로세스들, 함수들, 속성들, 프로시저들, 서브루틴들, 프로그램 코드의 세그먼트들, 드라이버들, 펌웨어, 마이크로코드, 회로, 데이터,데이터베이스, 데이터 구조들, 테이블들, 어레이들, 및 변수들을 포함한다. 구성요소들과 '~부'들 안에서 제공되는 기능은 더 작은 수의 구성요소들 및 '~부'들로 결합되거나 추가적인 구성요소들과 '~부'들로 더 분리될 수 있다. 뿐만 아니라, 구성요소들 및 '~부'들은 디바이스 또는 보안 멀티미디어카드 내의 하나 또는 그 이상의 CPU들을 재생시키도록 구현될 수도 있다.
상술한 모든 기능은 상기 기능을 수행하도록 코딩된 소프트웨어나 프로그램 코드 등에 따른 마이크로프로세서, 제어기, 마이크로제어기, ASIC(Application Specific Integrated Circuit) 등과 같은 프로세서에 의해 수행될 수 있다. 상기 코드의 설계, 개발 및 구현은 본 발명의 설명에 기초하여 당업자에게 자명하다고 할 것이다.
이상 본 발명에 대하여 실시 예를 참조하여 설명하였지만, 해당 기술 분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시켜 실시할 수 있음을 이해할 수 있을 것이다. 따라서 상술한 실시 예에 한정되지 않고, 본 발명은 이하의 특허청구범위의 범위 내의 모든 실시 예들을 포함한다고 할 것이다.

Claims (14)

  1. 네트워크에 연결된 복수의 커넥티드 장치가 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송하는 단계;
    비디오 재생 듀티 사이클 동안 비디오 재생 지연 시간 리스트 또는 비디오 재생 싱크 타임스탬프를 수신하는 단계;
    오디오 재생 듀티 사이클 동안 가상 동기화 오디오 지연거리, 커넥티드 장치들의 오디오 지연거리, 스윗 스팟 위치, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프 중 적어도 하나 이상을 수신하는 단계;
    상기 비디오 재생 듀티 사이클 동안 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 결정하고, 상기 비디오 재생 지연 시간 보정량을 고려하여 상기 비디오 재생 싱크 타임스탬프를 보정하는 단계; 및
    상기 오디오 재생 듀티 사이클 동안 상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 상기 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정하는 단계를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법.
  2. 제1 항에 있어서,
    상기 가상 동기화 오디오 지연거리는 적어도 하나 이상의 스윗 스팟 위치와 복수의 커넥티드 장치들의 상대적인 위치차의 합을 최소로 만드는 거리를 고려하여 상기 스윗 스팟 위치 별로 결정되는 것을 특징으로 하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법.
  3. 제1 항에 있어서,
    상기 복수의 커넥티드 장치들 또는 상기 마스터 장치 중 적어도 하나의 장치에 포함된 지향성 서브 스피커들을 활성화시키는 단계를 더 포함하고,
    상기 지향성 서브 스피커들은 상기 적어도 하나 이상의 스윗 스팟 위치들 중 적어도 하나의 방향으로 배치되는 것을 특징으로 하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법.
  4. 제1 항에 있어서,
    상기 복수의 커넥티드 장치들 또는 상기 마스터 장치와 각 스윗 스팟 위치 간의 상대적인 거리 변화가 있는 경우, 오디오의 동기화를 위해 상기 복수의 커넥티드 장치들 또는 상기 마스터 장치가 출력하는 오디오 콘텐츠의 주파수를 조정하는 단계를 더 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법.
  5. 네트워크에 연결된 마스터 장치가 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 커넥티드 장치들로부터 수신하는 단계;
    상기 커넥티드 장치들로부터 수신한 비디오 재생 지연 시간의 리스트 및 상기 비디오 재생 지연 시간 리스트로부터 생성된 비디오 재생 싱크 타임스탬프를 상기 커넥티드 장치들로 전송하는 단계; 및
    상기 커넥티드 장치들로부터 수신한 위치 정보를 이용하여 생성된 가상 동기화 오디오 지연거리, 오디오 재생 싱크 타임스탬프, 각 커넥티드 장치의 오디오 지연거리, 스윗 스팟 위치, 또는 오디오 재생 지연시간 리스트를 상기 커넥티드 장치들로 전송하는 단계를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법.
  6. 네트워크에 연결된 복수의 슬레이브 장치가 각각의 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송하는 단계;
    상기 마스터 장치는 상기 슬레이브 장치들로부터 수신한 비디오 재생 지연 시간을 이용하여 비디오 재생 지연 시간 리스트를 생성하고, 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 싱크 타임스탬프를 생성하는 단계;
    상기 마스터 장치는 상기 슬레이브 장치들로부터 수신한 위치 정보를 이용하여 가상 동기화 오디오 지연거리를 생성하고, 상기 생성된 가상 동기화 오디오 지연거리를 이용하여 오디오 재생 싱크 타임스탬프를 생성하는 단계;
    상기 슬레이브 장치들이 상기 마스터 장치로부터 비디오 재생 듀티 사이클마다 상기 비디오 재생 지연 시간 리스트 또는 상기 비디오 재생 싱크 타임스탬프를 수신하는 단계;
    상기 슬레이브 장치들이 상기 마스터 장치로부터 상기 가상 동기화 오디오 지연거리, 상기 오디오 재생 싱크 타임스탬프, 각 장치의 오디오 지연거리, 스윗 스팟 위치, 또는 오디오 재생 지연시간 리스트 중 적어도 하나를 수신하는 단계;
    상기 슬레이브 장치들은 상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 각각 결정하고, 상기 비디오 재생 지연 시간 보정량을 고려하여 각각의 비디오 재생 싱크 타임스탬프를 보정하는 단계; 및
    상기 가상 동기화 오디오 지연거리, 마스터 장치와 슬레이브 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정하는 단계를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법.
  7. 제 6 항에 있어서,
    상기 스윗 스팟이 하나 이상 존재하는 경우, 모든 스윗 스팟이 일정 반경내에 오디오 반사파가 발생할 수 있는 위치로 결정되거나, 일정 반경내에 오디오 반사파가 발생할 수 없는 위치로 결정되는 단계를 더 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법.
  8. 네트워크에 연결된 커넥티드 장치가 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송하는 전송부;
    비디오 재생 듀티 사이클 동안 비디오 재생 지연 시간 리스트 또는 비디오 재생 싱크 타임스탬프를 수신하고, 오디오 재생 듀티 사이클 동안 가상 동기화 오디오 지연거리, 커넥티드 장치들의 오디오 지연거리, 스윗 스팟 위치, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프 중 적어도 하나 이상을 수신하는 수신부;
    상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 결정하는 비디오 재생 지연시간 보정량 결정부;
    상기 비디오 재생 지연 시간 보정량을 고려하여 상기 비디오 재생 싱크 타임스탬프를 보정하는 비디오 타임스탬프 보정부; 및
    상기 오디오 재생 듀티 사이클 동안 상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정하는 오디오 타임스탬프 보정부를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치.
  9. 제8 항에 있어서,
    상기 가상 동기화 오디오 지연거리는 적어도 하나 이상의 스윗 스팟 위치와 커넥티드 장치들의 상대적인 위치를 고려하여 상기 스윗 스팟 위치 별로 결정되는 것을 특징으로 하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치.
  10. 제8 항에 있어서,
    상기 커넥티드 장치에 포함된 지향성 서브 스피커들은 상기 적어도 하나 이상의 스윗 스팟 위치들 중 적어도 하나의 방향으로 배치되는 것을 특징으로 하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치.
  11. 제8 항에 있어서,
    상기 커넥티드 장치와 각 스윗 스팟 위치 간의 상대적인 거리 변화가 있는 경우, 각 스윗 스팟에서 듣는 오디오의 동기화를 위해 상기 커넥티드 장치가 출력하는 오디오 콘텐츠의 주파수를 조정하는 오디오 샘플링 레이트 결정부를 더 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치.
  12. 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 네트워크에 연결된 커넥티드 장치들로부터 수신하는 수신부;
    상기 커넥티드 장치들로부터 수신한 비디오 재생 지연 시간의 리스트 및 상기 재생 지연 시간 리스트로부터 생성된 비디오 재생 싱크 타임스탬프를 상기 커넥티드 장치들로 전송하는 전송부;
    상기 커넥티드 장치들로부터 수신한 위치 정보를 이용하여 가상 동기화 오디오 지연거리를 생성하는 가상 동기화 지연거리 생성부; 및
    상기 생성된 가상 동기화 오디오 지연거리를 이용하여 오디오 재생 싱크 타임스탬프를 생성하는 오디오 재생싱크 타임스탬프 생성부;
    상기 전송부는 상기 가상 동기화 오디오 지연거리, 상기 오디오 재생 싱크 타임스탬프, 각 장치의 오디오 지연거리, 스윗 스팟 위치, 또는 오디오 재생 지연시간 리스트를 상기 커넥티드 장치들로 전송하는 것을 특징으로 하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 커넥티드 장치.
  13. 비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 마스터 장치로 전송하는 전송부;
    상기 마스터 장치로부터 비디오 재생 듀티 사이클 동안 상기 비디오 재생 지연 시간 리스트 또는 상기 비디오 재생 싱크 타임스탬프를 수신하고, 오디오 재생 듀티 사이클 동안 상기 마스터 장치로부터 가상 동기화 오디오 지연거리가상 동기화 오디오 지연거리, 커넥티드 장치들의 오디오 지연거리, 스윗 스팟 위치, 오디오 재생 지연 시간 리스트 또는 오디오 재생 싱크 타임스탬프 중 적어도 하나를 수신하는 수신부;
    상기 비디오 재생 지연 시간 리스트로부터 비디오 재생 지연 시간 보정량을 결정하는 비디오 재생지연시간 보정량 결정부;
    상기 비디오 재생 지연 시간 보정량을 고려하여 상기 비디오 재생 싱크 타임스탬프를 보정하는 비디오 타임스탬부 보정부; 및
    상기 오디오 재생 듀티 사이클 동안 상기 가상 동기화 오디오 지연거리, 상기 커텍티드 장치들의 오디오 지연거리, 상기 스윗 스팟 위치, 또는 오디오 재생 지연 시간 리스트 중 적어도 하나 이상을 이용하여 결정된 오디오 재생 지연 시간 보정량으로 상기 오디오 재생 싱크 타임스탬프를 보정하는 오디오 타임스탬프 보정부를 포함하는 적어도 하나 이상의 커넥티드 장치; 및
    비디오 재생 지연 시간, 오디오 재생 지연 시간 및 위치 정보를 상기 적어도 하나 이상의 커넥티드 장치로부터 수신하는 수신부;
    상기 적어도 하나 이상의 커넥티드 장치들로부터 수신한 비디오 재생 지연 시간으로부터 비디오 재생 지연 시간 리스트를 생성하는 재생지연시간 리스트 생성부;
    상기 생성된 비디오 재생 지연 시간 리스트로부터 비디오 재생 싱크 타임스탬프를 생성하는 비디오 재생싱크 타임스탬프 생성부;
    상기 적어도 하나 이상의 커넥티드 장치들로부터 수신한 위치 정보와 상기 스윗 스팟 위치를 이용하여 가상 동기화 오디오 지연거리를 생성하는 가상 동기화 지연거리 생성부;
    상기 생성된 가상 동기화 오디오 지연거리를 이용하여 오디오 재생 싱크 타임스탬프를 생성하는 오디오 재생싱크 타임스탬프 생성부; 및
    상기 생성된 비디오 재생 싱크 타임스탬프 및 상기 오디오 재생 싱크 타임스탬프를 상기 적어도 하나 이상의 커넥티드 장치로 전송하는 전송부를 포함하는 마스터 장치를 포함하는 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 시스템.
  14. 제1 항 내지 제7 항 중에 어느 한 항의 방법을 컴퓨터에서 실행시키기 위한 프로그램을 기록한 컴퓨터로 읽을 수 있는 기록매체.
KR1020190171055A 2019-12-19 2019-12-19 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치 KR102306226B1 (ko)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020190171055A KR102306226B1 (ko) 2019-12-19 2019-12-19 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190171055A KR102306226B1 (ko) 2019-12-19 2019-12-19 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치

Publications (2)

Publication Number Publication Date
KR20210079017A true KR20210079017A (ko) 2021-06-29
KR102306226B1 KR102306226B1 (ko) 2021-09-29

Family

ID=76626746

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020190171055A KR102306226B1 (ko) 2019-12-19 2019-12-19 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치

Country Status (1)

Country Link
KR (1) KR102306226B1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022181860A1 (ko) * 2021-02-26 2022-09-01 애드커넥티드 주식회사 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060088738A (ko) * 2005-02-02 2006-08-07 엘지전자 주식회사 비디오 신호와 오디오 신호사이의 시간 지연을 자동으로보상하는 장치 및 방법
KR20100064532A (ko) * 2008-12-05 2010-06-15 삼성전자주식회사 무선 통신 네트워크에서 오디오 및 비디오 동기화 장치 및 방법
KR20150026069A (ko) * 2013-08-30 2015-03-11 삼성전자주식회사 컨텐츠 재생 방법 및 그 방법을 처리하는 전자 장치
KR20170022415A (ko) * 2015-08-20 2017-03-02 삼성전자주식회사 스피커 위치 정보에 기초하여, 오디오 신호를 처리하는 방법 및 장치
KR20190106986A (ko) * 2016-09-14 2019-09-18 디티에스 엘엘씨 오디오 및 비디오의 멀티모드 동기식 렌더링

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20060088738A (ko) * 2005-02-02 2006-08-07 엘지전자 주식회사 비디오 신호와 오디오 신호사이의 시간 지연을 자동으로보상하는 장치 및 방법
KR20100064532A (ko) * 2008-12-05 2010-06-15 삼성전자주식회사 무선 통신 네트워크에서 오디오 및 비디오 동기화 장치 및 방법
KR20150026069A (ko) * 2013-08-30 2015-03-11 삼성전자주식회사 컨텐츠 재생 방법 및 그 방법을 처리하는 전자 장치
KR20170022415A (ko) * 2015-08-20 2017-03-02 삼성전자주식회사 스피커 위치 정보에 기초하여, 오디오 신호를 처리하는 방법 및 장치
KR20190106986A (ko) * 2016-09-14 2019-09-18 디티에스 엘엘씨 오디오 및 비디오의 멀티모드 동기식 렌더링

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022181860A1 (ko) * 2021-02-26 2022-09-01 애드커넥티드 주식회사 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치

Also Published As

Publication number Publication date
KR102306226B1 (ko) 2021-09-29

Similar Documents

Publication Publication Date Title
JP7206362B2 (ja) 音声ソースの無線調整
EP2365704B1 (en) Transmission device and transmission method
US20150156740A1 (en) Increased Bluetooth Clock Accuracy
JP2009521882A (ja) ワイヤレスネットワークにおけるメディアデータ同期化
AU2021250981A1 (en) System and method for real-time synchronization of media content via multiple devices and speaker systems
US10425759B2 (en) Measurement and calibration of a networked loudspeaker system
JP2004193868A (ja) 無線送受信システム及び無線送受信方法
KR20170009650A (ko) 오디오 신호 처리 방법 및 장치
US10412532B2 (en) Environment discovery via time-synchronized networked loudspeakers
KR102566550B1 (ko) 복수의 커넥티드 장치 간 디지털 콘텐츠의 재생 동기화를 맞추는 방법 및 이를 이용한 장치
KR102306226B1 (ko) 디지털 콘텐츠의 비디오 및 오디오 재생 동기화를 맞추는 방법 및 이를 이용한 장치
US10741217B2 (en) Intelligent media synchronization
CN107239253B (zh) 同步播放速度的无线局域网播放器、系统及其方法
JP2009081654A (ja) ストリーム同期再生システム及び方法
CN115833984A (zh) 时钟同步方法、装置、电子设备及可读存储介质
US20240137598A1 (en) Method of synchronizing playback of video and audio of digital content and device using the same
US9635633B2 (en) Multimedia synchronization system and method
WO2020132412A1 (en) Audio equalization metadata
EP3477887A1 (en) Synchronization setting device, distribution system, synchronization setting method, and program
US20230276189A1 (en) Real-time sound field synthesis by modifying produced audio streams
CN116634213A (zh) 一种音视频同步播放方法和系统
WO2024059458A1 (en) Synchronization of head tracking data
KR20190031889A (ko) 실시간 동기식 이더넷 기반 음향 시스템 및 방법
CN112235685A (zh) 一种音箱组网方法及音箱系统

Legal Events

Date Code Title Description
E701 Decision to grant or registration of patent right
GRNT Written decision to grant