ArtBox is a tool set for handling multimedia files.
Project description
ArtBox
ArtBox is a tool set for handling multimedia files.
- Documentation: https://ggpedia.games
- License: BSD-3 Clause
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
:
- Patch
pytube
(ref: https://github.com/pytube/pytube/issues/1773):sed -i 's/(r"^$\\w+\\W")/(r"^\\w+\\W")/' $CONDA_PREFIX/lib/python3.*/site-packages/pytube/cipher.py
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
File details
Details for the file artbox-0.6.0.tar.gz
.
File metadata
- Download URL: artbox-0.6.0.tar.gz
- Upload date:
- Size: 12.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.7 Linux/6.2.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | ba549913f9a8bcaf7b55e670b861fb81babd508d56a5243ae845551fec829d37 |
|
MD5 | 5acacea0e6252edc20fd584408348e6e |
|
BLAKE2b-256 | ea2f19640480bf617dd5a871b50d94d8f045531c97d64bb9f84c7476cdc7798f |
Provenance
File details
Details for the file artbox-0.6.0-py3-none-any.whl
.
File metadata
- Download URL: artbox-0.6.0-py3-none-any.whl
- Upload date:
- Size: 12.5 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: poetry/1.7.1 CPython/3.11.7 Linux/6.2.0-1019-azure
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 2cb04425e67e49476d7055f8a4034adc7c8f4b034b63519f4b03d04c1ccf290c |
|
MD5 | 4bef5a966593d5dc34ffc087195b2793 |
|
BLAKE2b-256 | 2415d9cef3ed66c4247417777fb661f423fb1f0ae80f4ee94102c6c988fc3b26 |