(19) 대한민국특허청 (KR) (12) 공개특허공보 (A) (51) 국제특허분류 (Int. Cl.) G06Q 50/00 (2006.01) (21) 출원번호 10-2010-0127815 (22) 출원일자 2010 년 12 월 14 일 심사청구일자 없음 전체청구항수 : 총 20 항 (11) 공개번호 10-2012-0066461 (43) 공개일자 2012 년 06 월 22 일 (71) 출원인 한국전자통신연구원 대전광역시유성구가정로 218 ( 가정동 ) (72) 발명자 이현정 대전광역시서구월평선사로 11, 101 동 1001 호 ( 월평동, 무지개아파트 ) 성정식 대전광역시유성구은구비로 31, 열매마을아파트 508 동 1401 호 ( 지족동 ) (74) 대리인 한양특허법인 (54) 발명의명칭콘텐츠변환장치및방법 (57) 요약 콘텐츠변환장치및방법이개시된다. 본발명에따른콘텐츠변환장치는, 미디어종속테이블및가중치테이블을정의하는테이블정의부 ; 단말정보및단말의재생기정보를상기단말로부터수신하여관리하는정보관리부 ; 및상기미디어종속테이블, 상기가중치테이블, 상기단말정보및상기재생기정보를이용하여변환될콘텐츠와관련한콘텐츠정보테이블을생성하고, 변환된콘텐츠를상기단말로송신하기위하여상기콘텐츠정보테이블을이용하여상기콘텐츠를변환하는콘텐츠변환부를포함한다. 대표도 - 도 9-1 -
이발명을지원한국가연구개발사업 과제고유번호 KI001845 부처명 지식경제부 연구사업명 정보통신산업원천기술개발사업 연구과제명 One-Service-Cross-Domain 지원을위한통합형 u-서비스프레임워크개발 ( 표준화연계 ) 주관기관 한국전자통신연구원 연구기간 2010.03.01 ~ 2011.02.28-2 -
특허청구의범위청구항 1 미디어종속테이블및가중치테이블을정의하는테이블정의부 ; 단말정보및단말의재생기정보를상기단말로부터수신하여관리하는정보관리부 ; 및상기미디어종속테이블, 상기가중치테이블, 상기단말정보및상기재생기정보를이용하여변환될콘텐츠와관련한콘텐츠정보테이블을생성하고, 변환된콘텐츠를상기단말로송신하기위하여상기콘텐츠정보테이블을이용하여상기콘텐츠를변환하는콘텐츠변환부를포함하는것을특징으로하는콘텐츠변환장치. 청구항 2 청구항 1에있어서, 상기콘텐츠변환부는, 상기미디어종속테이블, 상기가중치테이블및상기재생기정보를이용하여재생기별콘텐츠정보테이블을생성하고, 상기재생기별콘텐츠정보테이블및상기단말정보를이용하여단말별콘텐츠정보테이블을생성하며, 상기단말별콘텐츠정보테이블을이용하여상기콘텐츠를변환하는것을특징으로하는콘텐츠변환장치. 청구항 3 청구항 2에있어서, 상기재생기별콘텐츠정보테이블은, 비교결과키, 서비스키, 재생기키및파일포맷중하나이상을포함하는정보와, 비디오코덱과그가중치, 비디오모드와그플래그, 비디오비트레이트최소값, 최대값과플래그, 비디오모드가변비트레이트최소값, 최대값과플래그, 비디오프레임레이트최소값, 최대값과플래그, 비디오해상도와그플래그및비디오비율과그플래그중하나이상을포함하는비디오속성값, 및오디오코덱과그가중치, 오디오샘플레이트최소값과최대값, 오디오비트레이트최소값과최대값및오디오채널중하나이상을포함하는오디오속성값을포함하는것을특징으로하는콘텐츠변환장치. 청구항 4 청구항 3에있어서, 상기재생기별콘텐츠정보테이블은, 상기비교결과키를참조하고, 상기비교결과키는, 상기콘텐츠를재생하기위해상기재생기에서지원하는사항과상기콘텐츠를제공하는서버에서요구하는사항간의차이를파일로저장하고이를접근하기위한값인것을특징으로하는콘텐츠변환장치. 청구항 5 청구항 2 에있어서, - 3 -
상기재생기별콘텐츠정보테이블은, 서비스프로파일 (profile), 서비스비교규칙, 재생기, 재생기비교규칙및단말프로파일중하나이상의등록, 수정, 또는삭제에대응하여주기적으로등록, 수정, 또는삭제되는것을특징으로하는콘텐츠변환장치. 청구항 6 청구항 2에있어서, 상기단말별콘텐츠정보테이블은, 비교결과키, 서비스키, 재생기키, 단말고유키및파일포맷중하나이상을포함하는정보와, 비디오코덱, 비디오모드, 비디오비트레이트, 비디오모드가변비트레이트, 비디오프레임레이트, 비디오해상도및비디오비율중하나이상을포함하는비디오속성값, 및오디오코덱, 오디오샘플레이트, 오디오비트레이트및오디오채널중하나이상을포함하는오디오속성값을포함하는것을특징으로하는콘텐츠변환장치. 청구항 7 청구항 1에있어서, 상기테이블정의부는, 파일포맷별미디어종속테이블, 비디오코덱별미디어종속테이블및오디오코덱별미디어종속테이블을포함하는미디어종속테이블을정의하고, 비디오코덱별가중치테이블및오디오코덱별가중치테이블을포함하는가중치테이블을정의하는것을특징으로하는콘텐츠변환장치. 청구항 8 청구항 7에있어서상기파일포맷별미디어종속테이블은, 하나이상의파일포맷의리스트를포함하고, 각파일포맷을지원하는하나이상의비디오포맷의리스트및하나이상의오디오포맷의리스트를포함하는것을특징으로하는콘텐츠변환장치. 청구항 9 청구항 7에있어서, 상기비디오포맷별미디어종속테이블은, 비디오코덱과그가중치, 비디오모드와그플래그, 비디오비트레이트최소값, 최대값및플래그, 비디오모드가변비트레이트최소값, 최대값및플래그, 비디오프레임레이트최소값, 최대값및플래그, 비디오해상도와그플래그및비디오비율과그플래그중하나이상을포함하는비디오속성값과, 오디오코덱및그플래그중하나이상을포함하는오디오속성값, 및파일포맷및그플래그중하나이상을포함하는파일포맷속성값을포함하는것을특징으로하는콘텐츠변환장치. - 4 -
청구항 10 청구항 7에있어서, 상기오디오포맷별미디어종속테이블은, 오디오코덱, 오디오코덱가중치, 오디오샘플레이트최소값, 오디오샘플레이트최대값, 오디오비트레이트최소값, 오디오비트레이트최대값및오디오채널수중하나이상을포함하는오디오속성값, 파일포맷및비디오코덱을포함하는것을특징으로하는콘텐츠변환장치. 청구항 11 청구항 7에있어서, 상기비디오코덱별가중치테이블은, 무료여부, 무료여부에대한가중치, 파일포맷지원개수및파일포맷지원개수에대한가중치중하나이상을포함하는것을특징으로하는콘텐츠변환장치. 청구항 12 청구항 7에있어서, 상기오디오코덱별가중치테이블은, 무료여부, 무료여부에대한가중치, 파일포맷지원개수및파일포맷지원개수에대한가중치중하나이상을포함하는것을특징으로하는콘텐츠변환장치. 청구항 13 청구항 1에있어서, 사용자의입력을받아상기콘텐츠를제공하는서버에서선택된콘텐츠에대한콘텐츠변환필요여부, 콘텐츠변환지원여부및콘텐츠변환가능여부를확인하는콘텐츠변환판단부를더포함하는것을특징으로하는콘텐츠변환장치. 청구항 14 미디어종속테이블및가중치테이블을정의하는단계 ; 단말정보및단말의재생기정보를상기단말로부터수신하여관리하는단계 ; 및상기미디어종속테이블, 상기가중치테이블, 상기단말정보및상기재생기정보를이용하여변환될콘텐츠와관련한콘텐츠정보테이블을생성하는단계 ; 상기콘텐츠정보테이블을이용하여상기콘텐츠를변환하는단계 ; 및변환된콘텐츠를상기단말로송신하는단계를포함하는것을특징으로하는콘텐츠변환방법. 청구항 15 청구항 14에있어서, 상기콘텐츠를변환하는단계는, - 5 -
상기미디어종속테이블, 상기가중치테이블및상기재생기정보를이용하여재생기별콘텐츠정보테이블을생성하는단계 ; 상기재생기별콘텐츠정보테이블및상기단말정보를이용하여단말별콘텐츠정보테이블을생성하는단계 ; 및상기단말별콘텐츠정보테이블을이용하여상기콘텐츠를변환하는단계를포함하는것을특징으로하는콘텐츠변환방법. 청구항 16 청구항 14에있어서, 상기미디어종속테이블및가중치테이블을정의하는단계는, 파일포맷별미디어종속테이블, 비디오코덱별미디어종속테이블및오디오코덱별미디어종속테이블을포함하는미디어종속테이블을정의하는단계 ; 및비디오코덱별가중치테이블및오디오코덱별가중치테이블을포함하는가중치테이블을정의하는단계를포함하는것을특징으로하는콘텐츠변환방법. 청구항 17 청구항 14에있어서, 상기단말정보및단말의재생기정보를상기단말로부터수신하여관리하는단계후에, 상기콘텐츠를제공하는서버에서사용자의입력을받아상기콘텐츠를선택하는단계 ; 선택된콘텐츠에대해콘텐츠변환이필요한지여부를확인하는단계 ; 및상기선택된콘텐츠가콘텐츠변환이필요없는경우, 상기단말과상기서버간에직접연결이설정되도록하고실행을종료하는단계를포함하는것을특징으로하는콘텐츠변환방법. 청구항 18 청구항 17에있어서, 상기선택된콘텐츠가콘텐츠변환이필요한경우, 이전에생성된단말별콘텐츠정보테이블에상기단말에대한정보가존재하는지여부를확인하여상기정보가존재하는경우, 상기서버로부터상기콘텐츠를수신하고상기콘텐츠를변환하는단계로넘어가고, 상기정보가존재하지않는경우, 상기단말의재생기가상기선택된콘텐츠의콘텐츠변환을지원하는지여부를확인하는단계 ; 및상기단말의재생기가상기선택된콘텐츠의콘텐츠변환을지원하지않는경우, 실행을종료하는단계를포함하는것을특징으로하는콘텐츠변환방법. 청구항 19 청구항 18에있어서, 상기단말의재생기가상기선택된콘텐츠의콘텐츠변환을지원하는경우, 상기선택된콘텐츠를변환하기위한상기선택된콘텐츠의속성을추출하는단계 ; 상기선택된콘텐츠의속성을이용하여콘텐츠변환이가능한지여부를확인하는단계 ; 및 - 6 -
상기선택된콘텐츠의변환이불가능한경우, 실행을종료하고, 상기선택된콘텐츠의변환이가능한경우, 상기콘텐츠정보테이블을생성하는단계로넘어가는단계를포함하는것을특징으로하는콘텐츠변환 방법. 청구항 20 청구항 14에있어서, 변환된콘텐츠를상기단말로송신하는단계후에, 송신된콘텐츠를재생하는단계 ; 상기송신된콘텐츠가재생이종료되었는지여부를확인하는단계 ; 및상기송신된콘텐츠가재생이종료되었으면실행을종료하는단계를포함하는것을특징으로하는콘텐츠변환방법. 명세서 [0001] 기술분야본발명은콘텐츠변환장치및방법에관한것으로서, 단말및단말의재생기정보에따라단말에서지원하지않는파일포맷, 비디오코덱및오디오코덱과같은콘텐츠속성을단말에서지원하도록변환하여제공함으로써단말의종류에상관없이멀티미디어콘텐츠서비스를제공할수있는콘텐츠변환장치및방법에관한것이다. [0002] 배경기술최근모바일단말의눈부신발전으로인해다양한모바일 (mobile) 단말이등장하여사용되고있으며, 앱스토어 (AppStore) 를포함한아이폰 (iphone) 의등장으로모바일단말분야는새로운국면을맞이하게되었다. 그러나이러한다양한모바일단말은탑재된화면의크기, 해상도, 컬러레벨, 컴퓨팅시스템능력등의하드웨어성능과지원코덱 (codec) 및설치된미디어 (media) 재생기등의다양한소프트웨어특성을갖고있기때문에단말간에콘텐츠의호환성은매우낮은상황이다. 이러한상황에서사용자가콘텐츠를사용할때단말에서코덱을지원하지않아콘텐츠가재생되지않는경우가많이발생하고있다. 즉, 각모바일단말별로하드웨어및소프트웨어특성과설치된재생기등의특성으로인해, 지원하는코덱종류가다르게되고따라서각단말에서모든콘텐츠의재생을지원하지는못하고있는실정이다. 예를들어, 마이크로소프트 (Microsoft) 사의윈도우모바일 (Window Mobile) 운영체제를사용하는모바일단말에서재생가능한동영상이애플 (Apple) 사의아이폰단말에서는재생하지못하는경우가발생한다. 이런경우동영상재생을시도했을때지원하지않는코덱이라는메시지가표시될수있는데, 몇몇코덱은인터넷에서다운로드받아설치하여사용할수도있지만, 몇몇코덱은아예지원되지않기도한다. 이러한상황에서, 단말간콘텐츠를공유하거나단말을이동하면서콘텐츠를계속사용하기는어려운문제점이있다. 발명의내용 [0003] 해결하려는과제본발명의목적은단말및단말의재생기정보에따라단말에서지원하지않는파일포맷, 비디오코덱및오디오코덱과같은콘텐츠속성을단말에서지원하도록변환하여제공함으로써단말의종류에상관없이멀티미디어콘텐츠서비스를제공할수있는콘텐츠변환장치및방법을제공하는것이다. [0004] 과제의해결수단본발명의일실시예에따른콘텐츠변환장치는, 미디어종속테이블및가중치테이블을정의하는테이블정의부 ; 단말정보및단말의재생기정보를상기단말로부터수신하여관리하는정보관리부 ; 및상기미디어종속테이블, 상기가중치테이블, 상기단말정보및상기재생기정보를이용하여변환될콘텐츠와관련 - 7 -
한콘텐츠정보테이블을생성하고, 변환된콘텐츠를상기단말로송신하기위하여상기콘텐츠정보테이블 을이용하여상기콘텐츠를변환하는콘텐츠변환부를포함하여구성된다. [0005] [0006] [0007] [0008] [0009] [0010] 이때, 상기콘텐츠변환부는, 상기미디어종속테이블, 상기가중치테이블및상기재생기정보를이용하여재생기별콘텐츠정보테이블을생성하고, 상기재생기별콘텐츠정보테이블및상기단말정보를이용하여단말별콘텐츠정보테이블을생성하며, 상기단말별콘텐츠정보테이블을이용하여상기콘텐츠를변환할수있다. 이때, 상기테이블정의부는, 파일포맷별미디어종속테이블, 비디오코덱별미디어종속테이블및오디오코덱별미디어종속테이블을포함하는미디어종속테이블을정의하고, 비디오코덱별가중치테이블및오디오코덱별가중치테이블을포함하는가중치테이블을정의할수있다. 또한, 상기콘텐츠변환장치는, 상기콘텐츠를제공하는서버및상기단말과통신하기위한인터페이스부를더포함할수있다. 본발명의일실시예에따른콘텐츠변환방법은, 미디어종속테이블및가중치테이블을정의하는단계 ; 단말정보및단말의재생기정보를상기단말로부터수신하여관리하는단계 ; 및상기미디어종속테이블, 상기가중치테이블, 상기단말정보및상기재생기정보를이용하여변환될콘텐츠와관련한콘텐츠정보테이블을생성하는단계 ; 상기콘텐츠정보테이블을이용하여상기콘텐츠를변환하는단계 ; 및변환된콘텐츠를상기단말로송신하는단계를포함하여구성된다. 이때, 상기콘텐츠를변환하는단계는, 상기미디어종속테이블, 상기가중치테이블및상기재생기정보를이용하여재생기별콘텐츠정보테이블을생성하는단계 ; 상기재생기별콘텐츠정보테이블및상기단말정보를이용하여단말별콘텐츠정보테이블을생성하는단계 ; 및상기단말별콘텐츠정보테이블을이용하여상기콘텐츠를변환하는단계를포함할수있다. 이때, 상기미디어종속테이블및가중치테이블을정의하는단계는, 파일포맷별미디어종속테이블, 비디오코덱별미디어종속테이블및오디오코덱별미디어종속테이블을포함하는미디어종속테이블을정의하는단계 ; 및비디오코덱별가중치테이블및오디오코덱별가중치테이블을포함하는가중치테이블을정의하는단계를포함할수있다. [0011] [0012] 발명의효과본발명의일측면에따르면, 단말및단말의재생기정보에따라단말에서지원하지않는파일포맷, 비디오코덱및오디오코덱과같은콘텐츠속성을단말에서지원하도록변환하여제공함으로써단말의종류에상관없이멀티미디어콘텐츠서비스를제공할수있는콘텐츠변환장치및방법을제공할수있다. 본발명의일측면에따른콘텐츠변환장치및방법은단말간콘텐츠공유및재생, 이동을원활히하는데활용할수있다. 따라서, IPTV, 인터넷교육, CCTV 보안분야등멀티미디어콘텐츠를이용하는다양한분야에사용하여단말의종류및성능에제한받지않고콘텐츠를효율적으로재생할수있다. [0013] 도면의간단한설명 도 1 은본발명의일실시예에따른콘텐츠변환장치를개략적으로도시한도면이다. 도 2 내지도 4는본발명의일실시예에따른콘텐츠변환장치의테이블정의부에서정의되는미디어종속테이블을개략적으로도시한도면이다. 도 5 및도 6은본발명의일실시예에따른콘텐츠변환장치의테이블정의부에서정의되는가중치테이블을개략적으로도시한도면이다. 도 7 및도 8은본발명의일실시예에따른콘텐츠변환장치의콘텐츠변환부에서생성되는콘텐츠정보테이블을개략적으로도시한도면이다. 도 9는본발명의일실시예에따른콘텐츠변환방법을설명하기위한순서도이다. [0014] 발명을실시하기위한구체적인내용본발명을첨부된도면을참조하여상세히설명하면다음과같다. 여기서, 반복되는설명, 본발명의요지를불필요하게흐릴수있는공지기능, 및구성에대한상세한설명은생략한다. 본발명의실시형태는당업계 - 8 -
에서평균적인지식을가진자에게본발명을보다완전하게설명하기위해서제공되는것이다. 따라서, 도면 에서의요소들의형상및크기등은보다명확한설명을위해과장될수있다. [0015] [0016] [0017] [0018] [0019] [0020] [0021] [0022] [0023] 도 1은본발명의일실시예에따른콘텐츠변환장치를개략적으로도시한도면이다. 도 1을참조하면, 본발명의일실시예에따른콘텐츠변환장치 (100) 는콘텐츠를제공하는서버 (10) 와상기콘텐츠를재생하는단말 (20) 사이에서콘텐츠를변환하는역할을한다. 도 1에서는콘텐츠변환장치가서버 (10) 와단말 (20) 과는별도로구비된것으로도시되었으나, 다른실시예에서, 콘텐츠변환장치는서버 (10) 에포함되는형태로구현될수도있으며, 단말 (20) 에포함되는형태로구현될수도있다. 여기서, 서버 (10) 는콘텐츠를제공할수있는모든형태의서버를포함할수있고, 단말 (20) 은콘텐츠를재생할수있는데스크탑컴퓨터 (desktop computer), 랩탑컴퓨터 (laptop computer), 스마트폰 (smart phone), PMP(Portable Multimedia Player), 휴대용게임기와같은모든형태의단말장치를포함할수있다. 도 1을참조하면, 본발명의일실시예에따른콘텐츠변환장치는인터페이스부 (101), 테이블정의부 (102), 정보관리부 (103), 콘텐츠변환판단부 (104) 및콘텐츠변환부 (105) 를포함하여구성될수있다. 도 1에도시된콘텐츠변환장치는예시적으로도시된것이며, 필요에따라일부구성요소가추가, 삭제또는변경되어구성될수있다. 예를들면, 다른실시예에서, 콘텐츠변환장치는인터페이스부 (101) 를제외하고테이블정의부 (102), 정보관리부 (103), 콘텐츠변환판단부 (104) 및콘텐츠변환부 (105) 를포함하여구성될수있다. 또한, 또다른실시예에서, 콘텐츠변환장치는콘텐츠변환판단부 (104) 를제외하고구성될수있으며, 또다른실시예에서는, 인터페이스부 (101) 및콘텐츠변환판단부 (104) 를모두제외하고구성될수있다. 인터페이스부 (101) 는상기콘텐츠를제공하는서버 (10) 및단말 (20) 간에통신을위한부이다. 서버 (10) 및단말 (20) 간에는인터페이스부 (101) 를통해변환되기전의콘텐츠및변환된콘텐츠를포함하는데이터를주고받을수있다. 테이블정의부 (102) 는미디어종속테이블및가중치테이블을정의한다. 상기미디어종속테이블은미디어의파일포맷 (file format), 비디오코덱 (codec) 및오디오코덱의종속관계에따른테이블로서, 파일포맷별미디어종속테이블, 비디오코덱별미디어종속테이블및오디오포맷별미디어종속테이블을포함할수있다. 상기미디어종속테이블은콘텐츠변환판단부 (104) 에서콘텐츠변환필요여부, 콘텐츠변환지원여부및콘텐츠변환가능여부를판단하는데쓰일수있으며, 콘텐츠변환부 (105) 에서콘텐츠변환에쓰일수있다. 상기가중치테이블은콘텐츠변환부 (105) 가지원하는비디오코덱별또는오디오코덱별특성에따라가중치를부여한테이블로서, 비디오코덱별가중치테이블및오디오코덱별가중치테이블을포함할수있다. 따라서, 테이블정의부 (102) 는파일포맷별미디어종속테이블, 비디오코덱별미디어종속테이블및오디오코덱별미디어종속테이블을포함하는미디어종속테이블을정의하고, 비디오코덱별가중치테이블및오디오코덱별가중치테이블을포함하는가중치테이블을정의할수있다. 상기가중치테이블은콘텐츠변환부 (105) 에서콘텐츠변환에쓰일수있다. 상기 3가지미디어종속테이블및 2가지가중치테이블에대해서는아래에서도면을참조하여상세히후술하도록한다. 정보관리부 (103) 는단말정보및단말 (20) 의재생기정보를단말 (20) 로부터수신하여관리한다. 즉, 정보관리부 (103) 는콘텐츠의변환에필요한단말정보및단말 (20) 의재생기정보를인터페이스부 (101) 를통해수신할수있으며, 수신된단말정보및재생기정보를관리하는역할을한다. 콘텐츠변환판단부 (104) 는콘텐츠변환필요여부, 콘텐츠변환지원여부및콘텐츠변환가능여부를확인한다. 단말 (20) 에서재생될콘텐츠는먼저사용자의입력을받아서버 (10) 에서선택되는데, 콘텐츠변환판단부 (104) 는선택된콘텐츠에대한콘텐츠변환필요여부, 콘텐츠변환지원여부및콘텐츠변환가능여부를확인하게된다. 콘텐츠변환필요여부는상기선택된콘텐츠가단말 (20) 에서지원하지않아서콘텐츠변환이필요한지여부를판단하는것이다. 콘텐츠변환지원여부는상기선택된콘텐츠가변환이필요한경우에도콘텐츠변환기능을지원하는지여부를판단하는것이다. 콘텐츠변환가능여부는상기선택된콘텐츠가콘텐츠변환이필요하고콘텐츠변환을지원하는경우에도상기선택된콘텐츠의속성을추출하여상기선택된콘텐츠가변환가능한지여부를판단하는것이다. 콘텐츠변환판단부 (104) 는테이블정의부 (102) 에서정의된미디어종속테이블을이용하여이러한사항들을확인할수있다. - 9 -
[0024] 콘텐츠변환부 (105) 는상기미디어종속테이블, 상기가중치테이블, 상기단말정보및상기재생기정보를이용하여변환될콘텐츠와관련한콘텐츠정보테이블을생성하고, 변환된콘텐츠를단말 (20) 로송신하기위하여상기콘텐츠정보테이블을이용하여상기콘텐츠를변환한다. 콘텐츠정보테이블은콘텐츠를변환하기위하여콘텐츠에관한정보를포함하는테이블로서, 재생기별콘텐츠정보테이블및단말별콘텐츠정보테이블을포함할수있다. 일실시예에서, 콘텐츠변환부 (105) 는상기미디어종속테이블, 상기가중치테이블및상기재생기정보를이용하여재생기별콘텐츠정보테이블을생성하고, 상기재생기별콘텐츠정보테이블및상기단말정보를이용하여단말별콘텐츠정보테이블을생성하며, 상기단말별콘텐츠정보테이블을이용하여상기콘텐츠를변환할수있다. 상기재생기별콘텐츠정보테이블및상기단말별콘텐츠정보테이블에대해서는아래에서도면을참조하여상세히후술하도록한다. [0025] [0026] 도 2 내지도 4는본발명의일실시예에따른콘텐츠변환장치의테이블정의부에서정의되는미디어종속테이블을개략적으로도시한도면이다. 도 2 내지도 4에도시된미디어종속테이블들은콘텐츠변환판단부에서콘텐츠변환지원여부를판단할때사용될수있다. 도 2 내지도 4에도시된미디어종속테이블은예시적인것이며, 다른실시예에서, 미디어종속테이블은도 2 내지도 4에도시된구성과는상이한구성을포함하여구성될수있음을당업자는인식할것이다. [0027] [0028] 도 2는파일포맷별미디어종속테이블의일예이다. 도 2를참조하면, 파일포맷별미디어종속테이블은각파일포맷의개수만큼 a개의행으로구성된테이블로정의될수있다. 콘텐츠는파일포맷 (201), 비디오코덱 (202), 오디오코덱 (203) 또는이요소들의일부분으로구성될수있으며, 각요소들은서로종속관계를가진다. 따라서도 2에서는우선각파일포맷별로이파일포맷을지원하는비디오코덱 (202) 과오디오코덱 (203) 을테이블로정리하였다. [0029] [0030] [0031] [0032] 도 3은비디오코덱별미디어종속테이블의일예이다. 도 3을참조하면, 콘텐츠변환부에서지원하는각비디오코덱의개수만큼 b개의행으로구성된테이블이생성된다. 콘텐츠가변환가능한지여부를판단하기위해서는콘텐츠변환속성을추출하게되는데, 이때우선파일포맷별미디어종속테이블에따른파일포맷별로비디오코덱과오디오코덱을추출하고, 그다음추출된비디오코덱별특성을추출한후, 상기추출된파일포맷과비디오코덱에적합한오디오코덱및오디오코덱의특성을추출하는과정을통해콘텐츠변환이가능한지여부가결정된다. 도 3와도 4에서각플래그 (flag) 는코덱과의의존성여부를나타내는것으로, 코덱의존성이있는경우에는각플래그관련재생기의지원속성값이입력되어있거나없거나도 3의코덱속성값을사용하고, 각플래그관련재생기의지원속성값이있고코덱의존성이없는경우재생기의지원속성값을사용하고, 각플래그관련하여재생기의지원속성값이없고코덱의존성이없는경우원래콘텐츠값을사용한다. 도 3에도시된비디오포맷별미디어종속테이블은, 비디오코덱 (301, V_codec), 비디오코덱가중치 (302, V_codec_weight), 비디오모드 (303, V_mode), 비디오모드플래그 (304, V_mode_flag), 비디오비트레이트최소값 (305, V_bit_rate_min), 비디오비트레이트최대값 (306, V_bit_rate_max), 비디오비트레이트플래그 (307, V_bit_rate_flag), 비디오모드가변비트레이트 (Variable Bit rate; VBR) 최소값 (308, V_mode_vbr_min), 비디오모드가변비트레이트최대값 (309, V_mode_vbr_max), 비디오모드가변비트레이트플래그 (310, V_mode_vbr_flag), 비디오프레임레이트최소값 (311, V_frame_rate_min), 비디오프레임레이트최대값 (312, V_frame_rate_max), 비디오프레임레이트플래그 (313, V_frame_rate_flag), 비디오해상도 (314, V_resolution), 비디오해상도플래그 (315, V_resolution_flag), 비디오비율 (316, V_aspect) 및비디오비율플래그 (317, V_aspect_flag) 중하나이상을포함하는비디오속성값과, 오디오코덱 (318, A_codec) 및오디오코덱플래그 (319, A_codec_flag) 중하나이상을포함하는오디오속성값, 및파일포맷 (320, File_format) 및파일포맷플래그 (File_format_flag) 중하나이상을포함하는파일포맷속성값을포함할수있다. 도 3에도시된비디오코덱별미디어종속테이블은비디오코덱 (301) 과이비디오코덱에종속적인비디오 - 10 -
특성과오디오코덱을포함한다. 비디오코덱 (301) 은콘텐츠변환부가지원하는비디오코덱을나타낸다. 비디오코덱가중치 (302) 는콘텐츠변환지원비디오코덱이여러개있을경우그중에서가장적합한비디오코덱을선택하기위한것으로비디오코덱별가중치테이블에예시가나타나있다. 비디오모드 (303) 는평균비트레이트 (Average Bit rate, ABR), 고정비트레이트 (Constant Bit Rate, CBR), 2-패스 (Pass), 3-패스등을나타내며, 비디오모드플래그 (304) 는상기비디오모드 (303) 가비디오코덱 (301) 과의존성이있는지여부를나타낸다. 비디오비트레이트최소값 (305) 과비디오비트레이트최대값 (306) 은최소 0kbps에서최대 20,000kbps 의범위를갖는비디오비트레이트를나타내며, 디폴트 (default) 값은 200kbps이다. 비디오비트레이트플래그 (307) 은비디오비트레이트가비디오코덱 (301) 과의존성이있는지여부를나타낸다. 비디오모드가변비트레이트 (Variable Bit Rate, VBR) 최소값 (308) 과비디오모드 VBR 최대값 (309) 은비디오모드중 VBR의값의범위인최소 0% 에서최대 100% 를나타내며, 비디오모드 VBR 플래그 (310) 는비디오모드 VBR이비디오코덱 (301) 과의존성이있는지여부를나타낸다. 비디오프레임레이트최소값 (311) 과비디오프레임레이트최대값 (312) 은 23.976, 24, 25, 29.97, 30 등비디오의초당프레임레이트의최소값과최대값을나타낸다. 비디오프레임레이트플래그 (313) 는비디오프레임레이트가비디오코덱 (301) 과의존성이있는지를나타낸다. 비디오해상도 (314) 는 320*240, 640*480 등의해상도를나타내며, 비디오해상도플래그 (315) 는비디오해상도가비디오코덱 (301) 과의존성이있는지여부를나타낸다. 비디오비율 (316) 은 4:3, 16:9, 2.21:1 등의화면에표시되는비디오비율값을나타내며, 비디오비율플래그 (317) 는비디오비율이비디오코덱 (301) 과의존성이있는지를나타낸다. 오디오코덱 (318) 은해당비디오코덱 (301) 을지원하는오디오코덱의리스트를나타내며, 오디오코덱플래그는이오디오코덱이비디오코덱 (301) 과의존성이있는지여부를나타낸다. 파일포맷 (320) 은해당비디오코덱 (301) 을지원하는파일포맷의리스트를나타내며, 파일포맷플래그 (321, File_format_flag) 는파일포맷이비디오코덱 (301) 과의존성이있는지를나타낸다. [0033] [0034] [0035] [0036] 도 4는오디오코덱별미디어종속테이블의일예이다. 도 4를참조하면, 오디오코덱별미디어종속테이블은콘텐츠변환부가지원하는오디오코덱의개수만큼 c 개의행으로구성된테이블이생성된다. 상기도 3과달리도 4에는의존성을나타내는값이없는데, 이는오디오의각특성은모두오디오코덱과의존성이있다고정의하기때문이다. 도 4에도시된오디오코덱별미디어종속테이블은, 오디오코덱 (401, A_codec), 오디오코덱가중치 (402, A_codec_weight), 오디오샘플레이트최소값 (403, A_sample_rate_min), 오디오샘플레이트최대값 (404, A_sample_rate_max), 오디오비트레이트최소값 (405, A_bit_rate_min), 오디오비트레이트최대값 (406, A_bit_rate_max) 및오디오채널수 (407, A_channels) 중하나이상을포함하는오디오속성값, 파일포맷 (408, File_format) 및비디오코덱 (409, V_codec) 을포함할수있다. 오디오코덱 (401) 은콘텐츠변환부가지원하는오디오코덱을나타낸다. 오디오코덱의가중치 (402) 는콘텐츠변환을지원하는오디오코덱이여러개있을경우그중에서가장적합한오디오코덱을선택하기위한것으로오디오코덱별가중치테이블에예시가나타나있다. 오디오샘플레이트최소값 (403) 과오디오샘플레이트최대값 (404) 은 0kHz에서최대 48,000kHz의범위를갖는값을각각나타낸다. 오디오비트레이트최소값 (405) 과최대값 (406) 은각각최소 0kbps에서최대 1,024kbps인값을나타낸다. 오디오채널수 (407, A_channels) 는오디오채널의개수를나타낸다. 파일포맷 (408, File_format) 은이오디오코덱을지원하는파일포맷의리스트를나타내며, 비디오코덱 (409, V_codec) 은이오디오코덱을지원하는비디오코덱의리스트를나타낸다. [0037] [0038] 도 5 및도 6은본발명의일실시예에따른콘텐츠변환장치의테이블정의부에서정의되는가중치테이블을개략적으로도시한도면이다. 도 5 및도 6에도시된가중치테이블들은콘텐츠변환부에서콘텐츠를변환할때사용될수있다. 도 5 및도 6에도시된가중치테이블은예시적인것이며, 다른실시예에서, 가중치테이블은도 5 및도 6에도시된구성과는상이한구성을포함하여구성될수있음을당업자는인식할것이다. [0039] [0040] 도 5 는비디오코덱별가중치테이블의일예이다. 도 5에도시된비디오코덱별가중치테이블은, 무료여부 (511), 무료여부에대한가중치 (512), 파일포맷 - 11 -
지원개수 (521) 및파일포맷지원개수에대한가중치 (522) 중하나이상을포함할수있다. [0041] 도 5를참조하면, 10개의비디오코덱 (500) 에대해무료여부 (511), 무료여부에대한가중치 (512), 파일포맷지원개수 (521), 파일포맷지원개수에대한가중치 (522) 등총 4 가지항목에점수를매겨총점 (530) 을합산한다음코덱별순위 (540) 를나타내었다. 이때, 비디오코덱 (500) 의수는예시적인것이며, 도 5에도시된예에한정되지아니한다. 또한, 여기서, 무료여부 (511) 및무료여부에대한가중치 (512) 는무료정보 (510) 이며, 파일포맷지원개수 (521) 및파일포맷지원개수에대한가중치 (522) 는파일포맷호환성정보 (520) 이다. 여기서파일포맷지원개수 (521) 에사용된파일포맷은 QuickTime, AVI, Matroska, MP4, MXF 및 OGM의총 6종으로이파일포맷을모두지원하면가중치 (522) 가 6점이되는데, 이러한파일포맷은필요에따라다시정의하여사용할수있다. 여기서, 무료여부에대한가중치 (512) 와파일포맷지원개수에대한가중치 (522) 는각각 3점과 1점으로했으나필요에따라이값을조정하여순위를변경시킬수있다. [0042] [0043] 도 6은오디오코덱별가중치테이블의일예이다. 도 6을참조하면, 6개의오디오코덱 (600) 에대해도 5의비디오코덱별가중치테이블과마찬가지로무료여부 (611), 무료여부에대한가중치 (612), 파일포맷지원개수 (621), 파일포맷지원개수에대한가중치 (622) 등총 4 가지항목에점수를매겨총점 (630) 을합산한다음코덱별순위 (640) 를나타내었다. 또한, 여기서, 무료여부 (611) 및무료여부에대한가중치 (612) 는무료정보 (610) 이며, 파일포맷지원개수 (621) 및파일포맷지원개수에대한가중치 (622) 는파일포맷호환성정보 (620) 이다. 이때, 오디오코덱 (600) 의수는예시적인것이며, 도 6에도시된예에한정되지아니한다. 여기서파일포맷지원개수 (621) 에사용된파일포맷은 QuickTime, AVI, Matroska, MP4 및 MXF의총 5종으로이파일포맷을모두지원하면가중치 (622) 가 5점이되는데, 이러한파일포맷은필요에따라다시정의하여사용할수있다. 여기서, 도 5의비디오코덱별가중치테이블과마찬가지로무료여부에대한가중치 (612) 와파일포맷지원개수에대한가중치 (622) 는각각 3점과 1점으로했으나필요에따라이값을조정하여순위를변경시킬수있다. [0044] [0045] 도 7 및도 8은본발명의일실시예에따른콘텐츠변환장치의콘텐츠변환부에서생성되는콘텐츠정보테이블을개략적으로도시한도면이다. 도 7 및도 8에도시된콘텐츠정보테이블들은콘텐츠변환부에서콘텐츠를변환할때사용될수있다. 도 7 및도 8에도시된콘텐츠정보테이블은예시적인것이며, 다른실시예에서, 콘텐츠정보테이블은도 7 및도 8에도시된구성과는상이한구성을포함하여구성될수있음을당업자는인식할것이다. [0046] [0047] [0048] 도 7은재생기별콘텐츠정보테이블의일예이다. 도 7에도시된재생기별콘텐츠정보테이블은서비스프로파일 (profile), 서비스비교규칙, 재생기, 재생기비교규칙및단말프로파일중하나이상의등록, 수정, 또는삭제에대응하여주기적으로등록, 수정, 또는삭제될수있다. 도 7을참조하면, 재생기별콘텐츠정보테이블은, 비교결과키 (701, Diff_key), 서비스키 (702, Service_key), 재생기키 (703, Player_key) 및파일포맷 (704, File_format) 중하나이상을포함하는정보와, 비디오코덱 (705, V_codec), 비디오코덱가중치 (706, V_codec_weight), 비디오모드 (707, V_mode), 비디오모드플래그 (708, V_mode_flag), 비디오비트레이트최소값 (709, V_bit_rate_min), 비디오비트레이트최대값 (710, V_bit_rate_max), 비디오비트레이트플래그 (711, V_bit_rate_flag), 비디오모드가변비트레이트최소값 (712, V_mode_vbr_min), 비디오모드가변비트레이트최대값 (713, V_mode_vbr_max), 비디오모드가변비트레이트플래그 (714, V_mode_vbr_flag), 비디오프레임레이트최소값 (715, V_frame_rate_min), 비디오프레임레이트최대값 (716, V_frame_rate_max), 비디오프레임레이트플래그 (717, V_frame_rate_flag), 비디오해상도 (718, V_resolution), 비디오해상도플래그 (719, V_resolution_flag), 비디오비율 (720, V_aspect) 및비디오비율플래그 (721, V_aspect_flag) 중하나이상을포함하는비디오속성값, 및오디오코덱 (722, A_codec), 오디오코덱가중치 (723, A_codec_weight), 오디오샘플레이트최소값 (724, A_sample_rate_min), 오디오샘플레이트최대값 (725, A_sample_rate_max), 오디오비트레이트최소값 (726, A_bit_rate_min), 오디오비트레이트최대값 (727, A_bit_rate_max) 및오디오 - 12 -
채널 (728, A_channels) 중하나이상을포함하는오디오속성값을포함할수있다. [0049] 비교결과키 (701) 는콘텐츠를재생하기위해재생기에서지원하는사항과콘텐츠서비스에서요구하는사항즉, 상기콘텐츠를제공하는서버에서요구하는사항간의차이를파일로저장하고이를접근하기위한값이다. 이파일은콘텐츠변환지원여부를결정할때사용될수있다. 서비스키 (702) 는사용자가선택한콘텐츠서비스의키를나타내고, 재생기키 (703) 는각재생기를구분하기위한값을나타낸다. 파일포맷 (704) 은콘텐츠의파일포맷을나타내는것으로, 원래의파일포맷을재생기에서지원하는파일포맷으로변환하기위한정보이다. 비디오코덱 (705) 은상기파일포맷 (704) 을지원하는비디오코덱을나타내며, 원래의파일포맷을재생기에서지원하는비디오코덱으로변환하기위한정보이다. 지원하는파일포맷이여러개인경우각파일포맷별로이를지원하는비디오코덱과오디오코덱의배합의개수만큼도 7의테이블이생성된다. 이후비디오코덱관련정보인비디오코덱가중치 (706) 내지비디오비율플래그 (721) 는상기비디오코덱별종속테이블과재생기에서지원하는비디오코덱정보를비교하여교집합으로겹쳐지는값을나타내거나, 겹쳐지는값이없을경우재생기에서지원하는값을사용한다. 재생기에서지원하는값이정의되지않은경우는비디오코덱에의존도가있는경우비디오코덱값을사용하고, 의존도가없는경우원래콘텐츠의속성값이사용되도록한다. 오디오코덱 (722) 내지오디오채널 (728) 값도역시비디오코덱과유사한방식으로값이설정된다. 상기오디오코덱별미디어종속테이블과재생기에서지원하는오디오코덱정보를비교하여교집합으로겹쳐지는값이있으면이값을설정하고, 겹쳐지는값이없을경우재생기에서지원하는값을사용한다. 재생기에서지원하는값이정의되지않은경우는오디오코덱별미디어종속테이블에정의된오디오코덱값을사용한다. 여기서, 비디오코덱의속성과오디오코덱의속성의차이는비디오코덱은속성값이코덱과의존성이없는경우도있으나, 오디오코덱은속성값이오디오코덱과모두의존성이있다고정의한점이다. [0050] [0051] [0052] [0053] 도 8은단말별콘텐츠정보테이블의일예이다. 도 8에도시된단말별콘텐츠정보테이블은도 7의테이블을참조하여콘텐츠변환시에입력되는파라미터로사용되는값을저장하며, 여러값들및범위에속한값들중에서하나를선택하는데, 이때비디오코덱별가중치테이블및오디오코덱별가중치테이블의가중치와단말정보를고려한다. 도 8을참조하면, 단말별콘텐츠정보테이블은, 비교결과키 (801, Diff_key), 서비스키 (802, Service_key), 재생기키 (803, Player_key), 단말고유키 (804, Dev_unique_id) 및파일포맷 (805, File_format) 중하나이상을포함하는정보와, 비디오코덱 (806, V_codec), 비디오모드 (807, V_mode), 비디오비트레이트 (808, V_bit_rate), 비디오모드 VBR(809, V_mode_vbr), 비디오프레임레이트 (810, V_frame_rate), 비디오해상도 (811, V_resolution) 및비디오비율 (812, V_aspect) 중하나이상을포함하는비디오속성값, 및오디오코덱 (813, A_codec), 오디오샘플레이트 (814, A_sample_rate), 오디오비트레이트 (815, A_bit_rate) 및오디오채널 (816, A_channels) 중하나이상을포함하는오디오속성값을포함할수있다. 코덱의비교결과키 (801), 서비스키 (802), 재생기키 (803) 는도 7과같은의미이고, 도 7에서새로추가된단말고유키 (804) 는단말을유일하게식별하는값을나타내고, 파일포맷 (805) 은콘텐츠변환될파일포맷을나타낸다. 비디오코덱 (806) 은파일포맷 (805) 을지원하는여러비디오코덱중단말의특성에가장적합한코덱을비디오코덱별가중치테이블의비디오코덱가중치를고려하여선택한값이다. 비디오모드 (807), 비디오해상도 (811), 비디오비율 (812) 값은도 7의각대응하는값을사용하되값이여러개정의된경우디폴트값이있으면그값을사용하고, 없으면가장처음나온값을사용한다. 비디오비트레이트 (808), 비디오모드 VBR(809), 비디오프레임레이트 (810) 는도 7의각대응하는값이단일값으로지정되어있으면그값을사용하고, 도 7의각대응하는값이범위로지정되어있으면그범위의중간값을사용한다. 오디오코덱 (813) 은오디오코덱별가중치테이블의오디오코덱가중치에따라선택된값을사용한다. 오디오샘플레이트 (814), 오디오비트레이트 (815) 값은도 7의각대응하는값이단일값으로지정되어있으면그값을사용하고, 도 7의각대응하는값이범위로지정되어있으면그범위의중간값을사용한다. 오디오채널 (816) 값은값이지정되어있으면그값을사용하고, 지정되어있지않으면디폴트값을사용한다. [0054] 도 9 는본발명의일실시예에따른콘텐츠변환방법을설명하기위한순서도이다. - 13 -
[0055] [0056] 도 9에도시된콘텐츠변환방법은일실시예로서도시된것이다. 따라서, 도 9에도시된각단계는필수적인단계는아니며, 필요에따라일부단계가변경, 추가또는삭제될수있다. 도 9를참조하면, 본발명의일실시예에따른콘텐츠변환방법은먼저미디어종속테이블및가중치테이블을정의한다 (S901). 여기서, 상기미디어종속테이블은도 2 내지도 4에도시된파일포맷별미디어종속테이블, 비디오코덱별미디어종속테이블및오디오코덱별미디어종속테이블일수있다. 또한, 상기가중치테이블은도 5 및도 6에도시된비디오코덱별가중치테이블및오디오코덱별가중치테이블일수있다. 이후에, 콘텐츠변환장치는단말정보및단말의재생기정보를상기단말로부터수신하여관리한다 (S902). 그다음, 상기콘텐츠를제공하는서버에서사용자의입력을받아상기콘텐츠를선택하면 (S903), 선택된콘텐츠에대해콘텐츠변환이필요한지여부를확인하고 (S904), 콘텐츠변환이필요한경우, 이전에생성된단말별콘텐츠정보테이블에상기단말에대한정보가존재하는지여부를확인한다 (S905). 상기정보가존재하는경우, 상기단말은이미접속한적이있는단말이므로, 상기서버로부터상기콘텐츠를수신하고 (S910), 상기이전에생성된단말별콘텐츠정보테이블을이용하여콘텐츠변환을수행한다 (S911). 그리고나서, 다음단계 (S912 및 S913) 를진행한다. 단계 (S905) 에서상기정보가존재하지않는경우, 상기단말의재생기가상기선택된콘텐츠의콘텐츠변환을지원하는지여부를확인한다 (S906). 콘텐츠변환이지원되면, 콘텐츠를변환하기위한속성을추출하고, 재생기별콘텐츠정보테이블을생성한다 (S907). 여기서, 상기재생기별콘텐츠정보테이블은도 7에도시된재생기별콘텐츠정보테이블일수있다. 그리고나서상기선택된콘텐츠의속성을이용하여콘텐츠변환이가능한지여부를확인한다 (S908). 콘텐츠변환이가능하면, 단말별콘텐츠정보테이블을생성하고 (S909) 상기서버로부터콘텐츠를수신한다 (S910). 여기서, 상기단말별콘텐츠정보테이블은도 8에도시된단말별콘텐츠정보테이블일수있다. 단계 (S910) 에서수신된콘텐츠를상기단말별콘텐츠정보테이블을이용하여단말의재생기에맞게콘텐츠변환을수행하고 (S911), 변환된콘텐츠를단말로송신한다 (S912). 그런다음, 콘텐츠재생종료여부를확인하여 (S913), 콘텐츠변환이계속필요하면, 서버로부터콘텐츠를수신 (S910) 하고, 단말과의연결종료또는콘텐츠의종료등으로인해콘텐츠재생이종료되면 (S913), 실행을종료한다. 또한, 단계 (S904) 에서콘텐츠변환이필요하지않는경우에상기단말과상기서버간에직접연결이설정되도록하고 (S914), 실행을종료한다. 한편, 단계 (S906) 에서선택된콘텐츠가콘텐츠변환이필요하지만콘텐츠변환기능을지원하지않으면실행을종료하게되고, 단계 (S908) 에서콘텐츠변환이불가능하면실행을종료하게된다. [0057] 전술한콘텐츠변환방법은도면에제시된순서도를참조로하여설명되었다. 간단히설명하기위하여상기방법은일련의블록들로도시되고설명되었으나, 본발명은상기블록들의순서에한정되지않고, 몇몇블록들은다른블록들과본명세서에서도시되고기술된것과상이한순서로또는동시에일어날수도있으며, 동일한또는유사한결과를달성하는다양한다른분기, 흐름경로, 및블록의순서들이구현될수있다. 또한, 본명세서에서기술되는방법의구현을위하여도시된모든블록들이요구되지않을수도있다. [0058] 이상본발명의특정실시예를도시하고설명하였으나, 본발명의기술사상은첨부된도면과상기한설명내용에한정하지않으며본발명의사상을벗어나지않는범위내에서다양한형태의변형이가능함은이분야의통상의지식을가진자에게는자명한사실이며, 이러한형태의변형은, 본발명의정신에위배되지않는범위내에서본발명의특허청구범위에속한다고볼것이다. - 14 -
도면 도면 1 도면 2-15 -
도면 3-16 -
도면 4 도면 5-17 -
도면 6 도면 7-18 -
도면 8-19 -
도면 9-20 -