From 1c9c82cc1cb82c99de73dd66345cfa9f95f30b78 Mon Sep 17 00:00:00 2001 From: Keith Edmunds Date: Sun, 2 May 2021 16:11:08 +0100 Subject: [PATCH] Add rescan_database function --- app/songdb.py | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) diff --git a/app/songdb.py b/app/songdb.py index 408a8af..feed1b3 100755 --- a/app/songdb.py +++ b/app/songdb.py @@ -123,6 +123,21 @@ def fade_point(audio_segment, fade_threshold=Config.DBFS_FADE, return int(trim_ms) +def rescan_database(): + + tracks = Tracks.get_all_tracks() + total_tracks = len(tracks) + track_count = 0 + for track in tracks: + track_count += 1 + print(f"Track {track_count} of {total_tracks}") + audio = get_audio_segment(track.path) + track.start_gap = leading_silence(audio) + track.fade_at = fade_point(audio) + track.silence_at = trailing_silence(audio) + session.commit() + + def trailing_silence(audio_segment, silence_threshold=-50.0, chunk_size=Config.AUDIO_SEGMENT_CHUNK_SIZE): return fade_point(audio_segment, silence_threshold, chunk_size) @@ -156,5 +171,5 @@ def update_db(): add_path_to_db(path) -if __name__ == '__main__': +if __name__ == '__main__' and '__file__' in globals(): main()