android - 在 Android 中构建和使用 Oboe Resampler
问题描述
我正在尝试将 Oboe Resampler 集成到我的 android 应用程序中。
https://github.com/google/oboe/tree/master/src/flowgraph/resampler
这个想法是将带有 32000 采样率的音频的 ByteBuffer 转换为具有 44100 采样率的音频。
我应该如何构建 C++ 库以及如何在我的 android 应用程序中集成和重新采样?有人可以分享一些片段或链接到这个 c++ 库的已构建版本吗?
解决方案
您不需要构建重采样器来执行此操作,因为它已经在双簧管中。您可以打开采样率为 32000 帧/秒的双簧管音频流并打开重采样。
就是这样:
// Create a stream builder
oboe::AudioStreamBuilder builder;
// Specify the rate at which you'll be supplying audio frames
builder.setSampleRate(32000);
// Switch on the resampler by specifying the resampling quality - this is a tradeoff between CPU and quality.
builder.setSampleRateConversionQuality(SampleRateConversionQuality::Medium);
请参阅文档以设置数据回调,您可以在其中将您的数据写入ByteBuffer
音频流缓冲区。
推荐阅读
- javascript - 反应本机 foreach 循环无法正常工作
- flutter - 如何在颤振中添加自动填充下拉菜单?
- python - 如何从python中的文件中只删除某些内容
- reactjs - React 中用于自定义对象键的 Prop-Types
- flutter - 如何解决“在 Flutter SDK 中找不到包 integration_test”错误
- django - 动态创建 DRF 序列化程序类
- node.js - Mongoose 聚合管道日期大于使用 bson 变量的查询
- reactjs - 在 React 中哪里使用 componentDidUpdate
- dart - 如何为 Dart HTTP 服务器设置测试
- vue.js - 浮动操作按钮隐藏在底部导航栏中