mirror of
https://github.com/Swiftgram/Telegram-iOS.git
synced 2025-06-16 05:55:20 +00:00

git-subtree-dir: submodules/LegacyComponents git-subtree-mainline: 608630530451e02e5aec48389d144dbf7a3625b9 git-subtree-split: d5594346161c1b7f203d1e87068bbe77bcaac019
53 lines
1.9 KiB
Objective-C
53 lines
1.9 KiB
Objective-C
#import <SSignalKit/SSignalKit.h>
|
|
|
|
#import <LegacyComponents/TGVideoEditAdjustments.h>
|
|
|
|
@interface TGMediaVideoFileWatcher : NSObject
|
|
{
|
|
NSURL *_fileURL;
|
|
}
|
|
|
|
- (void)setupWithFileURL:(NSURL *)fileURL;
|
|
- (id)fileUpdated:(bool)completed;
|
|
|
|
@end
|
|
|
|
|
|
@interface TGMediaVideoConverter : NSObject
|
|
|
|
+ (SSignal *)convertAVAsset:(AVAsset *)avAsset adjustments:(TGMediaVideoEditAdjustments *)adjustments watcher:(TGMediaVideoFileWatcher *)watcher;
|
|
+ (SSignal *)convertAVAsset:(AVAsset *)avAsset adjustments:(TGMediaVideoEditAdjustments *)adjustments watcher:(TGMediaVideoFileWatcher *)watcher inhibitAudio:(bool)inhibitAudio;
|
|
+ (SSignal *)hashForAVAsset:(AVAsset *)avAsset adjustments:(TGMediaVideoEditAdjustments *)adjustments;
|
|
|
|
+ (NSUInteger)estimatedSizeForPreset:(TGMediaVideoConversionPreset)preset duration:(NSTimeInterval)duration hasAudio:(bool)hasAudio;
|
|
+ (TGMediaVideoConversionPreset)bestAvailablePresetForDimensions:(CGSize)dimensions;
|
|
+ (CGSize)_renderSizeWithCropSize:(CGSize)cropSize;
|
|
|
|
+ (TGMediaVideoConversionPreset)presetFromAdjustments:(TGMediaVideoEditAdjustments *)adjustments;
|
|
+ (CGSize)dimensionsFor:(CGSize)dimensions adjustments:(TGMediaVideoEditAdjustments *)adjustments preset:(TGMediaVideoConversionPreset)preset;
|
|
|
|
@end
|
|
|
|
|
|
@interface TGMediaVideoConversionResult : NSObject
|
|
|
|
@property (nonatomic, readonly) NSURL *fileURL;
|
|
@property (nonatomic, readonly) NSUInteger fileSize;
|
|
@property (nonatomic, readonly) NSTimeInterval duration;
|
|
@property (nonatomic, readonly) CGSize dimensions;
|
|
@property (nonatomic, readonly) UIImage *coverImage;
|
|
@property (nonatomic, readonly) id liveUploadData;
|
|
|
|
- (NSDictionary *)dictionary;
|
|
|
|
@end
|
|
|
|
|
|
@interface TGMediaVideoConversionPresetSettings : NSObject
|
|
|
|
+ (CGSize)maximumSizeForPreset:(TGMediaVideoConversionPreset)preset;
|
|
+ (NSDictionary *)videoSettingsForPreset:(TGMediaVideoConversionPreset)preset dimensions:(CGSize)dimensions;
|
|
+ (NSDictionary *)audioSettingsForPreset:(TGMediaVideoConversionPreset)preset;
|
|
|
|
@end
|