Azure 媒体服务:获取需要编码的视频时长

Azure Media Services: Get the duration of a video that needs to be encoded

是否可以在创建编码作业之前使用 Azure 媒体服务 .NET SDK 获取视频的持续时间?如果持续时间超过阈值,我需要忽略编码请求。 blob 使用 SAS 令牌上传,不幸的是令牌无法强制执行此限制,所以我必须在服务器端进行验证。

很遗憾,我们没有 API 来“探测”存储中或远程 URL 上的文件。 然而......也就是说,有一种方法可以做到这一点。我已经看到人们构建了一个仅托管 FFProbe 或 MediaInfo.exe 的 Azure Functions 来非常快速地完成这项工作。您甚至可能会找到其中的样本。

例如,这是我们使用 ffmpeg.exe 制作的,您可以修改为使用 ffprobe.exe https://github.com/Azure-Samples/media-services-v3-dotnet-core-functions-integration/blob/master/Encoding/Encoding/VodFunctions/ffmpeg-encoding.cs