FFmpeg is a free and open-source project consisting of a vast software suite of libraries and programs for handling video, audio, and other multimedia files and streams. At its core is the FFmpeg program itself, designed for command-line-based processing of video and audio files, and widely used for format transcoding, basic editing (trimming and concatenation), video scaling, video post-production effects, and standards compliance (SMPTE, ITU). FFmpeg includes libavcodec, an audio/video codec library used by many commercial and free software products, libavformat (Lavf), an audio/video container mux and demux library, and the core ffmpeg command line program for transcoding multimedia files. FFmpeg is published under the GNU Lesser General Public License 2.1+ or GNU General Public License 2+ (depending on which options are enabled).
The name of the project is inspired by the MPEG video standards group, together with "FF" for "fast forward". The logo uses a zigzag pattern that shows how MPEG video codecs handle entropy encoding.
FFmpeg is part of the workflow of hundreds of other software projects, and its libraries are a core part of software media players such as VLC, and has been included in core processing for YouTube and the iTunes inventory of files. Codecs for the encoding and/or decoding of most of all known audio and video file formats is included, making it highly useful for the transcoding of common and uncommon media files into a single common format.
With this, you can offload Adobe Premiere Pro encoding to an external server with ffmpeg installed.
- Install Debugmode FrameServer, Avisynth (32-bit), and ffmpeg (32-bit static build).
- Create an Avisynth script named frameserver.avs by opening a text editor and adding the following (assuming your working directory is c:\encode):
- Open Premiere, select your sequence, and choose "File > Export > Media" (or hit Ctrl+M)
- Under "Export Settings" choose "Format: DebugMode FrameServer" and make sure "Export Video" and "Export Audio" are both checked. Give your file the same name and path as shown in your Avisynth script (output.avi in c:\encode for this example).
- The FrameServer setup window will appear. Choose "Next".
- Now you can encode with ffmpeg using your Avisynth script as an input. Windows machine:
ffmpeg.exe -i frameserver.avs -f mpegts tcp://192.168.1.100:1776
ffmpeg -i tcp://192.168.1.63:1776?listen -threads 8 -b:v 1M -c:v libvpx-vp9 -c:a libvorbis output2.avi