#!/bin/bash

set -ex

cd /d/sound/mb
find . -name \*.flac -print | while read f ; do
    ff="$(dirname "$f")/$(basename "$f" .flac)"
    if test -f "$ff.opus" ; then continue; fi
    if test -f "$ff.n.opus" ; then echo SKIP $ff; continue; fi

    touch "$ff.n.opus"
    touch "$ff.$$.n.opus"
    lizardfs setgoal smurf "$ff.$$.n.opus"
    br=$(file $f | sed -nre 's/.*, ([0-9][0-9*])(\.[0-9]*)? kHz,.*/\1/p')
    if [ -n "$br" ] && [ $br -gt 48 ] ; then
        flac -s -d "$f" -o - | sox -t wav - -r 48000 -t wav -
    else
        flac -s -d "$f" -o -
    fi | opusenc --bitrate=140 - "$ff.$$.n.opus"
    lizardfs setgoal smurf2 "$ff.$$.n.opus"
    mv "$ff.$$.n.opus" "$ff.opus"
    rm "$ff.n.opus"
done
