string qualityMode = string.Empty;\r
\r
#region Get a List of Audio Track Objects\r
- XmlNode audioListDict = root.ChildNodes[2].ChildNodes[0].FirstChild.ChildNodes[1];\r
+ XmlNode audioListDict = root.ChildNodes[2].ChildNodes[0].FirstChild.ChildNodes[13];\r
ObservableCollection<AudioTrack> audioTracks = new ObservableCollection<AudioTrack>();\r
\r
for (int i = 0; i < audioListDict.ChildNodes.Count; i++)\r
track.DRC = double.Parse(value);\r
break;\r
case "AudioTrackGainSlider":\r
- track.Gain = int.Parse(value);\r
+ track.Gain = int.Parse(value.Replace("0.0", "0"));\r
break;\r
}\r
}\r
XmlNode presetSettings = root.ChildNodes[2].ChildNodes[0].FirstChild;\r
\r
// Start from 2 to avoid the audio settings which we don't need.\r
- for (int i = 2; i < presetSettings.ChildNodes.Count; i += 2)\r
+ for (int i = 0; i < presetSettings.ChildNodes.Count; i += 2)\r
{\r
string key = presetSettings.ChildNodes[i].InnerText;\r
string value = presetSettings.ChildNodes[i + 1].InnerText;\r
case "UsesPictureSettings":\r
parsed.UsesPictureSettings = value == "1";\r
break;\r
+\r
+ // Allowed Passthru\r
+ case "AudioAllowAACPass":\r
+ parsed.AllowedPassthruOptions.AudioAllowAACPass = value == "1";\r
+ break;\r
+ case "AudioAllowAC3Pass":\r
+ parsed.AllowedPassthruOptions.AudioAllowAC3Pass = value == "1";\r
+ break;\r
+ case "AudioAllowDTSHDPass":\r
+ parsed.AllowedPassthruOptions.AudioAllowDTSHDPass = value == "1";\r
+ break;\r
+ case "AudioAllowDTSPass":\r
+ parsed.AllowedPassthruOptions.AudioAllowDTSPass = value == "1";\r
+ break;\r
+ case "AudioAllowMP3Pass":\r
+ parsed.AllowedPassthruOptions.AudioAllowMP3Pass = value == "1";\r
+ break;\r
+ case "AudioEncoderFallback":\r
+ parsed.AllowedPassthruOptions.AudioEncoderFallback = EnumHelper<AudioEncoder>.GetValue(value);\r
+ break;\r
}\r
}\r
\r
/// </summary>\r
private void ImportPreset()\r
{\r
- if (this.selectedTitle == null)\r
- {\r
- MessageBox.Show(\r
- "Please scan a source before trying to import a preset.",\r
- "Error",\r
- MessageBoxButtons.OK,\r
- MessageBoxIcon.Error);\r
- return;\r
- }\r
-\r
if (openPreset.ShowDialog() == DialogResult.OK)\r
{\r
EncodeTask parsed = PlistPresetHandler.Import(openPreset.FileName);\r
- PresetLoader.LoadPreset(this, parsed);\r
+\r
if (presetHandler.CheckIfPresetExists(parsed.PresetName))\r
{\r
if (!presetHandler.CanUpdatePreset(parsed.PresetName))\r
if (result == DialogResult.Yes)\r
{\r
Preset preset = new Preset\r
- {\r
- Name = parsed.PresetName,\r
- Query = QueryGenerator.GenerateFullQuery(this).Query,\r
- CropSettings = parsed.UsesPictureSettings,\r
- Task = parsed,\r
- AudioPassthruSettings = new AllowedPassthru(false), // TODO at a future point, support this.\r
- };\r
+ {\r
+ Name = parsed.PresetName,\r
+ Query = QueryGeneratorUtility.GenerateQuery(parsed),\r
+ CropSettings = parsed.UsesPictureSettings,\r
+ Description = string.Empty,\r
+ AudioPassthruSettings = parsed.AllowedPassthruOptions\r
+ };\r
\r
presetHandler.Update(preset);\r
}\r
}\r
else\r
{\r
- \r
- Preset preset = new Preset \r
+ Preset preset = new Preset\r
{\r
Name = parsed.PresetName,\r
- Query = QueryGenerator.GenerateFullQuery(this).Query,\r
+ Query = QueryGeneratorUtility.GenerateQuery(parsed),\r
CropSettings = parsed.UsesPictureSettings,\r
- Task = parsed,\r
- AudioPassthruSettings = new AllowedPassthru(false), // TODO at a future point, support this.\r
+ Description = string.Empty,\r
+ AudioPassthruSettings = parsed.AllowedPassthruOptions\r
};\r
\r
if (presetHandler.Add(preset))\r