ffl
github.com/malashin/fflite
go get github.com/malashin/fflite
ffl

github.com/malashin/fflite

fflite is FFmpeg wrapper for minimalistic progress visualization while keeping the flexability of CLI.

by Anton Malashin

v0.0.0-20211025105627-800da9826522 (see all)License:GPL-3.0
go get github.com/malashin/fflite
Readme

fflite version: v0.1.58 license: GPL v3

fflite is FFmpeg wrapper for minimalistic progress visualization while keeping the flexibility of CLI.

Apart from less obtrusive CLI output there is added functionality:

  • Estimated encoding time and progress percentage is shown during encoding.
  • Batch execution if .txt filelist, "list:file1 file2 \"file 3\"" or a glob pattern is passed as input file, only one is allowed (fflite -i *.mp4).
  • Once the first input file is specified input and output files can be named using [prefix?]old::new pattern. This will take the first input name and replace old string with the new string. If ? is present, everything before ? will be used as a prefix for new filenames (fflite -i film_video.mp4 -i folder?video.mp4::audio.ac3).
  • Input ranges can be passed to -filter_complex. [0-1:1] becomes [0:1][1:1]; [0:0-1] becomes [0:0][0:1]; [0-1:2-3] becomes [0:2][0:3][1:2][1:3] and so on. Example: -filter_complex [0:1-6]amerge=inputs=6[a] becomes -filter_complex [0:1][0:2][0:3][0:4][0:5][0:6]amerge=inputs=6[a].
  • Command presets for less typing.
  • Error logging.
  • Crop detection mode (fflite crop[crop_number:crop_limit] -i input_file). If fflite crop[digit] is passed it will be treated as crop_limit if digit is less then one, crop_number otherwise.
  • BEEP sound at the end of encoding process.
  • ANSI escape sequences (colors) are supported in Windows terminals (cmd, PowerShell). go-ansi

Same syntax as FFmpeg:

fflite [fflite_option] [global_options] {[input_file_options] -i input_file} ... {[output_file_options] output_file} ...

FFmpeg documentation

It is currently made for personal use and some settings, like presets, are still hardcoded.

Installation

go get -u github.com/malashin/fflite
  • $GOPATH/bin must be added to your $PATH environment variable.
  • You need to have FFmpeg installed and accessable from $PATH environment variable.

Sample output of fflite:

fflite

Same file in FFmpeg

ffmpeg

GitHub Stars

11

LAST COMMIT

7mos ago

MAINTAINERS

0

CONTRIBUTORS

2

OPEN ISSUES

10

OPEN PRs

0
VersionTagPublished
v0.0.0-20211025105627-800da9826522
7mos ago
v0.0.0-20201127174302-4b88b618d925
1yr ago
No alternatives found
No tutorials found
Add a tutorial