Skip to content

Commit f820a41

Browse files
committed
fix issues
1 parent 20c36e2 commit f820a41

38 files changed

Lines changed: 3416 additions & 2790 deletions

File tree

.gitignore

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -128,3 +128,9 @@ dmypy.json
128128
# Pyre type checker
129129
.pyre/
130130
.vscode
131+
132+
/.quarto/
133+
**/*.quarto_ipynb
134+
135+
# llm
136+
.codex

.makim.yaml

Lines changed: 9 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -23,8 +23,15 @@ groups:
2323
echo "[EE] Quarto CLI is required but not found on PATH. Install it (e.g. conda install quarto) and retry."
2424
exit 1
2525
fi
26-
find "$SEARCH_DIR" -name "*.qmd" -exec sh -c \
27-
'dir=$(dirname "$0"); base=$(basename "$0" .qmd); (cd "$dir" && quarto render "$base.qmd" --to gfm)' {} \;
26+
mapfile -d "" qmd_files < <(find "$SEARCH_DIR" -name "*.qmd" -print0)
27+
for qmd_path in "${qmd_files[@]}"; do
28+
dir=$(dirname "$qmd_path")
29+
base=$(basename "$qmd_path" .qmd)
30+
(
31+
cd "$dir"
32+
quarto render "$base.qmd" --to gfm -M template=default
33+
)
34+
done
2835
2936
# 3) Ensure generated index.md have YAML from .qmd (Quarto may drop it)
3037
python scripts/inject-qmd-yaml-into-md.py

CONTRIBUTING.md

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -107,12 +107,13 @@ $ git commit -m "chore: sync rendered blog index.md from qmd"
107107
$ git push
108108
```
109109

110-
On Windows, use WSL or a Linux environment so `makim pages.pre-build` (Quarto) runs correctly.
110+
On Windows, use WSL or a Linux environment so `makim pages.pre-build` (Quarto)
111+
runs correctly.
111112

112113
### Commit messages
113114

114-
Keep commit messages professional and descriptive. Do not add tool or editor tags
115-
(e.g. "Made-with: Cursor") to commit messages.
115+
Keep commit messages professional and descriptive. Do not add tool or editor
116+
tags (e.g. "Made-with: Cursor") to commit messages.
116117

117118
To fix existing commits that contain such a line (e.g. before pushing a PR):
118119

bkp/blogs/call-for-interns-2024-01/index.md

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -209,8 +209,7 @@ requirements.
209209
way to define targets and dependencies. Instead of using the Makefile format,
210210
it uses yaml format.
211211
- **Categories:** DevOps, Automation
212-
- **Organization/Project Webpage URL:**
213-
[https://osl-incubator.github.io/makim/](https://osl-incubator.github.io/makim/)
212+
- **Organization/Project Webpage URL:** [https://makim.org/](https://makim.org/)
214213
- **Contact:** Ivan Ogasawara
215214
[ivan.ogasawara@gmail.com](mailto:ivan.ogasawara@gmail.com)
216215
- **Project Ideas URL:**

bkp/opportunities/internship/cycles/2024-01.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -309,7 +309,7 @@ requirements.
309309
- **Description**: Makim (or makim) is based on make and focus on improve the
310310
way to define targets and dependencies. Instead of using the Makefile format,
311311
it uses yaml format.
312-
- **Organization/Project Webpage URL**: <https://osl-incubator.github.io/makim/>
312+
- **Organization/Project Webpage URL**: <https://makim.org/>
313313
- **Contact**: Ivan Ogasawara (ivan.ogasawara@gmail.com)
314314
- **Project Ideas URL**: <https://github.com/osl-incubator/makim/issues/74>
315315
- **Application Record**:

bkp/opportunities/internship/cycles/2024-02.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -315,7 +315,7 @@ requirements.
315315
- **Description**: Makim (or makim) is based on make and focus on improve the
316316
way to define targets and dependencies. Instead of using the Makefile format,
317317
it uses yaml format.
318-
- **Organization/Project Webpage URL**: <https://osl-incubator.github.io/makim/>
318+
- **Organization/Project Webpage URL**: <https://makim.org/>
319319
- **Contact**: Ivan Ogasawara (ivan.ogasawara@gmail.com)
320320
- **Project Ideas URL**:
321321
<https://github.com/osl-incubator/makim/wiki/OSL-Internship-%E2%80%90-2024-%E2%80%90-2nd-Cycle>

pages/blog/artbox-what-is-it-how-to-collaborete/index.md

Lines changed: 81 additions & 59 deletions
Original file line numberDiff line numberDiff line change
@@ -11,65 +11,89 @@ thumbnail: "/header.jpg"
1111
template: "blog-post.html"
1212
---
1313

14-
## What is ArtBox?
15-
16-
ArtBox is a versatile tool set designed for efficient multimedia file handling, offering a range of valuable functions to enhance your multimedia processing experience.
14+
# How to use it?
1715

16+
## What is ArtBox?
1817

19-
Key features of ArtBox include capabilities for text-to-audio conversion, YouTube video downloading, musical composition from notes, audio removal from video clips, audio extraction, and merging audio with video files. These functionalities position ArtBox as a pivotal tool for multimedia enthusiasts, content creators, and anyone in need of efficient multimedia processing solutions.
18+
ArtBox is a versatile tool set designed for efficient multimedia file
19+
handling, offering a range of valuable functions to enhance your
20+
multimedia processing experience.
2021

22+
Key features of ArtBox include capabilities for text-to-audio
23+
conversion, YouTube video downloading, musical composition from notes,
24+
audio removal from video clips, audio extraction, and merging audio with
25+
video files. These functionalities position ArtBox as a pivotal tool for
26+
multimedia enthusiasts, content creators, and anyone in need of
27+
efficient multimedia processing solutions.
2128

2229
### Installation
2330

24-
ArtBox relies on certain dependencies that may not function optimally on your machine. To ensure a smooth installation process, it is recommended to create a conda/mamba environment and install ArtBox within that environment.
31+
ArtBox relies on certain dependencies that may not function optimally on
32+
your machine. To ensure a smooth installation process, it is recommended
33+
to create a conda/mamba environment and install ArtBox within that
34+
environment.
2535

26-
```bash
36+
``` bash
2737
$ mamba create --name artbox "python>=3.8.1,<3.12" pygobject pip
2838
```
2939

30-
The command is creating a conda environment named "artbox" with Python version 3.8.1 or later, and includes the pygobject and pip packages in the environment. This is useful for setting up an isolated environment for a specific project or application, ensuring compatibility and reproducibility of the software stack.
40+
The command is creating a conda environment named “artbox” with Python
41+
version 3.8.1 or later, and includes the pygobject and pip packages in
42+
the environment. This is useful for setting up an isolated environment
43+
for a specific project or application, ensuring compatibility and
44+
reproducibility of the software stack.
3145

32-
```bash
46+
``` bash
3347
$ conda activate artbox
3448
```
3549

36-
To prevent dependency conflicts, please install the numpy library using the following command:
50+
To prevent dependency conflicts, please install the numpy library using
51+
the following command:
3752

38-
```bash
53+
``` bash
3954
$ pip install "numpy>=1.20"
4055
```
4156

42-
The `conda activate artbox` command is used to activate the "artbox" conda environment, ensuring that subsequent commands or scripts run within this isolated environment. Activation modifies the system's `PATH` to prioritize the "artbox" environment, allowing for the use of specific Python versions and packages associated with the project, thus maintaining a clean and reproducible development or execution environment.
57+
The `conda activate artbox` command is used to activate the “artbox”
58+
conda environment, ensuring that subsequent commands or scripts run
59+
within this isolated environment. Activation modifies the system’s
60+
`PATH` to prioritize the “artbox” environment, allowing for the use of
61+
specific Python versions and packages associated with the project, thus
62+
maintaining a clean and reproducible development or execution
63+
environment.
4364

44-
45-
```python
65+
``` python
4666
$ !mamba install -q -y -c conda-forge pygobject pip
4767
```
4868

49-
50-
```python
69+
``` python
5170
$ !pip install -q artbox
5271
```
5372

54-
The `pip install artbox` command is used to install the Python package named "artbox" using the pip package manager. This command fetches the "artbox" package from the Python Package Index (PyPI) and installs it into the currently active Python environment. The `pip install` command is commonly used to add external packages or libraries to a Python environment, expanding its functionality for a particular project or application.
73+
The `pip install artbox` command is used to install the Python package
74+
named “artbox” using the pip package manager. This command fetches the
75+
“artbox” package from the Python Package Index (PyPI) and installs it
76+
into the currently active Python environment. The `pip install` command
77+
is commonly used to add external packages or libraries to a Python
78+
environment, expanding its functionality for a particular project or
79+
application.
5580

5681
## Examples of Artbox usage.
57-
For the following examples, create the a temporary folder for artbox:
5882

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

60-
```python
85+
``` python
6186
$ mkdir /tmp/artbox
6287
```
6388

6489
### Convert text to audio
6590

6691
By default, the `artbox voice` uses
67-
[`edge-tts`](https://pypi.org/project/edge-tts/) engine, but you can also
68-
specify [`gtts`](https://github.com/pndurette/gTTS) with the flag
92+
[`edge-tts`](https://pypi.org/project/edge-tts/) engine, but you can
93+
also specify [`gtts`](https://github.com/pndurette/gTTS) with the flag
6994
`--engine gtts`.
7095

71-
72-
```python
96+
``` python
7397
$ echo "Are you ready to join Link and Zelda in fighting off this unprecedented threat to Hyrule?" > /tmp/artbox/text.md
7498
$ artbox speech from-text \
7599
--title artbox \
@@ -78,11 +102,10 @@ $ artbox speech from-text \
78102
--engine edge-tts
79103
```
80104

81-
If you need to generate the audio for different language, you can use the flag
82-
`--lang`:
105+
If you need to generate the audio for different language, you can use
106+
the flag `--lang`:
83107

84-
85-
```python
108+
``` python
86109
$ echo "Bom dia, mundo!" > /tmp/artbox/text.md
87110
$ artbox speech from-text \
88111
--title artbox \
@@ -91,11 +114,10 @@ $ artbox speech from-text \
91114
--lang pt
92115
```
93116

94-
If you are using `edge-tts` engine (the default one), you can also specify the
95-
locale for the language, for example:
96-
117+
If you are using `edge-tts` engine (the default one), you can also
118+
specify the locale for the language, for example:
97119

98-
```python
120+
``` python
99121
$ echo "Are you ready to join Link and Zelda in fighting off this unprecedented threat to Hyrule?" > /tmp/artbox/text.md
100122
$ artbox speech from-text \
101123
--title artbox \
@@ -105,10 +127,10 @@ $ artbox speech from-text \
105127
--lang en-IN
106128
```
107129

108-
Additionally, if you are using edge-tts, you can specify `--rate`, `--volume`, and `--pitch`, for example:
130+
Additionally, if you are using edge-tts, you can specify `--rate`,
131+
`--volume`, and `--pitch`, for example:
109132

110-
111-
```python
133+
``` python
112134
$ echo "Do you want some coffee?" > /tmp/artbox/text.md
113135
$ artbox speech from-text \
114136
--title artbox \
@@ -122,12 +144,13 @@ $ artbox speech from-text \
122144
```
123145

124146
### Convert audio to text
125-
ArtBox uses `speechrecognition` to convert from audio to text. Currently, ArtBox just support the google engine.
126147

127-
For this example, let's first create our audio:
148+
ArtBox uses `speechrecognition` to convert from audio to text.
149+
Currently, ArtBox just support the google engine.
128150

151+
For this example, let’s first create our audio:
129152

130-
```python
153+
``` python
131154
$ echo "Are you ready to join Link and Zelda in fighting off this unprecedented threat to Hyrule?" > /tmp/artbox/text.md
132155
$ artbox speech from-text \
133156
--title artbox \
@@ -138,8 +161,7 @@ $ artbox speech from-text \
138161

139162
Now we can convert it back to text:
140163

141-
142-
```python
164+
``` python
143165
$ artbox speech to-text \
144166
--input-path /tmp/artbox/speech.mp3 \
145167
--output-path /tmp/artbox/text-from-speech.md \
@@ -148,20 +170,19 @@ $ artbox speech to-text \
148170

149171
### Download a youtube video
150172

151-
If you want to download videos from the youtube, you can use the following
152-
command:
153-
173+
If you want to download videos from the youtube, you can use the
174+
following command:
154175

155-
```python
176+
``` python
156177
$ artbox youtube download \
157178
--url https://www.youtube.com/watch?v=zw47_q9wbBE \
158179
--output-path /tmp/artbox/
159180
```
160181

161-
The command above downloads the video using a random resolution. If you want a specific resolution, use the flat `--resolution`:
182+
The command above downloads the video using a random resolution. If you
183+
want a specific resolution, use the flat `--resolution`:
162184

163-
164-
```python
185+
``` python
165186
$ artbox youtube download \
166187
--url https://www.youtube.com/watch?v=zw47_q9wbBE \
167188
--output-path /tmp/artbox/ \
@@ -170,26 +191,25 @@ $ artbox youtube download \
170191

171192
### Remove the audio from a video
172193

173-
First, download the youtube video `https://www.youtube.com/watch?v=zw47_q9wbBE`, as explained before.
194+
First, download the youtube video
195+
`https://www.youtube.com/watch?v=zw47_q9wbBE`, as explained before.
174196

175197
Next, run the following command:
176198

177-
178-
```python
199+
``` python
179200
$ artbox video remove-audio \
180201
--input-path "/tmp/artbox/The Legend of Zelda Breath of the Wild - Nintendo Switch Presentation 2017 Trailer.mp4" \
181202
--output-path /tmp/artbox/botw.mp4
182203
```
183204

184205
### Extract the audio from a video
185206

186-
First, download the youtube video `https://www.youtube.com/watch?v=zw47_q9wbBE`,
187-
as explained before.
207+
First, download the youtube video
208+
`https://www.youtube.com/watch?v=zw47_q9wbBE`, as explained before.
188209

189210
Next, run the following command:
190211

191-
192-
```python
212+
``` python
193213
$ artbox video extract-audio \
194214
--input-path "/tmp/artbox/The Legend of Zelda Breath of the Wild - Nintendo Switch Presentation 2017 Trailer.mp4" \
195215
--output-path /tmp/artbox/botw-audio.mp3
@@ -205,8 +225,7 @@ First, execute the previous steps:
205225

206226
Next, run the following command:
207227

208-
209-
```python
228+
``` python
210229
$ artbox video combine-video-and-audio \
211230
--video-path /tmp/artbox/botw.mp4 \
212231
--audio-path /tmp/artbox/botw-audio.mp3 \
@@ -215,15 +234,18 @@ $ artbox video combine-video-and-audio \
215234

216235
## Additional dependencies
217236

218-
If you want to use Python to play your audio files, you can install `playsound`:
237+
If you want to use Python to play your audio files, you can install
238+
`playsound`:
219239

220-
221-
```python
240+
``` python
222241
$ pip wheel --use-pep517 "playsound (==1.3.0)"
223242
```
224243

225244
### Demo Video
226245

227-
For a better explanation of the facilities and usage, please watch to the following video.
246+
For a better explanation of the facilities and usage, please watch to
247+
the following video.
248+
249+
<iframe width="560" height="315" src="https://www.youtube.com/embed/sITnMuZTNAw?si=goPrd2BhPxy7Fqku" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen>
228250
229-
<iframe width="560" height="315" src="https://www.youtube.com/embed/sITnMuZTNAw?si=goPrd2BhPxy7Fqku" title="YouTube video player" frameborder="0" allow="accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture; web-share" allowfullscreen></iframe>
251+
</iframe>

0 commit comments

Comments
 (0)