diff options
author | Mateusz Łukasik <mati75@linuxmint.pl> | 2016-08-14 15:17:04 +0200 |
---|---|---|
committer | Mateusz Łukasik <mati75@linuxmint.pl> | 2016-08-14 15:17:04 +0200 |
commit | 029acf6821f034583700c26b013ffc67ad7690f7 (patch) | |
tree | fe65dfdc621b61036af67ea03b37aba0534bb485 /src/mpvoptions.cpp | |
parent | 7b04f55feb0d50e03d013b2be0ec555d363a40b2 (diff) |
Imported Upstream version 16.8.0~ds0
Diffstat (limited to 'src/mpvoptions.cpp')
-rw-r--r-- | src/mpvoptions.cpp | 38 |
1 files changed, 30 insertions, 8 deletions
diff --git a/src/mpvoptions.cpp b/src/mpvoptions.cpp index cbe93fa..109e9e3 100644 --- a/src/mpvoptions.cpp +++ b/src/mpvoptions.cpp @@ -47,6 +47,7 @@ void MPVProcess::setMedia(const QString & media, bool is_playlist) { "INFO_LENGTH=${=duration:${=length}}\n" "INFO_DEMUXER=${=demuxer}\n" + "INFO_SEEKABLE=${=seekable}\n" "INFO_TITLES=${=disc-titles}\n" "INFO_CHAPTERS=${=chapters}\n" "INFO_TRACKS_COUNT=${=track-list/count}\n" @@ -246,13 +247,20 @@ void MPVProcess::setOption(const QString & option_name, const QVariant & value) } else if (option_name == "softvol") { - arg << "--softvol=yes"; - } - else - if (option_name == "softvol-max") { - int v = value.toInt(); - if (v < 100) v = 100; - arg << "--softvol-max=" + QString::number(v); + if (value.toString() == "off") { + if (isOptionAvailable("--volume-max")) { + arg << "--volume-max=100"; + } + } else { + int v = value.toInt(); + if (v < 100) v = 100; + if (isOptionAvailable("--volume-max")) { + arg << "--volume-max=" + QString::number(v); + } else { + arg << "--softvol=yes"; + arg << "--softvol-max=" + QString::number(v); + } + } } else if (option_name == "subfps") { @@ -377,7 +385,8 @@ void MPVProcess::setOption(const QString & option_name, const QVariant & value) option_name == "autosync" || option_name == "dvd-device" || option_name == "cdrom-device" || option_name == "demuxer" || - option_name == "frames") + option_name == "frames" || + option_name == "ab-loop-a" || option_name == "ab-loop-b") { QString s = "--" + option_name; if (!value.isNull()) s += "=" + value.toString(); @@ -725,6 +734,19 @@ void MPVProcess::setLoop(int v) { writeToStdin(QString("set loop %1").arg(o)); } +void MPVProcess::setAMarker(int sec) { + writeToStdin(QString("set ab-loop-a %1").arg(sec)); +} + +void MPVProcess::setBMarker(int sec) { + writeToStdin(QString("set ab-loop-b %1").arg(sec)); +} + +void MPVProcess::clearABMarkers() { + writeToStdin("set ab-loop-a no"); + writeToStdin("set ab-loop-b no"); +} + void MPVProcess::takeScreenshot(ScreenshotType t, bool include_subtitles) { writeToStdin(QString("screenshot %1 %2").arg(include_subtitles ? "subtitles" : "video").arg(t == Single ? "single" : "each-frame")); } |