FrameGUI
A very user-friendly, open source video encoding tool consisting of AI tools and filters. Versions 2.0.0 and newer are based on the more comprehensive EncodeGUI application. FrameGUI has ~60,000 downloads and is growing by the thousands every week.
Source code and technical details: https://github.com/DaGooseYT/FrameGUI
Official video tutorials: https://youtube.com/playlist
Official website: https://encodegui.com
Background:
Initially on the DaGoose YouTube channel, I created video tutorials of software that were created by other developers. Although the viewers of the videos thought the tutorials were helpful, if a problem arised, there would simply be no way for me to diagnose the issue as the software was closed-source. Since I was unable to help viewers with problems, It was necessary for me to start developing my own software with similar tool sets as the closed-source software so that I can provide better support to users and have complete control over development.
In Spring 2021, I had taught myself the C# programming language as I wanted to use Windows Forms to develop the initial version of FrameGUI. I learned C# while I was developing FrameGUI.
Objectives:
The biggest priority for FrameGUI was to allow the user to create encoding configurations as quickly as possible and user-friendly. One pattern that I have discovered over the years is that open-source software generally isn't user-friendly or understandable to most. Only commercial software appeared to achieve a user-friendly interface, but usually came at a hefty financial cost. FrameGUI was designed with a user-friendly interface in mind, while still being free and open-source.
Initially, I wanted FrameGUI to have wide support across all different forms of computer hardware. SVPFlow, a frame interpolation plugin was used as it allows users to interpolate videos while being able to work fast even on some of the slowest computers. However, the SVPFlow plugin does not use AI and therefore the interpolation quality was not as great. The AI tools and filters were not introduced to FrameGUI until v2.0.0.
Challenges:
Learning C# and just object oriented languages in general were initially a struggle for me. Learning the general logic behind object oriented languages is really the biggest barrier from learning most programming languages. However, with dedication I picked up the concepts in some time.
Windows Forms is a dead user interface framework and therefore the FrameGUI interface did not appear well on high-resolution screens. In FrameGUI v2.0.0 and newer, the Qt framework was used which provides a much cleaner interface and support for high-resolution screens.
Other notes:
FrameGUI was never planned to be put back in development as I felt it would cannibalize the more comprehensive EncodeGUI encoding tool. Regardless, user demand convinced me to bring back FrameGUI and introduce a completely new layout and tools. Since v2.0.0 of FrameGUI, the layout has been designed to be even more user-friendly specifically for users who have no prior video encoding experience and want to take advantage of popular AI video filters. FrameGUI v2.0.0 and newer are built around the Qt framework using the C++ programming language.