Kennt jemand eine Möglichkeit, .mp4-Video von einem sicheren azure-Blob (über https) in eine WPF-Anwendung zu streamen.Video von einem sicheren azure Blob zu WPF streamen
ich die uri bin Erzeugung wie folgt ...
public Uri GetSecureUriForBlob(CloudBlobContainer container, string blobName)
{
var blockBlob = container.GetBlockBlobReference(blobName);
var beforeOffset = new DateTimeOffset(DateTime.UtcNow.AddMinutes(-5));
var afterOffset = new DateTimeOffset(DateTime.UtcNow.AddHours(1));
var builder = new UriBuilder(blockBlob.Uri)
{
Query = blockBlob.GetSharedAccessSignature(
new SharedAccessBlobPolicy
{
Permissions = SharedAccessBlobPermissions.Read,
SharedAccessStartTime = beforeOffset,
SharedAccessExpiryTime = afterOffset
}).TrimStart('?')
};
return builder.Uri;
}
ich überprüft haben, dass die Service-Version mindestens „2013.08.15“ gesetzt ist und dass der Blob-Element hat die richtige Inhaltstyp festgelegt.
Ich weiß, dass das Format der URI korrekt ist, weil ich es in einem Browser einfügen kann, und es auch in einer Windows 8-Store-Anwendung verwendet, und das Video Streams korrekt.
Wenn ich jedoch das gleiche uri wie die Quelle für ein WPF MediaElement zuweisen, bekomme ich eine NullReferenceException tief in den inneren Funktionen von MediaPlayer.Open().
könnten Sie eine nicht ablaufende URL zu einem Beispielvideo bereitstellen? – pushpraj
Die Testvideos sind die Standard-Referenzdateien wie http://download.blender.org/peach/bigbuckbunny_movies/BigBuckBunny_320x180.mp4, aber behoben, so dass der Header am Anfang der Datei und nicht am Ende mit http:/steht /renaun.com/blog/2010/06/qtindexswapper-2/. Wie ich schon sagte, streamen sie gut in einem Webbrowser und Windows 8.1 Store-Anwendung, nur nicht in WPF. Sie strömen auch gut von einem nicht sicheren Blob-Container zu WPF, aber die Art des Inhalts (mögliche Polizei Beweise) erfordert einen sicheren Container verwendet werden. – Peregrine