You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
44 lines
1.2 KiB
44 lines
1.2 KiB
//
|
|
// SCCapturerBufferedVideoWriter.h
|
|
// Snapchat
|
|
//
|
|
// Created by Chao Pang on 12/5/17.
|
|
//
|
|
|
|
#import <SCFoundation/SCQueuePerformer.h>
|
|
|
|
#import <SCManagedVideoCapturerOutputSettings.h>
|
|
|
|
#import <AVFoundation/AVFoundation.h>
|
|
#import <Foundation/Foundation.h>
|
|
|
|
@protocol SCCapturerBufferedVideoWriterDelegate <NSObject>
|
|
|
|
- (void)videoWriterDidFailWritingWithError:(NSError *)error;
|
|
|
|
@end
|
|
|
|
@interface SCCapturerBufferedVideoWriter : NSObject
|
|
|
|
- (instancetype)init NS_UNAVAILABLE;
|
|
|
|
- (instancetype)initWithPerformer:(id<SCPerforming>)performer
|
|
outputURL:(NSURL *)outputURL
|
|
delegate:(id<SCCapturerBufferedVideoWriterDelegate>)delegate
|
|
error:(NSError **)error;
|
|
|
|
- (BOOL)prepareWritingWithOutputSettings:(SCManagedVideoCapturerOutputSettings *)outputSettings;
|
|
|
|
- (void)startWritingAtSourceTime:(CMTime)sourceTime;
|
|
|
|
- (void)finishWritingAtSourceTime:(CMTime)sourceTime withCompletionHanlder:(dispatch_block_t)completionBlock;
|
|
|
|
- (void)cancelWriting;
|
|
|
|
- (void)appendVideoSampleBuffer:(CMSampleBufferRef)sampleBuffer;
|
|
|
|
- (void)appendAudioSampleBuffer:(CMSampleBufferRef)sampleBuffer;
|
|
|
|
- (void)cleanUp;
|
|
|
|
@end
|