본 발명은 상기와 같은 요구에 의해 안출된 것으로, 미디어 재현시 사용자 주변의 하나 이상의 디바이스를 동기화시켜 효율적으로 제어함으로써 실감있는 미디어 재현 기능을 제공하는 SMMD 기반 미디어 서비스를 위한 미디어와 멀티 디바이스 동기 제어 시스템 및 방법을 제공함에 그 목적이 있다.
상기 목적을 달성하기 위하여 본 발명에 따른 SMMD 기반 미디어 서비스를 위한 미디어와 멀티 디바이스 동기 제어 시스템은 ne-미디어를 분석하여 메타 데이터를 추출하는 메타 데이터 관리부와, 동기 정보 테이블을 구성하여 상기 메타 데이터로부터 추출된 제어에 필요한 데이터를 저장하고, 미디어를 재생시 상기 동기 정보 테이블을 참조하여 하나 이상의 디바이스를 제어하는 동기화 제어부를 포함하는 점에 그 특징이 있다.
여기서, 홈네트워크 내 디바이스의 프로파일을 생성하여 관리하는 디바이스 프로파일 관리부와, 상기 동기화 제어부가 제어하는 디바이스 제어수단을 더 포함하고, 상기 디바이스 제어수단은 상기 하나 이상의 디바이스를 제어하는 멀티 디바이스 제어부와, 상기 디바이스별 유무선 인터페이스를 지원하는 하드웨어 인터페이스부와, 상기 인터페이스별 디바이스 드라이버를 포함한다.
이때, 메타 데이터 관리부는 상기 ne-미디어로부터 메타 데이터를 추출하는 ne-미디어 파서와, 상기 메타 데이터로부터 상기 디바이스의 제어에 필요한 데이터 를 분석 및 추출하는 메타 데이터 분석부로 구성된다.
그리고, 동기화 제어부는, 홈네트워크 내 디바이스에 동일한 시스템 시간을 적용하여 상기 시스템 시간에 동기를 맞추어 동작한다.
또한, 동기 정보 테이블은 실감표현에 적용될 디바이스 타입, 맵핑 디바이스, 제어 시간정보, 구동실패시 처리종류, 인터페이스, 디바이스 제어명령, 디바이스 제어값 및 미디어 상태정보를 포함하여 구성된다.
본 발명의 다른 특징에 따른 (c) 상기 디바이스를 초기화하는 단계와, (d) 동기 정보 테이블을 구축하는 단계와, (e) ne-미디어를 파싱하여 메타 데이터를 추출하는 단계와, (f) 상기 메타 데이터로부터 디바이스 제어에 필요한 데이터를 추출하여 최적의 디바이스를 맵핑시키고 동기 정보 테이블에 세팅 및 관리하는 단계와, (g) 상기 동기 정보 테이블을 기반으로 미디어와 디바이스 동기제어를 수행하는 단계로 구성되어 미디어의 내용에 따라 하나 이상의 디바이스를 적절하게 연동하는 점에 그 특징이 있는 SMMD 기반 미디어 서비스를 위한 미디어와 멀티 디바이스 동기 제어 방법이 제공된다.
여기서, (c)단계 이전에, (a) 홈네트워크에 연결되어 미디어와 연동하는 모든 디바이스의 디바이스 정보를 확보하여 디바이스 프로파일을 구성하는 단계와, (b) 홈네트워크에 연결되어 미디어와 연동하는 모든 디바이스에 동일한 시스템 시간을 적용하는 단계를 실행하는 것이 바람직하다.
이때, 상기 (e)단계 및 상기 (f)단계는 상기 (g)단계와 소정의 시간 간격을 두고 앞서 실행되거나, 상기 (g)단계 실행 전에 완료된다.
그리고, 상기 (c)단계는 (c-1) 메타 데이터의 헤더정보를 분석하여 미디어 재생에 필요한 디바이스 목록 및 개별 디바이스의 초기화 정보를 추출하는 단계와, (c-2) 연동 재현에 필요한 조건을 만족하는 디바이스로 맵핑하는 단계와, (c-3) 홈네트워크 내 디바이스의 상태를 점검하고, 개별 디바이스를 초기화하는 단계로 구성되고, 상기 (d)단계 실행 후 상기 동기 정보 테이블에 연동될 디바이스를 세팅하는 단계를 수행한다.
여기서, 상기 (c-3)단계에서, 상기 초기화는 디바이스에 전원을 공급 및 기본 세팅을 하는 단계이며, 상기 (d)단계는 각 시점별/디바이스별 제어 정보를 저장할 동기 정보 테이블을 구축하는 단계이다.
(f)단계는 (f-1) 상기 메타 데이터로부터 디바이스 제어정보를 추출하는 단계와, (f-2) 메타 데이터에 정의된 디바이스 타입에 따라 적용가능한 최적의 디바이스로 맵핑하는 단계와, (f-3) 상기 맵핑된 디바이스에 대하여 최적의 디바이스 제어에 필요한 데이터를 세팅하는 단계와, (f-4) 디바이스 제어정보 중 디바이스 구동시간이 시스템 시간과 동일한지를 판단하는 단계와, (f-5) 상기 판단결과 시스템 시간과 동일하면, 디바이스 정보를 클리어하는 단계와, (f-6) 미디어의 파싱이 모두 끝났는지를 조사하여 파싱이 끝날 때까지 상기 (f-1) 내지 상기 (f-6)을 계속 반복하는 단계로 구성된다.
이때, 상기 (f-1)단계 내지 상기 (f-6)단계 실행중 현재 재생중인 미디어의 재생상태 및 시간정보를 주기적으로 세팅하는 단계를 실행한다.
그리고, 상기 (g)단계는 (g-1) 동기 정보 테이블의 동기제어 시작시간(제어 명령 생성시간 - 동기제어 수행시간)이 현재 시스템 시간과 같은 디바이스 제어 정보가 존재하는지 모니터링하는 단계와, (g-2) 상기 디바이스 제어 정보가 존재하면, 동기 정보 테이블에서 디바이스 타입, 맵핑 디바이스 및 제어신호를 주고받을 인터페이스를 선택하는 단계와, (g-3) 상기 적용 디바이스의 제어명령, 제어값, 구동시간, 제어소요시간을 선택하는 단계와, (g-4) 제어명령 생성시간이 현재 시스템 시간을 초과했는지 조사하는 단계와, (g-5) 상기 조사결과 현재 시스템 시간을 초과하지 않았으면, 제어명령 생성시간이 미디어 재생시간(프레임)을 초과했는지 조사하는 단계와, (g-6) 상기 조사결과 미디어 재생시간을 초과하지 않으면, 제어명령 생성시간이 도래하면 디바이스 제어명령을 생성하는 단계와, (g-7) 구동시간에 해당 디바이스를 호출하는 단계와, (g-8) 제어명령에 따라 디바이스를 구동하는 단계와, (g-9) 미디어 재생이 끝났는지를 조사하여 미디어 재생이 끝날 때까지 상기 (g-1) 내지 상기 (g-9)을 반복하는 단계로 구성된다.
여기서, 상기 제어명령 생성시간은 디바이스의 구동시간에서 디바이스 제어에 걸리는 시간인 제어소요시간만큼 이전 시간이며, 상기 (g-4) 내지 상기 (g-5)단계에서, 상기 현재 시스템 시간 또는 상기 미디어 재생시간(프레임)이 제어명령 생성시간을 초과하면 제어명령을 생성할 시점이 지났으므로 디바이스 구동 명령 생성을 포기하고, 상기 (g-1)단계로 돌아가 상기 (g-1) 내지 상기 (g-9)를 반복하는 단계를 실행한다.
이때, 동기제어 수행시간은 적어도 한번의 디바이스 구동을 위해 동기제어에 필요한 시간으로 상기 (g-1)단계 내지 상기 (g-8)단계를 수행하는 시간이다.
본 발명에 따른 SMMD 기반 미디어 서비스를 위한 미디어와 멀티 디바이스 동기 제어 시스템 및 방법은 미디어 재현시 사용자 주변의 하나 이상의 디바이스를 동기화하여 제어함으로써 사용자에게 실감 있는 미디어 재현을 제공할 수 있다.
미디어에 따른 메타 데이터를 분석하여 분석된 내용에 따라 연동가능한 최적의 디바이스를 맵핑하고, 디바이스 속성에 따라 최적의 상태로 디바이스를 제어하여 실감 미디어 재현효과를 극대화할 수 있다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 상세히 설명하기로 한다. 이하의 실시예에서는 이 기술 분야에서 통상적인 지식을 가진 자에게 본 발명이 충분히 이해되도록 제공되는 것으로서, 여러 가지 형태로 변형될 수 있으며, 본 발명의 범위가 다음에 기술되는 실시예에 한정되는 것은 아니다.
도 1은 본 발명의 일실시예에 따른 SMMD 기반 미디어 서비스를 위한 미디어와 멀티 디바이스 동기 제어 시스템을 도시한 블록도이다. 이하, 도 1을 참조하여 설명한다.
미디어와 멀티 디바이스 동기 제어 시스템은 ne-미디어를 분석하여 메타 데이터를 추출하는 메타 데이터 관리부(150)와, 동기 정보 테이블을 구성하여 상기 메타 데이터로부터 추출된 제어에 필요한 데이터를 저장하고, 상기 ne-미디어를 재생시 상기 동기 정보 테이블을 참조하여 하나 이상의 디바이스를 제어하는 동기화 제어부(104)로 구성된다.
메타 데이터 관리부(150)는 ne-미디어를 분석하여 디바이스 타입(201) 및 디바이스의 속성이 포함된 메타 데이터(neo-data)를 추출한다.
메타 데이터 관리부(150)는 상기 ne-미디어로부터 메타 데이터를 추출하는ne-미디어 파서(102)와, 메타 데이터로부터 상기 디바이스의 제어에 필요한 데이터를 분석 및 추출하는 메타 데이터 분석부(103)로 구성된다.
동기화 제어부(104)는 홈네트워크 내 모든 디바이스를 동기화 제어하기 위해 상기 디바이스에 동일한 시스템 시간(Global Clock)을 적용하고, 동기 정보 테이블을 구축하여 메타 데이터로부터 추출된 각 시점별/디바이스별 제어 정보를 세팅하여 디바이스를 제어한다.
또한, 동기화 제어부(104)는 디바이스를 제어하는 멀티 디바이스 제어부(107), 하드웨어 인터페이스부(108) 및 디바이스 드라이버(110)로 구성된 디바이스 제어수단(160)과 미디어 제어부(105) 및 미디어 디코더(106)로 구성된 미디어 제어수단(140)을 제어한다.
미디어 제어부(105)는 A/V(Audio & Video) 미디어의 동작상태 즉, 미디어 재생, 빠른 재생, 역방향 재생, 빨리감기, 되감기 및 일시정지 등을 제어한다.
미디어 디코더(106)는 A/V 미디어의 정보를 디코딩(Decoding)하여 A/V 재생장치가 재생할 수 있는 형태로 변환한다.
멀티 디바이스 제어부(107)는 미디어 재생시 연동할 하나 이상의 디바이스를 제어한다. 디바이스는 기본적인 비디오, 음향장치 및 오각을 자극하는 방향장치, 진동장치, 풍향장치, 조명장치, 차광장치 등이 있다.
하드웨어 인터페이스부(108)는 디바이스가 연결된 다양한 유무선 하드웨어 인터페이스를 관리한다.
디바이스 드라이버(110)는 멀티 디바이스 제어부(107)가 지시한 명령을 인터페이스별 디바이스가 해석할 수 있는 형태로 변환한다.
이외에도, 미디어와 멀티 디바이스 동기 제어 시스템에는 ne-미디어 브라우저(101), 디바이스 프로파일 관리부(109)가 더 포함된다.
디바이스 프로파일 관리부(109)는 홈네트워크 내 디바이스의 프로파일을 생성하여 저장, 관리를 지원한다.
ne-미디어 브라우저(101)는 멀티 디바이스 동기 제어 시스템의 사용자 인터페이스 즉, 디바이스 프로파일을 로딩하거나, 미디어 및 멀티 디바이스의 동기화 제어 등을 지시하는 사용자의 명령의 입력 등을 제공한다.
도 2는 본 발명의 일실시예에 따른 동기 정보 테이블(200)을 도시한 도면이다. 도 2에 도시된 바와 같이, 동기 정보 테이블(200)은 디바이스 타입(201), 맵핑 디바이스(202), 동작 시간정보(203 내지 205), 구동실패시 처리종류(206), 제어명령(208), 제어값(209), 미디어 상태정보(210) 등으로 구성된다.
디바이스 타입(Device Type)(201)은 디바이스가 제공하는 미디어 재현의 출력의 형태이다. 예컨대, 디바이스 타입(201)은 Type 1에 시각(Sight), Type 2에 청각(Hearing), Type 3에 촉각(Touch), Type 4에 후각(Smell), Type n-1에 바람(Wind), Type n에 조명(Light)등과 같이 정의될 수 있다.
맵핑 디바이스(Mapping Device)(202)는 디바이스 타입(201)별로 홈네크워크 에 연결된 적용 가능한 디바이스의 종류(Device 1 ~ Device n)이다.
예컨대, 디바이스 타입(201)이 Type 1 즉, 시각일 경우 맵핑 디바이스(202)는 미디어를 시각적으로 재현하는 디바이스이며, 홈네트워크 내 시각 표현이 가능한 디바이스로 디지털 텔레비전, 컴퓨터의 모니터가 있다고 하면 Device 1에 디지털 텔레비전을, Device 2에 모니터를 적용 가능하다.
또, 디바이스 타입(201)이 Type 2 즉, 청각이라면, 맵핑 디바이스(202)는 홈네트워크에 연결된 디바이스 중 미디어를 청각적으로 재현 가능한 디바이스이며, Device 3에 스피커를, Device 4에 헤드폰을 선택하여 맵핑할 수 있다.
제어명령 생성시간(Setup Time)(203)은 디바이스를 제어하기 위한 제어명령(208)을 생성할 시간이다. 시스템 시간이 제어명령 생성시간(203)과 동일할 때 디바이스 제어명령(208)의 생성이 지시된다.
디바이스 제어명령(208)을 지시하여 실제 디바이스가 구동되는데 일정 시간이 소요되므로 제어명령 생성시간(203)은 구동시간(204)보다 구동에 필요한 절차를 수행하는데 소요되는 시간만큼 앞선 시간으로 설정된다.
동기 정보 테이블(200)은 열에 대하여 제어명령 생성시간(203) 순서로 세팅되어 관리된다. 상세하게는, 제어명령 생성시간(203)이 C_T1일 때는 Device 1 및 Device 2가, C_T2일때는 Device 3 및 Device 4가, C_T3일 때는 Device 5가 C_T4일 때는 Device6이 제어되며, 이때 CT1 내지 CT4는 CT1 > CT2 > CT3 > CT4 순서로 앞선 시간이다.
도 2의 실시예에서는 도시된 모든 제어명령 생성시간(203)에 대하여 디바이 스 타입(201) 및 맵핑 디바이스(202)가 중복되지 않는 예를 도시하였지만 미디어 재생중에 동일 디바이스가 시간에 따라 반복적으로 구동될 수 있으므로 실제로는 디바이스 타입(201) 및 맵핑 디바이스(202)가 중복되어 세팅될 가능성이 더 크다.
구동시간(T1_Time)(204)은 디바이스가 실제 구동을 시작하는 시간이며, 제어소요시간(Control time)(205)은 디바이스의 제어명령을 생성한 후 실제 디바이스가 구동되는데 까지 소요되는 시간이다.
구동 실패시 처리종류(Error_proc_type)(206)는 디바이스 구동에 실패하였을 경우 처리될 명령의 종류이다.
인터페이스(Interface)(207)는 멀티 디바이스 동기 제어 시스템과 연동되는 디바이스의 연결 유무선 인터페이스이다.
제어명령(Control_command)(208)은 디바이스를 제어하는 명령 예컨대, 전원 온/오프(On/Off), 채널(Channel), 크기 또는 세기(Volume), 방향(Direction) 등의 명령이다.
제어값(Control_value)(209)은 제어명령(208)에 따른 디바이스 실제 제어의 정도이다.
미디어 상태정보(Media status)(210)는 미디어 재생 시간 및 미디어의 동작상태에 관한 정보이다.
이외에도, 동기 정보 테이블(200)에는 제어명령 생성시간에서 적어도 동기제어 수행시간 만큼 앞선 동기제어 시작시간이 더 기재된다.
도 3은 본 발명의 일실시예에 따른 SMMD 기반 미디어 서비스를 위한 미디어 와 멀티 디바이스 동기 제어 시스템의 미디어와 디바이스의 동기화를 위한 전체적인 제어 동작순서를 도시한 흐름도이다. 이하, 도 3을 참조하여 설명한다.
먼저, 홈네트워크에 연결되어(이하, 홈네트워크 내) 미디어와 연동하는 모든 디바이스에 대한 디바이스 정보를 확보하여 디바이스 프로파일을 구성한다(S300).
구성된 디바이스 프로파일은 우선 디바이스 프로파일 데이터베이스에 저장된다.
그리고, 홈네트워크 내 디바이스에 동일한 시스템 시간(Global Clock)을 적용한다(S310). 미디어의 장면에 따라 적절하게 디바이스를 제어하기 위해서는 홈네트워크 내 디바이스에 대하여 동기를 맞추는 절차 즉, 동일한 기준 클록(Global Clock)을 설정할 필요가 있다.
이어서, 동일한 시스템 시간이 적용된 디바이스를 초기화한다(S320).
그리고, 홈네트워크 내 연동 가능한 디바이스 목록 및 디바이스 제어에 필요한 데이터가 저장될 동기 정보 테이블을 구성한다(S330).
다음으로, ne-미디어를 파싱(Parshing)하여 메타 데이터(neo-data)를 추출한다(S340).
이어서, 추출된 메타 데이터를 분석하여 디바이스 제어에 필요한 데이터를 추출하여 동기 정보 테이블에 세팅한다(S350). 동기 정보 테이블은 디바이스 타입(201), 맵핑 디바이스(202), 제어명령(208) 등으로 구성된다.
마지막으로, 동기 정보 테이블에 저장된 디바이스 동기 제어에 필요한 데이터를 참조하여 미디어와 디바이스 동기제어를 수행한다(S360).
한편, (S340)단계 및 (S350)단계는 상기 (S360)단계와 소정의 시간 간격 앞서 실행되거나, 상기 (306)단계 실행 전에 모두 완료되도록 제어될 수 있다.
도 4 내지 도 6은 본 발명의 일실시예에 따른 SMMD 기반 미디어 서비스 시스템의 동작 순서의 세부단계를 도시한 흐름도이다.
도 4는 본 발명에 일실시예에 따른 디바이스 초기화 순서를 도시한 흐름도이다.
메타 데이터의 헤더정보를 분석하여 ne-미디어 재생에 필요한 디바이스 목록 및 초기화 정보를 추출한다(S401).
이어서, 연동 재현에 필요한 조건을 만족하는 디바이스로 맵핑한다(S402).
이어서, 홈네트워크 내 각 디바이스의 상태를 점검하고(S403), 추출된 초기화 정보에 따라 개별 디바이스를 초기화시킨다(S404).
이후, 동기 정보 테이블(200)을 구축하는 단계(S330)실행 이후 초기화된 디바이스들의 목록을 동기 정보 테이블(200)에 세팅한다.
도 5는 본 발명의 일실시예에 따른 동기 정보 테이블의 관리방법을 도시한 흐름도이다. 이하, 도 5를 참조하여 설명한다.
메타 데이터를 분석하여 디바이스 제어에 필요한 데이터를 추출한다(S501).
이어서, 메타 데이터에 정의된 디바이스를 적용 가능한 최적의 디바이스로 맵핑한다(S502).
예컨대, 메타 데이터에 미디어의 시각적 재현이 정의되어 있다면 맵핑 디바이스로 홈네트워크 내 디바이스 중 가장 화질이 우수한 디지털 텔레비전을 맵핑할 수 있다.
다음으로, 디바이스 제어에 필요한 데이터를 참조하여 최적의 제어정보를 동기 정보 테이블에 세팅한다(S503).
구동시간(204)이 시스템 시간과 동일한 디바이스 연동제어정보가 존재하는지를 검색하여 상기 디바이스가 존재하면(S504), 그 디바이스는 현재 구동을 개시하였거나 이미 구동해야할 시간이 지난 디바이스이므로 해당 디바이스 정보를 동기 정보 테이블에서 관리할 필요가 없으므로 클리어한다(S505).
이후, 미디어의 파싱이 모두 끝났는지를 조사하여(506) 파싱이 끝날 때까지 단계(S501) 내지 단계(S506)을 계속 반복하는 과정을 실행한다.
단계(S501) 내지 단계(S506)을 실행중에 미디어의 재생상태 및 시간정보를 주기적으로 공유하여 업데이트하는 절차를 수행한다(S507).
이때, 단계(S501) 내지 단계(S506)과 단계(S507)은 별도의 프로세스로 동작하므로 사실상 독립적으로 동작한다.
도 6은 본 발명의 일실시예에 따른 동기 제어방법을 도시한 흐름도이다.
동기 정보 테이블의 동기제어 시작시간(제어명령 생성시간(203) - 동기제어 수행시간)이 현재 시스템 시간과 같은 디바이스 제어 정보가 존재하는지 모니터링한다(S601).
그러한 디바이스 제어 정보가 존재하면(S601), 동기 정보 테이블(200)로부터 디바이스 타입(201), 맵핑 디바이스(202), 디바이스 인터페이스(207)를 선택한다(S602).
이어서, 디바이스의 제어명령, 제어값, 구동시간(204), 제어소요시간(205) 등을 선택한다(S603).
제어명령 생성시간(203)이 현재 시스템 시간이나 미디어 재생시간(프레임)을 초과하면(S604 내지 S605), 제어명령을 생성할 시점을 지났으므로 디바이스 구동 명령 생성을 포기하고, 새로운 제어 명령을 생성하기 위해 단계(S601)로 되돌아가 미디어 재생이 모두 끝날때까지 단계(S601) 내지 단계(S605)를 반복한다.
이 과정 중 단계(S604) 및 (S605)의 판단결과 제어명령을 생성할 시점이 도래하면 제어명령 생성을 지시한다(S607).
그리고, 제어소요시간(205)만큼 시간이 경과한 구동시간(204)(T1_Time)에 해당 디바이스(160)를 호출하여(S608), 제어명령에 따라 디바이스를 작동시켜 동작상태를 변화시키며 계속 제어한다(S609).
이후, 미디어 재생이 모두 끝날 때까지 단계(S601)로 돌아가 동기 정보 테이블의 동기제어 시작시간(제어명령 생성시간(203) - 동기제어 수행시간)이 현재 시스템 시간과 같은 디바이스 제어 정보가 존재하는지를 지속적으로 모니터링한다(610).
한편, 동기제어 수행시간은, 적어도 (S601)단계 내지 (S608)단계를 수행하는데 소요되는 시간이다.
이상, 바람직한 실시예 및 첨부 도면을 통해 본 발명의 구성에 대하여 설명하였다. 그러나, 이는 예시에 불과한 것으로서 본 발명의 범위를 제한하기 위하여 사용된 것은 아니다. 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것인바, 본 발명의 진정한 보호 범위는 첨부된 특허청구범위의 기술적 사상에 의해 정해져야 할 것이다.