KR20090106973A - 복수의 방송 네트워크들과 연관된 텔레비전 신호들을동기화하기 위한 시스템 및 방법 - Google Patents

복수의 방송 네트워크들과 연관된 텔레비전 신호들을동기화하기 위한 시스템 및 방법 Download PDF

Info

Publication number
KR20090106973A
KR20090106973A KR1020080059792A KR20080059792A KR20090106973A KR 20090106973 A KR20090106973 A KR 20090106973A KR 1020080059792 A KR1020080059792 A KR 1020080059792A KR 20080059792 A KR20080059792 A KR 20080059792A KR 20090106973 A KR20090106973 A KR 20090106973A
Authority
KR
South Korea
Prior art keywords
video
frame
display
received
time
Prior art date
Application number
KR1020080059792A
Other languages
English (en)
Other versions
KR101434204B1 (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 KR20090106973A publication Critical patent/KR20090106973A/ko
Application granted granted Critical
Publication of KR101434204B1 publication Critical patent/KR101434204B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N5/00Details of television systems
    • H04N5/04Synchronising
    • 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/242Synchronization processes, e.g. processing of PCR [Program Clock References]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • 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/43072Synchronising 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 multiple content streams on the same device
    • 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/44Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs
    • H04N21/4402Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display
    • H04N21/440236Processing of video elementary streams, e.g. splicing a video clip retrieved from local storage with an incoming video stream or rendering scenes according to encoded video stream scene graphs involving reformatting operations of video signals for household redistribution, storage or real-time display by media transcoding, e.g. video is transformed into a slideshow of still pictures, 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/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
    • H04N7/00Television systems
    • H04N7/16Analogue secrecy systems; Analogue subscription systems
    • H04N7/173Analogue secrecy systems; Analogue subscription systems with two-way working, e.g. subscriber sending a programme selection signal
    • H04N7/17309Transmission or handling of upstream communications
    • H04N7/17318Direct or substantially direct transmission and handling of requests

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Signal Processing (AREA)
  • Databases & Information Systems (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

본 발명은 텔레비전 또는 다른 미디어 장치상에서 복수의 방송 네트워크들로부터 수신한 방송 신호들을 동기화하기 위한 시스템 및 방법에 관한 것이다.
본 발명에 의한 방송 신호 동기화 방법은, 복수의 비디오 장치들이 비디오 방송으로부터 비디오 프레임들을 수신한 후, 서버가 수신한 복수의 프레임들을 나타내는 서명 또는 다른 데이터를 비디오 장치들로부터 수신하는 단계를 포함한다. 수신한 데이터들을 참조하여 각 비디오 장치들에 의해 수신되는 프레임들 중 하나 이상의 프레임들을 식별한다. 비디오 프레임들 중 하나를 표시할 시간을 나타내는 요청이나 다른 데이터를 복수의 비디오 장치들로 전송한다. 다른 실시예에서 미디어 장치들이 상기 프레임 동기화 데이터를 보내고 비디오 프레임들을 지시된 시간에 표시하도록 요청하도록 구성된다.

Description

복수의 방송 네트워크들과 연관된 텔레비전 신호들을 동기화하기 위한 시스템 및 방법{System and method for synchronization of television signals associated with multiple broadcast networks}
본 발명은 디지털 비디오에 관한 것으로, 특히 방송 비디오 신호들의 표시를 동기화하는 것에 관한 것이다.
오래된 텔레비전 시청 습관들 중 하나는 친구들이나 가족들과 함께 텔레비전 방송 쇼들을 시청하는 것이다. 예를 들면, 스포츠 생중계 방송은 종종 여러 사람들이 함께 모여 시청하곤 한다. 전화 및 화상 회의, 텍스트 또는 음성 채팅 어플리케이션 등 개선된 전기 통신 기술은 사람들로 하여금 넓은 지역에 걸친 가상적인 시청 그룹들을 형성하는 것을 도와 준다. 따라서 텔레비전 방송 신호들을 분산 시청하기 위한 방법들이 요구되어 진다.
본 발명이 해결하고자 하는 과제는 동일한 방송 프로그램이 다양한 네트워크를 통해 미디어 장치로 전송되는 과정에서 발생하는 전송 시간의 차이에 의한 문제점들을 극복하고 다수의 시청자들이 하나의 프로그램을 실질적으로 동시에 시청할 수 있도록 하기 위한 비디오 방송 신호의 동기화 수단을 제공하는 것이다.
본 발명에 의한 시스템, 방법 및 장치들은 여러 측면을 가지며, 이러한 측면들이 한데 어울려 본 발명의 바람직한 특성들을 가져 오는 것이다. 본 발명의 범위는 특허 청구범위에 의해 명시된 범위에 국한되지 않으며, 이하 본 발명의 주요한 특징들을 간단히 설명하기로 한다. 이하의 설명을 고려한 후, 특히 "발명의 실시를 위한 구체적인 내용"을 읽은 후에 당업자는 본 발명의 특징들이 어떻게 본 발명의 장점들 특히 비디오 방송 신호들의 시청 동기화를 가져오는지 이해하게 될 것이다.
본 발명에 의한 일 실시예는 비디오 방송 신호들(broadcast video signals)을 동기화(synchronization)하는 방법을 포함한다. 본 방법은 비디오 방송 신호의 프레임(frame)을 수신하는 단계, 상기 수신한 프레임을 나타내는(indicative) 데이터를 생성하는 단계, 상기 수신한 프레임을 나타내는 데이터를 서버로 전송하는 단계, 상기 서버로부터 수신한 프레임을 표시(display)할 시간을 알려주는 데이터를 수신하는 단계 및 비디오 방송 신호들의 시청을 실질적으로 동기화하는 단계를 포함한다.
본 발명의 다른 실시예는 비디오 방송 신호를 동기화하는 방법을 포함한다. 본 방법은 복수의 비디오 장치들 각각으로부터 복수의 비디오 프레임들을 나타내는 데이터를 수신하는 단계를 포함하는데, 여기서 비디오 장치들 각각은 비디오 방송으로부터 이미 프레임을 수신한 상태이다. 본 방법은 더 나아가 상기 저장된 데이터에 기초하여 각각의 비디오 장치에 의해 수신한 최소한 하나 이상의 비디오 프레임들을 식별하는 단계 및 상기 최소한 하나 이상의 비디오 프레임들을 표시할 시간을 나타내는 데이터를 복수의 비디오 장치들 각각에게 전송하는 단계를 더 포함한다.
본 발명에 의한 다른 실시예는 비디오 방송 신호들을 동기화하는 시스템을 포함한다. 본 시스템은 비디오 방송 신호의 프레임을 수신하기 위한 수신기(receiver)와 최소한 하나 이상의 프로세서(processor)를 포함하는데, 이 프로세서는 상기 수신한 프레임을 나타내는(indicative) 데이터를 생성하고, 상기 수신한 프레임을 나타내는 데이터를 서버로 전송하고, 상기 서버로부터 수신한 프레임을 표시(display)할 시간을 알려주는 데이터를 수신하고 그리고 수신한 프레임을 실질적으로 상기 표시 시간(indicated time)에 디스플레이 장치로 출력하도록 구성된다.
본 발명에 의한 다른 실시예는 비디오 방송 신호들을 동기화하는 시스템을 포함한다. 본 시스템은 비디오 방송 신호의 프레임을 수신하기 위한 수단 및 프로세싱 수단(processing means)을 포함한다. 상기 프로세싱 수단은 상기 수신한 프레임을 나타내는(indicative) 데이터를 생성하고, 상기 수신한 프레임을 나타내는 데 이터를 서버로 전송하고, 상기 서버로부터 수신한 프레임을 표시(display)할 시간을 알려주는 데이터를 수신하고 그리고 수신한 프레임을 실질적으로 상기 표시 시간(indicated time)에 디스플레이 장치로 출력하도록 구성된다.
본 발명에 의한 다른 실시예는 비디오 방송 신호들을 동기화하기 위한 컴퓨터 프로그램 제품을 포함한다. 본 제품은 최소한 하나 이상의 프로세서에 의해 실행될 수 있는 코드들을 저장하고 있는 컴퓨터로 읽을 수 있는 매체를 포함하는데, 상기 프로세서는 상기 수신한 프레임을 나타내는(indicative) 데이터를 생성하고, 상기 수신한 프레임을 나타내는 데이터를 서버로 전송하고, 상기 서버로부터 수신한 프레임을 표시(display)할 시간을 알려주는 데이터를 수신하고 그리고 수신한 프레임을 실질적으로 상기 표시 시간(indicated time)에 디스플레이 장치로 출력하도록 구성된다.
본 발명의 다른 실시예는 비디오 방송 신호를 동기화하는 시스템을 포함한다. 본 시스템은 하나의 메모리를 포함하는데 이 메모리는 복수의 비디오 장치들 각각으로부터 수신한 복수의 비디오 프레임들을 나타내는 데이터를 저장하는데, 여기서 비디오 장치들 각각은 비디오 방송으로부터 이미 프레임을 수신한 상태이다. 본 시스템은 하나 이상의 프로세서를 포함하는데 더 포함하는데, 상기 프로세서는 상기 저장된 데이터에 기초하여 각각의 비디오 장치에 의해 수신한 최소한 하나 이상의 비디오 프레임들을 식별하고, 상기 최소한 하나 이상의 비디오 프레임들을 표시할 시간을 나타내는 데이터를 복수의 비디오 장치들 각각에게 전송하도록 구성된다.
본 발명에 의한 다른 실시예는 비디오 방송 신호들을 동기화하기 위한 컴퓨터 프로그램 제품을 포함한다. 본 제품은 최소한 하나 이상의 프로세서에 의해 실행될 수 있는 코드들을 저장하고 있는 컴퓨터로 읽을 수 있는 매체를 포함하는데, 상기 프로세서는 복수의 비디오 장치들 각각으로부터 복수의 비디오 프레임들을 나타내는 데이터를 수신하는 단계를 포함하는데, 여기서 비디오 장치들 각각은 비디오 방송으로부터 이미 프레임을 수신한 상태이다. 상기 컴퓨터로 읽을 수 있는 매체는 더 나아가 최소한 하나 이상의 프로세서에 의해 실행될 수 있는 코드들을 저장하고 있는데, 이 코드들에 의해 상기 프로세서는 상기 저장된 데이터에 기초하여 각각의 비디오 장치에 의해 수신한 최소한 하나 이상의 비디오 프레임들을 식별하고, 상기 최소한 하나 이상의 비디오 프레임들을 표시할 시간을 나타내는 데이터를 복수의 비디오 장치들 각각에게 전송하도록 구성된다.
본 발명에 의한 비디오 신호 동기 방법 및 장치에 의하면 다양한 방송 네트워크 환경하에서 발생하는 프로그램 재생/표시 시간의 차이를 제거하여 다수의 시청자들이 동일한 프로그램을 동시에 시청할 수 있도록 해 줌으로써 시청 만족도를 향상시켜 줄 수 있다.
다음의 상세한 설명은 본 발명에 의한 일부 실시예들을 언급하고 있다. 하지만 본 발명은 특허청구범위에 의해 정의된 범위 내에서 매우 다양한 방식으로 구현될 수 있다. 이하의 도면에 관한 설명에 있어서 동일한 구성 요소에 대해서는 동일 한 식별 번호들을 사용하기로 한다.
지역적으로 분산된 그룹의 구성원들이 텔레비전 방송을 수신할 때, 그룹 구성원들은 지리적으로 다른 지역에 위치하는 텔레비전 방송국들로부터 텔레비전 신호를 수신하기도 하고 다른 텔레비전 신호 배급(distribution) 방식들에 의해 텔레비전 신호들을 수신할 수도 있다(예를 들어 동일한 텔레비전 방송국 신호일지라도 시청자에 따라 공중파 안테나를 통하거나, 케이블 텔레비전 시스템을 통하거나 또는 위성 텔레비전 시스템을 통해 수신할 수 있다.) 텔레비전 방송 신호들의 다양한 소스들이 전송하는 프로그램은 다양한 타이밍(timing)을 갖는데, 그것은 다양한 전송 경로 및 지연 시간(latencies)에 기인한다. 텔레비전 신호들이 갖는 서로 다른 지연 시간(latencies)는 다양한 신호 인코더 및 디코더 기술들 또는 신호의 중간 중개(intermediate relay)들에 의해 야기된다. 그러므로, 예를 들면, 지리적 분산 그룹(geographically distributed group)의 시청자들 중 일부 시청자들은 이러한 지연들(delays) 때문에 자신들이 동일한 방송 이벤트를 보기 전에 (가상적으로 존재하는)다른 시청자들의 시청 반응(reaction)을 보거나 듣게 될 수도 있다. 예를 들면, 스포츠 경기 방송 신호의 시청자들은 그들의 친구들의 시청 반응을 듣고 난 후에야 비로서 득점 장면을 보게 될 것이다.
본 발명에 의한 일 실시예는 사람들은 방송 신호들이 실질적으로 동기화된 텔레비전 방송 프로그램을 시청할 수 있도록 해준다. 따라서 다른 방송 경로를 통해 비디오 방송 신호를 수신한 일 군의 시청자들이 실질적으로 동시에 동일한 텔레비전 방송 장면을 시청할 수 있다. 일 실시예에서 동기화는 프레임 일치(frame accurate)이다. 일 실시예에서는 한 명 이상의 시청자들은 각자의 텔레비전 상에서 실질적으로 동기화된 형태로 프로그램을 일시 정지, 빨리 감기, 되감기 및 정지를 할 수 있다.
이하에서, "텔레비전"는 용어는 널리 (비디오 방송 신호들의 소스(source)에 구애되지 않으며) 비디오 방송 신호들을 재생할 수 있는 장치 또는 시스템을 일컫는 것으로 이해되어야 한다. 텔레비전 방송 신호들은, 예를 들면 지상파 디지털 텔레비전 방송 신호들(terrestrial digital television broadcast signals), 위성 방송 신호들(broadcast satellite signals), 또는 케이블 텔레비전 방송 신호(cable television broadcast signals)들을 포함한다. 더 나아가 텔레비전은 텔레비전 신호들을 수신하기 위한 수신기 또는 신호들을 표시하기 위한 모니터를 포함하거나 그 둘 다를 포함할 수 있다.
도 1은 동기화된 시청을 위해 2 이상의 디스플레이들 104에게 텔레비전 방송 신호 또는 다른 비디오 방송 신호를 공급하기 위한 시스템 100의 구성 요소를 보여주는 기능 블록도이다.
소스(source) 101은 프레임들의 시퀀스(sequence of frames)를 포함하는 비디오 신호를 2 이상의 방송 네트워크들 102로 공급한다. 방송 네트워크들(broadcast networks)은 상기 비디오 신호를 2 이상의 미디어 장치들(media devices) 104로 전송한다. 미디어 장치는 네트워크 105(예: 인터넷)를 통해 동기화 서버 106 104와 접속한다.
방송 네트워크들(broadcast networks) 102는, 가령, 방송 네트워크 102A, 방 송 네트워크 102B 및 방송 네트워크 102C를 포함할 수 있다. 방송 네트워크 102A는 지상파 디지털 텔레비전 방송국(terrestrial digital television broadcast station)을 포함하며, 네트워크 102B는 직접 위성 방송 네트워크(direct satellite broadcast network)을 포함하고 네트워크 102C는 데이터 네트워크 기반 방송 시스템(data network based broadcast system)을 포함한다. 방송 네트워크들 102는 각각 하나 이상의 미디어 장치들(media devides) 104로 신호를 공급한다.
각각의 방송 네트워크들 102는 소스 101 등으로부터 비디오 신호를 공급받는 시간과 실질적으로 같은 시간에 그 공급 받은 신호를 다시 미디어 장치 104 등으로 재전송한다. 이와 달리 실시예에 따라서는 소스 101은 비디소 신호를 방송 네트워크 102로 공급하면, 방송 네트워크 102는 공급받은 신호를 일단 저장하였다가 나중에 저장된 신호를 방송하기도 한다. 또한 다른 실시예에서는 소스 101은 기록용 데이프나 디스크와 같은 고정형 매체(fixed medium)에 신호를 기록하여 공급할 수도 있다. 어떤 경우든 상기 방송 네트워크들 102에 의한 특정 프로그램의 비디오 신호의 전송은 서로 다소 시간적 차이(slightly varying times)를 갖고 이루어진다. 이러한 전송 시간차가 발생하는 이유는 시작 시점이 서로 다르고, 신호 전송 및 (전송 사이트로의) 재전송에 있어서 서로 다른 지연(delays), 상업 광고의 삽입 여부 등에 있어서 방송 네트워크들 간 차이가 있기 때문이다. 더욱이 어떤 경우에는 방송 네트워크들 102 중 어느 하나가 다른 방송 네트워크들 102를 위한 비디오 신호의 중간 소스(intermediate source)로서 행동할 수도 있다. 가령, 위성 방송 네트워크 102B가 지상파 텔레비전 네트워크 102A로부터 신호를 받아 재전송할 수도 있 다.
미디어 장치들(media devices) 104는 수신기 및/또는 디스플레이(receiver, display)를 포함하는 텔레비전, 비디오 신호를 수신하고 수신한 신호를 별도의 디스플레이로 공급하는 셋탑 박스 또는 비디오 레코더를 포함할 수 있다. 각각의 미디어 장치 104가 이용 가능한 하나의 방송 네트워크 102로부터 비디오 신호를 수신하면, 미디어 장치 104는 비디오 시퀀스(video sequence) 내의 모든 또는 일부 프레임들을 위한 서명(signature)을 생성하고 그 서명들을 동기화 서버(synchronization server) 106으로 전송한다. 프레임에 대한 서명은 각각의 프레임을 비디오 서명 내의 다른 비디오 프레임들로부터 식별(identify)하고 구별(distinguish)할 수 있도록 해주는 데이터를 포함한다. 예를 들어, 서명들은 특정한 프레임의 일부 또는 전부에 대해 계산된 요약값(digest value) 또는 다른 해쉬값(hash value)을 포함한다. 주의할 점은 본 발명에 의해 생성된 서명들의 해쉬값들은 반드시 고유한(unique) 값이 아닐 수도 있다는 것이다. 하지만 동일한 서명이 발생할 가능성은 아주 작기 때문에 그로 인한 충돌(collisions)은 무시할 만 하다.
비디오 신호의 프레임들은 일반적으로 특정한 프레임 레이트(frame rate), 예를 들면, 초당 50 또는 60 프레임(frames per second)로 공급된다. 일 실시예에서 미디어 장치들 104는 프레임들 각각에 대해 서명들을 생성한다. 다른 실시예에서는 미디어 장치들 104는 미리 설정된 또는 선택된 시간 주기마다 프레임들을 선택하여 이들에 대해 서명들을 생성할 수도 있다. 그 주기는 0.2-1초 또는 1-5초 등 이 될 수 있다. 일 실시예에서 서명 생성 주기는 비디오 신호가 포함하는 내용(content)에 따라 선택된다. 가령 압축된 비디오 신호의 경우 각각의 I-프레임에 대해 서명들이 생성될 수 있다(MPEG 압축 표준 등에서 I-프레임은 상기 신호의 다른 프레임들과 무관하게 디코딩될 수 있는 프레임이다). 일 실시예에서 미디어 장치 104는 모든 프레임 각각에 대해 서명을 생성하지만, 그 중 선택된 프레임들에 대한 서명들만을 상기 서버 106으로 전송한다.
일실시예에서 처음 프레임(beginning frame), 마지막 프레임(endginf frame) 또는 특정한 프레임을 포함하는 프레임들을 하나의 간격(interval) 또는 범위(range)로 하여 서명들은 생성할 수 있다. 이러한 서명들을 생성하기 위한 방법 및 시스템들의 다양한 예들을 미국 특허 4,739,398, 4,931,871 및 5,572,246 에 개시되어 있다. 상기 미국 특허들에 기재된 내용 전체는 본 명세서의 기재에 포함되는 것으로 본다. 일 실시예에서 상기 프레임들의 특정 일부분들만이 상기 서명들을 생성하는데 쓰이며 상기 프레임들의 나머지 일부분들은 무시된다. 그래서 계속해서 화면에 표시되는 방송국 로고들(logos) 또는 버그들(bugs)은 동기화를 방해하지 못한다. (로고들은 네트워크마다 서로 다르다.)
동기화 서버(synchronization server) 106은 네트워크 105와 같은 데이터 네트워크를 통해 통신할 수 있도록 구성된 적절한 컴퓨터 시스템을 포함하며, 상기 계산된 프레임 서명 데이터를 각각의 미디어 장치 014로부터 수신한 후 메모리에 저장한다. 상기 서버 106는 각각의 미디어 장치 104으로부터 수신한 프레임 서명들을 매칭(match)한다. 만약 매칭하는 프레임들을 발견하면 서버 106는 상기 매칭하 는 프레임을 특정한 시간에 표시하도록 하는 요청(request) 또는 지시를 각 미디어 장치 104에게 전송한다. 상기 시간은 각 미디어 장치 104에 존재하는 클락(clock)과 관련이 있다. 일 실시예에서 미디어 장치들 104 각각은 적절한 네트워크 시간 동기화 방법 또는 프로토콜을 이용하여 자신의 클락을 서버 106와 동기화시킨다. 일 실시예에서 하나 이상의 미디어 장치들 104는 방송 네트워크 102 또는 자신이 포함하고 있는 GPS 수신기를 참조하거나 자신이 접속되어 있는 GPS 수신기를 통해 시간 신호를 수신하고 그 수신된 시간 신호를 참조하여 자신의 클락을 조정한다.
일 실시예에서 사용자는 미디어 장치 104에 구비되어 있는 사용자 인터페이스(user interface)를 통해 미디어 장치들 104의 동기화 그룹들(synchronized groups)은 구성할 수 있다. 사용자 인터페이스는 동기화 서버 106에 의해 관리되는 특정한 그룹을 생성하거나 선택하거나 또는 액세스를 제어할 수 있도록 하는 화면(screen)을 제공한다. 다른 실시예에서는 독립된 별개의 컴퓨터(예: 웹 브라우저)가 미디어 장치 104의 식별자(identifier)를 동기화 서버 106에 등록한다. 다른 실시예에서는 동기화 그룹들(synchronization groups)을 생성하거나 관리하는 다른 적절한 방법들이 이용할 수도 있다. 예를 들면, 동기화 그룹들은 채팅 또는 원격 현장감(telepresence) 소프트웨어와 연관되어 지거나 그 소프트웨어에 의해 관리될 수 있다. 상기 소프트웨어는 동기화된 시청 동안 여러 사용자들로 하여금 시청 경험을 공유할 수 있도록 해준다. 다른 실시예에서 미디어 장치 104는 동기화된 비디오 신호와 함께 제공되는 텍스트, 음성 또는 화상 회의 기능들에 대한 인터페이스를 제공한다. 일실시예에서 미디어 장치 104는 동기화해야 할 방송 프로그램을 식 별하기 위한 인터페이스도 제공한다. 일 실시예에서 미디어 장치 104는 또한 인터랙티브 프로그램 가이드(interactive program guide)를 통해 프로그램 선택할 수 있게 해주는 인터페이스를 제공하기도 한다.
도 2는 시스템 100에 의해 여러 방송 네트워크들 102로부터 수신된 비디오 신호들을 각각 2 이상의 미디어 장치들(예: 미디어 장치 104A 및 104B ) 상에 표시하는 경우, 그 2 이상의 비디오 신호의 타이밍(timing)을 도시하는 다이어그램(diagram)이다. 비디오 시퀀스들(video sequences) 202 및 204는 동일한 소스로부터 획득한 비디오 신호의 프레임들의 시퀀스들(sequences of frames) 또는 일정 간격의 프레임들(intevals of framens) 210을 도시한다. 상기 동일한 소스 비디오 신호들이라도 서로 다른 삽입 프레임 간격들(intervening frame intervals)을 갖는데(예: 211 또는 212), 그 이유는 상기 삽입 프레임 간격들은 방송 네트워크마다 서로 다른 광고(commercials) 또는 콘텐트(content)를 포함하기 때문이다. 따라서 상기 시퀀스 202A의 프레임 간격 211의 프레임들은 시퀀스 202B의 프레임들 212과는 서로 다를 수 있다. 반면 시퀀스 202A의 프레임들 210A와 시퀀스 202B의 210B는 동일하다. 도 2에 도시된 바와 같이 미디어 장치 104A는 시퀀스 202A를 시점 “t=10분”에서 수신하는 반면, 미디어 장치 104B는 프레임 시퀀스 202B를 시점 “t=0분”에서 수신한다.
일 실시예에서 미디어 장치들 104A와 104B는 특정 프레임들의 서명들을 동기화 서버 106로 전송한다. 일 실시예에서 각 미디어 장치는 각 블록 210, 211 및 212의 하나 이상의 프레임들을 나타내는 서명들을 동기화 서버 106로 전송한다. 블 록들 210A 및 210B 내의 매칭하는 프레임들을 동기화하기 위해, 동기화 서버 106는 상기 프레임들을 특정한 시간(예: ts=10+a분)에 표시하도록 하는 요청을 상기 미디어 장치 104A 및 104B로 전송한다. 상기 a는 매칭 여부를 파악하기 위해 미디어 장치들 104과 서버 106가 통신하는데 소요되는 대기 시간(latency)에 상응한다. 도 2의 시퀀스들 204A 및 204B는 시퀀스들 202A 및 202B에 대응하는 출력 비디오 시퀀스들(output sequences)로서 둘 다 ts에서 시작된다.
일 실시예에서 블록 211 및 212의 프레임들처럼 비매칭(non-matching) 프레임들의 경우에는, 서버 106는 미디어 장치들 104에게 아무런 표시 요청(또는 동기화 요청)도 하지않으므로 미디어 장치들 104는 종전 동기화된 프레임들의 시퀀스 순서에 따라 프레임들 211 및 212를 표시하게 된다.
도 3A는 2 개의 미디어 장치들 102A 및 102B에 의해 수신된 비디오 시퀀스 내의 프레임들의 상대적인 시간(timing)을 보여주는 타임라인(timeline)이다.
상기 예에서 서명 Si는 비디오 시퀀스의 일정 시구간(0≤t≤T)에 대해 일정한 주기(예: 매 프레임, 수개의 프레임들 또는 매 05.초)마다 생성된다. 앞에서 설명한 바와 같이 하나의 프레임을 나타내는(또는 가리키는, indicative) 또는 상기 프레임을 포함하는 일정 구간을 나타내는 서명들을 생성하기 위해 적절한 서명 생성방법이 채택될 수 있다.
도 3B는 프레임 시퀀스(도 3A)에 기초하여 동기화 서버 106와 미디어 장치들 104A 및 104B 간에 프레임 동기화 데이터(frame synchronization data)를 서로 주고 받는 예를 보여주는 타이밍 다이어그램이다. 설명의 편의를 위해 도 3B의 실시 예에서는 동기화된 장치 그룹은 단지 미디어 장치 104A 및 미디어 장치 104B만을 포함하는 것으로 가정한다. 프로그램을 방송하는 동안 미디어 장치 104는 수신한 프레임 Pj,t 각각에 대해 비디오 프레임 서명들 Si를 생성한다. 여기서 j는 해당 미디어 장치의 식별자(identifier) 또는 주소를 의미하며, t는 상기 프레임의 수신 시간을 의미한다. 이 실시예에서 미디어 장치 104A에 대한 미디어 장치 식별자는 1이며 104B에 대한 식별자는 2이다. 각각의 미디어 장치들 104A 및 104B는 서로 다른 시간에 메시지들을 서버 106로 전송하게 되는데, 상기 메시지 전송 시간은 미디어 장치들 104A 및 104B가 프레임들을 수신하는 시간에 따라 달라진다. 도 3B의 실시예에서 메시지 기술(message description) "P1,t3=S1"이 의미하는 바는 장치 104A가 시간 t3에 서명 S1을 갖는 비디오 프레임을 수신하였다는 것을 의미한다. 이 실시예에서 미디어 장치 104A는 서명들 S0, S1, 및 S2를 각각 t1, t3, 및 t5에 전송하는 반면, 미디어 장치 104B는 서명 S1, S2 및 S3를 각각 t2, t4 및 t6에 전송한다.
서버 106는 여러 미디어 장치들 104로부터 수신한 서명들을 분석한 후, 상기 서명에 의해 식별된 대응하는 프레임을 표시할 시간을 알려주는 메시지들을 미디어 장치들 104로 전송한다. 도 3B에서 미디어 장치 104A는 t3에서 서명 S1에 의해 식별된 프레임을 수신하였고 미디어 장치 104B는 t2에서 동일한 프레임을 수신하였다. 서버 106는 미디어 장치 104A 및 104B가 모두 상기 프레임을 수신하였다는 사실을 확인한 후, 미디어 장치들 104A 및 104B에게 상기 프레임을 표시하라는 표시 요청(request to display)을 전송하게 되고, 미디어 장치들 104A 및 104B 는 t7에서 동시에 상기 프레임을 표시하게 된다. 도 3B에서는 도면의 단순화를 위해 장치들 104와 서버 106 간의 통신 지연 시간 및 서버 106 상의 처리 시간은 무시되었다(도시하지 않았다).
도 4는 도 1의 시스템 중 동기화된 비디오 방송을 출력하도록 구성된 미디어 장치 104의 실시예를 보여주는 기능 블록도이다. 미디어 장치 104는 특정 방송 네트워크 102로부터 방송을 수신하기 위한 수신기 402를 포함한다. 수신기 402는 수신한 프레임들을 프레임 버퍼 404로 입력하고 버퍼 404는 입력된 프레임들을 표시(display) 전까지 저장한다. 제어 유닛(conrol unit) 406은 상기 저장된 프레임들에 기초하여 서명을 생성하고 상기 서명 데이터를 동기화 서버 106로 전송한다. 제어 유닛 406은 서버 106로부터 표시 요청을 수신하게 되면 디스플레이 장치 408을 하여금 수신한 프레임들을 표시하도록 제어한다.디스플레이 장치 408은 제어 유닛 406의 명령을 받아 프레임 버퍼 404로부터 프레임들을 수신하여 표시한다.
상기 수신기 402는, 예를 들면, 지상파 디지털 텔레비전 수신기, 위성 수신기 및 유/무선 데이터 네트워크 송수신기(transceiver) 중 하나 이상을 포함할 수 있다. 프레임 버퍼 404는 표시할 비디오 신호의 프레임들을 저장하기 위해 SSM(solid state memory) 및/또는 디스크 메모리를 포함할 수 있다. 제어 유닛 406은 범용 프로세서, 디지털 프로세서 등의 프로세서를 하나 이상 포함할 수 있다. 디스플레이 장치 408은 적절한 비디오 디스플레이 장치를 포함하게 되는데, 그 예로 LCD 및 플라즈마 디스플레이와 같은 직접 표시 디스플레이(direct view display) 또는 후방 또는 전방 프로젝션 디스플레이 등이 있다. 종래의 텔레비전에서 처럼 디스플레이 장치 408은 미디어 장치 104의 다른 구성 요소들과 함께 동일한 하우징(housing)에 집적될 수도 있고, (셋탑 박스나 비디오 레코더를 구성하는) 다른 구성 요소들과 독립하여 별개의 장치로서 구현될 수 있다.
당업자라면 위의 실시예들과 관련하여 설명한 다양한 논리 블록들, 모듈들, 회로들 및 알고리즘 단계들은 전자 하드웨어, 컴퓨터 소프트웨어 또는 하드웨어와 소프트웨어의 결합의 형태로 구현될 수 있음을 알 수 있다. 이상에서는 하드웨어와 소프트웨어 간의 전환 가능성을 명백히 보여주기 위해 다양한 컴포넌트들, 논리 블록들, 모듈들, 회로들 및 알고리즘 단계들을 그들의 기능(functionality) 측면에서 기술하였다. 이러한 기능들을 하드웨어로 구현할 것인지 아니면 소프트웨어로 구현할 것인지는 적용 제품(application)이나 시스템 전반에 부여되는 설계상의 제약을 고려하여 결정되어야 할 것이다. 당업자라면 하나의 적용 제품에 대해 다양한 방식으로 상술한 기능들을 구현할 수 있다. 하지만 어떠한 형태로 구현되든 본 발명의 기술적 사상의 범위를 벗어나서는 아니 된다.
위의 실시예들과 관련하여 설명한 다양한 논리 블록들, 모듈들 및 회로들은 다음과 같은 장치들에 의해 구현되거나 수행될 수 있다.
범용 프로세서(general purpose processor), DSP(digital signal processor), ASIC(application specific integrated circuit), FPGA(field programmable gate array) 또는 다른 프로그램 가능한 논리 장치들, 이산 게이트 또는 트랜지스터 로직(discrete gate or transistor logic), 이산 하드웨어 컴포넌 트(discrete hardware components) 또는 이들의 결합.
범용 프로세서는 마이크로 프로세서가 될 수도 있지만, 이와 달리 종래의 프로세서, 컨트롤러, 마이크로 컨트롤러, 상태 기계(state machine)의 형태를 띌 수도 있다. 또한 프로세서는 전산 장치들의 결합, 즉 DSP와 마이크로 프로세서의 결합, 복수의 마이크로 프로세서들, DSP 코어(core)와 연결된 하나 이상의 마이크로 프로세서들 또는 그러한 다른 구성들의 형태로 구현될 수 있다.
도 5는 미디어 장치 104에 의한 비디오 방송의 표시 동기화(synchronizing of display)를 위한 방법 500의 실시예를 보여주는 흐름도이다. 방법 500의 첫 번째 단계인 단계 502에서 미디어 장치 104는 프레임을 수신하여 프레임 버퍼 404에 저장한다(도 4 참조). 그 다음 단계 504에서 미디어 장치 104는 수신한 프레임을 표시하는(또는 가리키는) 서명을 생성한다. 이 서명은 상기 수신 프레임 또는 상기 수신 프레임을 포함하는 프레임 구간(interval)을 기초로 하여 생성된다. 단계 506으로 옮겨 간 다음, 미디어 장치 104는 상기 서명을 동기화 서버 106으로 전송한다.
단계 508에서 미디어 장치 104는 동기화 서버 106로부터 표시 요청(display request)을 수신하였는지 여부를 판단한다. 일 실시예에서 미디어 장치 104는 프레임 버퍼에 저장된 것 중 가장 최근에 수신한 프레임을 표시하려고 할 것이다. 만약 상기 프레임에 대한 표시 요청을 수신하였다면 방법 500은 다음 단계 510으로 이동하게 되고, 미디어 장치 104는 표시 시간(at time to dispaly)에 상기 표시될 프레임을 출력한다. 만약 다음 프레임이 표시될 시간까지 상기 프레임의 표시 요청이 없는 경우에는 방법 500은 단계 512로 이동하고 미디어 장치 104는 주어진 다음 프레임 표시 시간에 다음 프레임을 표시한다. 여기서 다음 프레임은 당해 비디오 신호에 주어진 프레임 레이트(frame rate)(예: 24, 30, 50, 60, 100, 120 frames per second)에 따라 표시된다.
일단 서버 106의 요청에 따라 초기 프레임이 동기화되어 표시된 다음에는 미디어 장치 104는 표시할 완전한 프레임 시퀀스를 공급하기 위해 상기 비디오 신호의 프레임 레이트에 따라 결정된 타이밍에 중간 삽입 프레임들(intervening frames)을 표시할 것이다.
서버 106로부터 동기화 요청을 받기 전에는 미디어 장치 104는 수신한 프레임들을 수신한 순서대로 표시할 수도 있다. 만약 동기화 요청이 이미 표시되었던 비디오 시퀀스의 일부분을 지시(indicate)할 때는 미디어 장치 104는 프레임 버퍼를 뒤로 돌려 상기 동기화 요청에 의해 지시된 프레임을 지시된 시간에 다시 표시한다.
단계 514에서 미디어 장치 104는 상기 신호가 계속해서 동기화되어야 하는지를 판단한다. 만약 계속 동기화되어야 한다면, 방법 500은 단계 502로 귀환한다. 일 실시예에서 동기화 서버 106는 미디어 장치 104에게 동기화된 표시를 중단하도록 하는 메시지를 보낼 수 있다.
도 6은 동기화 서버 106에 의해 동기화된 표시를 제공하는 방법 600의 일 실시예를 보여주는 흐름도이다.
먼저 단계 602에서 동기화 서버 106는 미디어 장치들 104로부터 비디오 시퀀 스의 서명들을 수신한 후 그 서명들을 메모리에 저장한다. 일 실시예에서 서버 106는 미디어 장치들 104 각각에 대해 프레임 서명 데이터를 포함하는 목록(list) 또는 데이터 구조(data structure)를 운영할 수 있다.
단계 604에서 서버 106는 미디어 장치들 104로부터 수신한 서명들을 비교함으로써 서로 매칭하는 서명들을 검색한다. 일 실시예에서 서버 106는 목록들 내에서 가장 오래된 프레임 서명을 선택한 후 선택된 서명과 동일한 서명을 찾기 위해 각 미디어 장치의 목록을 조사한다. 만약 매칭되는 서명을 발견하지 못하면, 그 선택된 서명을 목록에서 제거한 후, 두 번째로 오래된 프레임 서명에 대해 상기 과정을 반복한다. 다른 실시예에서는 상기 검색 방법 이외의 다른 적절한 검색 방법을 채택하여 매칭 서명을 찾을 수 있을 것이다.
다음 단계 606에서 서버 106는 상기 선택된 서명과 매칭하는 서명을 포함하는 리스트를 가진 모든 미디어 장치들 104에게 동기화 표시 요청을 보내 실질적으로 동일한 시간에 상기 프레임들을 표시하도록 한다. 상기 요청은 서명, 미디어 장치 104가 특정 프레임을 수신한 시간, 미디어 장치의 식별자(identifier) 등을 포함할 수 있다.
동기화 서버 106은 하나 이상의 다른 미디어 장치 그룹들로부터 수신한 이미지들의 표시를 위한 스케줄(schedule)을 관리할 수 있다. 동기화 서버 106는 그룹들을 구성하기 위한 인터페이스(예: 일련의 웹 페이지들)를 공급할 수 있다. 이와 달리 미디어 장치들 104이 그룹 구성 데이터(group configuration data)를 서버 106로 공급하고 서버 106가 이 데이터를 이용하여 하나 이상의 미디어 장치 그룹 들을 생성하거나 동기화할 방송 프로그램 또는 시간 주기(time period)를 인식할 수 있다.
실시예에 따라서는 방법 500(또는 방법 600)을 구성하는 동작 또는 이벤트들은 도 5(또는 도 6)에 도시된 것과는 다른 순서로 수행될 수 있으며, 소정의 동작 또는 이벤트들이 추가될 수 있고, 일부 동작 또는 이벤트들이 병합되거나 생략될 수 있다(즉, 상기 방법 500 및 600의 실시를 위해 상술한 모든 동작들이나 이벤트들이 필요한 것은 아니다). 그 밖에 다른 실시예에서는 상기 동작 또는 이벤트들은 (연속해서가 아니라) 동시에 수행될 수도 있다. 즉, 예를 들어 멀티 쓰레드 프로세싱(multi-threaded processing), 인터럽트 프로세싱(interrupt processing) 또는 멀티플 프로세서들(multiple processors)을 이용해서 동작 또는 이벤트들의 동시 수행이 가능하다.
도 7-9의 타이밍 다이어그램들은 미디어 장치 104A 및 미디어 장치 104B 각각에 대해 프레임들의 상대적인 타이밍 그리고 그들의 서명들에 대한 상대적인 타이밍을 도시하고 있으며 이와 더불어 상기 미디어 장치들 104을 위한 동기화 이벤트들을 도시하고 있다.
도 7-9에서 트레이스(trace) 702는 미디어 장치 104A가 특정한 서명들(예: S0, S5 및 S10)과 함께 프레임들을 수신하는 타이밍을 표시하며, 트레이스 704는 미디어 장치 104B가 프레임들을 수신하는 타이밍을 표시한다. 또한 트레이스 706은 특정한 서명들을 갖는 프레임들의 표시 요청의 타이밍을 도시하고 있다.
도 7에서 볼 수 있듯이 시청 동기화할 특정 프로그램이 시작되는 시점은 미 디어 장치 104A에서와 미디어 장치 104B에서가 서로 다르다. 그 이유는 미디어 장치들 104이 대응하는 방송 네트워크들 102로부터 비디오 신호를 수신하는 타이밍이 서로 다르기 때문이다. 특히, 여기서 미디어 장치 104B는 미디어 장치 104A보다 5초 빠르게 (서명들 S0, S5 및 S10에 의해 식별된) 동일한 프레임들을 수신한다. 서버 106가 미디어 장치들 104A 및 104B로부터 이 프레임들에 대한 서명들을 수신한 후 서버 106는 미디어 장치 104A 및 104B에게 미디어 장치 104B가 상기 프레임을 수신한 시간과 대략 동일한 시간에 상기 프레임들을 표시하도록 요청하게 된다(장치 간 통신 및 서버 106의 프로세싱 시간에 기인한 지연 시간은 도시되지 않았음을 고려하여야 한다). 도 2에 도시된 바와 같이 각 비디오 신호 방송은 서로 일치하지 않는 시간 간격들을 갖게 되는데 이 간격 동안, 광고, 방송국 식별 또는 다른 불일치 프레임 간격들 211 및 212들이 일부 또는 전부의 미디어 장치들 104에게 방송된다.
도 8은 이러한 프레임 간격들 211 및 210이 발생하는 경우 시스템 100에 의한 상기 프레임 동기화의 예를 보여준다. 미디어 장치 104A 및 104B가 프레임(S100)을 각각 t=105와 t=100에서 수신한다. 미디어 장치 104B는 t=105에서 프레임 S''105를 수신한 반면, 미디어 장치 104A는 t=110에서 프레임 S'105를 수신한다. 상기 프레임 S'105과 프레임 S''105는 서로 매칭되지 아니하므로 서버 106는 미디어 장치들 104에게 동기화 메시지를 보내지 않는다. 다만 미디어 장치 104는 자신이 재생 중인 시퀀스의 프레임 레이트(frame rate)에 따라 그 시퀀스의 다음 프레임들을 표시하게 된다.
일단 프레임(S100)에 의해 동기화된 후, 상기 미디어 장치들 104A 및 104B은 다시 새로운 동기화 요청을 받기 전까지 계속해서 수신한 프레임들을 차례대로 표시함으로써 동기를 유지하게 된다. 또한 동기화를 시작하기 위해서는 미디어 장치들 104는 이미 표시했던 프레임들을 반복해서 표시하거나 표시해야할 프레임들을 표시하지 않을 수도 있다.
도 9는 도 8에 이어 시간 구간 t=130-145에 대해 트레이스 702, 704 및 706를 보여주고 있는데 이는 도 9의 비매칭(non-matching) 프레임 간격들 211 및 212가 끝난 후 프레임을 재동기화(re-synchronization) 하는 과정을 설명하기 위한 것이다.
도 9에서 미디어 장치 104A는 비매칭 서명 S'130과 S'135를 수신한 후 t=140에서 첫번째 매칭 프레임 서명 S105를 수신하고, 미디어 장치 104B은 비매칭 서명 S''130을 수신한 후 t=135에서 매칭 프레임 서명 S105를 수신하게 된다. 이제 서버 106는 미디어 장치 104A 및 104B에게 상기 매칭 프레임(S105)을 동시에(t=140) 표시하도록 요청한다.
상술한 실시예들과 관련하여 설명한 방법 내지 알고리즘의 단계들은 직접 하드웨어의 형태로 구현될 수도 있지만, 프로세서에 의해 실행되는 소프트웨어 모듈의 형태로 구현될 수 있다. 또한 하드웨어와 소프트웨어의 결합 형태로도 구현될 수 있다. 소프트웨어 모듈은 하나 이상의 소프트웨어 및/또는 펌웨어를 포함하며, 하나 이상의 RAM 메모리, 플래시 메모리, ROM 메모리, EPROM 메모리, EEPROM 메모리, 레지스터, 하드 디스크, 탈부착식 메모리, CD-ROM 기타 저장매체에 저장될 수 있다. 상기 메모리 중 하나를 상기 프로세서에 결합함으로써 프로세서가 메모리로부터 정보를 독출하거나 정보를 기록할 수 있다. 상기 프로세서 및 저장 매체는 ASIC에 존재할 수도 있고, ASIC은 사용자 터미널에 존재할 수 있다. 이와 달리 상기 프로세서와 저장 매체는 사용자 터미널 상에서 독립된 구성요소로서 존재할 수도 있다.
이제까지 본 발명에 대하여 그 바람직한 실시 예들을 중심으로 살펴보았다. 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자는 본 발명이 본 발명의 본질적인 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현될 수 있음을 이해할 수 있을 것이다. 그러므로 개시된 실시예들은 한정적인 관점이 아니라 설명적인 관점에서 고려되어야 한다. 본 발명의 범위는 전술한 설명이 아니라 특허청구범위에 나타나 있으며, 그와 동등한 범위 내에 있는 모든 차이점은 본 발명에 포함된 것으로 해석되어야 할 것이다.
도 1은 동기화된 시청을 위해 2 이상의 디스플레이들에게 텔레비전 방송 신호 또는 다른 비디오 방송 신호를 공급하기 위한 시스템의 실시예의 구성 요소들을 보여주는 기능 블록도이다.
도 2는 도 1에 도시된 시스템의 실시예에 따라 수신된 비디오 신호들이 2 이상의 디스플레이에 표시되는 경우, 그 2 이상의 비디오 신호의 타이밍을 도시하는 다이어그램(diagram)이다.
도 3a는 비디오 시퀀스 내의 프레임들의 상대적인 시간을 보여주는 타임라인(timeline)이다.
도 3b는 (도 1에 도시된 시스템의) 동기화 서버 106와 2 개의 디스플레이 간의 도 3a의 프레임 시퀀스에 기초하여 프레임 동기화 데이터를 통신하는 예를 보여주는 타이밍 다이어그램이다.
도 4는 도 1에 도시된 시스템에서 동기화된 비디오 방송을 출력하도록 구성된 디스플레이의 실시예를 보여주는 기능 블록도이다.
도 5는 도 4에 도시된 디스플레이 내에서 비디오 방송 표시를 동기화하는 방법의 실시예를 보여주는 흐름도이다.
도 6은 도 1의 시스템 내에서 디스플레이들로 동기를 제공하는 방법의 일 실시예를 보여주는 흐름도이다.
도 7-9는 도 5 및 6의 방법들에 의한 프레임 동기화 이벤트들의 상대적인 타이밍을 보여주는 타이밍 다이어그램들이다.

Claims (30)

  1. 비디오 방송 신호의 프레임을 수신하는 단계;
    상기 수신한 프레임을 나타내는 데이터를 생성하는 단계;
    상기 수신한 프레임을 나타내는 데이터를 서버로 전송하는 단계;
    상기 서버로부터 수신한 프레임을 표시할 시간을 나타내는 데이터를 수신하는 단계; 및
    상기 수신한 프레임을 실질적으로 상기 표시 시간에 디스플레이 장치로 출력하는 비디오 방송 신호들을 동기화하는 방법.
  2. 제 1항에 있어서, 상기 동기화 방법은 상기 수신한 프레임을 실질적으로 상기 표시 시간에 표시하는 단계를 더 포함하는 비디오 방송 신호들을 동기화하는 방법.
  3. 제 1항에 있어서, 상기 수신한 프레임을 나타내는 데이터는 서명을 포함하는 비디오 방송 신호들을 동기화하는 방법.
  4. 제 1항에 있어서, 상기 표시 시간을 나타내는 데이터를 수신하는 단계는 상기 표시 시간에 상기 수신한 프레임을 표시하도록 지시하는 요청을 수신하는 단계를 포함하는 비디오 방송 신호들을 동기화하는 방법.
  5. 제 1항에 있어서, 상기 수신한 프레임을 표시할 시간을 나타내는 데이터는 상기 비디오 신호의 일시 정지, 되감기 및 빨리 감기 요청들 중 하나 이상에 기초하고 있는 비디오 방송 신호들을 동기화하는 방법.
  6. 제 1항에 있어서, 상기 동기화 방법은 상기 비디오 방송 신호의 표시 시간에 영향을 미치는 요청을 통신하는 단계를 더 포함하는 비디오 방송 신호들을 동기화하는 방법.
  7. 제 6항에 있어서, 상기 표시 시간에 영향을 미치는 요청은 상기 비디오 신호의 일시 정지, 되감기 및 빨리 감기 요청들 중 하나 이상을 포함하는 비디오 방송 신호들을 동기화하는 방법.
  8. 제 1항에 있어서, 상기 동기화 방법은 서버와 클락을 실질적으로 동기화하는 단계를 더 포함하며, 상기 표시 시간은 상기 클락을 참조하는 비디오 방송 신호들을 동기화하는 방법.
  9. 복수의 비디오 장치들 각각으로부터 복수의 비디오 프레임들 각각을 나타내는 데이터를 수신하는 단계;
    상기 수신한 데이터에 기초하여 각각의 비디오 장치에 의해 수신된 비디오 프레임들 중 최소한 하나 이상의 비디오 프레임들을 식별하는 단계; 및
    상기 최소한 하나 이상의 비디오 프레임들을 표시할 시간을 나타내는 데이터를 복수의 비디오 장치들 각각에게 전송하는 단계를 포함하는데,
    상기 비디오 장치들 각각은 비디오 방송으로부터 이미 프레임을 수신한 상태인 비디오 방송 신호들을 동기화하는 방법.
  10. 제 9항에 있어서, 상기 하나 이상의 프레임들을 식별하는 단계는 제 1 비디오 장치들로부터의 각 비디오 프레임을 나타내는 데이터를 각각의 다른 비디오 장치들로부터의 비디오 프레임들 각각을 나타내는 데이터에 매칭시키는 단계를 포함하는 비디오 방송 신호들을 동기화하는 방법.
  11. 제 9항에 있어서, 상기 동기화 방법은
    하나 이상의 비디오 장치들로부터 상기 비디오 프레임들을 표시할 시간에 영향을 줄 요청을 수신하는 단계; 및
    상기 요청을 참조하여 상기 하나 이상의 비디오 프레임들을 표시할 시간을 결정하는 단계를 포함하는 비디오 방송 신호들을 동기화하는 방법.
  12. 제 11항에 있어서, 상기 표시 시간에 영향을 주는 요청은 상기 비디오 신호의 일시 정지, 되감기 및 빨리 감기 요청들 중 하나 이상을 포함하는 비디오 방송 신호들을 동기화하는 방법.
  13. 제 9항에 있어서, 상기 동기화 방법은 서버와 클락을 실질적으로 동기화하는 단계를 더 포함하며, 상기 표시 시간은 상기 클락을 참조하는 비디오 방송 신호들을 동기화하는 방법.
  14. 비디오 방송 신호의 프레임을 수신하기 위한 수신기; 및
    최소한 하나 이상의 프로세서를 포함하며,
    상기 프로세서는
    상기 수신한 프레임을 나타내는 데이터를 생성하고;
    상기 수신한 프레임을 나타내는 데이터를 서버로 전송하고;
    상기 수신한 프레임을 표시할 시간을 알려주는 데이터를 상기 서버로부터 수신하며; 그리고
    상기 수신한 프레임을 실질적으로 상기 표시 시간에 디스플레이 장치로 출력하도록 구성되는 비디오 방송 신호들을 동기화하는 시스템.
  15. 제 14항에 있어서, 상기 동기화 시스템은 실질적으로 상기 표시 시간에 수신한 프레임을 표시하도록 구성된 디스플레이를 더 포함하는 비디오 방송 신호들을 동기화하는 시스템.
  16. 제 14항에 있어서, 상기 동기화 시스템은 텔레비전, 셋탑 박스 및 비디오 레 코더 중 하나 이상을 포함하는 비디오 방송 신호들을 동기화하는 시스템.
  17. 제 14항에 있어서, 상기 수신된 프레임을 나타내는 데이터는 서명을 포함하는 비디오 방송 신호들을 동기화하는 시스템.
  18. 제 14항에 있어서, 상기 수신한 프레임을 표시할 시간을 나타내는 데이터는 상기 표시 시간에 상기 수신한 프레임을 표시하도록 지시하는 요청을 포함하는 비디오 방송 신호들을 동기화하는 시스템.
  19. 제 18항에 있어서, 상기 수신한 프레임을 표시할 시간을 나타내는 데이터는 상기 비디오 신호의 일시 정지, 되감기 및 빨리 감기 요청들 중 하나 이상에 기초하고 있는 비디오 방송 신호들을 동기화하는 시스템.
  20. 제 14항에 있어서, 상기 프로세서는 더 나아가 상기 비디오 방송 신호의 표시 시간에 영향을 줄 요청을 통신하도록 구성된 비디오 방송 신호들을 동기화하는 시스템.
  21. 제 20항에 있어서, 상기 표시 시간에 영향을 주는 요청은 상기 비디오 신호의 일시 정지, 되감기 및 빨리 감기 요청들 중 하나 이상을 포함하는 비디오 방송 신호들을 동기화하는 시스템.
  22. 제 14항에 있어서, 상기 프로세서는 서버와 클락을 실질적으로 동기화하도록 구성되며, 상기 표시 시간은 상기 클락을 참조하는 비디오 방송 신호들을 동기화하는 시스템.
  23. 제 14항에 있어서, 상기 동기화 시스템은 네트워크를 통해 상기 프로세서와 상기 서버 간 데이터를 통신하도록 구성된 송수신기를 더 포함하는 비디오 방송 신호들을 동기화하는 시스템.
  24. 비디오 방송 신호의 프레임을 수신하기 위한 수단; 및
    프로세싱 수단을 포함하며,
    상기 프로세싱 수단은
    상기 수신한 프레임을 나타내는 데이터를 생성하고;
    상기 수신한 프레임을 나타내는 데이터를 서버로 전송하고;
    상기 수신한 프레임을 표시할 시간을 알려주는 데이터를 상기 서버로부터 수신하고; 그리고
    상기 수신한 프레임을 실질적으로 상기 표시 시간에 디스플레이 장치로 출력하도록 구성된 비디오 방송 신호들을 동기화하는 시스템.
  25. 최소한 하나 이상의 프로세서에 의해 실행될 수 있는 코드들을 저장하고 있 는 컴퓨터로 읽을 수 있는 매체를 포함하며,
    상기 프로세서는
    비디오 방송 신호 프레임을 수신하고;
    상기 수신한 프레임을 나타내는 데이터를 생성하고;
    상기 수신한 프레임을 나타내는 데이터를 서버로 전송하고;
    상기 수신한 프레임을 표시할 시간을 알려주는 데이터를 상기 서버로부터 수신하며; 그리고
    상기 수신한 프레임을 실질적으로 상기 표시 시간에 디스플레이 장치로 출력하도록 구성되는 비디오 방송 신호들을 동기화하기 위한 컴퓨터 프로그램 제품.
  26. 복수의 비디오 장치들 각각의 각각으로부터 수신한 복수의 비디오 프레임들 각각을 나타내는 데이터를 저장하는 메모리; 및
    상기 저장된 데이터에 기초하여 각각의 비디오 장치에 의해 수신한 최소한 하나 이상의 비디오 프레임들을 식별하고, 상기 최소한 하나 이상의 비디오 프레임들을 표시할 시간을 나타내는 데이터를 복수의 비디오 장치들 각각에게 전송하도록 구성된 프로세서를 포함하며,
    상기 비디오 장치들 각각은 비디오 방송으로부터 이미 프레임을 수신한 상태인 비디오 방송 신호를 동기화하는 시스템.
  27. 제 26항에 있어서, 상기 프로세서가 하나 이상의 프레임들을 식별하는 것은 제 1 비디오 장치들로부터의 각 비디오 프레임을 나타내는 데이터를 다른 비디오 장치들 각각으로부터 수신한 비디오 프레임들 각각을 나타내는 데이터에 매칭시키는 것인 비디오 방송 신호들을 동기화하는 시스템.
  28. 제 26항에 있어서, 상기 프로세서는
    하나 이상의 비디오 장치들로부터 상기 비디오 프레임들을 표시할 시간에 영향을 줄 요청을 수신하고; 그리고
    상기 요청을 참조하여 상기 하나 이상의 비디오 프레임들을 표시할 시간을 결정하는데,
    상기 표시 시간에 영향을 줄 요청은 상기 비디오 신호의 일시 정지, 되감기 및 빨리 감기 요청들 중 하나 이상을 포함하는 비디오 방송 신호들을 동기화하는 시스템.
  29. 제 26항에 있어서, 상기 프로세서는 서버와 클락을 실질적으로 동기화하도록 구성되며, 상기 표시 시간은 상기 클락을 참조하는 비디오 방송 신호들을 동기화하는 시스템.
  30. 최소한 하나 이상의 프로세서에 의해 실행될 수 있는 코드들을 저장하고 있는 컴퓨터로 읽을 수 있는 매체를 포함하며,
    상기 프로세서는
    각각의 복수의 비디오 장치들로부터 복수의 비디오 프레임들을 나타내는 데이터를 수신하고;
    상기 수신한 데이터에 기초하여 각각의 비디오 장치에 의해 수신된 비디오 프레임들 중 최소한 하나 이상의 식별하며; 그리고
    상기 최소한 하나 이상의 비디오 프레임들을 표시할 시간을 나타내는 데이터를 복수의 비디오 장치들 각각에게 전송하며,
    상기 비디오 장치들 각각은 비디오 방송으로부터 이미 프레임을 수신한 상태인 비디오 방송 신호들을 동기화하기 위한 컴퓨터 프로그램 제품.
KR1020080059792A 2008-04-07 2008-06-24 복수의 방송 네트워크들과 연관된 텔레비전 신호들을동기화하기 위한 시스템 및 방법 KR101434204B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US12/098.989 2008-04-07
US12/098,989 US8245262B2 (en) 2008-04-07 2008-04-07 System and method for synchronization of television signals associated with multiple broadcast networks

Publications (2)

Publication Number Publication Date
KR20090106973A true KR20090106973A (ko) 2009-10-12
KR101434204B1 KR101434204B1 (ko) 2014-09-23

Family

ID=41132910

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020080059792A KR101434204B1 (ko) 2008-04-07 2008-06-24 복수의 방송 네트워크들과 연관된 텔레비전 신호들을동기화하기 위한 시스템 및 방법

Country Status (2)

Country Link
US (1) US8245262B2 (ko)
KR (1) KR101434204B1 (ko)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2012503917A (ja) * 2008-09-26 2012-02-09 コーニンクレッカ フィリップス エレクトロニクス エヌ ヴィ 2つの装置間の通信のための方法及び装置
US9313531B2 (en) 2010-10-06 2016-04-12 Thomson Licensing Device and method for content delivery adapted for synchronous playbacks
CN102611932B (zh) * 2011-01-25 2014-09-17 国基电子(上海)有限公司 机顶盒及其录制电视节目的方法
US8848024B2 (en) 2011-03-08 2014-09-30 CSC Holdings, LLC Virtual communal television viewing
KR101459551B1 (ko) * 2011-07-05 2014-11-10 주식회사 케이티 방송 콘텐츠 정보 제공 방법 및 시스템
EP2740266A1 (en) 2011-08-01 2014-06-11 Thomson Licensing Telepresence communications system and method
JP5916244B2 (ja) * 2011-12-29 2016-05-11 株式会社ソニー・インタラクティブエンタテインメント 映像再生システム
BR112014021401B1 (pt) 2012-03-09 2022-10-11 Interdigital Madison Patent Holdings Método para processar um comando de transporte em um controlador de conteúdo local e método para processar um primeiro comando de transporte em um controlador de conteúdo local para controlar conteúdo compartilhado
US20130271655A1 (en) * 2012-04-12 2013-10-17 Google Inc. System, apparatus and method to facilitate live video streaming
EP2670157B1 (en) 2012-06-01 2019-10-02 Koninklijke KPN N.V. Fingerprint-based inter-destination media synchronization
WO2014168616A1 (en) 2013-04-10 2014-10-16 Thomson Licensing Tiering and manipulation of peer's heads in a telepresence system
JP2016526826A (ja) 2013-06-20 2016-09-05 トムソン ライセンシングThomson Licensing コンテンツの分散型再生の同期化を支援するシステム及び方法
US9549027B2 (en) 2013-09-27 2017-01-17 Dolby Laboratories Licensing Corporation Network-synchronized media playback
KR20150068813A (ko) * 2013-12-12 2015-06-22 삼성전자주식회사 서버, 디스플레이 장치, 복수의 디스플레이 장치 영상 제어 시스템 및 이의 제어 방법
KR20160040015A (ko) 2014-10-02 2016-04-12 삼성전자주식회사 디스플레이 장치, 이의 제어 방법 및 디스플레이 시스템의 제어 방법
DE102014226772A1 (de) * 2014-12-22 2016-06-23 Siemens Aktiengesellschaft Vorrichtung und Verfahren zum Senden und Verfifizieren einer Signatur
US10764473B2 (en) * 2016-01-14 2020-09-01 Disney Enterprises, Inc. Automatically synchronizing multiple real-time video sources
US10771508B2 (en) 2016-01-19 2020-09-08 Nadejda Sarmova Systems and methods for establishing a virtual shared experience for media playback
EP3864819B1 (en) * 2018-10-11 2024-06-12 Digital Tangible, S.L. Web access control method
US11178446B2 (en) * 2020-03-09 2021-11-16 Haworth, Inc. Synchronous video content collaboration across multiple clients in a distributed collaboration system
US11277663B2 (en) * 2020-05-18 2022-03-15 Mercury Analytics, LLC Systems and methods for providing survey data
US11388314B1 (en) * 2020-11-12 2022-07-12 Gopro, Inc. GPS timing for video frames

Family Cites Families (11)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4739398A (en) * 1986-05-02 1988-04-19 Control Data Corporation Method, apparatus and system for recognizing broadcast segments
US4931871A (en) * 1988-06-14 1990-06-05 Kramer Robert A Method of and system for identification and verification of broadcasted program segments
US5436653A (en) * 1992-04-30 1995-07-25 The Arbitron Company Method and system for recognition of broadcast segments
US6754904B1 (en) * 1999-12-30 2004-06-22 America Online, Inc. Informing network users of television programming viewed by other network users
US7114172B2 (en) * 2001-06-28 2006-09-26 Koninklijke Philips Electronics N.V. Synchronized personal video recorders
US7555196B1 (en) * 2002-09-19 2009-06-30 Microsoft Corporation Methods and systems for synchronizing timecodes when sending indices to client devices
EP1623555A1 (en) * 2003-05-02 2006-02-08 Koninklijke Philips Electronics N.V. Redundant transmission of programmes
US8190680B2 (en) * 2004-07-01 2012-05-29 Netgear, Inc. Method and system for synchronization of digital media playback
US7865927B2 (en) * 2006-09-11 2011-01-04 Apple Inc. Enhancing media system metadata
KR101391922B1 (ko) * 2006-10-12 2014-05-07 삼성전자주식회사 방송 프로그램 정보를 제공하는 시스템, 장치 및 방법
US8332898B2 (en) * 2007-08-09 2012-12-11 Echostar Technologies L.L.C. Apparatus, systems and methods to synchronize communication of content to a presentation device and a mobile device

Also Published As

Publication number Publication date
US20090251599A1 (en) 2009-10-08
KR101434204B1 (ko) 2014-09-23
US8245262B2 (en) 2012-08-14

Similar Documents

Publication Publication Date Title
KR101434204B1 (ko) 복수의 방송 네트워크들과 연관된 텔레비전 신호들을동기화하기 위한 시스템 및 방법
US20220303599A1 (en) Synchronizing Program Presentation
KR101879455B1 (ko) 수신 장치, 수신 방법, 송신 장치, 송신 방법, 프로그램, 및 방송 시스템
US9055309B2 (en) Systems and methods for identifying video segments for displaying contextually relevant content
JP5903924B2 (ja) 受信装置および字幕処理方法
KR20210021099A (ko) 프레임적으로 정확한 컨텐츠 수정을 용이하게 하기 위해, 낮은 레이트 핑거프린팅을 사용하는 보간을 기반으로 하는 시간 맵핑의 확립 및 사용
KR101243390B1 (ko) 표시 장치 및 이동 장치로의 컨텐츠 전달을 동기화하는 장치, 시스템 및 방법
EP1406403A1 (en) Apparatus and method for transmitting and receiving multimedia broadcasting
GB2473306A (en) An Audiovisual Media Substitution System
CN109714622B (zh) 一种视频数据处理方法、装置及电子设备
CA2906173A1 (en) Systems and methods for identifying video segments for displaying contextually relevant content
EP2579605B1 (en) Synchronising digital media content
EP4221235A2 (en) Systems and methods for identifying video segments for displaying contextually relevant content
CN104012101A (zh) 视频再现***
CA2568514C (en) Display of enhanced content
JP5924728B2 (ja) 信号処理装置及びプログラム
US20080059999A1 (en) Multi-function display controller
JP2011091754A (ja) 映像処理装置及び映像処理方法
EP2723067B1 (en) Information-providing system, reception device, and information management server
JP6157679B2 (ja) 信号処理装置及びプログラム
US11470362B1 (en) Providing audio data for a video frame
JP2010087979A (ja) 番組配信システム、番組配信サーバ、番組再生端末、番組配信方法、サーバおよび端末制御プログラム
JP2005277946A (ja) 映像受信装置
TW201935932A (zh) 多設備間的媒體同步播放方法

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee