首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何将Uint8Array转换为要保存的mp3格式文件

如何将Uint8Array转换为要保存的mp3格式文件
EN

Stack Overflow用户
提问于 2017-08-10 03:15:59
回答 1查看 321关注 0票数 2

我使用的是node.js 6.11.2。我不是在浏览器中运行。我正在尝试使用aws-sdk polly speechSynthesis服务。该服务返回一个Uint8array作为音频数据。让我们称其为audioData。我希望将这个文件audioData转换为mp3格式的正确格式的音频文件,这样我就可以在本地缓存它。然后我希望在覆盆子Pi上播放该文件。如何将Uint8Array转换为格式正确的mp3文件?我尝试了audioData.toString(),但无法播放该文件。

EN

回答 1

Stack Overflow用户

发布于 2017-08-10 03:32:31

我对演讲合成不是很了解,但是你可以把数组数据写到标准输出,再通过管道写到ffmpeg

从stdout:

node script.js|ffmpeg -f s8 -i pipe:0 file.mp3

或者,您可以首先将数组写入文件:

ffmpeg -f s8 -i audioData file.mp3

请注意,默认采样率为44100 to,如果来自语音合成的音频不同,请使用ar选项更改预期采样率:

代码语言:javascript
复制
ffmpeg -f s8 -ar [samplerate] -i [input] file.mp4

https://trac.ffmpeg.org/wiki/audio%20types中可以找到不同的音频类型,请使用适当的音频类型替换上述命令中的s8。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/45598933

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档