Use GetGlobalTimeNs as opposed to clock ticks
This commit is contained in:
		| @@ -252,8 +252,7 @@ void SinkStream::ProcessAudioOutAndRender(std::span<s16> output_buffer, std::siz | ||||
|  | ||||
|     { | ||||
|         std::scoped_lock lk{sample_count_lock}; | ||||
|         last_sample_count_update_time = | ||||
|             Core::Timing::CyclesToUs(system.CoreTiming().GetClockTicks()); | ||||
|         last_sample_count_update_time = system.CoreTiming().GetGlobalTimeNs(); | ||||
|         min_played_sample_count = max_played_sample_count; | ||||
|         max_played_sample_count += actual_frames_written; | ||||
|     } | ||||
| @@ -261,7 +260,7 @@ void SinkStream::ProcessAudioOutAndRender(std::span<s16> output_buffer, std::siz | ||||
|  | ||||
| u64 SinkStream::GetExpectedPlayedSampleCount() { | ||||
|     std::scoped_lock lk{sample_count_lock}; | ||||
|     auto cur_time{Core::Timing::CyclesToUs(system.CoreTiming().GetClockTicks())}; | ||||
|     auto cur_time{system.CoreTiming().GetGlobalTimeNs()}; | ||||
|     auto time_delta{cur_time - last_sample_count_update_time}; | ||||
|     auto exp_played_sample_count{min_played_sample_count + | ||||
|                                  (TargetSampleRate * time_delta) / std::chrono::seconds{1}}; | ||||
|   | ||||
| @@ -246,7 +246,7 @@ private: | ||||
|     /// Maximum number of total samples that can be played since the last callback | ||||
|     u64 max_played_sample_count{}; | ||||
|     /// The time the two above tracking variables were last written to | ||||
|     std::chrono::microseconds last_sample_count_update_time{}; | ||||
|     std::chrono::nanoseconds last_sample_count_update_time{}; | ||||
|     /// Set by the audio render/in/out system which uses this stream | ||||
|     f32 system_volume{1.0f}; | ||||
|     /// Set via IAudioDevice service calls | ||||
|   | ||||
		Reference in New Issue
	
	Block a user
	 Billy Laws
					Billy Laws