Merge branch 'master' into cmake-change-build-type
This commit is contained in:
commit
134067b112
2 changed files with 8 additions and 0 deletions
|
|
@ -39,6 +39,8 @@ pub enum WhisperError {
|
|||
InvalidText,
|
||||
/// Creating a state pointer failed. Check stderr for more information.
|
||||
FailedToCreateState,
|
||||
/// No samples were provided.
|
||||
NoSamples,
|
||||
}
|
||||
|
||||
impl From<Utf8Error> for WhisperError {
|
||||
|
|
@ -106,6 +108,7 @@ impl std::fmt::Display for WhisperError {
|
|||
"Generic whisper error. Varies depending on the function. Error code: {}",
|
||||
c_int
|
||||
),
|
||||
NoSamples => write!(f, "Input sample buffer was empty."),
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
|||
|
|
@ -327,6 +327,11 @@ impl<'a> WhisperState<'a> {
|
|||
/// # C++ equivalent
|
||||
/// `int whisper_full(struct whisper_context * ctx, struct whisper_full_params params, const float * samples, int n_samples)`
|
||||
pub fn full(&mut self, params: FullParams, data: &[f32]) -> Result<c_int, WhisperError> {
|
||||
if data.is_empty() {
|
||||
// can randomly trigger segmentation faults if we don't check this
|
||||
return Err(WhisperError::NoSamples);
|
||||
}
|
||||
|
||||
let ret = unsafe {
|
||||
whisper_rs_sys::whisper_full_with_state(
|
||||
self.ctx,
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue