【问题标题】:frames per second issue每秒帧数问题
【发布时间】:2016-01-29 08:50:51
【问题描述】:

您好,我创建了一个函数,可以转换小时、分钟和每秒帧数,即 ->

 function toHHMMSS(seconds) {
    var sec_num = parseInt(seconds);
    var hours = Math.floor(sec_num / 3600);
    var parshours = parseInt(hours);


    var minutes = Math.floor((sec_num - (hours * 3600)) / 60);
    var parsmin = parseInt(minutes);

    var seconds = sec_num - (hours * 3600) - (minutes * 60);
    var parssec = parseInt(seconds);       

    if (parshours < 10) { parshours = "0" + parshours; }
    if (parsmin < 10) { parsmin = "0" + parsmin; }
    if (parssec < 10) { parssec = "0" + parssec; }

    // calculation for frames
    var vidframes = document.getElementById('video');
    timeFloat = parseInt(vidframes.currentTime * 25).toPrecision(4) / 60;
    if (timeFloat > 25) {
        timeFloat = 0;
    }

    frametestout = timeFloatOut - timeFloat;
    frames = frametestout * frameRate;       

    var time = parshours + ':' + parsmin + ':' + parssec + ':' + timeFloat;       

    return time;
}
 var timeFloat;
var timeFloatOut;


function getCurTime(e) {
    var vid = document.getElementById('video');
    timeFloat = parseInt(vid.currentTime);
    var timeintime = document.getElementById('timein').innerHTML = toHHMMSS(timeFloat);
}

function getOutTime(e) {
    var vid = document.getElementById('video');
    timeFloatOut = parseInt(vid.currentTime);
    var timeouttime = document.getElementById('timeOut').innerHTML = toHHMMSS(timeFloatOut);
    var framecount = document.getElementById('frameCount').innerHTML = frames;
}

$("#btnTime").kendoButton({
    click: getCurTime
});


$("#btnTimeOut").kendoButton({
    click: getOutTime
});

}

问题是我需要每秒重置帧。而不是不断增加。

任何帮助将不胜感激。

【问题讨论】:

    标签: javascript html5-video frame-rate


    【解决方案1】:

    这样不就行了吗?

    setTimeout(function(){
      frames = 0;
    },1000);
    

    【讨论】:

    • 我会尝试并告诉你。
    • 不幸的是,这不起作用,因为我通过单击按钮获得时间并且帧仍然只是增加。尽管我在帧 = 0 处设置了一个断点,它确实更改为 0,但显示了增量,我相信它是我的函数 -> // 帧计算 var vidframes = document.getElementById('video'); timeFloat = parseInt(vidframes.currentTime * 25).toPrecision(4);因为它得到秒和 * 25。
    猜你喜欢
    • 1970-01-01
    • 2023-04-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多