From c4067b38916c9f7381fbfa126526a770f901a7c2 Mon Sep 17 00:00:00 2001 From: Daniel Wolf Date: Sun, 5 Jan 2020 14:57:42 +0100 Subject: [PATCH] WIP: Sample rate conversion --- .../main/kotlin/audio/SampleRateConverter.kt | 275 ++++++++++++++++++ rhubarb/src/main/resources/audio/coeffs.bin | Bin 0 -> 89756 bytes scripts/generateCoeffs.py | 24 ++ 3 files changed, 299 insertions(+) create mode 100644 rhubarb/src/main/kotlin/audio/SampleRateConverter.kt create mode 100644 rhubarb/src/main/resources/audio/coeffs.bin create mode 100644 scripts/generateCoeffs.py diff --git a/rhubarb/src/main/kotlin/audio/SampleRateConverter.kt b/rhubarb/src/main/kotlin/audio/SampleRateConverter.kt new file mode 100644 index 0000000..07df79b --- /dev/null +++ b/rhubarb/src/main/kotlin/audio/SampleRateConverter.kt @@ -0,0 +1,275 @@ +package com.rhubarb_lip_sync.audio + +import java.io.InputStream +import java.nio.ByteBuffer +import java.nio.ByteOrder +import kotlin.math.max +import kotlin.math.min +import kotlin.math.round +import kotlin.math.roundToInt + +typealias CoeffArray = FloatArray + +const val SRC_MAX_RATIO = 256 + +inline class FixedPoint constructor(private val value: Int) { + companion object { + private const val SHIFT_BITS = 12 + private const val FP_ONE = (1 shl SHIFT_BITS).toDouble() + private const val INV_FP_ONE = 1.0 / FP_ONE + + fun fromDouble(doubleValue: Double) = FixedPoint((doubleValue * FP_ONE).roundToInt()) + fun fromInt(intValue: Int) = FixedPoint(intValue shl SHIFT_BITS) + val ZERO = fromInt(0) + } + + fun toInt() = value shr SHIFT_BITS + fun toDouble() = getFractionPart() * INV_FP_ONE + + private fun getFractionPart() = value and ((1 shl SHIFT_BITS) - 1) + + operator fun plus(other: FixedPoint) = FixedPoint(value + other.value) + operator fun minus(other: FixedPoint) = FixedPoint(value - other.value) + operator fun div(other: FixedPoint) = value / other.value + operator fun times(other: Int) = FixedPoint(value * other) + + operator fun compareTo(other: FixedPoint) = value.compareTo(other.value) +} + +fun InputStream.readLittleEndianInt32() = read() or (read() shl 8) or (read() shl 16) or (read() shl 24) + +class SincFilter(val inputSampleRate: Int, val outputSampleRate: Int) { + val ratio = outputSampleRate.toDouble() / inputSampleRate + + init { + if (ratio < (1.0 / SRC_MAX_RATIO) || ratio > (1.0 * SRC_MAX_RATIO)) { + throw Error("SRC ratio outside [1/$SRC_MAX_RATIO, $SRC_MAX_RATIO] range.") + } + } + + var last_position: Double = 0.0 + + var in_count: Int = 0 + var in_used: Int = 0 + var out_count: Int = 0 + var out_gen: Int = 0 + + companion object { + // Load coefficients from resource + val index_inc: Int + val coeffs: CoeffArray + val coeff_half_len: Int + + init { + // Load coefficient data from stream + val stream = ::SincFilter.javaClass.getResourceAsStream("coeffs.bin") + check(stream != null) { "Error loading coefficients." } + + index_inc = stream.readLittleEndianInt32() + val floatBuffer = ByteBuffer.wrap(stream.readBytes()) + .also { it.order(ByteOrder.LITTLE_ENDIAN) } + .asFloatBuffer() + stream.close() + + val coeffCount = floatBuffer.limit() + coeffs = CoeffArray(coeffCount).also { floatBuffer.get(it) } + coeff_half_len = coeffCount - 2 + } + } + + var b_current: Int = 0 + var b_end: Int = 0 + var b_real_end: Int = -1 + val b_len: Int = run { + var length = 3 * ((coeff_half_len + 2.0) / index_inc * SRC_MAX_RATIO + 1).roundToInt() + length = max(length, 4096) + // There is a <= check against samples_in_hand requiring a buffer bigger than the calculation above + length += 1 + return@run length + } + + val buffer: SampleArray = SampleArray(b_len + 1 /* 1 channel */) + + fun process(data: Data) { + in_count = data.data_in.size + out_count = data.data_out.size + in_used = 0 + out_gen = 0 + + // Check the sample rate ratio wrt the buffer len. + var count: Double = (coeff_half_len + 2.0) / index_inc + if (ratio < 1.0) count /= ratio + + /* Maximum coefficientson either side of center point. */ + val half_filter_chan_len: Int = count.roundToInt() + 1 + + var input_index: Double = last_position + + var rem: Double = fmod_one (input_index) + b_current = (b_current + (input_index - rem).roundToInt()) % b_len + input_index = rem + + val terminate: Double = 1.0 / ratio + 1e-20 + + /* Main processing loop. */ + while (out_gen < out_count) { + /* Need to reload buffer? */ + var samples_in_hand: Int = (b_end - b_current + b_len) % b_len + + if (samples_in_hand <= half_filter_chan_len) { + prepare_data(data, half_filter_chan_len) + + samples_in_hand = (b_end - b_current + b_len) % b_len + if (samples_in_hand <= half_filter_chan_len) break + } + + /* This is the termination condition. */ + if (b_real_end >= 0) { + if (b_current + input_index + terminate > b_real_end) break + } + + val float_increment: Double = index_inc * (if (ratio < 1.0) ratio else 1.0) + val increment: FixedPoint = FixedPoint.fromDouble(float_increment) + + val start_filter_index: FixedPoint = FixedPoint.fromDouble(input_index * float_increment) + + data.data_out[out_gen] = ((float_increment / index_inc) * calc_output_single (increment, start_filter_index)).toFloat() + out_gen++ + + /* Figure out the next index. */ + input_index += 1.0 / ratio + rem = fmod_one(input_index) + + b_current = (b_current + (input_index - rem).roundToInt()) % b_len + input_index = rem + } + + last_position = input_index + + data.input_frames_used = in_used + data.output_frames_gen = out_gen + } + + private fun prepare_data (data: Data, half_filter_chan_len: Int) { + if (b_real_end >= 0) return + + var len: Int = 0 + if (b_current == 0) { + // Initial state. + // Set up zeros at the start of the buffer and then load new data after that. + len = b_len - 2 * half_filter_chan_len + + b_current = half_filter_chan_len + b_end = half_filter_chan_len + } else if (b_end + half_filter_chan_len + 1 /* 1 channel */ < b_len) { + /* Load data at current end position. */ + len = max(b_len - b_current - half_filter_chan_len, 0) + } else { + /* Move data at end of buffer back to the start of the buffer. */ + len = b_end - b_current + System.arraycopy(buffer, b_current - half_filter_chan_len, buffer, 0, half_filter_chan_len + len) + + b_current = half_filter_chan_len + b_end = b_current + len + + /* Now load data at current end of buffer. */ + len = max(b_len - b_current - half_filter_chan_len, 0) + } + + len = min(in_count - in_used, len) + + check(len >= 0 && b_end + len <= b_len) { "Internal error: Bad length in prepare_data()." } + System.arraycopy(data.data_in, in_used, buffer, b_end, len) + + b_end += len + in_used += len + + if (in_used == in_count && b_end - b_current < 2 * half_filter_chan_len && data.end_of_input) { + // Handle the case where all data in the current buffer has been consumed and this is + // the last buffer. + + if (b_len - b_end < half_filter_chan_len + 5) { + /* If necessary, move data down to the start of the buffer. */ + len = b_end - b_current + System.arraycopy(buffer, b_current - half_filter_chan_len, buffer, 0, half_filter_chan_len + len) + + b_current = half_filter_chan_len + b_end = b_current + len + } + + b_real_end = b_end + len = half_filter_chan_len + 5 + + if (len < 0 || b_end + len > b_len) { + len = b_len - b_end + } + + buffer.fill(0.0f, b_end, len) + b_end += len + } + } + + private fun calc_output_single(increment: FixedPoint, start_filter_index: FixedPoint): Double { + var fraction: Double + var icoeff: Double + var data_index: Int + var coeff_count: Int + var indx: Int + + /* Convert input parameters into fixed point. */ + val max_filter_index = FixedPoint.fromInt(coeff_half_len) + + /* First apply the left half of the filter. */ + var filter_index: FixedPoint = start_filter_index + coeff_count = (max_filter_index - filter_index) / increment + filter_index += increment * coeff_count + data_index = b_current - coeff_count + + var left = 0.0 + do { + if (data_index >= 0) { + /* Avoid underflow access to buffer. */ + fraction = filter_index.toDouble() + indx = filter_index.toInt() + + icoeff = coeffs [indx] + fraction * (coeffs[indx + 1] - coeffs[indx]) + + left += icoeff * buffer[data_index] + } + + filter_index -= increment + data_index += 1 + } while (filter_index >= FixedPoint.ZERO) + + /* Now apply the right half of the filter. */ + filter_index = increment - start_filter_index + coeff_count = (max_filter_index - filter_index) / increment + filter_index += increment * coeff_count + data_index = b_current + 1 + coeff_count + + var right = 0.0 + do { + fraction = filter_index.toDouble() + indx = filter_index.toInt() + + icoeff = coeffs[indx] + fraction * (coeffs[indx + 1] - coeffs[indx]) + + right += icoeff * buffer[data_index] + + filter_index -= increment + data_index -= 1 + } while (filter_index > FixedPoint.ZERO) + + return left + right + } +} + +class Data(val data_in: SampleArray, val data_out: SampleArray, val end_of_input: Boolean) { + var input_frames_used: Int = 0 + var output_frames_gen: Int = 0 +} + +fun fmod_one (x: Double): Double { + val res = x - round(x) + return if (res < 0.0) res + 1.0 else res +} diff --git a/rhubarb/src/main/resources/audio/coeffs.bin b/rhubarb/src/main/resources/audio/coeffs.bin new file mode 100644 index 0000000000000000000000000000000000000000..7527fc914a08b0e3ef7dbe4fda77fc9703397931 GIT binary patch literal 89756 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