JXConvertMedia.h 2.2 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980
  1. //
  2. // JXConvertMedia.h
  3. // MyAVController
  4. //
  5. // Created by imac on 13-3-8.
  6. // Copyright (c) 2013年 __MyCompanyName__. All rights reserved.
  7. //
  8. #import <Foundation/Foundation.h>
  9. #import <AVFoundation/AVFoundation.h>
  10. #import <CoreGraphics/CoreGraphics.h>
  11. #import <CoreVideo/CoreVideo.h>
  12. #import <CoreMedia/CoreMedia.h>
  13. @interface JXConvertMedia : NSObject{
  14. AVAssetWriter* _writer;
  15. AVAssetWriterInput* _audioInput;
  16. AVAssetWriterInput* _videoInput;
  17. AVCaptureVideoDataOutput *_captureVideo;
  18. AVCaptureAudioDataOutput *_captureAudio;
  19. AVCaptureDeviceInput *_deviceVideo;
  20. AVCaptureDeviceInput *_deviceAudio;
  21. int _writeVideoCount;
  22. int _writeAudioCount1;
  23. int _writeAudioCount2;
  24. CMTime _time;
  25. CMTime _timeLast;
  26. CMTimeRange _audiotimeRange1;
  27. CMTimeRange _audiotimeRange2;
  28. AVAssetReader * _audioReader2;
  29. AVAssetReader * _audioReader1;
  30. AVAssetReader * _videoReader;
  31. AVURLAsset * _asset;
  32. NSString* _lastSaveFile;
  33. }
  34. @property (nonatomic, strong) NSString* inputVideoFile;
  35. @property (nonatomic, strong) NSString* inputAudioFile1;
  36. @property (nonatomic, strong) NSString* inputAudioFile2;
  37. @property (nonatomic, strong) NSString* outputFileName;
  38. @property (nonatomic, strong) UIImage* logoImage;//视频水印
  39. @property (assign) CGRect logoRect;//水印范围
  40. @property (assign) CGSize rotateSize;
  41. @property (assign) int saveVideoToImage;//每隔多少秒保存一张截图jpg
  42. @property (assign) int videoWidth;//视频宽,默认为480
  43. @property (assign) int videoHeight;//视频高,默认为JX_SCREEN_WIDTH
  44. @property (assign) int videoFrames;//视频压缩后帧率,默认为15
  45. @property (assign) int videoEncodeBitRate;//视频压缩后码流,默认为200K
  46. @property (assign) int audioEncodeBitRate;//音频压缩后码流,默认为24K
  47. @property (assign) int audioSampleRate;//音频采样率,默认为22050
  48. @property (assign) int audioChannels;//音频声道,默认为1
  49. @property (nonatomic, assign) SEL onFinish;
  50. @property (nonatomic, weak) NSObject* delegate;
  51. @property (nonatomic, strong) UIProgressView* progress;
  52. @property (nonatomic, strong) UILabel* progressText;
  53. -(void)openMedia:(NSString*)video audio1:(NSString*)audio1 audio2:(NSString*)audio2;
  54. -(void) convert;
  55. @end