视频转码系统文件上传接口规范

1.概述

1.1.用途

云视睿博视频转码系统(以下简称“转码系统”)可以将转码后的视频文件通过HTTP协议上传到服务器上。
默认情况下,给出一个可以上传文件的HTTP地址即可。为了满足更复杂的应用需求,转码系统还支持更灵活的上传方式,本文档定义转码系统的上传规则。开发人员可以参考本规则实现上传服务器的服务端逻辑。

1.2.通信协议

本规范中,接收数据的服务器是通信的服务器端(简称“服务器”),转码系统是通信客户端。客户端和服务器通过HTTP协议通信,客户端使用HTTP Get向服务器发送请求,服务器返回json格式的数据给客户端。服务器可以是任何能够按本规范提供服务的第三方系统,如云视睿博的流媒体服务器系统和内容管理系统。

1.3.必要条件

如果要让转码系统按照本接口规范访问接口和上传文件,请在转码系统的设置界面中,将“上传位置满足云视规范”的选项勾选上,如下图:

2.查询上传位置

客户端通过访问服务器提供的接口位置,获取实际的上传位置和回调位置。接口位置是符合HTTP规范的URL地址。
客户端通过HTTP GET请求接口,服务器收到请求后,返回如下格式的json数据:

{
    "code": 0,
    "data": {
        "upload": "http:\/\/192.168.1.11\/upload\/?sub_path=&field_name=field1",
        "callback": "http:\/\/192.168.1.11\/mserver\/interface\/src=_FILENAME&src_id=_SRC_ID&title=_TITLE"
    }
}

如果不可上传,返回code不等于零的json数据,按如下格式返回错误:

{
"code":100,
"err_desc":"\u7f3a\u5c11\u5fc5\u8981\u53c2\u6570"
}

其中:
upload 是实际上传文件的位置,客户端将通过HTTP POST向该位置上传文件。
callback 是文件上传结束后的回调位置,可以忽略。
如果提供callback位置,在文件正确上传完毕后,客户端会调用该接口,并在调用之前试图替换接口中的如下字符串:
_FILENAME 上传文件名,用实际的文件名替换
_SRC_ID 用文件名去掉后缀的部分替换
_TITLE 用文件名去掉后缀的部分替换,或者用明确设定的文件标题替换
如果调用callback成功,服务器返回:

{
"code":0
}

失败返回code非零的数据:

{
"code":100,
"err_desc":"。。。"
}

3.文件上传

转码系统使用HTTP POST协议向upload位置上传文件。POST数据采用multipart/form-data编码。

原文地址:http://blog.51cto.com/livestreaming/2083342

时间: 2024-11-13 12:06:51

视频转码系统文件上传接口规范的相关文章

iOS实现视频和图片的上传

关于iOS如何实现视频和图片的上传, 我们先理清下思路 思路: #1. 如何获取图片? #2. 如何获取视频? #3. 如何把图片存到缓存路径中? #4. 如何把视频存到缓存路径中? #5. 如何上传? 接下来, 我们按照上面的思路一步一步实现 首先我们新建一个类, 用来储存每一个要上传的文件uploadModel.h #import <Foundation/Foundation.h> @interface uploadModel : NSObject @property (nonatomic

接口测试-Http状态码-postman上传文件

转自:https://www.cnblogs.com/jiadan/articles/8546015.html 一. 接口   接口:什么是接口呢?接口一般来说有两种,一种是程序内部的接口,一种是系统对外的接口.   系统对外的接口:比如你要从别的网站或服务器上获取资源或信息,别人肯定不会把数据库共享给你,他只能给你提供一个他们写好的方法来获取数据,你引用他提供的接口就能使用他写好的方法,从而达到数据共享的目的,比如说咱们用的app.网址这些它在进行数据处理的时候都是通过接口来进行调用的.  

深入springMVC源码------文件上传源码解析(下篇)

