aboutsummaryrefslogtreecommitdiff
path: root/audio.sh
diff options
context:
space:
mode:
Diffstat (limited to 'audio.sh')
-rwxr-xr-xaudio.sh22
1 files changed, 21 insertions, 1 deletions
diff --git a/audio.sh b/audio.sh
index c5d3c06..8001fb1 100755
--- a/audio.sh
+++ b/audio.sh
@@ -23,6 +23,20 @@ play() {
ffplay -f "$format" -ar "$sample_rate" -b:a 128K -ch_layout mono -autoexit -
}
+to_mp3() {
+ id="$1"
+ format="$2"
+ sample_rate="$3"
+ ffmpeg -y -f "$format" -ar "$sample_rate" -ch_layout mono -i - -b:a 192k "media/$id.mp3"
+}
+
+to_mp4() {
+ id="$1"
+ format="$2"
+ sample_rate="$3"
+ ffmpeg -y -f "$format" -ar "$sample_rate" -ch_layout mono -i - -b:a 192k -c:v copy -c:a aac "media/$id.mp4"
+}
+
track_info() {
local audio_id="$1"
db "SELECT format, sample_rate FROM audio_tracks WHERE id='$audio_id'"
@@ -37,4 +51,10 @@ sample_rate="$(echo "$data" | cut -f2)"
echo "-----------$data--------"
-samples "$AUDIO_TRACK_ID" | to_pcm | play "$format" "$sample_rate"
+samples "$AUDIO_TRACK_ID" | to_pcm | \
+ tee >(to_mp3 "$AUDIO_TRACK_ID" "$format" "$sample_rate") | \
+ tee >(to_mp4 "$AUDIO_TRACK_ID" "$format" "$sample_rate") | \
+ play "$format" "$sample_rate"
+
+echo ""
+echo "Done"