Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/clitic/ffpb-rs

A coloured progress bar for ffmpeg
https://github.com/clitic/ffpb-rs

ffmpeg ffmpeg-command progress-bar

Last synced: 2 months ago
JSON representation

A coloured progress bar for ffmpeg

Awesome Lists containing this project

README

        

# ffpb-rs

**Not smart. Not comprehensive. Not guaranteed to work.**

















ffpb-rs is rust implementation of [ffpb](https://github.com/althonos/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](https://raw.githubusercontent.com/clitic/ffpb-rs/main/images/showcase.gif)

## Installations

Visit [releases](https://github.com/clitic/ffpb-rs/releases) for prebuilt binaries. You just need to copy that binary to any path specified in your `PATH` environment variable.

Or you can even install it through cargo.

```bash
cargo install ffpb
```

## 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.

```bash
ffpb --help
```

## Rust Library

Add this to your Cargo.toml file.

```toml
[dependencies]
ffpb = "0.1.2"
```

Then call ffmpeg like this.

```rust
fn main() {
let args = ["-i", "test.mp4", "-c:v", "copy", "test.mkv"]
.iter()
.map(|x| x.to_string())
.collect::>();

ffpb::ffmpeg(&args).unwrap();
}
```

## License

© 2022-24 clitic

This repository is licensed under the MIT license. See LICENSE for details.