demos/TTSArmLinux: fix WAV size display

pull/2991/head
彭逸豪 3 years ago
parent 447a68eaab
commit 9eb03eef71

@ -150,6 +150,10 @@ public:
return wav_;
}
int GetWavSize() {
return wav_.size() * sizeof(float);
}
void ReleaseWav() {
wav_.clear();
}
@ -188,7 +192,7 @@ public:
// 写入头信息
WavHeader header;
header.size = sizeof(header) - 8;
header.data_size = wav_.size() * sizeof(float);
header.data_size = GetWavSize();
header.byte_rate = header.sample_rate * header.num_channels * header.bits_per_sample / 8;
header.block_align = header.num_channels * header.bits_per_sample / 8;
fout.write(reinterpret_cast<const char*>(&header), sizeof(header));

@ -60,7 +60,8 @@ int main(int argc, char *argv[]) {
return -1;
}
std::cout << "Inference time: " << predictor.GetInferenceTime() << "ms, WAV size: " << predictor.GetWav().size() << std::endl;
std::cout << "Inference time: " << predictor.GetInferenceTime() << " ms, "
<< "WAV size (without header): " << predictor.GetWavSize() << " bytes" << std::endl;
if (!predictor.WriteWavToFile(outputWavPath)) {
std::cerr << "write wav file failed" << std::endl;

Loading…
Cancel
Save