Skip to main content

Audacity Scripting - Python package for automating Audacity

Project description

audacity-scripting

PyPI

A Python package for automating Audacity tasks based on Audacity's Scripting Reference.

https://github.com/unfor19/audacity-scripting/assets/15122452/080e772c-3e40-424b-87ce-c2ac0dd75570

Music by Sergio Prosvirini from Pixabay

Requirements

  • Install Python 3.9+
  • Install Audacity 3.4.2+
  • Audacity - Enable mod-script-pipe
    • Run Audacity
    • Go into Edit > Preferences > Modules
    • Choose mod-script-pipe (which should show New) and change that to Enabled.
    • Restart Audacity
    • Check that it now does show Enabled.
    • This establishes that Audacity is finding mod-script pipe and that the version is compatible.

Installation

Supported OS: Windows, Linux, and macOS

python -m pip install audacity-scripting

Features

  • Remove spaces between clips - Removes spaces in all tracks for a given project absolute path /path/to/my_project.aup3
  • Add labels to clips
  • Clean silence
  • Normalize audio
  • End Goal - Prepare videos for voice-clone-finetuning-vits

Getting Started

All the commands assume that the Audacity application is up and running; That is mandatory as we communicate with Audacity's pipe to execute all the commands.

NOTE: See the GitHub Actions Tests Workflow to check it in action.

Available Commands

Auto-generated by unfor19/replacer-action; see readme.yml

Usage: audacity-scripting [OPTIONS] COMMAND [ARGS]...

  No confirmation prompts

Options:
  -ci, --ci  Use this flag to avoid confirmation prompts
  --help     Show this message and exit.

Commands:
  add-labels     Alias: al Add labels to clips in a given project
  clean-spaces   Alias: cs Clean spaces between clips in a given project
  do-command     Alias: dc - Execute a raw command in Audacity
  testing        This is for testing purposes only
  version-print  Get the version from the version file.

Remove spaces between clips

This command copies the original file and removes spaces (gaps) between audio clips from the copied file.

audacity_scripting clean-spaces --file_path "/path/to/my_project.aup3"

Send a command to Audacity

Send a command to Audacity according to Audacity's Scripting Reference.

audacity_scripting do-command --command "Select: Tracks=0.0 Start=0.0 End=0.0"

Known Issues

  • macOS prints Audacity's server logs (Server sending, Read failed on fifo, quitting, etc.) - documented in JOURNEY.md

References

Authors

Created and maintained by Meir Gabay

License

This project is licensed under the MIT License - see the LICENSE file for details

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

audacity_scripting-1.0.11.tar.gz (14.2 kB view hashes)

Uploaded Source

Built Distribution

audacity_scripting-1.0.11-py3-none-any.whl (14.8 kB view hashes)

Uploaded Python 3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page