Azure媒体流中UUID命名的.ism文件访问失败问题求助
针对Azure媒体服务UUID文件名ISM访问失败的解决方法
问题核心
使用UUID格式命名的MP4文件(如567d8351-3512-402b-a181-df704d08123e.mp4)可直接访问Blob,但对应的.ism/manifest路径返回MPE_STORAGE_RESOURCE_NOT_FOUND错误,重命名为普通文件名后恢复正常。
可能原因
Azure媒体服务在处理流媒体索引文件(ISM)时,对包含连字符的UUID格式文件名存在解析逻辑问题,导致服务无法正确关联Blob存储中的源MP4文件,尽管文件实际存在。
可行解决方案
临时快速修复:重命名文件
如你已验证,将UUID格式文件名改为无特殊分隔符的普通名称(如sample.mp4),重新上传后即可正常生成和访问ISM manifest。适合紧急场景或小批量文件处理。重新关联媒体服务资产
删除现有关联的资产,重新创建新资产并上传UUID命名的MP4文件。部分情况下,首次创建资产时的元数据解析异常会导致后续ISM生成失败,重新创建可重置关联逻辑。手动生成流媒体资产(CLI/API方式)
通过Azure CLI手动执行资产创建、上传和转码流程,绕过自动生成可能的解析问题:# 创建资产 az ams asset create --account-name <媒体服务账户名> --resource-group <资源组名> --name <自定义资产名> --storage-account <存储账户名> # 上传UUID命名的MP4文件 az ams asset upload --account-name <媒体服务账户名> --resource-group <资源组名> --name <自定义资产名> --path <本地UUID文件路径> # 创建转码规则(使用预设) az ams transform create --account-name <媒体服务账户名> --resource-group <资源组名> --name <自定义转码规则名> --preset "H264MultipleBitrate720p" # 提交转码任务 az ams job create --account-name <媒体服务账户名> --resource-group <资源组名> --transform-name <自定义转码规则名> --input-asset <自定义资产名> --output-asset <输出资产名>任务完成后,尝试访问新生成的ISM manifest路径。
检查存储权限配置
确认媒体服务账户对Blob存储容器拥有Storage Blob Data Reader或更高权限。即使Blob可直接访问,媒体服务内部处理时可能因权限不足导致资源找不到的错误。
内容的提问来源于stack exchange,提问作者VJ P
相关产品推荐
相关产品推荐

