import flash.filters.BlurFilter;
import flash.filters.*;
import flash.display.*;
import flash.external.*;
import flash.geom.Matrix;
import flash.geom.ColorTransform;
import flash.geom.Rectangle;
import flash.geom.Point;
import mx.video.*;
_focusrect = false;
Stage.align = "TL";
Stage.showMenu = false;
Stage.scaleMode = "noScale";
fscommand ("showMenu", false);
fscommand ("allowscale", false);
fscommand ("FullScreen", true);
System.useCodepage = true;
Button.prototype.tabEnabled = false;
MovieClip.prototype.tabEnabled = false;
#include "./action/PainterzPrototype.as"
var PainterzFlvPlayer:Object = new Object ();
var FV = PainterzFlvPlayer;
var startVolume:Number = _level0.getCookie("PainterzFlvPlayer", "startVolume");
var autoStart = _level0.getCookie("PainterzFlvPlayer", "autoStart");
var isLock = _level0.getCookie("PainterzFlvPlayer", "isLock");
var controlPos = _level0.getCookie("PainterzFlvPlayer", "controlPos");
FV.newFlvPlayer = function (targetMc:MovieClip, thumbUrls:String, movieUrls:String, linkUrls:String, FlvWidth:Number, FlvHeight:Number, startVolume:Number, autoStart:Boolean, isLock:Boolean, sliderView:Boolean, volumeView:Boolean, volumeStyle:Number, controlPos:Boolean, subject:String) : Void {
if(targetMc == undefined) var targetMc:MovieClip = _level0;
if(FlvWidth == undefined || FlvWidth < 300) var FlvWidth:Number = 320;
if(FlvHeight == undefined || FlvHeight < 200) var FlvHeight:Number = 240;
if(startVolume == undefined) var startVolume:Number = 50;
if(autoStart == undefined) var autoStart:Boolean = false;
if(isLock == undefined) var isLock:Boolean = false;
if(sliderView == undefined) var sliderView:Boolean = true;
if(volumeView == undefined) var volumeView:Boolean = true;
if(volumeStyle == undefined) var volumeStyle:Number = 1;
if(subject == undefined) var subject:String = "joyletter.com";
if(controlPos == undefined) var controlPos:Boolean = false;
if(movieUrls == undefined) {
trace("µ¿¿µ»ó ÁּҰ¡ ¾ø½À´ϴÙ"); return;
}
if(thumbUrls == undefined){
FV.thumbIs = false;
}else{
FV.thumbIs = true;
}
FV.FlvHeight = FlvHeight;
FV.FlvWidth = FlvWidth;
FV.screenMode = "normal";
FV.volumeStyle = volumeStyle;
FV.connection_nc.close();
FV.connection_nc = null;
FV.stream_ns = null;
FV.connection_nc = new NetConnection();
FV.connection_nc.connect(null);
FV.stream_ns = new NetStream(FV.connection_nc);
if(FV.currentVolume == undefined) FV.currentVolume = startVolume;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// filters
var iconFilter:DropShadowFilter = new DropShadowFilter(3, 45, 0x000000, 35, 3, 3, 1, 3, false, false, false);
var iconFilters:Array = new Array();
iconFilters.push(iconFilter);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// movie clip
var mc:MovieClip = targetMc;
var videoMc:MovieClip = mc.attachMovie("FlvPlayerMc", "FlvPlayerMc", mc.getNextHighestDepth(), {_x:1, _y:1});
FV.videoMc = videoMc;
var sound_mc:MovieClip = mc.createEmptyMovieClip("sound_mc", mc.getNextHighestDepth());
videoMc.adMovie._visible = false;
videoMc.replayMc._visible = false;
FV.audio_sound = new Sound(sound_mc);
var controlMc:MovieClip = videoMc.controlMc;
var controlMask:MovieClip = videoMc.controlMask;
var playBack:MovieClip = videoMc.playBack;
var my_video:MovieClip = videoMc.playBack.movie_mc.my_video;
var titleMc:MovieClip = videoMc.titleMc;
titleMc._visible = false;
var thumbMc:MovieClip = videoMc.thumbMc;
thumbMc._visible = false; thumbMc._x = thumbMc._y = 0;
var playMc:MovieClip = videoMc.playMc;
playMc._visible = false;
var replayMc:MovieClip = videoMc.replayMc;
replayMc.btn_replay.upColor = "0xFFFFFF";
replayMc.btn_replay.ovColor = "0x79FF82";
// variable
var isFirstPlay:Boolean = true;
var flvStatus:Boolean = false;
var titleOver:Boolean = false;
controlMc.posA = 50;
var controlMc_bg_alpha:Number = 75;
var onTextColor:String = "0xFFFFFF";
var offTextColor:String = "0x767676";
var marginLeft:Number = 0;
var berfferTime:Number = 5;
FV.videoDuration = 0;;
var isControlPress:Boolean = false;
// button
var btn_play:MovieClip = controlMc.btn_play;
var btn_stop:MovieClip = controlMc.btn_stop;
// slider
var HLine1:MovieClip = controlMc.HLine1;
var HLine2:MovieClip = controlMc.HLine2;
var sliderMc:MovieClip = controlMc.sliderMc;
var tracks:MovieClip = sliderMc.track_mc;
var track_bg:MovieClip = sliderMc.track_mc_bg;
var loaderMc:MovieClip = sliderMc.loaderMc.mc_mc;
var btn_slider:MovieClip = sliderMc.btn_slider;
var length_mc:MovieClip = sliderMc.length_mc;
var autoplay_mc:MovieClip = sliderMc.autoplay_mc;
var lock_mc:MovieClip = sliderMc.lock_mc;
var buffer_mc:MovieClip = sliderMc.buffer_mc;
var txt_volume:MovieClip = sliderMc.txt_volume; txt_volume._visible = false;
// volume set
if(volumeStyle == 1){
controlMc.volume_set2._visible = false;
var volume_set:MovieClip = controlMc.volume_set1;
var btn_volume_up:MovieClip = volume_set.btn_volume_up;
var btn_volume_down:MovieClip = volume_set.btn_volume_down;
var btn_volume_mute:MovieClip = volume_set.btn_volume_mute;
var volumeText:String = "VOLUME : ";
var volumeTextEnd:String = "%";
}else if(volumeStyle == 2){
var volumeText:String = "VOLUME : ";//"";
var volumeTextEnd:String = "%";
controlMc.volume_set1._visible = false;
var volume_set:MovieClip = controlMc.volume_set2;
var btn_volume_up:MovieClip = volume_set.btn_volume_up;
var btn_volume_down:MovieClip = volume_set.btn_volume_down;
var btn_volume_mute:MovieClip = volume_set.btn_volume_mute;
var volumeSlider:MovieClip = volume_set.btn_slider;
var volumeTrack:MovieClip = volume_set.track_mc;
volumeTrack.track_middle._width = 50;
FV.soundSpace = (volumeTrack.track_middle._width + 14);
volumeSlider.posX = volumeSlider._x = 10;
volumeTrack.track_right._x = volumeTrack.track_middle._x + volumeTrack.track_middle._width;
btn_volume_mute._x = volumeTrack._width - btn_volume_mute._width + 4;
volumeSlider.filters = iconFilters;
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// size & align set
function setPlayer() {
controlMc.bg._width = controlMask._width = Math.floor(FV.FlvWidth);
controlMc.bg._height = controlMask._height = Math.floor(50);
controlMc.bg._alpha = controlMc_bg_alpha;
track_bg._alpha = 50;
controlMc._alpha = 0;
if(controlPos == true){
controlMc.posY = 0;
controlMc._y = controlMc.posY;
}else{
controlMc.posY = Math.floor(FV.FlvHeight - controlMc.bg._height);
controlMc._y = controlMc.posY;
}
tracks.cacheAsBitmap = true;
loaderMc.cacheAsBitmap = true;
controlMc.cacheAsBitmap = true;
controlMask.cacheAsBitmap = true;
for(var i in controlMc){
if(typeof(controlMc[i]) == MovieClip){
controlMc[i].cacheAsBitmap = true;
}
}
btn_play._x = 10;
btn_stop._x = Math.floor(btn_play._x + btn_play._width + 5);
if(volumeView == true){
volume_set._x = Math.floor(FV.FlvWidth - (volume_set._width + 10));
HLine2._x = volume_set._x - HLine2._width;
volume_set.txt_volume.txt.html = true;
volume_set.txt_volume.txt.htmlText = "" + volumeText + FV.currentVolume + volumeTextEnd + "";
}else{
HLine2._visible = false;
volume_set._visible = false;
}
if(sliderView == true) {
btn_slider.filters = iconFilters;
HLine1._x = Math.floor(btn_stop._x + btn_stop._width);
marginLeft = HLine1._x + HLine1._width;
sliderMc._x = marginLeft;
if(volumeView == true){ // if volume view
tracks.track_middle._width = Math.floor(FV.FlvWidth - (marginLeft + (FV.FlvWidth - HLine2._x + HLine2._width + (tracks.track_right._width/2))));
tracks.track_right._x = Math.floor(tracks.track_middle._x + tracks.track_middle._width);
}else{
tracks.track_middle._width = Math.floor(FV.FlvWidth - (marginLeft + 35));
tracks.track_right._x = Math.floor(tracks.track_middle._x + tracks.track_middle._width);
}
track_bg.track_middle._width = tracks.track_middle._width;
track_bg.track_right._x = tracks.track_right._x;
loaderMc.mc_middle._width = Math.floor(tracks.track_middle._width + tracks.track_left._width + tracks.track_right._width);
loaderMc.mc_right._x = -loaderMc.mc_right._width;
var txtTop:Number = tracks._y + tracks._height - 2;
var txtSpace:Number = 5;
length_mc._x = 7; length_mc._y = autoplay_mc._y = lock_mc._y = buffer_mc._y = txtTop;
autoplay_mc._x = length_mc._x + length_mc._width + txtSpace;
lock_mc._x = autoplay_mc._x + autoplay_mc._width + txtSpace;
buffer_mc._x = lock_mc._x + lock_mc._width + txtSpace;
if(autoStart == true){
autoplay_mc.btn_on.enabled = false;
autoplay_mc.btn_on.valueTxt.textColor = onTextColor;
autoplay_mc.btn_off.valueTxt.textColor = offTextColor;
}else{
autoplay_mc.btn_off.enabled = false;
autoplay_mc.btn_off.valueTxt.textColor = onTextColor;
autoplay_mc.btn_on.valueTxt.textColor = offTextColor;
}
if(isLock == true){
lock_mc.btn_on.enabled = false;
lock_mc.btn_on.valueTxt.textColor = onTextColor;
lock_mc.btn_off.valueTxt.textColor = offTextColor;
}else{
lock_mc.btn_off.enabled = false;
lock_mc.btn_off.valueTxt.textColor = onTextColor;
lock_mc.btn_on.valueTxt.textColor = offTextColor;
}
if(tracks.track_middle._width < 290) {
length_mc._visible = false;
autoplay_mc._visible = false;
lock_mc._visible = false;
buffer_mc._visible = false;
}
}else{
HLine1._visible = false;
sliderMc._visible = false;
marginLeft = Math.floor(btn_stop._x + btn_stop._width + 5);
}
btn_slider._x = btn_slider.posX = Math.floor(tracks.track_middle._x);
tracks.setMask(loaderMc);
controlMc.setMask(controlMask);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// title
titleMc.title_mc.cacheAsBitmap = true;
titleMc.mask_mc.cacheAsBitmap = true;
titleMc.title_mc.txt._y = 6;
titleMc.title_mc.txt.autoSize = true;
titleMc.title_mc.txt.html = true;
titleMc.title_mc.txt.htmlText = " "+subject+"";
if(titleMc.title_mc.txt._width > FV.FlvWidth-10) {
titleMc.title_mc.txt.autoSize = false;
titleMc.title_mc.txt._width = FV.FlvWidth-10;
}
titleMc.title_mc.bg._width = titleMc.mask_mc._width = FV.FlvWidth;
titleMc.title_mc.bg._height = titleMc.mask_mc._height = titleMc.title_mc.txt._height + 10;
titleMc.title_mc.bg._alpha = controlMc_bg_alpha;
titleMc.title_mc.setMask(titleMc.mask_mc);
titleMc.mask_mc._alpha = 0;
titleMc._visible = true;
tracks.setMask(loaderMc);
}
setPlayer();
playMc.bg._alpha = 30;
playMc.bg._width = FV.FlvWidth;
playMc.bg._height = FV.FlvHeight;
playMc._x = playMc.bg._x = playMc._y = playMc.bg._y = 0;
playMc.btn_play._x = Math.floor((playMc.bg._width - playMc.btn_play._width)/2);
playMc.btn_play._y = Math.floor((playMc.bg._height - playMc.btn_play._height)/2);
playBack.useHandCursor = false;
playBack.onRelease = null;
var isPlayBackOver:Boolean = false;
playBack.onRollOver = function () {
if(isLock == false){
if(controlPos == true){
controlMc.tweenPosition("", 0, 10, "easeOutExpo");
}else{
controlMc.tweenPosition("", Math.floor(FV.FlvHeight-controlMc.bg._height), 10, "easeOutExpo");
}
controlMc.tweenAlpha(100, 10, "easeOutExpo", startLoop, -5, playBack);
}else{
controlMc.tweenAlpha(100, 10, "easeOutExpo", startLoop, -5, playBack);
}
if(controlMc._y < (FV.FlvHeight/2)){
titleMc._y = controlMc.bg._height;
}else{
titleMc._y = Math.floor(FV.FlvHeight-controlMc.bg._height-titleMc._height);
}
titleMc.mask_mc.tweenAlpha(100, 20, "easeOutExpo");
};
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// video space calc
FV.videoSpace = Math.floor(tracks.track_middle._width + tracks.track_right._width - 10);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// size & align set end
my_video.autoSize = false;
my_video.autoPlay = autoStart;
my_video.autoRewind = autoStart;
my_video.maintainAspectRatio = false;
my_video._width = playBack.bg._width = controlMask._width = Math.floor(FlvWidth);
my_video._height = playBack.bg._height = controlMask._height = Math.floor(FlvHeight);
length_mc.valueTxt.text = "00:00' - 00:00'";
FV.stream_ns.setBufferTime(berfferTime);
my_video.attachVideo(FV.stream_ns);
if(FV.FlvWidth < 570 && FV.FlvHeight < 390){
my_video.smoothing = false; // ´ٸ¥¸ð¼ÇÀÌ °̳ª ´À·ÁÁü¤ФÐ
}else{
my_video.smoothing = false;
}
sound_mc.attachAudio(FV.stream_ns);
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// button action
controlMc.bg.onRollOver = null;
controlMc.bg.useHandCursor = false;
controlMc.bg.onPress = function () {
isControlPress = true;
titleMc.mask_mc.tweenAlpha(0, 10, "easeOutExpo");
this._parent.tweenAlpha(controlMc.posA, 10, "easeOutExpo");
startDrag(this._parent, false, 0, 0, 0, Math.floor(FV.FlvHeight-this._height));
};
controlMc.bg.onRelease = controlMc.bg.onReleaseOutside = function () {
isControlPress = false;
this._parent.stopDrag();
delete this.onEnterFrame;
if(this._parent._y < Math.floor((FV.FlvHeight - this._height)/2)){
this._parent.tweenPosition("", 0, 10, "easeOutExpo");
controlPos = true;
}else{
this._parent.tweenPosition("", Math.floor(FV.FlvHeight-this._height), 10, "easeOutExpo");
controlPos = false;
}
this._parent.tweenAlpha(100, 10, "easeOutExpo");
_level0.setCookie("PainterzFlvPlayer", "controlPos", controlPos);
};
autoplay_mc.btn_on.onRelease = autoplay_mc.btn_off.onRelease = function () {
playViewSound();
if(autoStart == false){
autoplay_mc.btn_on.enabled = false;
autoplay_mc.btn_off.enabled = true;
autoplay_mc.btn_on.valueTxt.textColor = onTextColor;
autoplay_mc.btn_off.valueTxt.textColor = offTextColor;
autoStart = true;
}else{
autoplay_mc.btn_on.enabled = true;
autoplay_mc.btn_off.enabled = false;
autoplay_mc.btn_off.valueTxt.textColor = onTextColor;
autoplay_mc.btn_on.valueTxt.textColor = offTextColor;
autoStart = false;
}
_level0.setCookie("PainterzFlvPlayer", "autoStart", autoStart);
};
lock_mc.btn_on.onRelease = lock_mc.btn_off.onRelease = function () {
playViewSound();
if(isLock == false){
lock_mc.btn_on.enabled = false;
lock_mc.btn_off.enabled = true;
lock_mc.btn_on.valueTxt.textColor = onTextColor;
lock_mc.btn_off.valueTxt.textColor = offTextColor;
isLock = true;
}else{
playBack.onRollOver();
lock_mc.btn_on.enabled = true;
lock_mc.btn_off.enabled = false;
lock_mc.btn_off.valueTxt.textColor = onTextColor;
lock_mc.btn_on.valueTxt.textColor = offTextColor;
isLock = false;
}
delete playBack.onEnterFrame;
_level0.setCookie("PainterzFlvPlayer", "isLock", isLock);
};
btn_stop.onRollOver = function(){
if(flvStatus == false) {
this.useHandCursor = false;
}else{
playOverSound();
this.useHandCursor = true;
this.setGlowFilter(5);
}
};
btn_stop.onRollOut = btn_stop.onReleaseOutside = function(){ this.filters = null; };
btn_stop.onRelease = function(){
if(flvStatus == false) return;
flvStatus = false;
playViewSound();
btn_sliderFn(false);
FV.stream_ns.pause(true);
FV.stream_ns.seek(0);
length_mc.valueTxt.text = "0:00' - 0:00'";
buffer_mc.txt_length_value.text = "0";
buffer_mc.txt_fps_value.text = "0";
btn_slider.tweenPosition(btn_slider.posX, "", 6, "easeOutExpo");
btn_play.mc_mc.gotoAndPlay("on");
this.filters = null;
//tracks.currentBar._width = 0;
};
// track slider
btn_slider.isDragEnd = false;
btn_slider.onRollOver = function () {
if(flvStatus == false) {
this.useHandCursor = false;
}else{
this.useHandCursor = true;
this.gotoAndPlay(2);
}
};
btn_slider.onRollOut = function () { if(flvStatus == true) this.gotoAndPlay("out"); };
btn_slider.onPress = function(){
if(flvStatus == false) return;
btn_sliderFn(false);
startDrag(this, false, this.posX, this._y, Math.floor(FV.videoSpace + this.posX), this._y);
videoPause();
var i:Number = 0;
this.onEnterFrame = function(){
i++;
if(i % 36){
var currentTime:Number = FV.videoDuration * ((this._x - this.posX) / FV.videoSpace);
FV.stream_ns.seek(currentTime);
// total running time
var totalMinutes:Number = Math.floor(FV.videoDuration/60);
var totalSeconds:Number = Math.floor(FV.videoDuration%60);
totalMinutes = (totalMinutes<10) ? "0"+totalMinutes:totalMinutes;
totalSeconds = (totalSeconds<10) ? "0"+totalSeconds:totalSeconds;
// now play time
var minutes:Number = Math.floor(FV.stream_ns.time/60);
var seconds:Number = Math.floor(FV.stream_ns.time%60);
minutes = (minutes<10) ? "0"+minutes:minutes;
seconds = (seconds<10) ? "0"+seconds:seconds;
length_mc.valueTxt.text = minutes+":"+seconds+"' - "+ totalMinutes+":"+totalSeconds+"'";
}
if(Math.floor(this._x) > Math.floor(FV.videoSpace + this.posX)){
this.onRollOut();
this.onRelease();
this.isDragEnd = true;
}
tracks.currentBar._width = this._x;
};
};
btn_slider.onRelease = btn_slider.onReleaseOutside = function(){
if(flvStatus == false) return;
if(this.isDragEnd == false){
delete this.onEnterFrame;
stopDrag();
var currentTime:Number = FV.videoDuration * ((this._x - this.posX) / FV.videoSpace);
FV.stream_ns.seek(currentTime);
btn_sliderFn(true);
videoPlay();
if(btn_play.mc_mc._currentframe == 1){
btn_play.mc_mc.gotoAndPlay("off");
}
}else{
this.isDragEnd = false;
}
btn_stop.gotoAndStop(1);
};
// tarcks drag
tracks.onRollOver = function () {
(flvStatus == false) ? this.useHandCursor = false: this.useHandCursor = true;
};
tracks.onRelease = tracks.onReleaseOutside = function(){
if(flvStatus == false) return;
if(this.isDragEnd == false || this.isDragEnd == undefined){
delete this.onEnterFrame;
stopDrag();
var currentTime:Number = FV.videoDuration * ((this._xmouse - 20) / FV.videoSpace);
FV.stream_ns.seek(currentTime);
btn_sliderFn(true);
videoPlay();
if(btn_play.mc_mc._currentframe == 1){
btn_play.mc_mc.gotoAndPlay("off");
}
if(this._xmouse < loaderMc.mc_right._x){
btn_slider.tweenPosition(Math.floor(this._xmouse), "", 6, "easeOutExpo");//, videoPlay, 0);
}else{
btn_slider.tweenPosition(Math.floor(loaderMc.mc_right._x), "", 6, "easeOutExpo");//, videoPlay, 0);
}
}else{
this.isDragEnd = false;
}
btn_stop.gotoAndStop(1);
};
// volume mute
btn_volume_mute.onRollOver = function () { this.gotoAndPlay(2); this.setGlowFilter(3); playOverSound();};
btn_volume_mute.onRollOut = btn_volume_mute.onReleaseOutside = function () { this.gotoAndPlay("out"); this.filters = null; };
btn_volume_mute.onRelease = function(){
this.onRollOut();
playViewSound();
if(this.mc_mc._currentframe == 1){
FV.prevVolume = FV.currentVolume;
if(volumeSlider != undefined){
volumeSlider.tweenPosition(volumeSlider.posX, "", 10, "easeOutExpo");
//volumeCurrentBar.tweenSize(0, "", 10, "easeOutExpo");
}
this.count = FV.audio_sound.getVolume();
this.onEnterFrame = function(){
FV.audio_sound.setVolume(this.count);
volume_set.txt_volume.txt.htmlText = "" + volumeText + "" + this.count + "" + volumeTextEnd + "";
if(this.count == 0) delete this.onEnterFrame;
this.count--;
}
this.mc_mc.gotoAndPlay("off");
}else{
if(FV.prevVolume == undefined){
if(volumeSlider != undefined){
FV.prevVolume = Math.floor(((volumeSlider._x)/FV.soundSpace)*100);
}else{
FV.prevVolume = FV.currentVolume;
}
}
if(volumeSlider != undefined){
volumeSlider.destX = Math.floor(FV.soundSpace * (100-(100-FV.prevVolume)) / 100);
if(volumeSlider.destX < volumeSlider.posX) volumeSlider.destX = volumeSlider.posX;
volumeSlider.tweenPosition(volumeSlider.destX, "", 10, "easeOutExpo");
//volumeCurrentBar.tweenSize(volumeSlider.destX, "", 10, "easeOutExpo");
}
this.count = FV.audio_sound.getVolume();
this.onEnterFrame = function(){
FV.audio_sound.setVolume(this.count);
volume_set.txt_volume.txt.htmlText = "" + volumeText + "" + this.count + "" + volumeTextEnd + "";
if(this.count == FV.prevVolume) delete this.onEnterFrame;
this.count++;
};
this.mc_mc.gotoAndPlay("on");
}
};
// volume +, -
btn_volume_up.onRollOver =btn_volume_down.onRollOver = function () { this.gotoAndPlay(2); this.setGlowFilter(3); playOverSound();};
btn_volume_up.onRollOut = btn_volume_down.onRollOut = function () { if(this._currentframe>1) { this.gotoAndPlay("out"); } this.filters = null; };
btn_volume_up.onPress = function () {
playViewSound();
delete btn_volume_mute.onEnterFrame;
this.count = FV.audio_sound.getVolume();
if(this.count >= 100) return;
this.gotoAndPlay("press");
this.onEnterFrame = function(){
if(this.count < 101){
FV.audio_sound.setVolume(this.count);
FV.currentVolume = this.count;
volume_set.txt_volume.txt.htmlText = "" + volumeText + "" + this.count + "" + volumeTextEnd + "";
}else{ delete this.onEnterFrame; this.onRelease(); }
this.count++;
};
};
btn_volume_down.onPress = function () {
playViewSound();
delete btn_volume_mute.onEnterFrame;
this.count = FV.audio_sound.getVolume();
if(this.count <= 0) return;
this.gotoAndPlay("press");
this.onEnterFrame = function(){
if(this.count > -1){
FV.audio_sound.setVolume(this.count);
FV.currentVolume = this.count;
volume_set.txt_volume.txt.htmlText = "" + volumeText + "" + this.count + "" + volumeTextEnd + "";
}else{ delete this.onEnterFrame; this.onRelease(); }
this.count--;
};
};
btn_volume_up.onRelease = btn_volume_up.onReleaseOutside = btn_volume_down.onRelease = btn_volume_down.onReleaseOutside = function () {
delete this.onEnterFrame; this.onRollOut();
_level0.setCookie("PainterzFlvPlayer", "startVolume", FV.currentVolume);
};
// first run
/*
a = 10; // ºҷý½½¶óÀ̴õ _width
b = 46; // º¼·ýƮ·¢¹Ù _width
c = 90; // ÇöÀ纼·ý
d = (100-(100-c)) / 100; // º¼·ýÀÇ Æۼ¾Å×ÀÌÁö
s = b-a; //FV.soundSpace
z = Math.floor(s*d); // º¼·ýƮ·¢ÀÇ ¿òÁ÷ÀϼöÀִ °Ÿ®¿¡ º¼·ýÆۼ¾Å×ÀÌÁö¸¦ °öÇѴÙ~
*/
volumeSlider._x = volumeSlider.posX;
volumeSlider.destX = Math.floor(FV.soundSpace * (100-(100-FV.currentVolume)) / 100);
volumeSlider.destX += volumeSlider.posX;
if(volumeSlider.destX < volumeSlider.posX) volumeSlider.destX = volumeSlider.posX;
if(volumeSlider.destX > FV.soundSpace) volumeSlider.destX = FV.soundSpace;
volumeSlider.tweenPosition(volumeSlider.destX, "", 30, "easeInOutExpo");
//volumeSlider.tweenPosition(volumeSlider.destX + volumeSlider.posX, "", 30, "easeInOutExpo");
// volume slider
volumeSlider.onRollOver =function () { this.gotoAndPlay(2); this.setGlowFilter(0); };
volumeSlider.onRollOut = function () { if(this._currentframe>1) { this.gotoAndPlay("out"); } this.filters = null; };
volumeSlider.onPress = function(){
delete btn_volume_mute.onEnterFrame;
if(btn_volume_mute._currentframe > 1){
btn_volume_mute.gotoAndPlay("out");
btn_volume_mute.mc_mc.gotoAndPlay("on");
}
startDrag(this, false, this.posX, this._y, FV.soundSpace, this._y);
volumeTrack.onEnterFrame = function(){
//this._width = volumeSlider._x;
FV.currentVolume = Math.floor((Math.floor(volumeSlider._x-volumeSlider.posX)/FV.soundSpace)*(100+19));
FV.audio_sound.setVolume(FV.currentVolume);
volume_set.txt_volume.txt.htmlText = "" + volumeText + "" + FV.currentVolume + "" + volumeTextEnd + "";
};
};
volumeSlider.onRelease = volumeSlider.onReleaseOutside = function(){
delete volumeTrack.onEnterFrame; this.onRollOut(); stopDrag();
_level0.setCookie("PainterzFlvPlayer", "startVolume", FV.currentVolume);
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// onMetaData & onStatus
// prop - audiosize:string, audiodatarate:string, audiocodecid:string, videosize:string, framerate:string, videodatarate:string, height:string, width:string, videocodecid:string, canSeekToEnd:string, metadatacreator:string, datasize:string, lasttimestamp:string, duration:string
FV.stream_ns.onMetaData = function(infoObject:Object){
trace("¦£¦¡[ FLV File Infomation. start ]¦¡¦¡¦¡¦¡¦¡¦¡");
for (var propName:String in infoObject) trace("¦¢ "+propName + " = " + infoObject[propName]);
trace("¦¦¦¡[ FLV File Infomation. end ]¦¡¦¡¦¡¦¡¦¡¦¡\n");
FV.videoDuration = infoObject.duration;
};
// prop - level:string, code:string
FV.stream_ns.onStatus = function(infoObject:Object){
trace("¦£¦¡[ FLV File Status Infomation. start ]¦¡¦¡¦¡¦¡¦¡¦¡");
for (var propName:String in infoObject) trace("¦¢ "+propName + " = " + infoObject[propName]);
trace("¦¦¦¡[ FLV File Status Infomation. end ]¦¡¦¡¦¡¦¡¦¡¦¡\n");
//trace("onStatus : " + infoObject.code);
var currentTime:Number = FV.videoDuration * ((btn_slider._x - btn_slider.posX) / FV.videoSpace);
if((infoObject.code == "NetStream.Buffer.Empty" || infoObject.code == "NetStream.Play.Stop") && Math.floor(currentTime) == Math.floor(FV.videoDuration)){
btn_sliderFn(false);
this.seek(0);
length_mc.valueTxt.text = "00:00' - 00:00'";
buffer_mc.txt_length_value.text = "0";
buffer_mc.txt_fps_value.text = "0";
btn_slider._x = btn_slider.posX;
videoPlay();
if(autoStart == false || autoStart == true){ // ÀϴÜ Á¤Áö ÈÄ ±¤°í ¿µ»ó ½ÇÇà
btn_stop.onRelease();
flvStatus = false;
if(!isEmptyChk(adMovieUrls)){
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ad movie view
}else{
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// replay view
replayMc._visible = true;
replayMc.btn_replay.onRollOver = replayMc.btn_copy.onRollOver = function () { this.gotoAndPlay(2); this.txt.textColor = this.ovColor; playOverSound(); };
replayMc.btn_replay.onRollOut = replayMc.btn_copy.onRollOut = replayMc.btn_replay.onReleaseOutside = replayMc.btn_copy.onReleaseOutside = function () { this.gotoAndPlay("out"); this.txt.textColor = this.upColor; };
replayMc.btn_replay.onRelease = function () { playViewSound(); titleMc._visible = true; playBack._visible = true; replayMc._visible = false; adMovie._visible = false; controlMc.btn_play.onRelease(); };
replayMc.bg._alpha = 75; replayMc._x = 0;
replayMc.bg._width = Math.floor(FV.FlvWidth);
replayMc.btn_replay._x = Math.floor((FV.FlvWidth - replayMc.btn_replay._width)/2);
//replayMc.btn_replay._x = Math.floor((FV.FlvWidth - ((replayMc.btn_replay._width * 2) + 10))/2);
replayMc.btn_copy._x = replayMc.btn_replay._x + replayMc.btn_replay._width + 10;
if(controlMc._y < (FV.FlvHeight/2)){ replayMc._y = Math.floor(FV.FlvHeight - replayMc._height); }else{ replayMc._y = Math.floor(FV.FlvHeight - (replayMc._height + controlMc.bg._height)); }
if(FV.thumbIs == true){
playBack._visible = false; thumbMc._visible = true; thumbMc._alpha = 0;
thumbMc.tweenAlpha(100, 20, "easeInOutExpo");
}else{
playBack._visible = true;
}
}
}
//trace("FLV Stop!!");
}
if(isFirstPlay == true){
FV.audio_sound.setVolume(FV.currentVolume);
FlvPlayerFirstRun();
}
};
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// FlvPlayerFirstRun
function FlvPlayerFirstRun(){
controlMc.i = 0;
controlMc.onEnterFrame = function () {
if(controlMc.i == 1){
controlMc.tweenAlpha(50, 10, "easeOutExpo");
}else if(controlMc.i > 15){
if(autoStart == true){
btn_play.gotoAndStop(1);
btn_play.mc_mc.gotoAndPlay("off");
}
delete this.onEnterFrame;
}
controlMc.i++;
};
if(isFirstPlay == true){
if(autoStart != true) btn_play.isFirst = true;
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// play button
btn_play.onRollOver = function(){ this.gotoAndPlay(2); this.setGlowFilter(5); playOverSound();};
btn_play.onRollOut = btn_play.onReleaseOutside = function(){ this.gotoAndPlay("out"); this.filters = null; };
btn_play.onRelease = function(){
playViewSound();
if(thumbMc._visible == true){
thumbMc.tweenAlpha(20, 20, "easeInOutExpo", thumbVisible, 0, false);
}
if(playMc._visible == true) playMc._visible = false;
if(this.isFirst == true) {
FV.stream_ns.play(movieUrls);
FV.audio_sound.setVolume(FV.currentVolume);
this.isFirst = false;
loadProc(FV.stream_ns);
}
flvStatus = true;
if(this.mc_mc._currentframe == 10){
videoPause();
this.mc_mc.gotoAndPlay("on");
}else if(this.mc_mc._currentframe == 1){
videoPlay();
this.mc_mc.gotoAndPlay("off");
}
this.filters = null;
};
playMc.btn_play.onRollOver = function () { this.setGlowFilter(3); this._parent.bg.tweenAlpha(0, 20, "easeOutExpo"); };
playMc.btn_play.onRollOut = playMc.btn_play.onReleaseOutside = function () { this.filters = null; this._parent.bg.tweenAlpha(30, 20, "easeOutExpo");};
playMc.btn_play.onRelease = function () {
btn_play.onRelease();
playMc._visible = false;
};
}
isFirstPlay = false;
loadProc(FV.stream_ns);
}
function startLoop(which) {
var whichID:Number = 0;
which.onEnterFrame = function () {
if (!which.hitTest (_root._xmouse, _root._ymouse, true) && isControlPress == false) {
whichID++;
if(whichID == 2){
titleMc.mask_mc.tweenAlpha(0, 20, "easeInOutExpo");
}else if(whichID > 36){
reset (which);
isPlayBackOver = false;
delete this.onEnterFrame;
}
}
};
};
function reset (which) {
if(controlMc.posA == undefined) controlMc.posA = 0;
if(isLock == false){
if(controlPos == true){
controlMc.tweenPosition("", Math.floor(0-(controlMc.bg._height+10)), 10, "easeInExpo");
}else{
controlMc.tweenPosition("", Math.floor(FV.FlvHeight+controlMc.bg._height), 10, "easeInExpo");
}
}else{
controlMc.tweenAlpha(controlMc.posA, 10, "easeOutExpo");
}
};
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// video play
function btn_sliderFn(modes:Boolean):Void{
if(modes == true){
btn_slider.onEnterFrame = function () {
videoControl(FV.stream_ns);
};
}else{
delete btn_slider.onEnterFrame;
}
};
function videoPlay():Void{
FV.stream_ns.pause(false);
btn_sliderFn(true);
videoControl();
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// video pause
function videoPause():Void{
btn_sliderFn(false);
FV.stream_ns.pause(true);
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// video control
function videoControl(my_ns:NetStream):Void{
var bufferPct:Number = Math.min(Math.round(my_ns.bufferLength/my_ns.bufferTime*100),100);
if(bufferPct < 100) {
buffer_mc.txt_length_value.text = my_ns.bufferLength;
buffer_mc.txt_fps_value.text = Math.floor(my_ns.currentFps);
// "\nBufferTime: "+my_ns.bufferTime+" / Buffer:"+bufferPct+"%";
}else{
buffer_mc.txt_length_value.text = my_ns.bufferLength;
buffer_mc.txt_fps_value.text = Math.floor(my_ns.currentFps);
}
// total running time
var totalMinutes:Number = Math.floor(FV.videoDuration/60);
var totalSeconds:Number = Math.floor(FV.videoDuration%60);
totalMinutes = (totalMinutes<10) ? "0"+totalMinutes:totalMinutes;
totalSeconds = (totalSeconds<10) ? "0"+totalSeconds:totalSeconds;
// now play time
var minutes:Number = Math.floor(my_ns.time/60);
var seconds:Number = Math.floor(my_ns.time%60);
minutes = (minutes<10) ? "0"+minutes:minutes;
seconds = (seconds<10) ? "0"+seconds:seconds;
length_mc.valueTxt.text = minutes+":"+seconds+"' - "+ totalMinutes+":"+totalSeconds+"'";
// slider position update
var currentPct:Number = my_ns.time/FV.videoDuration;
btn_slider._x = btn_slider.posX + ((FV.videoSpace) * currentPct);
tracks.currentBar._width = btn_slider._x;
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// flv loading process
function loadProc(my_ns) {
loaderMc.onEnterFrame = function() {
var percentLoaded:Number = Math.floor ((my_ns.bytesLoaded / my_ns.bytesTotal) * 100);
var tmp = Math.floor(this.mc_middle.xScale * (100-(100-percentLoaded)) / 100);
this.mc_middle._xscale = tmp;
this.mc_right._x = this.mc_middle._width - 0.5;
if(this.mc_middle._xscale == this.mc_middle.xScale){
delete this.onEnterFrame;
}
};
}
function playStart(){
if(autoStart == true){
thumbMc.tweenAlpha(0, 20, "easeInOutExpo", playStart2, 6);
playMc.tweenAlpha(0, 20, "easeInOutExpo");
}else{
FlvPlayerFirstRun();
}
}
function playStart2(){
thumbMc._visible = false;
if(autoStart == true){
flvStatus = true;
FV.stream_ns.play(movieUrls);
btn_play.isFirst = false;
btn_sliderFn(true);
playMc.tweenAlpha(0, 20, "easeInOutExpo", plaMcVisibleFn, 0);
loadProc(FV.stream_ns);
}else{
FlvPlayerFirstRun();
}
}
function plaMcVisibleFn(){
playMc._visible = false;
}
function thumbVisible(modes){
thumbMc._visible = modes;
}
if(sliderView == true) {
loaderMc.mc_middle._xscale = loaderMc.mc_middle.xScale = Math.floor (loaderMc.mc_middle._xscale);
}
//////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////////
// ¼¶³×ÀÏÀÌ Àִٸé
if(!isEmptyChk(thumbUrls)){
playMc._visible = true;
var imgListener:Object = new Object();
imgListener.onLoadStart = function(mc:MovieClip) {
};
imgListener.onLoadProgress = function(mc:MovieClip, bytesLoaded:Number, bytesTotal:Number):Void {
};
imgListener.onLoadInit = function(mc:MovieClip) {
mc._parent._alpha = 0;
var bmc:MovieClip = mc._parent.createEmptyMovieClip ("bmc", mc._parent.getNextHighestDepth ());
var bitmap:BitmapData = new BitmapData (mc._width, mc._height, true);
bmc.attachBitmap (bitmap, bmc.getNextHighestDepth () , "auto", true);
bitmap.draw (mc);
bmc._width = FV.FlvWidth; bmc._height=FV.FlvHeight;
mc._visible = false;
thumbMc._visible = true;
mc._parent.tweenAlpha(100, 20, "easeInOutExpo", playStart, 20);
ICL.unloadClip(mc);
mc.removeMovieClip();
playBack.onRollOver();
};
imgListener.onLoadError = function(mc:MovieClip, errorCode:String, httpStatus:Number) { trace("¼¶³×ÀÏ ÆÄÀÏÀ» ºҷ¯¿À´µ¥ ½ÇÆÐÇϿ´½À´ϴÙ"); };
var ICL:MovieClipLoader = new MovieClipLoader();
ICL.addListener(imgListener);
thumbMc.createEmptyMovieClip ("thumb_mc", thumbMc.getNextHighestDepth ());
ICL.loadClip(thumbUrls, thumbMc.thumb_mc);
}else {
if(autoStart == true){
flvStatus = true;
FV.stream_ns.play(movieUrls);
if(movieUrls.substr(0, 4) == "http"){
FV.stream_ns.pause(true);
}
videoPlay();
loadProc(FV.stream_ns);
}else{
playMc._visible = false;
FlvPlayerFirstRun();
}
}
};
function isEmptyChk(e) {
if (e != null && e != "null" && e != -1 && e != "-1" && e != undefined && e != "undefined" && e != "") {
return false;
} else {
return true;
}
if (isNaN (e)) {
return true;
}
}