acsuite
audiocutter(.py) replacement for VapourSynth.
Allows for easy frame-based cutting/trimming/splicing of audio files using VapourSynth clip information.
Includes some extra tools for working with audio files or timestamps.
Functions:
eztrim(clip, trims, audio_file[, outfile, ffmpeg_path=, quiet=, timecodes_file=])
import vapoursynth as vs
core = vs.core
from acsuite import eztrim
file = r'/BDMV/STREAM/00003.m2ts'
afile = r'/BDMV/STREAM/00003.wav' # pre-extracted with TSMuxer or similar
src = core.lsmas.LWLibavSource(file)
# for the example, we will assume the src clip is 100 frames long (0-99)
trimmed_clip = src[3:22]+src[23:40]+src[48]+src[50:-20]+src[-10:-5]+src[97:]
# `clip` arg should be the uncut/untrimmed source that you are trimming from
eztrim(src, [(3,22),(23,40),(48,49),(50,-20),(-10,-5),(97,None)], afile)
Output:
Uses the file extension of the input audio_file to output a cut/trimmed audio file with the same extension. If no outfile is given, defaults to audio_file_cut.ext.
concat(audio_files, outfile[, ffmpeg_path=, quiet=])
concat(['file.aac', 'file2.aac'], 'outfile.aac')
Will concatenate a list of audio files (paths given as strings) into one file using FFmpeg.
Utility Functions:
f2ts(f, src_clip=[, precision=, timecodes_file=])
Useful for finding the timestamp for a frame number.
from functools import partial
import vapoursynth as vs
core = vs.core
clip = core.std.BlankClip()
ts = partial(f2ts, src_clip=clip)
ts(5), ts(9), ts(clip.num_frames), ts(-1)
# ('00:00:00.208', '00:00:00.375', '00:00:10.000', '00:00:09.958')
clip_to_timecodes(src_clip)
Returns a list of timecodes for VFR clips. Used as a fallback when timecodes_file is not given to f2ts or eztrim.
Getting Started
Dependencies
Installing
Arch Linux
Install the AUR package vapoursynth-tools-acsuite-git with your favorite AUR helper:
$ yay -S vapoursynth-tools-acsuite-git
Gentoo Linux
Install via the VapourSynth portage tree.
Windows / Other
Use the Python Package Index (PyPI / pip):
python3 -m pip install --user --upgrade acsuite-orangechannel
or simply
pip install acsuite-orangechannel
if you are able to use a pip executable directly.
Help!
Check out the documentation or use Python's builtin help():
help('acsuite')
Metadata
Release files for acsuite-orangechannel 6.0.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 | |
|---|---|---|---|
| acsuite-orangechannel-6.0.0.tar.gz | 10.6 kB | Details |
Built distribution (wheel)
| File | Interpreter | ABI | Platform | Reset |
|---|---|---|---|---|
| acsuite_orangechannel-6.0.0-py3-none-any.whl | Python 3 | none | any | Details |
Total release size: 19.6 kB
Release files / acsuite-orangechannel-6.0.0.tar.gz
| Download URL | acsuite-orangechannel-6.0.0.tar.gz |
|---|---|
| Size | 10.6 kB |
| Tags | Source |
|
SHA-256 checksum How to use checksums |
9618db86689b3c5dc2f8b200c68d264ec08f59f487c1a5e73f456416694c81de
|
|
BLAKE2b-256 checksum How to use checksums |
b561973dd261012f0ff04c6fd0c9fd9debbe5a3e5bd791d57e05ee9817edef9b
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.5
|
Release files / acsuite_orangechannel-6.0.0-py3-none-any.whl
| Download URL | acsuite_orangechannel-6.0.0-py3-none-any.whl |
|---|---|
| Size | 9.0 kB |
| Tags | Python 3 |
|
SHA-256 checksum How to use checksums |
0896cc6b7523c3204c9a993f2354c1523c30a39bb669b11eade3eeff58613a5e
|
|
BLAKE2b-256 checksum How to use checksums |
525f86c27d3b1f4b4d0191ed335476b8681321198e026d9b54424746272b90f9
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
No |
| Uploaded via |
twine/3.1.1 pkginfo/1.5.0.1 requests/2.24.0 setuptools/50.3.0 requests-toolbelt/0.9.1 tqdm/4.45.0 CPython/3.8.5
|