Recording Studio

FFmpeg – record, convert and stream audio and video

FFmpeg is a hyper fast real time audio/video encoder, a streaming server and a generic audio and video file converter. It is a command line tool that is composed of a collection of free software / open source libraries. It includes libavcodec, an audio/video codec library used by several other projects, and libavformat, an audio/video container mux and demux library.

It can grab from a standard Video4Linux video source and convert it into several file formats based on DCT/motion compensation encoding. Sound is compressed in MPEG audio layer 2 or using an AC3 compatible stream.

The command line interface is designed to be intuitive, in the sense that FFmpeg tries to figure out all parameters that can possibly be derived automatically. You usually only have to specify the target bitrate you want.

FFmpeg can also convert from any sample rate to any other, and resize video on the fly with a high quality polyphase filter.

The FFmpeg project consists of two main parts: FFmpeg, which encodes and decodes the multimedia streams, and FFserver, which provides streams via HTTP for various multimedia clients. FFMpeg is completely portable since it does not rely on proprietary DLLs. Other components of the project include ffplay (a simple media player), and various libraries.

Key Features

  • Grabs video and audio.
  • Can also grab the X11 display.
  • Convert from one audio and video format to another format in real time.
  • FFserver:
    • Streams several formats at several bit rates and resolutions simultaneously.
    • Handles thousands of concurrent users.
    • Uses the HTTP protocol to be compatible with all major players including Icecast (aka mpg123, xmms, winamp), MTV (to play streaming MPEG video and audio), “Real” compatible players and Windows Media Player.
    • Allows time shifting of live streams.
    • One FFserver instance can stream from multiple live encoding sources and/or multiple static files.
  • FFprobe tool.
  • VorbisComment writing for FLAC, Ogg FLAC and Ogg Speex files.

Website: ffmpeg.org
Support: Documentation
Developer: FFmpeg team
License: GNU General Public License v2.0

FFmpeg

FFmpeg is written in C and Assembly. Learn C with our recommended free books and free tutorials. Learn Assembly with our recommended free books and free tutorials.


Related Software

Screen Recorders
OBS StudioComplete video recording and live streaming solution
GPU Screen RecorderMinimizes system performance by recording using the GPU only
vokoscreenNGEasy to use screencast creator
KoohaSimple GTK-based app to “elegantly record your screen”
screenkeyScreencasting software inspired by Screenflick
FFmpegRecord, convert and stream audio and video
SimpleScreenRecorderEasy to use screencast creator
CasterrScreen recorder, editor and video browse
Green RecorderSimple screen recorder supporting Xorg and Wayland
Blue RecorderSimple screen recorder written in Rust
wl-screenrecwlroots screen recording, featuring hardware encoding
peekAnimated GIF screen recorder
wayfarerScreen recorder for GNOME / Wayland / Pipewire
ScreenStudioStreaming made easy
KazamWell designed and easy to use interface

Read our verdict in the software roundup.

Video Converters
HandBrakeMultithreaded cross-platform media transcoding application
FFmpegMultimedia player, server and encoder
Shutter EncoderGraphical frontend to FFmpeg with editing features
FastFlixGUI for H.264, HEVC and AV1 hardware and software encoding
VideomassCross-platform GUI for FFmpeg and youtube-dl
avconvPart of libav-tools; fork of FFmpeg
VLCVdeo player which also converts multimedia to different formats
mpvCross-platform media player with video encoding support
MEncoderMEncoder is included in MPlayer
FFQueueGraphical frontend to FFmpeg written in C++
transcodeUtility to encode raw video/audio streams
MystiQGUI for FFmpeg, a powerful media converter
CianoEasy way to convert your multimedia files to the most popular formats
ConstrictCompress videos to target sizes

Read our verdict in the software roundup.

DVD Tools
VLCMultimedia player and streamer
mpvMedia player supporting a wide range of formats
HandBrakeMultithreaded DVD to MPEG-4 converter
QMPlay2Qt based video and audio player
fre:acAudio converter and CD ripper
Subtitle EditEditor for video subtitles
AsunderAudio CD ripper and encoder
FFmpegRecord, convert and stream audio and video
gripcd-player and cd-ripper for the Gnome desktop
Shutter EncoderAccessible and efficient video converter tool
cyanripFully featured CD ripping software
GCstarManages a movie collection
GaupolSubtitle editor for text-based subtitle files
DataCrowMedia cataloger and media organiser software
Tellico Collection manager for KDE
MPlayerVery popular movie player
DVDStylerDVD authoring application
AegisubTool for creating and modifying subtitles
Q DVD-AuthorGUI frontend for dvdauthor and related tools
whipperPython CD-DA ripper
DVDAuthorGenerate a DVD-Video movie from a valid MPEG-2 stream

Read our verdict in the software roundup.


Best Free and Open Source Software Explore our comprehensive directory of recommended free and open source software. Our carefully curated collection spans every major software category.

This directory is part of our ongoing series of informative articles for Linux enthusiasts. It features hundreds of detailed reviews, along with open source alternatives to proprietary solutions from major corporations such as Google, Microsoft, Apple, Adobe, IBM, Cisco, Oracle, and Autodesk.

You’ll also find interesting projects to try, hardware coverage, free programming books and tutorials, and much more.

Discovered a useful open source Linux program that we haven’t covered yet? Let us know by completing this form.
Subscribe
Notify of
guest
4 Comments
Oldest
Newest Most Voted
Inline Feedbacks
View all comments
Mark
Mark
7 years ago

Total pants, no longer makes videos that play on my DVD or TV.

Craig
Craig
7 years ago

Sounds like your system is broken.

UUUnicorn
UUUnicorn
1 year ago

WinFF is a great GUI (“Graphical User Interface”) front-end for FFmpeg.

If that fails, then try HandBrake.

Last edited 1 year ago by UUUnicorn