#import <Foundation/Foundation.h>
#import "HBPresetCoding.h"
-@class HBJob;
@class HBAudioTrack;
@class HBAudioDefaults;
@interface HBAudio : NSObject <NSSecureCoding, NSCopying>
-- (instancetype)initWithJob:(HBJob *)job;
-
-@property (nonatomic, readwrite, weak) HBJob *job;
-
@property (nonatomic, readonly) NSMutableArray<NSDictionary *> *sourceTracks;
@property (nonatomic, readonly) NSMutableArray<HBAudioTrack *> *tracks;
- (BOOL)anyCodecMatches:(int)codec;
-@property (nonatomic, readwrite) int container;
@property (nonatomic, readwrite, weak, nullable) NSUndoManager *undo;
@end
NSString *HBAudioChangedNotification = @"HBAudioChangedNotification";
@interface HBAudio () <HBAudioTrackDataSource, HBAudioTrackDelegate>
+
+@property (nonatomic, readwrite, weak) HBJob *job;
+@property (nonatomic, readwrite) int container;
+
@end
@implementation HBAudio
@interface HBVideo (Private)
+- (instancetype)initWithJob:(HBJob *)job;
+
+@property (nonatomic, readwrite, weak) HBJob *job;
+
+- (void)containerChanged;
- (void)applyPreset:(HBPreset *)preset jobSettings:(NSDictionary *)settings;
@end
@interface HBPicture (Private)
+- (instancetype)initWithTitle:(HBTitle *)title;
+
- (void)applyPreset:(HBPreset *)preset jobSettings:(NSDictionary *)settings;
@end
@interface HBAudio (Private)
+- (instancetype)initWithJob:(HBJob *)job;
+
+@property (nonatomic, readwrite, weak) HBJob *job;
+@property (nonatomic, readwrite) int container;
+
- (void)applyPreset:(HBPreset *)preset jobSettings:(NSDictionary *)settings;
@end
@interface HBSubtitles (Private)
+- (instancetype)initWithJob:(HBJob *)job;
+
+@property (nonatomic, readwrite, weak) HBJob *job;
+@property (nonatomic, readwrite) int container;
+
- (void)applyPreset:(HBPreset *)preset jobSettings:(NSDictionary *)settings;
@end
*/
@interface HBPicture : NSObject <NSSecureCoding, NSCopying>
-- (instancetype)initWithTitle:(HBTitle *)title;
-
@property (nonatomic, readwrite) int width;
@property (nonatomic, readwrite) int height;
NS_ASSUME_NONNULL_BEGIN
-@class HBJob;
@class HBSubtitlesTrack;
@class HBSubtitlesDefaults;
@interface HBSubtitles : NSObject <NSSecureCoding, NSCopying>
-- (instancetype)initWithJob:(HBJob *)job;
-
-@property (nonatomic, readwrite, weak) HBJob *job;
-
- (void)addAllTracks;
- (void)removeAll;
- (void)reloadDefaults;
@property (nonatomic, readwrite, strong) HBSubtitlesDefaults *defaults;
-/**
- * For internal use
- */
-@property (nonatomic, readwrite) int container;
@property (nonatomic, readwrite, weak, nullable) NSUndoManager *undo;
@end
@interface HBSubtitles () <HBTrackDataSource, HBTrackDelegate>
+@property (nonatomic, readwrite, weak) HBJob *job;
+@property (nonatomic, readwrite) int container;
+
/// Used to aovid circular dependecy validation.
@property (nonatomic, readwrite) BOOL validating;
self = [super init];
if (self)
{
- _job = job;
+ job = job;
_container = HB_MUX_MP4;
_sourceTracks = [job.title.subtitlesTracks mutableCopy];
It may be used under the terms of the GNU General Public License. */
#import "HBVideo+UIAdditions.h"
-#import "HBJob.h"
+#import "HBJob+Private.h"
#include "hb.h"
@implementation HBVideo (UIAdditions)
*/
@interface HBVideo : NSObject <NSSecureCoding, NSCopying>
-- (instancetype)initWithJob:(HBJob *)job;
-
-@property (nonatomic, readwrite, weak) HBJob *job;
-
-- (void)containerChanged;
-
@property (nonatomic, readwrite) int encoder;
@property (nonatomic, readwrite) HBVideoQualityType qualityType;
@interface HBVideo ()
+@property (nonatomic, readwrite, weak) HBJob *job;
+
@property (nonatomic, readwrite) double qualityMinValue;
@property (nonatomic, readwrite) double qualityMaxValue;