1
感謝您的期待和任何您可能有的幫助/建議。如何獲取使用audioSettings.dspTime傳遞的精確時間方法?
我在嘗試將音頻與遊戲同步。
這是找出多少時間使用audioSettings.dspTime通過準確的方法是什麼?
我採取浮子表示時間和由song.clip.frequency繁殖。
float myChosenAmountOfTimeInSamples = myChosenAmountOfTime * song.clip.frequency;
float audioSecondsLater = Audio + myChosenAmountOfTimeInSamples;
這在audioSettings.dspTime * song.clip.frequency
float Audio = (float)AudioSettings.dspTime * song.clip.frequency;
float audioSecondsLater = Audio + myChosenAmountOfTimeInSamples;
我使用這個代碼,看看它是否工作。至於我可以告訴它發生在1秒鐘之後
在更新
if (Input.GetKeyDown (KeyCode.A)){
StartCoroutine(test());
}
而且協程
IEnumerator test()
{
float Audio = (float)AudioSettings.dspTime * song.clip.frequency;
float myChosenAmountOfTime = 1f;
float myChosenAmountOfTimeInSamples = myChosenAmountOfTime * song.clip.frequency;
float audioSecondsLater = Audio + myChosenAmountOfTimeInSamples;
print ("Audio seconds later: " + audioSecondsLater);
while (true)
{
Audio = (float)AudioSettings.dspTime * song.clip.frequency;
if (Audio >= audioSecondsLater)
{
print ("Audio Now: " + Audio); // Theoretically this is 1 second later
break;
}
yield return new WaitForSeconds(1/1000f);
}
}
感謝您輸入Eliot。我認爲我的問題可能很不明確。 – Jim
@Jim隨意編輯問題來解釋你想要做的更清楚的事情。 – Eliot