//-------------------------------------------------------- void ofQuickTimePlayer::setLoopState(ofLoopType state){ //-------------------------------------- #ifdef OF_VIDEO_PLAYER_QUICKTIME //-------------------------------------- if( isLoaded() ){ TimeBase myTimeBase; long myFlags = 0L; myTimeBase = GetMovieTimeBase(moviePtr); myFlags = GetTimeBaseFlags(myTimeBase); switch (state) { case OF_LOOP_NORMAL: myFlags |= loopTimeBase; myFlags &= ~palindromeLoopTimeBase; SetMoviePlayHints(moviePtr, hintsLoop, hintsLoop); SetMoviePlayHints(moviePtr, 0L, hintsPalindrome); break; case OF_LOOP_PALINDROME: myFlags |= loopTimeBase; myFlags |= palindromeLoopTimeBase; SetMoviePlayHints(moviePtr, hintsLoop, hintsLoop); SetMoviePlayHints(moviePtr, hintsPalindrome, hintsPalindrome); break; case OF_LOOP_NONE: default: myFlags &= ~loopTimeBase; myFlags &= ~palindromeLoopTimeBase; SetMoviePlayHints(moviePtr, 0L, hintsLoop | hintsPalindrome); break; } SetTimeBaseFlags(myTimeBase, myFlags); } //-------------------------------------- #endif //-------------------------------------- //store the current loop state; currentLoopState = state; }
//-------------------------------------------------------- void ofVideoPlayer::setLoopState(int state){ //-------------------------------------- #ifdef OF_VIDEO_PLAYER_QUICKTIME //-------------------------------------- TimeBase myTimeBase; long myFlags = 0L; myTimeBase = GetMovieTimeBase(moviePtr); myFlags = GetTimeBaseFlags(myTimeBase); switch (state) { case OF_LOOP_NORMAL: myFlags |= loopTimeBase; myFlags &= ~palindromeLoopTimeBase; SetMoviePlayHints(moviePtr, hintsLoop, hintsLoop); SetMoviePlayHints(moviePtr, 0L, hintsPalindrome); break; case OF_LOOP_PALINDROME: myFlags |= loopTimeBase; myFlags |= palindromeLoopTimeBase; SetMoviePlayHints(moviePtr, hintsLoop, hintsLoop); SetMoviePlayHints(moviePtr, hintsPalindrome, hintsPalindrome); break; case OF_LOOP_NONE: default: myFlags &= ~loopTimeBase; myFlags &= ~palindromeLoopTimeBase; SetMoviePlayHints(moviePtr, 0L, hintsLoop | hintsPalindrome); break; } SetTimeBaseFlags(myTimeBase, myFlags); //-------------------------------------- #else //-------------------------------------- loopMode = state; //-------------------------------------- #endif //-------------------------------------- }