调整 录制时长 和 超时控制

This commit is contained in:
shikong 2023-09-07 10:35:00 +08:00
parent 310ec451fb
commit 67a891ada8

View File

@ -69,11 +69,15 @@ public class RecordService {
scheduledExecutorService.schedule(() -> { scheduledExecutorService.schedule(() -> {
log.info("到达超时时间, 结束录制"); log.info("到达超时时间, 结束录制");
record.set(false); record.set(false);
}, timeout, TimeUnit.SECONDS); }, timeout * 2, TimeUnit.SECONDS);
long maxTime = TimeUnit.SECONDS.toMicros(timeout);
try { try {
Frame frame; Frame frame;
while (record.get() && (frame = grabber.grab()) != null) { while (!recorder.isCloseOutputStream() && record.get() && (frame = grabber.grab()) != null) {
long micros = TimeUnit.MICROSECONDS.toMicros(recorder.getTimestamp());
if(micros >= maxTime){
break;
}
recorder.record(frame); recorder.record(frame);
} }
grabber.close(); grabber.close();