0

音声を録音するためのマイクオブジェクトがあります。同じxamlファイルを使用している場合、バイトバッファ配列によって正しい結果が得られます。

しかし、戻るキーを押して同じページに戻ると、バッファにはすべての配列メンバーに0が含まれています。

コンストラクターでは、次のコードがあります。

this.microphone.GetData(buffer);

ボタンクリックハンドラーには、次のコードがあります。

// Stop previously running microphone
if (this.microphone.State == MicrophoneState.Started)
{
    this.microphone.Stop();
}

// Clear previous content of microphone

this.microphone.BufferDuration = TimeSpan.FromMilliseconds(1000);

this.microphone.Start();

// Store recorded audio
 this.buffer = new byte[this.microphone.GetSampleSizeInBytes(this.microphone.BufferDuration)];

マイククラスの使用に問題はありますか?それはクリアされますか、それともデバイスの戻るボタンを押してから来た後はどうなりますか?

前もって感謝します。質問に疑問がある場合はお知らせください。

4

1 に答える 1

0

ページでマイクを開始してから後方に移動すると、そのページはバッファリングされた録音とともに破棄されます。次にそのページに移動すると、その新しいインスタンスが新しいマイク (およびストリーム/バッファー) と共に作成されます。

これはあなたのシナリオですか?

私があなたなら、アプリケーション レベルでマイクを作成するので、アプリ内のページ間のナビゲーションによって影響を受けるリスクはありません。

于 2011-03-03T15:00:31.540 に答える