系列文章目录
提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加
例如:第一章 Python 机器学习入门之pandas的使用
提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档
目录
系列文章目录
文章目录
前言
一、图片工具ImageMagickUtils
方法:
参数介绍:
输入参数
二、视频工具FFmpegUtils
方法:
1.获取视频信息
输入参数
输出参数
2.截取视频封面
输入参数
输出参数
3.视频压缩
输入参数
输出参数
总结
前言
前言
在开篇综述提到了本项目需要运行环境FFmpeg和ImageMagick,在这里这将会介绍这两个的使用。其中FFmpeg作为一个视频工具拥有强大的功能,ImageMagickUtils则是一个图片工具。在这里将会介绍这两个工具的方法以及相关的参数。
一、图片工具ImageMagickUtils
方法:
1.图片裁切后修改分辨率并指定输出文件格式
cropAndResize(tempDirectory,inputFileName,cropAttributes,resizeAttributes,outputFileSuffix)
2.图片裁切后修改分辨率
cropAndResize(tempDirectory,inputFileName,cropAttributes,resizeAttributes)
3.图片裁切并指定输出文件格式
crop(tempDirectory,inputFileName,cropAttributes,outputFileSuffix)
4.图片裁切
crop(tempDirectory,inputFileName,cropAttributes)
5.图片修改分辨率并指定输出文件格式
resize(tempDirectory,inputFileName,resizeAttributes,outputFileSuffix)
6.图片修改分辨率
resize(tempDirectory,inputFileName,resizeAttributes)
参数介绍:
输入参数
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| tempDirectory | String | 是 | 临时文件目录 |
| inputFileName | String | 是 | 输入文件名 |
| cropAttributes | CropAttributes | 否 | 裁切参数 |
| resizeAttributes | ResizeAttributes | 否 | 修改分辨率参数 |
| outputFileSuffix | Suffix | 否 | 输出文件格式,未设置则同输入文件格式 |
其中:
CropAttributes
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| width | Integer | 是 | 裁切图片的宽 |
| height | Integer | 是 | 裁切图片的高 |
| leftOffset | Integer | 是 | 距左边偏移量 |
| topOffset | Integer | 是 | 距顶部偏移量 |
ResizeAttributes
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| width | Integer | 否 | 输出图片的宽,只填写宽则高自适应 |
| height | Integer | 否 | 输出图片的高,只填写高则宽自适应 |
| quality | Integer | 否 | 输出图片的质量,范围0~100,默认100 |
输出参数
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| outputFileName | String | 是 | 输出文件名 |
二、视频工具FFmpegUtils
方法:
1.获取视频信息
getInfo(tempDirectory,inputFileName)
输入参数| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| tempDirectory | String | 是 | 临时文件目录 |
| inputFileName | String | 是 | 输入文件名 |
输出参数
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| format | FFFormat | 是 | 文件信息 |
| videoInfo | VideoInfo | 是 | 视频信息 |
| audioInfo | AudioInfo | 是 | 音频信息 |
其中:
FFFormat
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| filename | String | 是 | 文件名全路径名 |
| duration | String | 是 | 文件时长 |
| size | String | 是 | 文件大小 |
| bitRate | String | 是 | 文件比特率 |
VideoInfo
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| codecName | String | 是 | 视频 编码名称 |
| codecType | String | 是 | 类型 video |
| width | Integer | 是 | 视频 宽度 |
| height | Integer | 是 | 视频 高度 |
| frameRate | Integer | 是 | 视频 帧率 |
| duration | Integer | 是 | 视频 时长 |
| bitRate | Integer | 是 | 视频 比特率 |
| nbframes | Integer | 是 | 视频 总帧数 |
AudioInfo
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| codecName | String | 是 | 音频 编码名称 |
| codecType | String | 是 | 类型 audio |
| duration | Integer | 是 | 音频 时长 |
| bitRate | Integer | 是 | 音频 比特率 |
| sampleRate | Integer | 是 | 音频 采样率 |
| channels | Integer | 是 | 音频 声道数 1:单声道 2:双声道 |
2.截取视频封面
createCover(tempDirectory, inputFileName, outputFileSuffix)
createCover(tempDirectory, inputFileName)
输入参数| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| tempDirectory | String | 是 | 临时文件目录 |
| inputFileName | String | 是 | 输入文件名 |
| outputFileSuffix | Suffix | 否 | 输出文件格式,默认jpg |
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| outputFileName | String | 是 | 输出文件名 |
3.视频压缩
putCompressionTask(tempDirectory, inputFileName, compressionAttributes)
putCompressionTask(tempDirectory, inputFileName, compressionAttributes, outputFileName)
输入参数| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| tempDirectory | String | 是 | 临时文件目录 |
| inputFileName | String | 是 | 输入文件名 |
| compressionAttributes | CompressionAttributes | 是 | 压缩参数 |
| outputFileName | String | 否 | 输出文件名,默认UUID生成 |
其中:
CompressionAttributes
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| videoAttributes | VideoAttributes | 否 | 视频压缩参数 |
| audioAttributes | AudioAttributes | 否 | 音频压缩参数 |
| progressUrl | String | 是 | 压缩完成后的回调地址 |
VideoAttributes
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| codec | VideoCodec | 否 | 视频编码(默认libx264,libx265) |
| maxFps | Integer | 否 | 最大帧率 |
| videoSize | VideoSize | 否 | 视频分辨率(hd480,hd720,hd1080,800x800) |
| maxDuration | Integer | 否 | 最大时长 |
| maxBitRate | Integer | 否 | 视频最大比特率 |
AudioAttributes
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| maxBitRate | Integer | 否 | 音频最大比特率 |
| maxSamplingRate | Integer | 否 | 音频最大采样率 |
| quality | Integer | 否 | 输出图片的质量,范围0~100,默认100 |
| 参数 | 类型 | 必需 | 注释 |
|---|---|---|---|
| outputFileName | String | 是 | 输出文件名 |
总结
以上就是本次分析的内容,主要是了解一下multimedia utils所使用的两个工具。



