mirror of
https://github.com/curioustorvald/Terrarum.git
synced 2026-03-09 13:21:51 +09:00
buffer size adjustments
This commit is contained in:
@@ -12,8 +12,9 @@ import kotlin.math.absoluteValue
|
||||
*/
|
||||
class MixerTrackProcessor(val bufferSize: Int, val rate: Int, val track: TerrarumAudioMixerTrack): Runnable {
|
||||
|
||||
val BACK_BUF_COUNT = 2
|
||||
|
||||
companion object {
|
||||
val BACK_BUF_COUNT = 1
|
||||
}
|
||||
|
||||
@Volatile private var running = true
|
||||
@Volatile private var paused = false
|
||||
@@ -163,6 +164,9 @@ class MixerTrackProcessor(val bufferSize: Int, val rate: Int, val track: Terraru
|
||||
maxSigLevel[index] = fl.toDouble()
|
||||
}
|
||||
}
|
||||
else {
|
||||
maxSigLevel.fill(0.0)
|
||||
}
|
||||
|
||||
|
||||
// by this time, the output buffer is filled with processed results, pause the execution
|
||||
|
||||
@@ -19,7 +19,7 @@ class TerrarumAudioMixerTrack(val name: String, val isMaster: Boolean = false):
|
||||
const val SAMPLING_RATE = 48000
|
||||
const val SAMPLING_RATEF = 48000f
|
||||
const val SAMPLING_RATED = 48000.0
|
||||
const val BUFFER_SIZE = 12000
|
||||
const val BUFFER_SIZE = 6000
|
||||
|
||||
const val INDEX_BGM = 0
|
||||
const val INDEX_AMB = 1
|
||||
|
||||
@@ -12,6 +12,7 @@ import net.torvald.terrarum.Terrarum.mouseTileX
|
||||
import net.torvald.terrarum.Terrarum.mouseTileY
|
||||
import net.torvald.terrarum.TerrarumAppConfiguration.TILE_SIZE
|
||||
import net.torvald.terrarum.audio.*
|
||||
import net.torvald.terrarum.audio.MixerTrackProcessor.Companion.BACK_BUF_COUNT
|
||||
import net.torvald.terrarum.audio.TerrarumAudioMixerTrack.Companion.BUFFER_SIZE
|
||||
import net.torvald.terrarum.controller.TerrarumController
|
||||
import net.torvald.terrarum.gameworld.GameWorld
|
||||
@@ -490,7 +491,7 @@ class BasicDebugInfoWindow : UICanvas() {
|
||||
|
||||
// currently streaming
|
||||
if (track.streamPlaying) {
|
||||
batch.color = Color.LIME
|
||||
batch.color = ICON_GREEN
|
||||
App.fontSmallNumbers.draw(batch, "\u00C0", x + 17f, faderY + 1f)
|
||||
}
|
||||
}
|
||||
@@ -502,13 +503,22 @@ class BasicDebugInfoWindow : UICanvas() {
|
||||
App.fontSmallNumbers.draw(batch, "F:${filter.cutoff.toInt()}", x+3f, y+1f)
|
||||
}
|
||||
is Buffer -> {
|
||||
val currentQueueSize = track.pcmQueue.size
|
||||
for (i in 0 until BACK_BUF_COUNT) {
|
||||
batch.color = if (i < currentQueueSize) ICON_GREEN else ICON_RED
|
||||
App.fontSmallNumbers.draw(batch, "|", x+3f+26 + 4*i, y+1f)
|
||||
}
|
||||
|
||||
batch.color = FILTER_NAME_ACTIVE
|
||||
App.fontSmallNumbers.draw(batch, "Buf:${track.pcmQueue.size}", x+3f, y+1f)
|
||||
App.fontSmallNumbers.draw(batch, "Buf:", x+3f, y+1f)
|
||||
App.fontSmallNumbers.draw(batch, "Bs:${BUFFER_SIZE/4}", x+3f, y+17f)
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private val ICON_GREEN = Color(0x33ff33_bb.toInt())
|
||||
private val ICON_RED = Color(0xff4444_bb.toInt())
|
||||
|
||||
|
||||
private val FADER_HANDLE_D1 = Color(0xffffff_bb.toInt())
|
||||
private val FADER_HANDLE_D2 = Color(0xdddddd_bb.toInt())
|
||||
|
||||
Reference in New Issue
Block a user