晨风交流论坛_CMP_CChat_Flash_音乐_视频_播放器_live直播_聊天室

 找回密码
 立即注册

QQ登录

只需一步,快速开始

扫一扫,访问微社区

查看: 12238|回复: 13

[教程] CMP3.0经典问题解答(CMP入门必备帮助文档)

[复制链接]
发表于 2009-10-26 13:26:28 | 显示全部楼层 |阅读模式
官方QQ群:102348392 | 捐赠CMP
本帖最后由 路过恋人 于 2009-10-27 14:19 编辑

本来在我的Q空间里早就有了这篇文章,但感觉还是有点自私了。还是发出来给大家共享吧!希望给新手带来帮助。
问题会不定期更新,但是在本贴不一定是最新版本(种种原因不能及时更新本帖).
关注本帮助文章的更新请点击这里
--------------------------CMP3配置经典问答-------------------------------

Q:   CMP3.0可以从2.1版直接升级吗?
A:  不可以,因为CMP3.0采用全新的构架,不可以从2.0或2.1版本直接升级。配置和结构是完全两样的。

Q:    我下载了官方安装包,要怎么上传到自己空间上呢?

A:    上传安装包内“upload”内的全部文件到您的空间上,如果有ftp可以直接将内容拖放到您的ftp服务器上,如果是web式的文件管理方式,那么还需要新建若干个文件夹以存放不同内容,如skins,lrc 以及plugins文件夹,skins用来存放皮肤,lrc用来存放歌词以及plugins用来存放插件等等。

Q:  上传播放器以后要怎么样才能得到地址呢?
A:   先看下您把程序上传到哪个文件夹下了。如果是上传在根目录下的话可以直接http://你的域名/cmp.swf。如果不是在根目录下那么就看看在哪个文件夹下了。比如说你把程序放到了根目录下的player文件夹下,那么播放器地址就应该是http://你的域名/player/cmp.swf(如果更改了cmp.swf的文件名就对应的改一下)。值得注意的是请不要使用ftp://开头的播放器地址!
Q:   网盘可不可以做播放器?

A:    不可以!网盘和网络空间不同,网盘只是用来存储文件的,而网络空间却可以建立站点。

Q:    为什么我把所有的皮肤都上传了,也在配置中做了修改,但打开播放器却不能看到自己设置的皮肤而是显示“加载错误”呢
A:   可能是您的空间不支持.zip压缩文件读取。您可以尝试修改文件后缀名为:.swf或.jpg等常见的文件格式。并且在配置文件中的<skin></skin>区域中做对应的修改。修改后缀名的方法:打开文件夹-工具-文件夹选项-切换到“查看”选项卡-在“高级设置:”下找到:隐藏已知文件类型的扩展名,确认没有被打钩。回到皮肤文件夹直接给皮肤文件重命名,如:skin.zip重命名为skin.swf。放心,这不影响cmp的读取。

Q:   为什么我的播放器一刷新皮肤就变掉了?
A:    因为系统开启了随机皮肤状态。请检查您的配置文件,skin_id=""部分是不是“-1”或者是一个比较大的数字,再检查一下您下面的<skin></skin>部分设置了几个皮肤,对比一下如果只有三个皮肤,那么skin_id=""这里就不要是4或更高的数字。-1或超出皮肤列表的数字会使播放器随机选择皮肤

Q:  我想屏蔽掉右键菜单,要怎么做?
A:   context_menu: 右键菜单选项:不显示(0);显示(1);仅显示名称,无功能菜单(2);默认为1。这些是配置文件内的标准注释,基本功能的解释都在那里,不妨多看看。

Q:  为什么有的歌曲可以显示视觉效果,有的却没有呢?
A:   因为Flash跨域策略的限制导致,Flash本身不能读取跨域mp3的波形数据,解决办法有:将crossdomain.xml放到加载音乐所在同级目录(如果加载网络音乐则不能实现)或将mp3音乐和CMP播放器放在同一个域下
更多讨论见:http://bbs.cenfun.com/viewthread.php?tid=7925&pid=18561

Q:   配置文件中的参数都是从哪里得来的?
A:  一般的是cmp内部设定的。比如设置播放模式和混音器样式之类的,这些一般都是表示某个功能的开关或者某个功能的个性化设置,比如1表示有或开 而0则表示没有或关闭。在注释中都有说明。

而有些是要读取外部的XML,像设定默认列表和默认播放曲目就是从list.xml中找的。

list_id="专辑编号"表示默认播放list.xml内的第几个<l title="专辑名"></l>而auto_play="曲目编号"则表示默认播放该专辑的第几个<m type="" src="" lrc="">歌曲名</m>,这些要自己去数的。

还有一个皮肤的配置参数:skin_id="皮肤编号"表示读取<skin></skin>区域内设定的皮肤,skin_id="2"表示默认加载<skin></skin>内的第2个   <skin src="皮肤路径/皮肤名.zip" />。

可能大家看到里面设定的那些"1"啊"0"啊的都晕了,其实即使你不去修改也没有关系,那些都是为了个性化而设定的。

Q:  怎样设置才能完全随机播放?
A:   play_mode="2"

Q:   如何设置开场动画?
A:   从b080902版开始,cmp支持通过传参加载开场动画。

有两个参数:
【intro_src】开场图片或动画的路径,可以跨域
【intro_time】 开场显示多久自动进入,单位毫秒,否则需点击进入。如5000表示延时5秒后自动进入如你有个开场动画或图片在plugins/bigbg.swf,则:
cmp.swf?intro_src=plugins/bigbg.swf
即可先运行开场动画,需要点击开场动画方能继续。如果想自动延时进入,可以设置开场延时参数intro_time:
cmp.swf?intro_src=plugins/bigbg.swf&intro_time=3000
及表示开场显示3000毫秒(3秒)后自动进入

开场动画或图片支持跨域加载,如看到别人有个好的动画,也可以直接引用过来加载,如用百度的logo做开场图,并延时5秒自动进入:
cmp.swf?intro_src=http://www.baidu.com/img/baidu_logo.gif&intro_time=5000
注意地址如有特殊字符参数等需要先进行转义
CMP自定义开场是直接在播放器地址后直接添加的
Q:  
播放器无法显示或运行异常(如只显示黑色背景)
A:    CMP3需要在Flash Player 9.0或以上版本才能运行
请进这里在线检测并更新浏览器的Flash插件版本:http://tools.cenfun.com/flashplayer/  


--------------------------CMP3.0皮肤制作问题及技巧-----------------------



Q:   做皮肤难吗?
A:   不难,但比较麻烦,需要一定的耐心,做出好皮肤还需要一些平面设计基础。

Q:   做皮肤的最低门槛是什么?
A:  没有最低标准,只有你愿不愿意。

Q:  我要从哪里着手呢?

A:  先看看皮肤配置文件吧。基本的了解一下里面的东西都是干什么用的。

Q:  做皮肤需要什么工具呢?
A: 必要的:cmp程序,winrar 记事本。选件:photoshop(皮肤元件制作) cmp3skiner(皮肤坐标调整)ColorPix(颜色代码选

择) ScreenRuler(屏幕标尺)

Q:  皮肤文件里为什么控制按钮是四个并排的?
A:     比如按钮,有四个状态,即需要四个图片,这里将4个图片横向摆在一起,则只要横向切成4份,竖排切成1份(4x1,切割方式),即可取得对应状态皮肤
注意4份大小都需一样,还有就是特殊按钮(开关按钮、切换按钮),如播放按钮:
其实为播放和暂停的整合体,因为它两部可能同时出现,只能切换,故每个皮肤占用2个位,类似的还有一些开关按钮,如静音,随机,重复按钮等
具体有哪些状态,怎么摆放,请参考模板皮肤

