2013-08-11 3 views
2

Я пытаюсь преобразовать видео mp4 в mp3 с модулем fluent-ffmpeg узла. Вот мой код:node.js: fluent-ffmpeg бросает ошибку при преобразовании mp4 в mp3

ffmpeg = require 'fluent-ffmpeg' 

mp4 = '/Users/jashua/Desktop/video.mp4' 
mp3 = '/Users/jashua/Desktop/audio.mp3' 

proc = new ffmpeg({source:mp4}) 
    .toFormat('mp3') 
    .setFfMpegPath('/Applications/ffmpeg') 
    .saveToFile(mp3, (stdout, stderr)-> 
      return console.log stderr if err? 
      return console.log 'done' 
     ) 

На запустить его, я получаю следующее сообщение об ошибке:

TypeError: Cannot call method 'saveToFile' of undefined 
at Object.<anonymous> (/Users/jashua/Desktop/ytdl.coffee:10:12, <js>:18:60) 
    at Object.<anonymous> (/Users/jashua/Desktop/ytdl.coffee:1:1, <js>:25:4) 
    at Module._compile (module.js:456:26) 

Любые идеи?

Решение:

proc = new ffmpeg({source:mp4}) 
    proc.setFfMpegPath('/Applications/ffmpeg') 
    proc.saveToFile(mp3, (stdout, stderr)-> 
       return console.log stderr if err? 
       return console.log 'done' 
      ) 
    enter code here 

ответ

2

системный вызов мицелий заканчивается ENOENT ошибки, если программа не может быть найдена. В этом случае, ffmpeg не найден, так что вы должны сказать ему, где он:

proc = new ffmpeg({source:mp4}) 
    .setFfmpegPath("wherever ffmpeg is installed ") <-- this is the new line 
    .toFormat('mp3') 
    .saveToFile(mp3, (stdout, stderr)-> 
      return console.log stderr if err? 
      return console.log 'done' 
     ) 

Более подробную информацию можно получить in a related issue

+0

@tldr вы можете поместить строку '.setFfmpegPath' перед' .toFormat'? – SheetJS

+0

Спасибо за ответ! Я обновил свой вопрос, чтобы показать, что сработало для меня. – tldr

+0

обратите внимание: '.setFfmpegPath' не связан с цепью, так как он не возвращает' this'. –

3

Для любого другого наступающем через это и переживает один и тот же вопрос, который я был .setFfmpegPath() требует полный путь, включая двоичный код, а не только каталог, в котором находится двоичный файл.

Смежные вопросы