谁有KSC卡拉OK脚本文件的解释程序源码,300分。(100分)

  • 主题发起人 主题发起人 netsun
  • 开始时间 开始时间
请这方面的高手指点一二呀。
 
高手都泡妞去了???????????????????????????????
 
我有KSC文件播放的源码,有意者可与我联系,email:wtong2000@163.net
 
KBScripts函数说明:
(适应KBuilder 3.x版本)




--------------------------------------------------------------------------------

把RGB合成为颜色值:
<color-integer> := RGB(r, g, b);

例如: karaoke.TransparentColor := RGB(0, 255, 0);
// green
注意: r,g,b的取值范围是0~255



--------------------------------------------------------------------------------


创建卡拉OK对象:
<object-integer> := CreateKaraokeObject;

例如: karaoke := CreateKaraokeObject;
注意: 在将来的版本中,创建卡拉OK字幕对象将被TitleObject.Create代替;





--------------------------------------------------------------------------------


设置变色边框颜色:
<object-integer>.AnimateBorderColor := <color-integer>;

例如: karaoke.AnimateBorderColor := RGB(255, 255, 255);
// white



--------------------------------------------------------------------------------

设置变色边框厚度:
<object-integer>.AnimateBorderThickness := <integer>;


例如: karaoke.AnimateBorderThickness := 1;




--------------------------------------------------------------------------------

设置变色的颜色值:
<object-integer>.AnimateColor := <color-integer>;


例如: karaoke.AnimateColor := RGB(0, 0, 255);
// blue



--------------------------------------------------------------------------------


设置相应的音频文件:
<object-integer>.AudioFileName := <string>;


例如: karaoke.AudioFileName := '*.wav';
// *表示与歌词脚本同名的文件



--------------------------------------------------------------------------------

设置颜色深度
<object-integer>.ColorDepth := <integer>;


例如: karaoke.ColorDepth := 24;

注意:颜色深度取值范围: 16,24,32,在插件中该设置无效



--------------------------------------------------------------------------------


设置当前位置(内部使用):
<object-integer>.Position := <integer>;
// 单位:毫秒
<object-integer>.Position := <string>;
// 格式:'mm:ss.mss'

例如: karaoke.Position := 35000;
// 将指针移到35秒处
例如: karaoke.Position := '35:00.000';
// 将指针移到35秒处




--------------------------------------------------------------------------------


设置播放的时间范围:
<object-integer>.StartPos := <integer>;
// 单位:毫秒
<object-integer>.EndPos := <integer>;
// 同上
例如: karaoke.StartPos := 24000;

例如: karaoke.StartPos := '24:00.000';





--------------------------------------------------------------------------------


第一行(上)对齐方式:
<object-integer>.FirstAlignment := <integer>;
// 0, 1, 2:左右中对齐

例如: karaoke.FirstAlignment := 2;
// 第一行歌词右对齐

缩进像素:
<object-integer>.FirstIndent := <integer>;


例如: karaoke.FirstIndent := 25;
// 与右边界保持25像素点距离< BR> 注意: 在单行模式中,只有第一行的设置有效,单行也就是第一行




--------------------------------------------------------------------------------


第二行(下)对齐方式:
<object-integer>.NextAlignment := <integer>;
// 0, 1, 2:左中右对齐

缩进像素:
<object-integer>.NextIndent := <integer>;




--------------------------------------------------------------------------------

字体设置:
<object-integer>.Font(<string>);
// 字型, 如'楷体_GB2312', '宋体'
<ojbect-integer>.Font(<string>, <integer>);
// 字型, 大小
<object-integer>.Font(<string>, <integer>, <boolean>);
// 字型, 大小, 是否加粗

例如: 设置为“楷体”字, 大小为20, 字体加粗
karaoke.Font('楷体_GB2312', 20, true);





--------------------------------------------------------------------------------


设置每秒帧数:
<object-integer>.FramesPerSec := <integer>;


例如: karaoke.FramesPerSec := 25;

注意: 设置帧率将影响字幕的平滑程度,一般情况下无需设置




