Git Product home page Git Product logo

reelsteady-bot's Introduction

Reelsteady GO Bot!

Reelsteady GO's algorithm is amazing, but the UI is in no way optimised to handle bulk. Not wanting to wait for GoPro to help them out on the UI part (which they hopefully will!), I wrote this dirty piece of code to automate reelsteady.

This script will read a given folder with gopro files, automatically open reelsteady GO instances and use keyboard commands and mouse clicks to open files, configure smoothness settings and start rendering.

This program is meant to run when not using the PC. I run it on my pc at night, or on my laptop. Even when it's waiting for renders to complete, it will regularly switch through the open windows and check for completion.

It works based on the image-based mouse clicks from the PyAutoGUI library, which searches for small snippets of screenshots to find the correct buttons and locations to click inside Reelsteady. The text based controls build into the pywinauto library would have been way easier, but unfortunately the reelsteady go interface does not support this.

Warning: this is extremely beta. It was only tested on my own pc, and even there it sometimes fails. It might fail just for slight display differences of your windows machine, or on a slower machine since some features are based on timing (for that last part, increase the delays in config.py) Please use for the purpose of testing only for now.

With my lack of time to put into programming, pull-requests are very welcome!

Preparation:

  • Add all the gopro files to stabilise in one folder on your pc somewhere

Usage:

  • Download/checkout the folder
  • Configure the base folder and project folder to point to your gopro files in config.json
  • Set all the preferred stabilisation settings in config.json
  • Close or minimise all other programs
  • From the terminal, navigate to the reelsteady-bot folder
  • Run 'py run.py'
  • Touch nothing, let the program do its thing!

Requirements:

  • Windows
  • Python3 + pip

Install

Running pip install -r requirements.tx installs:

  • pywinauto
  • pyautogui
  • pillow
  • opencv-python

Future ideas:

  • Turn into actual serious code with proper naming, tests, documentation, error handling, and so on
  • Make compatible with osx
  • Build a UI on top of this script with queuing features, selection of files to stabilise, configuration of smoothness settings, progress management, pause feature, and so on

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.