свободно ffmpeg, как установить продолжительность для потока? - PullRequest
0 голосов
/ 22 сентября 2019

Я хотел бы конвертировать и передавать аудиофайл в формат .wav.На самом деле, целью потоковой передачи является предотвращение локального сохранения файла перед его отправкой клиенту.Я делаю следующий код с использованием fluent-ffmpeg:

ffmpeg(audioFilePath)
  .noVideo()
  .toFormat('wav')
  .writeToStream(response, { end: true });

Это создаст файл .wav с длительностью 0

. При сохранении файла работает как ожидалось:

ffmpeg(audioFilePath)
  .noVideo()
  .toFormat('wav')
  .save('audiofile.wav');

Т.е. продолжительность правильная.Я попытался связать команду с помощью .setDuration('1234'), но она также не работала.

Это ограничение для того факта, что я передаю файл (и, следовательно, ffmpeg отправляет неизвестную длительность 0), или я делаючто-то не так?

[Изменить] На аналогичный вопрос был дан ответ здесь

"FFmpeg не может обновить метаданные в файлах WAVE, когда выходные данные записываются поверхнедосягаемый протокол как труба ".однако можно вручную установить продолжительность?

...