私はBlob on AzureにMP4ビデオストアを持ち、GZIP形式で圧縮しました。GZIPpedビデオをMediaPlayerElement(UWP)に直接再生するときにエラーが発生する
ビデオが圧縮されていない場合は、私が直接UWPアプリでこのコードを使用してそれを読むことができます。ビデオが圧縮されている場合
<MediaPlayerElement x:Name="_mediaPlayerElement" />
と
this._mediaPlayerElement.Source = MediaSource.CreateFromUri(uri);
this._mediaPlayerElement.MediaPlayer.Play();
は今、私は次のことを持っていますエラー "エラー:サポートされていないビデオタイプまたは無効なファイルパス"です。
次に、HttpClient
を使用してストリームを解凍し、ストリームをmediaPlayerElement
に渡してみます。私はMediaPlayerElementWithHttpClient
(here)または私のカスタムクラスのこの実装をテストしました。しかし、どちらもうまくいきません。 (元のビデオは動作しますが、GZIPは動作しません)。
私はもちろん、HttpClient
のAutomationDecompression
を有効にしました。
var handler = new HttpClientHandler
{
AutomaticDecompression = DecompressionMethods.GZip | DecompressionMethods.Deflate
};
HttpClient client = new HttpClient(handler);
UWPでGZIPビデオをストリーミングすることはできますか?
HTMLビデオコードジェネレータhttp://v4e.thewikies.com/を使用して、ブラウザから直接GZIPビデオを再生できます(Firefox、Chromeは動作していません)。私はそれがうまくいくと思いますが、UWPでどうですか?
(直接関連しているが、私は私のUWPアプリでGZIPで圧縮された画像を表示する場合、それが働いているわけではありません。)
感謝。
この方法は簡単ですが、私がやろうとしていることではありません。私はファイル全体をキャッシュにダウンロードしたくはありません(ファイルが1GBを超える場合)。私は、MediaPlayerElementにコンテンツを「ストリーミング」したいと思います。このビデオがGZIP圧縮されていない場合、私は(Azureからの)ビデオをMediaPlayerElementにストリーミングできます。 – pellea