WaveMediaStreamSource(WAVmss)ライブラリを使用して、 Silverlightメディア要素でWaveファイルを再生します。
ファイルを要素に最初にロードしたときに再生されますが、2回目に再生しようとすると、再生されません。こちら
のサンプルを使用しました。
何かが足りないかもしれません。これが、waveファイルを開いて初めて正常に再生するコードです。これが、メディア要素のソースとしてのファイルの読み取りと設定です。
OpenFileDialog openFileDialog = new OpenFileDialog();
MemoryStream audioSource = new MemoryStream();
if (openFileDialog.ShowDialog() == true)
{
using (FileStream fileStream = openFileDialog.File.OpenRead())
{
audioSource.SetLength(fileStream.Length);
fileStream.Read(audioSource.GetBuffer(), 0, (int)fileStream.Length);
}
}
WaveMSS.WaveMediaStreamSource audioStreamSource =
new WaveMSS.WaveMediaStreamSource(audioSource);
mediaElement1.SetSource(audioStreamSource);
そして、最初の再生時(イベントを取得しているのでわかります_MediaEnded
)、このビデオを再度再生することはできません。
MediaElementの位置を設定しようとしましたが、再度再生できませんでした。
mediaElement1.Position = TimeSpan.FromSeconds(0);
mediaElement1.Play();
デバッグしましたが、Positionプロパティはゼロに設定されていますが、もう一度[再生]をクリックしようとすると、positionプロパティが最後に移動し、_MediaEnded
イベントが再びポップアップします。
私に何ができる?