【问题标题】:Azure Media Services - Download Transient ErrorAzure 媒体服务 - 下载暂时性错误
【发布时间】:2021-06-23 13:38:18
【问题描述】:

我的数据库中有很多音频,其 URL 如下:

https://mystorage.blob.core.windows.net/mycontainer/uploaded%2F735fe9dc-e568-4920-a3ed-67230ce01991%2F5998d1f8-1795-4776-a19c-f1bc4a0d4786%2F2020-08-13T13%3A09%3A13.0996703Z?sv=2020-02-10&se=2022-01-05T16%3A58%3A50Z&sr=b&sp=r&sig=hQBPyOE92%2F67MqU%2Fe5V2NsqGzgPxogVeXQT%2BOlvbayw%3D

我将这些 URL 用作我的 JobInput,并提交编码作业,因为我想将音频分发迁移到流媒体方法。 但是,每次我使用这种 URL 时,它都会因 DownloadTransientError 而失败,并且会出现类似while trying to download the input files, the files were not acessible 的消息。

如果我使用更简单的 URL (https://mystorage.blob.core.windows.net/mycontainer/my-audio.wav) 手动将文件上传到 blob 存储,并将其用作 JobInput,它可以无缝工作。我怀疑这与较大 URL 上的特殊字符有关,但我不确定。可能是什么问题?

这是提交作业的代码部分:

            var jobInput = new JobInputHttp(new[]
            {
                audio.AudioUrl.ToString()
            });
            JobOutput[] jobOutput =
            {
                new JobOutputAsset(outputAssetName),
            };


            var job = await client.Jobs.CreateAsync(
                    resourceGroupName: _azureMediaServicesSettings.ResourceGroup,
                    accountName: _azureMediaServicesSettings.AccountName,
                    transformName: TransformName,
                    jobName: jobName,
                    new Job
                    {
                        Input = jobInput,
                        Outputs = jobOutput
                    });

【问题讨论】:

    标签: azure-media-services


    【解决方案1】:

    您需要在提供的 URL 中包含文件名。我将使用您的 URL 作为示例,但也将其取消转义,以便更清晰。 URL 应该类似于 https://mystorage.blob.core.windows.net/mycontainer/uploaded/735fe9dc-e568-4920-a3ed-67230ce01991/5998d1f8-1795-4776-a19c-f1bc4a0d4786/2020-08-13T13:09:13.0996703Z/my-audio.wav?sv=2020-02-10&se=2022-01-05T16:58:50Z&sr=b&sp=r&sig=hQBPyOE92/67MqU/e5V2NsqGzgPxogVeXQT+Olvbayw= 只需包含输入视频或音频文件的实际 blob 名称以及相关的文件扩展名。

    【讨论】:

    • 有趣。但是,我的 blob 存储中的文件名实际上是 2021-02-16T04:27:34.5279015Z。但是,该文件没有扩展名。这可能是问题吗?
    • 问题更可能是文件名本身。媒体服务在 Windows 机器上进行编码,文件名必须符合 Windows 本身支持的内容:docs.microsoft.com/en-us/windows/win32/fileio/…
    • 太棒了。这确实是问题所在。我改用JobInputAsset 解决了这个问题。
    猜你喜欢
    • 2017-09-28
    • 2023-03-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-01-17
    • 1970-01-01
    相关资源
    最近更新 更多