SAF
Loading...
Searching...
No Matches
saf_utility_pitch.h
Go to the documentation of this file.
1/*
2 * Copyright 2019 Leo McCormack
3 *
4 * Permission to use, copy, modify, and/or distribute this software for any
5 * purpose with or without fee is hereby granted, provided that the above
6 * copyright notice and this permission notice appear in all copies.
7 *
8 * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
9 * REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
10 * AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
11 * INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
12 * LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
13 * OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
14 * PERFORMANCE OF THIS SOFTWARE.
15 */
16
28#ifndef SAF_PITCH_H_INCLUDED
29#define SAF_PITCH_H_INCLUDED
30
31#ifdef __cplusplus
32extern "C" {
33#endif /* __cplusplus */
34
35/* ========================================================================== */
36/* SMB PitchShifter */
37/* ========================================================================== */
38
54void smb_pitchShift_create(/* Input Arguments */
55 void** hSmb,
56 int nCH,
57 int fftFrameSize,
58 int osamp,
59 float sampleRate);
60
66void smb_pitchShift_destroy(/* Input Arguments */
67 void ** const hSmb);
68
89void smb_pitchShift_apply(/* Input Arguments */
90 void* hSmb,
91 float pitchShift,
92 int frameSize,
93 float *inFrame,
94 /* Output Arguments */
95 float *outFrame);
96
97
98#ifdef __cplusplus
99}/* extern "C" */
100#endif /* __cplusplus */
101
102#endif /* SAF_PITCH_H_INCLUDED */
103
104 /* doxygen addtogroup Utilities */
void smb_pitchShift_create(void **hSmb, int nCH, int fftFrameSize, int osamp, float sampleRate)
Creates an instance of SMB PitchShifter.
void smb_pitchShift_apply(void *hSmb, float pitchShift, int frameSize, float *inFrame, float *outFrame)
Performs pitch shifting of the input signals, while retaining the same time duration as the original ...
void smb_pitchShift_destroy(void **const hSmb)
Destroys an instance of SMB PitchShifter.