Q:  为什么我看到在cmp中的皮肤大小和皮肤包里的大小不一样?
A:  这是因为皮肤使用了cmp来定义大小。你可以发现该皮肤的中间部分没有什么渐变和图案之类的东西。
由于拉伸就会变形,这里为了保证边角效果,这里采用了特殊填补机制(自动进行):
先竖向居中切成2份,并靠左右两边摆放:如果宽不够,则中间空缺使用中间一个像素竖条填充;如果宽大于,则删除中间多于部分
然后横向居中切成2份,并靠上下两边摆放:如果高不够,则中间空缺使用中间一个像素横条填充;如果高大于,则删除中间多于部分
最后达到保证边角不被拉伸变形效果
注意:如果你的皮肤中间有图案或渐变,则拉伸会被破坏掉,故请制作对应宽高文件,以便不被拉伸。
      如果是比较单调的(即中间部分没有渐变或图案)皮肤或自动大小的皮肤,尽量用cmp定义大小。
      Flash皮肤不是图片,cmp无法对其进行特殊填补,所以会完全拉伸

Q:    窗口皮肤和自动大小皮肤有什么区别?
A:    窗口皮肤是固定大小的,但自动大小皮肤会随浏览器窗口或设定的大小而改变。后者实用性较高。

Q:   哪种皮肤好一点?
A:  没有最好的皮肤,只有最适合自己的皮肤。不同的皮肤在不同的场合使用,才能发挥自己的用处。单论好看的话还是窗口皮肤好一点,因为它可以使用比较多的元素点缀。自动大小的皮肤四周边框必须符合要求。但是窗口皮肤的实用性不高,博客类型的皮肤应该比较受欢迎一点。

Q:  为什么自动大小皮肤可以自动调整大小?
A:   在xywh中有个“B”:  border 边距,边界的参数。它可以使皮肤及内容始终保持在与边界(窗口大小或插入flash时设定的值)一个固定的距离。如果边界缩小那么皮肤及内容也缩小,反之则变大。

Q:  关于4个窗口的重叠切换
A:  4个窗口分别是:  list列表   media媒体   lrc歌词  option设置
分别由console控制台上的4个对应的开关按钮控制
也就是点击窗口的控制按钮时会自动打开或关闭其对应的窗口
那么怎样才能打开其中一个窗口的同时关闭另一个已经打开的窗口呢?
很简单,将需要切换关闭的窗口的位置和大小,也就是xywh设置成一样,且将lock锁定设置成1即可
换句话说就是,完全重叠锁定的窗口,只能同时打开其中一个。

Q:  我不太清楚,配置文件中的XYWH是什么,很重要吗?
A:  XYWH是CMP中很有特色的功能,它简单易操作也比较直观。来详细介绍下各个参数的使用方法:
  其实这四个字母就定义了一个元件在你屏幕上的位置和大小,很简单,就是X坐标和Y坐标,W表示宽度H表示高度。这四个参数相互组合即决定了一个元件在屏幕上的位置。可以说你皮肤设计的再漂亮没有它们你也没有办法用。
x:  横坐标,水平方向
y:  纵坐标,垂直方向
w:  width 宽度
h:  height 高度
C:  center 居中
R:  reverse 反向,相反
P:  percent 百分比
B:  border 边距,边界
px: pixel 像素,点

