From 7e9078c564ab6b5140cb8563e6bc63051b811184 Mon Sep 17 00:00:00 2001 From: LuckyStarry Date: Wed, 23 Nov 2016 13:48:51 +0800 Subject: [PATCH 1/2] support chaining calls --- .gitignore | 29 ++ Qiniu/Qiniu.csproj | 12 +- Qiniu/Util/IPersistentOps.cs | 15 + Qiniu/Util/IPersistentOpsAvthumb.cs | 30 ++ Qiniu/Util/IPersistentOpsAvthumbForAudio.cs | 39 +++ Qiniu/Util/IPersistentOpsAvthumbForVideo.cs | 83 ++++++ Qiniu/Util/PersistentOps.Avthumb.cs | 294 +++++++++++++++++++ Qiniu/Util/PersistentOps.cs | 19 ++ Qiniu/Util/PutPolicy.Extension.cs | 295 ++++++++++++++++++++ Qiniu/Util/PutPolicy.cs | 26 +- bin/Newtonsoft.Json.dll | Bin 489472 -> 0 bytes bin/Qiniu.Test.dll | Bin 11264 -> 0 bytes bin/Qiniu.dll | Bin 67072 -> 0 bytes 13 files changed, 838 insertions(+), 4 deletions(-) create mode 100644 .gitignore create mode 100644 Qiniu/Util/IPersistentOps.cs create mode 100644 Qiniu/Util/IPersistentOpsAvthumb.cs create mode 100644 Qiniu/Util/IPersistentOpsAvthumbForAudio.cs create mode 100644 Qiniu/Util/IPersistentOpsAvthumbForVideo.cs create mode 100644 Qiniu/Util/PersistentOps.Avthumb.cs create mode 100644 Qiniu/Util/PersistentOps.cs create mode 100644 Qiniu/Util/PutPolicy.Extension.cs delete mode 100644 bin/Newtonsoft.Json.dll delete mode 100644 bin/Qiniu.Test.dll delete mode 100644 bin/Qiniu.dll diff --git a/.gitignore b/.gitignore new file mode 100644 index 00000000..0bc82303 --- /dev/null +++ b/.gitignore @@ -0,0 +1,29 @@ + +#ignore thumbnails created by windows +Thumbs.db +#Ignore files build by Visual Studio +*.obj +*.exe +*.pdb +*.user +*.aps +*.pch +*.vspscc +*_i.c +*_p.c +*.ncb +*.suo +*.tlb +*.tlh +*.bak +*.cache +*.ilk +*.log +[Bb]in +[Dd]ebug*/ +*.lib +*.sbr +obj/ +[Rr]elease*/ +_ReSharper*/ +[Tt]est[Rr]esult* diff --git a/Qiniu/Qiniu.csproj b/Qiniu/Qiniu.csproj index b0df9e26..3011430a 100644 --- a/Qiniu/Qiniu.csproj +++ b/Qiniu/Qiniu.csproj @@ -20,6 +20,7 @@ DEBUG;TRACE prompt 4 + ..\bin\Qiniu.XML pdbonly @@ -48,7 +49,7 @@ - + @@ -57,7 +58,7 @@ - + @@ -85,9 +86,16 @@ + + + + + + + diff --git a/Qiniu/Util/IPersistentOps.cs b/Qiniu/Util/IPersistentOps.cs new file mode 100644 index 00000000..a4da9ba0 --- /dev/null +++ b/Qiniu/Util/IPersistentOps.cs @@ -0,0 +1,15 @@ +using System; +namespace Qiniu.Util +{ + /// + /// 表示该对象是一个预处理操作。 + /// + public interface IPersistentOps + { + /// + /// 获取操作字符串。 + /// + /// 操作字符串。 + string GetOpsString(); + } +} diff --git a/Qiniu/Util/IPersistentOpsAvthumb.cs b/Qiniu/Util/IPersistentOpsAvthumb.cs new file mode 100644 index 00000000..cbf0f255 --- /dev/null +++ b/Qiniu/Util/IPersistentOpsAvthumb.cs @@ -0,0 +1,30 @@ +using System; +namespace Qiniu.Util +{ + /// + /// 表示该对象是一个音视频转码 (avthumb)操作。 + /// + public interface IPersistentOpsAvthumb : IPersistentOps + { + /// + /// A/V 封装格式,具体细节请参考支持转换的封装格式。 + /// + string Format { get; } + /// + /// A/V 指定视频截取的开始时间,单位:秒,支持精确到毫秒,例如3.345s。用于视频截取,从一段视频中截取一段视频。 + /// + double? SeekStart { set; get; } + /// + /// A/V 指定视频截取的长度,单位:秒,支持精确到毫秒,例如1.500s。用于视频截取,从一段视频中截取一段视频。 + /// + double? Duration { set; get; } + /// + /// A/V 是否清除文件的metadata,1为清除,0为保留。 + /// + int? StripMeta { set; get; } + /// + /// 在数据处理命令后用管道符 | 拼接 saveas/ 指令,指示七牛服务器使用EncodedEntryURI格式中指定的 Bucket 与 Key 来保存处理结果。 + /// + string SaveAs { set; get; } + } +} diff --git a/Qiniu/Util/IPersistentOpsAvthumbForAudio.cs b/Qiniu/Util/IPersistentOpsAvthumbForAudio.cs new file mode 100644 index 00000000..f654ae69 --- /dev/null +++ b/Qiniu/Util/IPersistentOpsAvthumbForAudio.cs @@ -0,0 +1,39 @@ +using System; +namespace Qiniu.Util +{ + /// + /// 表示该对象是一个音频转码 (avthumb)操作。 + /// + public interface IPersistentOpsAvthumbForAudio : IPersistentOpsAvthumb + { + /// + /// A 音频码率,单位:比特每秒(bit/s),常用码率:64k,128k,192k,256k,320k等。若指定码率大于原音频码率,则使用原音频码率进行转码。 + /// + string BitRate { set; get; } + /// + /// A 音频质量,取值范围为0-9(mp3),10-500(aac),仅支持mp3和aac,值越小越高。不能与上述码率参数共用。 + /// + int? AudioQuality { set; get; } + /// + /// A 音频采样频率,单位:赫兹(Hz),常用采样频率:8000,12050,22050,44100等。 + /// + int? SamplingRate { set; get; } + /// + /// A 音频编码格式,具体细节请参考支持转换的音频编码格式。 + /// + string AudioCodec { set; get; } + /// + /// A 设置音频的profile等级,支持:aac_he。注:需配合 libfdk_aac 编码方案使用,如 avthumb/m4a/acodec/libfdk_aac/audioProfile/aac_he。 + /// + string Profile { set; get; } + /// + /// A 转码成mp3时是否写入xing header,默认1写入,写入会导致 file,afinfo 等命令识别出错误的码率。好处是在需要音频时长、帧数的时候只需要获取header。 + /// + string Xing { set; get; } + /// + /// A 是否去除音频流,0为保留,1为去除。 + /// 默认值为0。 + /// + int? AudioNo { set; get; } + } +} diff --git a/Qiniu/Util/IPersistentOpsAvthumbForVideo.cs b/Qiniu/Util/IPersistentOpsAvthumbForVideo.cs new file mode 100644 index 00000000..516111bd --- /dev/null +++ b/Qiniu/Util/IPersistentOpsAvthumbForVideo.cs @@ -0,0 +1,83 @@ +using System; +namespace Qiniu.Util +{ + /// + /// 表示该对象是一个视频转码 (avthumb)操作。 + /// + public interface IPersistentOpsAvthumbForVideo : IPersistentOpsAvthumb + { + /// + /// V 视频帧率,每秒显示的帧数,单位:赫兹(Hz),常用帧率:24,25,30等,一般用默认值。 + /// + int? FrameRate { set; get; } + /// + /// V 视频码率,单位:比特每秒(bit/s),常用视频码率:128k,1.25m,5m等。若指定码率大于原视频码率,则使用原视频码率进行转码。 + /// + string VideoBitRate { set; get; } + /// + /// V 视频编码格式,具体细节请参考支持转换的视频编码格式。 + /// + string VideoCodec { set; get; } + /// + /// V 字幕编码方案,支持方案:mov_text。该参数仅用于修改带字幕视频的字幕编码。 + /// + string SubtitleCodec { set; get; } + /// + /// V 添加字幕,支持:srt格式字幕(uft-8编码和和utf-8 BOM编码)、带有字幕的mkv文件、embed(将原视频的字幕流嵌入目标视频)。基于URL安全的base64编码。 + /// + string SubtitleURL { set; get; } + /// + /// V 指定视频分辨率,格式为x或者预定义值,width 取值范围 [20,3840],height 取值范围 [20,2160]。 + /// + string Resolution { set; get; } + /// + /// V 配合参数/s/使用,指定为1时,把视频按原始比例缩放到/s/指定的矩形框内,0或者不指定会强制缩放到对应分辨率,可能造成视频变形。 + /// + int? Autoscale { set; get; } + /// + /// V 该参数为视频在播放器中显示的宽高比,格式为:。例如:取值3:4表示视频在播放器中播放是宽:高=3:4(注:此处取值仅为体现演示效果)。 + /// + string Aspect { set; get; } + /// + /// V 设置h264的crf值,整数,取值范围[18,28],值越小,画质更清晰。注意:不可与vb共用 + /// + int? H264Crf { set; get; } + /// + /// V 指定顺时针旋转的度数,可取值为90、180、270、auto,默认为不旋转。 + /// + int? Degree { set; get; } + /// + /// V 水印图片的源路径,目前仅支持远程路径,需要经过urlsafe_base64_encode。水印具体介绍见视频水印。 + /// + string EncodedRemoteImageUrl { set; get; } + /// + /// V 视频图片水印位置,存在/wmImage/时生效。 + /// + string Gravity { set; get; } + /// + /// V 水印文本内容,需要经过urlsafe_base64_encode。 + /// + string EncodedText { set; get; } + /// + /// V 文本位置(默认NorthEast) + /// + string GravityText { set; get; } + /// + /// V 文本字体,需要经过urlsafe_base64_encode,默认为黑体,注意:中文水印必须指定中文字体。 + /// + string Font { set; get; } + /// + /// V 水印文字颜色,需要经过urlsafe_base64_encode,RGB格式,可以是颜色名称(例如红色)或十六进制(例如#FF0000),参考RGB颜色编码表,默认为黑色。 + /// + string FontColor { set; get; } + /// + /// V 水印文字大小,单位: 缇,等于1/20磅,默认值0(默认大小) + /// + int? FontSize { set; get; } + /// + /// V 是否去除视频流,0为保留,1为去除。 + /// 默认值为0。 + /// + int? VideoNo { set; get; } + } +} diff --git a/Qiniu/Util/PersistentOps.Avthumb.cs b/Qiniu/Util/PersistentOps.Avthumb.cs new file mode 100644 index 00000000..120dc0bc --- /dev/null +++ b/Qiniu/Util/PersistentOps.Avthumb.cs @@ -0,0 +1,294 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Qiniu.Util +{ + /// + /// 音视频转码 (avthumb)操作。 + /// + public class PersistentOpsAvthumb : PersistentOps, IPersistentOps, IPersistentOpsAvthumb, IPersistentOpsAvthumbForAudio, IPersistentOpsAvthumbForVideo + { + /// + /// 创建一个音视频转码 (avthumb)操作 + /// + /// 音视频转码 (avthumb)格式。 + protected internal PersistentOpsAvthumb(string format) + { + this.Format = format; + } + /// + /// A/V 封装格式,具体细节请参考支持转换的封装格式。 + /// + public string Format { private set; get; } + /// + /// A 音频码率,单位:比特每秒(bit/s),常用码率:64k,128k,192k,256k,320k等。若指定码率大于原音频码率,则使用原音频码率进行转码。 + /// + public string BitRate { set; get; } + /// + /// A 音频质量,取值范围为0-9(mp3),10-500(aac),仅支持mp3和aac,值越小越高。不能与上述码率参数共用。 + /// + public int? AudioQuality { set; get; } + /// + /// A 音频采样频率,单位:赫兹(Hz),常用采样频率:8000,12050,22050,44100等。 + /// + public int? SamplingRate { set; get; } + /// + /// V 视频帧率,每秒显示的帧数,单位:赫兹(Hz),常用帧率:24,25,30等,一般用默认值。 + /// + public int? FrameRate { set; get; } + /// + /// V 视频码率,单位:比特每秒(bit/s),常用视频码率:128k,1.25m,5m等。若指定码率大于原视频码率,则使用原视频码率进行转码。 + /// + public string VideoBitRate { set; get; } + /// + /// V 视频编码格式,具体细节请参考支持转换的视频编码格式。 + /// + public string VideoCodec { set; get; } + /// + /// A 音频编码格式,具体细节请参考支持转换的音频编码格式。 + /// + public string AudioCodec { set; get; } + /// + /// A 设置音频的profile等级,支持:aac_he。注:需配合 libfdk_aac 编码方案使用,如 avthumb/m4a/acodec/libfdk_aac/audioProfile/aac_he。 + /// + public string Profile { set; get; } + /// + /// V 字幕编码方案,支持方案:mov_text。该参数仅用于修改带字幕视频的字幕编码。 + /// + public string SubtitleCodec { set; get; } + /// + /// V 添加字幕,支持:srt格式字幕(uft-8编码和和utf-8 BOM编码)、带有字幕的mkv文件、embed(将原视频的字幕流嵌入目标视频)。基于URL安全的base64编码。 + /// + public string SubtitleURL { set; get; } + /// + /// A/V 指定视频截取的开始时间,单位:秒,支持精确到毫秒,例如3.345s。用于视频截取,从一段视频中截取一段视频。 + /// + public double? SeekStart { set; get; } + /// + /// A/V 指定视频截取的长度,单位:秒,支持精确到毫秒,例如1.500s。用于视频截取,从一段视频中截取一段视频。 + /// + public double? Duration { set; get; } + /// + /// V 指定视频分辨率,格式为x或者预定义值,width 取值范围 [20,3840],height 取值范围 [20,2160]。 + /// + public string Resolution { set; get; } + /// + /// V 配合参数/s/使用,指定为1时,把视频按原始比例缩放到/s/指定的矩形框内,0或者不指定会强制缩放到对应分辨率,可能造成视频变形。 + /// + public int? Autoscale { set; get; } + /// + /// V 该参数为视频在播放器中显示的宽高比,格式为:。例如:取值3:4表示视频在播放器中播放是宽:高=3:4(注:此处取值仅为体现演示效果)。 + /// + public string Aspect { set; get; } + /// + /// A/V 是否清除文件的metadata,1为清除,0为保留。 + /// + public int? StripMeta { set; get; } + /// + /// V 设置h264的crf值,整数,取值范围[18,28],值越小,画质更清晰。注意:不可与vb共用 + /// + public int? H264Crf { set; get; } + /// + /// V 指定顺时针旋转的度数,可取值为90、180、270、auto,默认为不旋转。 + /// + public int? Degree { set; get; } + /// + /// V 水印图片的源路径,目前仅支持远程路径,需要经过urlsafe_base64_encode。水印具体介绍见视频水印。 + /// + public string EncodedRemoteImageUrl { set; get; } + /// + /// V 视频图片水印位置,存在/wmImage/时生效。 + /// + public string Gravity { set; get; } + /// + /// V 水印文本内容,需要经过urlsafe_base64_encode。 + /// + public string EncodedText { set; get; } + /// + /// V 文本位置(默认NorthEast) + /// + public string GravityText { set; get; } + /// + /// V 文本字体,需要经过urlsafe_base64_encode,默认为黑体,注意:中文水印必须指定中文字体。 + /// + public string Font { set; get; } + /// + /// V 水印文字颜色,需要经过urlsafe_base64_encode,RGB格式,可以是颜色名称(例如红色)或十六进制(例如#FF0000),参考RGB颜色编码表,默认为黑色。 + /// + public string FontColor { set; get; } + /// + /// V 水印文字大小,单位: 缇,等于1/20磅,默认值0(默认大小) + /// + public int? FontSize { set; get; } + /// + /// A 转码成mp3时是否写入xing header,默认1写入,写入会导致 file,afinfo 等命令识别出错误的码率。好处是在需要音频时长、帧数的时候只需要获取header。 + /// + public string Xing { set; get; } + /// + /// A 是否去除音频流,0为保留,1为去除。 + /// 默认值为0。 + /// + public int? AudioNo { set; get; } + /// + /// V 是否去除视频流,0为保留,1为去除。 + /// 默认值为0。 + /// + public int? VideoNo { set; get; } + /// + /// 在数据处理命令后用管道符 | 拼接 saveas/ 指令,指示七牛服务器使用EncodedEntryURI格式中指定的 Bucket 与 Key 来保存处理结果。 + /// + public string SaveAs { set; get; } + /// + /// 获取操作字符串。 + /// + /// 操作字符串。 + public override string GetOpsString() + { + var sbOps = new StringBuilder("avthumb/"); + sbOps.Append(this.Format); + if (!string.IsNullOrWhiteSpace(this.BitRate)) + { + sbOps.Append("/ab/"); + sbOps.Append(this.BitRate); + } + if (this.AudioQuality.HasValue) + { + sbOps.Append("/aq/"); + sbOps.Append(this.AudioQuality); + } + if (this.SamplingRate.HasValue) + { + sbOps.Append("/ar/"); + sbOps.Append(this.SamplingRate); + } + if (this.FrameRate.HasValue) + { + sbOps.Append("/r/"); + sbOps.Append(this.FrameRate); + } + if (!string.IsNullOrWhiteSpace(this.VideoBitRate)) + { + sbOps.Append("/vb/"); + sbOps.Append(this.VideoBitRate); + } + if (!string.IsNullOrWhiteSpace(this.VideoCodec)) + { + sbOps.Append("/vcodec/"); + sbOps.Append(this.VideoCodec); + } + if (!string.IsNullOrWhiteSpace(this.AudioCodec)) + { + sbOps.Append("/acodec/"); + sbOps.Append(this.AudioCodec); + } + if (!string.IsNullOrWhiteSpace(this.SubtitleCodec)) + { + sbOps.Append("/scodec/"); + sbOps.Append(this.SubtitleCodec); + } + if (!string.IsNullOrWhiteSpace(this.SubtitleURL)) + { + sbOps.Append("/subtitle/"); + sbOps.Append(this.SubtitleURL); + } + if (this.SeekStart.HasValue) + { + sbOps.Append("/ss/"); + sbOps.Append(this.SeekStart); + } + if (this.Duration.HasValue) + { + sbOps.Append("/d/"); + sbOps.Append(this.Duration); + } + if (!string.IsNullOrWhiteSpace(this.Resolution)) + { + sbOps.Append("/s/"); + sbOps.Append(this.Resolution); + } + if (this.Autoscale.HasValue) + { + sbOps.Append("/autoscale/"); + sbOps.Append(this.Autoscale); + } + if (!string.IsNullOrWhiteSpace(this.Aspect)) + { + sbOps.Append("/aspect/"); + sbOps.Append(this.Aspect); + } + if (this.StripMeta.HasValue) + { + sbOps.Append("/stripmeta/"); + sbOps.Append(this.StripMeta); + } + if (this.H264Crf.HasValue) + { + sbOps.Append("/h264Crf/"); + sbOps.Append(this.H264Crf); + } + if (this.Degree.HasValue) + { + sbOps.Append("/rotate/"); + sbOps.Append(this.Degree); + } + if (!string.IsNullOrWhiteSpace(this.EncodedRemoteImageUrl)) + { + sbOps.Append("/wmImage/"); + sbOps.Append(this.EncodedRemoteImageUrl); + } + if (!string.IsNullOrWhiteSpace(this.Gravity)) + { + sbOps.Append("/wmGravity/"); + sbOps.Append(this.Gravity); + } + if (!string.IsNullOrWhiteSpace(this.EncodedText)) + { + sbOps.Append("/wmText/"); + sbOps.Append(this.EncodedText); + } + if (!string.IsNullOrWhiteSpace(this.GravityText)) + { + sbOps.Append("/wmGravityText/"); + sbOps.Append(this.GravityText); + } + if (!string.IsNullOrWhiteSpace(this.Font)) + { + sbOps.Append("/wmFont/"); + sbOps.Append(this.Font); + } + if (!string.IsNullOrWhiteSpace(this.FontColor)) + { + sbOps.Append("/wmFontColor/"); + sbOps.Append(this.FontColor); + } + if (this.FontSize.HasValue) + { + sbOps.Append("/wmFontSize/"); + sbOps.Append(this.FontSize); + } + if (!string.IsNullOrWhiteSpace(this.Xing)) + { + sbOps.Append("/writeXing/"); + sbOps.Append(this.Xing); + } + if (this.AudioNo.HasValue) + { + sbOps.Append("/an/"); + sbOps.Append(this.AudioNo); + } + if (this.VideoNo.HasValue) + { + sbOps.Append("/vn/"); + sbOps.Append(this.VideoNo); + } + if (!string.IsNullOrWhiteSpace(this.SaveAs)) + { + sbOps.Append("|saveas/"); + sbOps.Append(this.SaveAs); + } + return sbOps.ToString(); + } + } +} diff --git a/Qiniu/Util/PersistentOps.cs b/Qiniu/Util/PersistentOps.cs new file mode 100644 index 00000000..520275d2 --- /dev/null +++ b/Qiniu/Util/PersistentOps.cs @@ -0,0 +1,19 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Qiniu.Util +{ + /// + /// 预处理操作 + /// + public abstract class PersistentOps : IPersistentOps + { + /// + /// 获取操作字符串。 + /// + /// 操作字符串。 + public abstract string GetOpsString(); + } +} diff --git a/Qiniu/Util/PutPolicy.Extension.cs b/Qiniu/Util/PutPolicy.Extension.cs new file mode 100644 index 00000000..d8b991e4 --- /dev/null +++ b/Qiniu/Util/PutPolicy.Extension.cs @@ -0,0 +1,295 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Qiniu.Util +{ + /// + /// 上传策略扩展 + /// + public static partial class PutPolicyExtension + { + /// + /// 指定上传的目标资源空间 Bucket 和资源键 Key(key的长度最大为750字节)。有两种格式: + /// ● ,表示允许用户上传文件到指定的 bucket。在这种格式下文件只能新增,若已存在同名资源上传则会失败。 + /// ● :,表示只允许用户上传指定 key 的文件。在这种格式下文件默认允许修改,若已存在同名资源则会被覆盖。如果只希望上传指定 key 的文件,并且不允许修改,那么可以将下面的 insertOnly 属性值设为 1。 + /// + /// 上传策略 + /// 上传的目标资源空间 Bucket 和资源键 Key(key的长度最大为750字节) + /// 上传策略 + public static PutPolicy WithScope(this PutPolicy policy, string scope) + { + policy.Scope = scope; + return policy; + } + /// + /// 上传凭证有效截止时间。Unix时间戳,单位为秒。该截止时间为上传完成后,在七牛空间生成文件的校验时间,而非上传的开始时间,一般建议设置为上传开始时间 + 3600s,用户可根据具体的业务场景对凭证截止时间进行调整。 + /// + /// 上传策略 + /// 上传凭证有效截止时间,Unix时间戳,单位为秒 + /// 上传策略 + public static PutPolicy WithDeadline(this PutPolicy policy, int deadline) + { + policy.Deadline = deadline; + return policy; + } + /// + /// 上传凭证有效截止时间。根据时间间隔自动计算对应的Unix时间戳,单位为秒。该截止时间为上传完成后,在七牛空间生成文件的校验时间,而非上传的开始时间,一般建议设置为上传开始时间 + 3600s,用户可根据具体的业务场景对凭证截止时间进行调整。 + /// + /// 上传策略 + /// 上传凭证有效截止时间间隔 + /// 上传策略 + public static PutPolicy WithDeadline(this PutPolicy policy, TimeSpan deadline) + { + policy.SetExpires((int)deadline.TotalSeconds); + return policy; + } + /// + /// 上传凭证有效截止时间。根据时间自动计算对应的Unix时间戳,单位为秒。该截止时间为上传完成后,在七牛空间生成文件的校验时间,而非上传的开始时间,一般建议设置为上传开始时间 + 3600s,用户可根据具体的业务场景对凭证截止时间进行调整。 + /// + /// 上传策略 + /// 上传凭证有效截止时间 + /// 上传策略 + public static PutPolicy WithDeadline(this PutPolicy policy, DateTime deadline) + { + return policy.WithDeadline(deadline - DateTime.Now); + } + /// + /// 限定为新增语意。如果设置为false,则无论 scope 设置为什么形式,仅能以新增模式上传文件。默认为 true。 + /// + /// 上传策略 + /// 是否限定为新增语意,默认为 true,限定为新增语义。 + /// 上传策略 + public static PutPolicy WithInsertOnly(this PutPolicy policy, bool insertOnly = true) + { + policy.InsertOnly = insertOnly ? 1 : 0; + return policy; + } + /// + /// 唯一属主标识。特殊场景下非常有用,例如根据 App-Client 标识给图片或视频打水印。 + /// + /// 上传策略 + /// 唯一属主标识 + /// 上传策略 + public static PutPolicy WithEndUser(this PutPolicy policy, string endUser) + { + policy.EndUser = endUser; + return policy; + } + /// + /// Web 端文件上传成功后,浏览器执行 303 跳转的 URL。通常用于 HTML Form 上传。文件上传成功后会跳转到 ?upload_ret=包含 returnBody 内容。如不设置 returnUrl,则直接将 returnBody 的内容返回给客户端。 + /// + /// 上传策略 + /// Web 端文件上传成功后,浏览器执行 303 跳转的 URL + /// 上传策略 + public static PutPolicy WithReturnUrl(this PutPolicy policy, string returnUrl) + { + policy.ReturnUrl = returnUrl; + return policy; + } + /// + /// 上传成功后,自定义七牛云最终返回給上传端(在指定 returnUrl 时是携带在跳转路径参数中)的数据。支持魔法变量和自定义变量。returnBody 要求是合法的 JSON 文本。例如 {"key": $(key), "hash": $(etag), "w": $(imageInfo.width), "h": $(imageInfo.height)}。 + /// + /// 上传策略 + /// 上传成功后,自定义七牛云最终返回給上传端(在指定 returnUrl 时是携带在跳转路径参数中)的数据 + /// 上传策略 + public static PutPolicy WithReturnBody(this PutPolicy policy, string returnBody) + { + policy.ReturnBody = returnBody; + return policy; + } + /// + /// 上传成功后,七牛云向 App-Server 发送 POST 请求的 URL。必须是公网上可以正常进行 POST 请求并能响应 HTTP/1.1 200 OK 的有效 URL。另外,为了给客户端有一致的体验,我们要求 callbackUrl 返回包 Content-Type 为 "application/json",即返回的内容必须是合法的 JSON 文本。出于高可用的考虑,本字段允许设置多个 callbackUrl(用英文符号 ; 分隔),在前一个 callbackUrl 请求失败的时候会依次重试下一个 callbackUrl。一个典型例子是 http:///callback;http:///callback,并同时指定下面的 callbackHost 字段。在 callbackUrl 中使用 ip 的好处是减少了对 dns 解析的依赖,可改善回调的性能和稳定性。 + /// + /// 上传策略 + /// 上传成功后,七牛云向 App-Server 发送 POST 请求的 URL + /// 上传策略 + public static PutPolicy WithCallbackUrl(this PutPolicy policy, string callbackUrl) + { + policy.CallbackUrl = callbackUrl; + return policy; + } + /// + /// 上传成功后,七牛云向"App-Server"发送回调通知时的 Host 值。 + /// 与callbackUrl配合使用,仅当设置了 callbackUrl 时才有效。 + /// + /// 上传策略 + /// 上传成功后,七牛云向"App-Server"发送回调通知时的 Host 值。 + /// 上传策略 + public static PutPolicy WithCallbackHost(this PutPolicy policy, string callbackHost) + { + policy.CallbackHost = callbackHost; + return policy; + } + /// + /// 上传成功后,七牛云向"App-Server"发送Content-Type: application/x-www-form-urlencoded 的POST请求。 + /// 该字段"App-Server"可以通过直接读取请求的query来获得,支持魔法变量和自定义变量。callbackBody 要求是合法的 url query string。如:key=$(key)&hash=$(etag)&w=$(imageInfo.width)&h=$(imageInfo.height)。 + /// + /// 上传策略 + /// 上传成功后,七牛云向"App-Server"发送Content-Type: application/x-www-form-urlencoded 的POST请求。 + /// 上传策略 + public static PutPolicy WithCallbackBody(this PutPolicy policy, string callbackBody) + { + policy.CallbackBody = callbackBody; + return policy; + } + /// + /// 上传成功后,七牛云向"App-Server"发送回调通知callbackBody的Content-Type。 + /// 默认为application/x-www-form-urlencoded,也可设置为application/json。 + /// + /// 上传策略 + /// 上传成功后,七牛云向"App-Server"发送回调通知callbackBody的Content-Type。 + /// 上传策略 + public static PutPolicy WithCallbackBodyType(this PutPolicy policy, string callbackBodyType = "application/x-www-form-urlencoded") + { + policy.CallbackBodyType = callbackBodyType; + return policy; + } + /// + /// 是否启用fetchKey上传模式。 + /// false 为关闭,true 为启用。具体见callbackFetchKey详解。默认为 true。 + /// + /// 上传策略 + /// 是否启用fetchKey上传模式。 + /// 上传策略 + public static PutPolicy WithCallbackFetchKey(this PutPolicy policy, bool callbackFetchKey = true) + { + policy.CallbackFetchKey = callbackFetchKey ? 1 : 0; + return policy; + } + /// + /// 资源上传成功后触发执行的预转持久化处理指令列表。 + /// 每个指令是一个API规格字符串,多个指令用;分隔。 + /// 请参阅persistentOps详解与示例。同时添加persistentPipeline字段,使用专用队列处理,请参阅persistentPipeline。 + /// + /// 上传策略 + /// 资源上传成功后触发执行的预转持久化处理指令列表。 + /// 上传策略 + public static PutPolicy WithPersistentOps(this PutPolicy policy, string persistentOps) + { + policy.PersistentOps = persistentOps; + return policy; + } + /// + /// 资源上传成功后触发执行的预转持久化处理指令列表。 + /// 请参阅persistentOps详解与示例。同时添加persistentPipeline字段,使用专用队列处理,请参阅persistentPipeline。 + /// + /// 上传策略 + /// 资源上传成功后触发执行的预转持久化处理指令列表。详情参见: + /// 上传策略 + public static PutPolicy WithPersistentOps(this PutPolicy policy, params IPersistentOps[] persistentOps) + { + if (persistentOps != null && persistentOps.Any()) + { + return policy.WithPersistentOps(string.Join(";", persistentOps.Select(p => p.GetOpsString()))); + } + return policy; + } + /// + /// 接收持久化处理结果通知的URL。 + /// 必须是公网上可以正常进行POST请求并能响应"HTTP/1.1 200 OK"的有效URL。 + /// 该URL获取的内容和持久化处理状态查询(prefop)的处理结果一致。 + /// 发送body格式是Content-Type为application/json的POST请求,需要按照读取流的形式读取请求的body才能获取。 + /// + /// 上传策略 + /// 接收持久化处理结果通知的URL。 + /// 上传策略 + public static PutPolicy WithPersistentNotifyUrl(this PutPolicy policy, string persistentNotifyUrl) + { + policy.PersistentNotifyUrl = persistentNotifyUrl; + return policy; + } + /// + /// 转码队列名。 + /// 资源上传成功后,触发转码时指定独立的队列进行转码。为空则表示使用公用队列,处理速度比较慢。建议使用专用队列。 + /// + /// 上传策略 + /// 转码队列名。 + /// 上传策略 + public static PutPolicy WithPersistentPipeline(this PutPolicy policy, string persistentPipeline) + { + policy.PersistentPipeline = persistentPipeline; + return policy; + } + /// + /// 自定义资源名。 + /// 支持魔法变量及自定义变量。这个字段仅当用户上传的时候没有主动指定key的时候起作用。 + /// + /// 上传策略 + /// 自定义资源名。 + /// 上传策略 + public static PutPolicy WithSaveKey(this PutPolicy policy, string saveKey) + { + policy.SaveKey = saveKey; + return policy; + } + /// + /// 限定上传文件大小最小值,单位:字节(Byte)。设置为k,即k及k以上的文件可以上传。 + /// + /// 上传策略 + /// 限定上传文件大小最小值,单位:字节(Byte) + /// 上传策略 + public static PutPolicy WithFsizeMin(this PutPolicy policy, int fsizeMin) + { + policy.FsizeMin = fsizeMin; + return policy; + } + /// + /// 限定上传文件大小最大值,单位:字节(Byte)。 + /// 超过限制上传文件大小的最大值会被判为上传失败,返回413状态码。 + /// + /// 上传策略 + /// 限定上传文件大小最大值,单位:字节(Byte)。 + /// 上传策略 + public static PutPolicy WithFsizeLimit(this PutPolicy policy, int fsizeLimit) + { + policy.FsizeLimit = fsizeLimit; + return policy; + } + /// + /// 开启MimeType侦测功能。 + /// 此函数默认设为 true 值,则忽略上传端传递的文件MimeType信息,使用七牛服务器侦测内容后的判断结果。 + /// 如不设置则默认等同 false 值,如上传端指定了MimeType则直接使用该值,否则按如下顺序侦测MimeType值: + /// 1. 检查文件扩展名; + /// 2. 检查Key扩展名; + /// 3. 侦测内容。 + /// 如不能侦测出正确的值,会默认使用 application/octet-stream 。 + /// + /// 上传策略 + /// 是否开启MimeType侦测功能。 + /// 上传策略 + public static PutPolicy WithDetectMime(this PutPolicy policy, bool detectMime = true) + { + policy.DetectMime = detectMime ? 1 : 0; + return policy; + } + /// + /// 限定用户上传的文件类型。 + /// 指定本字段值,七牛服务器会侦测文件内容以判断MimeType,再用判断值跟指定值进行匹配,匹配成功则允许上传,匹配失败则返回403状态码。 + /// 示例: + /// ● image/*表示[[[只允许]]]上传图片类型 + /// ● image/jpeg;image/png表示[[[只允许]]]上传jpg和png类型的图片 + /// ● !application/json;text/plain表示[[[禁止]]]上传json文本和纯文本。注意最前面的感叹号! + /// + /// 上传策略 + /// 限定用户上传的文件类型。 + /// 上传策略 + public static PutPolicy WithMimeLimit(this PutPolicy policy, string mimeLimit) + { + policy.MimeLimit = mimeLimit; + return policy; + } + /// + /// 文件在多少天后被删除,七牛将文件上传时间与指定的deleteAfterDays天数相加,得到的时间入到后一天的午夜(CST,中国标准时间),从而得到文件删除开始时间。例如文件在2015年1月1日上午10:00 CST上传,指定deleteAfterDays为3天,那么会在2015年1月5日00:00 CST之后当天内删除文件。 + /// + /// 上传策略 + /// 文件在多少天后被删除 + /// 上传策略 + public static PutPolicy WithDeleteAfterDays(this PutPolicy policy, int deleteAfterDays) + { + policy.DeleteAfterDays = deleteAfterDays; + return policy; + } + } +} diff --git a/Qiniu/Util/PutPolicy.cs b/Qiniu/Util/PutPolicy.cs index 88a4186f..4d2302d6 100644 --- a/Qiniu/Util/PutPolicy.cs +++ b/Qiniu/Util/PutPolicy.cs @@ -4,7 +4,7 @@ namespace Qiniu.Util { [JsonObject(MemberSerialization.OptIn)] - public class PutPolicy + public class PutPolicy : ICloneable { [JsonProperty("scope")] public string Scope { set; get; } @@ -42,6 +42,9 @@ public class PutPolicy [JsonProperty("fsizeLimit")] public int? FsizeLimit { set; get; } + + [JsonProperty("fsizeMin")] + public int? FsizeMin { set; get; } [JsonProperty("detectMime")] public int? DetectMime { set; get; } [JsonProperty("mimeLimit")] @@ -55,10 +58,29 @@ public void SetExpires(int expireInSeconds) TimeSpan ts = DateTime.UtcNow.Subtract(new DateTime(1970, 1, 1, 0, 0, 0)); this.Deadline = (int)ts.TotalSeconds + expireInSeconds; } - + /// + /// 获取此上传策略的Json字符串。 + /// + /// 此上传策略的Json字符串。 public override string ToString() { return StringUtils.jsonEncode(this); } + /// + /// 获取此上传策略的副本。 + /// + /// 上传策略的副本。 + object ICloneable.Clone() + { + return this.Clone(); + } + /// + /// 获取此上传策略的副本。 + /// + /// 上传策略的副本。 + public PutPolicy Clone() + { + return this.MemberwiseClone() as PutPolicy; + } } } diff --git a/bin/Newtonsoft.Json.dll b/bin/Newtonsoft.Json.dll deleted file mode 100644 index 20dae627a5338a8b707f983990019ea9dabd680e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 489472 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 z

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⁢piGYQ-44>I?-P{BwRjG3#)?@ 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

Y+D7N$wjm_ZJo}KV5+PdjHU%i ziqKOmU9mA0CFmwc7x^v8=uScbT)d!r-A-rlF|2Q$Up`Et=Z5m1{lB8peZ`u{TscFaov zTpT}{zrEA9mE%)z^yzZksW^P%=Tk2Ro7%XtE+oxqq)EA_B!|(1W8j|LpJXu<+OT{U z@JywOOqAnCQR3E{4IyNiXCG5KnKt5erMG*P@Z$iW(cyJ(KvoHjOL*O~y^@5c_5Xi7 zuWECi_j&o~2O%B~7ooLtuK~Z|a);zA70?VHz`Pxax9lPU4ZD=Z#q}JZ1RH)G)3ZEO zs|aug+s%deXXI#*d7A4Ra>IS15WvZT6nvb;)dQ++VDH|@Swo)70_p5c)a_tMvkZHp z!L{`gXKS%4Lr6k?4{V4ah4dqL3L+fmYo+;c$&o8II{kfj?k!iRJZ_jfQAzoipr}L~ zBeRKgBMJMy!d#v)icL4{Mc8&%MoyCpdBb`g!(}I0FVWx8U53uJc;(iyT6Z$(0C1_d4^DT z27}_5xwpK6rWWdBt~cmRx{EXIhWfK$IP>*G;SQxzUQcXnCEiRr?TY6m1Wt?}aT}^F z3l8Qb3Z7;AYFc38`#r5IEO8*L?JFy;U0SwkX`tCd(wg*1VE80pm~Y=pGM+;wRrbqs zI0aJE7t={yX4xB^^m{yubI1(xaydRixX)`&VHtRq!~210#Z{6JprfoVl_W0}lLfXP z1PNrzn<>LfVD1L9ZORnMAmt@yV}=hZ`8-7DwKP<-y|1yJtHtUR%pfeYvg905UCtzx zCaAW~-RYRWDcNHtn(}>n>s)CwM&-^TN`H(Y+Ng;*P+6izwclN4DHU}1KJ&-9n=Vf0 z;C;F8-odSCn=`IQ@MO&ymjiBlyAX8ybC{GoUnYV2#Mn$VagEQOkiT~m3w0P@1Hq2o z3Q{0_9X>C569duWvP*R%GJ_`(hgm-R8!H_eT5g1JDk*4fyU2C3n->+3zZb5Q8kUrT za$r(Qf1Zn-R%f(1NabRuzwWN*g2_O2Y5~@fnl?;GvWUa_?$Fb@1AzOay^`SU-NM4 z#m>qg#3GDKG#TU1iLWdlGEK$BD3xWRs@W*nDedIy&qiV5C=<0R8zmusyL7IEWzwzB zMoo4_VWOjx3o~AsTw~d&@vf+~*{F%GsDrXmBVAFW*{IcBQN!7&T36ISHcHmkI-of; z8#UM!HI$9o&=qxXHmav93Z1qNG-ThjQx_Dy6E)QpHJy#BcSSX_Q7DXO3Pe@BQy{1L znJ6w}bfS*xih4vgYI9fAY&Htry-b0}WTWP~qPAqCwsu8v&#=>sTybi73ioB zvJs4#sbXwN>y1!*BQVGzLeE_z{<%6mXb**Qs!|V1yybTjy{snI#2eqkN(l0%Aa_0K zkvH;w@Y9GNn=J*=nJO&U9z&+FTq7S3r=O0|1QOIwEXE%~W3P9b$Bm=&39)p2m7!=e zi)?+RsldQkRyIK(Q@UrOQKDnz?<)zzbiIf#h_}fvA>TxIc%>bk3M%* zdKp#!dT4ubK~oq&o1u$u`M2(95*Yki3Ydo7eP&N;bw7X7~&S6^Z2vA;~Z-N2M-km={&I&dv^47P4D8)AFP1F zM!c|AoO&0pPW~IAttXJNbs>LtX-*URWrbd(PmP zW)$CxtpFN)OJbiWms`0qy>smE8hsMJGAT1c0K!RY)YII0%0A01d6`B#((~4|+|5Dj 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

h7|L=YO+iV+4Fk&m^5_~ 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ℜq%CV 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 diff --git a/bin/Qiniu.dll b/bin/Qiniu.dll deleted file mode 100644 index f74c332dd1ef89ff40141b60b2a7dff8316926be..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 67072 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 Date: Wed, 23 Nov 2016 15:24:53 +0800 Subject: [PATCH 2/2] unit tests for PutPolicy & PersistentOpsAvthumb --- Qiniu.Test/Models/PersistentOpsAvthumbTest.cs | 13 + Qiniu.Test/PersistentOps.Avthumb.Test.cs | 111 ++++++ Qiniu.Test/PutPolicyExtension.Test.cs | 338 ++++++++++++++++++ Qiniu.Test/Qiniu.Test.csproj | 4 + Qiniu.Test/Utils/Random.Extension.cs | 28 ++ Qiniu/Qiniu.csproj | 3 + Qiniu/Util/AVThumbFormats.cs | 139 +++++++ Qiniu/Util/AudioCodec.cs | 74 ++++ Qiniu/Util/PersistentOps.Avthumb.cs | 9 +- Qiniu/Util/VideoCodec.cs | 89 +++++ 10 files changed, 807 insertions(+), 1 deletion(-) create mode 100644 Qiniu.Test/Models/PersistentOpsAvthumbTest.cs create mode 100644 Qiniu.Test/PersistentOps.Avthumb.Test.cs create mode 100644 Qiniu.Test/PutPolicyExtension.Test.cs create mode 100644 Qiniu.Test/Utils/Random.Extension.cs create mode 100644 Qiniu/Util/AVThumbFormats.cs create mode 100644 Qiniu/Util/AudioCodec.cs create mode 100644 Qiniu/Util/VideoCodec.cs diff --git a/Qiniu.Test/Models/PersistentOpsAvthumbTest.cs b/Qiniu.Test/Models/PersistentOpsAvthumbTest.cs new file mode 100644 index 00000000..0501ebe3 --- /dev/null +++ b/Qiniu.Test/Models/PersistentOpsAvthumbTest.cs @@ -0,0 +1,13 @@ +using Qiniu.Util; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Qiniu.Test.Models +{ + class PersistentOpsAvthumbTest : PersistentOpsAvthumb + { + public PersistentOpsAvthumbTest(string format) : base(format) { } + } +} diff --git a/Qiniu.Test/PersistentOps.Avthumb.Test.cs b/Qiniu.Test/PersistentOps.Avthumb.Test.cs new file mode 100644 index 00000000..6d6fa320 --- /dev/null +++ b/Qiniu.Test/PersistentOps.Avthumb.Test.cs @@ -0,0 +1,111 @@ +using System; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using System.Text; +using Qiniu.Test.Utils; + +namespace Qiniu.Test +{ + [TestClass] + public class PersistentOpsAvthumbTest + { + [TestMethod] + public void TestPersistentOpsAvthumb() + { + var sbOps = new StringBuilder("avthumb"); + + var avthumb = new Models.PersistentOpsAvthumbTest(new string[] { Util.AVThumbFormats.mp2, Util.AVThumbFormats.mp3, Util.AVThumbFormats.mp4 }.RandomGetFromArray()); + sbOps.AppendFormat("/{0}", avthumb.Format); + + avthumb.BitRate = new string[] { "64k", "128k", "192k", "256k", "320k" }.RandomGetFromArray(); + sbOps.AppendFormat("/ab/{0}", avthumb.BitRate); + + avthumb.AudioQuality = new Random().Next(0, 9); + sbOps.AppendFormat("/aq/{0}", avthumb.AudioQuality); + + avthumb.SamplingRate = new int[] { 8000, 12050, 22050, 44100 }.RandomGetFromArray(); + sbOps.AppendFormat("/ar/{0}", avthumb.SamplingRate); + + avthumb.FrameRate = new int[] { 24, 25, 30 }.RandomGetFromArray(); + sbOps.AppendFormat("/r/{0}", avthumb.FrameRate); + + avthumb.VideoBitRate = new string[] { "128k", "1.25m", "1.5m" }.RandomGetFromArray(); + sbOps.AppendFormat("/vb/{0}", avthumb.VideoBitRate); + + avthumb.VideoCodec = new string[] { Util.VideoCodec.a64multi, Util.VideoCodec.a64multi5, Util.VideoCodec.amv, Util.VideoCodec.asv1, Util.VideoCodec.asv2 }.RandomGetFromArray(); + sbOps.AppendFormat("/vcodec/{0}", avthumb.VideoCodec); + + avthumb.AudioCodec = new string[] { Util.AudioCodec.aac, Util.AudioCodec.ac3, Util.AudioCodec.ac3_fixed, Util.AudioCodec.adpcm_adx, Util.AudioCodec.adpcm_ima_qt }.RandomGetFromArray(); + sbOps.AppendFormat("/acodec/{0}", avthumb.AudioCodec); + + avthumb.Profile = new string[] { "aac_he" }.RandomGetFromArray(); + sbOps.AppendFormat("/audioProfile/{0}", avthumb.Profile); + + avthumb.SubtitleCodec = new string[] { "mov_text" }.RandomGetFromArray(); + sbOps.AppendFormat("/scodec/{0}", avthumb.SubtitleCodec); + + avthumb.SubtitleURL = Guid.NewGuid().ToString(); + sbOps.AppendFormat("/subtitle/{0}", avthumb.SubtitleURL); + + avthumb.SeekStart = new Random().Next(1, 10000) / 100d; + sbOps.AppendFormat("/ss/{0}s", avthumb.SeekStart); + + avthumb.Duration = new Random().Next(1, 10000) / 100d; + sbOps.AppendFormat("/t/{0}s", avthumb.Duration); + + avthumb.Resolution = string.Format("{0}x{1}", new Random().Next(20, 3840), new Random().Next(20, 2160)); + sbOps.AppendFormat("/s/{0}", avthumb.Resolution); + + avthumb.Autoscale = new int[] { 0, 1 }.RandomGetFromArray(); + sbOps.AppendFormat("/autoscale/{0}", avthumb.Autoscale); + + avthumb.Aspect = new string[] { "4:3", "16:9" }.RandomGetFromArray(); + sbOps.AppendFormat("/aspect/{0}", avthumb.Aspect); + + avthumb.StripMeta = new int[] { 0, 1 }.RandomGetFromArray(); + sbOps.AppendFormat("/stripmeta/{0}", avthumb.StripMeta); + + avthumb.H264Crf = new Random().Next(18, 28); + sbOps.AppendFormat("/h264Crf/{0}", avthumb.H264Crf); + + avthumb.Degree = new int[] { 90, 180, 270 }.RandomGetFromArray(); + sbOps.AppendFormat("/rotate/{0}", avthumb.Degree); + + avthumb.EncodedRemoteImageUrl = Guid.NewGuid().ToString(); + sbOps.AppendFormat("/wmImage/{0}", avthumb.EncodedRemoteImageUrl); + + avthumb.Gravity = Guid.NewGuid().ToString(); + sbOps.AppendFormat("/wmGravity/{0}", avthumb.Gravity); + + avthumb.EncodedText = Guid.NewGuid().ToString(); + sbOps.AppendFormat("/wmText/{0}", avthumb.EncodedText); + + avthumb.GravityText = Guid.NewGuid().ToString(); + sbOps.AppendFormat("/wmGravityText/{0}", avthumb.GravityText); + + avthumb.Font = Guid.NewGuid().ToString(); + sbOps.AppendFormat("/wmFont/{0}", avthumb.Font); + + avthumb.FontColor = Guid.NewGuid().ToString(); + sbOps.AppendFormat("/wmFontColor/{0}", avthumb.FontColor); + + avthumb.FontSize = new Random().Next(1, 64); + sbOps.AppendFormat("/wmFontSize/{0}", avthumb.FontSize); + + avthumb.Xing = Guid.NewGuid().ToString(); + sbOps.AppendFormat("/writeXing/{0}", avthumb.Xing); + + avthumb.AudioNo = new int[] { 0, 1 }.RandomGetFromArray(); + sbOps.AppendFormat("/an/{0}", avthumb.AudioNo); + + avthumb.VideoNo = new int[] { 0, 1 }.RandomGetFromArray(); + sbOps.AppendFormat("/vn/{0}", avthumb.VideoNo); + + avthumb.SaveAs = Guid.NewGuid().ToString(); + sbOps.AppendFormat("|saveas/{0}", avthumb.SaveAs); + + var expected = sbOps.ToString(); + var actual = avthumb.GetOpsString(); + Assert.AreEqual(expected, actual); + } + } +} diff --git a/Qiniu.Test/PutPolicyExtension.Test.cs b/Qiniu.Test/PutPolicyExtension.Test.cs new file mode 100644 index 00000000..551d1015 --- /dev/null +++ b/Qiniu.Test/PutPolicyExtension.Test.cs @@ -0,0 +1,338 @@ +using System; +using Microsoft.VisualStudio.TestTools.UnitTesting; +using Qiniu.Util; + +namespace Qiniu.Test +{ + [TestClass] + public class PutPolicyExtensionTest + { + [TestMethod] + public void TestWithScope() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.Scope = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithScope(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithDeadline() + { + var value = new Random().Next(1, 10000); + var policy = new PutPolicy(); + policy.Deadline = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithDeadline(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithDeadline_II() + { + var value = new Random().Next(1, 10000); + var policy = new PutPolicy(); + policy.SetExpires(value); + var expected = policy.ToString(); + var actual = new PutPolicy().WithDeadline(TimeSpan.FromSeconds(value)).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithInsertOnly() + { + var policy = new PutPolicy(); + policy.InsertOnly = 1; + var expected = policy.ToString(); + var actual = new PutPolicy().WithInsertOnly(true).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithInsertOnly_Default() + { + var policy = new PutPolicy(); + policy.InsertOnly = 1; + var expected = policy.ToString(); + var actual = new PutPolicy().WithInsertOnly().ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithInsertOnly_False() + { + var policy = new PutPolicy(); + policy.InsertOnly = 0; + var expected = policy.ToString(); + var actual = new PutPolicy().WithInsertOnly(false).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithEndUser() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.EndUser = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithEndUser(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithReturnUrl() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.ReturnUrl = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithReturnUrl(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithReturnBody() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.ReturnBody = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithReturnBody(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithCallbackUrl() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.CallbackUrl = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithCallbackUrl(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithCallbackHost() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.CallbackHost = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithCallbackHost(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithCallbackBody() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.CallbackBody = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithCallbackBody(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithCallbackBodyType() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.CallbackBodyType = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithCallbackBodyType(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithCallbackBodyType_Default() + { + var value = "application/x-www-form-urlencoded"; + var policy = new PutPolicy(); + policy.CallbackBodyType = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithCallbackBodyType().ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithCallbackFetchKey() + { + var policy = new PutPolicy(); + policy.CallbackFetchKey = 1; + var expected = policy.ToString(); + var actual = new PutPolicy().WithCallbackFetchKey(true).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithCallbackFetchKey_Default() + { + var policy = new PutPolicy(); + policy.CallbackFetchKey = 1; + var expected = policy.ToString(); + var actual = new PutPolicy().WithCallbackFetchKey().ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithCallbackFetchKey_False() + { + var policy = new PutPolicy(); + policy.CallbackFetchKey = 0; + var expected = policy.ToString(); + var actual = new PutPolicy().WithCallbackFetchKey(false).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithPersistentOps() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.PersistentOps = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithPersistentOps(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithPersistentOps_NULL() + { + var policy = new PutPolicy(); + var expected = policy.ToString(); + var actual = new PutPolicy().WithPersistentOps().ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithPersistentOps_SINGLE() + { + var policy = new PutPolicy(); + policy.PersistentOps = "avthumb/mp3"; + var expected = policy.ToString(); + var actual = new PutPolicy().WithPersistentOps(new Models.PersistentOpsAvthumbTest("mp3")).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithPersistentOps_DOUBLE() + { + var policy = new PutPolicy(); + policy.PersistentOps = "avthumb/mp3;avthumb/mp4"; + var expected = policy.ToString(); + var actual = new PutPolicy().WithPersistentOps(new Models.PersistentOpsAvthumbTest("mp3"), new Models.PersistentOpsAvthumbTest("mp4")).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithPersistentNotifyUrl() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.PersistentNotifyUrl = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithPersistentNotifyUrl(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithPersistentPipeline() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.PersistentPipeline = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithPersistentPipeline(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithSaveKey() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.SaveKey = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithSaveKey(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithFsizeMin() + { + var value = new Random().Next(1, 10000); + var policy = new PutPolicy(); + policy.FsizeMin = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithFsizeMin(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithFsizeLimit() + { + var value = new Random().Next(1, 10000); + var policy = new PutPolicy(); + policy.FsizeLimit = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithFsizeLimit(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithDetectMime() + { + var policy = new PutPolicy(); + policy.DetectMime = 1; + var expected = policy.ToString(); + var actual = new PutPolicy().WithDetectMime(true).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithDetectMime_Default() + { + var policy = new PutPolicy(); + policy.DetectMime = 1; + var expected = policy.ToString(); + var actual = new PutPolicy().WithDetectMime().ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithDetectMime_False() + { + var policy = new PutPolicy(); + policy.DetectMime = 0; + var expected = policy.ToString(); + var actual = new PutPolicy().WithDetectMime(false).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithMimeLimit() + { + var value = Guid.NewGuid().ToString(); + var policy = new PutPolicy(); + policy.MimeLimit = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithMimeLimit(value).ToString(); + Assert.AreEqual(expected, actual); + } + + [TestMethod] + public void TestWithDeleteAfterDays() + { + var value = new Random().Next(1, 10000); + var policy = new PutPolicy(); + policy.DeleteAfterDays = value; + var expected = policy.ToString(); + var actual = new PutPolicy().WithDeleteAfterDays(value).ToString(); + Assert.AreEqual(expected, actual); + } + } +} diff --git a/Qiniu.Test/Qiniu.Test.csproj b/Qiniu.Test/Qiniu.Test.csproj index 349cbced..f706ade7 100644 --- a/Qiniu.Test/Qiniu.Test.csproj +++ b/Qiniu.Test/Qiniu.Test.csproj @@ -61,6 +61,10 @@ + + + + diff --git a/Qiniu.Test/Utils/Random.Extension.cs b/Qiniu.Test/Utils/Random.Extension.cs new file mode 100644 index 00000000..263641eb --- /dev/null +++ b/Qiniu.Test/Utils/Random.Extension.cs @@ -0,0 +1,28 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Qiniu.Test.Utils +{ + public static partial class RandomExtension + { + public static T RandomGetFromArray(this IEnumerable array) + { + var count = array.Count(); + var index = 0; + var target = new Random().Next(0, count - 1); + var enumerator = array.GetEnumerator(); + var value = default(T); + while (enumerator.MoveNext()) + { + value = enumerator.Current; + if (index++ == target) + { + break; + } + } + return value; + } + } +} diff --git a/Qiniu/Qiniu.csproj b/Qiniu/Qiniu.csproj index 3011430a..bfc009c7 100644 --- a/Qiniu/Qiniu.csproj +++ b/Qiniu/Qiniu.csproj @@ -85,7 +85,9 @@ + + @@ -98,6 +100,7 @@ + diff --git a/Qiniu/Util/AVThumbFormats.cs b/Qiniu/Util/AVThumbFormats.cs new file mode 100644 index 00000000..74a9c730 --- /dev/null +++ b/Qiniu/Util/AVThumbFormats.cs @@ -0,0 +1,139 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Qiniu.Util +{ + public abstract class AVThumbFormats + { + private AVThumbFormats() { } + public const string _3g2 = "3g2"; // 3GP2 (3GPP2 file format) + public const string _3gp = "3gp"; // 3GP (3GPP file format) + public const string a64 = "a64"; // a64 video for Commodore 64 + public const string ac3 = "ac3"; // raw AC-3 + public const string adts = "adts"; // ADTS AAC (Advanced Audio Coding) + public const string adx = "adx"; // CRI ADX + public const string aiff = "aiff"; // Audio IFF + public const string alaw = "alaw"; // PCM A-law + public const string amr = "amr"; // 3GPP AMR + public const string asf = "asf"; // ASF (Advanced / Active Streaming Format) + public const string asf_stream = "asf_stream"; // ASF (Advanced / Active Streaming Format) + public const string ass = "ass"; // SSA (SubStation Alpha) subtitle + public const string ast = "ast"; // AST (Audio Stream) + public const string au = "au"; // Sun AU + public const string avi = "avi"; // AVI (Audio Video Interleaved) + public const string avm2 = "avm2"; // SWF (ShockWave Flash) (AVM2) + public const string bit = "bit"; // G.729 BIT file format + public const string caf = "caf"; // Apple CAF (Core Audio Format) + public const string cavsvideo = "cavsvideo"; // raw Chinese AVS (Audio Video Standard) video + public const string crc = "crc"; // CRC testing + public const string data = "data"; // raw data + public const string daud = "daud"; // D-Cinema audio + public const string dirac = "dirac"; // raw Dirac + public const string dnxhd = "dnxhd"; // raw DNxHD (SMPTE VC-3) + public const string dts = "dts"; // raw DTS + public const string dv = "dv"; // DV (Digital Video) + public const string dvd = "dvd"; // MPEG-2 PS (DVD VOB) + public const string eac3 = "eac3"; // raw E-AC-3 + public const string f32be = "f32be"; // PCM 32-bit floating-point big-endian + public const string f32le = "f32le"; // PCM 32-bit floating-point little-endian + public const string f4v = "f4v"; // F4V Adobe Flash Video + public const string f64be = "f64be"; // PCM 64-bit floating-point big-endian + public const string f64le = "f64le"; // PCM 64-bit floating-point little-endian + public const string ffm = "ffm"; // FFM (FFserver live feed) + public const string ffmetadata = "ffmetadata"; // FFmpeg metadata in text + public const string filmstrip = "filmstrip"; // Adobe Filmstrip + public const string flac = "flac"; // raw FLAC + public const string flv = "flv"; // FLV (Flash Video) + public const string framecrc = "framecrc"; // framecrc testing + public const string framemd5 = "framemd5"; // Per-frame MD5 testing + public const string g722 = "g722"; // raw G.722 + public const string g723_1 = "g723_1"; // raw G.723.1 + public const string gif = "gif"; // GIF Animation + public const string gxf = "gxf"; // GXF (General eXchange Format) + public const string h261 = "h261"; // raw H.261 + public const string h263 = "h263"; // raw H.263 + public const string h264 = "h264"; // raw H.264 video + public const string hls = "hls"; // Apple HTTP Live Streaming + public const string ico = "ico"; // Microsoft Windows ICO + public const string ilbc = "ilbc"; // iLBC storage + public const string image2 = "image2"; // image2 sequence + public const string image2pipe = "image2pipe"; // piped image2 sequence + public const string ipod = "ipod"; // iPod H.264 MP4 (MPEG-4 Part 14) + public const string ircam = "ircam"; // Berkeley/IRCAM/CARL Sound Format + public const string ismv = "ismv"; // ISMV/ISMA (Smooth Streaming) + public const string ivf = "ivf"; // On2 IVF + public const string jacosub = "jacosub"; // JACOsub subtitle format + public const string latm = "latm"; // LOAS/LATM + public const string m4v = "m4v"; // raw MPEG-4 video + public const string matroska = "matroska"; // Matroska + public const string md5 = "md5"; // MD5 testing + public const string microdvd = "microdvd"; // MicroDVD subtitle format + public const string mjpeg = "mjpeg"; // raw MJPEG video + public const string mkvtimestamp_v2 = "mkvtimestamp_v2"; // extract pts as timecode v2 format, as defined by mkvtoolnix + public const string mlp = "mlp"; // raw MLP + public const string mmf = "mmf"; // Yamaha SMAF + public const string mov = "mov"; // QuickTime / MOV + public const string mp2 = "mp2"; // MP2 (MPEG audio layer 2) + public const string mp3 = "mp3"; // MP3 (MPEG audio layer 3) + public const string mp4 = "mp4"; // MP4 (MPEG-4 Part 14) + public const string mpeg = "mpeg"; // MPEG-1 Systems / MPEG program stream + public const string mpeg1video = "mpeg1video"; // raw MPEG-1 video + public const string mpeg2video = "mpeg2video"; // raw MPEG-2 video + public const string mpegts = "mpegts"; // MPEG-TS (MPEG-2 Transport Stream) + public const string mpjpeg = "mpjpeg"; // MIME multipart JPEG + public const string mulaw = "mulaw"; // PCM mu-law + public const string mxf = "mxf"; // MXF (Material eXchange Format) + public const string mxf_d10 = "mxf_d10"; // MXF (Material eXchange Format) D-10 Mapping + public const string nut = "nut"; // NUT + public const string ogg = "ogg"; // Ogg + public const string oma = "oma"; // Sony OpenMG audio + public const string psp = "psp"; // PSP MP4 (MPEG-4 Part 14) + public const string rawvideo = "rawvideo"; // raw video + public const string rm = "rm"; // RealMedia + public const string roq = "roq"; // raw id RoQ + public const string rso = "rso"; // Lego Mindstorms RSO + public const string rtp = "rtp"; // RTP output + public const string rtsp = "rtsp"; // RTSP output + public const string s16be = "s16be"; // PCM signed 16-bit big-endian + public const string s16le = "s16le"; // PCM signed 16-bit little-endian + public const string s24be = "s24be"; // PCM signed 24-bit big-endian + public const string s24le = "s24le"; // PCM signed 24-bit little-endian + public const string s32be = "s32be"; // tPCM signed 32-bit big-endian + public const string s32le = "s32le"; // PCM signed 32-bit little-endian + public const string s8 = "s8"; // PCM signed 8-bit + public const string sap = "sap"; // SAP output + public const string segment = "segment"; // segment + public const string smjpeg = "smjpeg"; // Loki SDL MJPEG + public const string smoothstreaming = "smoothstreaming"; // Smooth Streaming Muxer + public const string sox = "sox"; // SoX native + public const string spdif = "spdif"; // IEC 61937 (used on S/PDIF - IEC958) + public const string srt = "srt"; // SubRip subtitle + public const string stream_segment = "stream_segment"; // streaming segment muxer + public const string ssegment = "ssegment"; // streaming segment muxer + public const string svcd = "svcd"; // MPEG-2 PS (SVCD) + public const string swf = "swf"; // SWF (ShockWave Flash) + public const string tee = "tee"; // Multiple muxer tee + public const string truehd = "truehd"; // raw TrueHD + public const string u16be = "u16be"; // PCM unsigned 16-bit big-endian + public const string u16le = "u16le"; // PCM unsigned 16-bit little-endian + public const string u24be = "u24be"; // PCM unsigned 24-bit big-endian + public const string u24le = "u24le"; // PCM unsigned 24-bit little-endian + public const string u32be = "u32be"; // PCM unsigned 32-bit big-endian + public const string u32le = "u32le"; // PCM unsigned 32-bit little-endian + public const string u8 = "u8"; // PCM unsigned 8-bit + public const string vc1 = "vc1"; // raw VC-1 video + public const string vc1test = "vc1test"; // VC-1 test bitstream + public const string vcd = "vcd"; // MPEG-1 Systems / MPEG program stream (VCD) + public const string vob = "vob"; // MPEG-2 PS (VOB) + public const string voc = "voc"; // Creative Voice + public const string w64 = "w64"; // Sony Wave64 + public const string wav = "wav"; // WAV / WAVE (Waveform Audio) + public const string webm = "webm"; // Matroska / WebM + public const string webvtt = "webvtt"; // WebVTT subtitle + public const string wtv = "wtv"; // Windows Television (WTV) + public const string wv = "wv"; // raw WavPack + public const string yuv4mpegpipe = "yuv4mpegpipe"; // YUV4MPEG pipe + } +} diff --git a/Qiniu/Util/AudioCodec.cs b/Qiniu/Util/AudioCodec.cs new file mode 100644 index 00000000..615b79db --- /dev/null +++ b/Qiniu/Util/AudioCodec.cs @@ -0,0 +1,74 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Qiniu.Util +{ + public abstract class AudioCodec + { + private AudioCodec() { } + public const string aac = "aac"; // AAC (Advanced Audio Coding) + public const string libfaac = "libfaac"; // + public const string ac3 = "ac3"; // ATSC A/52A (AC-3) + public const string ac3_fixed = "ac3_fixed"; // ATSC A/52A (AC-3) (codec ac3) + public const string adpcm_adx = "adpcm_adx"; // SEGA CRI ADX ADPCM + public const string g722 = "g722"; // G.722 ADPCM (codec adpcm_g722) + public const string g726 = "g726"; // G.726 ADPCM (codec adpcm_g726) + public const string adpcm_ima_qt = "adpcm_ima_qt"; // ADPCM IMA QuickTime + public const string adpcm_ima_wav = "adpcm_ima_wav"; // ADPCM IMA WAV + public const string adpcm_ms = "adpcm_ms"; // ADPCM Microsoft + public const string adpcm_swf = "adpcm_swf"; // ADPCM Shockwave Flash + public const string adpcm_yamaha = "adpcm_yamaha"; // ADPCM Yamaha + public const string alac = "alac"; // ALAC (Apple Lossless Audio Codec) + public const string libopencore_amrnb = "libopencore_amrnb"; // OpenCORE AMR-NB (Adaptive Multi-Rate Narrow-Band) (codec amr_nb) + public const string comfortnoise = "comfortnoise"; // RFC 3389 comfort noise generator + public const string dca = "dca"; // DCA (DTS Coherent Acoustics) (codec dts) + public const string eac3 = "eac3"; // ATSC A/52 E-AC-3 + public const string flac = "flac"; // FLAC (Free Lossless Audio Codec) + public const string g723_1 = "g723_1"; // G.723.1 + public const string libilbc = "libilbc"; // iLBC (Internet Low Bitrate Codec) (codec ilbc) + public const string mp2 = "mp2"; // MP2 (MPEG audio layer 2) + public const string libmp3lame = "libmp3lame"; // libmp3lame MP3 (MPEG audio layer 3) (codec mp3) + public const string nellymoser = "nellymoser"; // Nellymoser Asao + public const string pcm_alaw = "pcm_alaw"; // PCM A-law / G.711 A-law + public const string pcm_f32be = "pcm_f32be"; // PCM 32-bit floating point big-endian + public const string pcm_f32le = "pcm_f32le"; // PCM 32-bit floating point little-endian + public const string pcm_f64be = "pcm_f64be"; // PCM 64-bit floating point big-endian + public const string pcm_f64le = "pcm_f64le"; // PCM 64-bit floating point little-endian + public const string pcm_mulaw = "pcm_mulaw"; // PCM mu-law / G.711 mu-law + public const string pcm_s16be = "pcm_s16be"; // PCM signed 16-bit big-endian + public const string pcm_s16be_planar = "pcm_s16be_planar"; // PCM signed 16-bit big-endian planar + public const string pcm_s16le = "pcm_s16le"; // PCM signed 16-bit little-endian + public const string pcm_s16le_planar = "pcm_s16le_planar"; // PCM signed 16-bit little-endian planar + public const string pcm_s24be = "pcm_s24be"; // PCM signed 24-bit big-endian + public const string pcm_s24daud = "pcm_s24daud"; // PCM D-Cinema audio signed 24-bit + public const string pcm_s24le = "pcm_s24le"; // PCM signed 24-bit little-endian + public const string pcm_s24le_planar = "pcm_s24le_planar"; // PCM signed 24-bit little-endian planar + public const string pcm_s32be = "pcm_s32be"; // PCM signed 32-bit big-endian + public const string pcm_s32le = "pcm_s32le"; // PCM signed 32-bit little-endian + public const string pcm_s32le_planar = "pcm_s32le_planar"; // PCM signed 32-bit little-endian planar + public const string pcm_s8 = "pcm_s8"; // CM signed 8-bit + public const string pcm_s8_planar = "pcm_s8_planar"; // PCM signed 8-bit planar + public const string pcm_u16be = "pcm_u16be"; // PCM unsigned 16-bit big-endian + public const string pcm_u16le = "pcm_u16le"; // PCM unsigned 16-bit little-endian + public const string pcm_u24be = "pcm_u24be"; // PCM unsigned 24-bit big-endian + public const string pcm_u24le = "pcm_u24le"; // PCM unsigned 24-bit little-endian + public const string pcm_u32be = "pcm_u32be"; // PCM unsigned 32-bit big-endian + public const string pcm_u32le = "pcm_u32le"; // PCM unsigned 32-bit little-endian + public const string pcm_u8 = "pcm_u8"; // PCM unsigned 8-bit + public const string real_144 = "real_144"; // RealAudio 1.0 (14.4K) (codec ra_144) + public const string roq_dpcm = "roq_dpcm"; // id RoQ DPCM + public const string s302m = "s302m"; // SMPTE 302M + public const string sonic = "sonic"; // Sonic + public const string sonicls = "sonicls"; // Sonic lossless + public const string libspeex = "libspeex"; // libspeex Speex (codec speex) + public const string tta = "tta"; // TTA (True Audio) + public const string vorbis = "vorbis"; // Vorbis + public const string libvorbis = "libvorbis"; // ibvorbis (codec vorbis) + public const string wavpack = "wavpack"; // 无损音频压缩格式 + public const string wmav1 = "wmav1"; // Windows Media Audio 1 + public const string wmav2 = "wmav2"; // Windows Media Audio 2 + public const string copy = "copy"; // 编码同原始音频 + } +} diff --git a/Qiniu/Util/PersistentOps.Avthumb.cs b/Qiniu/Util/PersistentOps.Avthumb.cs index 120dc0bc..4a89e815 100644 --- a/Qiniu/Util/PersistentOps.Avthumb.cs +++ b/Qiniu/Util/PersistentOps.Avthumb.cs @@ -183,6 +183,11 @@ public override string GetOpsString() sbOps.Append("/acodec/"); sbOps.Append(this.AudioCodec); } + if (!string.IsNullOrWhiteSpace(this.Profile)) + { + sbOps.Append("/audioProfile/"); + sbOps.Append(this.Profile); + } if (!string.IsNullOrWhiteSpace(this.SubtitleCodec)) { sbOps.Append("/scodec/"); @@ -197,11 +202,13 @@ public override string GetOpsString() { sbOps.Append("/ss/"); sbOps.Append(this.SeekStart); + sbOps.Append("s"); } if (this.Duration.HasValue) { - sbOps.Append("/d/"); + sbOps.Append("/t/"); sbOps.Append(this.Duration); + sbOps.Append("s"); } if (!string.IsNullOrWhiteSpace(this.Resolution)) { diff --git a/Qiniu/Util/VideoCodec.cs b/Qiniu/Util/VideoCodec.cs new file mode 100644 index 00000000..f4bf6aaf --- /dev/null +++ b/Qiniu/Util/VideoCodec.cs @@ -0,0 +1,89 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; + +namespace Qiniu.Util +{ + public abstract class VideoCodec + { + private VideoCodec() { } + public const string a64multi = "a64multi"; // Multicolor charset for Commodore 64 (codec a64_multi) + public const string a64multi5 = "a64multi5"; // Multicolor charset for Commodore 64, extended with 5th color (colram) (codec a64_multi5) + public const string amv = "amv"; // AMV Video + public const string asv1 = "asv1"; // ASUS V1 + public const string asv2 = "asv2"; // ASUS V2 + public const string avrp = "avrp"; // Avid 11 10-bit RGB Packer + public const string avui = "avui"; // Avid Meridien Uncompressed + public const string ayuv = "ayuv"; // Uncompressed packed MS 4444 + public const string bmp = "bmp"; // BMP (Windows and OS/2 bitmap) + public const string cljr = "cljr"; // Cirrus Logic AccuPak + public const string dnxhd = "dnxhd"; // VC3/DNxHD + public const string dpx = "dpx"; // DPX image + public const string dvvideo = "dvvideo"; // DV (Digital Video) + public const string ffv1 = "ffv1"; // FFmpeg video codec # 1 + public const string ffvhuff = "ffvhuff"; // Huffyuv FFmpeg variant + public const string flashsv = "flashsv"; // Flash Screen Video + public const string flashsv2 = "flashsv2"; // Flash Screen Video Version 2 + public const string flv = "flv"; // FLV / Sorenson Spark / Sorenson H.263 (Flash Video) (codec flv1) + public const string gif = "gif"; // GIF (Graphics Interchange Format) + public const string h261 = "h261"; // H.261 + public const string h263 = "h263"; // H.263 / H.263-1996 + public const string h263p = "h263p"; // H.263+ / H.263-1998 / H.263 version 2 + public const string libx264 = "libx264"; // libx264 H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10 RGB (codec h264) + public const string libx265 = "libx265"; // libx265 H.265 / AVC / MPEG-4 AVC / MPEG-4 part 10 RGB (codec h265) + public const string huffyuv = "huffyuv"; // Huffyuv / HuffYUV + public const string jpeg2000 = "jpeg2000"; // JPEG 2000, + public const string jpegls = "jpegls"; // JPEG-LS + public const string ljpeg = "ljpeg"; // Lossless JPEG + public const string mjpeg = "mjpeg"; // MJPEG (Motion JPEG) + public const string mpeg1video = "mpeg1video"; // MPEG-1 video + public const string mpeg2video = "mpeg2video"; // MPEG-2 video + public const string mpeg4 = "mpeg4"; // MPEG-4 part 2 + public const string libxvid = "libxvid"; // libxvidcore MPEG-4 part 2 (codec mpeg4) + public const string msmpeg4v2 = "msmpeg4v2"; // MPEG-4 part 2 Microsoft variant version 2 + public const string msmpeg4 = "msmpeg4"; // MPEG-4 part 2 Microsoft variant version 3 (codec msmpeg4v3) + public const string msvideo1 = "msvideo1"; // Microsoft Video-1 + public const string pam = "pam"; // PAM (Portable AnyMap) image + public const string pbm = "pbm"; // PBM (Portable BitMap) image + public const string pcx = "pcx"; // PC Paintbrush PCX image + public const string pgm = "pgm"; // PGM (Portable GrayMap) image + public const string pgmyuv = "pgmyuv"; // PGMYUV (Portable GrayMap YUV) image + public const string png = "png"; // PNG (Portable Network Graphics) image + public const string ppm = "ppm"; // PPM (Portable PixelMap) image + public const string prores = "prores"; // Apple ProRes + public const string prores_aw = "prores_aw"; // Apple ProRes (codec prores) + public const string prores_ks = "prores_ks"; // Apple ProRes (iCodec Pro) (codec prores) + public const string qtrle = "qtrle"; // QuickTime Animation (RLE) video + public const string r10k = "r10k"; // AJA Kona 10-bit RGB Codec + public const string r210 = "r210"; // Uncompressed RGB 10-bit + public const string rawvideo = "rawvideo"; // raw video + public const string roqvideo = "roqvideo"; // id RoQ video (codec roq) + public const string rv10 = "rv10"; // RealVideo 1.0 + public const string rv20 = "rv20"; // RealVideo 2.0 + public const string sgi = "sgi"; // SGI image + public const string snow = "snow"; // Snow + public const string sunrast = "sunrast"; // Sun Rasterfile image + public const string svq1 = "svq1"; // Sorenson Vector Quantizer 1 / Sorenson Video 1 / SVQ1 + public const string targa = "targa"; // Truevision Targa image + public const string libtheora = "libtheora"; // libtheora Theora (codec theora) + public const string tiff = "tiff"; // TIFF image + public const string utvideo = "utvideo"; // Ut Video + public const string v210 = "v210"; // Uncompressed 422 10-bit + public const string v308 = "v308"; // Uncompressed packed 444 + public const string v408 = "v408"; // Uncompressed packed QT 4444 + public const string v410 = "v410"; // Uncompressed 444 10-bit + public const string libvpx = "libvpx"; // libvpx VP8 (codec vp8) + public const string libvpx_vp9 = "libvpx-vp9"; // libvpx VP9 + public const string wmv1 = "wmv1"; // Windows Media Video 7 + public const string wmv2 = "wmv2"; // Windows Media Video 8 + public const string xbm = "xbm"; // XBM (X BitMap) image + public const string xface = "xface"; // X-face image + public const string xwd = "xwd"; // XWD (X Window Dump) image + public const string y41p = "y41p"; // Uncompressed YUV 411 12-bit + public const string yuv4 = "yuv4"; // Uncompressed packed 420 + public const string zlib = "zlib"; // LCL (LossLess Codec Library) ZLIB + public const string zmbv = "zmbv"; // Zip Motion Blocks Video + public const string copy = "copy"; // 编码与同原始视频 + } +}