Use current time as initial timestamp on error

If the initial timestamp could not be retrieved, use the current time as
returned by System.nanoTime(). In practice, it is the same time base as
AudioRecord timestamps.

Fixes #4536 <https://github.com/Genymobile/scrcpy/issues/4536>
This commit is contained in:
Romain Vimont 2023-12-16 20:09:08 +01:00
parent ec41896c85
commit 6a58891e13

View File

@ -153,7 +153,8 @@ public final class AudioCapture {
previousRecorderTimestamp = timestamp.nanoTime;
} else {
if (nextPts == 0) {
Ln.w("Could not get any audio timestamp");
Ln.w("Could not get initial audio timestamp");
nextPts = System.nanoTime() / 1000;
}
// compute from previous timestamp and packet size
pts = nextPts;