/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"fast";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"veryfast";
/* Video encoder and advanced options */
preset[@"VideoEncoder"] = @"H.264 (x264)";
- preset[@"lavcOption"] = @"";
preset[@"x264Option"] = @"";
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"VideoPreset"] = @"medium";
{
/* we are using libavcodec */
NSString *lavcInfo = @"";
- if (item[@"lavcOption"] &&
- [item[@"lavcOption"] length])
+ if (item[@"VideoOptionExtra"] &&
+ [item[@"VideoOptionExtra"] length])
{
- lavcInfo = [lavcInfo stringByAppendingString: item[@"lavcOption"]];
+ lavcInfo = [lavcInfo stringByAppendingString: item[@"VideoOptionExtra"]];
}
else
{
lavcInfo = [lavcInfo stringByAppendingString: @"default settings"];
}
- [finalString appendString: @"ffmpeg: " withAttributes:detailBoldAttr];
+ [finalString appendString: @"Encoder Options: " withAttributes:detailBoldAttr];
[finalString appendString: lavcInfo withAttributes:detailAttr];
[finalString appendString:@"\n" withAttributes:detailAttr];
}
/* video encoder */
self.codec = [queueToApply[@"JobVideoEncoderVcodec"] intValue];
- self.lavcOptions = queueToApply[@"lavcOption"];
-
/* advanced x264 options */
if ([queueToApply[@"x264UseAdvancedOptions"] intValue])
{
[fX264UseAdvancedOptionsCheck setState:NSOnState];
[self updateEncoderOptionsWidgets:nil];
}
- else
+ else if (self.codec == HB_VCODEC_X264 || self.codec == HB_VCODEC_X265)
{
// we are using the x264 preset system
[self setPreset: queueToApply[@"VideoPreset"]];
[fX264UseAdvancedOptionsCheck setState:NSOffState];
[self updateEncoderOptionsWidgets:nil];
}
+ else
+ {
+ self.lavcOptions = queueToApply[@"VideoOptionExtra"];
+ }
/* Lets run through the following functions to get variables set there */
[self videoEncoderPopUpChanged:nil];
[self updateEncoderOptionsWidgets:nil];
}
}
-
- // Apply the lavcOption
- self.lavcOptions = preset[@"lavcOption"];
+ else
+ {
+ // Apply the lavcOption
+ self.lavcOptions = preset[@"VideoOptionExtra"];
+ }
int qualityType = [preset[@"VideoQualityType"] intValue] - 1;
/* Note since the removal of Target Size encoding, the possible values for VideoQuality type are 0 - 1.
queueFileJob[@"x264UseAdvancedOptions"] = @1;
queueFileJob[@"x264Option"] = [self.fAdvancedOptions optionsString];
}
- else
+ else if (self.codec == HB_VCODEC_X264 || self.codec == HB_VCODEC_X265)
{
// we are using the x264/x265 preset system
queueFileJob[@"x264UseAdvancedOptions"] = @0;
queueFileJob[@"VideoProfile"] = [self profile];
queueFileJob[@"VideoLevel"] = [self level];
}
-
- /* FFmpeg (lavc) Option String */
- queueFileJob[@"lavcOption"] = self.lavcOptions;
+ else
+ {
+ /* FFmpeg (lavc) Option String */
+ queueFileJob[@"VideoOptionExtra"] = self.lavcOptions;
+ }
queueFileJob[@"VideoQualityType"] = @(self.qualityType + 1);
queueFileJob[@"VideoAvgBitrate"] = [fVidBitrateField stringValue];
preset[@"x264UseAdvancedOptions"] = @1;
preset[@"x264Option"] = [self.fAdvancedOptions optionsString];
}
- else
+ else if (self.codec == HB_VCODEC_X264 || self.codec == HB_VCODEC_X265)
{
/* use the x264 preset system */
preset[@"x264UseAdvancedOptions"] = @0;
preset[@"x264Option"] = @"";
}
}
-
- /* FFmpeg (lavc) Option String */
- preset[@"lavcOption"] = self.lavcOptions;
+ else
+ {
+ /* FFmpeg (lavc) Option String */
+ preset[@"VideoOptionExtra"] = self.lavcOptions;
+ }
/* though there are actually only 0 - 1 types available in the ui we need to map to the old 0 - 2
* set of indexes from when we had 0 == Target , 1 == Abr and 2 == Constant Quality for presets