X和Y组合使用决定位置,W和H组合决定大小。
同时,X和Y的参数中还可以进行绝对值和相对值的设定,可以使用C和R进行特殊相对位置排列。W和H的参数中可以使用P和B来进行特殊大小调整。px像素是默认的,即不填写任何特殊参数所使用的单位。
    举个例子:在一张白纸上画一个方块,那这个方块需要多大,位置又在哪里?这时我们可以使用XYWH来指定,比如要这个方块在左上角,宽度和高度分别是30和15,那么我们可以使用XYWH表示为:xywh="0,0,30,15"因为顶点是在左上角,所以前面的xy设为零即可。那么现在我又希望这个方块移动到整张纸的中心点上,这时我们就可以使用“C:  center 居中”参数了,即以中间为顶点向外设定,因为是从中间开始的,所以允许有负数设定。xywh="0C,0C,30,15"。这次我们要的是绝对居中显示,所以将XY的坐标同时居中,但如果我只把X设置居中而Y依然不居中的话会怎样呢?xywh="0C,0,30,15"自己试试看吧.你会发现这个方块跑到最上边的中间去了。同样的道理,xywh="0,0C,30,15"呢?值得注意的是居中的参数是允许有负数的,如果你将XY的值设为一个正的数值,你会发现它会从中间向右下角偏移相应的距离,那其他部分是不是不能用了呢?不是的,其实你可以使用负数来定位其他位置的坐标,你可以把这张白纸分成四个部分,左上角全用负数表示,右上角X正数Y负数,左下角Y正数X负数,右下角全部正数。下面的图片仔细看看应该会对你有点启发。
    哈哈!是不是很神奇呢?那我们继续向下看另外一个参数:“R:  reverse 反向,相反”即和默认的左上角顶点相反。就是右下角为顶点啦!同样的,如果我们将上面例子中的方块放到右下角,用前面的两种方法显然是不实际的,那么我们就可以使用这个参数 了.xywh=“0R,0R,30,15” 前面说了那么多应该不用多解释了吧?绝对右下角显示,不信试试看?
    至于wh两个参数,一般情况下直接写数值就可以了。最好你的图片有多大就写多大,这样不容易出现变形。当然你可以看看前面的问题视情况设定,比如纯色的窗口图片,即使图片大小为1*1你也可以强制设定为一个任意的大小,但其他的按钮元件还是按照图片的大小来设定P和B的参数一般常用在窗口皮肤和进度条以及音量条上面,比如进度条的长度:XYWH="0,0,70P,7"表示进度条位于左上角以当前容器(一般认为是控制器窗口)70%的宽度7像素的高度显示。再比如说一个窗口,如果给它一个XYWH="0,0,70P,60P"那么该窗口将在当前屏幕(flash播放器或浏览器亦或插入flash的大小)的左上角以70%宽度和60%的高度来显示,如果当前屏幕改变了大小,那么该窗口也将随之改变,始终处于这个大小显示。P参数还可以用在窗口内容上,比如说列表窗口中分为专辑区和列表区,那么专辑的宽度可以设为30P 列表的宽度可以为70P 以充满整个列表窗口(如果希望列表窗口显示左右边框或专辑区和列表区分开一点空隙,请自行调试,可将列表内容总宽度视为95%,再由两个区自行分配)。
    B:  border 边距,边界 一般用来制作自适应大小的皮肤。方法和 P参数差不多,都是达到自动调整大小的目的。但它比P更灵活一点,可以完成一些P参数无法完成的任务。比如要将视频窗口“嵌入”到控制器中让它随控制器的大小任意放大缩小。虽然CMP没有提供这个功能,但是我们可以用B参数虚拟一下,比如控制器的左右边框是2PX,上边框是15px,下边框是25px,宽度和高度同时为100P,坐标是0,0,视频窗口没有边框内容的大小为100P,100P 那么视频窗口的大小应该为:xywh="2,15,2B,20B"(高度=控制器的上边框+下边框再除以2)。这个功能推荐高级用户使用。
参考:http://bbs.cenfun.com/viewthread ... muid=40240#pid21643

Q:  坐标调整好像很复杂,有比较直观的方法吗?
A:  来看看官方的示意图:


详解见:http://cenfunmusicplayer.googlec ... tools/xywh/xywh.txt

另附上本人做皮肤时的经验图:

坐标技巧:

漏了点东西,大家可以从官方那里看看补充一下。
定位:

底部:

大小控制:

最后一张图是我灵机一动想出来的规律,各位可以少走点弯路吧!
Q:  窗口中的开场是怎么做的?
A:  在皮肤窗口上有这么一个参数:
  1. <media xywh="2, 15, 2B, 20B" src="" mask="" lock="0" display="1" group="B">
