ocarina/tests/library/gen_library.sh
Anna Schumaker e314248f10 library: Find tags for each track
This is each song's track number, play count, and anything else specific
to a single file.  After updating, save all the changed databases.

Signed-off-by: Anna Schumaker <schumaker.anna@gmail.com>
2014-04-06 19:56:55 -04:00

81 lines
1.3 KiB
Bash
Executable File

#!/bin/bash
#
# Copyright 2013 (c) Anna Schumaker.
#
# Generate a test library in /tmp
#
declare -A genres
genres["Album 0"]=Test
genres["Album 1"]=Trial
genres["Album 2"]=Tryout
declare -A dates
dates["Album 0"]=2011
dates["Album 1"]=2012
dates["Album 2"]=2013
#
# gen_tracks() $library $artist $album
#
function gen_tracks()
{
library="library/$1"
artist="Artist $2"
album="Album $3"
mkdir -p "/tmp/$library/$artist/$album"
for i in $(seq 10); do
track="Track $i"
let remainder=$i%4
out="/tmp/$library/$artist/$album/$i - $track.ogg"
if [ -f "$out" ]; then
continue
fi
case $remainder in
0) OGG="1.ogg" ;;
1) OGG="10.ogg" ;;
2) OGG="60.ogg" ;;
3) OGG="600.ogg" ;;
esac
vorbiscomment -a -q -t "ARTIST=$artist" -t "ALBUM=$album" \
-t "GENRE=${genres[$album]}" -t "DATE=${dates[$album]}" \
-t "TRACKNUMBER=$i" -t "TITLE=$track" "tests/library/$OGG" \
"/tmp/$library/$artist/$album/$i - $track.ogg"
done
}
#
# gen_albums() $library $artist
#
function gen_albums()
{
for i in $(seq 0 2); do
gen_tracks $1 $2 $i
done
}
#
# gen_artists() $library
#
function gen_artists()
{
let begin=$1*5
let end=$begin+4
for i in $(seq $begin $end); do
gen_albums $1 $i
done
}
for i in $(seq 0 4); do
echo "Generating library: $i"
gen_artists $i
done
touch /tmp/library/file