在上篇<深入springMVC------文件上传源码解析(上篇) >中,介绍了springmvc文件上传相关.那么本篇呢,将进一步介绍springmvc 上传文件的效率问题. 相信大部分人在处理文件上传逻辑的时候会直接获取输入流直接进行操作,伪代码类似这样: @RequestMapping(value = "/upload", method = RequestMethod.POST) public ResultView upload(@RequestParam("

浏览器看视频时,不断上传,禁止方法

在看视频的时候,发现浏览器上传的速度很快,百度之后,原来是是flash的对等网络互助没关闭,也就是说,你在下载的同时,也要上传东西,从而充当服务器的角色,视频网站可以减少自己的带宽的占用. 关闭方法: 1.打开http://www.macromedia.com/support/documentation/cn/flashplayer/help/settings_manager09.html 勾选下图: 2.在C:\Windows\System32\Macromed\Flash下找到mms.cfg

往码云上传自己的项目

1,首先在码云上新建一个项目,如下图所示 2,本地新建一个文件夹 3,进入新建的文件夹,点击鼠标右键,选择git bash here 然后在窗口输入 git init  这时候文件夹会多出一个.git文件夹,看不到文件夹的,点击鼠标右键选择“显示不显示隐藏的文件”就可以看到这个文件夹了 4,进入刚刚在码云新建的项目里,复制框框里的路径 5,然后在回到本地新建的文件夹里 继续操作git 输入git remote add origin + 你刚刚在码云复制的那行路径 6,继续输入 git pull

学习common-upload源码,理解上传原理

之前介绍了只使用一段代码实现上传文件的方法.最近又试了几次,才发现这个是有问题的. 例如,要上传原文件如下的文件: 使用jsp上传后发现文件变成了下面这个样子,图片下面的像素没有了. 然后我又用common-upload1.2试了下,能够正常上传,文件不会变样.怎么会这个样子呢? 要解决这个问题先了解下背景知识,浏览器发http请求时一般的post方法会把输入控件的name与value拼成一个字符串做为请求体传给服务器.而 对于method="post" enctype="m

fastdfs分布式文件系统文件上传、下载、删除交互过程讲解

在讲解fastdfs的上传.下载和删除流程之前,我们先介绍fastdfs中的工程流程:首先客户端client 调用fastdfs的api,获取可用的tracker server , 再调用tracker server 获取可用的组,tracker server 通过负载均衡返回一个最优的storage server,这样客户端与client就建立了连接,client就可 以调用storage server对文件进行上传.删除和追加的操作. 下面我们将结合时序图的方式给大家详细讲解fastdfs的

Java实现视频网站的视频上传、视频转码、视频关键帧抽图, 及视频播放功能

视频网站中提供的在线视频播放功能,播放的都是FLV格式的文件,它是Flash动画文件,可通过Flash制作的播放器来播放该文件.项目中用制作的player.swf播放器. 多媒体视频处理工具FFmpeg有非常强大的功能包括视频采集功能.视频格式转换.视频抓图.给视频加水印等. ffmpeg视频采集功能非常强大,不仅可以采集视频采集卡或USB摄像头的图像,还可以进行屏幕录制,同时还支持以RTP方式将视频流传送给支持RTSP的流媒体服务器,支持直播应用. 1.能支持的格式 ffmpeg能解析的格式:

安卓手把手教你结合阿里云OSS存储实现视频(音频,图片)的上传与下载

首先,明白阿里云OSS是个什么鬼 阿里云对象存储(Object Storage Service,简称OSS),是阿里云对外提供的海量,安全,低成本,高可靠的云存储服务.用户可以通过调用API,在任何应用.任何时间.任何地点上传和下载数据,也可以通过用户Web控制台对数据进行简单的管理.OSS适合存放任意文件类型,适合各种网站.开发企业及开发者使用. 以上是官方解释.可以看出,OSS可以为我们在后台保存任何数据,强大无比. 步入正题: 首先你得有个阿里云账号(淘宝账号也可以哦,毕竟阿里账号都通用)