视频截帧操作涉及的参数说明及使用示例 |
您所在的位置:网站首页 › 手机怎么截帧 › 视频截帧操作涉及的参数说明及使用示例 |
本文介绍视频截帧操作涉及的参数说明及使用示例。 注意事项使用视频截帧时,按视频截帧截取的图片数量计费。有关计费详情的更多信息,请参见数据处理费用。仅支持对视频编码格式为H264和H265的视频文件进行视频截帧。OSS默认不保存视频截帧的图片,视频截帧的图片需手动下载并保存至本地。参数说明操作分类:video 操作名称:snapshot 参数描述取值范围t指定截图时间。如果设置的截图时间t超过了视频时长,则返回视频的最后一帧关键帧。[0,视频时长]单位:ms w指定截图宽度,如果指定为0,则自动计算。[0,视频宽度]单位:像素(px) h指定截图高度,如果指定为0,则自动计算;如果w和h都为0,则输出为原视频宽高。[0,视频高度]单位:像素(px) m指定截图模式,不指定则为默认模式,根据时间精确截图。如果指定为fast,则截取该时间点之前的最近的一个关键帧。枚举值:fastf指定输出图片的格式。枚举值:jpg和pngar指定是否根据视频信息自动旋转图片。枚举值:auto、h和w各枚举值说明如下: auto:指定在截图生成之后根据视频信息进行自动旋转。h:指定在截图生成之后根据视频信息强制按高大于宽的模式旋转。w:指定在截图生成之后根据视频信息强制按宽大于高的模式旋转。使用示例本文示例使用的Bucket为杭州地域名为oss-console-img-demo-cn-hangzhou的Bucket,视频外网访问地址为: https://oss-console-img-demo-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/video.mp4使用fast模式截取视频7s处的内容,输出为JPG格式的图片,宽度为800,高度为600。处理后的URL为:https://oss-console-img-demo-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/video.mp4?x-oss-process=video/snapshot,t_7000,f_jpg,w_800,h_600,m_fast 使用精确时间模式截取视频17s处的内容,输出为JPG格式的图片,宽度为800,高度为600。处理后的URL为:https://oss-console-img-demo-cn-hangzhou.oss-cn-hangzhou.aliyuncs.com/video.mp4?x-oss-process=video/snapshot,t_17000,f_jpg,w_800,h_600 生成带签名的视频截帧URL您可以通过SDK生成带签名的视频截帧URL,以Java SDK为例,代码如下: // Endpoint以杭州为例,其它Region请按实际情况填写。 String endpoint = "http://oss-cn-hangzhou.aliyuncs.com"; // 强烈建议不要把访问凭证保存到工程代码里,否则可能导致访问凭证泄露,威胁您账号下所有资源的安全。本代码示例以从环境变量中获取访问凭证为例。运行本代码示例之前,请先配置环境变量。 EnvironmentVariableCredentialsProvider credentialsProvider = CredentialsProviderFactory.newEnvironmentVariableCredentialsProvider(); // 填写视频文件所在的Bucket名称,例如examplebucket。 String bucketName = "examplebucket"; // 填写视频文件的完整路径。若视频文件不在Bucket根目录,需携带文件访问路径,例如examplefolder/videotest.mp4。 String objectName = "examplefolder/videotest.mp4"; // 创建OSSClient实例。 OSS ossClient = new OSSClientBuilder().build(endpoint, credentialsProvider); // 使用精确时间模式截取视频17s处的内容,输出为JPG格式的图片,宽度为800,高度为600。 String style = "video/snapshot,t_17000,f_jpg,w_800,h_600"; // 指定过期时间为10分钟。 Date expiration = new Date(new Date().getTime() + 1000 * 60 * 10 ); GeneratePresignedUrlRequest req = new GeneratePresignedUrlRequest(bucketName, objectName, HttpMethod.GET); req.setExpiration(expiration); req.setProcess(style); URL signedUrl = ossClient.generatePresignedUrl(req); System.out.println(signedUrl); // 关闭OSSClient。 ossClient.shutdown();生成带签名的视频截帧URL与生成带签名的图片处理URL的方法类似。如果您需要通过不同语言SDK生成带签名的视频截帧URL,请将如下不同语言SDK的图片处理操作替换为视频截帧操作。 Python SDKPHP SDKGo SDKC SDKC++ SDK.NET SDKAndroid SDKiOS SDKNode.js SDKbrowser.js SDK常见问题私有文件能否通过链接拼接参数进行文件处理?不可以。对于不允许匿名访问的私有视频文件,不支持通过文件URL直接添加参数的方式处理视频,您需要通过SDK的方式将视频处理操作加入签名URL中。 如何查看OSS中视频的长宽尺寸?您可以通过本地部署ffmpeg工具,用ffprobe命令获取视频的长宽尺寸。 |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |