Skip to main content

ArtBox is a tool set for handling multimedia files.

Project description

ArtBox

ArtBox is a tool set for handling multimedia files.

Features

TBD

Setup

ArtBox uses some dependencies that maybe would not work well in your machine. In order to have everything well installed, create a conda/mamba environment and install artbox there.

$ mamba create --name artbox "python>=3.8.1,<3.12" pygobject pip
$ conda activate artbox
$ pip install artbox

Examples

For the following examples, create the a temporary folder for artbox:

$ mkdir /tmp/artbox

Convert text to audio

By default, the artbox voice uses edge-tts engine, but if you can also specify gtts with the flag --engine gtts.

$ echo "Are you ready to join Link and Zelda in fighting off this unprecedented threat to Hyrule?" > /tmp/artbox/text.md
$ artbox voice text-to-speech \
    --title artbox \
    --text-path /tmp/artbox/text.md \
    --output-path /tmp/artbox/voice.mp3 \
    --engine edge-tts

If you need to generate the audio for different language, you can use the flag --lang:

$ echo "Bom dia, mundo!" > /tmp/artbox/text.md
$ artbox voice text-to-speech \
    --title artbox \
    --text-path /tmp/artbox/text.md \
    --output-path /tmp/artbox/voice.mp3 \
    --lang pt

If you are using edge-tts engine (the default one), you can also specify the locale for that language, for example:

$ echo "Are you ready to join Link and Zelda in fighting off this unprecedented threat to Hyrule?" > /tmp/artbox/text.md
$ artbox voice text-to-speech \
    --title artbox \
    --text-path /tmp/artbox/text.md \
    --output-path /tmp/artbox/voice.mp3 \
    --engine edge-tts \
    --lang en-IN

Additionally, if you are using edge-tts, you can specify --rate, --volume, and --pitch, for example:

$ echo "Do you want some coffee?" > /tmp/artbox/text.md
$ artbox voice text-to-speech \
    --title artbox \
    --text-path /tmp/artbox/text.md \
    --output-path /tmp/artbox/voice.mp3 \
    --engine edge-tts \
    --lang en \
    --rate +10% \
    --volume -10% \
    --pitch -5Hz

Download a youtube video

If you want to download videos from the youtube, you can use the following command:

$ artbox youtube download \
    --url https://www.youtube.com/watch?v=zw47_q9wbBE \
    --output-path /tmp/artbox/

The command above downloads using a random resolution. If you want a specific resolution, use the flat --resolution:

$ artbox youtube download \
    --url https://www.youtube.com/watch?v=zw47_q9wbBE \
    --output-path /tmp/artbox/ \
    --resolution 360p

Create a song based on the musical notes

# json format
echo '["E", "D#", "E", "D#", "E", "B", "D", "C", "A"]' > /tmp/artbox/notes.txt
$ artbox sound notes-to-audio \
  --input-path /tmp/artbox/notes.txt \
  --output-path /tmp/artbox/music.mp3 \
  --duration 2

Remove the audio from a video

First, download the youtube video https://www.youtube.com/watch?v=zw47_q9wbBE as explained before.

Next, run the following command:

$ artbox video remove-audio \
  --input-path "/tmp/artbox/The Legend of Zelda Breath of the Wild - Nintendo Switch Presentation 2017 Trailer.mp4" \
  --output-path /tmp/artbox/botw.mp4

Extract the audio from a video

First, download the youtube video https://www.youtube.com/watch?v=zw47_q9wbBE as explained before.

Next, run the following command:

$ artbox video extract-audio \
  --input-path "/tmp/artbox/The Legend of Zelda Breath of the Wild - Nintendo Switch Presentation 2017 Trailer.mp4" \
  --output-path /tmp/artbox/botw-audio.mp3

Combine audio and video files

First, execute the previous steps:

  • Download a youtube video
  • Remove the audio from a video
  • Extract the audio from a video

Next, run the following command:

$ artbox video combine-video-and-audio \
  --video-path /tmp/artbox/botw.mp4 \
  --audio-path /tmp/artbox/botw-audio.mp3 \
  --output-path /tmp/artbox/botw-combined.mp4

Additional dependencies

If you want to use Python to play your audio files, you can install playsound:

$ pip wheel --use-pep517 "playsound (==1.3.0)"

Troubleshoot

After installing with poetry install:

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

artbox-0.6.0.tar.gz (12.1 kB view hashes)

Uploaded Source

Built Distribution

artbox-0.6.0-py3-none-any.whl (12.5 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