2013-04-28 3 views
0

Я пытаюсь использовать модуль node-fluent-ffmpeg (https://github.com/schaermu/node-fluent-ffmpeg), чтобы перекодировать и передавать видеофайл. Поскольку я нахожусь на машине под Windows, я сначала загрузил FFMpeg с официального сайта (http://ffmpeg.zeranoe.com/builds/). Затем я извлек файлы в папку C:/FFmpeg и добавил путь к системному пути (точнее, в папку bin). Я проверил, работал ли FFmpeg, введя в командной строке: ffmpeg -version. И это дало удачный ответ.с использованием node-fluent-ffmpeg для перекодирования с ffmpeg на windows не работает

После этого я пошел вперед и скопировал/изменили следующий код из модуля (https://github.com/schaermu/node-fluent-ffmpeg/blob/master/examples/express-stream.js):

app.get('/video/:filename', function(req, res) { 
res.contentType('avi'); 
console.log('Setting up stream') 

var stream = 'c:/temp/' + req.params.filename 
var proc = new ffmpeg({ source: configfileResults.moviepath + req.params.filename, nolog: true, timeout: 120, }) 
    .usingPreset('divx') 
    .withAspect('4:3') 
    .withSize('640x480') 
    .writeToStream(res, function(retcode, error){ 
     if (!error){ 
      console.log('file has been converted succesfully',retcode); 
     }else{ 
      console.log('file conversion error',error); 
     } 
    }); 
}); 

Я правильно установки клиента с FlowPlayer и пытался заставить его работать, но ничего не происходит. Я проверил пульт и сказал:

file conversion error timeout 

После этого я увеличил таймаут, но каким-то образом, он начинает только тогда, когда я перезагрузите страницу. Но, конечно, немедленно останавливается из-за перезагрузки страницы. Нужно ли создавать отдельный сервер узла только для перекодирования файлов? Или есть какое-то событие, которое мне нужно вызвать?

Возможно, я пропустил что-то простое, но я не могу заставить его работать. Надеюсь, кто-то может указать, что я пропустил.

Благодаря

ответ

1

Я установил его с помощью videoJs вместо Flowplayer. Путь flowplayer был запущен не работает должным образом в моем случае. Поэтому я запускаю поток, а затем инициализирую videojs, чтобы показать поток. Это отлично работает.

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