- Notifications
You must be signed in to change notification settings - Fork62
A lightweight and fast short video processing library based on node.js
License
drawcall/FFCreatorLite
Folders and files
| Name | Name | Last commit message | Last commit date | |
|---|---|---|---|---|
Repository files navigation
FFCreatorLite is a lightweight and flexible short video processing library based onNode.js. You only need to add some pictures, music or video clips, you can use it to quickly create a very exciting video album.
Nowadays, short video is an increasingly popular form of media communication. Likeweishi andtiktok is full of all kinds of wonderful short videos. So how to make users visually create video clips on the web easily and quickly. Or based on pictures Text content, dynamic batch generation of short videos is a technical problem.
FFCreatorLite is developed based on the famous video processing libraryFFmpeg, and splicing the complicated and tedious command line parameters ofFFmpeg (this is not so easy), usingFFmpeg various filters and features to realize animation And video clips and generate the final movie. So its processing speed is beyond your imagination, even faster thanFFCreator.
For more introduction, please seehere
- Based on node.js development, it is very simple to use and easy to expand and develop.
- Only rely on
FFmpeg, easy to install, cross-platform, and low requirements for machine configuration. - The video processing speed is extremely fast, a 5-7 minute video only takes 1 minute.
- Supports multiple elements such as pictures, sounds, video clips, and text.
- Support for adding music and animation to the live stream before launching.
- The latest version supports more than 30 scene transition animations.
- Contains 70% animation effects of
animate.css, which can convert css animation to video.
npminstallffcreatorlite--save
Note: To run the preceding commands, Node.js and npm must be installed.
const{ FFCreatorCenter, FFScene, FFImage, FFText, FFCreator}=require('ffcreatorlite');// create creator instanceconstcreator=newFFCreator({ cacheDir, outputDir,width:600,height:400,log:true,});// create FFSceneconstscene1=newFFScene();constscene2=newFFScene();scene1.setBgColor('#ff0000');scene2.setBgColor('#b33771');// scene1constfbg=newFFImage({path:bg1});scene1.addChild(fbg);constfimg1=newFFImage({path:img1,x:300,y:60});fimg1.addEffect('moveInRight',1.5,1.2);scene1.addChild(fimg1);consttext=newFFText({text:'这是第一屏', font,x:100,y:100});text.setColor('#ffffff');text.setBackgroundColor('#000000');text.addEffect('fadeIn',1,1);scene1.addChild(text);scene1.setDuration(8);creator.addChild(scene1);// scene2constfbg2=newFFImage({path:bg2});scene2.addChild(fbg2);// logoconstflogo=newFFImage({path:logo,x:100,y:100});flogo.addEffect('moveInUpBack',1.2,0.3);scene2.addChild(flogo);scene2.setDuration(4);creator.addChild(scene2);creator.addAudio(audio);creator.start();creator.on('progress',e=>{console.log(colors.yellow(`FFCreatorLite progress:${(e.percent*100)>>0}%`));});creator.on('complete',e=>{console.log(colors.magenta(`FFCreatorLite completed: \n USEAGE:${e.useage} \n PATH:${e.output} `),);});
The latest version of ffcreatorlite already supports scene transition animation, which means you can use it to make cool effects like ffcreator.
Of course you need to install4.3.0 above version of ffmpeg. Because here is theXfade filter to achieve Animation.
// https://trac.ffmpeg.org/wiki/Xfadescene.setTransition('diagtl',1.5);
FFCreator is not an enhanced version ofFFCreatorLite, in fact the two implementation principles are completely different. When you need to process a lot of video without special cool transition animation,FFCreatorLite may be a better choice.
FFCreatorusesopenglto process graphics rendering andshaderpost-processing to generate transition effects, and finally usesFFmpegto synthesize the video.FFCreatorLitecompletely usesFFmpegfilters and other effects, splicingFFmpegcommands to generate animations and videos.
FFCreatorLite has 70% of the functions ofFFCreator, but in some cases the processing speed is faster and the installation is extremely simple. So please choose which version of the library to use according to the actual usage.
The default registration point ofFFCreatorLite is the upper left corner and cannot be modified, while the default registration point ofFFCreator is the center and can be modified.
For a more detailed tutorial, please checkhere
FFCreatorLite depends onFFmpeg>=0.9 and above. Please set FFmpeg as a global variable, otherwise you need to use setFFmpegPath to add FFmpeg native path. (The ffmpeg for windows users is probably not in your%PATH, so you must set%FFMPEG_PATH)
FFCreator.setFFmpegPath('...');
Of course, you can also compile ffmpeg on your machine, please seehttps://trac.ffmpeg.org/wiki/CompilationGuide/Ubuntu.
For more
FFmpegtutorials, please viewhttps://trac.ffmpeg.org/wiki
- How to Install and Use FFmpeg on CentOShttps://linuxize.com/post/how-to-install-ffmpeg-on-centos-7/
- How to Install FFmpeg on Debianhttps://linuxize.com/post/how-to-install-ffmpeg-on-debian-9/
- How to Install FFmpeg on Windowshttp://blog.gregzaal.com/how-to-install-ffmpeg-on-windows/
- How to Install FFmpeg on Mac OSXhttps://trac.ffmpeg.org/wiki/CompilationGuide/macOS
You are very welcome to join us in developingFFCreatorLite, if you want to contribute code, please readhere.
About
A lightweight and fast short video processing library based on node.js
Topics
Resources
License
Contributing
Uh oh!
There was an error while loading.Please reload this page.
Stars
Watchers
Forks
Packages0
Contributors3
Uh oh!
There was an error while loading.Please reload this page.













































