dam/src/import_dir

50 lines
1.5 KiB
Text
Raw Normal View History

#!/bin/bash
# doc import_dir {
#
# DESCRIPTION
# import_dir - Imports consolidated tracks into git repository
#
# USAGE
# import_dir </path/to/git/dir> </path/to/track/dir>
#
2018-05-18 16:37:07 -07:00
# DEPENDENCIES src/gen_mtag
#
# }
import_dir() {
local GIT_DIR="${1}"
local TRACK_DIR="${2}"
2018-05-18 16:37:07 -07:00
local trackList=($(find ${TRACK_DIR} -maxdepth 1 -name *.flac -print '%p\t'))
# Join trackList
_msg EXEC "Generating joined image"
gen_image "${TARGET_DIR}" $(printf "%s\t" ${trackList[@]})
local EXIT="$?"
[[ $? -eq 0 ]] && _msg OK || { _msg WARN; return 1; }
# Generates IMAGEID
for track in ${trackList[@]}; do
local TRACK_EXT="$(cut -d '.' -f2)"
[[ "${TRACK_EXT}" != "FLAC" ]] && SOURCE="${TRACK_EXT}"
done
local IMAGEID="SHA256-${SOURCE}--$(sha256sum "${TARGET_DIR}/joined.flac")"
# Generate metadata_trackList
local COUNT=0
for track in ${trackList[@]}; do
local TRACKID=$(metaflac --list --block-number=0 "${track}" | awk 'BEGIN{FS=": "}{if($1==" MD5 signature") {print $2}}')
local DURATION=$(soxi -D "${track}")
local metadata_trackList[${COUNT}]="$(print_meta_flac "${track}");DURATION=${DURATION};IMAGEID=${IMAGEID};TRACKID=${TRACKID};"
2018-05-18 16:37:07 -07:00
local COUNT=$(( ${COUNT} + 1 ))
done
# Generate cuesheet
gen_cue $(printf '%s\t' ${metadata_trackList[@]}) > "${GIT_DIR}/${IMAGEID}.cue"
2018-05-18 16:37:07 -07:00
# Generate tags file
gen_mtag $(printf '%s\t' ${metadata_trackList[@]}) > "${GIT_DIR}/${IMAGEID}.tags"
}