Qui*_*ver 1 azure azure-media-services azure-functions
我正在使用Azure Media Services v3一个Azure Function v3应用程序,并在尝试从 https url 创建新作业时遇到问题。
我在Azure Function提交作业中有以下方法。
private static async Task<Job> SubmitJobAsync(IAzureMediaServicesClient client, string transformNam, string jobName, string fileUrl) {
JobInputHttp jobInput = new JobInputHttp(files: new [] { fileUrl });
JobOutput[] jobOutputs =
{
new JobOutputAsset(jobName)
}
Job job = await client.Jobs.CreateAsync(
_resourceGroupName,
_accountName,
transformName,
jobName,
new Job
{
Input = jobInput,
Outputs = jobOutputs
},
CancellationToken.None);
return job;
}
Run Code Online (Sandbox Code Playgroud)
它在实际创建作业的线路上失败,await client.Jobs.CreateAsync(...
并返回一个带有以下消息的异常:
操作返回了无效的状态代码“BadRequest”
堆栈跟踪:
在 Microsoft.Azure.Management.Media.JobsOperations.CreateWithHttpMessagesAsync(String resourceGroupName, String accountName, String transformName, String jobName, Job parameters, Dictionary`2 customHeaders, CancellationToken cancelationToken) 在 Microsoft.Azure.Management.Media.JobsOperationsExtensions.CreateAsync(IJobsOperations操作、字符串资源组名称、字符串帐户名称、字符串转换名称、字符串作业名称、作业参数、CancellationToken 取消令牌)
知道这意味着什么或我如何进一步调试吗?
我认为问题在于您在创建作业之前没有创建输出资产。尝试在创建作业之前添加这些行:
string outputAssetName = jobName;
Asset outputAsset = await client.Assets.CreateOrUpdateAsync(_resourceGroupName, _accountName, outputAssetName, new Asset());
JobOutput[] jobOutputs =
{
new JobOutputAsset(outputAssetName)
}
Run Code Online (Sandbox Code Playgroud)
另见:https : //github.com/Azure-Samples/media-services-v3-dotnet-core-functions-integration/blob/master/LiveAndVodDRMOperationsV3/LiveAndVodDRMOperationsV3/VodFunctions/submit-job.cs
| 归档时间: |
|
| 查看次数: |
292 次 |
| 最近记录: |