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

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

问题一: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

 

相关文章
|
12月前
|
Java API 数据处理
Java新特性:使用Stream API重构你的数据处理
Java新特性:使用Stream API重构你的数据处理
|
11月前
|
Java 开发工具
【Azure Storage Account】Java Code访问Storage Account File Share的上传和下载代码示例
本文介绍如何使用Java通过azure-storage-file-share SDK实现Azure文件共享的上传下载。包含依赖引入、客户端创建及完整示例代码,助你快速集成Azure File Share功能。
712 6
|
11月前
|
API 网络安全 网络架构
【Azure APIM】解答REST API实现"禁用自签名证书的证书链验证"中的backends参数值从那里取值的问题?
本文介绍APIM服务调用后端API时因自签名证书导致500错误的解决方案。通过REST API禁用证书链验证,关键在于获取正确的backendId(即APIM中配置的Backend名称),并调用PATCH接口设置validateCertificateChain为false,从而解决SSL/TLS信任问题。
346 7
|
Java API 开发工具
【Azure Developer】Java代码实现获取Azure 资源的指标数据却报错 "invalid time interval input"
在使用 Java 调用虚拟机 API 获取指标数据时,因本地时区设置非 UTC,导致时间格式解析错误。解决方法是在代码中手动指定时区为 UTC,使用 `ZoneOffset.ofHours(0)` 并结合 `withOffsetSameInstant` 方法进行时区转换,从而避免因时区差异引发的时间格式问题。
469 4
|
12月前
|
Java 大数据 API
Java Stream API:现代集合处理与函数式编程
Java Stream API:现代集合处理与函数式编程
471 100
|
12月前
|
Java API 数据处理
Java Stream API:现代集合处理新方式
Java Stream API:现代集合处理新方式
448 101
|
12月前
|
并行计算 Java 大数据
Java Stream API:现代数据处理之道
Java Stream API:现代数据处理之道
556 101
|
安全 Java API
使用 Java 构建强大的 REST API 的四个基本技巧
本文结合探险领域案例,分享Java构建REST API的四大核心策略:统一资源命名、版本控制与自动化文档、安全防护及标准化异常处理,助力开发者打造易用、可维护、安全可靠的稳健API服务。
636 116
|
存储 Java API
Java Stream API:现代数据处理之道
Java Stream API:现代数据处理之道
505 188
|
存储 Java API
Java Stream API:现代数据处理之道
Java Stream API:现代数据处理之道
435 92