1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33
use std::os::raw::c_int;
use vosk_sys::*;
#[derive(Debug, Default, Clone, Copy)]
/// Log level for Kaldi messages.
pub enum LogLevel {
/// Print Error, Info and Debug messages.
ErrorInfoDebug,
/// Print Error and Info, but not Debug messages (default).
#[default]
ErrorInfo,
/// Only print Error messages.
Error,
}
impl LogLevel {
pub(self) fn to_c_int(self) -> c_int {
match self {
Self::ErrorInfo => 0,
Self::Error => -1,
Self::ErrorInfoDebug => 1,
}
}
}
/// Set log level for Kaldi messages.
///
/// Default: [`LogLevel::ErrorInfo`].
pub fn set_log_level(log_level: LogLevel) {
unsafe { vosk_set_log_level(log_level.to_c_int()) }
}