KMPLAYER 스킨제작가이드 2008.7 www.kmplayer.com
A. 파일형식 : KMP 스킨의기본확장자는.ksf 입니다. 압축프로그램을이용하여스킨폴더채 ZIP 압축을한다음, 확장자를임의로.ksf 로변경하면됩니다. 다음그림과같이 KMP 디렉터리내 skins 폴더에저장되어있을경우에만, 프로그램시작시에스킨으로서파일을인식할수있습니다. 예외로, 다음과같이.ksf 가아닌하위구조의폴더라도스킨형식을갖추고있을경우에정상적으로작동합니다. TIP: 최종배포용이아니라스킨을제작하기위해서라면위그림처럼폴더상태에서작업하는것이편리합니다. 매번압축하고확장자를바꾸지않아도되기때문에시간이단축됩니다.
B. 스킨의기본파일구조 Skins 폴더내에기본으로내장되어있는 Default.ksf 파일을이용하여스킨의기본구조를확인해보겠습니다. 우선.ksf 확장자를.zip 확장자로수정합니다. 그리고압축프로그램을이용하여압축해제하면다음과같이압축이풀리면서폴더형태로나타납니다. 스킨은다음과같은구성요소를포함합니다. 1. 폴더 : 하위폴더를이용하여파일을정리할수있습니다. 2. 그림파일 : 지원하는확장자는 BMP, PNG 입니다. ( 투명값을가지는알파블렌딩지원 ) 3. ini파일 : 스킨의구조를정의하는가장중요한파일입니다. 4. cur파일 : 커서파일입니다. 특정한부분에마우스를올려놨을때마우스모양을변하게할수있습니다.
C. 스킨정의파일 스킨내에스킨의형태에대해실질적으로정의를내리는파일입니다. 기본적으로편집및저장시에는메모장을이용하면됩니다. Skin.ini 스킨파일내에반드시있어야되는메인스킨파일입니다. KMP 실행시에가장먼저찾는파일입니다. PlayList.ini 재생목록리스트의형태에대해정의하는스킨파일입니다. Control.ini 컨트롤박스의형태에대해정의하는스킨파일입니다. AudioSkin.ini 스킨내에위의파일이있을경우, 영상정보가없는음성파일 (MP3등) 을실행하면 KMP는자동적으로위파일의스킨정의를로딩하게됩니다. 이파일은없어도정상작동이가능합니다. 다만전문적인음악재생프로그램의느낌을위해서라면오디오모드에대한정의가있으면유용할것입니다. DVDSkin.ini AudioSkin.ini과마찬가지로이파일은 DVD 재생시에만동작하는스킨파일입니다. DVD 타이틀의경우루트또는타이틀메뉴등을독자적으로가지게되는데이런요소들을접목시킬경우유용합니다. ColorThema.ini 기본컬러테마를스킨제작자가정할수있습니다. RGB 방식또는 YUV방식으로지정할수있습니다.
D. ini 파일에적용되는각종속성형식 기본적으로스킨은다음과같은형식을취하고있습니다. [ 사용자가정의한임의의이름 ] 속성1= 사용자가정의한값속성2= 사용자가정의한값 ; 속성3= 사용자가정의한값 앞에 ; 가있으면주석처리됩니다. 위에서 [ ] 로둘러쌓인이름은스킨제작자가알아볼수있게끔임의로정하시면됩니다. 다만같은이름을가진것이같은 ini 파일내에있어서는안됩니다. 임의로메모가필요한경우가있습니다. 이런경우행의앞에 ; 를넣으면, 그행은주석처리됩니다. 1. 스킨의기본정의 type=info 인경우의속성정의 위그림과같이 type=info 인경우에안에들어갈수있는명령들은다음과같습니다. 속성 설명 type 여기서는 info인경우만설명합니다. minwidth ( 중요 ) 스킨의최소가로크기를지정합니다. KMP를처음시작할때또는정지버튼을눌렀을경우에돌아가는크기이기도합니다. 만약최소크기를지정하지않은경우다음과같이문제가발생할수있으므로반드시알맞은크기를지정하는것이좋습니다.
정상적으로최소크기가적용되면위그림처럼정상적으로보이지만, 최소크기를지정하지않은경우아래그림처럼각종컨트롤들이겹쳐서나타나게됩니다. 참고로, 최소크기를지정하지않은경우가로사이즈는기본적으로 200px의값을가지게됩니다. 그리고지정할수있는범위는 0~400의값이며, 400이상의값을주더라도그값은무시됩니다. minheight Ex. minwidth=320 ( 숫자의단위는픽셀 (px) 이며기본적으로대소문자구분은없습니다.) 스킨의최소세로크기를지정합니다. 지정하지않을경우의기본값은 0입니다. 지정범위는위와마찬가지로 0~400이며특별한경우를제외하고는이값은별도지정을하지않는편입니다. skinwidth Ex. minheight=320 위와비슷한명령입니다. 이것은 KMP가처음실행되었을때의기본가로크기를지정합니다. 최초실행이후에는 minwidth와 minheight의값에영향을받게되고크기는자유자재로조정가능합니다. skinheight Ex. skinwidth=400 KMP가처음실행되었을때의기본세로크기를지정합니다. skinwidth와마찬가지로처음실행시에만유효한기능입니다.
이값이생략된경우, 최소크기값에의해나타나게됩니다. title Ex. skinheight=400 나중에다시설명하겠지만, lable를이용하여 text를출력할수있는데, 미디어파일을실행하지않은기본상태에서보여주려는텍스트를이곳에서지정할수있습니다. 생략하는경우공백이기본값입니다. backbitmap Ex. title= KㆍMㆍPLAYER ( 위와같이입력하였다면 KMP의제목표시줄에똑같이나타납니다.) KMP의최초실행시이미지를지정합니다 Ex. backbitmap=backgrnd.bmp ( 이미지가다른폴더에있는경우 폴더명 / 이미지명 ) backstretch 값이 1인경우 backbitmap에서지정된이미지의크기를늘리거나줄입니다. 값이 1로적용된경우아래그림처럼이미지의크기가꽉찬상태가됩니다. Ex. backstretch=1 이미지를늘릴경우 backstretch=0 이미지크기를고정할경우 backcolor BackStretch=0 인경우배경이미지외부분의색상을정하는옵션입니다. 아래그림을보면이미지의크기는원본그대로를유지하고나머지부분이검정색상으로채워져있음을알수있습니다. 색상은 RGB값을 16진수로표기합니다. 각종이미지편집프로그램등을보게되면아래그림과같이 6자리의숫자가있습니다. (Hex코드라하여웹상에서자주사용됨 )
단일반적인 Hex코드와는순서에서차이가있습니다. 예를들어아래와같이 #3399CC인컬러값을 KMP에적용할때에는 $CC9933을적용하여야됩니다. Ex. backcolor=$000000 배경색이블랙인경우 backcolor=$ffffff 배경색이화이트인경우 useinactivemode 윈도우상에서 KMP가선택되지않았을때, 비활성모드를사용할지선택하는옵션입니다. 단이것은이미지도별도로작업되어져야됩니다. skinroundrect ( 중요 ) Ex. UseInactiveMode=1 비활성모드사용 UseInactiveMode=0 사용하지않음 KMP 의네모서리를둥글게처리합니다. 주의할점은, 위명령외에별도로단색상을지정하여그색상만투명처리하는방법 ( 패널에별도적용되는 usingtransrgn 옵션 ) 이있는데, 동시에사용할수없습니다. copyright Ex. skinroundrect=10 저작권을표시합니다. 이값은스킨에특별한영향을미치는옵션이아니므로자유롭게입력가능합니다. Ex. copyright= 임의의값 copyright=www.kmplayer.com 전체예시
[info] ----------------------------- [ ] 안의값은중복되지않게임의로정할수있음 type=info ------------------------ 현재색션이 info임을정의함 skinwidth=530 ------------------ KMP를처음실행했을때의가로크기가 530px임 skinheight=150 ----------------- KMP를처음실행했을때의세로크기가 150px임 minwidth=320 ------------------ KMP의최소가로크기가 320px임 title=kㆍmㆍplayer ------------ KMP의최초실행시타이틀에표시되는문구 backstretch=0 ------------------ backbitmap에서지정한이미지를늘리지않음 ( 꽉차게늘릴경우 1의값을준다 ) backcolor=$000000 ------------- backbitmap에서지정한이미지의외부분의색상을정의함 backbitmap=backgrnd.bmp --- 최초에보여지는배경이미지 ;useinactivemode=1 ------------ 비활성모드의사용유무, 단 ; 이붙었으므로주석처리되어기본값이적용됨 skinroundrect=3 --------------- 3px을지름값으로하여네모서리를투명처리함 copyright= www.kmplayer.com -- 저작권표시 위의여러속성값들의순서는바뀌어도크게상관없습니다. 2. 패널의정의 type=panel 인경우의속성정의 KMP의가장바탕이되는부분입니다. 각종버튼들은패널의위에위치하기때문에패널은필수라고볼수있습니다. 쉽게설명해서그림을그리기전도화지와같은역할을합니다. 속성 type align ( 중요 ) 설명 panel KMP는 align값에의해패널의위치를결정합니다. 동영상이보이는부분을가운데기준으로하여위는 top, 왼쪽은 left, 오른쪽은 right, 아래부분은 bottom이됩니다. 동영상이보여지는부분 ( 처음실행시배경이미지가보이는부분 ) 을기준으로아래에위치하게하려면 align=bottom 으로정의하면됩니다.
width Ex. align=top align=left align=right align=bottom 패널의가로크기를지정합니다. 단 top패널과 bottom패널과같이가로로늘리기가되는패널에는크게의미가없으므로생략해도무방합니다. height Ex. Width= 숫자 (px) 패널의세로크기를지정합니다. 단 left패널과 right패널과같이세로늘리기가되는패널에는크게의미가없으므로생략해도무방합니다. image Ex. height= 숫자 (px) 실제들어갈이미지파일명을표시합니다. 하위폴더내에있을경우 / 를사용하여하위폴더를표시할수있습니다. margin1 margin2 ( 중요 ) Ex. image=leftborder.bmp image=panel/ieftborder.bmp 1은좌측의마진값, 2는우측의마진값입니다. 화면크기를늘릴때, 이마진값만큼제외한나머지부분을자동으로반복해서표시하게됩니다. 사용자마다모니터의크기가틀리고, 가장적은이미지의크기로효율적으로사용하려면마진값을잘이용하여야됩니다. 즉위의그림이 bottom 패널이라고가정할때, margin1,2 값을정해주게되면그부분은고정이되고나머지부분이반복되어표시됩니다. 위그림을보면마진값내에텍스트도포함되어있는데이것은위치가고정되어서표시될필요가있습니다.
margin값은세로값이고정인 top, bottom 패널에서는좌우로늘려질때의미가있고, 반대로가로값이고정인 left, right 패널에서는세로로늘릴경우에만해당됩니다. usingtransrgn transx transy 이것은패널의한부분을투명하게처리하기위한옵션입니다. 위에서도밝혔듯이이옵션은 type=info에서 skinroundrect 옵션과중복되게사용하지마십시오. 테두리가복잡한경우에도이옵션을활용하면외곽투명처리가가능합니다. Ex. UsingTransRgn=1 TransX=0 TransY=0 x,y 좌표가 0,0 인부분의색상값을투명처리합니다. 최상단좌측의좌표값이 0,0 입니다. 전체예시 [LeftPanel] type=panel align=left ------------------------ 동영상이표시되는부분의좌측에위치하는패널임 width=5 -------------------------- 세로방향으로만늘어나는패널이기때문에가로사이즈만정해줌 image=leftborder.bmp --------- 이미지의파일명 margin1=0 ----------------------- 상단에서고정으로보여주는부분없이전체가반복됨 margin2=0 ----------------------- 하단에서고정으로보여주는부분없이전체가반복됨 [RightPanel] type=panel align=right ----------------------- 동영상이표시되는부분의우측에위치하는패널임 width=5 image=rightborder.bmp margin1=0 margin2=0 [TopPanel] type=panel align=top ------------------------ 동영상이표시되는부분의상단에위치하는패널임 height=22 ----------------------- 가로방향으로만늘어나는패널이기때문에세로사이즈만정해줌 image=toppanel.bmp margin1=5 ----------------------- 좌측마진값이 5이며, 늘리기시에이부분을제외한부분이반복됨을의미 margin2=5 ----------------------- 우측마진값이 5이며, 늘리기시에이부분을제외한부분이반복됨을의미 [BottomPanel] type=panel align=bottom height=77
image=bottompanel2.bmp margin1=110 margin2=110 4가지의모든방향에대한패널정의를하였습니다. 다만구조상 4방향중에몇방향은임의로생략이가능합니다. 예를들어 shade 모드에서좌, 우, 하단 ( 또는상단 ) 만을사용하는경우가있습니다. 3. 기타이미지정의 type=static 인경우의속성정의 단순히보여주는역할을합니다. 대신에알파블렌딩이적용되어반투명효과를낼수있으며, command 기능과결합할경우보다다양한효과를줄수있습니다. 속성 type parent 설명 static 부모속성을지정합니다. 패널을제외한모든컨트롤은자신이위치할패널을지정하여야됩니다. Ex. parent=bottompanel ( 위와같이입력하면 bottompanel에 static 컨트롤이위치하게됩니다.) transparent 투명도를조정할수있습니다. 값이 0 일때완전불투명 값이 1일때 (0,0) 좌표에있는컬러를완전투명처리 (0,0) 의색상이핑크색인데이색상만을완전투명처리하고나머지색상은불투명처리합니다.)
값이 1000일때알파블렌딩을지원하여반투명처리가가능 (0,0) 의색상은그대로출력하고그외의반투명값을인식하여투명처리하게됩니다. 단, png파일이나 32bit bmp파일에서만이기능이지원될수있습니다. image width Ex, transparent=0 transparent=1 (0과 1000이아닌숫자 ) transparent=1000 실제들어갈이미지파일명을표시합니다. 하위폴더내에있을경우 / 를사용하여하위폴더를표시할수있습니다. 이미지의가로크기를지정합니다. 절대값으로지정할수도있으나크기가상대적으로늘어나야되는경우음수를사용하여표시할수도있습니다. 대신 margin1,2 값을정해주어반복표시될수있게해줘야됩니다. Ex. Width=200 Width=-20 우측에여백을 20을띄우고나머지는늘려서채운다는의미입니다. 다음그림을보면의미하는값이어떤지알수있습니다. 위치의기준이되는것은이미지의최상단좌측이되며, 음수로입력할때도이기준은변하지않습니다. 반면이미지의크기를지정할경우의음수는반대쪽여백만을생각하면됩니다.
height 이미지의세로크기를지정합니다. 이속성도 width와같은방법으로사용됩니다. top 상단기준으로세로좌표값을지정합니다. 이속성도음수의사용이가능한데, 음수를사용할경우상단이아닌하단을기준으로세로좌표값을지정하게됩니다. left 좌측을기준으로가로좌표값을지정합니다. 이속성도 top 속성과같이음수사용이가능합니다. horicenter 이값이 1인경우부모패널의한가운데를기준으로이미지가위치하게됩니다. 위의가로값을지정하는 top 속성과는같이사용되지않습니다. horioffset Ex. horicenter=1 horicenter 속성이활성화되어있는경우, 이미지의위치를지정합니다. 값이양수인경우가운데를기준으로오른쪽에이미지가위치하고, 값이음수인경우가운데를기준으로왼쪽에이미지가위치하게됩니다. margin1 margin2 Ex. horioffset=-20 가운데기준으로좌측 20픽셀부분에위치하라는의미입니다. 이미지의크기를늘려서사용할경우반복되지않는부분을지정할때사용합니다. 1이좌측, 2가우측마진값입니다. ( 패널부분에서설명하였으므로여기서는자세한설명을생략합니다.) command 버튼컨트롤에서주로사용되는속성입니다만 static 컨트롤에서도사용이가능합니다. 예를들어 pause 또는 play 상태에서만이미지가보이도록하고싶다면이명령을이용하면됩니다. 이명령을이용하면 backlight 효과등과같이다양한효과를줄수있습니다. Ex. Command=PlayPlayPauseCmd 위의경우일시정지상태에서만이미지가보여집니다. 전체예시 [FullsizeTop] type=static ----------------------------------- static 컨트롤임을정의 parent=toppanel ---------------------------- toppanel이라는이름의패널위에위치함. Transparent=1000 --------------------------- 알파블렌딩을지원. 즉반투명상태를표시할수있음 image=toppanel_w.png width=-0 -------------------------------------- 우측에도여백이없이꽉차게넣는다는의미입니다. height=17 left=0 top=0 Command=ScreenRestoreSize -------------- 전체화면상태에서이컨트롤이나타남을의미합니다. margin1=164 margin2=164
4. 버튼컨트롤정의 type=button 인경우에사용되는각종속성 속성 type parent 설명 button 부모속성을지정합니다. 패널을제외한모든컨트롤은자신이위치할패널을지정하여야됩니다. Ex. parent=bottompanel ( 위와같이입력하면 bottompanel에버튼컨트롤이위치하게됩니다.) transparent 투명도를조정할수있습니다. static 에서투명도에관한설명을하였으므로여기서는생략합니다. Ex, transparent=0 transparent=1 (0과 1000이아닌숫자 ) transparent=1000 top 부모패널을기준으로하여버튼이위치하게되는가로, 세로좌표값입니다. left 이것은위에서이미설명하였으므로생략합니다. horicenter horioffset 가로위치를지정함에있어좌측이기준이아닌, 한가운데가기준이되게끔할때의옵션입니다. 자세한것은위에서설명하였으므로생략합니다. width 버튼의가로, 세로크기를지정합니다. 다만버튼은 4가지동작을하는이미지가모여있기때문에, 가로사이즈의경우는 height 이미지크기의 4분의 1 값이됩니다. 즉 40*10픽셀을가지는이미지가있다면실제버튼의크기는 10*10픽셀이됩니다. image 실제들어갈이미지파일명을표시합니다. 하위폴더내에있을경우 / 를사용하여하위폴더를표시할수있습니다. 위그림과같이 4개의이미지가가로로붙어있습니다. 처음은평상시모습이고두번째는윈도우의포커스가다른곳에있는경우보여지는모습입니다. 세번째는마우스가버튼위에올려졌을때, 네번째는버튼을클릭했을때의모습니다. downoffsetx downoffsety 만약위와같이구분을굳이두지않아도될경우에는같은이미지를 4번반복해서붙이면됩니다. 버튼을눌렀을때버튼이미지의위치가바뀌게끔하여버튼이눌린것처럼보이게하는옵션입니다. 보통각각 1정도값을주게되는데이경우우측하단으로 1픽셀씩이동하게됩니다. 단버튼의 4번째그림에서클릭한효과를다르게줄경우에는이옵션을사용하지않아도상관없습니다.
Ex. downoffsetx= 우측으로이동할픽셀값 downoffsety= 하단으로이동할픽셀값 downoffsetx=0 downoffsety=1 위와같이옵션을주었다면버튼을클릭했을때세로로만이미지가이동함 hint 마우스를버튼위에올렸을때나타나는풍선도움말에보여질글자를입력합니다. 예외사항으로, command= URLOpenCmd일경우 hint값에입력된 URL주소로웹브라우저를열게됩니다. group allowallup Ex. hint= 재생목록닫기 hint=http://news.naver.com/news/broadcast/ 볼륨의음소거버튼과같이토글 (toggle) 버튼을위해사용되는옵션입니다. 버튼을그룹지을수있어버튼에눌려지거나해제된효과를다양하게줄수있습니다. Ex. group= 임의의숫자 allowallup=1 cursor 버튼위에올려졌을때별도마우스의커서모양을바꿀때지정이가능합니다. Ex. cursor=point.cur command 버튼이눌러졌을때실행될명령입니다. 다음과같은명령들을수행할수있습니다. Command 설명 MainMenu SystemMenu MinCmd: 최소화 MaxCmd: 최대화 ExitCmd 종료 OpenMenu 열기메뉴 AlbumMenu 앨범메뉴 CloseCmd WDMMenu WDM 메뉴 DVDMenu DVD 메뉴 WinampMenu ScreenMenu AdvScreenMenu PlaybackMenu CaptionMenu VideoMenu AdvVideoMenu AudioMenu CaptureMenu VisualMenu FilterMenu BookmarkMenu EnvRestoreMenu SkinMenu
OpenFileCmd OpenURLCmd OpenFolderCmd OpenIEMediaCmd OpenRecentCmd OpenRetryCmd OpenWDMCmd OpenDVDDeviceCmd OpenDVDFileCmd OpenVCDCmd AlbumPrevOpenCmd AlbumNextOpenCmd WDMTunerMagCmd WDMChannelMagCmd WDMFirstChannelCmd WDMPrevChannelCmd WDMNextChannelCmd WDMLastChannelCmd WDMRegPrevChannelCmd WDMRegNextChannelCmd WDMInputChannelCmd WDMAntennaInputCmd WDMCableInputCmd DVDSubpictureMenu DVDAudioMenu DVDAngleMenu DVDMoveMenu DVDPrevChapterCmd DVDNextChapterCmd DVDRootMenuCmd DVDTitleMenuCmd DVDSubpictureMenuCmd DVDAudioMenuCmd DVDAngleMenuCmd DVDChapterMenuCmd DVDRestoreMenuCmd DVDClosedCaptionCmd DVD1XBackwardCmd DVD2XBackwardCmd DVD4XBackwardCmd DVD8XBackwardCmd DVD1XForewardCmd DVD2XForewardCmd DVD4XForewardCmd DVD8XForewardCmd WinampPluginSetupCmd WinampPluginInfoCmd WinampFileInfoCmd ScreenKeepBaseRatio ScreenKeep43Ratio ScreenKeep169Ratio ScreenKeepCurRatio ScreenCycleRatio ScreenHalfSize
ScreenNormalSize ScreenDoubleSize ScreenMaxSize ScreenRestoreSize ScreenFullSize ScreenDesktopView ScreenTopLeft ScreenTopCenter ScreenTopRight ScreenMiddleLeft ScreenMiddleCenter ScreenMiddleRight ScreenBottomLeft ScreenBottomCenter ScreenBottomRight ScreenAllwaysOnTop ScreenPlayingOnTop ScreenScreenSave ScreenHideMouse AdvScreenRestore AdvScreenZoomIn AdvScreenZoomOut AdvScreenZoomInHori AdvScreenZoomOutHori AdvScreenZoomInVert AdvScreenZoomOutVert AdvScreenMoveLeft AdvScreenMoveRight AdvScreenMoveUp AdvScreenMoveDown AdvScreenOffset PlayPlayCmd PlayStopCmd PlayFrameCmd PlayPrevFileCmd PlayNextFileCmd PlayBackward1Cmd PlayForward1Cmd PlayBackward2Cmd PlayForward2Cmd PlayBackward3Cmd PlayForward3Cmd PlayBackward4Cmd PlayForward4Cmd PlayPrevCapCmd PlayNextCapCmd PlayStartPosCmd PlayMidPosCmd PlayLastPosCmd PlaySlowerSpeedCmd PlayNormalSpeedCmd PlayFasterSpeedCmd PlaySlowerPitchCmd
PlayNormalPitchCmd PlayFasterPitchCmd PlayRepeatMenu PlayRepeatSetCmd PlayRepeatStartCmd PlayRepeatEndCmd PlayRepeatUseCmd PlayModeMenu PlayModeDirDown PlayModeDirUp PlayModeDirRandom PlayModeDirRepeat PlayModeAlbumNext PlayModeAlbumRepeat PlayModeAlbumNone PlayModeAlbumExit PlayModeAlbumPowerOff PlayModeAlbumFileClose PlayMoveMenu PlayModeDirDown PlayModeDirUp PlayModeDirRandom PlayModeDirRepeat PlayModeAlbumNext PlayModeAlbumNone PlayModeAlbumExit PlayModeAlbumPowerOff PlayModeAlbumFileClose PlayMoveMenu PlaySkipStartCmd PlaySkipIntroCmd PlaySkipEndCmd PlaySkipSettingCmd CaptionFileOpenCmd CaptionVisibleCmd CaptionSyncInputCmd CaptionSyncPrevCmd CaptionSyncNextCmd CaptionOverlayCmd CaptionImageCmd CaptionAlignMenu CaptionAlignLeftCmd CaptionAlignCenterCmd CaptionAlignRightCmd CaptionAlignTopCmd CaptionAlignMiddleCmd CaptionAlignBottomCmd CaptionLanguageMenu CaptionMarginMenu CaptionMargin0Cmd CaptionMargin5Cmd CaptionMargin10Cmd CaptionMargin15Cmd CaptionMargin20Cmd
CaptionMargin25Cmd CaptionMargin30Cmd CaptionLargerCmd CaptionSmallerCmd CaptionNormalCmd CaptionBoldCmd CaptionItialicCmd CaptionAlphaCmd CaptionUnderlineCmd CaptionFadeCmd CaptionShadowCmd CaptionOutlineCmd CaptionVertCmd CaptionAntialiasCmd CaptionHTMLCmd CaptionMoveDownCmd CaptionMoveUpCmd CaptionIncMarginCmd CaptionDecMarginCmd VideoDecBaseBrightCmd VideoIncBaseBrightCmd VideoMotionBlurCmd VideoLPFilterCmd VideoSharpenFilterCmd VideoMediaBlockCmd VideoMediaCrossCmd VideoMeanYFilterCmd VideoMeanUVFilterCmd VideoGreyScaleCmd VideoAutoLevelCmd VideoMirrorCmd VideoInInverseCmd VideoOutInverseCmd VideoSpecialFilterMenu VideoHPFilterCmd VideoLaplaceCmd VideoEdgeDetectCmd VideoEdgeEnhanceCmd VideoColorEmbossCmd VideoColorInverseCmd VideoHistogramCmd VideoIgnoreSettingCmd VideoUsePluginCmd AdvVideoLowUseOverSample AdvVideoAllUseOverSample AdvVideoNoUseOverSample AdvVideoDeInterlaceCmd AdvVideoPostProcessCmd AdvVideoPicPropertyCmd AdvVideoSharpenCmd AdvVideoBlurCmd AdvVideoGDeNoiseCmd
AdvVideoLevelControlCmd AdvVideoFastestModeCmd AdvVideoFastPresetCmd AdvVideoHQPresetCmd AdvVideoBasePresetCmd AdvVideoHardwareMenu AdvVideoSoftwareMenu AdvVideoHWIncBrightCmd AdvVideoHWBaseBrightCmd AdvVideoHWDecBrightCmd AdvVideoHWIncSaturatCmd AdvVideoHWBaseSaturatCmd AdvVideoHWDecSaturatCmd AdvVideoSWIncBrightCmd AdvVideoSWBaseBrightCmd AdvVideoSWDecBrightCmd AdvVideoSWIncSaturatCmd AdvVideoSWBaseSaturatCmd AdvVideoSWDecSaturatCmd AdvVideoSWIncContrastCmd AdvVideoSWBaseContrastCmd AdvVideoSWDecContrastCmd AudioStreamSelectMenu AudioIncVolumeCmd AudioDecVolumeCmd AudioMuteVolumeCmd AudioDecAmpCmd AudioIncAmpCmd AudioUseEqulizerCmd AudioRemoveLeftChCmd AudioRemoveRightChCmd AudioSwapChCmd AudioMergeChCmd AudioVioceRemoveCmd AudioViocePassCmd AudioSlowerEchoCmd AudioFasterEchoCmd AudioSlowerPitchCmd AudioFasterPitchCmd AudioUse3DEffectCmd AudioDec3DEffectCmd AudioInc3DEffectCmd AudioIgnoreSettingCmd AudioUsePluginCmd CaptureAVIMovieCmd CaptureAVIAutoCmd CaptureCurScrFileCmd CaptureCurScrTimeCmd CaptureCurScrClipBoardCmd CaptureSampleGrabberCmd CaptureDesktopCenterCmd CaptureDesktopTileCmd CaptureDesktopStretchCmd
CaptureSelectFolderCmd CaptureOpenFolderCmd VisWaveFormCmd VisFreqCmd VisWaveFreqCmd VisWinMediaVisCmd VisSimpleCmd VisBlackCmd VisPrevVisCmd VisNextVisCmd BookmarkAddCmd ConfigureViewCmd PlaylistViewCmd ControlBoxViewCmd AdvMenuViewCmd PlayInfoViewCmd HelpViewCmd AboutViewCmd URLOpenCmd SkinNormalControlSkin SkinAutoHideControlSkin SkinOSCControlSkin SkinBothControlSkin PlayListPopupMenu PlayListAddFileCmd PlayListAddFolderCmd PlayListClearAllCmd PlayListRepeatCmd PlayListRandomCmd AudioUseTempoCmd PlaySaveFilePosCmd WDMChannel0Cmd WDMChannel1Cmd WDMChannel2Cmd WDMChannel3Cmd WDMChannel4Cmd WDMChannel5Cmd WDMChannel6Cmd WDMChannel7Cmd WDMChannel8Cmd WDMChannel9Cmd WDMChannelSetCmd AudioEqulizerFreqDomain AudioEqulizerTimeDomain AudioEqulizerDirectX AudioRemoveLeftChCmd AudioRemoveRightChCmd AudioSwapChCmd AudioMergeChCmd AudioVioceRemoveCmd AudioViocePassCmd AudioUseDynamicAmpCmd AudioUseAutoGainCmd AudioUseEchoCmd
grouppanel AudioSlowerEchoCmd AudioFasterEchoCmd AudioUseBandPassCmd AudioUseTrueBassCmd AudioUseTrebleEhnCmd command값이패널을바꾸는명령인 PanelChangeCmd인경우, 버튼을눌렀을때보여지는패널을지정할수있습니다. 주로컨트롤박스등과같이같이복잡한컨트롤등을한데모아놓았을때편리한옵션입니다. useinactivemode enabled Ex. grouppanel= 패널이름 grouppanel=audio_tab 값이 1인경우, 포커스가다른프로그램에있을때버튼의 2번째이미지를사용하게됩니다. Static 컨트롤이생기기전에버튼을실제동작하는것이아닌, 일반적인이미지처럼보여주기위해사용하였던옵션입니다. clickdelay 값이 0인경우버튼은그냥보여주기만합니다. Ex. Enabled=0 버튼을계속누르게될경우사용하는옵션입니다. 이것은마우스로클릭한뒤얼마가있어야옵션이실행될지를의미합니다. Tip. 5초앞으로이동하는버튼이있는데이옵션을지정하게되면, 계속누르고있을때는탐색기능과같이보여질수도있습니다. clickinterval Ex. clickdelay= 시간 ( 단위ms) clickdelay=300 마우스로버튼을누르고있는동안얼마간의간격으로이벤트를발생할지지정합니다. Ex. clickinterval= 시간 (ms) clickinterval=70 limitparentwidth 부모속성의패널의크기가지정된크기보다작을때컨트롤이보이지않게합니다. 아래의 maximunparent 속성과같이사용할경우크기에따라다른컨트롤을보여줄수있습니다. 즉최소사이즈일때는작은아이콘으로보여주고, 사이즈가어느정도될경우좀더큰아이콘으로보여주게끔할수있습니다. Ex. limitparentwidth= 가로크기 (px) limitparentwidth=400 버튼이위치한패널의크기가 400px이하일때는컨트롤을숨김 limitparentheight 위와마찬가지, 단세로크기에해당됨 maximumparentwidth 부모속성의패널의크기가지정된크기보다클때컨트롤이사라지게합니다. Ex, MaximumParentWidth= 가로크기 (px)
maximumparentheight 위와마찬가지, 단세로크기에해당됨 전체예시 [Screen_Zoom3] type=button ---------------------- 버튼타입으로정의 parent=video_sub3 --------------- video_sub3이라는이름의패널위에위치함 Transparent=1000 ---------------- 반투명이미지사용함 image=cb/cbbt2.png ------------ 이미지의저장위치. cb폴더내에위치하고있음 width=27 height=11 left=139 top=55 Command=AdvScreenZoomIn --- 이버튼을누를경우동작하게되는명령 hint= 화면축소 -------------------- 버튼위에마우스를올려놓으면화면축소라고풍선도움말이나타남 DownOffsetX=0 ------------------- 값이 0이기때문에실제로는눌렀을때이미지의좌표위치는변화없음 DownOffsetY=0 ClickDelay=300 ------------------- 버튼을계속누르고있을경우, 300ms 뒤에위의명령을반복입력이되게함 ClickInterval=70 ------------------ 반복입력간격을 70ms로정의함 5. 슬라이더컨트롤정의 type= Slider 인경우에사용되는각종속성 속성 type parent 설명 slider 부모속성을지정합니다. 패널을제외한모든컨트롤은자신이위치할패널을지정하여야됩니다. Slider1 Ex. parent=bottompanel ( 위와같이입력하면 bottompanel에슬라이더컨트롤이위치하게됩니다.) 슬라이더의기본바탕이미지입니다. Thumb 이미지가지나가지않았을때의슬라이더의배경이되는이미지입니다. slider2 Ex. slider1= 이미지파일명 Thumb 이미지가지나갔을때의슬라이더배경이미지입니다. 보통은더눈에띄는색상을사용하게됩니다. thumb Ex. slider2= 이미지파일명썸네일이미지입니다. 슬라이더를이동할때이이미지부분을클릭한상태로움직이면해
당위치로이동하게됩니다. 버튼과비슷한방식으로같은크기의이미지가두개가가로로붙어있게됩니다. 처음이미지는선택되었을때 ( 마우스로클릭했을때 ) 의이미지이고, 두번째이미지는일반적인상태에서보여지는이미지모습입니다. command Ex. thumb= 이미지파일명슬라이더컨트롤을통해서실제조절되는명령을입력합니다. 슬라이더컨트롤로조정할수있는명령은다음과같습니다. SliderTrack : 일반적인탐색을위한슬라이더 SliderVolume: 볼륨을조정할경우의슬라이더 TrackBarHWBri: 하드웨어방식의밝기조절을위한슬라이더 TrackBarHWSAT: 하드웨어방식의채도조절을위한슬라이더 TrackBarHWLum: 하드웨어방식의대비조절을위한슬라이더 TrackBarSWBri: 소프트웨어방식의밝기조절을위한슬라이더 TrackBarSWSAT: 소프트웨어방식의채도조절을위한슬라이더 TrackBarSWLum: 소프트웨어방식의대비조절을위한슬라이더 TrackBarPreAmp: 프리앰프의음량조절 TrackBarBalance: 좌우음량의밸런스를위한슬라이더 TrackBarEQ1~10: 10단계이퀄라이저조절을위한슬라이더 ( 숫자가낮을수록저음 ) vert Ex. command= 커맨드명령값이 1인경우슬라이더를세로표시합니다. 이값이없을경우슬라이더는가로로표시됩니다. markbottom mark1image mark2image marklineimage bookmarkimage Transparent Width, Height Top, left Margin1,2 Hint, cursor Ex. vert=1 구간반복설정시에나타나는이미지를슬라이더아래에표시. 이값이 0이면슬라이더위에위치하게됩니다. 구간반복설정시에나타나는시작점이미지구간반복설정시에나타나는종료점이미지위의시작점과종료점을잇는이미지북마크설정시에나타나는이미지다른컨트롤과공통되는속성 전체예시
[Track] type=slider ---------------------------------- 슬라이더컨트롤임을정의함 parent=bottompanel Transparent=1000 Thumb=TrackBar.png ----------------------- 실제슬라이더의위치를조정하는썸네일이미지의지정 Slider1=TrackNormal.Png ------------------ 처음배경이미지 Slider2=TrackPlayed.png ------------------- 썸네일이지나간이미지 width=-86 ----------------------------------- 음수값이므로화면을늘릴때슬라이더의크기도같이늘어남 left=3 top=-42 height=11 margin1=3 margin2=3 Command=SliderTrack --------------------- 시간탐색을위한슬라이더명령 MarkBottom=1 ----------------------------- 구간반복이미지를트랙의아래에위치시킴 Mark1Image=Mark.png ------------------- 구간반복시작점이미지의지정 Mark2Image=Mark.png ------------------- 구간반복종료점이미지의지정 Cursor=Point.cur --------------------------- 슬라이더위에마우스가올라가면커서의모양이바뀜 BookmarkImage=BookmarkPoint.png --- 북마크를했을경우나타나는이미지 6. 레이블컨트롤정의 1 type= label 인경우에사용되는각종속성 속성 Type Parent 설명 label 부모속성을지정합니다. 패널을제외한모든컨트롤은자신이위치할패널을지정하여야됩니다. Ex. parent=bottompanel ( 위와같이입력하면 bottompanel에레이블컨트롤이위치하게됩니다.) Alignment 텍스트의정렬방식을지정합니다. Ex. Alignment=left 텍스트가왼쪽에붙어서출력 Alignment=center 텍스트가레이블의가운데에출력 Alignment=right 텍스트가오른쪽기준으로출력 Layout 폰트의세로위치를지정합니다. FontColor 폰트의색상을지정합니다. Ex. FontColor=$16진수값 FontColor=$BBBBBB FontName 폰트 ( 글꼴 ) 를지정합니다.
Ex. FontName= 폰트명 FontName=Tahoma FontSize 폰트의크기를지정합니다. Ex. FontSize= 폰트크기 (px) FontSize=9 VisibleOutline 값이 1일때, 텍스트주위에외곽선을사용하게됩니다. Ex. VisibleOutline=0( 사용하지않음 ) 또는 1( 사용 ) OutlineColor 외곽선의컬러값을지정합니다. Ex. OutlineColor=$0000FF ( 이경우레드색상의외곽선이생성됨 ) VisibleShadow 값이 1일때, 텍스트에그림자를생성합니다. ShadowColor 그림자의색상을지정합니다. Ex. OutlineColor=$00FF00 ( 이경우그린색상이그림자색상이됨 ) Scroll 값이 1일때, 텍스트문장이레이블의크기보다작은경우스크롤됩니다. ScrollSpeed 텍스트가스크롤되는속도를조정합니다. Ex. ScrollSpeed=50 Width, Height 다른컨트롤과공통되는속성 Top, Left Command LabelTitle: 실행되는 파일명을 출력합니다. 미디어파일이 실행되지 않는 경우에는 type=info에서지정한텍스트문장이출력됩니다. LabelTitleWithMsg: 평상시에는파일명과같은타이틀을표시하지만, 버튼등을눌러특정 동작을할경우에는그동작상황을출력합니다. 아래는슬라이더를조절했을때탐색이되고있음을보여줍니다. 전체예시 [TitleLabel]
type=label parent=toppanel Alignment=center layout=center left=68 top=3 width=-68 height=16 FontColor=$bbbbbb FontName=Tahoma FontSize=9 ------------------ 폰트의크기가 9임 VisibleOutline=0 ------------ 값이 0이므로외곽테두리는보이지않음 outlinecolor=$0000ff ------ 글자의외곽테두리를활성화할경우의색상 ( 현재외곽선은비활성상태 ) Command=LabelTitle LimitParentWidth=320 Scroll=1 VisibleShadow=1 ShadowColor=$00FF00 ScrollSpeed=50 ------------- 스크롤될때의속도 7. 레이블컨트롤정의 2 type=nulabel 인경우에사용되는각종속성 속성 Type Parent 설명 label 부모속성을지정합니다. 패널을제외한모든컨트롤은자신이위치할패널을지정하여야됩니다. Ex. parent=bottompanel ( 위와같이입력하면 bottompanel에레이블컨트롤이위치하게됩니다.) FontName 레이블을아래이미지를사용하여출력하는방법과폰트를이용하는방법이있습니 Fontcolor 다. 다른컨트롤에서사용되는폰트적용법과같음 fontsize image 이미지를지정하여이미지값을출력할수있습니다. Image1 단버튼과마찬가지로여러개의이미지가차례대로나열대어붙어있게됩니다. 마우스가슬라이더에오버된상태에서의시간값을출력시에본이미지를사용합니다. 전체재생시간의경우, 이속성을적용했을때슬라이더에마우스를올려놓으면그값이실시간으로표현됨을알수있습니다.
Layout 폰트의세로위치를지정합니다. Command LabelVideoFourCC: 영상의 fourcc값 (DivX, XviD 등의코덱을구분 ) 을출력합니다. LabelAudioTag: 음성의포맷을출력합니다. LabelAudioCodecNumCh: 음성의채널값을출력합니다. LabelPlayTime: 재생시간을출력합니다. LableLeftTime: 남은시간을출력합니다. LabelTotalTime: 미디어파일의전체시간을출력합니다. LabelPercentTime: 재생시간을퍼센트로출력합니다. LabelWDMChannel: WDM모드에서채널을출력합니다. 이미지를출력할경우다음과같은형식을취합니다. 동일한이미지들이붙어있음 MappingDB 커맨드에맞춰이미지의일부분을보여줄수있게합니다. ( 하단에별도설명함 ) Transparent 다른컨트롤과공통되는속성 Width, Height Top, left MaximumParentWidth MaximumParentHeight 전체예시 [VideoFourCC] type=numlabel parent=bottompanel Image=VideoInfo.png left=43 top=8 width=33 height=9 Command=LabelVideoFourCC MappingDB=XVID;XVIX, DIV3;DIV4;DIV5;DIV6;AP41;COL1;DVX3;MPG3, DIVX;MP4S;MP4V;M4S2;3IV2;3IVX;RMP4;DM4V;WV1F;FMP4;HDX4;SMP4, DX50;BLZ0;DXGM, MP43, MP42;DIV2, MP41;MPG4;DIV1, WMV1, WMV2,
WMV3, WVC1, H263;S263, H264;X264;VSSH;DAVC;AVC1, MPEG1;MPG1, MPEG2;MPG2, MPEG, SVQ1, SVQ3, MSVC;CRAM, FLV1;FLV4, RV10;RV20;RV30;RV40, Theo, VP31;VP40;VP50;VP60;VP61;VP62;VP70, TSCC, YUY2, RGB;RGB24, DVSD Transparent=1000 위의 MappingDB에쉼표 (,) 로구분되는 FourCC값은총 27개이며, ; 로구분되는것들은비슷한속성을가집니다. 이미지에링크된 VideoInfo.png도이어붙인이미지의개수가아무값이없는상태를포함하여 28개여야되며만약재생되는영상이 XivD 코덱을사용했다면이미지의제일처음은공백을의미하고두번째에붙은것이보여지게됩니다. ( 이미지단위당가로크기는위의 Width에서정의함 ) ( 위이미지의우측부분은편집상에잘렸습니다 ) 7. 사용자메뉴정의 type=nulabel 인경우에사용되는각종속성 속성 설명 Type UserMenu 0~?= 일정한수치값에커맨드를대입하는방식입니다. -를대입할경우구분선이생기게됩니다. 전체예시이컨트롤은버튼과같이사용됩니다. [AddMenu] type=usermenu
0=*AddFileMenu -------------- 앨범에파일추가 1=*AddFolderMenu ----------- 앨범에폴더추가 2=*PL_URLAddMenu ---------- 파일명 (URL) 으로추가 3=- 구분선 4=FileOpenMenu 5=FolderOpenMenu 6=URLOpenMenu 7=- 8=*DirectGoMenu [Add] type=button parent=playlistpanel image=pl/pl_add.png HoriCenter=1 HoriOffset=-61 Top=-28 width=40 height=21 Transparent=1000 Command=PopupUserMenu UserMenu=AddMenu ------- 위에서적용된이름이 AddMenu 인사용자메뉴를불러오게함 DownOffsetX=0 DownOffsetY=0 UseInactiveMode=1 Hint=Add 위의컨트롤이실행되면다음과같습니다. 8. 로고정의 type=logo인경우에사용되는각종속성속성 Type logo Left,Top, 다른컨트롤과공통되는속성 설명
Width,Height Mode 0일때이미지의크기그대로보여주고 1일때이미지를꽉찬상태로보여주고 2일때이미지크기그대로, 바둑판처럼반복해서보여줍니다. Animation 애니메이션을시킬경우값을 1 줍니다. Imageheight 이미지를애니메이션시킬경우각이미지는세로로붙여야됩니다. 그리고각단위별이미지의크기를이속성에서정합니다. Speed 이미지가바뀌는시간값을입력합니다. 전체예시 [logo] type=logo top=150 image=logo_ani.bmp mode=0 animation=1 imageheight=50 speed=20 9. 플래시컨트롤정의 type=logo 인경우에사용되는각종속성 기본배경이되는이미지대신플래시파일을보여줄경우사용합니다. 속성 Type Left,Top, Width,Height Address FlashCtrl 다른컨트롤과공통되는속성 플래시파일 (swf) 의위치주소값 설명 전체예시 [logo] type=flashctrl top=0 left=0 width=-0 height=-0 address=http://microsites.audi.com/ironman/app_loader.swf
10. 웹컨트롤정의 type= WebCtrl 인경우에사용되는각종속성 속성 설명 Type WebCtrl Left,Top, 다른컨트롤과공통되는속성 Width,Height Address Web Browser에서읽어올 URL을입력합니다. 11. 탭컨트롤정의 type= TabControl 인경우에사용되는각종속성이컨트롤은플레이리스트에서적용되어집니다. 속성 설명 Type TabControl Parent,Left,Top, 다른컨트롤과공통되는속성 Width,Height TabPosition 탭의위치를나타냅니다. Top, Left, Right, Bottom MultiLine 탭이멀티라인이되게할경우값에 1을줍니다. 앨범의수가많아질경우멀티라인을사용하지않으면화살표버튼이나타납니다. 대신멀티라인을줄경우탭컨트롤의높이값도신경을써야잘리지않습니다. 전체예시 [TabControl] type=tabcontrol Parent=PlayPanel Left=10 Top=28 Width=-10 Height=22 TabPosition=top MultiLine=0 12. 오디오비주얼컨트롤정의 type= AudioVisual 인경우에사용되는각종속성 속성 설명
Type AudioVisual Parent,Left,Top, 다른컨트롤과공통되는속성 Width,Height BarWidth 스펙트럼의가로길이입니다. BarDistance 스펙트럼의간격입니다. VisType 오디오비주얼의종류입니다.(0 ~ 8) 까지입니다. 7,8번은이미지를필요로합니다. BackColor 배경색입니다. BarStartColor 스펙트럼의시작색입니다. BarEndColor 스펙트럼의끝색입니다. OscColor 비쥬얼이선으로표현될때선의색입니다. PeakVisual 최대치효과를보여줍니다. PeakFallTime 최대치에머무르는시간을정해줍니다. PeakFallDistance 최대치에서떨어지는간격을정해줍니다. PeakColor 최대치의색을정해줍니다. RefreshTime 업데이트간격을정해줍니다. PeakHeight 최대치의높이를정해줍니다. LineDivide 세로일정단위로선이끊어진것을표현할때사용합니다. (Vistype=1,2 일때만적용 ) ImageCount 여러장의이미지가연결되었을때, 총이미지의수를정해줍니다. (Vistype=8일때만적용 ) Transparent 이미지를사용할때투명값을정해줍니다. (Vistype=8일때만적용 ) Image1 좌측음성과연결된이미지 (Vistype=7,8 일때만적용 ) Image2 우측음성을표현할때사용되는이미지를연결합니다. (Vistype=7,8 일때만적용 ) UseIncMode 이미지의투명도가증가또는감소할방식을정해줍니다. (Vistype=7일때만적용 ) 전체예시 [AudioVisual_L] ------------- 임의정의 type=audiovisual ----------- 오디오비주얼컨트롤임을정의 parent=bottompanel ------- 부모패널의위치를정해줍니다. top=5 ----------------------- 위에서 5픽셀떨어진곳 left=5 ----------------------- 좌측에서 5픽셀떨어진곳에위치 width=35 ------------------- 비주얼의가로크기는 35픽셀 height=14 ------------------ 세로크기는 14픽셀 VisType=7 ------------------ 비주얼타입은 7(7번과 8번만이이미지를사용합니다 ) Image1=Visual1.png ------ 이미지지정 UseIncMode=0 ------------- 증감모드를정해줍니다. RefreshTime=50 ------------ 이미지의업데이트간격입니다.
[AudioVisual] type=audiovisual parent=bottompanel HoriCenter=1 -------------- 가운데정렬모드입니다. HoriOffset=22 ------------- 가운데기준, 우측으로 22픽셀옆에위치 top=24 width=62 height=23 ImageCount=10 ----------- 이미지가 10장 (10단계) 으로구성되어있음을정의 VisType=8 Image2=Visual.png Transparent=1000 --------- 이미지가투명값을표현한경우 LimitParentWidth=450 ----- 부모패널의크기가 459 이하일때는보여주지않음