#!/bin/bash # doc import_dir { # # DESCRIPTION # import_dir - Imports consolidated tracks into git repository # # USAGE # import_dir # # DEPENDENCIES src/gen_mtag # # } import_dir() { local GIT_DIR="${1}" local TRACK_DIR="${2}" local trackList=($(find ${TRACK_DIR} -maxdepth 1 -name *.flac -print '%p\t')) # Join trackList _msg EXEC "Generating joined image" gen_image "${TRACK_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 "${TRACK_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};" local COUNT=$(( ${COUNT} + 1 )) done # Generate cuesheet gen_cue "${TRACK_DIR}" $(printf '%s\t' ${metadata_trackList[@]}) > "${GIT_DIR}/${IMAGEID}.cue" # Generate tags file gen_mtag $(printf '%s\t' ${metadata_trackList[@]}) > "${GIT_DIR}/${IMAGEID}.tags" }