SkillAgentSearch skills...

Ffpb

A progress bar for ffmpeg. Yay !

Install / Use

/learn @althonos/Ffpb
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

ffpb |stars|

.. |stars| image:: https://img.shields.io/github/stars/althonos/ffpb.svg?style=social&maxAge=3600&label=Star :target: https://github.com/althonos/ffpb/stargazers

Not smart. Not comprehensive. Not guaranteed to work.

|Source| |PyPI| |AppVeyor| |Format| |License| |Changelog| |Downloads|

.. |PyPI| image:: https://img.shields.io/pypi/v/ffpb.svg?style=flat-square&maxAge=300 :target: https://pypi.python.org/pypi/ffpb

.. |AppVeyor| image:: https://img.shields.io/appveyor/build/althonos/ffpb.svg?style=flat-square&maxAge=3600 :target: https://ci.appveyor.com/project/althonos/ffpb

.. |Format| image:: https://img.shields.io/pypi/format/ffpb.svg?style=flat-square&maxAge=300 :target: https://pypi.python.org/pypi/ffpb

.. |Versions| image:: https://img.shields.io/pypi/pyversions/ffpb.svg?style=flat-square&maxAge=300 :target: https://travis-ci.org/althonos/ffpb/

.. |License| image:: https://img.shields.io/pypi/l/ffpb.svg?style=flat-square&maxAge=300 :target: https://choosealicense.com/licenses/mit/

.. |Source| image:: https://img.shields.io/badge/source-GitHub-303030.svg?maxAge=3600&style=flat-square :target: https://github.com/althonos/ffpb/

.. |Changelog| image:: https://img.shields.io/badge/keep%20a-changelog-8A0707.svg?maxAge=2678400&style=flat-square :target: http://keepachangelog.com/

.. |Downloads| image:: https://img.shields.io/badge/dynamic/json?style=flat-square&color=303f9f&maxAge=86400&label=downloads&query=%24.total_downloads&url=https%3A%2F%2Fapi.pepy.tech%2Fapi%2Fprojects%2Fffpb :target: https://pepy.tech/project/ffpb

ffpb is an FFmpeg progress formatter. It will attempt to display a nice progress bar in the output, based on the raw ffmpeg output, as well as an adaptative ETA timer.

Showcase

.. image:: https://github.com/althonos/ffpb/raw/master/static/showcase.v1.gif

(yes, my laptop can't encode shit)

Usage

ffpb is is not even self-aware. Any argument given to the ffpb command is transparently given to the ffmpeg binary on your system, without any form of validation. So if you know how to use the FFmpeg CLI, you know how to use ffpb !

Using as a library ^^^^^^^^^^^^^^^^^^

ffpb can be used as a library: use the ffpb.main function:

.. code:: python

ffpb.main(argv=None, stream=sys.stderr, encoding=None, tqdm=tqdm):

argv The arguments to pass to ffmpeg, as an argument list. stream The stream to which to write the progress bar and the output messages. encoding The encoding of the terminal, used to decode the ffmpeg output. Defaults to locale.getpreferredencoding(), or UTF-8 is locales are not available. tqdm The progress bar factory to use. A subclass of tqdm.tqdm <https://tqdm.github.io/docs/tqdm/#tqdm-objects>_ is expected. Check althonos/ffpb#19 <https://github.com/althonos/ffpb/issues/19>_ to see how you can use this to wrap ffpb in your own UI.

Installation

Install from PyPI:

.. code:: console

$ pip install --user ffpb

Alternatively, download a development version from the GitHub master branch:

.. code:: console

$ pip install https://github.com/althonos/ffpb/archive/master.zip

Or if you use an Arch-based distro, download from the AUR__

.. __: https://aur.archlinux.org/packages/ffpb/

View on GitHub
GitHub Stars317
CategoryDevelopment
Updated3d ago
Forks31

Languages

Python

Security Score

100/100

Audited on Mar 28, 2026

No findings