view makeWebAudio.sh @ 312:8bc92e044e0a

Move tune and first line inclusion code into macros. Also use tune title, not name, as hyperlink targets. This removes the need to pass the name into the macros.
author Jim Hague <jim.hague@acm.org>
date Fri, 12 Jul 2013 11:36:14 +0100
parents 0ef955669a9a
children e5f59f0e7dd5
line wrap: on
line source

#!/bin/bash
#
# Make audio required for the website but not for the book.
# They go into web/<book>.
#

if [ $# != 1 ]; then
    echo "Usage: makeWebAudio.sh <book dir name>"
    exit 1
fi

dir=`pwd`

booke=$dir/$1
builddir=$dir/web/$1

mkdir -p $builddir

# Now, for each tune, make the tune bitmap and sound. Do this to temp
# files and rename into place to make updates as atomic as possible.
find $booke -name "*.abc" | sort |
    while read filename
    do
        name=`basename $filename .abc`
        tmpname=${name}.tmp

        abc2midi $filename -o $builddir/${tmpname}.mid
        timidity -Ow -o $builddir/${tmpname}.wav $builddir/${tmpname}.mid
        lame --quiet $builddir/${tmpname}.wav $builddir/${tmpname}.mp3

        mv $builddir/${tmpname}.mid $builddir/${name}.mid
        mv $builddir/${tmpname}.mp3 $builddir/${name}.mp3
        rm $builddir/${tmpname}.wav
    done