Ecosyste.ms: Awesome

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

Awesome Lists | Featured Topics | Projects

https://github.com/mslinn/stabilize_video

Command-line program to stablize shaky videos
https://github.com/mslinn/stabilize_video

ffmpeg video-processing video-stabilization

Last synced: about 2 months ago
JSON representation

Command-line program to stablize shaky videos

Awesome Lists containing this project

README

        

# `Stabilize_video` [![Gem Version](https://badge.fury.io/rb/stabilize_video.svg)](https://badge.fury.io/rb/stabilize_video)

`StabilizeVideo` provides the `stabilize` command, which uses `FFmpeg` to improve shakey videos.
Provided as a Ruby Gem, `StabilizeVideo` exposes an API which can be invoked from other programs.

## Installation

Set up Ruby [(here is how)](https://www.mslinn.com/ruby/1000-ruby-setup.html),
then type the following at a shell prompt:

```shell
$ gem install stabilize_video
```

If you are running `rbenv` (and you should, according to the instructions mentioned above), type:

```shell
$ rbenv rehash
```

The `stabilize` command should now be available.

### For a Ruby Program

If you would like to use the API from your Ruby program,
add the following line to your application’s `Gemfile`:

```ruby
gem 'stabilize_video'
```

And then execute:

```shell
$ bundle
```

### For a Ruby Gem

If you would like to use the API from your Ruby gem,
add the following to your gem’s `.gemspec`:

```ruby
spec.add_dependency 'stabilize_video'
```

And then execute:

```shell
$ bundle
```

## Usage

This is the help message:

```shell
$ stabilize -h
stabilize: Stabilizes a video using the FFmpeg vidstabdetect and vidstabtransform filters.

Syntax: stabilize [Options] PATH_TO_VIDEO

Options:
-f Overwrite output file if present
-h Show this help message
-s Shakiness compensation 1..10 (default 5)
-v Verbosity; one of: trace, debug, verbose, info, warning, error, fatal, panic, quiet
-z Zoom percentage (computed if not specified)

See:
https://www.ffmpeg.org/ffmpeg-filters.html#vidstabdetect-1
https://www.ffmpeg.org/ffmpeg-filters.html#toc-vidstabtransform-1
```

## Development

After checking out this git repository, install dependencies by typing:

```shell
$ bin/setup
```

You should do the above before running Visual Studio Code.

### Run the Tests

```shell
$ bundle exec rake test
```

### Interactive Session

The following will allow you to experiment:

```shell
$ bin/console
```

### Local Installation

To install this gem onto your local machine, type:

```shell
$ bundle exec rake install
```

### To Release A New Version

To create a git tag for the new version, push git commits and tags,
and push the new version of the gem to https://rubygems.org, type:

```shell
$ bundle exec rake release
```

## Contributing

Bug reports and pull requests are welcome at https://github.com/mslinn/stabilize_video.

## License

The gem is available as open source under the terms of the [MIT License](https://opensource.org/licenses/MIT).