我正在上传Azure媒体服务中的视频(此处视频大小可能会有所不同),并且需要自适应流媒体。因此,至于我的知识(如果没有错误),需要完成以下步骤。
1)将视频上传到Azure媒体服务。
2)对视频进行编码(拍摄时间)
3)发布网址。
当我对视频进行上述操作时,需要花费更多时间说2分钟以上,这会导致与性能相关的问题。我需要知道是否有任何方法或任何优化来提高性能。我正在使用iOS应用程序调用的MVC Web Api。在这里,web api需要时间来完成上述过程。
答案 0 :(得分:2)
编码是一个耗时的过程,您不应该阻止UI调用并等待作业处理完成。创建作业后,您将获得作业ID,您可以使用该作业ID在单独的过程中跟踪作业进度,并在编码完成时通过推送通知通知用户。
请参阅https://azure.microsoft.com/en-us/documentation/articles/media-services-rest-check-job-progress/,了解如何实施对工作进度的轮询。
您还可以创建与通知订阅相关联的作业,并使用azure存储队列来获取通知:https://msdn.microsoft.com/en-us/library/azure/hh974289.aspx#create_jobs_with_notifications。您可以在https://github.com/Azure/azure-sdk-for-media-services/blob/dev/test/net/Scenario/JobTests.cs中查看端到端测试TestJobWithTaskNotificationToBothAzureQueueAndWebHookEndPoint()。
为了加快编码速度,您需要考虑购买媒体预留单元,以便能够并行处理多个作业,并保留不与其他租户共享的处理能力。当你有很多用户同时上传和编码视频时,这是有意义的。但正如我上面提到的,它不会完全解决你所描述的延迟问题。当作业处于处理状态时,您无需在UI应用程序中阻止和等待。