【发布时间】:2021-09-12 21:05:10
【问题描述】:
我想将 Azure Blob 存储用于视频托管。这些视频通过 HTML 视频播放器集成到我的网站中:
<video controls>
<source src="blobstorageurl" type="video/mp4">
Your browser does not support HTML video.
</video>
所以我创建了一个 Blob 容器,用于上传视频。 Azure 函数(Blob 触发器)正在观察此容器。上传新视频时,Azure 函数应启动 AMS 作业,并将新文件作为源。
我使用了官方例子的逻辑(https://github.com/Azure-Samples/media-services-v3-node-tutorials/blob/main/AMSv3Samples/StreamFilesSample/index.ts)。
这是我的代码的一个小分解:
const blobTrigger: AzureFunction = async function (context: Context, myBlob: any): Promise<void> {
...
mediaServicesClient = new AzureMediaServices(creds, subscriptionId, clientOptions);
let job = await mediaServicesClient.jobs.create(resourceGroup, accountName, transformName, jobName, { input: context.bindingData.uri, outputs: jobOutputs });
}
这基本上创建了一个带有编码文件的新 blob 容器。
我的问题是,如何将此文件提供给我的 HTML 视频播放器。 在教程中,他们创建了一个流式定位器,我不能将其用于 HTML 5 播放器。 我可以直接使用blob吗?或者这不是一个好主意?如果是,我如何在没有任何访问密钥的情况下提供它。
【问题讨论】:
标签: azure azure-blob-storage azure-media-services