如何进行时间码计算?

Mal*_*u05 4 python video timecodes

我有一个关于计算时间码delta的问题.
我从包含格式化时间码的电影文件中读取元数据HH:MM:SS:FF

(FF=帧,00->23例如,所以它像00framerate-1)

所以我15:41:08:02从另一个参考文件得到一些数据,我得到15:41:07:00
现在我必须计算时间偏移(如timedelta但只是框架).
我该怎么做呢?

eum*_*iro 5

framerate = 24

def timecode_to_frames(timecode):
    return sum(f * int(t) for f,t in zip((3600*framerate, 60*framerate, framerate, 1), timecode.split(':')))

print timecode_to_frames('15:41:08:02') - timecode_to_frames('15:41:07:00')
# returns 26

def frames_to_timecode(frames):
    return '{0:02d}:{1:02d}:{2:02d}:{3:02d}'.format(frames / (3600*framerate),
                                                    frames / (60*framerate) % 60,
                                                    frames / framerate % 60,
                                                    frames % framerate)

print frames_to_timecode(26)
# returns "00:00:01:02"
Run Code Online (Sandbox Code Playgroud)