2016-11-07 4 views
0

Ich lade Videos in Azure-Mediendienste hoch (hier kann die Videogröße variieren) und erfordert adaptives Streaming. So weit mein Wissen (wenn nicht falsch) für das die folgenden Schritte getan werden müssen.So beschleunigen Sie die Codierung von Azure-Mediendiensten

1) Video auf Azure-Mediendienste hochladen.

2) Encode die Videos (Zeit) unter

3) URL veröffentlichen.

Hier, wenn ich die oben genannten Operationen für ein Video mache, dauert es länger als 2 Minuten, was zu Performance-Problemen führt. Ich muss wissen, gibt es eine Möglichkeit oder eine Optimierung für die Steigerung der Leistung. Ich benutze MVC Web Api, die von der iOS App aufgerufen wird. Hier nimmt sich die Web-API Zeit für die oben genannten Prozesse.

Antwort

2

Die Codierung ist zeitaufwändig und Sie sollten einen Benutzeroberflächenaufruf nicht blockieren und warten, bis die Jobverarbeitung abgeschlossen ist. Sobald der Job erstellt wurde, erhalten Sie eine Job-ID, mit der Sie den Jobfortschritt in einem separaten Prozess verfolgen und den Benutzer zum Beispiel per Push-Benachrichtigung benachrichtigen können, wenn die Codierung abgeschlossen ist.

Siehe https://azure.microsoft.com/en-us/documentation/articles/media-services-rest-check-job-progress/, um zu sehen, wie die Abfrage des Jobfortschritts implementiert werden kann.

Sie können auch einen Job erstellen, der dem Benachrichtigungsabonnement zugeordnet ist, und die azure Speicherwarteschlange verwenden, um eine Benachrichtigung zu erhalten: https://msdn.microsoft.com/en-us/library/azure/hh974289.aspx#create_jobs_with_notifications. Sie können den End-to-End-Test TestJobWithTaskNotificationToBothAzureQueueAndWebHookEndPoint() in https://github.com/Azure/azure-sdk-for-media-services/blob/dev/test/net/Scenario/JobTests.cs betrachten.

Um die Codierung selbst zu beschleunigen, müssen Sie den Kauf reservierter Medieneinheiten in Erwägung ziehen, um viele Aufträge parallel verarbeiten zu können und Verarbeitungskapazitäten reserviert zu haben, die nicht mit anderen Mandanten geteilt werden. Dies ist sinnvoll, wenn viele Nutzer Videos gleichzeitig hochladen und kodieren. Aber wie ich oben erwähnt habe, wird es das von Ihnen beschriebene Verzögerungsproblem nicht vollständig lösen. Sie müssen in Ihrer UI-App nicht blockieren und warten, während sich die Jobs im Verarbeitungsstatus befinden.

+0

Danke für die Hilfe. Ich werde es überprüfen und Sie darüber informieren. – hashimks

+0

Ich habe dies überprüft und den Kauf der Medien reservierten Einheiten gab uns keinen erheblichen Unterschied in der Leistung. Es gibt jedoch einen Unterschied. Dann wird das Erstellen einer separaten Aufgabe nicht mit der Anforderung meiner Anwendung funktionieren. – hashimks

Verwandte Themen