calculateMFCCsFromPcm16 method

  1. @override
Future<Float64List?> calculateMFCCsFromPcm16({
  1. required Int16List samples,
  2. required int sampleRate,
  3. required int hopLength,
  4. required int nMels,
  5. required int fftSize,
  6. required int mfcc,
})
override

Calculates the MFCC matrix of 16-bit mono PCM samples.

fftSize is ignored as in calculateMFCCs.

Implementation

@override
Future<Float64List?> calculateMFCCsFromPcm16({
  required Int16List samples,
  required int sampleRate,
  required int hopLength,
  required int nMels,
  required int fftSize,
  required int mfcc,
}) {
  // 16-bit PCM → [-1, 1); byte-identical payload to calculateMFCCs(signals: …).
  final values = Float64List(samples.length);

  for (var i = 0; i < samples.length; i++) {
    values[i] = samples[i] / 32768;
  }

  return _invoke('calculateMFCCs', {
    'values': values,
    ..._tuning(sampleRate, hopLength, nMels, fftSize, mfcc),
  });
}