Commit Graph

1151 Commits

Author SHA1 Message Date
Keith Edmunds
6e258a0ee2 Split music_manager from classes 2024-12-22 15:14:00 +00:00
Keith Edmunds
205667faa1 Tighten up AudacityController type hints 2024-12-22 15:11:30 +00:00
Keith Edmunds
d9abf72f6a Fix section hiding
We were suppressing hiding when section contained previous track.

Now, when all are played, we hide.
2024-12-21 16:40:51 +00:00
Keith Edmunds
96807a945c Resize rows in config-defined chunks 2024-12-17 20:55:25 +00:00
Keith Edmunds
b9cb7cc326 Fixup section hiding 2024-12-16 22:23:01 +00:00
Keith Edmunds
efde8fe7bc Implement hiding played sections 2024-12-14 20:46:19 +00:00
Keith Edmunds
b16845f352 Add return type hint 2024-12-14 19:42:14 +00:00
Keith Edmunds
42b5c2413c Fix "=" subtotal line 2024-12-14 17:34:46 +00:00
Keith Edmunds
2ce6eb95ed Remove "ago" from last played string 2024-12-14 17:11:35 +00:00
Keith Edmunds
734960e0f3 Set row padding in preferences 2024-12-14 17:11:16 +00:00
Keith Edmunds
17d88ca8fe Optionally remove colour codes from non-timing headers 2024-12-14 15:37:33 +00:00
Keith Edmunds
954b404031 Don't show deleted templates 2024-12-14 14:56:27 +00:00
Keith Edmunds
0391eed88e Optionally remove header colour directives from header 2024-12-14 14:49:07 +00:00
Keith Edmunds
f7f4cdc622 Implement header row foreground colour 2024-12-14 12:01:41 +00:00
Keith Edmunds
cc01d04fb8 Remove section timing marks from displayed headers 2024-12-14 10:22:25 +00:00
Keith Edmunds
ac18773ebd Merge branch 'dev' 2024-12-13 21:37:11 +00:00
Keith Edmunds
61dcf7fc91 Don't bring Audacity to focus when starting app 2024-12-13 12:54:48 +00:00
Keith Edmunds
d0d3d5b09a Allow combined +- in header rows 2024-12-13 12:48:05 +00:00
Keith Edmunds
ba32473f06 Fix header row heights too large 2024-12-13 12:45:42 +00:00
Keith Edmunds
642e8523a2 Add profiling for drop_event 2024-12-13 10:02:13 +00:00
Keith Edmunds
2a93113c3f merge in expanding edit box changes 2024-12-12 18:08:05 +00:00
Keith Edmunds
e29c7ed0ff Add in delegate for spinbox 2024-12-12 18:02:58 +00:00
Keith Edmunds
0b30a02dde Row resizing WIP
Resizing works, code is clean, rows not too tall, IntegerDelegate to
be provided still.
2024-12-11 22:37:39 +00:00
Keith Edmunds
07d8ce9c41 Add type hints for profiling calls 2024-12-11 22:35:11 +00:00
Keith Edmunds
4860c9f188 Expang edit box working, code untidy 2024-12-11 15:34:48 +00:00
Keith Edmunds
d7751008bd Merge dev 2024-12-11 12:49:01 +00:00
Keith Edmunds
558554d086 Implement "remove comments"
Fixes #185
2024-12-09 08:45:41 +00:00
Keith Edmunds
417bff8663 Put mark/move on context menu 2024-12-08 22:36:05 +00:00
Keith Edmunds
eaac2ef4ca Handle moving next track between playlists
Fixes #266
2024-12-08 17:00:22 +00:00
Keith Edmunds
17ab9c1c65 Temp changes for profiling 2024-12-07 21:10:24 +00:00
Keith Edmunds
2c19981cd8 Add icons to playlist tabs
Green on tab currently playing
Yellow on next tab if different

