我正在寻找 C++ 中的最佳 源代码/算法 在给定的 fps 中将帧计数转换为时间码 hh:mm:ss:ff,例如。 25 帧/秒...
这段代码非常好 - http://www.andrewduncan.ws/Timecodes/Timecodes.html (页面底部) 但它很昂贵——它包含 4 个 mod 和 6 个 div 操作
我需要在每一帧显示时间码,所以计算这个算法 可能需要一些时间。
我当然可以存储评估的时间码以避免计算。
但是了解更好的算法会很有帮助...
提前致谢 你的 米。
最佳答案
一般经验法则:在包括视频播放器在内的图像处理系统中,您会为每个像素运行一次的操作操心,然后您会为每个图像“补丁”(通常是一行像素),并且您不会为每帧运行一次的东西而烦恼。
原因是每个像素的运行频率是每个补丁的数百倍,甚至数千倍,而每个补丁的运行频率是每个像素的数百倍,甚至数千倍-框架的东西。
这意味着每像素数据的运行频率可能是每帧数据的数百万倍。每个像素一条指令可能每帧花费数百万条指令,并且每帧几百甚至几千条指令在本底噪声中与每像素指令数相比丢失。
换句话说,您可能买得起 mod 和 div。
话虽如此,运行自定义计数器而不是进行 mod 和 div 可能是合理的。
关于c++ - 将帧数转换为时间码的最佳代码/算法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8229631/