Uncaught Ошибка: spawn D: \ Users \ ... \ ffmpeg.exe ENOENT в Process.ChildProcess._handle.onexit - PullRequest
0 голосов
/ 15 апреля 2020

Я пытаюсь использовать ffmpeg в электронном проекте, который я сделал: yarn add ffmpeg-static yarn add fluent-ffmpeg

В файле, где я пытаюсь его использовать, у меня есть:

import ffmpeg from 'fluent-ffmpeg';
import ffmpegStatic from 'ffmpeg-static';

В методе, который вызывает ffmpeg, у меня есть:

ffmpeg.setFfmpegPath(ffmpegStatic);
ffmpeg(path)
  .audioCodec('aac')
  .videoCodec('h264')
  .videoBitrate(8192) // 8 MB = 1024 * 8 KB
  .outputOptions([
    '-y',
    'movflags','faststart'
  ])
  .output('temp.mp4')
  .on('start', () => console.log('starting'))
  .on('stderr', (err,stdout,stderr) => {
    console.log('Cannot Process Video' + err.message);
  })
  .on('progress', progress => {
    console.log(progress.percent);
  })
  .on('end', (stdout, stderr) => {
    fs.readFile('temp.mp4', (error, data) => {
      console.log(error);

      if (error) throw error;
        const filename = path.replace(/^.*[\\\/]/, '');
        return new File([data], filename);
      });
  })
  .run();

Когда метод, который содержит этот код, я получаю следующее исключение:

events.js:187 Uncaught Error: spawn D:\Users\Michael\Documents\desktopapp\app\ffmpeg.exe ENOENT
    at Process.ChildProcess._handle.onexit (internal/child_process.js:264)
    at onErrorNT (internal/child_process.js:456)
    at processTicksAndRejections (internal/process/task_queues.js:80)

Если I console.log(ffmpegStatic) это выходные данные D:\Users\Michael\Documents\desktopapp\app\ffmpeg.exe

Если я посмотрю в этой папке, я не вижу ffmpeg.exe. Как я могу это исправить?

...