a somewhat working system of video start and end times
This commit is contained in:
parent
76c669c5a5
commit
461d25a73d
4 changed files with 35 additions and 2 deletions
|
@ -531,8 +531,9 @@ void MpvObject::stepForward()
|
|||
|
||||
void MpvObject::seek(double pos)
|
||||
{
|
||||
// qDebug() << "seek" << pos;
|
||||
qDebug() << "seek" << pos << m_duration;
|
||||
pos = qMax(0.0, qMin(pos, m_duration));
|
||||
qDebug() << "seek" << pos;
|
||||
command(QVariantList() << "seek" << pos << "absolute");
|
||||
}
|
||||
|
||||
|
|
|
@ -7,6 +7,7 @@ import QtWebEngine 1.10
|
|||
import QtGraphicalEffects 1.15
|
||||
import org.kde.kirigami 2.13 as Kirigami
|
||||
import "./" as Presenter
|
||||
import org.presenter 1.0
|
||||
import mpv 1.0
|
||||
|
||||
Item {
|
||||
|
@ -69,6 +70,7 @@ Item {
|
|||
mpv.setProperty("loop", "no");
|
||||
/* showPassiveNotification(mpv.getProperty("loop")); */
|
||||
mpv.setProperty("sid", "no");
|
||||
|
||||
}
|
||||
/* onIsPlayingChanged: showPassiveNotification(mpv.getProperty("pause")) */
|
||||
|
||||
|
@ -86,8 +88,19 @@ Item {
|
|||
interval: 100
|
||||
onTriggered: {
|
||||
/* showPassiveNotification("YIPPEEE!") */
|
||||
if (vidStartTime > 0 && vidStartTime < vidEndTime) {
|
||||
/* mpv.seek(vidStartTime); */
|
||||
let start = "+" + vidStartTime;
|
||||
let end = "+" + vidEndTime;
|
||||
mpv.setProperty("start", start);
|
||||
mpv.setProperty("end", end);
|
||||
Utils.dbg("Setting position to: " + mpv.position);
|
||||
} else {
|
||||
mpv.setProperty("start", "none");
|
||||
mpv.setProperty("end", "none");
|
||||
}
|
||||
mpv.loadFile(videoSource.toString());
|
||||
mpv.seek(vidStartTime)
|
||||
Utils.dbg("Setting position to: " + vidStartTime + " and end is " + vidEndTime);
|
||||
if (editMode) {
|
||||
console.log("WHY AREN'T YOU PASUING!");
|
||||
pauseTimer.restart();
|
||||
|
|
|
@ -431,6 +431,7 @@ impl slide_model::SlideModel {
|
|||
) {
|
||||
let mut slide = slide.clone();
|
||||
// slide.slide_index = index;
|
||||
debug!(?slide);
|
||||
|
||||
unsafe {
|
||||
self.as_mut().begin_insert_rows(
|
||||
|
@ -553,6 +554,16 @@ impl slide_model::SlideModel {
|
|||
.unwrap_or(QVariant::from(&1))
|
||||
.value()
|
||||
.unwrap_or(1);
|
||||
slide.video_start_time = service_item
|
||||
.get(&QString::from("videoStartTime"))
|
||||
.unwrap_or(QVariant::from(&0.0))
|
||||
.value()
|
||||
.unwrap_or(0.0);
|
||||
slide.video_end_time = service_item
|
||||
.get(&QString::from("videoEndTime"))
|
||||
.unwrap_or(QVariant::from(&0.0))
|
||||
.value()
|
||||
.unwrap_or(0.0);
|
||||
slide.looping = service_item
|
||||
.get(&QString::from("loop"))
|
||||
.unwrap_or(QVariant::from(&false))
|
||||
|
|
|
@ -309,8 +309,16 @@ impl slide_object::SlideObject {
|
|||
.get(&QString::from("videoStartTime"))
|
||||
.unwrap_or(QVariant::from(&0.0));
|
||||
if let Some(int) = video_start_time.value::<f32>() {
|
||||
debug!(start_time = int);
|
||||
self.as_mut().set_video_start_time(int)
|
||||
}
|
||||
let video_end_time = item
|
||||
.get(&QString::from("videoEndTime"))
|
||||
.unwrap_or(QVariant::from(&0.0));
|
||||
if let Some(int) = video_end_time.value::<f32>() {
|
||||
debug!(end_time = int);
|
||||
self.as_mut().set_video_end_time(int)
|
||||
}
|
||||
|
||||
let html =
|
||||
image_background.value_or_default::<QString>().ends_with(
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue