媒体编码作业后清理资产和 Blob

Cleanup Assets and Blobs after media encoding job

我正在使用以下工作流程,它留下了几个应该清理的原始资产和 blob 副本。我想确保只保留必要的资产以播放已编码的视频。另外我想知道是否有更有效的方法来创建编码资产。似乎唯一可以做的改进是将 blob 直接上传到媒体服务容器,而不必复制 blob。

我正在使用以下工作流程:

  1. 从我的网站,视频文件上传到非媒体服务容器
  2. 上传文件后,为 blob 创建一个消息队列
  3. Azure Web 作业接收消息队列
  4. 上传的 blob 被复制到媒体服务容器
  5. 从复制的 blob 创建媒体服务资产
  6. 从 H264 自适应比特率 MP4 集 720p 的新资产开始媒体编码器作业
  7. 作业完成后,删除原来的blob、第一个资产和队列消息

正如您已经提到的优化步骤之一是消除将媒体文件上传到 none 媒体关联存储。此外,由于您已经在使用 azure 队列,因此您可以使用它们在工作完成时收到通知。根据提议的更改,您的工作流程将是。

  1. 在 UI 中,您在上传开始前调用资产创建。
  2. 用户直接上传到与媒体帐户关联的存储。见
  3. 上传完成后,触发创建具有与之关联的 Azure 队列的媒体作业。参见 https://docs.microsoft.com/en-us/azure/media-services/media-services-dotnet-check-job-progress-with-queues
  4. 当 azure queue 收到有关作业完成的消息时监听,并在收到消息后执行源资产删除。您可以为此使用 azure 函数。 https://docs.microsoft.com/en-us/azure/azure-functions/functions-bindings-storage