2

古い W​​indow phone 8.1 アプリで録音したオーディオ バイトを再生したいユニバーサル Windows プラットフォーム (UWP) アプリがあります。

オーディオは、生の PCM オーディオ (モノラル、16 ビット、16kHz) のバイト配列です。

私の古い Windows Phone 8.1 アプリでは、これに 3 行のコードを使用するだけで済みました。

SoundEffect sound = new SoundEffect(audioBytes, sampleRate, AudioChannels.Mono);
SoundEffectInstance soundInstance = sound.CreateInstance();
soundInstance.Play();

残念ながら、「SoundEffect」は UWP ではなくなりました。

C# UWP アプリでこれを行う簡単な方法はありますか?

テスト用のオーディオ サンプル(モノラル、16 ビット、16000Hz、リトルエンディアン)

PS: 私は Wasapi を見ましたが、すべて c++ で書かれており、通常 c# で作業する人にとって簡単な例が見つかりません。

4

2 に答える 2

1

メディア要素に加えて、 FrameInputNodeで AudioGraph を試すことができます。サンプルは次のとおりです注意してください、AudioGraph にはまだバグがあり、リークする可能性があります。

于 2016-08-09T08:41:43.357 に答える
0

MediaElementページに追加

<MediaElement x:Name="mediaElement"/>

ソースを手動でセットアップする

using System.IO;
using System.Runtime.InteropServices.WindowsRuntime;


var stream = audioBytes.AsBuffer().AsStream().AsRandomAccessStream();
mediaElement.SetSource(stream, "audio/x-wav");
mediaElement.Play();
于 2016-08-06T08:26:18.213 に答える