@class AVAssetTrack, AVAssetReader, NSMapTable, AVAssetWriter, AVAssetReaderTrackOutput, NSMutableArray, NSObject, AVAssetWriterInput, AVAsset; @protocol OS_dispatch_group, OS_dispatch_queue, OS_dispatch_semaphore; @interface VCPMovieAssetWriter : NSObject { AVAsset *_asset; AVAssetReader *_assetReader; AVAssetReaderTrackOutput *_audioOutput; AVAssetReaderTrackOutput *_videoOrientationOutput; AVAssetReaderTrackOutput *_stillImageOutput; AVAssetTrack *_track; AVAssetTrack *_audioTrack; AVAssetWriter *_writer; AVAssetWriterInput *_input; AVAssetWriterInput *_audioInput; AVAssetWriterInput *_livePhotoInfoInput; AVAssetWriterInput *_stillImageInput; AVAssetWriterInput *_videoOrientationInput; NSMutableArray *_sampleQueue; NSMutableArray *_livePhotoInfoQueue; NSObject *_encodingGroup; NSObject *_enqueueSemaphore; NSObject *_dequeueSemaphore; NSObject *_livePhotoInfoEnqueueSemaphore; NSObject *_livePhotoInfoDequeueSemaphore; NSObject *_statusOperationQueue; NSObject *_videoQueue; NSObject *_audioQueue; NSObject *_metadataQueue; struct CF<__CVPixelBufferPool *> { struct __CVPixelBufferPool *value_; } _pixelBufferPool; struct CF { struct OpaqueVTPixelTransferSession *value_; } _transferSession; struct { long long value; int timescale; unsigned int flags; long long epoch; } _stillPTS; BOOL _enableAudio; NSMapTable *_inputToOutputMap; } @property (readonly) long long status; + (id)assetWriterWithURL:(id)a0 andTrack:(id)a1 andBitrate:(long long)a2 withOutputSize:(struct CGSize { double x0; double x1; })a3 enableAudio:(BOOL)a4; - (void)dealloc; - (int)finish; - (id).cxx_construct; - (void).cxx_destruct; - (void)cancel; - (int)setupVideoTrack:(long long)a0 withOutputSize:(struct CGSize { double x0; double x1; })a1; - (int)setupAudioTrack; - (void)updateStillPTS:(struct { long long x0; int x1; unsigned int x2; long long x3; })a0; - (int)addLivePhotoInfoBuffer:(struct opaqueCMSampleBuffer { } *)a0; - (int)addPixelBuffer:(struct __CVBuffer { } *)a0 withTime:(struct { long long x0; int x1; unsigned int x2; long long x3; })a1 withAttachment:(id)a2; - (int)appendMetadataTrack; - (int)copyPixelBuffer:(struct __CVBuffer { } *)a0 toPixelBuffer:(struct __CVBuffer **)a1; - (int)dispatchEncoding; - (id)initWithURL:(id)a0 andTrack:(id)a1 andBitrate:(long long)a2 withOutputSize:(struct CGSize { double x0; double x1; })a3 enableAudio:(BOOL)a4; - (int)passthroughMetadataTrackFrom:(id)a0 to:(id)a1; - (struct opaqueCMSampleBuffer { } *)popLivePhotoInfoSample; - (struct opaqueCMSampleBuffer { } *)popSample; - (int)processLivePhotoInfoMetadataTrack; - (int)processStillImageMetadataTrack; - (void)pushLivePhotoInfoSample:(struct opaqueCMSampleBuffer { } *)a0; - (void)pushSample:(struct opaqueCMSampleBuffer { } *)a0; - (int)setupMetadataTrack; @end