Fixes #245
2024-12-07 21:09:54 +00:00
Keith Edmunds
27261ff871 Only highlight current/next track in correct playlist
Fixes #259
2024-12-06 21:55:04 +00:00
Keith Edmunds
57765a64a7 Temp changes for profiling 2024-12-05 17:42:46 +00:00
Keith Edmunds
c7253e2211 Fix MariaDB bug workaround
Fixes #265
2024-12-02 18:56:00 +00:00
Keith Edmunds
ecd5c65695 Put cursor at click position on edit
Fixes #150
2024-12-01 15:31:43 +00:00
Keith Edmunds
8c33db170d Add profiling calls 2024-11-28 06:59:10 +00:00
Keith Edmunds
5d5277b028 Minor Audacity interface cleanups 2024-11-27 13:01:10 +00:00
Keith Edmunds
28897500c8 Improve Audacity connections
Replace pipeclient with much simpler audacity_controller
Better error checking
Deal with Audacity going away
Fixes #264
2024-11-27 10:54:04 +00:00
Keith Edmunds
ac2e811ed6 Remove all profiling calls 2024-11-24 21:56:12 +00:00
Keith Edmunds
0737c58dff Add indexes to PlaylistRowsTable 2024-11-23 07:27:49 +00:00
Keith Edmunds
fabf3e18bf Re-add profiling calls 2024-11-23 07:24:03 +00:00
Keith Edmunds
f19fc2e8c0 Remove dummy_for_profiling parameters 2024-11-16 13:06:35 +00:00
Keith Edmunds
40b5fc020d Fix playlist_rows row_number corruption 2024-11-16 13:04:39 +00:00
Keith Edmunds
98a8e20baa Move track to under current makes it next track
Fixes #261
2024-11-16 13:04:11 +00:00
Keith Edmunds
3cec08db85 Remove profiler decorations 2024-11-16 13:03:10 +00:00
Keith Edmunds
f5b26028f5 Improve RowAndTrack repr 2024-11-16 13:02:21 +00:00
Keith Edmunds
4c420d01ca Preserve row order when moving rows 2024-11-16 10:44:30 +00:00
Keith Edmunds
7cfd2a45a2 Speed up moving rows
Fixes #262
Fixed #260
2024-11-16 09:58:08 +00:00
Keith Edmunds
b4fcd5f2c9 Don't try to move rows if no rows selected
Fixes #263
2024-11-15 21:38:24 +00:00
Keith Edmunds
61adc43b45 Add profiling to paste_rows and related functions 2024-11-01 15:18:47 +00:00
Keith Edmunds
3783996ba4 Handle file not found when scanning track 2024-11-01 11:47:38 +00:00
Keith Edmunds
2ce7f671ba Ensure new playlists are marked as open 2024-10-27 19:35:41 +00:00
Keith Edmunds
3d83de20c2 Show Wikipedia/Songfacts on next track if none selected 2024-08-18 11:13:20 +01:00
Keith Edmunds
42ebf2fa7b Remove deep_rows query
Aim to fix sometimes slow moving of rows. Data from the 'deep' part is
no longer used anyway.

Fixes #258
2024-08-09 12:55:43 +01:00
Keith Edmunds
b8fcc79f8e Black formatting and mypy fixups 2024-08-04 17:18:08 +01:00
Keith Edmunds
27012a9658 Fix non-release of player when at natural end of track 2024-08-04 11:57:46 +01:00
Keith Edmunds
40cad1c98f Fix resource leak
After around 1.5h of operation, we'd get messages such as:

vlcpulse audio output error: PulseAudio server connection failure: Connection terminated

Tracked down to not correctly releasing vlc player resources when
track had finished playing. Fixed now, and much simplified the fadeout
code as well.
2024-08-02 18:35:33 +01:00
Keith Edmunds
5f5bb27a5f . 2024-08-02 18:35:33 +01:00
Keith Edmunds
50d1e8bd4a Fix unmarking row as played
Fixes #254
2024-07-31 13:16:06 +01:00
Keith Edmunds
feb8f0b6d7 Unmark row zero when no longer next track
Fixes #253
2024-07-31 13:16:06 +01:00
Keith Edmunds
2d582738e3 More log quietening 2024-07-30 16:54:00 +01:00
Keith Edmunds
0c76227bbc Quieten logging: move many info to debug 2024-07-30 16:51:53 +01:00
Keith Edmunds
bd7fb79610 Clear fade graph when clearing next track 2024-07-30 16:36:29 +01:00
Keith Edmunds
59b6b87186 Fixup typos in playlistmodel.py 2024-07-30 04:21:04 +01:00
Keith Edmunds
b15687a4c6 Clean up playlists.py 2024-07-30 04:12:35 +01:00
Keith Edmunds
076451ff89 Cleanup of playlistmodel.py 2024-07-29 21:49:17 +01:00
Keith Edmunds
d6f55c5987 Rewrite of track handling
Combine the old track_manager and playlist data structures into
RowAndTrack data structure.
2024-07-29 18:52:02 +01:00
Keith Edmunds
4a85d7ea84 Fix repr typo 2024-07-28 19:47:05 +01:00
Keith Edmunds
3c01fb63c3 Implement VLC logging 2024-07-28 19:45:55 +01:00
Keith Edmunds
b423ab0624 Log.debug production stackprinter messages 2024-07-26 18:10:53 +01:00
Keith Edmunds
051d8cf0ef Log releasing player and keep player count
Working on issue #251
2024-07-26 11:49:38 +01:00
Keith Edmunds
1513ad96d8 Fix track times bug
When update_track_times runs, it looks as track_sequence.current and
.next, but didn't check that those tracks referred to the current
playlist, which could cause a KeyError.

