1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
# Préparation d'un article sur Software Heritage pour Bioinfo-fr

Ce dépôt contient les ressources pour préparer un article de blog sur [Software Heritage](https://www.softwareheritage.org/) pour le site [Bioinfo-fr](https://bioinfo-fr.net/).


## Ressources

Vidéo source : [Tuto@Mate#64 Pierre Poulain présente Git et l'archive Software Heritage](https://www.youtube.com/watch?v=GjVrZbU0PB0)

L'[API Whisper de Groq](https://console.groq.com/docs/speech-text) supporte des fichiers audio au format mp3, mp4, wav... avec une taille maximale de 25 Mo.

Les modèles supportant le français sont `whisper-large-v3-turbo` et `whisper-large-v3`. Le dernier est un peu plus lent, mais fait aussi moins d'erreurs.

Groq recommande également de réduire la qualité du fichier à du mono en 16 000 Hz :

```bash
ffmpeg \
  -i <your file> \
  -ar 16000 \
  -ac 1 \
  -map 0:a: \
  <output file name>
```


## Préparation du fichier audio

Installer [Pixi](https://pixi.sh/) si besoin.

Télécharger le fichier audio de la vidéo :

```bash
pixi run yt-dlp -f 140 -o audio_full.m4a https://www.youtube.com/watch?v=GjVrZbU0PB0
```

Découper la partie intéressante, de 1:32:50 à 1:52:45 :

```bash
pixi run ffmpeg \
  -i audio_full.m4a \
  -ss 01:32:50 -to 01:52:45 \
  -c:a libmp3lame \
  audio.mp3
```

Passer en mono 16 000 Hz :

```bash
pixi run ffmpeg \
  -i audio.mp3 \
  -ar 16000 \
  -ac 1 \
  -map 0:a: \
  audio_clean.mp3
```

Vérifier que le fichier audio final a une taille inférieure à 25 Mo :

```bash
$ ls -lh audio*
-rw-rw-r-- 1 pierre pierre 3,5M déc.  30 11:34 audio_clean.mp3
-rw-rw-r-- 1 pierre pierre 122M oct.  11 17:03 audio_full.m4a
-rw-rw-r-- 1 pierre pierre  19M déc.  30 11:33 audio.mp3
```


## Transcription

Exporter la [clé d'API Groq](https://console.groq.com/keys) :

```bash
export GROQ_API_KEY=gsk_...
```

Lancer la transcription :

```bash
pixi run python transcript.py > audio_text.txt
```


## Préparation de l'article de blog

Prompt ChatGPT 4o :

> Organise le texte suivant sur Software Heritage sous la forme d'un article de blog à destination de bioinformaticiens. L'article doit être structuré et factuel. N'enjolive pas mais donne envie aux lecteurs d'archiver leur code dans Software Heritage :
> [contenu de audio_text.txt]

- [Réponse de ChatGPT](2024-12-30_chatgpt_text.md)
- [Version 1 après reprise et relecture](2025-01-14_v1.md)