2016-11-24 7 views
3

Im пытается создать потоковое видео с использованием phantomjs, которые создают скриншоты с URL-адреса, тогда он будет транслировать кадры в ffmpeg, чтобы он мог используйте его для потоковой передачи видео в URL-адрес rtmp. вот что я пытался до сих пор:ffmpeg throwing «Выходной файл # 0 не содержит никакого потока» при попытке сделать слайд-шоу из изображений

phantomjs runner.js | ffmpeg -f image2pipe -vcodec png -c:a copy -c:v libx264 -f flv rtmp://localhost/mystream 

и вот скрипт:

var page = require('webpage').create(); 
page.viewportSize = { width: 640, height: 480 }; 

page.open('http://www.goodboydigital.com/pixijs/examples/12-2/', function() { 
    setInterval(function() { 
    page.render('/dev/stdout', { format: "png" }); 
    }, 25); 
}); 

и это выход:

ffmpeg version 3.0.2 Copyright (c) 2000-2016 the FFmpeg developers 
    built with Apple LLVM version 7.3.0 (clang-703.0.29) 
    configuration: --prefix=/usr/local/Cellar/ffmpeg/3.0.2 --enable-shared --enable-pthreads --enable-gpl --enable-version3 --enable-hardcoded-tables --enable-avresample --cc=clang --host-cflags= --host-ldflags= --enable-opencl --enable-libx264 --enable-libmp3lame --enable-libxvid --enable-vda 
    libavutil  55. 17.103/55. 17.103 
    libavcodec  57. 24.102/57. 24.102 
    libavformat 57. 25.100/57. 25.100 
    libavdevice 57. 0.101/57. 0.101 
    libavfilter  6. 31.100/6. 31.100 
    libavresample 3. 0. 0/3. 0. 0 
    libswscale  4. 0.100/4. 0.100 
    libswresample 2. 0.101/2. 0.101 
    libpostproc 54. 0.100/54. 0.100 
Output #0, flv, to 'rtmp://localhost/mystream': 
Output file #0 does not contain any stream 
+0

[Создание фильма из URL с помощью FFmpeg и phantomjs] (http://stackoverflow.com/questions/40325667/making-a-movie-from-the- url-using-ffmpeg-and-phantomjs) –

+0

Каков фактический вопрос? Какую проблему вы пытаетесь решить? – LordNeckbeard

+0

@LordNeckbeard Я хочу создать видеоролик из скриншотов, а затем опубликовать их на сервере rtmp. в основном phantomjs выполнил процесс снятия скриншотов и отнес их к '/ dev/stdout', поэтому я могу получить их с помощью ffmpeg. Я попробовал команду выше, и она не работала –

ответ

5

сечас ваше командование не определяет какой-либо ввод, поэтому использовать

phantomjs runner.js | ffmpeg -f image2pipe -i pipe:.png -c:a copy -c:v libx264 -f flv rtmp://localhost/mystream 

Нет аудиовхода, поэтому установка аудиокодека бессмысленна. Если ваш вывод нуждается в аудиопоток, используйте

phantomjs runner.js | ffmpeg -f image2pipe -i pipe:.png -f lavfi -i anullsrc -c:v libx264 -c:a aac -f flv rtmp://localhost/mystream 
+1

Да, это именно то, что мне нужно. Спасибо .. Может мне нужно использовать jpg вместо png? –

+1

'pipe: .jpg' ваш вход jpeg. – Mulvya