aomenc-by-gop
Runs aomenc in parallel per group of pictures
Features
- Frame accurate GOP encoding
- aomenc equivalent GOP selection
- Easy resuming
- Usage within Python for automation
- Minimal amount of dependencies
- Dark boost
Requirements
Usage
aomenc-by-gop -i INPUT OUTPUT AOMENC_ARGS
aomenc-by-gop --help
usage: aomenc-by-gop [--help] -i INPUT [--workers WORKERS] [--passes PASSES]
[--kf-max-dist KF_MAX_DIST] [-u USE] [-s START] [-e END]
[-y] [--copy-timestamps] [--timestamps TIMESTAMPS]
[--fps FPS] [--mux] [--keyframes KEYFRAMES]
[--working-dir WORKING_DIR] [--keep] [--aomenc AOMENC]
[--vspipe VSPIPE] [--mkvmerge MKVMERGE]
[--mkvextract MKVEXTRACT] [--ranges RANGES] [--webm]
[--darkboost] [--darkboost-file DARKBOOST_FILE]
[--darkboost-profile DARKBOOST_PROFILE] [--show-segments]
[--extra-filter EXTRA_FILTER]
output
positional arguments:
output
optional arguments:
--help
-i INPUT, --input INPUT
--workers WORKERS
--passes PASSES
--kf-max-dist KF_MAX_DIST
-u USE, --use USE VS source filter (ex. lsmas.LWLibavSource)
-s START, --start START
Input start frame
-e END, --end END Input end frame
-y Skip warning / overwrite output.
--copy-timestamps Copy timestamps from input file. Support for variable
frame rate.
--timestamps TIMESTAMPS
Timestamps file
--fps FPS Output framerate (ex. 24000/1001). Use "auto" to
determine automatically.
--mux Mux with contents of input file.
--keyframes KEYFRAMES
Path to keyframes file
--working-dir WORKING_DIR
Path to working directory. Allows resuming and does not
remove files after completion.
--keep Do not delete temporary working directory.
--aomenc AOMENC Path to aomenc
--vspipe VSPIPE Path to vspipe
--mkvmerge MKVMERGE Path to mkvmerge
--mkvextract MKVEXTRACT
Path to mkvmerge. Required for VFR.
--ranges RANGES frame_n:arguments;frame_n2:arguments
--webm
--darkboost Enable dark boost.
--darkboost-file DARKBOOST_FILE
Path to darkboost cache
--darkboost-profile DARKBOOST_PROFILE
Available profiles: conservative, light, medium
--show-segments Show individual segments' progress.
--extra-filter EXTRA_FILTER
Extra vapoursynth filtering (ex. cropping). Input and
output is clip.
Simple 2 pass encode:
aomenc-by-gop -i file.mkv out.mkv
Other examples:
aomenc-by-gop -i input.mkv out.mkv --copy-timestamps --workers 6 --kf-max-dist=120 --threads=8 --cpu-used=6
aomenc-by-gop -i input.mkv out.webm -s 100 -e 200 --threads=8 --cpu-used=6
Enable resuming:
aomenc-by-gop -i input.mkv out.mkv --working-dir project
Save/use onepass keyframes file
aomenc-by-gop -i input.mkv out.mkv --keyframes input.txt
Enable resuming using a different onepass keyframes file
aomenc-by-gop -i input.mkv out.mkv --working-dir project --keyframes input.txt
Use vpxenc:
aomenc-by-gop -i input out.mkv --aomenc vpxenc
Example cropping:
aomenc-by-gop -i input out.mkv --extra-filter="clip = clip.std.Crop(top=140, bottom=140)"
Extra Filter
Available variables are vs for vapoursynth and clip for the clip.
Example Python Usage
from aomenc_by_gop.app import encode, DefaultArgs
args = {
"workers": 4,
"fps": "auto",
"darkboost": True,
"input": "flt/01.mkv",
"output": "enc/01.mkv",
"working_dir": "gop/01",
"keyframes": "kf/01.txt",
}
aom_args = [
"--threads=4",
"--good",
"--cpu-used=2",
"--tile-columns=1",
"--row-mt=1",
"--cq-level=8",
"--end-usage=q",
"--enable-dnl-denoising=0",
"--denoise-noise-level=10",
]
ranges = [
(5000, ["--denoise-noise-level=1"]), # low noise
(6000, ["--denoise-noise-level=10"]),
(7000, ["--cq-level=10"], True), # ignore dark boost
]
encode(DefaultArgs(**args), aom_args, ranges)
Metadata
Release files for aomenc-by-gop 0.3.0
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Source distribution (sdist)
| File | Size | Uploaded | Provenance | Actions |
|---|---|---|---|---|
| aomenc-by-gop-0.3.0.tar.gz | 7.7 MB | Without provenance | Details for aomenc-by-gop-0.3.0.tar.gz |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Actions Reset |
|---|---|---|---|---|
| aomenc_by_gop-0.3.0-py3-none-any.whl | Python 3 | none | any | Details for aomenc_by_gop-0.3.0-py3-none-any.whl |
Total release size: 15.5 MB
Release files / aomenc-by-gop-0.3.0.tar.gz
| Download URL | aomenc-by-gop-0.3.0.tar.gz |
|---|---|
| Size | 7.7 MB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
89a3212ea7bfe9095a64fee63b688924542c341557f37a5f4f4ea529c06723d1
|
|
BLAKE2b-256 checksum How to use checksums |
c5c5c4f6a618cf724a71da43ffb05efc7b554cb9a7c2d7f0a546a08a9c17d744
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.4
|
Release files / aomenc_by_gop-0.3.0-py3-none-any.whl
| Download URL | aomenc_by_gop-0.3.0-py3-none-any.whl |
|---|---|
| Size | 7.8 MB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
6ba10f887dd60afc9d90b870691d9893ed4524e56948772a0406a648157acb36
|
|
BLAKE2b-256 checksum How to use checksums |
4e239a849a55124b0439ab54170baca7ab51a1c124ec30c2c285ca52782daa9d
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/4.0.1 CPython/3.10.4
|
Security for aomenc-by-gop 0.3.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.