TypeScript录制并播放原始pcm音频

时间:2019-06-04 23:52:14

标签: typescript web-audio web-audio-api audiocontext web-mediarecorder

我是TypeScript和整个JavaScript环境的新手。我有一个小项目要做,这需要使用TypeScript创建浏览器应用程序(我还没有任何代码)。

我需要记录来自浏览器麦克风的原始PCM音频,将其记录下来,然后通过浏览器扬声器播放相同的PCM音频。

我已经研究过使用MediaRecorder进行录制,并使用普通的HTMLAudioElement进行回放,但是我不确定它们是否支持RAW音频。我也有一些文章提到使用AudioContext ScriptProcessorNode来获取原始音频,但是我不知道如何播放它们。

我不需要完整的解决方案,但希望能有任何帮助我完成此工作的指示或教程。

1 个答案:

答案 0 :(得分:1)

我确实在一个名为extendable-media-recorder的小图书馆上工作,该图书馆允许使用自定义编码器扩展本机MediaRecorder。我构建的概念验证编码器是WAV编码器。希望它也对您有用。

我尚未记录该库,这就是为什么我很高兴将您的问题作为一个整理完整用法示例的机会。

string allLanguages = string.Empty;
string[] languages = new[] { "en-US", "es-ES", "it-IT", "de-DE", "fr-FR" };
if (SetProcessPreferredUILanguages(languages) > 0)
{
    var result = GetProcessPreferredUILanguages();
    allLanguages = string.Join(", ", result.OfType<CultureInfo>()
                         .Select(c => c.Name).ToArray());
}

我希望这些注释能够解释代码的作用。如果不是这种情况,请告诉我。