Skip to main content

video-proxy-magic

This tool allows you to generate smaller videos from a collection of existing videos, something post-production video people call "proxies". Those are lower-resolution files that are faster to process for editing movies.

Features

  • batch, automated conversion of large collections of video files
  • preserves directory structure
  • adds timecode overlays
  • transcodes files to 720p H264
  • minimalist, no GUI
  • ~300 lines of code, easy to audit

TODO: screenshots

TODO: testimonials

Installation

This program is a [Python][] program which runs exclusively from the command line interface, so it's a bit of an advanced tool. It depends on ffmpeg to do all its work so the first step is to make sure that is installed.

[Python][]: https://en.wikipedia.org/wiki/Python_(programming_language)

In Debian GNU/Linux, for example, that would be:

apt install ffmpeg python3

On Mac or Windows, use the ffmpeg Mac or Windows builds and the Python Mac or Windows installers.

There's probably a way to install those through Homebrew or Chocolatey, but if you know what those are, you probably already know how to use them.

Once you have all those dependencies installed, you need install the actual program. Normally, you should have pip installed, so installing the program should be as simple as:

pip install video-proxy-magic

Usage

The program has a --help flag which has details on the various options. An example run would be:

video-proxy-magic.py FOO/ PROXIES/FOO/

... which would take all the files in FOO/ and transcode them into the PROXIES/FOO/ directory, keeping the directory structure in FOO/. Assuming you have a file in FOO/BAR/baz.MOV, it will create a proxy in PROXIES/FOO/BAR/baz_proxy.mp4.

On Windows, you might have to meddle around with drive letters and other horrors, for example:

py videos/magic/video-proxy-magic.py H:\SOURCE H:\DESTINATION

The program is pretty silent by default, so you will probably want to use -v to make it verbose. You can also run a simulation with -n, and limit the search to specific files. This, for example, will run a simulation of the transcoding with only the MXF, MP4, or MOV files it finds:

py videos/magic/video-proxy-magic.py H:\SOURCE H:\DESTINATION -n -v --include "*.MXF" "*.MP4" "*.MOV"

You can also exclude specific files with the --exclude flag of course, but it's typically easier to tell it what you want than play whack-a-mole with the various garbage you might have lying around.

Originals are, of course, not touched.

Contributing

See the contribution guide for more information. In short: this is a free software project and you are welcome to join us in improving it, both by fixing things, reporting issues or documentation.

Authors and acknowledgment

This tool was written by The Anarcat in 2020. Many thanks to my friend for tests, feedback, and motivation.

I actually don't know much about video editing, post-production, and barely some cinema. I just built this thing because a friend of mine was repeatedly clicking through their video editors to generate files like this, wasting literally days of work for something that could obviously be automated.

License

This program is free software: you can redistribute it and/or modify it under the terms of the GNU Affero General Public License as published by the Free Software Foundation, either version 3 of the License, or any later version.

Project status

Keep in mind I don't really offer any support for this tool. I only wrote it to save my friend some time, and it's reluctantly that I have created this project to make it more visible. So no warranties.

Metadata

Release files for video-proxy-magic 0.1.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Built distribution (wheel)

Table of built distributions (wheels) for video-proxy-magic 0.1.0
File Interpreter ABI Platform
video_proxy_magic-0.1.0-py3-none-any.whl Python 3 none any Details

Release files / video_proxy_magic-0.1.0-py3-none-any.whl

Download URL video_proxy_magic-0.1.0-py3-none-any.whl
Size 7.3 kB
Tags Python 3
SHA-256 checksum
How to use checksums
4b0f3b5af83396e857c0f293be7c769b9ea091acbe3b6a4d4d99755ecceaf48f
BLAKE2b-256 checksum
How to use checksums
9eb5217cd9d42fabfe547041d1cf54b8cec47d6a0251bfb2fc68c45219aeec1a
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via twine/4.0.2 CPython/3.11.2

Security for video-proxy-magic 0.1.0

Provenance

Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.

No provenance found

None of the files in this release were uploaded with provenance metadata.

A note on package security

PyPI is a repository for distributing packages, not a service for auditing them. While third-party security researchers and our staff do their best to detect and remove malicious packages, PyPI cannot guarantee the quality, security or suitability of any given package.

To learn more about protecting yourself from malicious actors, visit our package security documentation.

Release history Release notifications | RSS feed

This release

0.1.0 This release

1 release file No provenance

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page