我想在捕获记录帧的时间获得准确的信息(精度至少为1毫秒)。假设我知道恒定的帧速率,我只能处理第一帧的时间。 目前,我正在录制:
mMediaRecorder.start();
mRecordingStartTime = SystemClock.elapsedRealtime();
但我想在这个时刻和捕获第一帧之间可能会有一些延迟。
我正在考虑对帧进行回调。我不认为MediaRecorder上有回调,但我认为预览中有一个回调。如果预览知道记录已经开始(通过检查标志),它可以识别第一帧并调用SystemClock.elapsedRealtime()
然后或读取时间戳(如果可用)。这种方法是否有意义,或者你会建议另一种方法吗?