我正在尝试解码使用近似对数曲线的时间码(参见图片)。 它不是真正的对数曲线,而是由线性曲线组成。
例如,当时间码显示822496时,实时为2793 ms 。 我打印了曲线,并在新的线性曲线开始时找到了断点:
milliseconds => timecode
2793ms => 822496
6844ms => 906195
...
510982ms => 1408395
每83700个时间码值开始一个新的线性曲线。目前我没有看到真正的对数曲线,但我想知道如何用线性曲线来做到这一点,更准确。
我的问题是,我怎样才能找到使用线性曲线尽可能接近从我的时间码计算实时(ms)的公式?
近似此曲线的对数函数是(适合断点):
y = log x * 119900 - 167700
感谢提示!
答案 0 :(得分:0)
用什么语言?在Java中,我构建了一个时间码的NavigableMap(TreeMap) - >实时,然后查找floorEntry( timecode)
以找到最近的条目。
当然,您需要计算/凭经验确定对应关系&建立地图;要么全部预先,要么按需增加范围。
关于你的问题还有一点不清楚..你能不能正确地对时间码计算进行反向工程,或者这只是一个近似值&你要从那里搜索确切的位置?