diff --git a/.gitignore b/.gitignore index 0b531c7db05713c9016533ac057376e8a061e62d..b1db3f291983c114d523b100e9c3ae149e731c23 100644 --- a/.gitignore +++ b/.gitignore @@ -1,17 +1,6 @@ -* -!.gitignore -!README.md -!requirements.txt -!extractWav.sh -!extractAss.sh -!karaUtils.py -!autokara.py -!assUtils.py -!process_train_data.sh -!cnn_prepare_data.py -!cnn_train.py -!*/cnn/segment.py -!*/cnn/music_processor.py -!*/cnn/model.py -!rosa/*.py -media/ \ No newline at end of file +__pycache__/ +data/ +env/ +media/ +models/ + diff --git a/autokara.py b/autokara.py index c62053a37ca55ae6803f47f29606f6df79bbd07b..033aaf421fd735d61eeefa4b47ef3c1e72bc04d4 100644 --- a/autokara.py +++ b/autokara.py @@ -6,7 +6,7 @@ import shlex from pathlib import Path from assUtils import AssWriter -from cnn.segment import segment +from cnn_madmom.segment import segment parser = argparse.ArgumentParser(description='AutoKara - Automatic karaoke timing tool') @@ -42,7 +42,7 @@ else: print("Identifying syl starts...") onsets = segment(vocals_file) -syls = [[t, ''] for t in onsets] +syls = [[t, 'la'] for t in onsets] print("Syls found, writing ASS file...") writer = AssWriter() diff --git a/cnn_madmom/segment.py b/cnn_madmom/segment.py new file mode 100644 index 0000000000000000000000000000000000000000..c3acd9e16e4c6d983564309d6f293334ce898df0 --- /dev/null +++ b/cnn_madmom/segment.py @@ -0,0 +1,20 @@ +import madmom +import numpy as np +import sys +import matplotlib.pyplot as plt +from scipy.ndimage.filters import maximum_filter + + +def segment(songfile): + + cnn = madmom.features.onsets.CNNOnsetProcessor() + proc = madmom.features.onsets.OnsetPeakPickingProcessor(threshold=0.4, smooth=5, delay=0, fps=100) + + activation_function = cnn(songfile, num_channels=1) + #onsets = proc(activation_function) + + onsets = madmom.features.onsets.peak_picking(activation_function, 0.4, smooth=10)/100 + + print(onsets) + + return onsets \ No newline at end of file