【短视频SDK - 参数解析】对焦模式、裁剪模式、视频质量、分辨率、视频比例、帧率、关键帧间隔等参数解析

简介: 短视频SDK中有许多的参数需要开发者来填写,开发者需要对这些参数有一个基本的了解,看完本文希望开发者能够根据自己的业务设置这些参数.以达到最好的效果.

1.参数简析

参数名称 简介 影响
裁剪模式 分为填充模式和裁剪模式 影响图像画面的展示细节
视频质量 是指生成的视频的输出参数,是一组参数决定的数值 视频清晰度和文件大小
分辨率 图像分辨率则是单位英寸中所包含的像素点数,分辨率影响图像大小,与图像大小成正比:分辨率越高,图像越大;分辨率越低,图像越小。 影响视频文件大小和画面大小
视频比例 视频预览和输出的比例,常用1:1,4:3,3:4,16:9,9:16 根据需求不同展示不同的比例,影响视频大小
帧率 默认:25fps 影响视频的连贯度,通俗的来讲就是过小就会显得卡顿
关键帧间隔 单位:fps, 跟帧率设置有关,设置值最小为50fps,建议值125 影响视频清晰度
对焦模式 录制时可以设置手动对焦或者是追焦模式 视频清晰度和需要对焦的点

2.详细解析

2.1 裁剪模式

裁剪模式在导入编辑、导入裁剪模块都有用到,主要是渲染视频或者是裁剪视频时需要决定画面的大小.

2.1.1 画面填充模式

是指设置的输出的视频大小始终能够显示完整的视频画面,整体画面比例如果不一致会通过补黑边的形式来显示画面.
典型例子:视频原始大小为640*360 输出大小设置为360*640
_

2.1.2 画面裁剪模式

是指设置的输出大小只会显示设置的裁剪区域大小的视频画面.不会有黑边
典型示例:视频原始大小为480*640,输出大小为360*640.
原始视频演示大小示例图:
480_640_
裁剪视频演示大小示例图:
360_640_

注意:所以画面裁剪模式可能会出现画面显示不全的情况,我们需要尽量多的显示画面,如何尽量多的显示画面呢?见:如何做到视频原始比例裁剪?

2.2 视频质量:VideoQuality(Android) / AliyunVideoQuality(iOS)

我们录制、裁剪、编辑合成时都会需要设置视频质量,这个参数非常重要,直接决定你生成视频的清晰度和文件大小.参数有(以Android为例,iOS仅名字有差异):SSD,HD,SD,LD,PD,EPD六档,用户可以根据自己的业务需求来选择自己的参数.demo的参数设置即为我们推荐的参数设置.

之后会提供一个文件大小和清晰度的对比,以此来帮助用户选择参数.(立Flag)

2.3 分辨率 和 视频比例

我们将分辨率和视频比例放在一起讲是因为这是决定视频画面大小的点.
Demo中提供了一些常规的分辨率和视频比例选择,但是事实上接口上是支持任意分辨率的(除基础版本).用户可以根据自己的业务来任意选择.
常规的分辨率为:360p,480p,540p,720p
常规的视频比例:1:1,3:4,4:3,9:16,16:9

示例:如选择360p,9:16的视频比例.则视频分辨率为:360*640

2.4 帧率 和 关键帧间隔(GOP)

帧率:每秒的帧数(fps)或者说帧率表示图形处理器处理场时每秒钟能够更新的次数.高的帧率可以得到更流畅、更逼真的动画。一般来说30fps就是可以接受的流畅度了.目前Demo默认设置25.
关键帧: 是一个完整的画面,是一个画面里面最重要的,如果一个画面组中没有关键帧就会出现花屏现象.
关键帧间隔(GOP):一个GOP就是一个画面组,字面意思也很简单,两个关键帧之间的间隔就是关键帧间隔,单位为fps(帧),比如设置的帧率为25,关键帧间隔设置为125,则这个GOP的时长就是:125/25 = 5s.

参数建议示例:因为我们都是短视频,涉及到播放的seek问题,所以建议帧率25,GOP设置50.不建议太高.

2.7 对焦模式

2.7.1 Android

AliyunIRecorder的setFocusMode接口.目前安卓提供两种对焦模式,自动对焦和追焦模式.具体参考demo中的写法.(基础版无设置选项)

    - 自动对焦:mRecorder.setFocusMode(CameraParam.FOCUS_MODE_AUTO);
    - 追焦:mRecorder.setFocusMode(CameraParam.FOCUS_MODE_CONTINUE);

2.7.2 iOS

自动对焦,且能够对某个点对焦,具体参考Demo中录制接口的focusPoint.


本文为【问答合集】阿里视频云常见技术问题汇总——内含技术文档40+ 持续更新中 系列文章之一,如果本文还不能解决你的问题可以在汇总合集中查看,有任何问题也欢迎回复,谢谢.

目录
相关文章
|
29天前
|
域名解析 移动开发 负载均衡
阿里云DNS常见问题之DNS负载均衡调加权模式失败如何解决
阿里云DNS(Domain Name System)服务是一个高可用和可扩展的云端DNS服务,用于将域名转换为IP地址,从而让用户能够通过域名访问云端资源。以下是一些关于阿里云DNS服务的常见问题合集:
|
2月前
|
分布式计算 大数据 数据库连接
maxcompute开发环境问题之参数解析失败如何解决
MaxCompute开发环境是指设置和配置用于开发MaxCompute项目的本地或云端环境;本合集将指导用户如何搭建和管理MaxCompute开发环境,包括工具安装、配置和调试技巧。
|
1月前
|
机器学习/深度学习 算法 编译器
【C++ 泛型编程 中级篇】深度解析C++:类型模板参数与非类型模板参数
【C++ 泛型编程 中级篇】深度解析C++:类型模板参数与非类型模板参数
47 0
|
2月前
|
监控 API 开发者
Sentinel之道:流控模式解析与深度探讨
Sentinel之道:流控模式解析与深度探讨
54 0
|
3月前
|
数据采集 API 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置软件触发模式(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK设置软件触发模式(C++)
31 0
|
3月前
|
传感器 编解码 监控
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取相机当前实时帧率(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK获取相机当前实时帧率(C++)
29 0
|
3月前
|
存储 编解码 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C#)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C#)
37 0
|
1月前
|
缓存 前端开发 Java
【二十八】springboot之通过threadLocal+参数解析器实现同session一样保存当前登录信息的功能
【二十八】springboot之通过threadLocal+参数解析器实现同session一样保存当前登录信息的功能
34 1
|
3月前
|
存储 编解码 开发工具
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C++)
Baumer工业相机堡盟工业相机如何通过NEOAPI SDK使用UserSet功能保存和载入相机的各类参数(C++)
33 0
|
4天前
|
前端开发 Java
SpringBoot之实体参数的详细解析
SpringBoot之实体参数的详细解析
10 0

推荐镜像

更多