ffmpeg命令行代码转换为fluent-ffmpeg

问题描述

我在理解流利的ffmpeg时遇到麻烦。

我正在尝试用Fluent-ffmpeg制作屏幕录像机,但是找不到正确的代码输出包括屏幕,摄像头和麦克风。

ffmpeg命令行代码成功运行。

enter image description here

ffmpeg代码

ffmpeg -ss 00:00:3 -thread_queue_size 4096 -f avfoundation -framerate 25 -i 1 -thread_queue_size 4096 -f avfoundation -framerate 25 -video_size 320x240 -i 0:0 -c:v libx264 -crf 18 -preset ultrafast -filter_complex 'overlay=main_w-overlay_w-10:main_h-overlay_h-10' -r 25 video.mp4

我的流利的ffmpeg代码:(我知道错误代码):

 command = ffmpeg("1")
        .videoCodec('libx264')
        .inputFPS(25)
        .size("1280x800")
        .inputFormat('avfoundation')  
         .input("0")
         .inputFormat('avfoundation')  
         .inputFPS(25)
          .size("320x240")
         .addOptions(["-filter_complex","overlay=main_w-overlay_w-10:main_h-overlay_h-10 "])
        
     
        .addOption([  "-preset","ultrafast"  ])
       .save(`/Users/macbook/Pictures${new Date().toLocaleString().split('-').join('').split(':').join('')}.mp4`)

我尝试了这个,但是也没有用:

     //.size("320x240")

   .complexFilter(['scale=320:240[rescaled]',{
   filter: 'overlay',options: { x: 'main_w-overlay_w-10',y: 'main_h-overlay_h-10' },inputs: ['[0:v]','[1:v]'],outputs: '[a1][a2]'
 }
],'[a1][a2]')

如果您向我展示正确的方法,我将非常高兴。如果您还添加麦克风,我会更开心。 非常感谢

解决方法

这不是我的问题的解决方案,但它解决了我的问题。 我使用spawn而不是ffmpeg解决了它。

我的代码:

    var args = [
        '-ss','00:00:3','-thread_queue_size','4096','-f','avfoundation','-framerate','25','-i','1','-video_size','320x240','0:0','-c:v','libx264','-crf','2','-preset','ultrafast','-filter_complex','overlay=main_w-overlay_w-10:main_h-overlay_h-10','-r','Dektop record'+Date().toString()+'.mp4'
    ];
 command = spawn(ffmpegPath,args);

相关问答

Selenium Web驱动程序和Java。元素在(x,y)点处不可单击。其...
Python-如何使用点“。” 访问字典成员?
Java 字符串是不可变的。到底是什么意思?
Java中的“ final”关键字如何工作?(我仍然可以修改对象。...
“loop:”在Java代码中。这是什么,为什么要编译?
java.lang.ClassNotFoundException:sun.jdbc.odbc.JdbcOdbc...