示例#1
0
        /// <summary>
        /// 上传视频分片
        /// </summary>
        /// <returns>上传视频分片返回结果的封装类</returns>
        public UploadVideoFragmentParam uploadVideoFragment()
        {
            byte[] buffer;
            String url;

            if (remainderSize > 0)
            {
                /* 判读是否是最后一片 */
                if (remainderSize <= uploadDataSize)
                {
                    url = uploadHost + "/" + bucket + "/" + objectName + "?offset=" + offset + "&complete=" + "true" + "&version=1.0";
                    /* 如果是最后一片,申请的数组大小要根据实际情况 */
                    buffer = new byte[remainderSize];
                }
                else
                {
                    url    = uploadHost + "/" + bucket + "/" + objectName + "?offset=" + offset + "&complete=" + "false" + "&version=1.0";
                    buffer = new byte[(int)uploadDataSize];
                }
                /* 如果不是第一次传输,需要加入此参数 */
                if (null != context)
                {
                    url = url + "&context=" + context;
                }
                int    len          = fileStream.Read(buffer, 0, buffer.Length);
                string responseJson = HttpClientBuilder.HttpPostVideo(url, buffer, xNosToken);
                UploadVideoFragmentParam uploadVideoFragmentParam = JsonHelper.ToObject <UploadVideoFragmentParam>(responseJson);
                return(uploadVideoFragmentParam);
            }
            return(null);
        }