diff options
Diffstat (limited to 'macosx/HBPresets.m')
-rw-r--r-- | macosx/HBPresets.m | 581 |
1 files changed, 248 insertions, 333 deletions
diff --git a/macosx/HBPresets.m b/macosx/HBPresets.m index 893112bd4..a1fac57cc 100644 --- a/macosx/HBPresets.m +++ b/macosx/HBPresets.m @@ -18,218 +18,210 @@ { /* We receive the user presets array of dictionaries from controller.mm */ /* We re-create new built in presets programmatically and add them to our presets array */ - [UserPresets addObject:[self createAnimationPreset]]; - [UserPresets addObject:[self createAppleTVPreset]]; - [UserPresets addObject:[self createBedlamPreset]]; - [UserPresets addObject:[self createBlindPreset]]; - [UserPresets addObject:[self createBrokePreset]]; - [UserPresets addObject:[self createClassicPreset]]; - [UserPresets addObject:[self createCRFPreset]]; - [UserPresets addObject:[self createDeuxSixQuatrePreset]]; - [UserPresets addObject:[self createFilmPreset]]; - [UserPresets addObject:[self createiPhonePreset]]; - [UserPresets addObject:[self createIpodHighPreset]]; - [UserPresets addObject:[self createIpodLowPreset]]; - [UserPresets addObject:[self createNormalPreset]]; - [UserPresets addObject:[self createPSPPreset]]; - [UserPresets addObject:[self createPSThreePreset]]; - [UserPresets addObject:[self createQuickTimePreset]]; - [UserPresets addObject:[self createTelevisionPreset]]; - [UserPresets addObject:[self create360Preset]]; + + /* Note: the built in presets will *not* sort themselves alphabetically, so they will + * appear in the order you create them + */ + /* Built in preset folders at the root of the hierarchy */ + [UserPresets addObject:[self createApplePresetFolder]]; + [UserPresets addObject:[self createBasicPresetFolder]]; + [UserPresets addObject:[self createHiProfilePresetFolder]]; + [UserPresets addObject:[self createGamingConsolesPresetFolder]]; + + /* Independent presets at the root hierarchy level would go here */ + /* return the newly regenerated preset array back to Controller.mm */ return UserPresets; } #pragma mark - -#pragma mark Built In Preset Definitions - -/* These NSDictionary Buit-In Preset definitions contain all of the settings for one built in preset */ -/* Note: For now, you can no longer have reference to any main window fields in your key values */ +#pragma mark Built In Preset Folder Definitions -- (NSDictionary *)create360Preset +- (NSDictionary *)createApplePresetFolder { NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; +/*Set whether or not this is a folder, 1 is bool for folder*/ + [preset setObject:[NSNumber numberWithBool: YES] forKey:@"Folder"]; + /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"Xbox 360" forKey:@"PresetName"]; + [preset setObject:@"Apple" forKey:@"PresetName"]; /*Set whether or not this is a user preset where 0 is factory, 1 is user*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; /*Set whether or not this is default, at creation set to 0*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Default"]; - - /*Get the whether or not to apply pic settings in the AddPresetPanel*/ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; - - /* Get the New Preset Description from the field in the AddPresetPanel */ - [preset setObject:@"HandBrake's settings for the Microsoft Xbox 360." forKey:@"PresetDescription"]; - - /* File Format */ - [preset setObject:@"MP4 file" forKey:@"FileFormat"]; - - /* Chapter Markers*/ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"ChapterMarkers"]; - - /* Video encoder */ - [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; - /* x264 Option String */ - [preset setObject:@"level=40:ref=2:mixed-refs:bframes=3:weightb:subme=7:direct=auto:b-pyramid:me=umh:analyse=all:no-fast-pskip:filter=-2,-1" forKey:@"x264Option"]; + /* Lets initalize the child array of dictionaries for folders, this + is an array of dictionaries much like the root level of presets and + may contain folders and presets alike, etc.*/ + NSMutableArray *childrenArray = [[NSMutableArray alloc] init]; + /* we actually call the methods for the nests here */ + [childrenArray addObject:[self createAppleUniversalPreset]]; + [childrenArray addObject:[self createAppleTVPreset]]; + [childrenArray addObject:[self createAppleIpodFamilyPresetFolder]]; + [childrenArray addObject:[self createQuickTimePreset]]; + [preset setObject:[NSMutableArray arrayWithArray: childrenArray] forKey:@"ChildrenArray"]; + + [childrenArray autorelease]; - /* Video quality */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoQualityType"]; - [preset setObject:@"700" forKey:@"VideoTargetSize"]; - [preset setObject:@"2000" forKey:@"VideoAvgBitrate"]; - [preset setObject:[NSNumber numberWithFloat:0.6471] forKey:@"VideoQualitySlider"]; - /* Video framerate */ - [preset setObject:@"Same as source" forKey:@"VideoFramerate"]; - /* GrayScale */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoGrayScale"]; + [preset autorelease]; + return preset; +} - /* 2 Pass Encoding */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoTwoPass"]; +- (NSDictionary *)createAppleIpodFamilyPresetFolder +{ + NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; +/*Set whether or not this is a folder, 1 is bool for folder*/ + [preset setObject:[NSNumber numberWithBool: YES] forKey:@"Folder"]; - /*Picture Settings*/ - /* Use Max Picture settings for whatever the dvd is.*/ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesMaxPictureSettings"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureWidth"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureHeight"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureKeepRatio"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PicturePAR"]; - /* Explicitly set the filters for built-in presets */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureFilters"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDeinterlace"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDenoise"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"VFR"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDeblock"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDetelecine"]; + /* Get the New Preset Name from the field in the AddPresetPanel */ + [preset setObject:@"iPod & iPhone" forKey:@"PresetName"]; - /* Set crop settings here */ - /* The Auto Crop Matrix in the Picture Window autodetects differences in crop settings */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureTopCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureBottomCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureLeftCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureRightCrop"]; + /*Set whether or not this is a user preset where 0 is factory, 1 is user*/ + [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; - /* Audio - Is done on a track by track basis, ONLY specifiy the tracks we want set as any track - * not listed will be set to "None" and not encoded */ + /*Set whether or not this is default, at creation set to 0*/ + [preset setObject:[NSNumber numberWithInt:0] forKey:@"Default"]; - /* Track 1 */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"Audio1Track"]; - [preset setObject:@"AAC (faac)" forKey:@"Audio1Encoder"]; - [preset setObject:@"Dolby Pro Logic II" forKey:@"Audio1Mixdown"]; - [preset setObject:@"48" forKey:@"Audio1Samplerate"]; - [preset setObject:@"160" forKey:@"Audio1Bitrate"]; - [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio1TrackDRCSlider"]; + /* Lets initalize the child array of dictionaries for folders, this + is an array of dictionaries much like the root level of presets and + may contain folders and presets alike, etc.*/ + NSMutableArray *childrenArray = [[NSMutableArray alloc] init]; + /* we actually call the methods for the nests here */ + [childrenArray addObject:[self createIpodLowPreset]]; + [childrenArray addObject:[self createiPhonePreset]]; + [childrenArray addObject:[self createIpodHighPreset]]; - /* Subtitles*/ - [preset setObject:@"None" forKey:@"Subtitles"]; + [preset setObject:[NSMutableArray arrayWithArray: childrenArray] forKey:@"ChildrenArray"]; + + [childrenArray autorelease]; + + [preset autorelease]; return preset; } -- (NSDictionary *)createAnimationPreset +- (NSDictionary *)createGamingConsolesPresetFolder { NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; +/*Set whether or not this is a folder, 1 is bool for folder*/ + [preset setObject:[NSNumber numberWithBool: YES] forKey:@"Folder"]; + /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"Animation" forKey:@"PresetName"]; + [preset setObject:@"Gaming Consoles" forKey:@"PresetName"]; - /*Set whether or not this is a user preset or factory 0 is factory, 1 is user*/ + /*Set whether or not this is a user preset where 0 is factory, 1 is user*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; /*Set whether or not this is default, at creation set to 0*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Default"]; + + /* Lets initalize the child array of dictionaries for folders, this + is an array of dictionaries much like the root level of presets and + may contain folders and presets alike, etc.*/ + NSMutableArray *childrenArray = [[NSMutableArray alloc] init]; + /* we actually call the methods for the nests here */ + [childrenArray addObject:[self createPSPPreset]]; + [childrenArray addObject:[self createPSThreePreset]]; + [childrenArray addObject:[self create360Preset]]; + [preset setObject:[NSMutableArray arrayWithArray: childrenArray] forKey:@"ChildrenArray"]; + + [childrenArray autorelease]; - /*Get the whether or not to apply pic settings in the AddPresetPanel*/ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; - /* Get the New Preset Description from the field in the AddPresetPanel */ - [preset setObject:@"HandBrake's settings for cartoons, anime, and CGI." forKey:@"PresetDescription"]; - /* File Format */ - [preset setObject:@"MKV file" forKey:@"FileFormat"]; + [preset autorelease]; + return preset; +} - /* Chapter Markers*/ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"ChapterMarkers"]; - /* Video encoder */ - [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; +- (NSDictionary *)createBasicPresetFolder +{ + NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; +/*Set whether or not this is a folder, 1 is bool for folder*/ + [preset setObject:[NSNumber numberWithBool: YES] forKey:@"Folder"]; - /* x264 Option String */ - [preset setObject:@"ref=5:mixed-refs:bframes=6:subme=7:weightb:direct=auto:b-pyramid:me=umh:analyse=all:8x8dct:trellis=1:nr=150:no-fast-pskip:filter=2,2" forKey:@"x264Option"]; - /* Video quality */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoQualityType"]; - [preset setObject:@"700" forKey:@"VideoTargetSize"]; - [preset setObject:@"1000" forKey:@"VideoAvgBitrate"]; - [preset setObject:[NSNumber numberWithFloat:0.6471] forKey:@"VideoQualitySlider"]; + /* Get the New Preset Name from the field in the AddPresetPanel */ + [preset setObject:@"Basic" forKey:@"PresetName"]; - /* Video framerate */ - [preset setObject:@"Same as source" forKey:@"VideoFramerate"]; + /*Set whether or not this is a user preset where 0 is factory, 1 is user*/ + [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; - /* GrayScale */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoGrayScale"]; + /*Set whether or not this is default, at creation set to 0*/ + [preset setObject:[NSNumber numberWithInt:0] forKey:@"Default"]; + + /* Lets initalize the child array of dictionaries for folders, this + is an array of dictionaries much like the root level of presets and + may contain folders and presets alike, etc.*/ + NSMutableArray *childrenArray = [[NSMutableArray alloc] init]; + /* we actually call the methods for the nests here */ + [childrenArray addObject:[self createNormalPreset]]; + [childrenArray addObject:[self createClassicPreset]]; + [preset setObject:[NSMutableArray arrayWithArray: childrenArray] forKey:@"ChildrenArray"]; + + [childrenArray autorelease]; - /* 2 Pass Encoding */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoTwoPass"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoTurboTwoPass"]; - /*Picture Settings*/ - /* Basic Picture Settings */ - /* Use Max Picture settings for whatever the dvd is.*/ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesMaxPictureSettings"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureAutoCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureWidth"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureHeight"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureKeepRatio"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PicturePAR"]; - /* Filters. For animation, use slower deinterlacing. */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureFilters"]; - [preset setObject:[NSNumber numberWithInt:3] forKey:@"PictureDeinterlace"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"VFR"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDenoise"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDeblock"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDetelecine"]; + [preset autorelease]; + return preset; +} - /* Set crop settings here */ - /* The Auto Crop Matrix in the Picture Window autodetects differences in crop settings */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureTopCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureBottomCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureLeftCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureRightCrop"]; +- (NSDictionary *)createHiProfilePresetFolder +{ + NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; +/*Set whether or not this is a folder, 1 is bool for folder*/ + [preset setObject:[NSNumber numberWithBool: YES] forKey:@"Folder"]; - /* Audio - Is done on a track by track basis, ONLY specifiy the tracks we want set as any track - * not listed will be set to "None" and not encoded */ + + /* Get the New Preset Name from the field in the AddPresetPanel */ + [preset setObject:@"High Profile" forKey:@"PresetName"]; + + /*Set whether or not this is a user preset where 0 is factory, 1 is user*/ + [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; + + /*Set whether or not this is default, at creation set to 0*/ + [preset setObject:[NSNumber numberWithInt:0] forKey:@"Default"]; - /* Track 1 */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"Audio1Track"]; - [preset setObject:@"AAC (faac)" forKey:@"Audio1Encoder"]; - [preset setObject:@"Dolby Pro Logic II" forKey:@"Audio1Mixdown"]; - [preset setObject:@"Auto" forKey:@"Audio1Samplerate"]; - [preset setObject:@"160" forKey:@"Audio1Bitrate"]; - [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio1TrackDRCSlider"]; + /* Lets initalize the child array of dictionaries for folders, this + is an array of dictionaries much like the root level of presets and + may contain folders and presets alike, etc.*/ + NSMutableArray *childrenArray = [[NSMutableArray alloc] init]; + /* we actually call the methods for the nests here */ + [childrenArray addObject:[self createAnimationPreset]]; + [childrenArray addObject:[self createCRFPreset]]; + [childrenArray addObject:[self createFilmPreset]]; + [childrenArray addObject:[self createTelevisionPreset]]; + [preset setObject:[NSMutableArray arrayWithArray: childrenArray] forKey:@"ChildrenArray"]; - /* Subtitles*/ - [preset setObject:@"None" forKey:@"Subtitles"]; - + [childrenArray autorelease]; [preset autorelease]; return preset; } -- (NSDictionary *)createAppleTVPreset + +#pragma mark - + +#pragma mark Built In Preset Definitions + +/* These NSDictionary Buit-In Preset definitions contain all of the settings for one built in preset */ +/* Note: For now, you can no longer have reference to any main window fields in your key values */ + +- (NSDictionary *)create360Preset { NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"AppleTV" forKey:@"PresetName"]; + [preset setObject:@"Xbox 360" forKey:@"PresetName"]; /*Set whether or not this is a user preset where 0 is factory, 1 is user*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; @@ -241,27 +233,24 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; /* Get the New Preset Description from the field in the AddPresetPanel */ - [preset setObject:@"HandBrake's settings for the AppleTV, including Dolby Digital 5.1 AC3 sound. Provides a good balance between quality and file size, and optimizes performance." forKey:@"PresetDescription"]; + [preset setObject:@"HandBrake's settings for the Microsoft Xbox 360." forKey:@"PresetDescription"]; /* File Format */ [preset setObject:@"MP4 file" forKey:@"FileFormat"]; - /* 64-bit MP4 file */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"Mp4LargeFile"]; - /* Chapter Markers*/ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"ChapterMarkers"]; + [preset setObject:[NSNumber numberWithInt:0] forKey:@"ChapterMarkers"]; /* Video encoder */ [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; - - /* x264 Option String (We can use this to tweak the appleTV output)*/ - [preset setObject:@"bframes=3:ref=1:me=umh:no-fast-pskip=1:trellis=1:cabac=0" forKey:@"x264Option"]; + + /* x264 Option String */ + [preset setObject:@"level=40:ref=2:mixed-refs:bframes=3:weightb:subme=7:direct=auto:b-pyramid:me=umh:analyse=all:no-fast-pskip:filter=-2,-1" forKey:@"x264Option"]; /* Video quality */ [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoQualityType"]; [preset setObject:@"700" forKey:@"VideoTargetSize"]; - [preset setObject:@"2500" forKey:@"VideoAvgBitrate"]; + [preset setObject:@"2000" forKey:@"VideoAvgBitrate"]; [preset setObject:[NSNumber numberWithFloat:0.6471] forKey:@"VideoQualitySlider"]; /* Video framerate */ @@ -273,7 +262,7 @@ /* 2 Pass Encoding */ [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoTwoPass"]; - /* Basic Picture Settings */ + /*Picture Settings*/ /* Use Max Picture settings for whatever the dvd is.*/ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesMaxPictureSettings"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureWidth"]; @@ -306,18 +295,7 @@ [preset setObject:@"48" forKey:@"Audio1Samplerate"]; [preset setObject:@"160" forKey:@"Audio1Bitrate"]; [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio1TrackDRCSlider"]; - - /* Track 2 */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"Audio2Track"]; - [preset setObject:@"AC3 Passthru" forKey:@"Audio2Encoder"]; - [preset setObject:@"AC3 Passthru" forKey:@"Audio2Mixdown"]; - [preset setObject:@"Auto" forKey:@"Audio2Samplerate"]; - /* Note: we ignore specified bitrate for AC3 Passthru in libhb and use - * the sources bitrate, however we need to initially set the value to something so - * the macgui doesnt barf, so 160 seems as good as anything */ - [preset setObject:@"160" forKey:@"Audio2Bitrate"]; - [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio2TrackDRCSlider"]; - + /* Subtitles*/ [preset setObject:@"None" forKey:@"Subtitles"]; @@ -325,12 +303,12 @@ return preset; } -- (NSDictionary *)createBedlamPreset +- (NSDictionary *)createAnimationPreset { NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"Bedlam" forKey:@"PresetName"]; + [preset setObject:@"Animation" forKey:@"PresetName"]; /*Set whether or not this is a user preset or factory 0 is factory, 1 is user*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; @@ -342,7 +320,7 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; /* Get the New Preset Description from the field in the AddPresetPanel */ - [preset setObject:@"HandBrake's settings maxed out for slowest encoding and highest quality. Use at your own risk. So slow it's not just insane...it's a trip to the looney bin." forKey:@"PresetDescription"]; + [preset setObject:@"HandBrake's settings for cartoons, anime, and CGI." forKey:@"PresetDescription"]; /* File Format */ [preset setObject:@"MKV file" forKey:@"FileFormat"]; @@ -354,12 +332,12 @@ [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; /* x264 Option String */ - [preset setObject:@"ref=16:mixed-refs:bframes=16:weightb:direct=auto:b-pyramid:me=esa:subme=9:me-range=64:analyse=all:8x8dct:trellis=1:no-fast-pskip:no-dct-decimate:filter=-2,-1" forKey:@"x264Option"]; + [preset setObject:@"ref=5:mixed-refs:bframes=6:weightb:direct=auto:b-pyramid:me=umh:analyse=all:8x8dct:trellis=1:nr=150:no-fast-pskip:filter=2,2:psy-rd=1,1:subme=9" forKey:@"x264Option"]; /* Video quality */ [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoQualityType"]; [preset setObject:@"700" forKey:@"VideoTargetSize"]; - [preset setObject:@"1800" forKey:@"VideoAvgBitrate"]; + [preset setObject:@"1000" forKey:@"VideoAvgBitrate"]; [preset setObject:[NSNumber numberWithFloat:0.6471] forKey:@"VideoQualitySlider"]; /* Video framerate */ @@ -373,6 +351,7 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoTurboTwoPass"]; /*Picture Settings*/ + /* Basic Picture Settings */ /* Use Max Picture settings for whatever the dvd is.*/ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesMaxPictureSettings"]; [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureAutoCrop"]; @@ -381,13 +360,14 @@ [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureKeepRatio"]; [preset setObject:[NSNumber numberWithInt:1] forKey:@"PicturePAR"]; - /* Explicitly set the filters for built-in presets */ + /* Filters. For animation, use slower deinterlacing. */ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureFilters"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDeinterlace"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDenoise"]; + [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureDecomb"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"VFR"]; + [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDenoise"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDeblock"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDetelecine"]; + [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureDetelecine"]; /* Set crop settings here */ /* The Auto Crop Matrix in the Picture Window autodetects differences in crop settings */ @@ -401,15 +381,12 @@ /* Track 1 */ [preset setObject:[NSNumber numberWithInt:1] forKey:@"Audio1Track"]; - [preset setObject:@"AC3 Passthru" forKey:@"Audio1Encoder"]; - [preset setObject:@"AC3 Passthru" forKey:@"Audio1Mixdown"]; + [preset setObject:@"AAC (faac)" forKey:@"Audio1Encoder"]; + [preset setObject:@"Dolby Pro Logic II" forKey:@"Audio1Mixdown"]; [preset setObject:@"Auto" forKey:@"Audio1Samplerate"]; - /* Note: we ignore specified bitrate for AC3 Passthru in libhb and use - * the sources bitrate, however we need to initially set the value to something so - * the macgui doesnt barf, so 160 seems as good as anything */ [preset setObject:@"160" forKey:@"Audio1Bitrate"]; [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio1TrackDRCSlider"]; - + /* Subtitles*/ [preset setObject:@"None" forKey:@"Subtitles"]; @@ -417,16 +394,17 @@ return preset; } -- (NSDictionary *)createBlindPreset +- (NSDictionary *)createAppleTVPreset { NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"Blind" forKey:@"PresetName"]; + [preset setObject:@"AppleTV" forKey:@"PresetName"]; - /*Set whether or not this is a user preset or factory 0 is factory, 1 is user*/ + /*Set whether or not this is a user preset where 0 is factory, 1 is user*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; - + /*Set whether or not this is a folder, 1 is bool for folder*/ + [preset setObject:[NSNumber numberWithBool: NO] forKey:@"Folder"]; /*Set whether or not this is default, at creation set to 0*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Default"]; @@ -434,25 +412,28 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; /* Get the New Preset Description from the field in the AddPresetPanel */ - [preset setObject:@"HandBrake's preset for impatient people who don't care about picture quality." forKey:@"PresetDescription"]; + [preset setObject:@"HandBrake's settings for the AppleTV, including Dolby Digital 5.1 AC3 sound. Provides a good balance between quality and file size, and optimizes performance." forKey:@"PresetDescription"]; /* File Format */ [preset setObject:@"MP4 file" forKey:@"FileFormat"]; + /* 64-bit MP4 file */ + [preset setObject:[NSNumber numberWithInt:1] forKey:@"Mp4LargeFile"]; + /* Chapter Markers*/ [preset setObject:[NSNumber numberWithInt:1] forKey:@"ChapterMarkers"]; /* Video encoder */ - [preset setObject:@"MPEG-4 (FFmpeg)" forKey:@"VideoEncoder"]; + [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; - /* x264 Option String */ - [preset setObject:@"" forKey:@"x264Option"]; + /* x264 Option String (We can use this to tweak the appleTV output)*/ + [preset setObject:@"level=30:cabac=0:ref=3:mixed-refs=1:bframes=6:weightb=1:direct=auto:no-fast-pskip=1:me=umh:subq=9:analyse=all" forKey:@"x264Option"]; /* Video quality */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoQualityType"]; + [preset setObject:[NSNumber numberWithInt:2] forKey:@"VideoQualityType"]; [preset setObject:@"700" forKey:@"VideoTargetSize"]; - [preset setObject:@"512" forKey:@"VideoAvgBitrate"]; - [preset setObject:[NSNumber numberWithFloat:0.6471] forKey:@"VideoQualitySlider"]; + [preset setObject:@"2500" forKey:@"VideoAvgBitrate"]; + [preset setObject:[NSNumber numberWithFloat:0.59] forKey:@"VideoQualitySlider"]; /* Video framerate */ [preset setObject:@"Same as source" forKey:@"VideoFramerate"]; @@ -462,16 +443,14 @@ /* 2 Pass Encoding */ [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoTwoPass"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoTurboTwoPass"]; - /*Picture Settings*/ - /* Use a width of 512 to save on space for Blind */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"UsesMaxPictureSettings"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureAutoCrop"]; - [preset setObject:[NSNumber numberWithInt:512] forKey:@"PictureWidth"]; + /* Basic Picture Settings */ + /* Use Max Picture settings for whatever the dvd is.*/ + [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; + [preset setObject:[NSNumber numberWithInt:960] forKey:@"PictureWidth"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureHeight"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureKeepRatio"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PicturePAR"]; + [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureKeepRatio"]; + [preset setObject:[NSNumber numberWithInt:2] forKey:@"PicturePAR"]; /* Explicitly set the filters for built-in presets */ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureFilters"]; @@ -483,6 +462,7 @@ /* Set crop settings here */ /* The Auto Crop Matrix in the Picture Window autodetects differences in crop settings */ + [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureAutoCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureTopCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureBottomCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureLeftCrop"]; @@ -495,10 +475,21 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"Audio1Track"]; [preset setObject:@"AAC (faac)" forKey:@"Audio1Encoder"]; [preset setObject:@"Dolby Pro Logic II" forKey:@"Audio1Mixdown"]; - [preset setObject:@"Auto" forKey:@"Audio1Samplerate"]; - [preset setObject:@"128" forKey:@"Audio1Bitrate"]; + [preset setObject:@"48" forKey:@"Audio1Samplerate"]; + [preset setObject:@"160" forKey:@"Audio1Bitrate"]; [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio1TrackDRCSlider"]; + /* Track 2 */ + [preset setObject:[NSNumber numberWithInt:1] forKey:@"Audio2Track"]; + [preset setObject:@"AC3 Passthru" forKey:@"Audio2Encoder"]; + [preset setObject:@"AC3 Passthru" forKey:@"Audio2Mixdown"]; + [preset setObject:@"Auto" forKey:@"Audio2Samplerate"]; + /* Note: we ignore specified bitrate for AC3 Passthru in libhb and use + * the sources bitrate, however we need to initially set the value to something so + * the macgui doesnt barf, so 160 seems as good as anything */ + [preset setObject:@"160" forKey:@"Audio2Bitrate"]; + [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio2TrackDRCSlider"]; + /* Subtitles*/ [preset setObject:@"None" forKey:@"Subtitles"]; @@ -506,16 +497,17 @@ return preset; } -- (NSDictionary *)createBrokePreset +- (NSDictionary *)createAppleUniversalPreset { NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"Broke" forKey:@"PresetName"]; + [preset setObject:@"Universal" forKey:@"PresetName"]; - /*Set whether or not this is a user preset or factory 0 is factory, 1 is user*/ + /*Set whether or not this is a user preset where 0 is factory, 1 is user*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; - + /*Set whether or not this is a folder, 1 is bool for folder*/ + [preset setObject:[NSNumber numberWithBool: NO] forKey:@"Folder"]; /*Set whether or not this is default, at creation set to 0*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Default"]; @@ -523,25 +515,28 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; /* Get the New Preset Description from the field in the AddPresetPanel */ - [preset setObject:@"HandBrake's preset for people without a lot of money to waste on hard drives. Tries to maximize quality for burning to CDs, so you can party like it's 1999." forKey:@"PresetDescription"]; + [preset setObject:@"HandBrake's universally compatible, full resolution settings for all current Apple devices: iPod, iPhone, AppleTV, and Macs" forKey:@"PresetDescription"]; /* File Format */ [preset setObject:@"MP4 file" forKey:@"FileFormat"]; + /* 64-bit MP4 file */ + [preset setObject:[NSNumber numberWithInt:1] forKey:@"Mp4LargeFile"]; + /* Chapter Markers*/ [preset setObject:[NSNumber numberWithInt:1] forKey:@"ChapterMarkers"]; /* Video encoder */ [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; - /* x264 Option String */ - [preset setObject:@"ref=3:mixed-refs:bframes=16:weightb:b-pyramid:direct=auto:subme=7:me=umh:trellis=1:analyse=all:8x8dct:no-fast-pskip" forKey:@"x264Option"]; + /* x264 Option String (We can use this to tweak the appleTV output)*/ + [preset setObject:@"level=30:cabac=0:ref=3:mixed-refs=1:analyse=all:me=umh:no-fast-pskip=1:subme=8" forKey:@"x264Option"]; /* Video quality */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoQualityType"]; - [preset setObject:@"695" forKey:@"VideoTargetSize"]; - [preset setObject:@"1600" forKey:@"VideoAvgBitrate"]; - [preset setObject:[NSNumber numberWithFloat:0.6471] forKey:@"VideoQualitySlider"]; + [preset setObject:[NSNumber numberWithInt:2] forKey:@"VideoQualityType"]; + [preset setObject:@"700" forKey:@"VideoTargetSize"]; + [preset setObject:@"2500" forKey:@"VideoAvgBitrate"]; + [preset setObject:[NSNumber numberWithFloat:0.59] forKey:@"VideoQualitySlider"]; /* Video framerate */ [preset setObject:@"Same as source" forKey:@"VideoFramerate"]; @@ -550,17 +545,15 @@ [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoGrayScale"]; /* 2 Pass Encoding */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoTwoPass"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoTurboTwoPass"]; + [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoTwoPass"]; - /*Picture Settings*/ - /* Use a width of 640 for Broke */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"UsesMaxPictureSettings"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureAutoCrop"]; - [preset setObject:[NSNumber numberWithInt:640] forKey:@"PictureWidth"]; + /* Basic Picture Settings */ + /* Use Max Picture settings for whatever the dvd is.*/ + [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; + [preset setObject:[NSNumber numberWithInt:720] forKey:@"PictureWidth"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureHeight"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureKeepRatio"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PicturePAR"]; + [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureKeepRatio"]; + [preset setObject:[NSNumber numberWithInt:2] forKey:@"PicturePAR"]; /* Explicitly set the filters for built-in presets */ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureFilters"]; @@ -572,6 +565,7 @@ /* Set crop settings here */ /* The Auto Crop Matrix in the Picture Window autodetects differences in crop settings */ + [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureAutoCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureTopCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureBottomCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureLeftCrop"]; @@ -584,10 +578,21 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"Audio1Track"]; [preset setObject:@"AAC (faac)" forKey:@"Audio1Encoder"]; [preset setObject:@"Dolby Pro Logic II" forKey:@"Audio1Mixdown"]; - [preset setObject:@"Auto" forKey:@"Audio1Samplerate"]; - [preset setObject:@"128" forKey:@"Audio1Bitrate"]; + [preset setObject:@"48" forKey:@"Audio1Samplerate"]; + [preset setObject:@"160" forKey:@"Audio1Bitrate"]; [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio1TrackDRCSlider"]; + /* Track 2 */ + [preset setObject:[NSNumber numberWithInt:1] forKey:@"Audio2Track"]; + [preset setObject:@"AC3 Passthru" forKey:@"Audio2Encoder"]; + [preset setObject:@"AC3 Passthru" forKey:@"Audio2Mixdown"]; + [preset setObject:@"Auto" forKey:@"Audio2Samplerate"]; + /* Note: we ignore specified bitrate for AC3 Passthru in libhb and use + * the sources bitrate, however we need to initially set the value to something so + * the macgui doesnt barf, so 160 seems as good as anything */ + [preset setObject:@"160" forKey:@"Audio2Bitrate"]; + [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio2TrackDRCSlider"]; + /* Subtitles*/ [preset setObject:@"None" forKey:@"Subtitles"]; @@ -712,13 +717,13 @@ [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; /* x264 Option String */ - [preset setObject:@"ref=3:mixed-refs:bframes=3:b-pyramid:subme=7:weightb:filter=-2,-1:trellis=1:analyse=all:8x8dct:me=umh" forKey:@"x264Option"]; + [preset setObject:@"ref=3:mixed-refs:bframes=3:b-pyramid:weightb:filter=-2,-1:trellis=1:analyse=all:8x8dct:me=umh:subme=9:psy-rd=1,1" forKey:@"x264Option"]; /* Video quality */ [preset setObject:[NSNumber numberWithInt:2] forKey:@"VideoQualityType"]; [preset setObject:@"700" forKey:@"VideoTargetSize"]; [preset setObject:@"2000" forKey:@"VideoAvgBitrate"]; - [preset setObject:[NSNumber numberWithFloat:0.6471] forKey:@"VideoQualitySlider"]; + [preset setObject:[NSNumber numberWithFloat:0.60] forKey:@"VideoQualitySlider"]; /* Video framerate */ [preset setObject:@"Same as source" forKey:@"VideoFramerate"]; @@ -775,98 +780,6 @@ return preset; } -- (NSDictionary *)createDeuxSixQuatrePreset -{ - NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; - - /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"Deux Six Quatre" forKey:@"PresetName"]; - - /*Set whether or not this is a user preset or factory 0 is factory, 1 is user*/ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; - - /*Set whether or not this is default, at creation set to 0*/ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"Default"]; - - /*Get the whether or not to apply pic settings in the AddPresetPanel*/ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; - - /* Get the New Preset Description from the field in the AddPresetPanel */ - [preset setObject:@"HandBrake's preset for true high profile x264 quality. A good balance of quality and speed, based on community standards found in the wild. This preset will give you a much better sense of x264's capabilities than vanilla main profile." forKey:@"PresetDescription"]; - - /* File Format */ - [preset setObject:@"MKV file" forKey:@"FileFormat"]; - - /* Chapter Markers*/ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"ChapterMarkers"]; - - /* Video encoder */ - [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; - - /* x264 Option String */ - [preset setObject:@"ref=5:mixed-refs:bframes=3:weightb:b-pyramid:me=umh:subme=8:trellis=1:analyse=all:8x8dct:no-fast-pskip" forKey:@"x264Option"]; - - /* Video quality */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoQualityType"]; - [preset setObject:@"700" forKey:@"VideoTargetSize"]; - [preset setObject:@"1600" forKey:@"VideoAvgBitrate"]; - [preset setObject:[NSNumber numberWithFloat:0.6471] forKey:@"VideoQualitySlider"]; - - /* Video framerate */ - [preset setObject:@"Same as source" forKey:@"VideoFramerate"]; - - /* GrayScale */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"VideoGrayScale"]; - - /* 2 Pass Encoding */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoTwoPass"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoTurboTwoPass"]; - - /*Picture Settings*/ - /* Use Max Picture settings for whatever the dvd is.*/ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesMaxPictureSettings"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureAutoCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureWidth"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureHeight"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureKeepRatio"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PicturePAR"]; - - /* Explicitly set the filters for built-in presets */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureFilters"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDeinterlace"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDenoise"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"VFR"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDeblock"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDetelecine"]; - - /* Set crop settings here */ - /* The Auto Crop Matrix in the Picture Window autodetects differences in crop settings */ - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureTopCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureBottomCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureLeftCrop"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureRightCrop"]; - - /* Audio - Is done on a track by track basis, ONLY specifiy the tracks we want set as any track - * not listed will be set to "None" and not encoded */ - - /* Track 1 */ - [preset setObject:[NSNumber numberWithInt:1] forKey:@"Audio1Track"]; - [preset setObject:@"AC3 Passthru" forKey:@"Audio1Encoder"]; - [preset setObject:@"AC3 Passthru" forKey:@"Audio1Mixdown"]; - [preset setObject:@"Auto" forKey:@"Audio1Samplerate"]; - /* Note: we ignore specified bitrate for AC3 Passthru in libhb and use - * the sources bitrate, however we need to initially set the value to something so - * the macgui doesnt barf, so 160 seems as good as anything */ - [preset setObject:@"160" forKey:@"Audio1Bitrate"]; - [preset setObject:[NSNumber numberWithFloat:1.0] forKey:@"Audio1TrackDRCSlider"]; - - /* Subtitles*/ - [preset setObject:@"None" forKey:@"Subtitles"]; - - [preset autorelease]; - return preset; -} - - (NSDictionary *)createFilmPreset { NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; @@ -896,7 +809,7 @@ [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; /* x264 Option String */ - [preset setObject:@"ref=3:mixed-refs:bframes=6:weightb:direct=auto:b-pyramid:me=umh:subme=8:analyse=all:8x8dct:trellis=1:no-fast-pskip" forKey:@"x264Option"]; + [preset setObject:@"ref=3:mixed-refs:bframes=6:weightb:direct=auto:b-pyramid:me=umh:subme=9:analyse=all:8x8dct:trellis=1:no-fast-pskip:psy-rd=1,1" forKey:@"x264Option"]; /* Video quality */ [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoQualityType"]; @@ -964,7 +877,7 @@ NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"iPhone / iPod Touch" forKey:@"PresetName"]; + [preset setObject:@"iPhone & iPod Touch" forKey:@"PresetName"]; /*Set whether or not this is a user preset or factory 0 is factory, 1 is user*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; @@ -1052,7 +965,7 @@ NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"iPod High-Rez" forKey:@"PresetName"]; + [preset setObject:@"iPod Legacy" forKey:@"PresetName"]; /*Set whether or not this is a user preset or factory 0 is factory, 1 is user*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; @@ -1064,7 +977,7 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; /* Get the New Preset Description from the field in the AddPresetPanel */ - [preset setObject:@"HandBrake's high resolution settings for the iPod. Good video quality, great for viewing on a TV using your iPod" forKey:@"PresetDescription"]; + [preset setObject:@"HandBrake's high resolution settings for older 5 and 5.5G iPods. Good video quality, great for viewing on a TV using your iPod" forKey:@"PresetDescription"]; /* File Format */ [preset setObject:@"MP4 file" forKey:@"FileFormat"]; @@ -1140,7 +1053,7 @@ NSMutableDictionary *preset = [[NSMutableDictionary alloc] init]; /* Get the New Preset Name from the field in the AddPresetPanel */ - [preset setObject:@"iPod Low-Rez" forKey:@"PresetName"]; + [preset setObject:@"iPod Classic & iPod Nano" forKey:@"PresetName"]; /*Set whether or not this is a user preset or factory 0 is factory, 1 is user*/ [preset setObject:[NSNumber numberWithInt:0] forKey:@"Type"]; @@ -1464,6 +1377,7 @@ /* Set crop settings here */ /* The Auto Crop Matrix in the Picture Window autodetects differences in crop settings */ + [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureAutoCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureTopCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureBottomCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureLeftCrop"]; @@ -1504,7 +1418,7 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureSettings"]; /* Get the New Preset Description from the field in the AddPresetPanel */ - [preset setObject:@"HandBrake's high quality settings for use with QuickTime. It can be slow, so use it when the Normal preset doesn't look good enough." forKey:@"PresetDescription"]; + [preset setObject:@"HandBrake's high profile settings for use with QuickTime. It can be slow, so use it when the Normal preset doesn't look good enough." forKey:@"PresetDescription"]; /* File Format */ [preset setObject:@"MP4 file" forKey:@"FileFormat"]; @@ -1516,12 +1430,12 @@ [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; /* x264 Option String */ - [preset setObject:@"ref=3:mixed-refs:bframes=3:subme=7:weightb:direct=auto:me=umh:analyse=all:trellis=1:no-fast-pskip" forKey:@"x264Option"]; + [preset setObject:@"ref=3:mixed-refs:bframes=3:weightb:direct=auto:me=umh:subme=7:analyse=all:8x8dct:trellis=1:no-fast-pskip=1:psy-rd=1,1" forKey:@"x264Option"]; /* Video quality */ [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoQualityType"]; [preset setObject:@"700" forKey:@"VideoTargetSize"]; - [preset setObject:@"2000" forKey:@"VideoAvgBitrate"]; + [preset setObject:@"1800" forKey:@"VideoAvgBitrate"]; [preset setObject:[NSNumber numberWithFloat:0.6471] forKey:@"VideoQualitySlider"]; /* Video framerate */ @@ -1605,7 +1519,7 @@ [preset setObject:@"H.264 (x264)" forKey:@"VideoEncoder"]; /* x264 Option String */ - [preset setObject:@"ref=3:mixed-refs:bframes=6:subme=7:weightb:direct=auto:b-pyramid:me=umh:analyse=all:8x8dct:trellis=1:nr=150:no-fast-pskip" forKey:@"x264Option"]; + [preset setObject:@"ref=3:mixed-refs:bframes=6:weightb:direct=auto:b-pyramid:me=umh:subme=9:analyse=all:8x8dct:trellis=1:nr=150:no-fast-pskip=1:psy-rd=1,1" forKey:@"x264Option"]; /* Video quality */ [preset setObject:[NSNumber numberWithInt:1] forKey:@"VideoQualityType"]; @@ -1629,15 +1543,16 @@ [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureAutoCrop"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureWidth"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureHeight"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureKeepRatio"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PicturePAR"]; + [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureKeepRatio"]; + [preset setObject:[NSNumber numberWithInt:1] forKey:@"PicturePAR"]; [preset setObject:[NSNumber numberWithInt:1] forKey:@"UsesPictureFilters"]; - [preset setObject:[NSNumber numberWithInt:3] forKey:@"PictureDeinterlace"]; - [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureDenoise"]; + [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDeinterlace"]; + [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureDecomb"]; + [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDenoise"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"VFR"]; [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDeblock"]; - [preset setObject:[NSNumber numberWithInt:0] forKey:@"PictureDetelecine"]; + [preset setObject:[NSNumber numberWithInt:1] forKey:@"PictureDetelecine"]; /* Set crop settings here */ /* The Auto Crop Matrix in the Picture Window autodetects differences in crop settings */ |