KZVideoConfig.h 2.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110
  1. //
  2. // KZVideoConfig.h
  3. // KZWeChatSmallVideo_OC
  4. //
  5. // Created by HouKangzhu on 16/7/19.
  6. // Copyright © 2016年 侯康柱. All rights reserved.
  7. //
  8. #import <UIKit/UIKit.h>
  9. #define kzSCREEN_WIDTH [UIScreen mainScreen].bounds.size.width
  10. #define kzSCREEN_HEIGHT [UIScreen mainScreen].bounds.size.height
  11. #define kzThemeBlackColor [UIColor blackColor]
  12. #define kzThemeTineColor [UIColor greenColor]
  13. #define kzThemeWaringColor [UIColor redColor]
  14. #define kzThemeWhiteColor [UIColor whiteColor]
  15. #define kzThemeGraryColor [UIColor grayColor]
  16. // 视频保存路径
  17. #define kzVideoDicName @"kzSmailVideo"
  18. // 视频录制 时长
  19. #define kzRecordTime 10.0
  20. // 视频的长宽按比例
  21. #define kzVideo_w_h (4.0/3)
  22. // 视频默认 宽的分辨率 高 = kzVideoWidthPX / kzVideo_w_h
  23. #define kzVideoWidthPX 200.0
  24. //控制条高度 小屏幕时
  25. #define kzControViewHeight 120.0
  26. // 是否保存到手机相册
  27. //#define saveToLibrary (0)
  28. extern void kz_dispatch_after(float time, dispatch_block_t block);
  29. typedef NS_ENUM(NSUInteger, KZVideoViewShowType) {
  30. KZVideoViewShowTypeSmall, // 小屏幕 ...聊天界面的
  31. KZVideoViewShowTypeSingle, // 全屏 ... 朋友圈界面的
  32. };
  33. @interface KZVideoConfig : NSObject
  34. // 录像 的 View 大小
  35. + (CGRect)viewFrameWithType:(KZVideoViewShowType)type;
  36. //视频View的尺寸
  37. + (CGSize)videoViewDefaultSize;
  38. // 默认视频分辨率
  39. + (CGSize)defualtVideoSize;
  40. // 渐变色
  41. + (NSArray *)gradualColors;
  42. // 模糊View
  43. + (void)motionBlurView:(UIView *)superView;
  44. + (void)showHinInfo:(NSString *)text inView:(UIView *)superView frame:(CGRect)frame timeLong:(NSTimeInterval)time;
  45. @end
  46. /*!
  47. * 视频对象 Model类
  48. */
  49. @interface KZVideoModel : NSObject
  50. /// 完整视频 本地路径
  51. @property (nonatomic, copy) NSString *videoAbsolutePath;
  52. /// 缩略图 路径
  53. @property (nonatomic, copy) NSString *thumAbsolutePath;
  54. // 录制时间
  55. @property (nonatomic, strong) NSDate *recordTime;
  56. @end
  57. @interface KZVideoUtil : NSObject
  58. /*!
  59. * 有视频的存在
  60. */
  61. + (BOOL)existVideo;
  62. /*!
  63. * 时间倒序 后的视频列表
  64. */
  65. + (NSArray *)getSortVideoList;
  66. /*!
  67. * 保存缩略图
  68. *
  69. * @param videoUrl 视频路径
  70. * @param second 第几秒的缩略图
  71. */
  72. + (void)saveThumImageWithVideoURL:(NSURL *)videoUrl second:(int64_t)second;
  73. /*!
  74. * 产生新的对象
  75. */
  76. + (KZVideoModel *)createNewVideo;
  77. /*!
  78. * 删除视频
  79. */
  80. + (void)deleteVideo:(NSString *)videoPath;
  81. @end