我在使用JavaScript將時間碼更改爲幀時出現問題。 運行在30fps我們得到將時間碼轉換爲秒
"00:00:01:00" = 30 frames
到目前爲止好,只是我檢查的秒數,在它被轉換成這樣:
首先不知道這是怎麼回事呢? ! 有人指出我有\ n而不是\ nf。
其次 返回的幀不正確。 1分鐘應該是1800秒不是1800000
如果你能告訴我,如果這是一個安赫獎勵積分。
// set the frame rate or Frame Rat as we like to call him
var frameRat = 30 // fps
var numOfFrames = 60 // animation frame count
var animTime = "00:01:00:00" // time code
var a = convertTimeToFrames(animTime, frameRat);
var result = animTime + " at " + frameRat + " fps\n = " + a + " frames.";
alert(result);
function convertTimeCodeToSeconds(timeString, framerate)
{
var timeArray = timeString.split(":");
var hours = timeArray[0] * 60 * 60;
var minutes = timeArray[1] * 60;
var seconds = timeArray[2];
var frames = timeArray[3]*(1/framerate);
var str = "h:" + hours + "\nm:" + minutes + "\ns:" + seconds + "\f:" + frames;
alert(str)
var totalTime = hours + minutes + seconds + frames;
//alert(timeString + " = " + totalTime)
return totalTime;
}
function convertTimeToFrames(timeString, framerate)
{
var secs = convertTimeCodeToSeconds(timeString, framerate);
return secs * framerate;
}
您的字符串中有'\ f:'而不是'\ nf:'。你是這個意思嗎? – DocMax
需求究竟是什麼? – Ayush