summaryrefslogtreecommitdiff
path: root/src/mpvoptions.cpp
diff options
context:
space:
mode:
authorMateusz Łukasik <mati75@linuxmint.pl>2016-08-14 15:17:04 +0200
committerMateusz Łukasik <mati75@linuxmint.pl>2016-08-14 15:17:04 +0200
commit029acf6821f034583700c26b013ffc67ad7690f7 (patch)
treefe65dfdc621b61036af67ea03b37aba0534bb485 /src/mpvoptions.cpp
parent7b04f55feb0d50e03d013b2be0ec555d363a40b2 (diff)
Imported Upstream version 16.8.0~ds0
Diffstat (limited to 'src/mpvoptions.cpp')
-rw-r--r--src/mpvoptions.cpp38
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"));
}