2014-08-22 06:30:58 +00:00
|
|
|
/* HBAudioSettings.h $
|
|
|
|
|
|
|
|
This file is part of the HandBrake source code.
|
|
|
|
Homepage: <http://handbrake.fr/>.
|
|
|
|
It may be used under the terms of the GNU General Public License. */
|
2014-08-04 07:12:12 +00:00
|
|
|
|
|
|
|
#import <Foundation/Foundation.h>
|
2020-06-27 14:13:12 +02:00
|
|
|
#import <HandBrakeKit/HBPresetCoding.h>
|
2014-08-04 07:12:12 +00:00
|
|
|
|
2015-06-01 17:21:48 +00:00
|
|
|
NS_ASSUME_NONNULL_BEGIN
|
|
|
|
|
2015-10-24 10:50:27 +02:00
|
|
|
@class HBAudioTrackPreset;
|
|
|
|
|
2014-08-04 07:12:12 +00:00
|
|
|
typedef NS_ENUM(NSUInteger, HBAudioTrackSelectionBehavior) {
|
|
|
|
HBAudioTrackSelectionBehaviorNone,
|
|
|
|
HBAudioTrackSelectionBehaviorFirst,
|
|
|
|
HBAudioTrackSelectionBehaviorAll,
|
|
|
|
};
|
|
|
|
|
2025-06-03 08:48:59 +02:00
|
|
|
typedef NS_ENUM(NSUInteger, HBAudioTrackAutomaticNamingBehavior) {
|
|
|
|
HBAudioTrackAutomaticNamingBehaviorNone,
|
|
|
|
HBAudioTrackAutomaticNamingBehaviorUnnamed,
|
|
|
|
HBAudioTrackAutomaticNamingBehaviorAll,
|
|
|
|
};
|
|
|
|
|
2014-08-04 07:12:12 +00:00
|
|
|
/**
|
|
|
|
* HBAudioSettings
|
2017-12-04 08:28:29 -05:00
|
|
|
* Stores the audio defaults (selection behavior) settings.
|
2014-08-04 07:12:12 +00:00
|
|
|
*/
|
2015-04-22 16:49:30 +00:00
|
|
|
@interface HBAudioDefaults : NSObject <NSSecureCoding, NSCopying, HBPresetCoding>
|
2014-08-04 07:12:12 +00:00
|
|
|
|
|
|
|
@property (nonatomic, readwrite) HBAudioTrackSelectionBehavior trackSelectionBehavior;
|
2015-10-24 10:50:27 +02:00
|
|
|
@property (nonatomic, readwrite, strong) NSMutableArray<NSString *> *trackSelectionLanguages;
|
|
|
|
@property (nonatomic, readwrite, strong) NSMutableArray<HBAudioTrackPreset *> *tracksArray;
|
2014-08-04 07:12:12 +00:00
|
|
|
|
2015-01-30 08:00:02 +00:00
|
|
|
/**
|
|
|
|
* Adds a new track preset.
|
|
|
|
*/
|
|
|
|
- (void)addTrack;
|
|
|
|
|
2014-08-04 07:12:12 +00:00
|
|
|
@property(nonatomic, readwrite) BOOL allowAACPassthru;
|
|
|
|
@property(nonatomic, readwrite) BOOL allowAC3Passthru;
|
2015-04-18 11:28:25 +00:00
|
|
|
@property(nonatomic, readwrite) BOOL allowEAC3Passthru;
|
2014-08-04 07:12:12 +00:00
|
|
|
@property(nonatomic, readwrite) BOOL allowDTSHDPassthru;
|
|
|
|
@property(nonatomic, readwrite) BOOL allowDTSPassthru;
|
2020-09-01 21:47:41 +02:00
|
|
|
@property(nonatomic, readwrite) BOOL allowMP2Passthru;
|
2014-08-04 07:12:12 +00:00
|
|
|
@property(nonatomic, readwrite) BOOL allowMP3Passthru;
|
2024-10-21 14:15:56 +02:00
|
|
|
@property(nonatomic, readwrite) BOOL allowVorbisPassthru;
|
2022-06-07 20:03:33 +02:00
|
|
|
@property(nonatomic, readwrite) BOOL allowOpusPassthru;
|
2015-04-18 11:28:25 +00:00
|
|
|
@property(nonatomic, readwrite) BOOL allowTrueHDPassthru;
|
2024-10-21 14:15:56 +02:00
|
|
|
@property(nonatomic, readwrite) BOOL allowALACPassthru;
|
2015-04-18 11:28:25 +00:00
|
|
|
@property(nonatomic, readwrite) BOOL allowFLACPassthru;
|
2014-08-04 07:12:12 +00:00
|
|
|
|
|
|
|
@property(nonatomic, readwrite) int encoderFallback;
|
|
|
|
@property(nonatomic, readwrite) BOOL secondaryEncoderMode;
|
|
|
|
|
2015-10-28 08:11:53 +01:00
|
|
|
@property(nonatomic, readonly) NSArray<NSString *> *audioEncoderFallbacks;
|
2014-08-04 07:12:12 +00:00
|
|
|
|
2025-06-03 08:48:59 +02:00
|
|
|
@property(nonatomic, readwrite) BOOL passthruName;
|
|
|
|
@property(nonatomic, readwrite) HBAudioTrackAutomaticNamingBehavior automaticNamingBehavior;
|
|
|
|
|
2014-08-04 07:12:12 +00:00
|
|
|
- (void)validateEncoderFallbackForVideoContainer:(int)container;
|
|
|
|
|
2015-10-22 16:22:46 +02:00
|
|
|
@property (nonatomic, readwrite, weak, nullable) NSUndoManager *undo;
|
|
|
|
|
2014-08-04 07:12:12 +00:00
|
|
|
@end
|
2015-06-01 17:21:48 +00:00
|
|
|
|
|
|
|
NS_ASSUME_NONNULL_END
|