From 5dcc8c18a1f0cedf1ce6772aafe6dbdec1ded03c Mon Sep 17 00:00:00 2001 From: Zoltan Puskas Date: Sat, 11 Feb 2023 23:25:41 -0800 Subject: [PATCH] feat(transcode): add opus 192 profile This diff adds the 192kbps OPUS transcoding profile named opus_audiophile. While 128kbps is already near transparent and good for most use cases, sometimes (or by some people) a bit more is preferred. These are typically for dedicated high quality wireless audio link (A2DP-bluetooth) enabled headphones and Hi-Fi adapters. The 160-192kbps range is considered to be transparent with very low chance of artifacts (only with very few and specific samples)[1][2]. [1] https://wiki.hydrogenaud.io/index.php?title=Opus [2] https://ceur-ws.org/Vol-2654/paper25.pdf --- transcode/transcode.go | 3 +++ 1 file changed, 3 insertions(+) diff --git a/transcode/transcode.go b/transcode/transcode.go index 1aed095..ac6c559 100644 --- a/transcode/transcode.go +++ b/transcode/transcode.go @@ -27,6 +27,7 @@ var UserProfiles = map[string]Profile{ "opus_128_car": Opus128RGLoud, "opus_128": Opus128, "opus_128_rg": Opus128RG, + "opus_192": Opus192, } // Store as simple strings, since we may let the user provide their own profiles soon @@ -41,6 +42,8 @@ var ( Opus128 = NewProfile("audio/ogg", "opus", 128, `ffmpeg -v 0 -i -ss -map 0:a:0 -vn -b:a -c:a libopus -vbr on -f opus -`) Opus128RG = NewProfile("audio/ogg", "opus", 128, `ffmpeg -v 0 -i -ss -map 0:a:0 -vn -b:a -c:a libopus -vbr on -af "volume=replaygain=track:replaygain_preamp=6dB:replaygain_noclip=0, alimiter=level=disabled, asidedata=mode=delete:type=REPLAYGAIN" -metadata replaygain_album_gain= -metadata replaygain_album_peak= -metadata replaygain_track_gain= -metadata replaygain_track_peak= -metadata r128_album_gain= -metadata r128_track_gain= -f opus -`) Opus128RGLoud = NewProfile("audio/ogg", "opus", 128, `ffmpeg -v 0 -i -ss -map 0:a:0 -vn -b:a -c:a libopus -vbr on -af "aresample=96000:resampler=soxr, volume=replaygain=track:replaygain_preamp=15dB:replaygain_noclip=0, alimiter=level=disabled, asidedata=mode=delete:type=REPLAYGAIN" -metadata replaygain_album_gain= -metadata replaygain_album_peak= -metadata replaygain_track_gain= -metadata replaygain_track_peak= -metadata r128_album_gain= -metadata r128_track_gain= -f opus -`) + + Opus192 = NewProfile("audio/ogg", "opus", 192, `ffmpeg -v 0 -i -ss -map 0:a:0 -vn -b:a -c:a libopus -vbr on -f opus -`) ) type BitRate uint // kilobits/s