Răsfoiți Sursa

win-wasapi: Fix timestamp calculation

When device timing is used, it shouldn't be modifying the timestamp.
Fixes an issue where certain devices with large audio segments would
seem a bit out of sync.
jp9000 8 ani în urmă
părinte
comite
fc61e6ed69
1 a modificat fișierele cu 3 adăugiri și 2 ștergeri
  1. 3 2
      plugins/win-wasapi/win-wasapi.cpp

+ 3 - 2
plugins/win-wasapi/win-wasapi.cpp

@@ -421,8 +421,9 @@ bool WASAPISource::ProcessCaptureData()
 		data.timestamp        = useDeviceTiming ?
 			ts*100 : os_gettime_ns();
 
-		data.timestamp -= (uint64_t)frames * 1000000000ULL /
-			(uint64_t)sampleRate;
+		if (!useDeviceTiming)
+			data.timestamp -= (uint64_t)frames * 1000000000ULL /
+				(uint64_t)sampleRate;
 
 		obs_source_output_audio(source, &data);