--------------------------------------------------------------------------------


图象高度:
<object-integer>.Height := <integer>;


例如: karaoke.Height := 72;

注意: 当autosize设置为true时,图象高度是自动设置的



--------------------------------------------------------------------------------

设置是否以正常速度播放:
<object-integer>.KaraokeMode;


例如: karaoke.KaraokeMode := true;

注意: 内部使用,并且在输出视频时无效



--------------------------------------------------------------------------------

上下两行之间的像素数:
<object-integer>.LineSpace := <integer>;


例如: karaoke.LineSpace := 4;




--------------------------------------------------------------------------------

设置常规边框颜色:
<object-integer>.NormalBorderColor := <color-integer>;


例如: karaoke.NormalBorderColor := RGB(0, 0, 0);
// black



--------------------------------------------------------------------------------

设置常规边框厚度:
<object-integer>.NormalBorderThickness := <integer>;


例如: karaoke.NormalBorderThickness := 1;





--------------------------------------------------------------------------------


设置常规颜色:
<object-integer>.NormalColor;


例如: karaoke.NormalColor := RGB(255, 255, 255);
// white



--------------------------------------------------------------------------------

设置播放行数(1-2):
<object-integer>.Rows := <integer>;


例如: karaoke.Rows := 2;




--------------------------------------------------------------------------------

设置顶部边界值:
<object-integer>.TopMargin := <integer>;


例如: karaoke.TopMargin := 3;




--------------------------------------------------------------------------------

读取歌曲的时间长(内部使用):
<object-integer>.Duration;


例如: len := karaoke.Duration;




--------------------------------------------------------------------------------

设置透明颜色:
<object-integer>.TransparentColor := <color-integer>;


例如: karaoke.TransparentColor := RGB(0, 255, 0);

注意: 插件中无效



--------------------------------------------------------------------------------

设置图象宽度:
<object-integer>.Width := <integer>;


例如: karaoke.Width := 352;




--------------------------------------------------------------------------------

设置提示字颜色(特别适合对唱等场合):
<object-integer>.SetColor(<string>, <integer>);
例如,将女声歌词颜色设置为红色:
karaoke.SetColor('女', RGB(255,0,0));
在歌词中有"(女:)"标记的后面的所有歌词颜色都设置为红色,直到下一个提示字改变




--------------------------------------------------------------------------------


增加歌词行:
<object-integer>.Add(<string>, <string>, <string>, <string>);

参数说明:
1-开始时间, 格式是'mm:ss.mss';

2-结束时间, 同上
3-纯歌词文字
4-时值序列



--------------------------------------------------------------------------------

清除所有歌词描述(也就是Add增加的歌词行):
<object-integer>.Clear;





--------------------------------------------------------------------------------


设置歌词行变色前停留显示的时间(变色前该行提前显示的时间):
<object-integer>.TimeBeforeAnimate := <integer>;


例如: karaoke.TimeBeforeAnimate := 4000;




--------------------------------------------------------------------------------


设置歌词行变色完成后保持显示的时间(变色后该行保持显示的时间):
<object-integer>.TimeAfterAnimate := <integer>;


例如: karaoke.TimeAfterAnimate := 4000;




--------------------------------------------------------------------------------


设置时间偏移(把整个时间往前或后移动):
<object-integer>.TimeOffset := <integer>;
// 负数往前, 正数往后,单位:毫秒

例如: karaoke.TimeOffset := -3000;
// 把字幕出现的时间提前3秒

 
3cs,你好,请问能否在程序中来使用KBScripts?请高手指点!
 
不好意思,我现在也碰到了这个问题,正在问高手们呢?
我现在正在开发一个单机版的VOD点播系统,是基于MPEG4+MP3+字幕的,如有兴趣我们
可以合作!lujinhu@163.net
 
我自己开发有KSC文件的播放源码,播放效果很好,并有一套完善VOD系统,如果有意请与我联系
QQ:45039122
 
哈,我自己写了一个,很好玩的。
 
后退
顶部