FFMPEG-Coder: Simplifying Video Conversion with FFMPEG
Tags: tooling, ffmpeg, cpp
Published: 2023-09-11 14:28:43

## Introduction
Video conversion with FFMPEG can be a daunting task, especially for newcomers to the world of command-line tools. To address this challenge, I'm excited to introduce **FFMPEG-Coder**, a versatile and user-friendly CLI tool designed to simplify video conversion with FFMPEG. Whether you're a seasoned FFMPEG user looking for efficiency or new to the command line, FFMPEG-Coder aims to streamline your video conversion tasks.

## Links 
- [FFMPEG-Coder GitHub](https://github.com/Abir-Tx/ffmpeg-coder)
- [Sourceforge Link of FFMPEGC](https://sourceforge.net/projects/ffmpeg-coder/)


## Project Description
**FFMPEG-Coder** is a small, cross-platform command-line tool that bridges the gap between users and FFMPEG commands. Its primary mission is to make generating FFMPEG commands quick and effortless, eliminating the need to memorize or search for complex command-line options. This tool is compatible with Windows, Linux, and macOS, making it accessible to a wide range of users.

## Who is this Tool For?
**FFMPEG-Coder** is tailored for two primary user groups:

1. **Experienced FFMPEG Users**: For those who frequently work with FFMPEG but seek a more convenient way to generate complex conversion commands.

2. **Command Line Newcomers**: Even if you're new to the command line, FFMPEG-Coder provides a user-friendly interface to create FFMPEG commands effortlessly. Say goodbye to endless Google searches for the right commands.

## Features
Here's why you should consider using **FFMPEG-Coder** in your video conversion tasks:
- **Cross-Platform Support**: Enjoy a consistent experience on Windows, Linux, and macOS.
- **No External Dependencies**: **FFMPEG-Coder** is lightweight and doesn't rely on additional dependencies.
- **Speed and Efficiency**: Quickly generate FFMPEG commands tailored to your needs.
- **Options for h264 and libx265**: Customize your video conversion with ease.

## Installation Guide

### Windows
1. Download the Windows installer file from the [latest release](https://github.com/Abir-Tx/ffmpeg-coder/releases/latest) or [here](https://github.com/Abir-Tx/ffmpeg-coder/releases/download/v1.0/ffmpeg-coder_1.0_win.zip).
2. Extract the downloaded `ffmpeg-coder_1.0_win.zip`.
3. Navigate to the unzipped folder and double-click `ffmpeg-coder_1.0_win.exe`.
4. Follow the on-screen instructions to complete the installation.
5. After installation, search for **FFMPEG-Coder** in your start menu and open the tool.

### Linux (Debian-based distros)
#### Automatic One-Click Process
- Copy and paste the following script into your terminal:
```bash
wget https://raw.githubusercontent.com/Abir-Tx/ffmpeg-coder/main/scripts/debian_install.sh && chmod +x debian_install.sh &&./debian_install.sh
```

#### Arch Based Distros
Arch Linux users can easily install FFMPEG-Coder from the AUR with:

```bash
yay -S ffmpeg-coder
```

### Other Methods
You can also compile the tool from source or manually download it. Instructions on those methods are described on the main project readme [here](https://github.com/Abir-Tx/ffmpeg-coder#install-from-source)


## Using FFMPEG-Coder

FFMPEG-Coder is designed to simplify the process of generating FFMPEG commands for video conversion. Let's walk through some examples of how to use this tool effectively.

### Example 1: Basic Video Conversion

Suppose you have a video file named `input.mp4` that you want to convert to the popular H.264 format with a different output filename `output.mp4`. Here's how you can do it using FFMPEG-Coder:

1. Launch FFMPEG-Coder after installation.
2. In the main menu, select "Make Codes."
3. You will be prompted to choose the encoding method, then CRF and many mores.
4. Next, specify the desired output file name as `output` notice that the name should be without extension.
5. FFMPEG-Coder will now generate the FFMPEG command for you. Simply copy and paste it into your terminal to start the conversion.
6. Insert `-1` to exit the input loop

There is also a second option which is a preset named Quick Convert. I generally use it for quick works.

FFMPEG-Coder makes it effortless to perform this common video conversion task without needing to remember the intricate FFMPEG command syntax.

## Contribute

We welcome contributions to the FFMPEG-Coder project! Whether you're interested in fixing bugs, adding new features, improving documentation, or simply want to get involved, your contributions are highly valuable to the community.

[Read more](https://github.com/Abir-Tx/ffmpeg-coder/blob/main/docs/CONTRIBUTING.md) on how to contribute to this project.


Mushfiqur Rahman Abir
_Computer Science Engineer_