Avidemux
From Wikipedia, the free encyclopedia
Avidemux | |
A screenshot of Avidemux version 2.1 |
|
Maintainer: | MEAN <fixounet-at-free.fr> |
Stable release: | 2.3.0 (December 2, 2006) [+/-] |
Preview release: | none (none) [+/-] |
OS: | Cross-platform |
Use: | Video editor |
License: | GPL |
Website: | www.avidemux.org |
Avidemux is a free open-source program designed for multi-purpose video editing and processing. Downloads, documentation, and other features can be found at avidemux.org. It is written in C/C++, using the GTK+ graphics toolkit, and therefore is truly a platform independent, universal video processing program. It is available for almost all distributions of Linux that are capable of compiling C/C++, GTK+ and the SpiderMonkey ECMAScript scripting engine. A Win32 version of this program is also available for Windows users, as well as Mac OS X, FreeBSD, NetBSD and OpenBSD ports and packages. The program has also been successfully run under Solaris, though no official packages or binaries exist for it. The program can be run in 64bit operating systems that are non-Windows and non-Macintosh based.
Contents |
[edit] Comparison
Some people think of Avidemux as VirtualDub (or VirtualDubMod) for Linux, and it is generally reputed by many Linux and Windows users alike to be the closest thing available. While it cannot do everything that VirtualDub can, Avidemux can do many things that its Windows-only counterpart cannot. In the most recent version, Avidemux boasts such features as support for OGM and MP4 files natively, direct read input for various types of MPEGs, and many other video formats and containers. It offers MPEG editing and requantization. It also has built-in subtitle handling. Avidemux primarily uses its GUI to perform tasks. This means that it is capable of doing many things that non-GUI users would otherwise have to do using command line tools such as MEncoder or Transcode. In the very latest SVN developer's versions, multi-threading has been implemented for use some of the video codec encoding.
[edit] Features
The straightforward user interface is designed for convenience and speed with simple operations. Features include WYSIWYG cutting, appending, filters and re-encoding into various formats. Some of the filters were ported from MPlayer and Avisynth. Avidemux can also mux and demux audio streams into and out of video files, either through re-encoding or using a direct copy mode.
An integral and important part of the design of the program is its project system, which uses the SpiderMonkey ECMAScript scripting engine. Whole projects with all options, configurations, selections, and preferences can be saved into a project file. Like VirtualDub's vcf scripting capabilities, Avidemux has advanced scripting available for it both in its GUI and command line modes. It also supports a non-project system just like VirtualDub, where you can simply create all your configurations and save the video directly without making a project file.
A project queue system has been recently added to the program and is currently being expanded upon. Avidemux has built-in subtitle processing, both for Optical Character Recognition (OCR) to soft subtitle formats (vobsub sub, ass and srt) and various hard subtitle VobSub capabilities. While it is primarily a GUI program, Avidemux can also be run from and through the command line (which can also be used for batch processing and debugging). The very latest feature additions include the mp4 container support and various degrees of multi-threading.
[edit] New Additions
The development branch of Avidemux in the SVN repository has seen a lot of changes and features added to the experimental version. The following list various new features that have been added or are still under development but are currently in the most recent versions of the program.
- Avisynth 2.5 experimental integration using emulation
- Multithreading - see the section on this page for more information
- MP3
- New Audio Filtering:
- Mono - rewritten with bug fixes
- Stereo - rewritten with bug fixes
- Stereo+Surround
- Stereo+Center
- Stereo+Center+Surround
- Stereo+Front Stereo+Rear
- 5 channels
- 5.1 channels
- Dolby Surround
- Dolby Prologic
- Dolby Prologic 2
- Ogg Vorbis
- VBR Ogg Vorbis audio
- x264 GUI codec configure update
[edit] Multithreading
The most recent developers version of Avidemux, available in the SVN repositories, has begun implementing multithreading. Not all of Avidemux has been multithreaded yet, but more is under development. The feature is available for activation within the GUI, though the more style and view tweaking is scheduled before an official release. Multi-threading can be turned on or off depending on preference.
Multithreading has been implemented in the following areas of Avidemux (some partially through lavcodec):
- Encoding
- Decoding
- MPEG-1, MPEG-2 (using libavcodec)
- MPEG-4 (SP/ASP, using libavcodec)
[edit] Credits & Information
Avidemux was written from scratch, but additional code from FFmpeg, MPlayer, Transcode, Avisynth, DVD2AVI and other projects has been used on occasion as well. Nonetheless it is a completely stand alone program that does not require any other programs to read, decode, or encode other than itself. The built-in libavcodec library from the FFmpeg project is used for decoding and encoding of various audio and video formats such as MPEG-4 ASP. The primary (though not the only) Avidemux programmer is a person known as Mean, who often frequents the Avidemux forums. The Avidemux project is open to user input and many suggestions from its users have already been implemented as fully-written features.
[edit] Supported Input Formats
File formats:
Video codecs:
- DV
- FFV1
- H.263
- H.264
- HuffYUV
- MPEG-1, MPEG-2
- MPEG-4 Simple Profile/Advanced Simple Profile (Supported FourCCs: DIVX, DX50, XVID, FMP4, M4S2)
- MJPEG
- MSMPEG-4 v. 2 (FourCC DIV3)
- Raw RGB
- SVQ3
- VP3
- WMV 2
Audio codecs:
[edit] Supported Output Formats
File formats:
- AVI (single or dual audio tracks)
- Images (BMP, JPEG)
- MPEG (VCD/SVCD/DVD compatible & separate)
- OGM
- MP4
Video codecs:
- FFV1
- H.263
- H.264 (using x264)
- HuffYUV
- MPEG-1, MPEG-2
- MPEG-4 (SP/ASP, using FFmpeg MPEG-4 or XviD)
- MJPEG
- Snow
Audio codecs:
[edit] Future plans
Avidemux is still in development and is always working on adding new features or making current ones better. The current feature being worked on is switching the Integer type audio handling to Float type. Also heavy redesign and improvement of the audio system is happening at the same time.
Several features to be addressed in the near future:
- Adding Multi-threading:
- Decorrelate decoder/processing/encoding
- Setup lavcodec encoding/decoding using multiple threads
- OCR Subtitle correction features
- Full integration of Avisynth when version 3.0 is released
- Ogg Theora input for OGM/Ogg (after some file header clarification)
- Add VFR as an option for encoding
- Rework the program to allow for encoding without GUI usage
- WMV9 support, also know as WMV3
- ASF support
Proposed (but unconfirmed or undecided) features:
- Soft-subtitle output support for the OGM, MP4 and eventual MKV containers
- Soft-subtitle demuxing or extract capabilities
- MKV container input and output support - This feature will be implemented when libavformat from FFmpeg gets better support for it.
- Flac codec audio input and output support
- Better multi-track audio support (especially for OGM, MP4 and eventual MKV containers)
- Custom settings or pre-sets for codec configuration
- Customizable hotkeys setup
- Save Project and Load Project buttons on the main toolbar
- Save Project and Load Project hotkeys
- Job List queue enhancements and improvements
- Add support for SSA subtitle format
- Change of OGM extension to Ogg, since OGM is no longer being updated
- Ogg Theora output for OGM/Ogg
[edit] Version numbers differences
The current stable version of Avidemux is 2.3.0. The next stable version was slated to be 2.4.0, which is the same as 2.3.0, but with 3 user interfaces: GTK+, shell and Qt 4.