智能多媒体服务

  • 智能多媒体服务 > 使用指南 > 开发指南 >任务创建

    任务创建

    最近更新时间: 2020-09-03 11:58:29

    任务创建的方式包含以下三种:

    • 自动触发:通过配置任务触发器,当文件上传时会自动触发并处理任务,仅支持对增量数据做触发。
    • 指定文件触发:指定 Bucket 中的文件,发起处理任务请求。
    • 主动触发:通过调用 API 发起处理任务请求。

    自动触发

    可通过控制台创建,参见 新建任务工作流

    指定文件触发

    可通过控制台创建,参见 新建任务

    主动触发

    开发者可以通过 API 发起任务处理。可以进入【控制台- 任务列表】查询,也可通过 persistentId查询。

    示例

    以Python Sdk为例,本例将空间名为bucket_name中的视频 key转码为MP4的视频文件,并且保存到目标Bucket_Name,且文件名为自定义文件key

    注意:
    其他语言 SDK 可在官方 SDK下载,可以通过查看 SDK 使用指南中触发持久化使用。

    from qiniu import Auth, PersistentFop, build_op, op_save, urlsafe_base64_encode
    
    # 对已经上传到七牛的视频发起异步转码操作
    # access_key,secret_key在个人面板的密钥管理处获得,非个人账号密码
    access_key = '...'
    secret_key = '...'
    q = Auth(access_key, secret_key)
    
    # 要转码的文件所在的空间和文件名。
    bucket_name = '...'
    key = '...'
    
    # 是使用的队列名称,不设置代表不使用私有队列,使用公有队列。
    pipeline = 'your_pipeline'
    
    # 要进行转码的转码操作。
    fops = 'avthumb/mp4/s/640x360/vb/1.25m'
    
    # 可以对转码后的文件进行使用saveas参数自定义命名,当然也可以不指定文件会默认命名并保存在当前空间
    saveas_key = urlsafe_base64_encode('目标Bucket_Name:自定义文件key')
    fops = fops+'|saveas/'+saveas_key
    
    pfop = PersistentFop(q, bucket_name, pipeline)
    ops = []
    ops.append(fops)
    ret, info = pfop.execute(key, ops, 1)
    print(info)
    assert ret['persistentId'] is not None
    
    
    以上内容是否对您有帮助?
  • Qvm free helper
    Close