Add setting for optional extra mpv option

Tag called "MpvExtraOption" in "Settings.xml"
This commit is contained in:
Nikolaj Olsson 2020-05-11 20:31:15 +02:00
parent bf8b3678e1
commit 49fda59d62
2 changed files with 21 additions and 0 deletions

View File

@ -850,6 +850,7 @@ $HorzAlign = Center
public string VlcLocationRelative { get; set; }
public string MpvVideoOutput { get; set; }
public string MpvVideoOutputLinux { get; set; }
public string MpvExtraOption { get; set; }
public bool MpvHandlesPreviewText { get; set; }
public string MpcHcLocation { get; set; }
public bool UseFFmpegForWaveExtraction { get; set; }
@ -2961,6 +2962,12 @@ $HorzAlign = Center
settings.General.MpvVideoOutputLinux = subNode.InnerText.Trim();
}
subNode = node.SelectSingleNode("MpvExtraOption");
if (subNode != null)
{
settings.General.MpvExtraOption = subNode.InnerText.Trim();
}
subNode = node.SelectSingleNode("MpvHandlesPreviewText");
if (subNode != null)
{
@ -7012,6 +7019,7 @@ $HorzAlign = Center
textWriter.WriteElementString("VlcLocationRelative", settings.General.VlcLocationRelative);
textWriter.WriteElementString("MpvVideoOutput", settings.General.MpvVideoOutput);
textWriter.WriteElementString("MpvVideoOutputLinux", settings.General.MpvVideoOutputLinux);
textWriter.WriteElementString("MpvExtraOption", settings.General.MpvExtraOption);
textWriter.WriteElementString("MpvHandlesPreviewText", settings.General.MpvHandlesPreviewText.ToString(CultureInfo.InvariantCulture));
textWriter.WriteElementString("MpcHcLocation", settings.General.MpcHcLocation);
textWriter.WriteElementString("UseFFmpegForWaveExtraction", settings.General.UseFFmpegForWaveExtraction.ToString(CultureInfo.InvariantCulture));

View File

@ -521,6 +521,19 @@ namespace Nikse.SubtitleEdit.Logic.VideoPlayers
_mpvSetOptionString(_mpvHandle, GetUtf8Bytes("ytdl"), GetUtf8Bytes("yes"));
}
if (!string.IsNullOrEmpty(Configuration.Settings.General.MpvExtraOption))
{
var parts = Configuration.Settings.General.MpvExtraOption.Split('=');
if (parts.Length == 2)
{
_mpvSetOptionString(_mpvHandle, GetUtf8Bytes(parts[0]), GetUtf8Bytes(parts[1]));
}
else
{
_mpvSetOptionString(_mpvHandle, GetUtf8Bytes(Configuration.Settings.General.MpvExtraOption), GetUtf8Bytes(""));
}
}
DoMpvCommand("loadfile", videoFileName);
System.Threading.Thread.Sleep(100);