From 42ba285948ee4861ec50cd7c50da99caa9677378 Mon Sep 17 00:00:00 2001 From: Arthur Jamet Date: Wed, 11 Mar 2026 19:30:48 +0000 Subject: [PATCH] Transcoder: Audio: set ffmpeg bitrate flag according to requested quality --- transcoder/src/audiostream.go | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git a/transcoder/src/audiostream.go b/transcoder/src/audiostream.go index 24f561a4..e8bbbde4 100644 --- a/transcoder/src/audiostream.go +++ b/transcoder/src/audiostream.go @@ -7,10 +7,11 @@ import ( type AudioStream struct { Stream - index uint32 + index uint32 + quality AudioQuality } -func (t *Transcoder) NewAudioStream(file *FileStream, idx uint32) (*AudioStream, error) { +func (t *Transcoder) NewAudioStream(file *FileStream, idx uint32, quality AudioQuality) (*AudioStream, error) { log.Printf("Creating a audio stream %d for %s", idx, file.Info.Path) keyframes, err := t.metadataService.GetKeyframes(file.Info, false, idx) @@ -20,12 +21,13 @@ func (t *Transcoder) NewAudioStream(file *FileStream, idx uint32) (*AudioStream, ret := new(AudioStream) ret.index = idx + ret.quality = quality NewStream(file, keyframes, ret, &ret.Stream) return ret, nil } func (as *AudioStream) getOutPath(encoder_id int) string { - return fmt.Sprintf("%s/segment-a%d-%d-%%d.ts", as.file.Out, as.index, encoder_id) + return fmt.Sprintf("%s/segment-a%d-%d-%d-%%d.ts", as.file.Out, as.quality, as.index, encoder_id) } func (as *AudioStream) getFlags() Flags { @@ -38,7 +40,6 @@ func (as *AudioStream) getTranscodeArgs(segments string) []string { "-c:a", "aac", // TODO: Support 5.1 audio streams. "-ac", "2", - // TODO: Support multi audio qualities. - "-b:a", "128k", + "-b:a", string(as.quality), } }