videojs的时间格式

Time format of videojs

我在我的 React 项目中使用了 videojs。目前玩家的时间看起来像这样 0:00/0:10 。我想要 HH:MM:SS:FF (00:00:00:00) 的时间格式,其中 F 是帧。我找不到任何解决方案。有什么办法可以做到吗?

我不熟悉 0:00/0:10 格式,但您可以使用以下函数将时间(以秒为单位)转换为 HH:MM:SS:FF 格式:

var convertTime = function (input, fps) {
    var pad = function(input) {return (input < 10) ? "0" + input : input;};
    fps = (typeof fps !== 'undefined' ?  fps : 24 );
    return [
        pad(Math.floor(input / 3600)),
        pad(Math.floor(input % 3600 / 60)),
        pad(Math.floor(input % 60)),
        pad(Math.floor(input * fps % fps))
    ].join(':');
}

演示

var convertTime = function (input, fps) {
    var pad = function(input) {return (input < 10) ? "0" + input : input;};
    fps = (typeof fps !== 'undefined' ?  fps : 24 );
    return [
        pad(Math.floor(input / 3600)),
        pad(Math.floor(input % 3600 / 60)),
        pad(Math.floor(input % 60)),
        pad(Math.floor(input * fps % fps))
    ].join(':');
}

document.body.innerHTML = '<pre>' + JSON.stringify({
    5.4416555 : convertTime(5.4416555),
    126.2344452 : convertTime(126.2344452),
    1156.1535548 : convertTime(1156.1535548),
    9178.1351559 : convertTime(9178.1351559),
    13555.3515135 : convertTime(13555.3515135)
}, null, '\t') +  '</pre>';

另见 this Fiddle