复制代码
        【mask】
        窗口遮罩动画,与窗口的最底层背景相对应,其位于窗口的最顶层
        可完成窗口进入动画,圆角视频,开门,点缀动画等效果。仅为实现某些特殊效果提供补充,推荐高级用户使用
        注意:请慎用此属性,使用不当将导致位于其下层的按钮、列表等控件被挡住而失灵(可在播放完置于空帧,并stop停止;不能用全透明,依旧会其被挡住)
        且动画仅完成在容器左顶点的加载,不触发大小和位置的改变,并禁用鼠标事件,适用于固定大小窗口

此功能用于个性化打开窗口的效果。建议用在视频窗口和歌词窗口等不太使用鼠标操作的窗口上,做这种开场需要一定的flash软件应用基础。CMP4中可能支持鼠标事件但也可能会将这个功能剔除。






---------------------------CMP多用户经典问答------------------------------

Q:  CMP多用户注册收费吗?
A:  完全免费,我们对收费使用CMP的行为表示强烈鄙视!并请告知我们,我们会处理。

Q:  多用户上使用的皮肤是网友制作的,这些会出现版权问题吗?

A:   我们一般收集在论坛上发布的共享皮肤,并对皮肤进行bug修正,优化处理,但我们会保留共享网友的基本版权信息。

对于网友使用其他播放器进行皮肤移植,我们无权干涉,但如果原播放器作者向皮肤作者提出诉讼,我们会及时撤出该皮肤。

Q:  CMP多用户有什么好处?
A:  好处是显而易见的,你可以过一把当站长的瘾,也可以不需要自己的空间轻松制作自己的播放器。而且多用户的配置和列表编辑器还是很方便的。

Q:  CMP多用户有什么不足?
A:  当然啦!可能你加了半天的音乐但是却没有保存成功,到时候有你哭的。登陆超时会害死人的哦!所以要时刻注意音乐添加器右下脚看看是否保存成功,如果失败就赶紧重新登陆吧!

暂时先写这些,以后想到再补充,欢迎提供问题。要转载的朋友还请保留出处。

路过恋人
发表于 2009-11-7 17:08:41 | 显示全部楼层
谢谢,学习一下。
发表于 2009-10-26 14:06:45 | 显示全部楼层
加精,希望能不断补充,给新手更多帮助!
再次感谢恋人朋友!

示意图都没出来,请修正
 楼主| 发表于 2009-10-26 15:06:08 | 显示全部楼层
重新看了下,发现引用老大的解答部分还是蛮多的。本来想完全自己编写的,可后来还是老大的解答比较专业,俺也偷懒给copy过来了。但是后面还跟上了些自己的见解和解释。使新手能更明白一些。还在考虑要不要把官方问题解答贴的问题全引过来,毕竟这篇帖子更新手一些。
希望大家能踊跃的提出问题,俺解决不了就由老大来解答吧!
发表于 2009-10-26 15:26:00 | 显示全部楼层
支持

很详细
发表于 2009-10-26 17:18:19 | 显示全部楼层
本帖最后由 颓废 于 2009-10-26 17:21 编辑

多多补充,登陆下支持下你!
发表于 2009-10-27 09:31:14 | 显示全部楼层
确实对新手有很大帮助,兄弟新苦拉
发表于 2009-10-28 14:34:29 | 显示全部楼层
本帖最后由 紫蝴蝶 于 2009-10-28 14:37 编辑

有很大帮助,新苦了
你应该是超级版主了

个人确的这样的帖子应该设置固顶
发表于 2009-10-29 01:53:47 | 显示全部楼层
辛苦了,支持!非常的详细!
发表于 2010-1-2 22:30:42 | 显示全部楼层
版主辛苦了。

QQ|客服QQ44023478|Archiver|手机版|小黑屋|晨风交流论坛 ( 粤ICP备05008793号 )

GMT+8, 2018-12-12 15:16 , Processed in 0.062059 second(s), 20 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表