KR102504174B1 - 전자 장치 및 그의 제어방법 - Google Patents

전자 장치 및 그의 제어방법 Download PDF

Info

Publication number
KR102504174B1
KR102504174B1 KR1020180054460A KR20180054460A KR102504174B1 KR 102504174 B1 KR102504174 B1 KR 102504174B1 KR 1020180054460 A KR1020180054460 A KR 1020180054460A KR 20180054460 A KR20180054460 A KR 20180054460A KR 102504174 B1 KR102504174 B1 KR 102504174B1
Authority
KR
South Korea
Prior art keywords
server
schedule information
information
frequency
broadcasting schedule
Prior art date
Application number
KR1020180054460A
Other languages
English (en)
Other versions
KR20190129586A (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 KR1020180054460A priority Critical patent/KR102504174B1/ko
Priority to PCT/KR2019/004174 priority patent/WO2019216554A1/en
Priority to CN201980030285.4A priority patent/CN112075085B/zh
Priority to EP19169881.0A priority patent/EP3567861B1/en
Priority to US16/396,214 priority patent/US10841656B2/en
Publication of KR20190129586A publication Critical patent/KR20190129586A/ko
Application granted granted Critical
Publication of KR102504174B1 publication Critical patent/KR102504174B1/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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • 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/442Monitoring of processes or resources, e.g. detecting the failure of a recording device, monitoring the downstream bandwidth, the number of times a movie has been viewed, the storage space available from the internal hard disk
    • H04N21/44213Monitoring of end-user related data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/35Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users
    • H04H60/37Arrangements for identifying or recognising characteristics with a direct linkage to broadcast information or to broadcast space-time, e.g. for identifying broadcast stations or for identifying users for identifying segments of broadcast information, e.g. scenes or extracting programme ID
    • H04H60/372Programme
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/68Systems specially adapted for using specific information, e.g. geographical or meteorological information
    • H04H60/72Systems specially adapted for using specific information, e.g. geographical or meteorological information using electronic programme guides [EPG]
    • 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/237Communication with additional data 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/431Generation of visual interfaces for content selection or interaction; Content or additional data rendering
    • H04N21/4312Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
    • H04N21/4314Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations for fitting data in a restricted space on the screen, e.g. EPG data in a rectangular grid
    • 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/434Disassembling of a multiplex stream, e.g. demultiplexing audio and video streams, extraction of additional data from a video stream; Remultiplexing of multiplex streams; Extraction or processing of SI; Disassembling of packetised elementary stream
    • H04N21/4345Extraction or processing of SI, e.g. extracting service information from an MPEG stream
    • 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/44008Processing 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 operations for analysing video streams, e.g. detecting features or characteristics in the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/472End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content
    • H04N21/47202End-user interface for requesting content, additional data or services; End-user interface for interacting with content, e.g. for content reservation or setting reminders, for requesting event notification, for manipulating displayed content for requesting content on demand, e.g. video on demand
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8358Generation of protective data, e.g. certificates involving watermark

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Multimedia (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Social Psychology (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)

Abstract

전자 장치가 개시된다. 본 전자 장치는 통신부, 컴퓨터 실행가능 명령어(computer executable instructions)를 저장하는 메모리 및 컴퓨터 실행가능 명령어를 실행함으로써, 방송 스케줄 정보를 통신부를 통해 수신하고, 사용자에 의해 선택된 채널에 대응하는 컨텐츠 신호를 기초로 영상을 제공하며, 영상이 제공되는 동안 컨텐츠 신호로부터 특징 정보를 획득하고, 획득한 특징 정보에 대응하는 컨텐츠 정보에 대한 요청을 서버로 전송하도록 통신부를 제어하는 프로세서를 포함하고, 프로세서는, 선택된 채널에 대한 방송 스케줄 정보가 부정확한 것으로 식별되면 요청을 제1 빈도로 서버에 전송하고, 선택된 채널에 대한 방송 스케줄 정보가 정확한 것으로 식별되면 요청을 제1 빈도보다 낮은 빈도로 서버에 전송하도록 통신부를 제어한다.

Description

전자 장치 및 그의 제어방법 { ELECTRONIC APPARATUS AND CONTROLLING METHOD THEREOF }
본 개시는 전자 장치 및 그의 제어방법에 대한 것으로, 더욱 상세하게는 컨텐츠 인식을 위한 요청을 서버로 전송하는 빈도를 감소시킬 수 있는 전자 장치 및 그의 제어방법에 관한 것이다.
사용자의 니즈가 점차 다양해지면서, 방송 컨텐츠 또는 멀티미디어 컨텐츠의 출처가 공중파 위주의 단일 소스에서, 케이블, IPTV(Internet Protocol TV), VOD(Video On Demand) 등의 다양한 소스들로 변화되고 있다. 그리고 맞춤형 광고나 프로그램 추천 등의 정보를 제공하는 소스들도 발생하고 있었다.
이와 같은 맞춤형 광고나 프로그램 추천 등의 정보는, 현재 출력되는 장면에 맞게 적절하게 제공될 필요가 있다. 가령, 특정 제품에 대한 광고 메시지는 해당 제품이 노출되는 장면이 표시될 때, 함께 표시되는 것이 가장 효과적이다. 따라서, 현재 사용자가 시청하고 있는 컨텐츠가 무엇인지 인식하는 기술이 필요하였다. 맞춤형 광고뿐만 아니라, 시청률 조사, 시청 패턴 조사 등을 위해서도 컨텐츠 인식 기술이 필요하였다.
이를 위해, 클라이언트 장치는 현재 시청되고 있는 컨텐츠에 대한 인식 요청을 서버로 전송하여 그에 대한 응답을 서버로부터 받는 방식으로 컨텐츠를 인식하는 기술이 등장하였다. 핑거프린트를 이용한 ACR(Automatic Contents Recognition) 기술이 대표적이었다.
그러나 현재 시청하고 있는 컨텐츠를 실시간으로 인식하기 위해 매번 서버로 요청을 전송해야 하는데, 이로 인해 발생하는 성능 저하와 비용 부담이 상당하다는 문제가 있었다.
본 개시는 상술한 문제에 따라 고안된 것으로, 본 개시의 목적은 컨텐츠 인식을 위한 요청을 서버로 전송하는 빈도를 감소시킬 수 있는 전자 장치 및 그의 제어방법을 제공함에 있다.
이상과 같은 목적을 달성하기 위한 본 개시의 일 실시 예에 따른 전자 장치는, 통신부, 컴퓨터 실행가능 명령어(computer executable instructions)를 저장하는 메모리 및 상기 컴퓨터 실행가능 명령어를 실행함으로써, 방송 스케줄 정보를 상기 통신부를 통해 수신하고, 사용자에 의해 선택된 채널에 대응하는 컨텐츠 신호를 기초로 영상을 제공하며, 상기 영상이 제공되는 동안 상기 컨텐츠 신호로부터 특징 정보를 획득하고, 상기 획득한 특징 정보에 대응하는 컨텐츠 정보에 대한 요청을 서버로 전송하도록 상기 통신부를 제어하는 프로세서를 포함하고, 상기 프로세서는, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 제1 빈도로 서버에 전송하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한 것으로 식별되면 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송하도록 상기 통신부를 제어한다.
이 경우, 상기 프로세서는, 기 서버로 상기 요청을 전송한 것에 대응하여 상기 서버로부터 컨텐츠 정보를 상기 통신부를 통해 수신하고, 상기 수신된 컨텐츠 정보를 상기 방송 스케줄 정보와 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다.
한편, 상기 프로세서는, 상기 제공되는 영상에 포함된 프로그램 명칭을 OCR(Optical character recognition)을 이용해 획득하고, 상기 획득된 프로그램 명칭을 상기 방송 스케줄 정보와 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다.
한편, 상기 프로세서는, 상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송한 것에 대응하여 상기 서버로부터 수신한 컨텐츠 정보를 상기 방송 스케줄 정보와 비교하고, 비교 결과 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 상기 제1 빈도로 상기 서버에 전송하도록 상기 통신부를 제어할 수 있다.
한편, 상기 프로세서는, 상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 광고가 방송될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송하도록 상기 통신부를 제어할 수 있다.
이 경우, 상기 프로세서는, 상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 상기 광고가 종료될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송하도록 상기 통신부를 제어할 수 있다.
한편, 상기 프로세서는, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면, 상기 방송 스케줄 정보를 제공한 외부 서버로 방송 스케줄 정보의 부정확을 알리는 정보를 전송하도록 상기 통신부를 제어할 수 있다.
한편, 상기 프로세서는, 상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보가 부정확한 것임을 알리는 UI 요소를 제공할 수 있다.
한편, 상기 프로세서는, 상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면, 상기 요청을 상기 서버로 전송한 것에 대응하여 상기 서버로부터 수신한 컨텐츠 정보를 기초로 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보를 수정할 수 있다.
한편, 상기 프로세서는, 상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송하다가 채널이 변경되면, 상기 요청을 상기 제1 빈도로 상기 서버에 전송하도록 상기 통신부를 제어할 수 있다.
한편, 상기 특징 정보는 상기 컨텐츠 신호로부터 획득된 오디오 핑거프린트 및 비디오 핑거프린트 중 적어도 하나일 수 있다.
한편, 본 개시의 일 실시 예에 따른 전자 장치의 제어방법은, 방송 스케줄 정보를 획득하는 단계, 사용자에 의해 선택된 채널에 대응하는 컨텐츠 신호를 기초로 영상을 제공하는 단계 및 상기 영상이 제공되는 동안 상기 컨텐츠 신호로부터 특징 정보를 획득하고 획득된 특징 정보에 대응하는 컨텐츠 정보에 대한 요청을 서버로 전송하는 단계를 포함하고, 상기 전송하는 단계는, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 제1 빈도로 서버에 전송하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한 것으로 식별되면 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송한다.
이 경우, 본 실시 예에 따른 전자 장치의 제어방법은 상기 서버로 상기 요청을 전송한 것에 대응하여 상기 서버로부터 컨텐츠 정보를 수신하고, 상기 수신된 컨텐츠 정보를 상기 방송 스케줄 정보와 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별하는 단계를 더 포함할 수 있다.
한편, 본 실시 예에 따른 전자 장치의 제어방법은 상기 제공되는 영상에 포함된 프로그램 명칭을 OCR(Optical character recognition)을 이용해 획득하고, 상기 획득된 프로그램 명칭을 상기 방송 스케줄 정보와 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별하는 단계를 더 포함할 수 있다.
한편, 상기 전송하는 단계는, 상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송한 것에 대응하여 상기 서버로부터 수신한 컨텐츠 정보를 상기 방송 스케줄 정보와 비교하고, 비교 결과 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 상기 제1 빈도로 상기 서버에 전송할 수 있다.
한편, 상기 전송하는 단계는, 상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 광고가 방송될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송할 수 있다.
이 경우, 상기 전송하는 단계는, 상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 상기 광고가 종료될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송할 수 있다.
한편, 본 실시 예에 따른 전자 장치의 제어방법은 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면, 상기 방송 스케줄 정보를 제공한 외부 서버로 방송 스케줄 정보의 부정확을 알리는 정보를 전송하는 단계를 더 포함할 수 있다.
한편, 본 실시 예에 따른 전자 장치의 제어방법은 상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공하는 단계, 및 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보가 부정확한 것임을 알리는 UI 요소를 제공하는 단계를 더 포함할 수 있다.
한편, 본 실시 예에 따른 전자 장치의 제어방법은 상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공하는 단계 및 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 상기 서버로 전송한 것에 대응하여 상기 서버로부터 수신한 컨텐츠 정보를 기초로 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보를 수정하는 단계를 더 포함할 수 있다.
도 1은 본 개시의 일 실시 예에 따른 컨텐츠 인식 시스템을 설명하기 위한 도면,
도 2는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 설명하기 위한 블록도,
도 3 내지 도 4는 컨텐츠 인식을 위해 서버로 전송하는 요청의 빈도를 제어하는 본 개시의 다양한 실시 예를 설명하기 위한 도면,
도 5는 본 개시의 일 실시 예에 따른 전자 장치의 개념도를 도시한 도면,
도 6은 방송 스케줄 정보의 정확 여부를 식별하는 본 개시의 일 실시 예를 설명하기 위한 도면,
도 7은 본 개시의 일 실시 예에 따른 채널별 방송 스케줄 정보 정확 여부를 나타내는 매칭 테이블을 설명하기 위한 도면,
도 8은 방송 스케줄 정보 정확 여부를 사용자에게 알리는 본 개시의 일 실시 예를 설명하기 위한 도면,
도 9는 본 개시의 일 실시 예에 따른 전자 장치의 구성을 설명하기 위한 세부 블록도, 그리고
도 10은 본 개시의 일 실시 예에 따른 전자 장치의 제어방법을 설명하기 위한 흐름도이다.
이하, 본 문서의 다양한 실시 예가 첨부된 도면을 참조하여 기재된다. 그러나 이는 본 문서에 기재된 기술을 특정한 실시 형태에 대해 한정하려는 것이 아니며, 본 문서의 실시 예의 다양한 변경(modifications), 균등물(equivalents), 및/또는 대체물(alternatives)을 포함하는 것으로 이해되어야 한다. 도면의 설명과 관련하여, 유사한 구성요소에 대해서는 유사한 참조 부호가 사용될 수 있다.
본 문서에서, "가진다," "가질 수 있다," "포함한다," 또는 "포함할 수 있다" 등의 표현은 해당 특징(예: 수치, 기능, 동작, 또는 부품 등의 구성요소)의 존재를 가리키며, 추가적인 특징의 존재를 배제하지 않는다.
본 문서에서, "A 또는 B," "A 또는/및 B 중 적어도 하나," 또는 "A 또는/및 B 중 하나 또는 그 이상" 등의 표현은 함께 나열된 항목들의 모든 가능한 조합을 포함할 수 있다. 예를 들면, "A 또는 B," "A 및 B 중 적어도 하나," 또는 "A 또는 B 중 적어도 하나"는, (1) 적어도 하나의 A를 포함, (2) 적어도 하나의 B를 포함, 또는 (3) 적어도 하나의 A 및 적어도 하나의 B 모두를 포함하는 경우를 모두 지칭할 수 있다.
본 문서에서 사용된 "제1," "제2," "첫째," 또는 "둘째," 등의 표현들은 다양한 구성요소들을, 순서 및/또는 중요도에 상관없이 수식할 수 있고, 한 구성요소를 다른 구성요소와 구분하기 위해 사용될 뿐 해당 구성요소들을 한정하지 않는다. 예를 들면, 제1 사용자 기기와 제2 사용자 기기는, 순서 또는 중요도와 무관하게, 서로 다른 사용자 기기를 나타낼 수 있다. 예를 들면, 본 문서에 기재된 권리 범위를 벗어나지 않으면서 제1 구성요소는 제2 구성요소로 명명될 수 있고, 유사하게 제2 구성요소도 제1 구성요소로 바꾸어 명명될 수 있다.
본 문서에서 사용된 "모듈", "유닛", "부(part)" 등과 같은 용어는 적어도 하나의 기능이나 동작을 수행하는 구성요소를 지칭하기 위한 용어이며, 이러한 구성요소는 하드웨어 또는 소프트웨어로 구현되거나 하드웨어 및 소프트웨어의 결합으로 구현될 수 있다. 또한, 복수의 "모듈", "유닛", "부(part)" 등은 각각이 개별적인 특정한 하드웨어로 구현될 필요가 있는 경우를 제외하고는, 적어도 하나의 모듈이나 칩으로 일체화되어 적어도 하나의 프로세서로 구현될 수 있다.
어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "(기능적으로 또는 통신적으로) 연결되어((operatively or communicatively) coupled with/to)" 있다거나 "접속되어(connected to)" 있다고 언급된 때에는, 상기 어떤 구성요소가 상기 다른 구성요소에 직접적으로 연결되거나, 다른 구성요소(예: 제3 구성요소)를 통하여 연결될 수 있다고 이해되어야 할 것이다. 반면에, 어떤 구성요소(예: 제1 구성요소)가 다른 구성요소(예: 제2 구성요소)에 "직접 연결되어" 있다거나 "직접 접속되어" 있다고 언급된 때에는, 상기 어떤 구성요소와 상기 다른 구성요소 사이에 다른 구성요소(예: 제3 구성요소)가 존재하지 않는 것으로 이해될 수 있다.
본 문서에서 사용된 표현 "~하도록 구성된(또는 설정된)(configured to)"은 상황에 따라, 예를 들면, "~에 적합한(suitable for)," "~하는 능력을 가지는(having the capacity to)," "~하도록 설계된(designed to)," "~하도록 변경된(adapted to)," "~하도록 만들어진(made to)," 또는 "~를 할 수 있는(capable of)"과 바꾸어 사용될 수 있다. 용어 "~하도록 구성된(또는 설정된)"은 하드웨어적으로 "특별히 설계된(specifically designed to)" 것만을 반드시 의미하지 않을 수 있다. 대신, 어떤 상황에서는, "~하도록 구성된 장치"라는 표현은, 그 장치가 다른 장치 또는 부품들과 함께 "~할 수 있는" 것을 의미할 수 있다. 예를 들면, 문구 "A, B, 및 C를 수행하도록 구성된(또는 설정된) 프로세서"는 해당 동작을 수행하기 위한 전용 프로세서(예: 임베디드 프로세서), 또는 메모리 장치에 저장된 하나 이상의 소프트웨어 프로그램들을 실행함으로써, 해당 동작들을 수행할 수 있는 범용 프로세서(generic-purpose processor)(예: CPU 또는 application processor)를 의미할 수 있다.
본 문서에서 사용된 용어들은 단지 특정한 실시 예를 설명하기 위해 사용된 것으로, 다른 실시 예의 범위를 한정하려는 의도가 아닐 수 있다. 단수의 표현은 문맥상 명백하게 다르게 뜻하지 않는 한, 복수의 표현을 포함할 수 있다. 기술적이거나 과학적인 용어를 포함해서 여기서 사용되는 용어들은 본 문서에 기재된 기술 분야에서 통상의 지식을 가진 자에 의해 일반적으로 이해되는 것과 동일한 의미를 가질 수 있다. 본 문서에 사용된 용어들 중 일반적인 사전에 정의된 용어들은, 관련 기술의 문맥상 가지는 의미와 동일 또는 유사한 의미로 해석될 수 있으며, 본 문서에서 명백하게 정의되지 않는 한, 이상적이거나 과도하게 형식적인 의미로 해석되지 않는다. 경우에 따라서, 본 문서에서 정의된 용어일지라도 본 문서의 실시 예들을 배제하도록 해석될 수 없다.
본 문서의 다양한 실시 예들에 따른 전자 장치는, 예를 들면, 스마트폰(smartphone), 태블릿 PC(tablet personal computer), 이동 전화기(mobile phone), 영상 전화기, 전자책 리더기(e-book reader), 데스크톱 PC(desktop personal computer), 랩톱 PC(laptop personal computer), 넷북 컴퓨터(netbook computer), 워크스테이션(workstation), 서버, PDA(personal digital assistant), PMP(portable multimedia player), MP3 플레이어, 모바일 의료기기, 카메라(camera), 또는 웨어러블 장치(wearable device) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에 따르면, 웨어러블 장치는 액세서리형(예: 시계, 반지, 팔찌, 발찌, 목걸이, 안경, 콘택트렌즈, 또는 머리 착용형 장치(head-mounted-device(HMD)), 직물 또는 의류 일체형(예: 전자 의복), 신체 부착형(예: 스킨 패드(skin pad) 또는 문신), 또는 생체 이식형(예: implantable circuit) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예들에서, 전자 장치는 가전제품(home appliance)일 수 있다. 가전제품은, 예를 들면, 텔레비전, DVD(digital video disk) 플레이어, 오디오, 냉장고, 에어컨, 청소기, 오븐, 전자레인지, 세탁기, 공기 청정기, 셋톱 박스(set-top box), 홈 오토매이션 컨트롤 패널(home automation control panel), 보안 컨트롤 패널(security control panel), TV 박스(예: 삼성 HomeSync™, 삼성 One Connect Box™애플TV™, 또는 구글 TV™), 게임 콘솔(예: Xbox™, PlayStation™), 전자 사전, 전자 키, 캠코더(camcorder), 또는 전자 액자 중 적어도 하나를 포함할 수 있다.
다른 실시 예에서, 전자 장치는, 각종 의료기기(예: 각종 휴대용 의료측정기기(혈당 측정기, 심박 측정기, 혈압 측정기, 또는 체온 측정기 등), MRA(magnetic resonance angiography), MRI(magnetic resonance imaging), CT(computed tomography), 촬영기, 또는 초음파기 등), 네비게이션(navigation) 장치, 위성 항법 시스템(GNSS(global navigation satellite system)), EDR(event data recorder), FDR(flight data recorder), 자동차 인포테인먼트(infotainment) 장치, 선박용 전자 장비(예: 선박용 항법 장치, 자이로 콤파스 등), 항공 전자기기(avionics), 보안 기기, 차량용 헤드 유닛(head unit), 산업용 또는 가정용 로봇, 금융 기관의 ATM(automatic teller's machine), 상점의 POS(point of sales), 또는 사물 인터넷 장치(internet of things)(예: 전구, 각종 센서, 전기 또는 가스 미터기, 스프링클러 장치, 화재경보기, 온도조절기(thermostat), 가로등, 토스터(toaster), 운동기구, 온수탱크, 히터, 보일러 등) 중 적어도 하나를 포함할 수 있다.
어떤 실시 예에 따르면, 전자 장치는 가구(furniture) 또는 건물/구조물의 일부, 전자 보드(electronic board), 전자 사인 수신 장치(electronic signature receiving device), 프로젝터(projector), 또는 각종 계측 기기(예: 수도, 전기, 가스, 또는 전파 계측 기기 등) 중 적어도 하나를 포함할 수 있다. 다양한 실시 예에서, 전자 장치는 전술한 다양한 장치들 중 하나 또는 그 이상의 조합일 수 있다. 어떤 실시 예에 따른 전자 장치는 플렉서블 전자 장치일 수 있다. 또한, 본 문서의 실시예에 따른 전자 장치는 전술한 기기들에 한정되지 않으며, 기술 발전에 따른 새로운 전자 장치를 포함할 수 있다.
이하에서는 첨부된 도면을 이용하여 본 개시에 대하여 구체적으로 설명한다.
도 1은 본 개시의 일 실시 예에 따른 시스템을 설명하기 위한 도면이다.
본 개시의 일 실시 예에 따른 시스템은 전자 장치(100), 제1 서버(200) 및 제2 서버(300)를 포함할 수 있다.
본 시스템은 전자 장치(100)를 통해 제공되어 사용자가 시청하고 있는 컨텐츠를 인식하여 인식된 컨텐츠와 관련한 서비스를 제공할 수 있는 시스템으로서, ACR(Automatic Contents Recognition) 기술을 이용할 수 있다. ACR 기술은 사용자가 시청하고 있는 컨텐츠의 특징 정보(또는 시그니처)를 이용해서 컨텐츠를 인식하는 기술이다.
컨텐츠를 인식하는 목적은 시청률 조사, 사용자의 시청 패턴에 기초한 개인화된 서비스 제공, 인식된 컨텐츠와 관련한 부가 서비스 제공 등이 있다.
컨텐츠의 특징 정보는 컨텐츠를 식별할 수 있도록 하는 정보로서, 특징 정보의 예에는, 이에 한정되는 것은 아니지만, 워터마크(watermark), 핑거 프린트(Fingerprint)가 포함된다.
워터마크는 컨텐츠 신호에 삽입되어 컨텐츠를 식별할 수 있도록 하는 데이터로서, 보이지 않는 형태로 컨텐츠 신호에 삽입되거나, 보이는 로고와 같은 형태로 삽입될 수도 있다.
핑거프린트는 컨텐츠의 일부 구간의 비디오 또는 오디오에 대한 고유 데이터로서, 신호 자체 고유의 특성을 반영하므로 컨텐츠를 식별할 수 있게 한다. 비디오 신호로부터 획득된 비디오핑거 프린트는 영상 신호의 모션 벡터, 색상 등의 특징을 나타낸 정보일 수 있고, 오디오 신호로부터 획득된 오디오 핑거 프린트는 오디오 신호의 주파수, 진폭 등의 특징을 나타낸 정보일 수 있다.
특징 정보는 텍스트를 기반으로 한 메타 데이터와는 달리 컨텐츠 신호 자체의 특성을 반영하는 점에서 메타 데이터와는 차이가 있다.
전자 장치(100)는 사용자가 시청하고 있는 영상에 대응하는 컨텐츠 신호로부터 특징 정보를 획득하여, 이를 포함하는 요청(또는 쿼리)을 제1 서버(200)(또는 ACR 서버)에 전송할 수 있다. 도 1에 도시되지 않았으나 제1 서버(200)와 전자 장치(100) 사이에는 프론트엔드 서버(Front-end server)가 존재할 수 있다.
제1 서버(200)는 컨텐츠 소스로부터 제공받은 컨텐츠 신호에서 특징정보들을 획득하고, 특징정보들에 컨텐츠 정보를 태깅함으로써 특징 정보의 데이터베이스를 구축할 수 있다. 컨텐츠 정보는 컨텐트를 식별하게 하는 정보로서 예컨대, 컨텐츠 ID(또는 프로그램 ID), 컨텐츠 명칭(또는 프로그램 명칭), EPG(Electronic Program Guide) 메타 데이터 중 적어도 하나를 포함할 수 있다.
제1 서버(200)는 전자 장치(100)로부터 수신한 요청에 대응하는 응답을 전자 장치(100)에 제공할 수 있다. 제1 서버(200)는 전자 장치(100)로부터 수신된 특징 정보와 대응되는 특징 정보를 특징 정보의 데이터 베이스로부터 검색하고, 검색된 특징 정보에 대응되는 컨텐츠 정보(또는 검색된 특징 정보에 태깅된 컨텐츠 정보)를 포함하는 응답을 전자 장치(100)로 제공할 수 있다.
제1 서버(200)가 전자 장치(100)로 제공하는 응답은 컨텐츠 정보뿐만 아니라 특징 정보에 대응하는 부가 서비스 정보도 포함할 수 있다. 부가 서비스 정보는 컨텐츠의 출연자와 관련된 실시간 뉴스 기사가 될 수 있고, 출연자가 주연으로 등장하는 영화를 추천하는 정보, 컨텐츠에 포함된 물건에 대한 광고 정보가 될 수 있다. 부가 서비스 정보는 예컨대, 부가 서비스 영상, 부가 서비스를 제공하는 서버의 주소, 부가 서비스의 획득 경로, 부가 서비스를 위한 주소, 부가 서비스의 시작 시간, 부가 서비스의 종료 시간, 부가 서비스의 수명 주기(lifetime), 부가 서비스의 설명 중 적어도 하나를 포함할 수 있다.
전자 장치(100)는 특징 정보를 포함하는 요청을 주기적으로 제1 서버(200)에 전송하고 그에 대응되는 응답을 수신함으로써, 현재 시청되고 있는 컨텐츠를 인식할 수 있다. 전자 장치(100)가 제1 서버(200)로 요청을 전송하는 간격이 짧을수록 컨텐츠 인식의 정확도는 향상될 수 있으나, 요청을 전송하는데 비용이 많이 소요된다는 문제가 있고, 요청을 전송하는 간격을 길게 하면 비용은 절약할 수 있지만 컨텐츠 인식의 정확도는 떨어지는 문제가 있다.
이러한 문제를 보완하기 위해, 전자 장치(100)는 제2 서버(300)(또는 메타 데이터 서버)로부터 획득한 방송 스케줄 정보를 이용할 수 있다. 방송 스케줄 정보는 채널별 방송 프로그램에 관련한 정보(예컨대, 프로그램 ID, 프로그램 명칭 등), 방송 프로그램의 방영 시간에 대한 정보를 포함할 수 있다. 방송 스케줄 정보는 EPG(Electronic Program Guide) 메타 데이터일 수 있다. 전자 장치(100)는 현재 선택된 채널에서 어떤 방송 프로그램이 방영되고 있는지를 방송 스케줄 정보를 기초로 알 수 있다.
그러나, 제2 서버(300)가 제공하는 방송 스케줄 정보가 항상 정확한 것은 아니다. 예컨대, 방송국 사정에 의해 미리 정해진 스케줄과는 다른 스케줄로 방송이 진행되게 되었는데 이것이 제2 서버(300)에서 반영되지 못하는 경우가 있을 수 있다. 또 다른 예로, 전자 장치(100)의 사용자가 지역 설정을 잘못하면 전자 장치(100)는 전자 장치(100)가 실제 설치된 지역이 아닌 다른 지역의 방송 스케줄 정보를 제공받게 되는 경우가 있을 수 있다. 이 밖에도 다양한 이유에 의해 제2 서버(300)가 제공하는 방송 스케줄 정보를 완전히 신뢰하기는 어렵다.
따라서, 본 개시는 특징 정보에 기초한 컨텐츠 인식 방식과 방송 스케줄 정보에 기초한 컨텐츠 인식 방식 두 가지를 효율적으로 이용하여, 비용을 절감하면서도 정확히 컨텐츠를 인식하고자 하는 것을 일 목적으로 한다.
이러한 목적을 달성하기 위한 본 개시의 일 실시 예에 따르면, 전자 장치(100)는 제2 서버(300)로부터 수신한 방송 스케줄 정보가 부정확한 것으로 식별되면 제1 서버(200)로 특징 정보에 대응하는 컨텐츠 정보에 대한 요청(즉, 특징 정보를 포함하는 요청)을 제1 빈도로 전송하고, 방송 스케줄 정보가 정확하다고 식별되면 상기 제1 빈도보다는 낮은 빈도로 제1 서버(200)에 상기 요청을 전송할 수 있다. 여기서 제1 빈도는 임의의 빈도로서 디폴트로 설정된 빈도이거나 사용자가 설정한 빈도일 수 있다. 예컨대, 제1 빈도는 1분에 한 번씩 요청을 전송하는 빈도일 수 있다.
이하 도 2를 참고하여 전자 장치(100)에 대해 좀 더 자세히 설명하도록 한다.
도 2는 본 개시의 일 실시 예에 따른 전자 장치(100)의 구성을 설명하기 위한 도면이다.
도 2를 참고하면, 전자 장치(100)는 통신부(110), 메모리(120) 및 프로세서(130)를 포함할 수 있다. 실시 형태에 따라 도시되지 않았더라도 당업자에게 자명한 수준의 적절한 하드웨어/소프트웨어 구성들이 전자 장치(100)에 추가로 포함될 수 있다.
전자 장치(100)는 컨텐츠 신호를 수신하고 컨텐츠 신호에 기초하여 영상 및/또는 오디오를 자체적으로 제공하거나, 또는 전자 장치(100)와 연결된 다른 전자 장치를 통해 제공할 수 있는 장치로서, 예컨대, 텔레비전, 셋톱 박스(set-top box), TV 박스(예: 삼성 HomeSync™, 삼성 One Connect Box™, 애플TV™ 또는 구글 TV™)등일 수 있다.
통신부(110)는 무선 통신 또는 유선 통신을 통해서 네트워크에 연결되어 외부 장치와 통신할 수 있다. 예를 들면, 통신부(110)는 적외선 통신(IrDA, infrared Data Association), RFID(Radio Frequency Identification), NFC(Near Field Communication), WiFi(Wireless Fidelity), UWB(ultra wideband), WiDi(WirelessDisplay), WiHD(WirelessHD), WHDI(Wireless Home Digital Interface), 미라캐스트(Miracast), Wigig(Wireless Gigabit Alliance), 와이파이 다이렉트(Wi-Fi Direct), 블루투스(ex. 블루투스 클래식(Bluetooth Classic), 블루투스 저 에너지(Bluetooth Low Energy)), AirPlay, Z-wave, 4LoWPAN, LTE D2D, GPRS, Weightless, Edge 지그비(Zigbee), DLNA(Digital Living Network Alliance), ANT+, DECT(Digital Enhanced Cordless Telecommunications), WLAN(wireless local area network), GSM(Global System for Mobile communications), UMTS(Universal Mobile Telecommunication System), LTE(Long-Term Evolution), WiBRO(Wireless Broadband) 등의 통신 방식으로 외부 장치와 통신을 수행할 수 있다.
메모리(120)는, 예를 들면, 내장 메모리 또는 외장 메모리를 포함할 수 있다. 내장 메모리는, 예를 들면, 휘발성 메모리(예: DRAM(dynamic RAM), SRAM(static RAM), 또는 SDRAM(synchronous dynamic RAM) 등), 비휘발성 메모리(non-volatile Memory)(예: OTPROM(one time programmable ROM), PROM(programmable ROM), EPROM(erasable and programmable ROM), EEPROM(electrically erasable and programmable ROM), mask ROM, flash ROM, 플래시 메모리(예: NAND flash 또는 NOR flash 등), 하드 드라이브, 또는 솔리드 스테이트 드라이브(solid state drive(SSD)) 중 적어도 하나를 포함할 수 있다.
외장 메모리는 플래시 드라이브(flash drive), 예를 들면, CF(compact flash), SD(secure digital), Micro-SD(micro secure digital), Mini-SD(mini secure digital), xD(extreme digital), MMC(multi-media card) 또는 메모리 스틱(memory stick) 등을 포함할 수 있다. 외장 메모리는 다양한 인터페이스를 통하여 전자 장치(100)와 기능적으로 및/또는 물리적으로 연결될 수 있다.
메모리(120)는 프로세서(130)에 의해 액세스되며, 프로세서(130)에 의한 데이터의 독취/기록/수정/삭제/갱신 등이 수행될 수 있다.
본 개시에서 메모리라는 용어는 프로세서(130)와 별도로 마련된 메모리, 또는 프로세서(130) 내 롬(미도시) 또는 램(미도시)일 수 있다.
프로세서(130)는 전자 장치(100)의 전반적인 동작을 제어하기 위한 구성이다. 예를 들면, 프로세서(130)는 운영 체제 또는 응용 프로그램을 구동하여 프로세서(130)에 연결된 다수의 하드웨어 또는 소프트웨어 구성요소들을 제어할 수 있고, 각종 데이터 처리 및 연산을 수행할 수 있다. 프로세서(130)는 CPU(central processing unit) 또는 GPU(graphics-processing unit)이거나 둘 다일 수 있다. 프로세서(130)는 적어도 하나의 범용 프로세서(general processor), 디지털 신호 프로세서(digital signal processor), ASIC(Application specific integrated circuit), SoC(system on chip), MICOM(Microcomputer) 등으로 구현될 수 있다. 프로세서(130)는 메모리(120)에 저장된 컴퓨터 실행가능 명령어(computer executable instructions)를 실행함으로써 본 개시의 다양한 실시 예에 따른 전자 장치(100)의 동작을 수행할 수 있다.
프로세서(130)는 컨텐츠 신호를 기초로 영상 및/또는 사운드를 제공할 수 있다. 컨텐츠 신호는 RF(Radio Frequency) 방송 컨텐츠 신호, DVR(digital video recorder) 컨텐츠 신호, VoD/OTT Non-linear 컨텐츠 신호 또는 UGC 컨텐츠 신호일 수 있다.
프로세서(130)는 영상 및/또는 사운드가 제공되는 동안 컨텐츠 신호로부터 특징 정보를 획득하고, 상기 획득한 특징 정보에 대응하는 컨텐츠 정보에 대한 요청을 제1 서버(200)로 전송하도록 통신부(110)를 제어할 수 있다. 특징 정보는 컨텐츠 신호로부터 획득된 오디오 핑거프린트, 비디오 핑거프린트, 워터 마크 중 적어도 하나일 수 있다.
프로세서(130)는 요청을 전송한 것에 대응하여, 제1 서버(200)로부터 특징 정보에 대응되는 컨텐츠 정보를 통신부(110)를 통해 수신할 수 있다.
프로세서(130)는 영상 및/또는 사운드가 제공되는 동안 상기 요청을 주기적으로 제1 서버(200)로 전송할 수 있다. 예컨대, 전송 간격이 1분으로 설정된 경우, 프로세서(130)는 영상 재생 중 1분 간격으로 특징 정보를 획득해서 요청을 제1 서버(200)로 전송할 수 있고, 이에 따라 어떤 영상 장면이 제공되고 있는지를 1분 간격으로 인식할 수 있다.
이와 같은 요청의 전송 주기는 상황에 따라 조절될 수 있다. 예컨대, 프로세서(130)는 제2 서버(300)로부터 방송 스케줄 정보를 통신부(110)를 통해 수신할 수 있고, 사용자가 선택한 채널에 대한 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 제1 빈도로 제1 서버(200)에 전송하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한 것으로 식별되면 상기 요청을 상기 제1 빈도보다 낮은 빈도로 제1 서버(200)에 전송하도록 통신부(110)를 제어할 수 있다.
여기서 사용자가 선택한 채널은, 전자 장치(100)의 튜너를 통해 수신된 방송의 채널일 수 있고, 또는 전자 장치(100)와 연결된 외부 장치(예컨대, IP 셋톱 박스)가 제공하는 방송의 채널일 수 있다. 전자의 경우, 프로세서(130)는 선국된 채널을 확인하여 현재 선택한 채널 번호를 획득할 수 있고, 후자의 경우, 프로세서(130)는 외부 장치로 채널 번호를 요청하는 신호를 전송하여 채널 번호를 획득하거나, 또는 영상에 포함된 채널 번호를 OCR(Optical character recognition)을 이용해 획득할 수 있다.
프로세서(130)는 현재 선택된 채널의 번호를 획득하고, 현재 선택된 채널에 대한 방송 스케줄 정보가 정확한 것인지 여부를 식별할 수 있다. 방송 스케줄 정보의 정확 여부는 다양한 방식으로 식별될 수 있다.
일 실시 예에 따르면, 프로세서(130)는 제1 서버(200)로 요청을 전송한 것에 대응하여 제1 서버(200)로부터 컨텐츠 정보를 통신부(110)를 통해 수신하고, 수신된 컨텐츠 정보를 방송 스케줄 정보와 비교하여 현재 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다.
또 다른 실시 예에 따르면, 프로세서(130)는 현재 제공되는 영상에 포함된 프로그램 명칭을 OCR(Optical character recognition)을 이용해 획득하고, 상기 획득된 프로그램 명칭을 상기 방송 스케줄 정보와 비교하여 현재 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다.
또 다른 실시 예에 따르면, 프로세서(130)는 현재 제공되는 영상에 포함된 로고를 다양한 로고들의 이미지가 저장된 데이터 베이스와 비교하여 인식하고, 상기 인식된 로고에 대응하는 채널 이름 혹은 방송사를 상기 방송 스케줄 정보와 비교하여 현재 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다.
또 다른 실시 예에 따르면, 방송 스케줄 정보가 정확한지를 사용자에게 확인 받는 방법이 있다. 예컨대, 프로세서(130)는 방송 스케줄 정보에 기초하여 사용자에게 문의하는 UI를 생성할 수 있다. 프로세서(130)는 방송 스케줄 정보에서 현재 선택된 채널 번호에 편성된 프로그램 이름에 기초해서 예컨대, “현재 시청하고 계시는 프로그램이 'XXX'가 맞나요?”와 같은 텍스트 및 문의에 대한 답변을 받는 UI 요소를 포함하는 포함하는 UI(User Interface)를 생성하여 제공할 수 있다. 상기 UI를 통한 사용자 입력에 기초하여 프로세서(130)는 현재 선택된 채널에 대한 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다.
방송 스케줄 정보가 정확한지 여부를 식별하는 동작은 한 채널에 대해서 한번만 수행되거나, 한 채널에서 여러 번 수행될 수 있다. 또는, 방송 스케줄 정보가 정확한지 여부를 식별하는 동작은 특정 이벤트가 발생하면 수행될 수 있다. 특정 이벤트는 예컨대, 채널이 변경되는 이벤트, 새로운 프로그램이 시작되는 이벤트 또는 새로운 방송 스케줄 정보가 수신되는 이벤트, 사용자로부터 방송 스케줄 정보가 정확한지 여부에 대한 확인 요청이 수신되는 이벤트를 포함할 수 있다.
프로세서(130)는 각 채널들에 대하여 방송 스케줄 정보가 정확한지 여부를 나타내는 매칭 테이블을 생성할 수 있다. 매칭 테이블의 일 예를 도 7에 도시하였다. 매칭 테이블은 방송 스케줄 정보가 정확한지 여부를 식별하는 동작에 따라 갱신될 수 있다.
한편, 본 개시의 일 실시 예에 따르면, 방송 스케줄 정보의 정확 여부를 사용자에게 알릴 수 있다. 예컨대, 프로세서(130)는 방송 스케줄 정보에 대응되는 프로그램가이드 UI(또는 EPG(Electronic Program Guide))를 제공할 수 있다. 프로세서(130)는 프로그램가이드 UI를 전자 장치(100)의 자체 디스플레이를 통해 제공하거나 또는 전자 장치(100)와 연결된 외부 디스플레이 장치에서 제공할 수 있다. 그리고 프로세서(130)는 현재 선택된 채널 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 프로그램가이드 UI에서 상기 특정 채널에 대한 프로그램 정보가 부정확한 것임을 알리는 UI 요소를 제공할 수 있다. 프로세서(130)는 상기 생성한 매칭 테이블에 기초하여 프로그램 정보가 부정확한 것임을 알리는 UI 요소를 제공할 수 있다. 본 실시 예와 관련해선 이하 도 8을 참고하여 좀 더 자세히 설명하도록 한다.
한편, 본 개시의 일 실시 예에 따르면, 방송 스케줄 정보가 부정확함을 사용자에게 알리는 것에 그치지 않고, 부정확한 부분을 정확하게 수정할 수도 있다.
예컨대, 프로세서(130)는 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공할 수 있고, 특정 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면, 특징 정보를 포함하는 요청을 제1 서버(200)로 전송한 것에 대응하여 제1 서버(200)로부터 수신한 컨텐츠 정보를 기초로 상기 프로그램가이드 UI에서 상기 특정 채널에 대한 프로그램 정보를 수정할 수 있다. 즉, 방송 스케줄 정보가 부정확한 것으로 식별된 이후에 제공되는 프로그램가이드 UI는 부정확한 부분이 수정되었으므로, 이전에 제공되던 프로그램 가이드 UI와는 다르게 표시될 수 있다.
프로세서(130)는 특정 채널에 대한 방송 스케줄 정보가 부정확한 것으로 식별되면, 상기 방송 스케줄 정보를 제공한 제2 서버(300)로 방송 스케줄 정보의 부정확을 알리는 정보를 전송하도록 통신부(110)를 제어할 수 있다. 즉, 방송 스케줄 정보가 부정확하다는 피드백을 제2 서버(300)에 줌으로써, 제2 서버(300)는 방송 스케줄 정보를 수정할 수 있다.
프로세서(130)는 현재 선택된 채널에 대한 방송 프로그램의 정보가 정확한 것으로 식별되어 상기 제1 빈도보다 낮은 빈도로 상기 요청을 제1 서버(200)에 전송한 것에 대응하여 제1 서버(200)로부터 컨텐츠 정보를 수신할 수 있고, 수신한 컨텐츠 정보를 방송 스케줄 정보와 비교하고, 비교 결과 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 상기 제1 빈도로 제1 서버(200)에 전송하도록 통신부(110)를 제어할 수 있다. 즉, 방송 스케줄 정보가 정확한 것으로 식별되었다가 다시 부정확한 것으로 식별되면 다시 전송 간격을 줄이는 것이다.
한편, 짧은 광고가 방송되는 동안에는 더 정밀하게 컨텐츠 인식이 필요하므로 요청을 제1 서버(200)에 더 짧은 간격으로 전송할 필요가 있다. 이를 위해, 본 개시의 일 실시 예에 따르면, 프로세서(130)는 상기 제1 빈도보다 낮은 빈도로 상기 요청을 제1 서버(200)에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 현재 선택된 채널에서 광고가 방송될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 높은 빈도로 제1 서버(200)에 전송하도록 통신부(110)를 제어할 수 있다. 방송 스케줄 정보에서 프로그램 종료 또는 시작 시간으로부터 기 설정된 시간 이내 범위이면 광고가 방송될 것으로 예상되는 시간이라고 간주될 수 있다.
광고가 끝나고 다시 방송 프로그램이 시작되면 원래의 간격으로 요청을 전송하게 된다. 따라서, 프로세서(130)는 상기 요청을 상기 제1 빈도보다 높은 빈도로 제1 서버(200)에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 광고가 종료될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 낮은 빈도로 제1 서버(200)에 전송하도록 통신부(110)를 제어할 수 있다. 방송 스케줄 정보에서 프로그램 종료 또는 시작 시간으로부터 기 설정된 시간 이내 범위이면 광고가 종료될 것으로 예상되는 시간이라고 간주될 수 있다.
예컨대, 도 3에 도시한 것처럼, 방송 스케줄 정보에 나와 있는 새로운 프로그램이 시작되는 시간 이전 xx분과 이후 xx분 사이를 광고가 방송될 것으로 예상되는 구간으로 식별하고, 이 구간에서는 요청의 전송 빈도를 더 높게 할 수 있다.
한편, 방송 스케줄 정보가 정확한지 여부가 아직 확인되지 않은 상황에서는 프로세서(130)는 제1 빈도로 상기 요청을 제1 서버(200)에 전송할 수 있다. 예컨대, 도 4에 도시한 것처럼 프로세서(130)는 상기 제1 빈도보다 낮은 빈도로 상기 요청을 제1 서버(200)에 전송하다가 채널이 변경되면, 변경된 채널에 대해서 방송 스케줄 정보가 정확한지 여부를 확인할 필요가 있으므로, 상기 요청을 상기 제1 빈도로 제1 서버(200)에 전송하도록 통신부(110)를 제어할 수 있다. 채널이 변경되었는지 여부는, 예컨대 채널 선국 명령이 수신되었는지, 채널 변경시 제공되는 특정 UI(예컨대, 배너)가 표시되었는지, 표시되던 방송사 로고가 달라졌는지 등을 확인하여 식별할 수 있다. 도 4에 도시된 바와 같이 채널 변경 이후 방송 스케줄 정보가 정확한 것으로 식별되면(correct 지점), 프로세서(130)는 다시 제1 빈도보다 낮은 빈도로 상기 요청을 제1 서버(200)에 전송하도록 통신부(110)를 제어할 수 있다.
도 5는 본 개시의 일 실시 예에 따른 전자 장치(100)의 개념도를 보여준다.
도 5에 도시된 바와 같이 본 개시의 일 실시 예에 따른 개념도의 전자 장치(100)는 ACR 엔진(510), ACR 매니저(520), 채널 번호 획득부(530), 방송 스케줄 정보 데이터베이스(540)를 포함할 수 있다. ACR 엔진(510), ACR 매니저(520) 및 채널 번호 획득부(530) 중 적어도 하나는 프로세서(130)의 일부로서 또는 프로세서(130)에 통합되어 구현될 수 있다. 방송 스케줄 정보 데이터베이스(540)는 메모리(120)에 포함될 수 있다. 제1 서버(200) 및 제2 서버(300)와 전자 장치(100)의 통신은 통신부(110)를 통해 수행될 수 있다.
ACR 엔진(510)은 튜너 입력 또는 외부 입력(HDMI, HDMI dongle 등)으로 들어오는 컨텐츠 신호(오디오 신호 및/또는 비디오 신호)를 캡쳐하여 오디오 샘플 또는 비디오 샘플을 생성하고, 생성된 오디오 샘플 또는 비디오 샘플로부터 핑거프린트와 같은 특징 정보를 획득하고 특징 정보를 포함하는 요청을 제1 서버(200)로 전송하고, 제1 서버(200)로부터 컨텐츠 정보(예컨대, 프로그램 ID)를 포함하는 응답을 수신할 수 있다.
방송 스케줄 정보 데이터베이스(540)는 제2 서버(300)로부터 수신한 방송 스케줄 정보를 저장할 수 있다. 방송 스케줄 정보는 부정확하다고 식별된 경우에 ACR 매니저(520)에 의해 수정될 수 있다. 그리고 ACR 매니저(520)는 방송 스케줄 정보가 부정확할 경우 이에 대한 피드백을 제2 서버(300)로 제공할 수 있다.
채널 번호 획득부(530)는 현재 선택된 채널의 번호를 획득하기 위한 구성이다. 채널 번호 획득부(530)는 다양한 방식으로 현재 시청 중인 채널의 번호를 획득할 수 있다.
일 예로, RF(Radio Frequency) 방송 컨텐츠 신호를 기초로 영상을 시청하고 있는 경우라면, 채널 번호 획득부(530)는 현재 선국된 채널의 번호를 획득할 수 있다.
또 다른 예로, 외부 입력(예컨대, HDMI)을 통해 연결된 컨텐츠 제공 장치(예컨대 셋톱 박스)로부터 수신된 컨텐츠 신호를 기초로 영상을 시청하고 있는 경우라면, 채널 번호 획득부(530)는 컨텐츠 제공 장치에 현재 채널 번호를 요청하여 채널 번호를 수신할 수 있다. 이 경우, 채널 번호 획득부(530)는 전자 장치(100)와 컨텐츠 제공 장치에서 지원하는 통신 방식을 이용하여 채널 번호를 획득할 수 있다. 예컨대, 지그비(ZigBee), WiFi(Wireless Fidelity) 등의 통신 방식이 이용될 수 있다.
또 다른 예로, 채널 번호 획득부(530)는, 채널이 변경되는 경우에 표시되는 특정 UI(예컨대 배너)가 감지되면 채널이 변경되었음을 식별할 수 있고, 채널 변경 당시에 컨텐츠 제공 장치를 제어하는 IR 리모컨 신호를 스니핑(sniffing)하고, 스니핑한 리모컨 신호를 분석하여 채널 번호를 획득할 수 있다.
또 다른 예로, 채널 번호 획득부(530)는 현재 시청되고 있는 영상에 포함되어 있는 채널 번호(예컨대 화면의 배너에 포함된 채널 번호)를 OCR(Optical character recognition)을 통해 인식하여 채널 번호를 획득할 수 있다.
ACR 매니저(520)는 제2 서버(300)로부터 수신한 방송 스케줄 정보의 정확 여부에 따라 ACR 엔진(510)이 제1 서버(200)로 요청을 전송하는 빈도를 제어할 수 있다.
일 실시 예에 따르면, ACR 매니저(520)는 방송 스케줄 정보 데이터베이스(540)로부터 방송 스케줄 정보를 획득하고, 현재 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 ACR 엔진(510)으로부터 제공받은 컨텐츠 정보와 채널 번호 획득부(530)로부터 제공받은 채널 번호를 바탕으로 식별할 수 있다.
예컨대, 채널 번호 획득부(530)로부터 제공받은 채널 번호와 ACR 엔진(510)으로부터 제공받은 컨텐츠 정보를 바탕으로 현재 사용자가 1번 채널에서 하고 있는 프로그램 'Big Bang'을 시청하고 있음을 알 수 있고, 방송 스케줄 정보에 따를 때 1번 채널에서 현재 'Big Bang'이 편성된 것으로 나와있으면, 1번 채널에 대한 방송 스케줄 정보는 정확하다고 식별될 수 있다. 반면, 방송 스케줄 정보에 따를 때 1번 채널에서 현재 'Big Bang'이 아닌 다른 프로그램이 편성된 것으로 나와있으면 1번 채널에 대한 방송 스케줄 정보는 부정확하다고 식별될 수 있다. 프로그램 명칭을 비교하는 것을 예를 들었으나, 프로그램 ID를 비교할 수도 있다.
ACR 매니저(520)는 현재 선택된 채널에 대한 방송 스케줄 정보가 부정확한 것으로 식별되면 특징 정보를 포함하는 요청을 제1 서버(200)에 제1 빈도로 전송하도록 ACR 엔진(510)을 제어할 수 있다. 이에 따라, ACR 엔진(510)은 전송 간격을 상기 제1 빈도에 대응되는 제1 간격으로 하여 특징 정보를 포함하는 요청들을 제1 서버(200)에 전송할 수 있다. 예컨대 상기 제1 간격은 1분으로 설정될 수 있다.
ACR 매니저(520)는 현재 선택된 채널에 대한 방송 스케줄 정보가 정확한 것으로 식별되면 특징 정보를 포함하는 요청을 제1 서버(200)에 제1 빈도보다 낮은 빈도로 전송하도록 ACR 엔진(510)을 제어할 수 있다. 이에 따라, ACR 엔진(510)은 전송 간격을 상기 제1 간격보다 긴 제2 간격이 되도록 특징 정보를 포함하는 요청들을 제1 서버(200)에 전송할 수 있다. 예컨대 상기 제2 간격은 10분으로 설정될 수 있다.
본 개시의 또 다른 실시 예에 따르면, 제1 서버(200)의 도움이 없더라도 전자 장치(100)는 자체적으로 방송 스케줄 정보의 정확 여부를 식별할 수 있다. 예컨대, 프로세서(130)는 현재 제공되고 있는 영상에 OCR 등의 문자 인식 기술을 적용하여 현재 시청되고 있는 채널의 번호, 프로그램 명칭 등을 획득하고, 이를 방송 스케줄 정보와 비교해서 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다. 본 실시 예에 관련해선 도 6을 참고하여 설명하도록 한다.
도 6을 참고하면, 현재 시청 중인 영상에 배너(600)가 포함되어 있는 경우, 프로세서(130)는 배너(600)에 포함된 텍스트를 OCR 방식으로 인식하여 현재 시청 중인 채널 번호, 프로그램 이름을 획득할 수 있다. 예컨대, 프로세서(130)는 메모리(120)에 기 저장된 배너 이미지와 대응되는 이미지가 표시되고 있는지를 확인할 수 있고, 확인 결과 영상 내에 배너가 있는 것으로 판단되면, OCR을 수행할 수 있다. 배너(600)는 예컨대 채널 번호(61), 채널 명칭(62), 현재 프로그램 명칭(63), 다음번 프로그램 명칭(64) 등의 다양한 정보를 포함할 수 있다. 메모리(120)에는 배너(600)에서 OCR이 수행되어야 할 영역에 대한 정보가 미리 저장되어 있을 수 있다.
프로세서(130)는 이와 같이 OCR 방식으로 획득한 채널 번호(61)와 프로그램 명칭(63)을, 방송 스케줄 정보에서 상기 채널 번호(61)의 현재 편성된 프로그램 명칭과 비교함으로써, 현재 채널에 대한 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다. 다음번 프로그램 명칭(64)을 비교하는 것도 가능하다. 프로세서(130)는 식별 결과를 바탕으로 제1 서버(100)로 특징 정보를 포함하는 요청을 전송하는 빈도를 제어할 수 있다.
이와 같은 방식으로 프로세서(130)는 각 채널들에 대하여 방송 스케줄 정보가 정확한지 여부를 나타내는 매칭 테이블을 작성할 수 있다. 예컨대, 도 7에 도시한 것처럼 각 채널들에 대하여 방송 스케줄 정보가 정확하면 Flag 값으로 “O”를 기록하고, 부정확하면 “X”를 기록할 수 있다. 매칭 테이블은 실시간으로 갱신될 수 있다. 매칭 테이블은 방송 스케줄 정보와 통합될 수 있다.
한편, 본 개시의 일 실시 예에 따르면, 방송 스케줄 정보의 정확 여부를 사용자에게 알릴 수 있다. 예컨대, 프로세서(130)는 방송 스케줄 정보에 대응되는 프로그램가이드 UI(또는 EPG(Electronic Program Guide))를 제공할 수 있고, 특정 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 프로그램가이드 UI에서 상기 특정 채널에 대한 프로그램 정보가 부정확한 것임을 알리는 UI 요소를 제공할 수 있다. 프로세서(130)는 상기 생성한 매칭 테이블에 기초하여 프로그램 정보가 부정확한 것임을 알리는 UI 요소를 제공할 수 있다.
도 8은 본 개시의 일 실시 예에 따른 전자 장치(100)에 의해 제공되는 UI를 설명하기 위한 도면이다.
도 8을 참고하면, 프로세서(130)는 방송 스케줄 정보에 대응되는 프로그램가이드 UI(800)를 제공할 수 있다. 방송 스케줄 정보 중 부정확한 것으로 식별된 채널에 대해선, 도 8에 도시한 바와 같이 프로그램 정보가 부정확한 것임을 알리는 UI 요소(82)가 제공될 수 있다. 방송 스케줄 정보 중 정확한 것으로 식별된 채널에 대해선, 프로세서(130)는 프로그램 정보가 정확한 것임을 알리는 UI 요소(81)를 제공할 수 있다. 정보의 정확 여부가 아직 확인되지 않은 채널들에 대해선 UI 요소가 제공되지 않거나, 미확인을 나타내는 또 다른 UI 요소가 제공될 수 있다.
도 9는 본 개시의 또 다른 실시 예에 따른 전자 장치(100)의 구성을 설명하기 위한 블록도이다.
도 9를 참고하면, 전자 장치(100)는 통신부(110), 메모리(120), 프로세서(130), 튜너(140), 디스플레이(150), 입/출력부(160) 및 오디오 출력부(170)를 포함할 수 있다. 실시 형태에 따라 구성들 중 일부는 생략될 수 있고, 도시되지 않았더라도 당업자에게 자명한 수준의 적절한 하드웨어/소프트웨어 구성들이 전자 장치(100)에 추가로 포함될 수 있다.
통신부(110)는 외부 장치와 통신을 수행하기 위한 구성이다. 도 9에 도시된 통신부(110)에 대한 설명은 도 2를 참고하여 설명한 통신부(110)에 대한 설명이 참조될 수 있다.
메모리(120)는 전자 장치(100)를 구동하고 제어하기 위한 각종 데이터 및 운영 체제(Operating System: OS)를 저장할 수 있다. 도 9에 도시된 메모리(120)에 대한 설명은 도 2를 참고하여 설명한 메모리(120)에 대한 설명이 참조될 수 있다.
튜너(140)는 유선 또는 무선으로 수신되는 방송 신호를 증폭(amplification), 혼합(mixing), 공진(resonance) 등을 통하여 많은 전파 성분 중에서 전자 장치(100)에서 수신하고자 하는 채널의 주파수만을 튜닝(tuning)시켜 선택할 수 있다.
튜너(140)는 사용자가 선택한 채널에 대응되는 주파수 대역에서 비디오, 오디오 및 부가 데이터를 포함하는 방송 신호를 수신할 수 있다.
튜너(140)는 지상파 방송, 케이블 방송, 또는, 위성 방송 등과 같이 다양한 소스에서부터 방송 신호를 수신할 수 있다. 튜너(140)는 아날로그 방송 또는 디지털 방송 등과 같은 소스로부터 방송 신호를 수신할 수도 있다.
튜너(140)를 통해 수신되는 방송 신호는 비디오 데이터, 오디오 데이터 및 프로그램 관련 정보인 메타 데이터를 포함할 수 있다. 메타 데이터는 방송 프로그램에 대한 부가 정보, 예컨대 프로그램 명칭, 줄거리, 방송 시작 시간, 방송 종료 시간 등에 대한 정보를 포함할 수 있다. 방송 프로그램에 관련 정보인 메타 데이터는 튜너(140)뿐만 아니라 인터넷 서버로부터 통신부(110)를 통해 수신될 수도 있다.
튜너(140)는 전자 장치(100)와 일체형(all-in-one)으로 구현되거나 또는 전자 장치(100)와 전기적으로 연결되는 별개의 장치(예를 들어, 입/출력부(160) 또는 통신부(110)에 연결되는 튜너)로 구현될 수 있다.
디스플레이(150)는 영상을 표시하기 위한 구성으로서, 예컨대 튜너(140)를 통해 수신된 방송 신호에 포함된 비디오 데이터, 통신부(110) 또는 입/출력부(180)를 통해 입력된 영상, 또는 메모리(120)에 저장된 영상 파일에 포함된 영상을 출력할 수 있다.
디스플레이(150)는 예컨대, LCD(Liquid Crystal Display)로 구현될 수 있으며, 경우에 따라 CRT(cathode-ray tube), PDP(plasma display panel), OLED(organic light emitting diodes), TOLED(transparent OLED) 등으로 구현될 수 있다. 또한, 디스플레이(150)는 사용자의 터치 조작을 감지할 수 있는 터치스크린 형태로 구현될 수도 있다.
오디오 출력부(170)는 오디오를 출력하기 위한 구성으로서, 예컨대, 튜너(140)를 통해 수신된 방송 신호에 포함된 오디오, 통신부(110) 또는 입/출력부(180)를 통해 입력되는 오디오, 또는 메모리(120)에 저장된 오디오 파일에 포함된 오디오를 출력할 수 있다. 오디오 출력부(170)는 스피커 및/또는 헤드폰 출력 단자를 포함할 수 있다.
입/출력부(160)는 외부 장치와 연결되기 위한 구성으로서, 예컨대, HDMI 입력 포트(High-Definition Multimedia Interface port), 컴포넌트 입력 잭, USB 포트 등을 포함할 수 있고, 이 밖에도 RGB, DVI, DP, 썬더볼트 등의 포트 중 적어도 하나를 포함할 수 있다.
프로세서(130)는 전자 장치(100)의 전반적인 동작을 제어할 수 있다. 도 9에 도시된 프로세서(130)에 대한 설명은 도 2를 참고하여 설명한 프로세서(130)에 대한 설명이 참조될 수 있다.
프로세서(130)는 도 9에 도시된 바와 같이, RAM(132), ROM(133), GPU(134), CPU(131), 제1 내지 n 인터페이스(135-1 ~ 135-n), 버스(136)를 포함할 수 있다. 이때, RAM(132), ROM(133), GPU(134), CPU(131), 제1 내지 n 인터페이스(135-1 ~ 135-n) 등은 버스(136)를 통해 서로 연결될 수 있다.
ROM(133)에는 시스템 부팅을 위한 명령어 세트 등이 저장된다. 전자 장치(100)에 대한 턴-온 명령이 입력되어 전원이 공급되면, CPU(131)는 ROM(133)에 저장된 명령어에 따라 메모리(110)에 저장된 O/S를 RAM(132)에 복사하고, O/S를 실행시켜 시스템을 부팅시킨다. 부팅이 완료되면, CPU(131)는 메모리(120)에 저장된 각종 프로그램을 RAM(132)에 복사하고, RAM(132)에 복사된 프로그램을 실행시켜 각종 동작을 수행할 수 있다. CPU(131)는 메모리(120)에 저장된 각종 프로그램 모듈, 데이터 등을 이용하여 다양한 동작을 수행할 수 있다.
GPU(134)는 전자 장치(100)의 부팅이 완료되면, 영상을 디스플레이할 수 있다. GPU(134)는 연산부 및 렌더링부를 이용하여 아이콘, 이미지, 텍스트 등과 같은 다양한 객체를 포함하는 화면을 생성할 수 있다. 연산부는 화면의 레이아웃에 따라 각 객체들이 표시될 좌표값, 형태, 크기, 컬러 등과 같은 속성값을 연산한다. 렌더링부는 연산부에서 연산한 속성값에 기초하여 객체를 포함하는 다양한 레이아웃의 화면을 생성한다. 렌더링부에서 생성된 화면은 디스플레이(150)로 제공되어, 디스플레이 영역 내에 표시된다.
제1 내지 n 인터페이스(135-1 내지 135-n)는 상술한 각종 구성요소들(110, 120, 140 내지 170)과 연결될 수 있다. 인터페이스들 중 하나는 네트워크를 통해 외부 장치와 연결되는 네트워크 인터페이스가 될 수도 있다.
프로세서(130)는 튜너(140) 또는 입/출력부(160)를 통해 들어오는 컨텐츠 신호를 캡쳐하여 핑거프린트와 같은 특징 정보를 획득하고, 획득한 특징 정보에 대응하는 컨텐츠 정보에 대한 요청을 제1 서버(200)에 전송하도록 통신부(110)를 제어할 수 있다.
그리고 프로세서(130)는 요청을 전송하는데 비용을 줄이기 위해 제2 서버(300)로부터 수신한 방송 스케줄 정보를 이용할 수 있다. 프로세서(130)는 현재 선택된 채널 번호를 획득하고, 현재 선택된 채널 번호에 대한 방송 스케줄 정보가 정확한지를 식별할 수 있다.
방송 스케줄 정보가 정확한지를 식별하기 위해, 프로세서(130)는 디스플레이(150)에서 현재 표시되는 영상에 포함된 채널 번호, 채널 이름, 채널 콜사인(call sign), 프로그램 명칭 등을 OCR을 통해 획득할 수 있다.
또 다른 예로, 프로세서(130)는 현재 선택된 채널에 대한 방송 스케줄 정보가 정확한지를 식별하기 위해 제1 서버(200)로 현재 디스플레이(150)에서 표시되고 있는 영상에 대한 특징 정보를 포함한 요청을 제1 서버(200)로 전송할 수 있다.
이 경우, 프로세서(130)는 제1 서버(200)에서 먼저 검색해야 할 범위를 지정해주는 정보를 상기 요청에 함께 포함시켜 전송할 수 있다. 예컨대, 프로세서(130)는 방송 스케줄 정보에서 현재 선택된 채널에 스케줄 되어 있는 프로그램에 대한 정보(예컨대, 프로그램 명칭, 프로그램 ID 등)를 특징 정보와 함께 상기 요청에 포함시켜 제1 서버(200)에 전송할 수 있다. 제1 서버(200)는 수신한 요청에 포함된 정보에 기초하여 특정 프로그램의 특징 정보들부터 검색을 수행할 수 있다. 방송 스케줄 정보가 정확한 것이라면 제1 서버(200)에서의 검색 속도는 향상될 수 있을 것이다.
프로세서(130)는 방송 스케줄 정보가 부정확하면, 이를 사용자에게 알릴 수 있다. 예컨대, 프로세서(130)는 방송 스케줄 정보에 대응하는 프로그램 가이드 UI를 표시하도록 디스플레이(150)를 제어할 수 있고, 방송 스케줄 정보에서 특정 채널의 정보가 부정확하나 것으로 식별되면, 해당 채널에 대해선 정보가 부정확함을 알리는 UI 요소를 프로그램 가이드 UI 상에 표시하도록 디스플레이(150)를 제어할 수 있다. 즉, 예컨대 디스플레이(150)를 통해 도 8에서 설명한 것과 같은 UI가 제공될 수 있다.
그리고 프로세서(130)는 방송 스케줄 정보의 정확 여부에 따라 제1 서버(200)로의 요청 전송 간격을 제어할 수 있다.
구체적으로, 프로세서(130)는 현재 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 핑거 프린트와 같은 특징 정보를 포함하는 요청을 제1 빈도로 제1 서버(200)에 전송하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한 것으로 식별되면 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 제1 서버(200)에 전송하도록 통신부(110)를 제어할 수 있다.
제1 서버(200)로 요청을 전송한 것에 대응하여 수신한 컨텐츠 정보, 또는 정확한 방송 스케줄 정보에 기초하여 컨텐츠가 인식된 것을 바탕으로 다양한 서비스가 제공될 수 있다. 일 예로, 사용자의 시청 패턴이 파악될 수 있고 사용자 시청 패턴에 맞게 맞춤화된 서비스가 제공될 수 있다.
또 다른 예로, 인식된 컨텐츠와 관련한 부가 서비스 정보가 제공될 수 있다. 예컨대, 프로세서(130)는 인식된 컨텐츠와 관련한 광고, 유용한 정보 등을 현재 제공되는 영상에 오버레이하여 표시하도록 디스플레이(150)를 제어할 수 있다. 부가 서비스 데이터는 별도의 서버를 통해 제공받을 수 있고, 또는 제1 서버(200)를 통해 제공받을 수도 있다. 제1 서버(200)는 특징 정보를 포함한 요청에 대응하여 컨텐츠 정보를 전자 장치(100)로 전송하면서 부가 서비스 정보도 함께 전송할 수 있다. 또 다른 예로, 프로세서(130)는 컨텐츠가 광고인 것으로 인식된 경우에는 광고가 아닌 다른 컨텐츠(예컨대, 대체 광고 등)를 제공할 수 있다.
도 10은 본 개시의 일 실시 예에 따른 전자 장치의 제어방법을 설명하기 위한 도면이다. 도 10에 도시된 흐름도는 본 명세서에서 설명되는 전자 장치(100)에서 처리되는 동작들로 구성될 수 있다. 따라서, 이하에서 생략된 내용이라 하더라도 전자 장치(100)에 관하여 기술된 내용은 도 10에 도시된 흐름도에도 적용될 수 있다.
도 10을 참고하면, 전자 장치(100)는 방송 스케줄 정보를 획득한다(S1010). 방송 스케줄 정보는 외부 서버로부터 제공받을 수 있다.
전자 장치(100)는 사용자에 의해 선택된 채널에 대응하는 컨텐츠 신호를 기초로 영상을 제공한다(S1020). S1010 단계와 S1020 단계의 순서가 정해진 것은 아니고, 영상을 제공하는 동안 방송 스케줄 정보를 획득할 수도 있다.
그리고 전자 장치(100)는 상기 영상이 제공되는 동안 상기 컨텐츠 신호로부터 특징 정보를 획득하고 획득된 특징 정보에 대응하는 컨텐츠 정보에 대한 요청을 서버로 전송하되, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 제1 빈도로 서버에 전송하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한 것으로 식별되면 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송한다(S1030).
본 개시의 일 실시 예에 따른 전자 장치의 제어방법에 따르면, 전자 장치(100)는 상기 서버로 상기 요청을 전송한 것에 대응하여 상기 서버로부터 컨텐츠 정보를 수신하고, 상기 수신된 컨텐츠 정보를 상기 방송 스케줄 정보와 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다.
또 다른 실시 예에 따르면, 전자 장치(100)는 상기 제공되는 영상에 포함된 프로그램 명칭을 OCR(Optical character recognition)을 이용해 획득하고, 상기 획득된 프로그램 명칭을 상기 방송 스케줄 정보와 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별할 수 있다.
본 개시의 일 실시 예에 따른 전자 장치의 제어방법에 따르면, 전자 장치(100)는 선택된 채널에 대한 방송 스케줄 정보가 정확한 것으로 식별되어 상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송한 것에 대응하여 상기 서버로부터 컨텐츠 정보를 수신하면, 수신한 컨텐츠 정보를 상기 방송 스케줄 정보와 비교하고, 비교 결과 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 상기 제1 빈도로 상기 서버에 전송할 수 있다.
본 개시의 일 실시 예에 따른 전자 장치의 제어방법에 따르면, 전자 장치(100)는 선택된 채널에 대한 방송 스케줄 정보가 정확한 것으로 식별되어 상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 광고가 방송될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송할 수 있다.
이 경우, 전자 장치(100)는 상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 상기 광고가 종료될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송할 수 있다.
본 개시의 일 실시 예에 따른 전자 장치의 제어방법에 따르면, 전자 장치(100)는 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면, 상기 방송 스케줄 정보를 제공한 외부 서버로 방송 스케줄 정보의 부정확을 알리는 정보를 전송할 수 있다.
본 개시의 일 실시 예에 따른 전자 장치의 제어방법에 따르면, 전자 장치(100)는 상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공할 수 있고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보가 부정확한 것임을 알리는 UI 요소를 제공할 수 있다.
본 개시의 일 실시 예에 따른 전자 장치의 제어방법에 따르면, 전자 장치(100)는 상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공할 수 있고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 상기 서버로 전송한 것에 대응하여 상기 서버로부터 수신한 컨텐츠 정보를 기초로 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보를 수정할 수 있다.
본 개시의 일 실시 예에 따른 전자 장치의 제어방법에 따르면, 전자 장치(100)는 상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송하다가 채널이 변경되면, 상기 요청을 상기 제1 빈도로 상기 서버에 전송하도록 상기 통신부를 제어할 수 있다.
상술한 다양한 실시 예들에 따르면 컨텐츠 인식을 위해 특징 정보를 포함한 요청을 전송하는 빈도를 감소시킬 수 있으므로 쿼리 비용을 줄일 수 있는 장점이 있다.
이상에서 설명된 다양한 실시 예들은 소프트웨어(software), 하드웨어(hardware) 또는 이들의 조합으로 구현될 수 있다. 하드웨어적인 구현에 의하면, 본 개시에서 설명되는 실시 예들은 ASICs(Application Specific Integrated Circuits), DSPs(digital signal processors), DSPDs(digital signal processing devices), PLDs(programmable logic devices), FPGAs(field programmable gate arrays), 프로세서(processors), 제어기(controllers), 마이크로 컨트롤러(micro-controllers), 마이크로 프로세서(microprocessors), 기타 기능 수행을 위한 전기적인 유닛(unit) 중 적어도 하나를 이용하여 구현될 수 있다. 소프트웨어적인 구현에 의하면, 본 명세서에서 설명되는 절차 및 기능과 같은 실시 예들은 별도의 소프트웨어 모듈들로 구현될 수 있다. 상기 소프트웨어 모듈들 각각은 본 명세서에서 설명되는 하나 이상의 기능 및 작동을 수행할 수 있다.
본 개시의 다양한 실시 예들은 기기(machine)(예: 컴퓨터)로 읽을 수 있는 저장 매체(machine-readable storage media)에 저장될 수 있는 명령어를 포함하는 소프트웨어로 구현될 수 있다. 상기 기기는, 저장 매체로부터 저장된 명령어를 호출하고, 호출된 명령어에 따라 동작이 가능한 장치로서, 개시된 실시 예들에 전자 장치(100)를 포함할 수 있다. 상기 명령이 프로세서에 의해 실행될 경우, 프로세서가 직접, 또는 상기 프로세서의 제어 하에 다른 구성요소들을 이용하여 상기 명령에 해당하는 기능을 수행할 수 있다. 명령은 컴파일러 또는 인터프리터에 의해 생성 또는 실행되는 코드를 포함할 수 있다. 기기로 읽을 수 있는 저장매체는, 비일시적(non-transitory) 저장매체의 형태로 제공될 수 있다. 여기서, '비일시적'은 저장매체가 신호(signal)를 포함하지 않으며 실재(tangible)한다는 것을 의미할 뿐 데이터가 저장매체에 반영구적 또는 임시적으로 저장됨을 구분하지 않는다.
일 실시 예에 따르면, 본 문서에 개시된 다양한 실시 예들에 따른 방법은 컴퓨터 프로그램 제품(computer program product)에 포함되어 제공될 수 있다. 컴퓨터 프로그램 제품은 상품으로서 판매자 및 구매자 간에 거래될 수 있다. 컴퓨터 프로그램 제품은 기기로 읽을 수 있는 저장 매체(예: compact disc read only memory (CD-ROM))의 형태로, 또는 어플리케이션 스토어(예: 플레이 스토어™)를 통해 온라인으로 배포될 수 있다. 온라인 배포의 경우에, 컴퓨터 프로그램 제품의 적어도 일부는 제조사의 서버, 어플리케이션 스토어의 서버, 또는 중계 서버의 메모리와 같은 저장 매체에 적어도 일시 저장되거나, 임시적으로 생성될 수 있다.
다양한 실시 예들에 따른 구성 요소(예: 모듈 또는 프로그램) 각각은 단수 또는 복수의 개체로 구성될 수 있으며, 전술한 해당 서브 구성 요소들 중 일부 서브 구성 요소가 생략되거나, 또는 다른 서브 구성 요소가 다양한 실시 예에 더 포함될 수 있다. 대체적으로 또는 추가적으로, 일부 구성 요소들(예: 모듈 또는 프로그램)은 하나의 개체로 통합되어, 통합되기 이전의 각각의 해당 구성 요소에 의해 수행되는 기능을 동일 또는 유사하게 수행할 수 있다. 다양한 실시 예들에 따른, 모듈, 프로그램 또는 다른 구성 요소에 의해 수행되는 동작들은 순차적, 병렬적, 반복적 또는 휴리스틱하게 실행되거나, 적어도 일부 동작이 다른 순서로 실행되거나, 생략되거나, 또는 다른 동작이 추가될 수 있다.
이상에서는 본 개시의 바람직한 실시 예에 대하여 도시하고 설명하였지만, 본 개시는 상술한 특정의 실시 예에 한정되지 아니하며, 청구범위에서 청구하는 본 개시의 요지를 벗어남이 없이 당해 개시에 속하는 기술분야에서 통상의 지식을 가진 자에 의해 다양한 변형실시가 가능한 것은 물론이고, 이러한 변형실시들은 본 개시의 기술적 사상이나 전망으로부터 개별적으로 이해되어서는 안될 것이다.
100: 전자 장치
200: 제1 서버
300: 제2 서버

Claims (20)

  1. 전자 장치에 있어서,
    통신부;
    컴퓨터 실행가능 명령어(computer executable instructions)를 저장하는 메모리; 및
    상기 컴퓨터 실행가능 명령어를 실행함으로써,
    방송 스케줄 정보를 상기 통신부를 통해 수신하고,
    사용자에 의해 선택된 채널에 대응하는 컨텐츠 신호를 기초로 영상을 제공하며,
    상기 영상이 제공되는 동안 상기 컨텐츠 신호로부터, 상기 컨텐츠 신호를 식별할 수 있는 핑거 프린트(fingerprint)를 포함하는 특징 정보를 획득하고,
    컨텐츠 정보에 대한, 상기 특징 정보를 포함하는 요청을 서버로 전송하도록 상기 통신부를 제어하며,
    상기 서버로부터 현재 제공 중인 상기 영상에 대응되며, 상기 특징 정보에 포함된 상기 핑거 프린트에 대응되는 프로그램 명칭을 포함하는 상기 컨텐츠 정보를 수신하며,
    상기 컨텐츠 정보에 포함된 상기 프로그램 명칭과 상기 방송 스케줄 정보를 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별하는 프로세서;를 포함하고,
    상기 프로세서는,
    상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 제1 빈도로 서버에 전송하도록 상기 통신부를 제어하고,
    상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한 것으로 식별되면 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송하도록 상기 통신부를 제어하는, 전자 장치.
  2. 삭제
  3. 제1항에 있어서,
    상기 프로세서는,
    상기 영상이 제공되는 동안 OCR(Optical character recognition)을 이용해 상기 프로그램 명칭을 획득하고, 상기 획득된 프로그램 명칭을 상기 방송 스케줄 정보와 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별하는, 전자 장치.
  4. 제1항에 있어서,
    상기 프로세서는,
    상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송한 것에 대응하여 상기 서버로부터 수신한 컨텐츠 정보를 상기 방송 스케줄 정보와 비교하고, 비교 결과 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 상기 제1 빈도로 상기 서버에 전송하도록 상기 통신부를 제어하는 전자 장치.
  5. 제1항에 있어서,
    상기 프로세서는,
    상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 광고가 방송될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송하도록 상기 통신부를 제어하는 전자 장치.
  6. 제5항에 있어서,
    상기 프로세서는,
    상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 상기 광고가 종료될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송하도록 상기 통신부를 제어하는 전자 장치.
  7. 제1항에 있어서,
    상기 프로세서는,
    상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면, 상기 방송 스케줄 정보를 제공한 외부 서버로 방송 스케줄 정보의 부정확을 알리는 정보를 전송하도록 상기 통신부를 제어하는 전자 장치.
  8. 제1항에 있어서,
    상기 프로세서는,
    상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보가 부정확한 것임을 알리는 UI 요소를 제공하는 전자 장치.
  9. 제1항에 있어서,
    상기 프로세서는,
    상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면, 상기 요청을 상기 서버로 전송한 것에 대응하여 상기 서버로부터 수신한 컨텐츠 정보를 기초로 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보를 수정하는 전자 장치.
  10. 제1항에 있어서,
    상기 프로세서는,
    상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송하다가 채널이 변경되면, 상기 요청을 상기 제1 빈도로 상기 서버에 전송하도록 상기 통신부를 제어하는 전자 장치.
  11. 제1항에 있어서,
    상기 핑거 프린트는,
    상기 컨텐츠 신호로부터 획득된 오디오 핑거프린트 및 비디오 핑거프린트 중 적어도 하나인, 전자 장치.
  12. 전자 장치의 제어방법에 있어서,
    방송 스케줄 정보를 획득하는 단계;
    사용자에 의해 선택된 채널에 대응하는 컨텐츠 신호를 기초로 영상을 제공하는 단계; 및
    상기 영상이 제공되는 동안 상기 컨텐츠 신호로부터, 상기 컨텐츠 신호를 식별할 수 있는 핑거 프린트를 포함하는 특징 정보를 획득하는 단계;
    컨텐츠 정보에 대한, 상기 특징 정보를 포함하는 요청을 서버로 전송하는 단계;
    상기 서버로부터 현재 제공 중인 상기 영상에 대응되며, 상기 특징 정보에 포함된 상기 핑거 프린트에 대응되는 프로그램 명칭을 포함하는 상기 컨텐츠 정보를 수신하는 단계; 및
    상기 컨텐츠 정보에 포함된 상기 프로그램 명칭과 상기 방송 스케줄 정보를 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별하는 단계;를 포함하며,
    상기 전송하는 단계는,
    상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 제1 빈도로 서버에 전송하고, 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한 것으로 식별되면 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송하는, 전자 장치의 제어방법.
  13. 삭제
  14. 제12항에 있어서,
    상기 정확한지 여부를 식별하는 단계는,
    상기 영상이 제공되는 동안 OCR(Optical character recognition)을 이용해 상기 프로그램 명칭을 획득하는 단계; 및
    상기 획득된 프로그램 명칭을 상기 방송 스케줄 정보와 비교하여 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 정확한지 여부를 식별하는 단계;를 더 포함하는, 전자 장치의 제어방법.
  15. 제12항에 있어서,
    상기 전송하는 단계는,
    상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송한 것에 대응하여 상기 서버로부터 수신한 컨텐츠 정보를 상기 방송 스케줄 정보와 비교하고, 비교 결과 상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 상기 제1 빈도로 상기 서버에 전송하는 전자 장치의 제어방법.
  16. 제12항에 있어서,
    상기 전송하는 단계는,
    상기 제1 빈도보다 낮은 빈도로 상기 요청을 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 광고가 방송될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송하는 전자 장치의 제어방법.
  17. 제16항에 있어서,
    상기 전송하는 단계는,
    상기 요청을 상기 제1 빈도보다 높은 빈도로 상기 서버에 전송하다가 상기 방송 스케줄 정보에 기초하였을 때 상기 선택된 채널에서 상기 광고가 종료될 것으로 예상되는 시간이 되면, 상기 요청을 상기 제1 빈도보다 낮은 빈도로 상기 서버에 전송하는 전자 장치의 제어방법.
  18. 제12항에 있어서,
    상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면, 상기 방송 스케줄 정보를 제공한 외부 서버로 방송 스케줄 정보의 부정확을 알리는 정보를 전송하는 단계;를 더 포함하는 전자 장치의 제어방법.
  19. 제12항에 있어서,
    상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공하는 단계; 및
    상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보가 부정확한 것임을 알리는 UI 요소를 제공하는 단계;를 더 포함하는 전자 장치의 제어방법.
  20. 제12항에 있어서,
    상기 방송 스케줄 정보에 대응되는 프로그램가이드 UI를 제공하는 단계; 및
    상기 선택된 채널에 대한 상기 방송 스케줄 정보가 부정확한 것으로 식별되면 상기 요청을 상기 서버로 전송한 것에 대응하여 상기 서버로부터 수신한 컨텐츠 정보를 기초로 상기 프로그램가이드 UI에서 상기 선택된 채널에 대한 프로그램 정보를 수정하는 단계;를 더 포함하는 전자 장치의 제어방법.
KR1020180054460A 2018-05-11 2018-05-11 전자 장치 및 그의 제어방법 KR102504174B1 (ko)

Priority Applications (5)

Application Number Priority Date Filing Date Title
KR1020180054460A KR102504174B1 (ko) 2018-05-11 2018-05-11 전자 장치 및 그의 제어방법
PCT/KR2019/004174 WO2019216554A1 (en) 2018-05-11 2019-04-09 Electronic apparatus and controlling method thereof
CN201980030285.4A CN112075085B (zh) 2018-05-11 2019-04-09 电子装置及其控制方法
EP19169881.0A EP3567861B1 (en) 2018-05-11 2019-04-17 Electronic apparatus and controlling method thereof
US16/396,214 US10841656B2 (en) 2018-05-11 2019-04-26 Electronic apparatus and controlling method thereof

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020180054460A KR102504174B1 (ko) 2018-05-11 2018-05-11 전자 장치 및 그의 제어방법

Publications (2)

Publication Number Publication Date
KR20190129586A KR20190129586A (ko) 2019-11-20
KR102504174B1 true KR102504174B1 (ko) 2023-02-27

Family

ID=66217965

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020180054460A KR102504174B1 (ko) 2018-05-11 2018-05-11 전자 장치 및 그의 제어방법

Country Status (5)

Country Link
US (1) US10841656B2 (ko)
EP (1) EP3567861B1 (ko)
KR (1) KR102504174B1 (ko)
CN (1) CN112075085B (ko)
WO (1) WO2019216554A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10708386B2 (en) * 2013-11-19 2020-07-07 Comcast Cable Communications, Llc Managing data delivery
KR102585244B1 (ko) * 2018-09-21 2023-10-06 삼성전자주식회사 전자 장치 및 그 제어 방법
KR20220129359A (ko) * 2021-03-16 2022-09-23 삼성전자주식회사 전자 장치 및 이의 제어 방법
US11445264B1 (en) * 2021-10-29 2022-09-13 DraftKings, Inc. Systems and methods for generating notification interfaces synchronized with broadcast events and local interactions
CN114401448B (zh) * 2021-12-27 2024-03-01 珠海迈科智能科技股份有限公司 节目预告信息的异常检测方法、装置、设备及存储介质

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160127759A1 (en) 2014-11-05 2016-05-05 Samsung Electronics Co., Ltd. Terminal device and information providing method thereof
US20170251248A1 (en) 2016-02-29 2017-08-31 Gracenote, Inc. Media Channel Identification with Multi-Match Detection and Disambiguation Based on Single-Match
US20170272836A1 (en) 2015-06-12 2017-09-21 Sorenson Media, Inc. Detecting channel change in automatic content recognition fingerprint matching
US20180063558A1 (en) 2016-08-30 2018-03-01 Disney Enterprises, Inc. Program verification and decision system

Family Cites Families (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20020118954A1 (en) * 2001-12-07 2002-08-29 Barton James M. Data storage management and scheduling system
WO2002062009A1 (en) * 2001-01-30 2002-08-08 Digimarc Corporation Efficient interactive tv
US7788696B2 (en) * 2003-10-15 2010-08-31 Microsoft Corporation Inferring information about media stream objects
KR100651468B1 (ko) 2004-08-19 2006-11-29 삼성전자주식회사 동일 시간대 방송 프로그램 정보를 안내하는 디지털 방송 수신용 단말기 및 그 방법
US8631440B2 (en) * 2007-04-30 2014-01-14 Google Inc. Program guide user interface
US8327407B2 (en) * 2009-10-27 2012-12-04 Sling Media, Inc. Determination of receiving live versus time-shifted media content at a communication device
KR101778530B1 (ko) 2011-06-14 2017-09-15 삼성전자 주식회사 영상 처리 방법 및 장치
JP5948773B2 (ja) 2011-09-22 2016-07-06 ソニー株式会社 受信装置、受信方法、プログラム、及び情報処理システム
JP5355729B2 (ja) * 2012-02-13 2013-11-27 株式会社東芝 電子機器、サーバ及び電子機器の制御方法
WO2013133601A1 (en) 2012-03-05 2013-09-12 Lg Electronics Inc. Video display apparatus and operating method thereof
US8799957B2 (en) * 2012-11-08 2014-08-05 Motorola Mobility Llc Electronic program guide with display of alternative-source multimedia program options and estimated availability parameters
JP6544352B2 (ja) 2014-05-22 2019-07-17 ソニー株式会社 受信装置、及び、受信方法
WO2016017964A1 (ko) 2014-07-29 2016-02-04 엘지전자 주식회사 방송 신호 송신 장치, 방송 신호 수신 장치, 방송 신호 송신 방법, 및 방송 신호 수신 방법
KR20160085076A (ko) 2015-01-07 2016-07-15 삼성전자주식회사 콘텐츠를 제공하는 방송 서버를 판단하는 방법 및 이를 제공하는 전자 장치
KR102019493B1 (ko) * 2015-02-09 2019-09-06 삼성전자주식회사 디스플레이 장치 및 그 정보 제공 방법
KR102410473B1 (ko) * 2016-08-01 2022-06-17 삼성전자주식회사 전자 장치 및 전자 장치의 동작 방법
WO2018026162A1 (en) * 2016-08-01 2018-02-08 Samsung Electronics Co., Ltd. Electronic apparatus and method of operating the same

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20160127759A1 (en) 2014-11-05 2016-05-05 Samsung Electronics Co., Ltd. Terminal device and information providing method thereof
US20170272836A1 (en) 2015-06-12 2017-09-21 Sorenson Media, Inc. Detecting channel change in automatic content recognition fingerprint matching
US20170251248A1 (en) 2016-02-29 2017-08-31 Gracenote, Inc. Media Channel Identification with Multi-Match Detection and Disambiguation Based on Single-Match
US20180063558A1 (en) 2016-08-30 2018-03-01 Disney Enterprises, Inc. Program verification and decision system

Also Published As

Publication number Publication date
CN112075085A (zh) 2020-12-11
EP3567861B1 (en) 2021-11-24
KR20190129586A (ko) 2019-11-20
EP3567861A1 (en) 2019-11-13
US20190349638A1 (en) 2019-11-14
WO2019216554A1 (en) 2019-11-14
CN112075085B (zh) 2023-04-21
US10841656B2 (en) 2020-11-17

Similar Documents

Publication Publication Date Title
KR102504174B1 (ko) 전자 장치 및 그의 제어방법
EP2972965B1 (en) Systems and methods for auto-configuring a user equipment device with content consumption material
US8387084B1 (en) Systems and methods for detecting unauthorized use of a user equipment device
US20220103428A1 (en) Automatic determination of display device functionality
US9992439B2 (en) Display apparatus, controlling method, and display system
US11190837B2 (en) Electronic apparatus and controlling method thereof
US20180189841A1 (en) Electronic apparatus and controlling method thereof
KR102128088B1 (ko) 전자 장치의 방송 채널 정보 공유 방법 및 그 전자 장치
WO2017181596A1 (zh) 信息处理方法及装置
CN108829481B (zh) 基于控制电子设备的遥控器界面的呈现方法
KR20190070145A (ko) 전자 장치 및 그의 제어방법
KR20220080270A (ko) 전자 장치 및 전자 장치의 제어 방법
KR20230004139A (ko) 전자 장치 및 그 제어 방법
KR20190065601A (ko) 전자 장치 및 그의 제어방법
KR102546026B1 (ko) 전자 장치 및 그의 컨텐츠 인식 정보 획득
KR102097173B1 (ko) 휴대 단말과 연동되어 화면 출력을 제어하는 방법 및 장치
US20220309095A1 (en) Display device
KR20110087542A (ko) 개인화된 컨텐츠 메타 데이터를 이용한 컨텐츠 서비스 시스템 및 방법
JP2014229046A (ja) 検索システム、コンテンツ処理端末および映像コンテンツ受信機
TW201710975A (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