您的位置:首页 > 编程语言 > Java开发

【Azure 媒体服务】记录使用Java调用Media Service API时候遇见的一些问题

2022-03-02 20:38 471 查看

问题一:java.lang.IllegalArgumentException: Parameter this.client.subscriptionId() is required and cannot be null.

参考 “ 连接到媒体服务 v3 API - Java ” 文档中“ 连接到 Java 客户端 ” 部分的代码时候,遇见了 subscriptionId() 方法抛错。这是因代码中 credentials.withDefaultSubscriptionId(subscriptionId) 所使用的 subscriptionId 不正确二导致的。

错误截图

 

问题二: 自定义编码Demo

如果使用平台默认提供的编码,参考EncodingWithMESPredefinedPreset Demo:https://github.com/Azure-Samples/media-services-v3-java/blob/master/VideoEncoding/EncodingWithMESPredefinedPreset/src/main/java/sample/EncodingWithMESPredefinedPreset.java

.NET远程文件编码: https://docs.azure.cn/zh-cn/media-services/latest/stream-files-dotnet-quickstart

编码预设的解释参考:https://docs.microsoft.com/zh-cn/rest/api/media/transforms/create-or-update#encodernamedpreset  和 
https://docs.microsoft.com/zh-cn/azure/media-services/previous/media-services-mes-preset-h264-multiple-bitrate-1080p-audio-5.1

 

问题三:媒体服务的 视频发布 具体是有什么用呢?不发布还是可以通过Blob URL查看吗?

一般使用媒体服务会将视频上传到媒体服务、进行编码以及发布,通过发布之后的生成的 URL 会供其他的用户进行观看的,这个 URL  会包含一些流媒体协议,供不同平台使用的,不仅仅是.MP4文件。也可以对播放文件进行加密操作的,如果不需要使用到后面的功能,只是需要 mp4 格式文件即可的话,可以不发布,直接使用 Blob 的 URL 进行访问和下载。

 

问题四:每次上传视频 Blob 都会创建一个新的容器 而且那个容器是专用的,不能匿名访问。那么,可以向一个固定容器上传视频吗

这个是不能指定的,当上传文件的时候,会首先创建一个资产ID ,之后根据这个ID在 Media Service所配置的 Storage Account 中创建一个 Blob。可以通过SAS(共享访问签名)的方式生成URL进行访问。

 

问题五:预设转码转的是视频播放的尺寸,并不是清晰度。如果需要转清晰度,如何来进行预设呢?

预设转码指的是视频像素,关于1080的单比特绿描述,是生成一个 AAC 文件,其中视频编码为 6750 kbps 的 node.js 编解码器,图片高度为1080像素,立体声音频使用-LC 编解码器以 128 kbps 进行编码。

 

 

预设里面json文件具体的值说明:https://docs.microsoft.com/zh-cn/azure/media-services/previous/media-services-mes-preset-h264-multiple-bitrate-720p

再编码的过程中,也可以为视频添加上水印,参考文档:https://docs.microsoft.com/en-us/azure/media-services/latest/transform-create-overlay-how-to

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