2013-07-29 7 views
0

나는 두 포함 된 FLV 동영상과 플래시 동영상이 있습니다. 내가하고 싶은 것은 페이지가로드되고 동영상이 두 동영상 클립을 통해 재생 된 다음 두 번째 동영상의 끝 부분에 도달하면 전환되어 두 번째 클립이 시작될 때까지 역으로 재생 된 다음 재생됩니다. 다시 말하자면 본질적으로 타임 라인의 두 번째 절반을위한 "핑퐁 (ping-pong)"루프입니다.는 방법 루프를 뒤로하고 앞으로 플래시 동영상의 일부 ("핑퐁"루프)

나는 몇 가지 솔루션을 검토 한 결과,하지만이 버튼을 사용하기 위해 모든있어 너무 복잡한 것 같다. 내가하고 싶은 일이 아주 간단하고 몇 줄의 코드 만 있으면되기를 바랍니다.

는 여기에 현재 함께 일하고 있어요,하지만 작동하지 않습니다 (내가 AS를 사용하기 때문에 오랜 시간이, 그래서 내가 뭔가를 분명 놓친 확신)거야. 프레임 (171)은 제 2 클립이 시작되는 곳이고, 프레임 (230)은 영화가 끝나는 곳이다.

var direction:String = "forward"; 

_root.onEnterFrame = function() 
{ 
    if (direction == "forward") 
    { 
     if (_root._currentframe == _root._totalframes) 
     { 
      trace("switch to back") 
      _root.stop() 
      direction = "back"; 
     } 
    } 
    else if (direction == "back") 
    { 
     if (_root._currentframe == 171) 
     { 
      trace("switch to forward") 
      direction = "forward"; 
      _root.play(); 
     } 
     else 
      _root.prevFrame(); 
    } 
} 
+0

은 또한 당신이 볼 필요 : 주 비디오 타임 라인에 1 프레임 무비 클립에 코드를 삽입하지 : 아래

function mcPlay(_root, 171) { if (f == 230) { f = _root._totalframes; } _root.onEnterFrame = function() { var cf:Number = this._currentframe; if (cf == f) { delete this.onEnterFrame; } else if (cf<f) { this.nextFrame(); } else { this.prevFrame(); } }; } 

답변

0

당신이 이것에 대한 하나의 중요한 참고가 작동하는 데 필요한 코드입니다 [flv로 재생하고 뒤로 재생] (http://stackoverflow.com/questions/4496066/how-can-i-smoothly-playback-a-flv-at-different-speeds). 반대로 고르지 않고 사운드가 문제가되지 않는다면 flick의 내용을 (draw()를 사용하여) 처음에 한 번 캐싱 한 다음 BitmapData 객체를 스크럽하여 BitmapData 객체 배열을 만들 수 있습니다. 비 코드 버전은 flv 파일의 이미지 시퀀스 버전을 사용하는 것입니다
+0

다른 방법은 다음과 같습니다 :'var direction : Number = 1; = onEnterFrame과 함수() {보이드 \t 경우 (_currentframe == _totalframes || _currentframe == 171) 방향 * = - 1; // 방향 \t gotoAndStop로 (_currentframe + 방향)으로 반전; }' –

+0

아직이 작업을 수행하지 못했습니다. 나는 그것이 _root를 포함하고 있기 때문에 AS2로 전환하지만, 모든 영화는 클립을 보통처럼 반복한다. 나는 "뒤를 향해서"발사하는 것을 보지만, 앞으로 나아갈 수는 없다. " FLV는 170 프레임 길이의 동영상 클립에 포함되어 있으며, 그 위에있는 별도 레이어의 코드는 170 프레임 길이이며 기본 타임 라인에서는 동영상 클립이 한 프레임에 "stop();" 액션 별도 레이어에. 내가 놓친 게 있니? – user1997781