Merge branch 'dev'
This commit is contained in:
commit
1a5bd638c0
@ -1123,33 +1123,15 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
|
||||
# Restore volume if -3dB active
|
||||
if self.btnDrop3db.isChecked():
|
||||
log.debug("Reset -3db button")
|
||||
self.btnDrop3db.setChecked(False)
|
||||
|
||||
# Show closing volume graph
|
||||
if track_sequence.now.fade_graph:
|
||||
track_sequence.now.fade_graph.plot()
|
||||
else:
|
||||
log.error("No fade_graph")
|
||||
|
||||
# Play (new) current track
|
||||
if not track_sequence.now.path:
|
||||
log.error("No path for next track")
|
||||
return
|
||||
self.music.play(track_sequence.now.path, position)
|
||||
|
||||
# Note that track is playing
|
||||
track_sequence.now.start()
|
||||
self.playing = True
|
||||
|
||||
# Disable play next controls
|
||||
self.catch_return_key = True
|
||||
|
||||
# Notify model
|
||||
self.active_proxy_model().current_track_started()
|
||||
|
||||
# Update headers
|
||||
self.update_headers()
|
||||
|
||||
# Ensure 100% volume
|
||||
# For as-yet unknown reasons. sometimes the volume gets
|
||||
# reset to zero within 200mS or so of starting play. This
|
||||
@ -1164,6 +1146,36 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
break
|
||||
sleep(0.1)
|
||||
|
||||
# TODO: remove sleep() calls - used to try to isolate bug #223
|
||||
# Show closing volume graph
|
||||
sleep(1)
|
||||
if track_sequence.now.fade_graph:
|
||||
track_sequence.now.fade_graph.plot()
|
||||
else:
|
||||
log.error("No fade_graph")
|
||||
|
||||
# Note that track is playing
|
||||
sleep(1)
|
||||
log.error("set track_sequence")
|
||||
track_sequence.now.start()
|
||||
self.playing = True
|
||||
|
||||
# Disable play next controls
|
||||
sleep(1)
|
||||
log.error("catch return key")
|
||||
self.catch_return_key = True
|
||||
self.show_status_message("Play controls: Disabled", 0)
|
||||
|
||||
# Notify model
|
||||
sleep(1)
|
||||
log.error("active_proxy_model().current_track_started()")
|
||||
self.active_proxy_model().current_track_started()
|
||||
|
||||
# Update headers
|
||||
sleep(1)
|
||||
log.error("update headers")
|
||||
self.update_headers()
|
||||
|
||||
def preview(self) -> None:
|
||||
"""
|
||||
Preview selected or next track. We use a different mechanism to
|
||||
@ -1477,6 +1489,7 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
|
||||
# Enable controls
|
||||
self.catch_return_key = False
|
||||
self.show_status_message("Play controls: Enabled", 0)
|
||||
|
||||
def tab_change(self):
|
||||
"""Called when active tab changed"""
|
||||
@ -1557,6 +1570,7 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
if self.frame_silent.styleSheet() != css_silence:
|
||||
self.frame_silent.setStyleSheet(css_silence)
|
||||
self.catch_return_key = False
|
||||
self.show_status_message("Play controls: Enabled", 0)
|
||||
# Set warning colour on time to silence box when fade starts
|
||||
elif time_to_fade <= 500:
|
||||
css_fade = f"background: {Config.COLOUR_WARNING_TIMER}"
|
||||
@ -1569,6 +1583,7 @@ class Window(QMainWindow, Ui_MainWindow):
|
||||
f"background: {Config.COLOUR_WARNING_TIMER}"
|
||||
)
|
||||
self.catch_return_key = False
|
||||
self.show_status_message("Play controls: Enabled", 0)
|
||||
else:
|
||||
self.frame_silent.setStyleSheet("")
|
||||
self.frame_fade.setStyleSheet("")
|
||||
|
||||
@ -160,7 +160,7 @@ class PipeClient():
|
||||
|
||||
def _write_pipe_open(self) -> None:
|
||||
"""Open _write_pipe."""
|
||||
self._write_pipe = open(WRITE_NAME, 'w', encoding='ascii')
|
||||
self._write_pipe = open(WRITE_NAME, 'w')
|
||||
|
||||
def _read_thread_start(self) -> None:
|
||||
"""Start read_pipe thread."""
|
||||
@ -204,7 +204,7 @@ class PipeClient():
|
||||
"""Read FIFO in worker thread."""
|
||||
# Thread will wait at this read until it connects.
|
||||
# Connection should occur as soon as _write_pipe has connected.
|
||||
with open(READ_NAME, 'r', encoding='ascii') as read_pipe:
|
||||
with open(READ_NAME, 'r') as read_pipe:
|
||||
message = ''
|
||||
pipe_ok = True
|
||||
while pipe_ok:
|
||||
|
||||
@ -2,11 +2,10 @@
|
||||
from __future__ import annotations
|
||||
import obsws_python as obs # type: ignore
|
||||
import re
|
||||
from dataclasses import dataclass
|
||||
from datetime import datetime, timedelta
|
||||
from enum import auto, Enum
|
||||
from operator import attrgetter
|
||||
from pprint import pprint
|
||||
from time import sleep
|
||||
from random import shuffle
|
||||
from typing import List, Optional
|
||||
|
||||
@ -273,14 +272,21 @@ class PlaylistModel(QAbstractTableModel):
|
||||
)
|
||||
return
|
||||
|
||||
# TODO: remove sleep/log calls, used to debug #223
|
||||
# Check for OBS scene change
|
||||
sleep(1)
|
||||
log.error("Call OBS scene change")
|
||||
self.obs_scene_change(row_number)
|
||||
|
||||
with Session() as session:
|
||||
# Update Playdates in database
|
||||
sleep(1)
|
||||
log.error("update playdates")
|
||||
Playdates(session, track_sequence.now.track_id)
|
||||
|
||||
# Mark track as played in playlist
|
||||
sleep(1)
|
||||
log.error("Mark track as played")
|
||||
plr = session.get(PlaylistRows, track_sequence.now.plr_id)
|
||||
if plr:
|
||||
plr.played = True
|
||||
@ -289,6 +295,8 @@ class PlaylistModel(QAbstractTableModel):
|
||||
log.error(f"Can't retrieve plr, {track_sequence.now.plr_id=}")
|
||||
|
||||
# Update track times
|
||||
sleep(1)
|
||||
log.error("Update track times")
|
||||
if prd:
|
||||
prd.start_time = track_sequence.now.start_time
|
||||
prd.end_time = track_sequence.now.end_time
|
||||
@ -305,6 +313,8 @@ class PlaylistModel(QAbstractTableModel):
|
||||
|
||||
# Find next track
|
||||
# Get all unplayed track rows
|
||||
sleep(1)
|
||||
log.error("Find next track")
|
||||
next_row = None
|
||||
unplayed_rows = self.get_unplayed_rows()
|
||||
if unplayed_rows:
|
||||
|
||||
Loading…
Reference in New Issue
Block a user