fix: use consistent filenames for audio extraction
This commit is contained in:
@@ -83,19 +83,19 @@ func (e *Encoder) Transcode(input string, job *types.Job, metadata *types.Metada
|
|||||||
func (e *Encoder) extractAudio(input, dir string) ([]string, error) {
|
func (e *Encoder) extractAudio(input, dir string) ([]string, error) {
|
||||||
cmd := exec.Command(e.ffmpegPath, "-i", input,
|
cmd := exec.Command(e.ffmpegPath, "-i", input,
|
||||||
"-vn", "-c:a", "pcm_s16le", "-ar", "48000",
|
"-vn", "-c:a", "pcm_s16le", "-ar", "48000",
|
||||||
"-f", "wav", filepath.Join(dir, "audio_%d.wav"))
|
"-f", "wav", filepath.Join(dir, "audio.wav"))
|
||||||
if out, err := cmd.CombinedOutput(); err != nil {
|
if out, err := cmd.CombinedOutput(); err != nil {
|
||||||
return nil, fmt.Errorf("ffmpeg extract: %s %w", out, err)
|
return nil, fmt.Errorf("ffmpeg extract: %s %w", out, err)
|
||||||
}
|
}
|
||||||
|
|
||||||
matches, _ := filepath.Glob(filepath.Join(dir, "audio_*.wav"))
|
matches, _ := filepath.Glob(filepath.Join(dir, "audio.wav"))
|
||||||
return matches, nil
|
return matches, nil
|
||||||
}
|
}
|
||||||
|
|
||||||
func (e *Encoder) encodeOpus(wavs []string, dir string) ([]string, error) {
|
func (e *Encoder) encodeOpus(wavs []string, dir string) ([]string, error) {
|
||||||
var opusFiles []string
|
var opusFiles []string
|
||||||
for _, wav := range wavs {
|
for _, wav := range wavs {
|
||||||
out := strings.TrimSuffix(wav, ".wav") + ".opus"
|
out := strings.Replace(wav, ".wav", ".opus", 1)
|
||||||
cmd := exec.Command(e.opusencPath, "--bitrate", "128k", wav, out)
|
cmd := exec.Command(e.opusencPath, "--bitrate", "128k", wav, out)
|
||||||
if out, err := cmd.CombinedOutput(); err != nil {
|
if out, err := cmd.CombinedOutput(); err != nil {
|
||||||
return nil, fmt.Errorf("opusenc: %s %w", out, err)
|
return nil, fmt.Errorf("opusenc: %s %w", out, err)
|
||||||
|
|||||||
Reference in New Issue
Block a user