ensuring audio only plays in proper places

This commit is contained in:
Chris Cochrun 2022-09-26 06:38:11 -05:00
parent 4f0ab74fa1
commit 2711bde130
3 changed files with 23 additions and 5 deletions

View file

@ -166,10 +166,10 @@ Item {
previewSlide.playVideo(); previewSlide.playVideo();
pauseVideo(); pauseVideo();
} }
function onAudioChanged() { /* function onAudioChanged() { */
showPassiveNotification("Audio should change"); /* showPassiveNotification("Audio should change"); */
previewSlide.playAudio(); /* previewSlide.playAudio(); */
} /* } */
} }
function pauseVideo() { function pauseVideo() {

View file

@ -23,6 +23,7 @@ Window {
onClosing: { onClosing: {
presentationSlide.stopVideo(); presentationSlide.stopVideo();
SlideObject.pause(); SlideObject.pause();
presentationSlide.stopAudio();
presenting = false; presenting = false;
} }
@ -35,6 +36,7 @@ Window {
anchors.fill: parent anchors.fill: parent
imageSource: SlideObject.imageBackground imageSource: SlideObject.imageBackground
videoSource: presentationWindow.visible ? SlideObject.videoBackground : "" videoSource: presentationWindow.visible ? SlideObject.videoBackground : ""
audioSource: SlideObject.audio
text: SlideObject.text text: SlideObject.text
pdfIndex: SlideObject.pdfIndex pdfIndex: SlideObject.pdfIndex
itemType: SlideObject.type itemType: SlideObject.type
@ -43,13 +45,24 @@ Window {
Connections { Connections {
target: SlideObject target: SlideObject
function onVideoBackgroundChanged() { function onVideoBackgroundChanged() {
loadVideo(); if (SlideObject.videoBackground === "")
stopVideo();
else {
loadVideo();
playVideo();
}
} }
function onIsPlayingChanged() { function onIsPlayingChanged() {
if(SlideObject.isPlaying) if(SlideObject.isPlaying)
presentationSlide.playVideo(); presentationSlide.playVideo();
pauseVideo(); pauseVideo();
} }
function onAudioChanged() {
if (presentationWindow.visible)
presentationSlide.playAudio();
else
presentationWindow.stopAudio();
}
} }
function loadVideo() { function loadVideo() {

View file

@ -172,9 +172,14 @@ Item {
} }
function playAudio() { function playAudio() {
showPassiveNotification("Audio should change");
audio.loadFile(audioSource.toString()); audio.loadFile(audioSource.toString());
} }
function stopAudio() {
audio.stop();
}
function stopVideo() { function stopVideo() {
mpv.stop(); mpv.stop();
black.visible = true; black.visible = true;