- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我想将字节数组(从 mp3 文件读取)转换为 WaveStream,然后创建 WaveChannel32 以在 NAudio 中播放音频。我可以将字节数组读取到 Stream,然后读取到 Mp3FileReader,但它不允许我更改音量。所以我必须改用 WaveChannel32。
最佳答案
您可以将 Mp3FileReader
传递给 WaveChannel32
,这将允许您平移和改变音量。
var mp3Bytes = File.ReadAllBytes("d:/Music/RICHARD JOSEPH - Gods17.mp3");
using (var mp3Stream = new MemoryStream(mp3Bytes))
{
using (var mp3FileReader = new Mp3FileReader(mp3Stream))
{
using (var wave32 = new WaveChannel32(mp3FileReader, 0.1f, 1f))
{
using (var ds = new DirectSoundOut())
{
ds.Init(wave32);
ds.Play();
Thread.Sleep(30000);
}
}
}
}
关于c# - 如何在 NAudio 中将字节数组转换为 WaveStream?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37540288/
如何使用 NAudio 将 WaveStream 转换为字节数组? 最佳答案 public static class StreamExtension { public static byte[
我检查了 NAudio 及其 WaveStream 相关类,但找不到基于我提供的 PCM 示例创建 WaveStream 的内置方法。 理想情况下我想做这样的事情: byte[] samples =
我想将字节数组(从 mp3 文件读取)转换为 WaveStream,然后创建 WaveChannel32 以在 NAudio 中播放音频。我可以将字节数组读取到 Stream,然后读取到 Mp3Fil
我有一个 WaveStream,我可以读取 WaveFormat 来获取 channel 数。当我从 WaveStream 中读取时,我是在读取第一个 channel 还是从所有混合 channel
我有一个程序以字节数组的形式接收 mp3 数据。它必须将该 mp3 数据转换为 wav 格式并将其存储在字节数据中。为此,我正在尝试使用 NAudio。为此,我使用以下代码。 Stream input
我已经为此苦苦挣扎了一段时间,但找不到有效的解决方案。 我有一个 wav 文件(16 位 PCM:44kHz 2 channel ),我想为两个 channel 中的每一个将样本提取到两个数组中。据我
我是一名优秀的程序员,十分优秀!