Add flac2ogg

This commit is contained in:
Lucas 2019-12-17 13:08:39 +00:00
parent e29482a373
commit be2b7edc4c
2 changed files with 56 additions and 2 deletions

View File

@ -14,8 +14,8 @@
PREFIX = $(HOME)
MANPREFIX = $(PREFIX)/local
BIN = ZZZ browser credentials fetch imgresize invidious rfcopen \
screenshot sekrit tor-browser w3m-copy-link xsekrit
BIN = ZZZ browser credentials fetch flac2ogg imgresize invidious \
rfcopen screenshot sekrit tor-browser w3m-copy-link xsekrit
MAN1 = sekrit.1
all: $(BIN)

54
bin/flac2ogg.sh Normal file
View File

@ -0,0 +1,54 @@
#!/bin/sh
# flac2ogg
# Written in 2019 by Lucas
# CC0 1.0 Universal/Public domain - No rights reserved
#
# To the extent possible under law, the author(s) have dedicated all
# copyright and related and neighboring rights to this software to the
# public domain worldwide. This software is distributed without any
# warranty. You should have received a copy of the CC0 Public Domain
# Dedication along with this software. If not, see
# <http://creativecommons.org/publicdomain/zero/1.0/>.
err()
{
printf "%s: %s\n" "${0##*/}" "$*" >&2
exit 1
}
convert_to_ogg()
{
ogg=${1%.flac}.ogg
printf "Converting %s ..." "$1"
oggenc -Q -q 7 -o "$ogg" "$1"
rc=$?
if [ $rc -ne 0 ]; then
echo " FAIL"
else
echo " OK"
fi
return $rc
}
rc=0
if [ -t 0 ]; then
if [ $# -gt 0 ]; then
for flac in "$@"; do
[ -f "$1" ] || err "Missing file \"$1\"."
convert_to_ogg "$flac" || rc=$?
done
else
for flac in *.flac; do
[ -f "$flac" ] || continue
convert_to_ogg "$flac" || rc=$?
done
fi
else
while read -r flac; do
[ -f "$1" ] || err "Missing file \"$1\"."
convert_to_ogg "$flac" || rc=$?
done
fi
exit $rc