https://github.com/cbenoit/media-cutter
GTK based tool using ffmpeg and optionally SoX to easily process audio and video files.
https://github.com/cbenoit/media-cutter
audio-processing graphical-applications rust video-processing
Last synced: 25 days ago
JSON representation
GTK based tool using ffmpeg and optionally SoX to easily process audio and video files.
- Host: GitHub
- URL: https://github.com/cbenoit/media-cutter
- Owner: CBenoit
- License: mit
- Created: 2019-01-07T00:04:43.000Z (about 6 years ago)
- Default Branch: master
- Last Pushed: 2019-01-14T21:55:36.000Z (about 6 years ago)
- Last Synced: 2025-01-19T14:57:24.077Z (about 1 month ago)
- Topics: audio-processing, graphical-applications, rust, video-processing
- Language: Rust
- Homepage:
- Size: 85.9 KB
- Stars: 1
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE.txt
Awesome Lists containing this project
README

# Media Cutter
Licensed under the MIT license.

[ffmpeg](https://www.ffmpeg.org/) is used for most audio and video processing.
[SoX](http://sox.sourceforge.net/) is an optional tool used for noise reduction filter.I originally made this software to easily cut audio files
using ffmpeg as well as applying some filters quickly.
However, it can also process video files without further modification thanks to `ffmpeg`
hence "Media Cutter" instead of "Audio Cutter".Also, I wanted to try some graphical libraries in Rust.
In this case, I had a quite good experience using [gtk-rs](https://gtk-rs.org/) despite
the boiler-plate code required to handle ownership and borrowing in the numerous clojures.## Dependencies
- gtk 3.10
- [ffmpeg](https://www.ffmpeg.org/) (tested with v4.1, but older might works perfectly as well. No new fancy feature is used to my knowledge)
- **Optional**: [SoX](http://sox.sourceforge.net/) (tested with v14.4, but again, older might works perfectly)Present software was used and tested only on *Linux*.
It might works on Windows too, but since aformentioned tools are directly used
by command line you might get some `command not found` troubles.
Hint: make sure executables are accessibles using the `%PATH%`.
I might add a way to manually specify path to executables later though.## Building
Thanks to the Rust package manager, `cargo`, building is as simple as executing
```
$ cargo build --release
```inside the project directory.
It will build a self-contained executable `media_cutter` inside `target/release/` folder.
If you need to install the rust compiler and cargo, see [rustup](https://github.com/rust-lang/rustup.rs) for an easy install.
*Additional step*: you can use the [strip](https://sourceware.org/binutils/docs/binutils/strip.html)
command to discard object files from the executable and get its size under 1M.```
$ strip target/release/media_cutter
```## Pre-built binaries
See released binaries [here](https://github.com/CBenoit/media-cutter/releases).
## Installing
On *Linux*, simply copy/move the executable in a folder present in the `$PATH` environment variable.
`/usr/local/bin` is a good choice for manually installed (installed without package manager) softwares.