CScore MediaFoundationEncoder MP3编码器输出流空

时间:2018-03-30 02:54:37

标签: c# audio cscore

我尝试在CScore中捕获音频流并将其保存在各种编码和各种位置。我的一个预期输出编码是通过MediaFoundationEncoder API的MP3。

保存到本地文件路径时,我能够成功编码为MP3。但是,如果我尝试写入内存流,则内存流将以0长度完成写入。

此实施有什么问题?

使用本地存储空间

using (var outputStream = new MemoryStream())
{
    var encoder = MediaFoundationEncoder.CreateMP3Encoder(waveFormat, outputStream, waveFormat.BytesPerSecond);

    var buffer = new byte[waveFormat.BytesPerSecond];
    int read;
    while ((read = inputStream.Read(buffer, 0, buffer.Length)) > 0)
    {
        encoder.Write(buffer, 0, read);
    }

    log.Debug("MP3 File Size: " + outputStream.Length); // <-- Returns as 0
}

非工作内存流

{{1}}

0 个答案:

没有答案