我想获取一个包含 Feet+Frames 值的文本文档并将它们转换为时间码。例如,将 0000+00 替换为 00:00:00:00。
我有一个函数可以将英尺+帧转换为时间码(每英尺 16 帧,帧速率为每秒 24 帧):
def FeetFramesToTimecode(FeetFrames):
frames = int(FeetFrames[:4])*16+int(FeetFrames[-2:])
return "%02d:%02d:%02d:%02d" % (frames/(3600*framerate), frames/(60*framerate)%60, frames/framerate%60, frames%framerate)
然后我有通过文本文件的代码,并且是带有时间码的 Feet+Frame:
for line in input_document:
found = re.search(r'\d{4}\+\d{2}', line)
if found:
print "%s replaces %s" % (FeetFramesToTimecode(found.group()), found.group())
new_line = re.sub(r'\d{4}\+\d{2}', (FeetFramesToTimecode(found.group()), line)
output_document.write(new_line)
else:
output_document.write(line)
那么,我做错了什么?如何让函数在 re.sub 中工作?