Это меня сбивает с толку. Я использую ffmpeg для преобразования m4a
в wav
аудио. Когда я использую его с fluent-ffmpeg, выводимая mime будет audio/wave
, а когда я использую терминал, я получаю audio/wav
. Для точно таких же команд. Приложение, которое я пытаюсь воспроизвести в этих файлах, отклоняет мой файл audio/wave
.
Использование узла (приводит к аудио / волне):
const ffmpegPath = require('@ffmpeg-installer/ffmpeg')
const ffmpeg = require('fluent-ffmpeg');
ffmpeg()
.setFfmpegPath(ffmpegPath)
.input('source.m4a')
.outputOptions(['-ac 1','-ar 16000'])
.save('out.wav')
Использование терминала (приводит к аудио / wav ):
/same/path/to/static-ffmpeg-as-in-node-program/ffmpeg -i source.m4a -ac 1 -ar 16000 out.wav
У меня обе их кодировки: PCM S16 LE (s16l), 16 бит / сэмпл, моно и 16 кГц аудиофайлы с дискретизацией. Я пробовал добавлять другие флаги и получил одинаковые результаты для обоих сценариев ios: -vn -acodec pcm_s16le -ar 16000 -ac 1 -f wav
. Просто это не работает. И я понятия не имею, почему.
Я также пробовал не использовать fluent-ffmpeg
, а использовать spawn
и получил тот же файл audio/wave
.
Любое понимание?