我正在尝试使用StreamSocket下载视频块,将它们放入MemoryStream并将字节数组传递给MediaPlayerElement以便流传输视频,另一个线程将更新流并将新数据写入到流中。视频的第一个块可以成功播放,但是即使MemoryStream仍然有足够的字节,它也会停止播放。
我还尝试使用MediaStreamSource并将Samples传递给它,但它只是无法解码视频。
Element.SetMediaPlayer(new Windows.Media.Playback.MediaPlayer());
Element.MediaPlayer.RealTimePlayback = true;
Element.MediaPlayer.SetStreamSource(_MediaRandomAccessStream);
在播放时另一个Task正在写入_MediaRandomAccessStream:
await _MediaRandomAccessStream.WriteAsync(buff.AsBuffer());
await _MediaRandomAccessStream.FlushAsync();