Handheld devices like mobile phones, PDAs and ultra-mobile PCs are getting more and more ubiquitous, as almost everyone has in their pocket a device that can do multimedia playback at various levels of quality. The problem that most owners face is getting the audio or video content that they want to enjoy into the proper format for the device. Some of them require specific video and audio codecs, fixed bitrates and framerates, while others are more lax in their requirements, but they still represent a problem for less tech-inclined users. Simply, you can't hope that a mobile phone will play DVD-quality media off of its memory card, or at least not yet. The way to go: transcoding the media into a format that is appropriate for the device.
In Linux, the options are both feature-rich and with limited graphical interfaces, you have powerful media manipulation utilities, but most of them require typing very long and intricate commands into a terminal, then waiting (in some cases quite a long time) for the transcoded file to be completed, so you can check if the settings you gave were correct. So, what would you prefer, something along the lines of "ffmpeg -i infile.avi -deinterlace -vcodec xvid -ac 2 -ar 44100 -acodec libmp3lame -r 23.97 -s 320x176 -vb 512k -ab 128k -f avi Outfile.avi"
or a nice graphical user interface to get all those command switches just right? Most people I know would choose the second option, and for them WinFF was created.
Don't worry, although that name might make you think about Windows software, WinFF is quite platform-independent, with packages available for Ubuntu, Debian, Redhat and Fedora, openSUSE and even PCLinuxOS, to name only the operating systems that are GNU/Linux-based. If your distribution isn't among the ones that have WinFF packages, or you just want to compile it yourself, you can also get the source code, licensed under the GNU General Public License v3. Also, you will need FFmpeg installed, but if you are using a package manager that resolves dependencies automatically you don't need to worry about that.
WinFF's interface is simple, you won't see an overwhelming amount of buttons or options upon starting it up, which is the way the GUI should be if it is supposed to address regular users. Along the top of the window there are six buttons, which let you add, remove, preview and convert your files, and another one that gives access to the more advanced settings. Under the file list there is a drop-down menu that sets the destination file type, with some nice options like the "Audio", function that extracts the sound track from a video file and even handles music file conversion, some device-specific formats, like "Blackberry" and "Google Android", and even an option to create Rockbox-compatible video files. Under this selector there is another drop-down box that handles the presets for the chosen format; the options contained in it differ depending on what you selected before. If your device already has a preset, all you need to do is add your files to the list, pick an output folder and just press "Convert".
If you have a specific device that isn't supported by WinFF directly, or you want to customize the transcoding parameters, click the "Options" button. Another pane will be displayed, allowing you to manually set the bitrates, framerate and samplerate, video size, whether 2-pass encoding or deinterlacing will be performed, and it even allows you to supply command line parameters that will be fed to FFmpeg when the coding process is started.
But before you start fiddling around with video sizes and bitrates, take a look at WinFF's forums or wiki; someone might have already created a preset that suits your needs. If it comes in a file, you just need to open it using "File -> Import Preset" and it will appear in the list, no other configuration needed. Complex preset modifications can be done from the "Edit Presets" window, in which you can change existing presets or create your own, and even export them so you can share them with others.
You have a lot of files and you don't want to wait around the computer until it finishes? No problem, check the "Shutdown on Finish" option and your computer will automatically power off then all the files have been converted. Also, you might want to have a look at WinFF's preferences, since enabling multithreading and increasing the priority might save a lot of time when encoding.
The documentation describes all the options that this application has, but it doesn't go into media encoding details, which I find correct since it isn't supposed to be a multimedia processing guide, but a piece of software's documentation. There are screenshots that detail every window, and if you want to do a little bit more research you can even access the forums or project wiki. The Good:
It's simple to use and the details are abstracted from the user by employing conversion presets. The Bad:
It lacks more advanced features, like encoding preview or video cropping. The Truth:
WinFF is an FFmpeg front-end that strives to make life as easy as possible for users that have simple media encoding needs, and it largely achieves its goals.