对空间中的资源请求 pfop 持久化数据处理。参考:七牛数据处理 pfop 文档
- 操作需要指定数据源,默认表示从七牛空间列举文件执行操作,如非默认或需更多条件,请先配置数据源
- 支持通过
-a=<account-name>
/-d
使用已设置的账号,则不需要再直接设置密钥,参考:账号设置 - 单次请求一个 pfop 操作请参考 single 操作
- 交互式操作随时输入 key 进行 pfop 请参考 interactive 操作
config.txt
path=
process=pfop
ak=
sk=
bucket=
indexes=
pipeline=
notifyURL=
force=
force-public=
fops-index=
pfop-config=
#cmd=
#saveas=
参数名 | 参数值及类型 | 含义 |
---|---|---|
process=pfop | 数据处理时设置为pfop | 表示数据处理操作 |
ak、sk | 长度40的字符串 | 七牛账号的ak、sk,通过七牛控制台个人中心获取,当数据源为 qiniu 时无需再设置 |
bucket | 字符串 | 操作的资源原空间,当数据源为 qiniu 时无需再设置 |
indexes | 字符串 | 设置输入行中 key 字段的下标(有默认值),参考数据源 indexes 设置 |
pipeline | 字符串 | 进行持久化数据处理的队列名称 |
notifyURL | URL 字符串 | 进行持久化结果回调的服务器通知地址,接受七牛的 POST 回调请求 |
force | true/false | 持久化生成的文件名如果空间中已存在是否进行强制覆盖,默认为 false |
force-public | true/false | 是否强制使用共有队列(会有性能影响),未指定 pipeline 的情况需要设置为 true |
fops-index | 字符串 | 转码命令索引(下标),未设置任何索引时根据 parse 类型默认为 1 或 "fops",用于解析输入行中的转码命令,建议转码命令中携带 saveas 重命名指令否则生成默认文件名 |
pfop-config | 文件路径字符串 | 进行转码和另存规则设置的 json 配置文件路径,可设置多个转码条件和指令,该配置会覆盖 fops-index 设置的转码命令,配置写法 |
cmd | 字符串 | pfop 命令,如 avthumb/mp4,和 pfop-config 中的 cmd 相同,如果不想设置 pfop-config 配置文件则可采用 cmd + saveas 设置的方式 |
saveas | 字符串 | saveas 的格式,如 bucket:$(key)F720.mp4,和 pfop-config 中的 saveas 相同,如果不想设置 pfop-config 配置文件则可采用 cmd + saveas 设置的方式 |
运行参数:-config=config.txt
指定输入行中对应转码的命令字段下标,不设置为则无法进行解析。由于转码必须参数包含 key 和 fops,因此输入行中也必须包含 key 字段的值,使用 indexes 参数设置 key 下标,同时 key 下标不能与 fops 下标相同,参见 indexes 索引及关于 parse 和索引。
{
"pfop":[
{
"cmd":"avthumb/mp4/s/1280x720/autoscale/1",
"saveas":"bucket:$(name)_F720.mp4"
},
{
"cmd":"avthumb/mp4/s/720x480/autoscale/1",
"saveas":"bucket:480p-$(key)"
},
{
"cmd":"avsmart/mp4",
"saveas":"bucket:$(name)-avsmart.mp4"
}
]
}
如上所示,pfop 操作的配置名称为 "pfop",配置项为 json array,可参见 pfop-config 配置
必须选项 | 含义 |
---|---|
key | 上述配置文件中的 "F720" 为转码项名称,设置为 json key,key 不可重复,重复情况下后者会覆盖前者 |
cmd | 需要指定的转码指令 |
saveas | 转码结果另存的格式,写法为:<bucket>:<key> ,其中 <key> 支持魔法变量 |
$(name)
表示去除后缀的原始文件名(如 a.jpg/a.png/a 的 $(name) 均为 a)
$(ext)
表示文件名的后缀部分(如 a.jpg/b.jpg 的
$(key)
表示完整的原始文件名(如 a.jpg/a.png 的 $(key) 分别为为 a.jpg/a.png)
格式需要遵循 <bucket>:<key>
,允许只有 <bucket>
,此时表示由七牛自动生成文件名,但是不允许缺少 <bucket>
,且不允许以 :
开头或结尾的格式。
-path= -process=pfop -ak= -sk= -bucket= -pipeline= -force-public=