Encode files in a video.
Project description
thermonuclear-weapon
Encode information into videos
(being made for midnight.hackclub.com)
Prototyping
This was originally meant to be used to store files on youtube, however the compression and re-encoding from youtube absolutely destroyed it.
Scripts
Usage of the scripts,
NOTE: You NEED ffmpeg on path, otherwise encoder and decoder won't work!!!
encoder: python encoder.py <cool_file> <output_dir>
decoder: python decoder.py <video_file> <file_output>
The encoder will always output a webm ("encoded.webm") and a frames/ directory with the frames of the video
Features added/tried
-
Different Codecs for faster encoding/decoding, This only matters for encoding, as youtube re-encodes it into it's own av1/vp9 format.
I tried using both vp9 and av1, as vp9 is faster to encode, but it's bigger and also slower to decode, and av1 is much much slower to encode, but smaller and faster to decode. This is unnecessary unless you're encoding a local video. -
zstd Input Compression, This is for faster encoding/decoding, as there is less information to process, We compress the input file, this really only works for text/binary files, something like an image or video won't have a big change. You can use this with
--compress(use this on both encoder and decoder), but it's not recommended currently for youtube videos. -
Diskless Pipeline, This is way too complicated for what it's worth, this is only implemented in the frame to video stage so we don't store any frames, I tried implementing this to directly upload the video to the fastapi server, but it was unnecessary, and deleting the file after uploading it had the same effect.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file thermonuclear_weapon-0.1.0.tar.gz.
File metadata
- Download URL: thermonuclear_weapon-0.1.0.tar.gz
- Upload date:
- Size: 2.7 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0158f205456c990b3c2923d0db47fb6c2f46c9e56a5e30efc1dcb938eadaa964
|
|
| MD5 |
d8bf4c0e4d9984d5ebabf9ee487a6a75
|
|
| BLAKE2b-256 |
1942e7ddd84544fe8ee664b4eea1a10ecd73e5c8ca37d7e5832a3255001be117
|
File details
Details for the file thermonuclear_weapon-0.1.0-py3-none-any.whl.
File metadata
- Download URL: thermonuclear_weapon-0.1.0-py3-none-any.whl
- Upload date:
- Size: 3.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.11.9
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
0048b95879bbfaf5c771a8b341af8d32e064535be1c18d259673881e334d20db
|
|
| MD5 |
74a8723cb6af0d28f1d4867223fc676f
|
|
| BLAKE2b-256 |
31835165e3d954416b389e44b1707fed76a4df061eb7ea43727d4f242f1027b0
|