QtlMovie is a simple specialized graphical front-end to FFmpeg and other media tools.
- QtlMovie user and builder documentation (English, Français)
- Source code documentation (generated using Doxygen)
- Project page on SourceForge
- Source code archives
- Latest Windows binary installer for 32-bit and 64-bit systems.
- Latest Mac OS X binary installer
- Report a bug
- Discussion forum
What is QtlMovie ?
QtlMovie is a simple specialized graphical front-end to FFmpeg and other free media tools using the Qt framework.
Why another front-end to FFmpeg? So many different ones already exist.
QtlMovie is NOT a general-purpose GUI for FFmpeg, interfacing its rich set of options and filters.
Instead, QtlMovie only performs a few repetitive specialized tasks which proved to be difficult or boring with other tools. In short, I developed QtlMovie primarily for my own usage to automate tasks which took me too long and I now share it.
So, what is QtlMovie for?
It is mostly the answer to the following needs:
- I am a movie fan and want to watch movies exclusively in original audio version with subtitles when necessary.
- I record many movies from TV (digital TV and MPEG-converted analog recordings) as well as collect other movie files and I want to create DVD's out of them.
- I own an iPad and many DVD's and want to watch those DVD's on the iPad.
Sounds reasonable? Yes. Or at least I thought so.
Sounds simple? Not so simple in fact. Before developing QtlMovie, I needed to use a dozen different tools depending on the type of input and output files: MediaInfo (always a good starting point), AviDemux, ProjectX, VirtualDub, MediaCoder, DVD Decrypter, VOB Merge, DeeVeeDee, Nero, several more or less functional subtitle conversion tools and, for desperate cases, a good old long ffmpeg command line. None of these tools could be removed from the toolbox. There was always a specific case (mostly because of the subtitle formats hell) where one of them was necessary. See some more on that below. Note that I only mention free tools. There may be some magic and expensive tools which do what I want but I am simply not interested.
This is why I decided to unify all of them behind a common GUI which interfaces (but does not hide) ffmpeg and other command line tools. FFmpeg is the key tool which does most of the work. But additional tools are added to extract Teletext subtitles or create DVD file systems and media. A log window shows the generated commands and their output. To understand why QtlMovie can be useful, the log window shows no less than 10 successive commands to generate a DVD media from a TV recording containing Teletext subtitles.
Basically, the main workflow of QtlMovie is:
- Open a movie file of any type, including a DVD file structure, with any combination and formats of audio, video and subtitles.
- Five clicks: 1. select video track, 2. select audio track, 3. select subtitle track, 4. select output type, 5. start. All selections use simple radio buttons in one single window (no complex menus, no drop-down or combo boxes, etc.)
- Everything is automated to create either a DVD (MPEG file, ISO image or burn the media, your choice) or an iPad/iPhone/Android/AVI movie file. The resulting output media is basic and simple: one video track with hardcoded subtitles, one audio track, that's all (no menu, no track selection).
Why is this complicated ?
Interestingly, although the most complex technical task, the video and audio transcoding was never a problem. Most tools handle that gracefully, mostly thanks to back-ends like FFmpeg and its libraries.
Here is a list of some technical difficulties I had to face. No traditional tool can manage them all, I needed a combination of tools. And when a solution existed in a tool, I needed to select multiple options and make some calculation each time. I hate to repeat the same or (worse) similar operations when a technical solution could exist to automate them.
- Video size, display and pixel aspect ratio. Example: Considering an input video size 1280x536 with pixel aspect ratio 1:1. How do you resize and pad it to obtain a DVD video with size 720x576 and display aspect ratio 16:9? Need some simple but boring math every time.
- Identification of audio and subtitle language and properties (standard, forced, for hearing/visual impaired). VOB files from DVD do not carry this information. You have to analyze the .IFO file for that. With some tools, the properties are not clearly reported, making the selection decision more difficult.
- Text subtitles. Which format: SRT, SSA, ASS. Which source: a stream in the input file or an external file. How to burn them in the video. AviDemux is mostly OK but unreliable, its support for SRT vs. ASS keeps changing with versions and I faced repeated and irritating crashes.
- Teletext subtitles (common in DTTV and IP-TV). The only GUI which can extract them is ProjectX. But it works only on MPEG transport stream files and its GUI is complex and counter-intuitive.
- Bitmap subtitles (DVD and DVB) position and size. The video and subtitle frames have sometimes distinct sizes and overlaying them needs some manual adjustments (after hours of nervous breakdown the first time, trying to figure out why those damn subtitles did not show up).
- DVD subtitle colors. The VOB files from a DVD contains bitmap subtitles without any color information. The result is ugly and barely watchable subtitles in the video. You have to dig into the .IFO file in the DVD to extract the color palette for the subtitle.
- And other difficulties I have now forgotten.
Well, enough is enough. I just wanted to open a file, 5 clicks, go for a coffee (or a "magret de canard") and later collect my DVD media or movie file. So I developed QtlMovie.
QtlMovie is a not a sophisticated tool. It does not manipulate video and other complex bitstreams. It simply synchronizes the work of other excellent and complex tools such as FFmpeg. But "simply" is exactly the word that was missing and I hope that QtlMovie will bring it to you.
QtlMovie is open source and released under the BSD license. It is developed in C++ using Qt 5 and should work on any platform supporting Qt 5.2 or higher, ffmpeg and the other media tools. QtlMovie is primarily developed on Windows but is also tested on Mac and Linux.
QtlMovie is available on SourceForge. The source code is available both as one archive file per version and as a git repository. Please see the list of useful links at the top of this page.
Binary installers for 32-bit and 64-bit Windows are available. These binary installers come pre-packaged with recent versions of ffmpeg, ffprobe, dvdauthor, telxcc, ccextractor, mkisofs and growisofs so that they are self-sufficient for end users.
Binary installers for Mac OS X (64-bit Intel Mac's) are available. Just like their Windows counter-parts, these binary installers come pre-packaged with recent versions of ffmpeg, ffprobe, dvdauthor, telxcc, ccextractor, mkisofs and growisofs so that they are self-sufficient for end users.
RPM and DEB packages are available for Fedora and Ubuntu Linux (64 bits). Following the Linux package management usual rules, this package only installs QtlMovie. The media tools packages shall be installed independently.
Please report problems using the ticket tracker. A discussion forum is available. Anonymous postings are enabled but will be moderated first. Registered users of SourceForge may post without restriction.