Fixes #252
2024-07-26 11:38:33 +01:00
Keith Edmunds
04c2c6377a Increase play debounce time 500ms → 1000ms 2024-07-26 11:20:15 +01:00
Keith Edmunds
9973f00055 Enhance debugging for failed fade graph creation 2024-07-26 11:18:29 +01:00
Keith Edmunds
53e169ae6b Add x bit to musicmuster.py 2024-07-23 17:50:14 +01:00
Keith Edmunds
234f6fcdbb Typo fixed 2024-07-23 17:47:18 +01:00
Keith Edmunds
7658dc354c More track timing cleanups 2024-07-22 18:47:29 +01:00
Keith Edmunds
3c884e54ca Refactor set track times 2024-07-22 16:29:17 +01:00
Keith Edmunds
d7a37151b7 Fixup type hints, renamed function 2024-07-22 16:27:31 +01:00
Keith Edmunds
96080cdca0 Simply musicmuster:play_next
Split out return_pressed_in_error()
2024-07-21 09:49:18 +01:00
Keith Edmunds
434e45b080 Reduce complexity of playlistmodel:headerData 2024-07-21 08:58:49 +01:00
Keith Edmunds
829172177c Implement external browser 2024-07-19 19:59:18 +01:00
Keith Edmunds
30d8b0d5c8 Rework track hiding logic
Fixes #248
2024-07-19 15:58:58 +01:00
Keith Edmunds
a51dd3a998 Show preview time in m:ss
Fixes #250
2024-07-19 15:06:22 +01:00
Keith Edmunds
7a6c8a0f95 Mark playlist last used on creation
Fixes #249
2024-07-19 12:46:10 +01:00
Keith Edmunds
5f3119be1f Tighter mypy testing, fixed up type hints 2024-07-08 19:03:35 +01:00
Keith Edmunds
2394327d38 Make load playlists the last init action 2024-07-07 11:57:24 +01:00
Keith Edmunds
c7d6ae4cb6 Fix end of track signalling 2024-07-07 11:16:49 +01:00
Keith Edmunds
7333fd570f Error checking, type annotations, minor edits 2024-07-07 10:19:17 +01:00
Keith Edmunds
68a253bc7c Improve type hints, other minor edits 2024-07-06 20:35:06 +01:00
Keith Edmunds
c11573906a Make tick_100ms more efficient 2024-07-06 19:01:27 +01:00
Keith Edmunds
87d2d7adae Add issue 223 debugging and quicklog function 2024-07-06 14:26:29 +01:00
Keith Edmunds
dc3b46d2d6 Unload pygame music file after use 2024-07-06 12:37:15 +01:00
Keith Edmunds
f2867deb2f mypy linting 2024-07-03 18:03:41 +01:00
Keith Edmunds
553376a99e Preview with pygame working 2024-07-03 17:55:09 +01:00
Keith Edmunds
e3d7ae8e0f WIP: preview forward/back working 2024-07-03 16:11:13 +01:00
Keith Edmunds
9656bac49f WIP: preview via pygame working 2024-07-03 15:41:14 +01:00
Keith Edmunds
a971298982 WIP: remove some references to preview track manager 2024-07-03 14:01:34 +01:00
Keith Edmunds
4fe6e9186c Merge branch 'sounddevice' into dev 2024-07-03 13:50:46 +01:00
Keith Edmunds
8bc41f2fcd Fix error message 2024-07-03 13:50:40 +01:00
Keith Edmunds
92eb3fc953 Fix inability to close playlists 2024-07-03 12:52:46 +01:00
Keith Edmunds
a8f709d2da Quieten logging 2024-06-27 21:41:15 +01:00
Keith Edmunds
e711ab84ab Move some logging from info to debug 2024-06-27 20:43:38 +01:00
Keith Edmunds
67bc3377cb Fix logging error 2024-06-27 20:41:56 +01:00
Keith Edmunds
8618813197 Tidy up function 2024-06-23 14:35:05 +01:00
Keith Edmunds
c139215603 Improve drag and drop targetting 2024-06-22 21:52:08 +01:00
Keith Edmunds
3831ebb01d File header, type hints, Black 2024-06-22 21:51:41 +01:00
Keith Edmunds
0cd5d97405 Make default syslog level DEBUG 2024-06-21 23:17:00 +01:00
Keith Edmunds
a8fad358b9 Fix database URL reference 2024-06-20 18:23:04 +01:00
Keith Edmunds
6e4c386fe2 Manage deleting rows better
Fix incorrect updating of track_sequence row numbers.
2024-06-18 19:45:12 +01:00
Keith Edmunds
a4174e84ce Make use of get_tags more resilient 2024-06-17 16:31:23 +01:00
Keith Edmunds
fe8537c9c1 replace_files.py functionality now in musicmuster 2024-06-17 16:18:06 +01:00
Keith Edmunds
5e4277646b Black formatting 2024-06-16 08:40:45 +01:00
Keith Edmunds
71257e4d67 Ensure one db instance only
Ensure testing db is correctly set to sqlite
2024-06-16 08:40:03 +01:00
Keith Edmunds
21156d8fa1 Improve getting/setting of Settings 2024-06-16 08:16:24 +01:00
Keith Edmunds
a46b9a3d6f Return True/False on set_next_row 2024-06-03 20:29:50 +01:00
Keith Edmunds
1ee9a1ae22 Speed up moving rows 2024-06-03 20:29:17 +01:00
Keith Edmunds
e884201df4 Don't accept unreadable track into _TrackManager 2024-06-03 19:06:00 +01:00
Keith Edmunds
2f32f2e914 Update fade graph when starting next track before current has finished 2024-06-03 19:05:19 +01:00
Keith Edmunds
1d51edc50f Most recent track first in tooltips 2024-06-02 21:05:09 +01:00
Keith Edmunds
35b5402853 Fix: end of preview caused main play end of track actions 2024-06-02 20:53:26 +01:00
Keith Edmunds
648ef76234 Resume working 2024-06-02 19:19:35 +01:00
Keith Edmunds
909fb27bed All preview/intro management working 2024-06-02 17:58:20 +01:00
Keith Edmunds
09fdd7e4dc Display of countdown timer works 2024-06-02 16:50:49 +01:00
Keith Edmunds
983716e009 Row times updating working 2024-06-02 16:34:30 +01:00
Keith Edmunds
4ec1c0e09c Fade graph no longer lagging 2024-06-02 14:31:14 +01:00
Keith Edmunds
0361d25c7b WIP: fade graph working, slightly laggy 2024-06-02 13:33:57 +01:00
Keith Edmunds
c5ca1469dc Remove all carts code 2024-06-02 12:04:26 +01:00
Keith Edmunds
5278b124ca WIP: implemented trackmanager, tracks play, clocks work 2024-06-02 11:57:45 +01:00
Keith Edmunds
fbcedb6c3b Create trackmanager.py
music.py is fully absorbed into trackmanager.py and thus removed
Substantial parts of classes.py are absorbed into trackmanager.py
2024-06-02 10:00:31 +01:00
Keith Edmunds
8ea0a0dad5 WIP: moving player to PlaylistTrack. Player works. 2024-06-01 17:41:22 +01:00
Keith Edmunds
b1f682d2e6 Uncheck preview armed at end of preview 2024-05-25 09:36:19 +01:00
Keith Edmunds
3d3df85845 PoC: added intro time display and editing 2024-05-25 09:29:03 +01:00
Keith Edmunds
8ebaa2798f Set intro timer background colour 2024-05-24 16:48:48 +01:00
Keith Edmunds
afc3014b18 Much improved stderr reporting on exceptions 2024-05-24 15:04:07 +01:00
Keith Edmunds
45a22c47d0 Implement intro timing and countdown 2024-05-24 14:27:00 +01:00
Keith Edmunds
fb5376cdf0 WIP time to vocals: record button icons 2024-05-24 14:25:54 +01:00
Keith Edmunds
01916c4adc WIP: time to vocals: preview +- working 2024-05-24 14:25:51 +01:00
Keith Edmunds
1d33622c13 WIP: time to vocals 2024-05-24 14:20:59 +01:00
Keith Edmunds
b86f0ac1b7 Unifty format of VLC config variables 2024-05-24 14:19:16 +01:00
Keith Edmunds
3871da048d Reimplement issue #223 fix 2024-05-24 13:36:06 +01:00
Keith Edmunds
bd125f2a1a Fix typo getting play time in tick_1000ms 2024-05-23 19:19:11 +01:00
Keith Edmunds
36e28ca4f4 Fix bug storing open tabs 2024-05-22 16:52:35 +01:00
Keith Edmunds
71e76e02d1 Merge changes from master 2024-05-22 15:45:21 +01:00
Keith Edmunds
fc4129994b Fix move rows bug
Fixes #244
2024-05-22 15:26:57 +01:00
Keith Edmunds
a7932adfe4 Add more protection against hitting return twice 2024-05-10 12:48:39 +01:00
Keith Edmunds
f825304de4 Update track times after rescan
Fixes #242
2024-05-10 12:06:04 +01:00
Keith Edmunds
37e450ab22 Bugfix replace files
Fixes #243
2024-05-10 11:48:40 +01:00
Keith Edmunds
4a5fe74a9f Save open state of playlists 2024-05-06 12:25:04 +01:00
Keith Edmunds
d050fa0d84 Fix file importing
Imported track wasn't moved to destination
2024-05-06 12:12:56 +01:00