【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

 

相关文章
|
3天前
|
Java 大数据 API
别死脑筋,赶紧学起来!Java之Steam() API 常用方法使用,让开发简单起来!
分享Java Stream API的常用方法,让开发更简单。涵盖filter、map、sorted等操作,提高代码效率与可读性。关注公众号,了解更多技术内容。
|
1天前
|
Java 程序员 测试技术
Java|让 JUnit4 测试类自动注入 logger 和被测 Service
本文介绍如何通过自定义 IDEA 的 JUnit4 Test Class 模板,实现生成测试类时自动注入 logger 和被测 Service。
15 5
|
18天前
|
存储 Java API
如何使用 Java 中的 API 更改 PDF 纸张大小
如何使用 Java 中的 API 更改 PDF 纸张大小
35 11
|
17天前
|
机器学习/深度学习 算法 Java
通过 Java Vector API 利用 SIMD 的强大功能
通过 Java Vector API 利用 SIMD 的强大功能
32 10
|
17天前
|
分布式计算 Java 大数据
大数据-147 Apache Kudu 常用 Java API 增删改查
大数据-147 Apache Kudu 常用 Java API 增删改查
22 1
|
1月前
|
Java API C++
Java 8 Stream Api 中的 peek 操作
本文介绍了Java中`Stream`的`peek`操作,该操作通过`Consumer<T>`函数消费流中的每个元素,但不改变元素类型。文章详细解释了`Consumer<T>`接口及其使用场景,并通过示例代码展示了`peek`操作的应用。此外,还对比了`peek`与`map`的区别,帮助读者更好地理解这两种操作的不同用途。作者为码农小胖哥,原文发布于稀土掘金。
Java 8 Stream Api 中的 peek 操作
|
10天前
|
Java 数据库
基于java的汽车服务管理系统(Car Service Management System)
基于java的汽车服务管理系统(Car Service Management System)
13 0
|
11天前
|
SQL Java API
深入探索Java的持久化技术——JPA(Java Persistence API)
【10月更文挑战第10天】深入探索Java的持久化技术——JPA(Java Persistence API)
10 0
|
11天前
|
Java API 数据库
深入探索Java的持久化技术——JPA(Java Persistence API)
【10月更文挑战第10天】深入探索Java的持久化技术——JPA(Java Persistence API)
14 0
|
1月前
|
Java 程序员 API
Java 8新特性之Lambda表达式与Stream API的探索
【9月更文挑战第24天】本文将深入浅出地介绍Java 8中的重要新特性——Lambda表达式和Stream API,通过实例解析其语法、用法及背后的设计哲学。我们将一探究竟,看看这些新特性如何让Java代码变得更加简洁、易读且富有表现力,同时提升程序的性能和开发效率。