diff --git a/split_tracks b/split_tracks index bf4ace6..c4ae682 100755 --- a/split_tracks +++ b/split_tracks @@ -77,9 +77,17 @@ type -P 'demucs' &>/dev/null || ( exit 1 ) -find "$src_library" -type f -name '*.flac' | while read -r file; do +find "$src_library" -type f -name '*.flac' | while read file; do if find "$work_dir" -type f &>/dev/null; then rm -rf "${work_dir}"/*; fi - echo $file + echo "file: $file" + if [[ ! -f "$file" ]]; then + file="${file//ome\/luket/\/home\/luket}" + echo "new file: $file" + if [[ ! -f "$file" ]]; then + echo 'shits broke' >&2 + exit 1 + fi + fi # file is full original path + filename src_dir="$(dirname "$file")" file_name="$(basename "$file")" @@ -101,6 +109,7 @@ find "$src_library" -type f -name '*.flac' | while read -r file; do tags[$tag_type]="$tag_val" done < <(metaflac --list --block-type=VORBIS_COMMENT "$file" | grep 'comment\[' | cut -d: -f2- | sed 's/^ //') + declare -a ensure ensure=( TRACKNUMBER TITLE DATE ALBUM ARTIST ) for tag_type in "${ensure[@]}"; do @@ -114,25 +123,25 @@ find "$src_library" -type f -name '*.flac' | while read -r file; do dest_dir['drums only']="${src_dir//flac/drums only}" dest_dir['no drums']="${src_dir//flac/no drums}" - demucs -n htdemucs_ft -o "$work_dir" --filename '{track} {stem}.{ext}' -j2 -d cpu --clip-mode rescale -- "$file" + demucs -n htdemucs_ft -o "$work_dir" --filename '{track} {stem}.{ext}' -j2 -d cpu --clip-mode rescale -- "$file" < /dev/tty unset files karaoke nodrums declare -a files karaoke nodrums readarray -t files < <(find "$work_dir" -type f -name '*.wav') unset vocal_track unset drum_track - for file in "${files[@]}"; do - echo file: "$file" - if ! grep -Eq 'drums\.wav$' <<< "$file"; then - nodrums+=("$file") + for cur_file in "${files[@]}"; do + echo current file: "$cur_file" + if ! grep -Eq 'drums\.wav$' <<< "$cur_file"; then + nodrums+=("$cur_file") else - drum_track="$file" + drum_track="$cur_file" fi - if ! grep -Eq 'vocals\.wav$' <<< "$file"; then - karaoke+=("$file") + if ! grep -Eq 'vocals\.wav$' <<< "$cur_file"; then + karaoke+=("$cur_file") else - vocal_track="$file" + vocal_track="$cur_file" fi done