mirror of
https://github.com/ggml-org/llama.cpp.git
synced 2025-06-26 19:55:04 +00:00
* mtmd : move helpers to dedicated library * fix server build * rm leftover cmakelist code
48 lines
858 B
C++
48 lines
858 B
C++
#pragma once
|
|
|
|
#include "ggml.h"
|
|
|
|
#include <cstdint>
|
|
#include <vector>
|
|
#include <string>
|
|
|
|
#define WHISPER_ASSERT GGML_ASSERT
|
|
|
|
#define WHISPER_SAMPLE_RATE 16000
|
|
#define WHISPER_N_FFT 400
|
|
#define WHISPER_HOP_LENGTH 160
|
|
#define WHISPER_CHUNK_SIZE 30
|
|
|
|
#define COMMON_SAMPLE_RATE 16000
|
|
|
|
namespace whisper_preprocessor {
|
|
|
|
struct whisper_mel {
|
|
int n_len;
|
|
int n_len_org;
|
|
int n_mel;
|
|
|
|
std::vector<float> data;
|
|
};
|
|
|
|
struct whisper_filters {
|
|
int32_t n_mel;
|
|
int32_t n_fft;
|
|
|
|
std::vector<float> data;
|
|
};
|
|
|
|
bool preprocess_audio(
|
|
const float * samples,
|
|
size_t n_samples,
|
|
const whisper_filters & filters,
|
|
std::vector<whisper_mel> & output);
|
|
|
|
} // namespace whisper_preprocessor
|
|
|
|
namespace whisper_precalc_filters {
|
|
|
|
whisper_preprocessor::whisper_filters get_128_bins();
|
|
|
|
} // namespace whisper_precalc_filters
|