我想提供 libsamplerate (一个需要填充以下结构的音频数据下采样库:
typedef struct
{ float *data_in, *data_out ;
long input_frames, output_frames ;
long input_frames_used, output_frames_gen ;
int end_of_input ;
double src_ratio ;
} SRC_DATA ;
调用者必须填写的这个结构的字段是:
data_in : A pointer to the input data samples.
input_frames : The number of frames of data pointed to by data_in.
data_out : A pointer to the output data samples.
output_frames : Maximum number of frames pointer to by data_out.
src_ratio : Equal to output_sample_rate / input_sample_rate.
end_of_input : Equal to 0 if more input data is available and 1
otherwise.
为了填充这个结构,我有 data_in 但我不知道帧数,所以我无法定义 input_frames。有没有一种简单的方法来修剪 PCM 字节流?所以我也可以用正确的帧数将它输入到这个函数中。(所以这个问题与 libsamplerate 没有直接关系)