I'm really happy that you are here & reading this. If you are interested in contributing to this project and make it larger then this section will help you get started.
This project needs more contributors. And any beginner C++ programmer will be able to contribute to this project.
-
In case you need more details, you can mail me at this address [email protected]
-
If you want to test the tool or use it in your system before contributing here is the installation guide for different OS
-
My goal is to add all the ffmpeg options to this tool with easy instructions so that users can generate commands without any hassle or knowing.
-
You can contribute by submitting issues, or by fixing a problem/bugs or by implementing new features by submitting Pull requests.
-
As the project is based on ffmpeg commands generation you should have a basic knowledge about ffmpeg CLI and how to create commands for converting videos with different options using ffmpeg command line interface. You can get to know about ffmpeg from here.
- Submit the issue here
Read more from the Having Issues section.
-
Open a new GitHub Pull Request with your patch or code changes.
-
Describe the problem and your fix/code changes clearly. Include the relevant issue number if applicable.
You can also contribute to the project by adding documentation as the projects documentation or wiki is not completed yet. So if you are interested to enhance the documentation then you are most welcome.
Just creare a pull request with your documentation changes or you can email me too.
If you really want to contribute to this project, the best way is to get familiar with the project structure and files and then implement the features needed. So much features are left to add to this project as ffmpeg is a very powerfull tool and has so many commands to offer. So you can add any ffmpeg video converting command generation feature to this project.
-
First you need to know some basics of ffmpeg CLI commands so that you can use those commands in this project to add features
-
Get familiar with the source code and project structure so that is becomes easier for you to implement the features. The project structure & source code is described here
-
Add your code/feature by forking this project first & then write your codes & then submit the changes by creating a pull request
-
Further discussions can be done with me using my mail address provided above.
Please follow the projects coding conventions (below) and make sure all of your commits are atomic (one feature per commit).
Always write a clear log message for your commits. One-line messages are fine for small changes, but bigger changes should look like this:
$ git commit -m "A brief summary of the commit
>
> A paragraph describing what changed and its impact."
When writing codes for this project you will need to test the code first before submitting. To test the code you will need to compile the code. I have made it easier to compile the whole source code with all the header files using Makefile. So first ensure that make is installed in your system.
The build process is described in the projects readme in the installation section.
The project uses a .clang-format
file to maintain the coding convention across the whole project for all the cpp & hpp (source & header) files.
After you finished your code writing for this project always try to format your code/file using the projects .clang-format
file.
To do so -
-
Install clang-format in you system & set up. Know more about clang-format
-
Use this command to use this projects clang format file while formatting the source code
clang-format -style=file -i your-changed-file.cpp
Thanks for your contibution
Abir-Tx