Compare commits

...
11 Commits
Author SHA1 Message Date
meline.grellier 1a73f7b8db screenshot 2025-06-20 17:09:57 +02:00
meline.grellier ad765dad95 typo, more screenshot 2025-06-20 17:08:41 +02:00
meline.grellier 3aa5ffea14 release candidate 1 2025-06-20 17:04:00 +02:00
meline.grellier 4215ab7f7a randomize 2025-06-19 14:21:13 +02:00
meline.grellier 472262f819 ajustement volume/samples 2025-06-18 17:00:03 +02:00
meline.grellier bfa04b7369 delay+metro+données/volume 2025-06-17 16:06:38 +02:00
meline.grellier 67b813ee44 Integration-donnees+delaystart 2025-06-16 17:17:14 +02:00
meline.grellier 00364cd72d dspauto 2025-06-13 15:59:46 +02:00
Méline Grellier b77abe4ffc real pd patch 2025-06-13 15:16:02 +02:00
bach ddc7446d8c new api IT WORKS ! 2025-06-12 15:56:55 +02:00
bach c2b3f9650b chom api ok but there is to much delais in data 2025-06-12 11:40:54 +02:00
8 changed files with 998 additions and 23 deletions
+3
View File
@@ -172,3 +172,6 @@ cython_debug/
# PyPI configuration file
.pypirc
.DS_Store
WAVs
+37
View File
@@ -1,14 +1,51 @@
# maregraphe
# Requierments
- Pure Data
- Python 3
# install
pd doit etre dans le path du system pour que python puisse le lancer
par exemple sur osx il faut faire un alias de pure data:
`sudo ln -s /Applications/Pd-0.55-2.app/Contents/Resources/bin/pd /usr/local/bin/pd`
# install the app
```shell
git clone https://gitea.esadhar.fr/b.soussi-chiadmi/maregraphe.git
cd maregraphe
```
# add the sound files
ensuite copier les wav dans les dossier `WAVs`
# install the env and dependencies
puis installer l'environement python (dependences)
```
python -m venv .venv
source .venv/bin/activate
pip install uv
uv sync
````
# launch the app
lancer le programme dans un terminal
```
./main.py
# ou
python main.py
# ou
python3 main.py
# etc
```
# leave it running
laisser la fenetre du terminale ouverte (si fermé, ça ferme le programme)
# screenshots
![](maregraphe-main.png)
![](maregraphe_pd.png)
View File
+166
View File
@@ -0,0 +1,166 @@
{
"shom_id": "386",
"name": "BALISE_A",
"longitude": 0.110667,
"latitude": 49.431833,
"state": "OK",
"reseau": "REFMAR",
"alertCustom": false,
"delai_alerte": "06:00",
"members": [
{
"individual_name": "HAROPA PORT | Rouen",
"organization_name": "HAROPA PORT | Rouen",
"voice": "",
"delivery_point": "",
"city": "",
"postal_code": "",
"electronic_mail_address": "scan@rouen.port.fr"
}
],
"events": [
{
"id": "1855",
"tide_gauge_id": "386",
"content": "P\u00e9riode d'\u00e9chantillonnage = 1 seconde\nDur\u00e9e d'int\u00e9gration = 61 secondes\nP\u00e9riode d'archivage = 5 minutes\n\nLa p\u00e9riode d'archivage n'est pas centr\u00e9e sur la dur\u00e9e d'int\u00e9gration mais uniquement sur la derni\u00e8re observation.",
"creation_date": "2023-08-30T12:21:06.000Z",
"due_date": "2015-01-01T01:00:00.000Z"
}
],
"organismes": [
{
"nom": "HAROPA PORT | Rouen",
"logo": "https://services.data.shom.fr/static/logo/DDM/logo_GPM_le_havre.png",
"url": "https://www.haropaport.com/fr"
}
],
"verticalRef": {
"nom_ref": "IGN69",
"zero_hydro": "zero_hydrographique",
"zh_ref": "-4.38"
},
"date_prem_obs": "1985-03-31",
"fuseau_horaire": "0",
"gestionnaire": "Grand Port Maritime Rouen",
"id_ram": "PK 364,775 : Balise A",
"info_maregraphe": "https://refmar.shom.fr/donnees/386",
"journal_de_bord": "https://refmar.shom.fr/donnees/386",
"niveau_moyen": "4.91",
"npbma": "0.21",
"nphma": "8.64",
"sect_geographique": "FH",
"spm": "BALISE_A",
"ville_d_hebergement": "Le Havre"
}
2025-04-24 16:11:23,976 - INFO - Hauteur de la marée : -4.38 mètres
print: -4.38
2025-04-24 16:11:34,227 - INFO - {
"shom_id": "386",
"name": "BALISE_A",
"longitude": 0.110667,
"latitude": 49.431833,
"state": "OK",
"reseau": "REFMAR",
"alertCustom": false,
"delai_alerte": "06:00",
"members": [
{
"individual_name": "HAROPA PORT | Rouen",
"organization_name": "HAROPA PORT | Rouen",
"voice": "",
"delivery_point": "",
"city": "",
"postal_code": "",
"electronic_mail_address": "scan@rouen.port.fr"
}
],
"events": [
{
"id": "1855",
"tide_gauge_id": "386",
"content": "P\u00e9riode d'\u00e9chantillonnage = 1 seconde\nDur\u00e9e d'int\u00e9gration = 61 secondes\nP\u00e9riode d'archivage = 5 minutes\n\nLa p\u00e9riode d'archivage n'est pas centr\u00e9e sur la dur\u00e9e d'int\u00e9gration mais uniquement sur la derni\u00e8re observation.",
"creation_date": "2023-08-30T12:21:06.000Z",
"due_date": "2015-01-01T01:00:00.000Z"
}
],
"organismes": [
{
"nom": "HAROPA PORT | Rouen",
"logo": "https://services.data.shom.fr/static/logo/DDM/logo_GPM_le_havre.png",
"url": "https://www.haropaport.com/fr"
}
],
"verticalRef": {
"nom_ref": "IGN69",
"zero_hydro": "zero_hydrographique",
"zh_ref": "-4.38"
},
"date_prem_obs": "1985-03-31",
"fuseau_horaire": "0",
"gestionnaire": "Grand Port Maritime Rouen",
"id_ram": "PK 364,775 : Balise A",
"info_maregraphe": "https://refmar.shom.fr/donnees/386",
"journal_de_bord": "https://refmar.shom.fr/donnees/386",
"niveau_moyen": "4.91",
"npbma": "0.21",
"nphma": "8.64",
"sect_geographique": "FH",
"spm": "BALISE_A",
"ville_d_hebergement": "Le Havre"
}
2025-04-24 16:11:34,227 - INFO - Hauteur de la marée : -4.38 mètres
print: -4.38
2025-04-24 16:11:44,339 - INFO - {
"shom_id": "386",
"name": "BALISE_A",
"longitude": 0.110667,
"latitude": 49.431833,
"state": "OK",
"reseau": "REFMAR",
"alertCustom": false,
"delai_alerte": "06:00",
"members": [
{
"individual_name": "HAROPA PORT | Rouen",
"organization_name": "HAROPA PORT | Rouen",
"voice": "",
"delivery_point": "",
"city": "",
"postal_code": "",
"electronic_mail_address": "scan@rouen.port.fr"
}
],
"events": [
{
"id": "1855",
"tide_gauge_id": "386",
"content": "P\u00e9riode d'\u00e9chantillonnage = 1 seconde\nDur\u00e9e d'int\u00e9gration = 61 secondes\nP\u00e9riode d'archivage = 5 minutes\n\nLa p\u00e9riode d'archivage n'est pas centr\u00e9e sur la dur\u00e9e d'int\u00e9gration mais uniquement sur la derni\u00e8re observation.",
"creation_date": "2023-08-30T12:21:06.000Z",
"due_date": "2015-01-01T01:00:00.000Z"
}
],
"organismes": [
{
"nom": "HAROPA PORT | Rouen",
"logo": "https://services.data.shom.fr/static/logo/DDM/logo_GPM_le_havre.png",
"url": "https://www.haropaport.com/fr"
}
],
"verticalRef": {
"nom_ref": "IGN69",
"zero_hydro": "zero_hydrographique",
"zh_ref": "-4.38"
},
"date_prem_obs": "1985-03-31",
"fuseau_horaire": "0",
"gestionnaire": "Grand Port Maritime Rouen",
"id_ram": "PK 364,775 : Balise A",
"info_maregraphe": "https://refmar.shom.fr/donnees/386",
"journal_de_bord": "https://refmar.shom.fr/donnees/386",
"niveau_moyen": "4.91",
"npbma": "0.21",
"nphma": "8.64",
"sect_geographique": "FH",
"spm": "BALISE_A",
"ville_d_hebergement": "Le Havre"
}
+28 -15
View File
@@ -8,9 +8,13 @@ import json
import subprocess
# Configuration de l'API REFMAR
API_URL = "https://services.data.shom.fr/maregraphie/service/completetidegauge"
# API_URL = "https://services.data.shom.fr/maregraphie/service/completetidegauge"
# API_URL = "https://services.data.shom.fr/maregraphie/observation/json"
# curl -X GET "https://services.data.shom.fr/maregraphie/observation/json/386?sources=1&dtStart=2025-05-22T15%3A56%3A00Z&dtEnd=2025-05-22T15%3A57%3A00Z&interval=1" -H "accept: application/json"
# API_KEY = "votre_cle_api" # Remplacez par votre clé API
STATION = '386' # Identifiant de la station du Havre
# STATION = '386' # Identifiant de la station du Havre
API_URL = "https://data.haropaport.com/sig/capteur/hauteur"
UDP_IP = "127.0.0.1"
UDP_PORT = 8765
@@ -26,49 +30,58 @@ def fetch_data():
# "Ocp-Apim-Subscription-Key": API_KEY,
}
params = {
# "station": STATION,
# "time": "current", # Vous pouvez ajuster ce paramètre selon vos besoins
# "sources": 1,
# "dtStart": "2025-05-22T10:00:00Z",
# "dtEnd": "2025-05-22T17:00:00Z",
# # "interval": 1
}
try:
response = requests.get(API_URL+"/"+STATION, headers=headers, params=params)
response = requests.get(API_URL, headers=headers, params=params)
response.raise_for_status()
return response.json()
except requests.RequestException as e:
logging.error(f"Erreur lors de la récupération des données de l'API : {e}")
return None
def process_data(data):
"""Traite les données récupérées."""
try:
zh_ref = data.get("verticalRef", {}).get("zh_ref", 0)
logging.info(f"Hauteur de la marée : {zh_ref} mètres")
zh_ref_bytes = f"{zh_ref};".encode('utf-8')
sock.sendto(zh_ref_bytes, (UDP_IP, UDP_PORT))
# sock.sendto(float(zh_ref).to_bytes(8, byteorder='big'), (UDP_IP, UDP_PORT))
# sock.sendto(float(zh_ref), (UDP_IP, UDP_PORT))
for item in data['items']:
if item['id'] == "hauteur_shom":
logging.info(f"{item["capteur"]} Hauteur d'eau : {item["valeur"]} mètres")
hauteurdeau_bytes = f"{item["valeur"]};".encode('utf-8')
sock.sendto(hauteurdeau_bytes, (UDP_IP, UDP_PORT))
# else:
# logging.error('error in parsing')
# sock.sendto(f"{0};".encode('utf-8'), (UDP_IP, UDP_PORT))
except Exception as e:
logging.error(f"Erreur lors du traitement des données : {e}")
sock.sendto(f"{0};".encode('utf-8'), (UDP_IP, UDP_PORT))
def main():
"""Fonction principale qui exécute la boucle de récupération et de traitement des données."""
logging.info("Démarrage de l'application de traitement des données du marégraphe.")
# lancement du patch pd
pd_patch = "./maregraphe.pd" # Remplace par le chemin de ton patch
pd_process = subprocess.Popen(["pd", "-nogui", "-open", pd_patch])
# pd_process = subprocess.Popen(["pd", "-nogui", "-open", pd_patch])
pd_process = subprocess.Popen(["pd", "-open", pd_patch])
try:
while True:
print('/ / / / / / / / / / / / / / / / / / / / / / / / / / / / / /')
data = fetch_data()
logging.info(json.dumps(data, indent=2))
# print(data)
# logging.info(json.dumps(data, indent=2))
if data:
process_data(data)
else:
logging.warning('no data')
sock.sendto(f"{0};".encode('utf-8'), (UDP_IP, UDP_PORT))
time.sleep(10) # 300 Attendre 5 minutes
except KeyboardInterrupt:
print("Arrêt du script, fermeture de Pure Data...")
pd_process.terminate()
if __name__ == "__main__":
main()
Binary file not shown.

After

Width:  |  Height:  |  Size: 2.1 MiB

+756 -8
View File
@@ -1,8 +1,756 @@
#N canvas 960 30 952 485 12;
#X obj 118 116 float;
#X obj 67 116 print;
#X obj 118 59 netreceive -u -b 8765;
#X obj 118 89 list tosymbol;
#X connect 0 0 1 0;
#X connect 2 0 3 0;
#X connect 3 0 0 0;
#N canvas 0 25 1440 775 10;
#X obj 952 636 bng 15 250 50 0 empty empty empty 17 7 0 10 #c7c6ff #000000 #000000;
#X obj 934 847 *~;
#X msg 887 759 start;
#X obj 940 703 t b b;
#X obj 934 813 readsf~ 2;
#X obj 965 848 *~;
#N canvas 548 231 369 364 faderhelper 0;
#X obj 150 67 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X floatatom 204 68 5 0 0 0 - - - 0;
#X obj 162 266 line~;
#X obj 96 234 pack 0 f;
#X obj 177 124 delay;
#X obj 177 158 pack 1 f;
#X obj 212 237 loadbang;
#X msg 177 236 1 0;
#X text 244 67 fade time;
#X text 42 65 fade out then in;
#X obj 150 39 inlet;
#X obj 193 193 outlet;
#X obj 162 300 outlet~;
#X obj 204 40 inlet;
#X obj 70 188 inlet;
#X connect 0 0 3 0;
#X connect 0 0 4 0;
#X connect 1 0 3 1;
#X connect 1 0 4 1;
#X connect 1 0 5 1;
#X connect 2 0 12 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 5 0 11 0;
#X connect 6 0 7 0;
#X connect 7 0 2 0;
#X connect 10 0 0 0;
#X connect 13 0 1 0;
#X connect 14 0 3 0;
#X restore 912 669 pd faderhelper;
#X obj 994 529 hsl 36 30 0 5000 0 0 empty fader1 empty -2 -8 0 10 #fce0c4 #000000 #000000 0 1;
#X text 867 458 BEGIN;
#X floatatom 999 565 5 0 0 0 - - - 0;
#X obj 967 565 int;
#X text 997 455 FADE;
#X obj 945 488 bng 30 250 50 0 empty empty empty 17 7 0 10 #c6ffc7 #000000 #000000;
#X text 990 465 IN/OUT;
#X text 939 456 SAMPLE;
#X text 944 466 STOP;
#X msg 283 86 1;
#X obj 292 50 t b b;
#X msg 249 87 0;
#X obj 304 128 readsf~ 2;
#X obj 246 128 tgl 16 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X obj 341 48 bng 16 250 50 0 empty empty empty 0 -8 0 10 #c6ffc7 #000000 #000000;
#X obj 935 917 dac~, f 8;
#X obj 290 199 dac~;
#X obj 11 628 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X obj -7 845 *~;
#X msg -57 757 start;
#X obj -4 701 t b b;
#X obj -10 811 readsf~ 2;
#X obj 24 846 *~;
#N canvas 548 231 369 364 faderhelper 0;
#X obj 150 67 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X floatatom 204 68 5 0 0 0 - - - 0;
#X obj 162 266 line~;
#X obj 96 234 pack 0 f;
#X obj 177 124 delay;
#X obj 177 158 pack 1 f;
#X obj 212 237 loadbang;
#X msg 177 236 1 0;
#X text 244 67 fade time;
#X text 42 65 fade out then in;
#X obj 150 39 inlet;
#X obj 193 193 outlet;
#X obj 162 300 outlet~;
#X obj 204 40 inlet;
#X obj 70 188 inlet;
#X connect 0 0 3 0;
#X connect 0 0 4 0;
#X connect 1 0 3 1;
#X connect 1 0 4 1;
#X connect 1 0 5 1;
#X connect 2 0 12 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 5 0 11 0;
#X connect 6 0 7 0;
#X connect 7 0 2 0;
#X connect 10 0 0 0;
#X connect 13 0 1 0;
#X connect 14 0 3 0;
#X restore -32 667 pd faderhelper;
#X text -56 458 BEGIN;
#X text 54 458 FADE;
#X obj 2 487 bng 30 250 50 0 empty empty empty 17 7 0 10 #c6ffc7 #000000 #000000;
#X text 47 468 IN/OUT;
#X text -2 458 SAMPLE;
#X text 3 468 STOP;
#X obj -7 912 dac~, f 8;
#X msg 24 756 open WAVs/VENT_\$1.wav start;
#X obj 6 600 metro 30000;
#X msg 968 758 open WAVs/OISEAUX_\$1.wav start;
#X obj 304 154 *~ 0.6;
#X obj 362 155 *~ 0.6;
#X obj 573 633 bng 15 250 50 0 empty empty empty 17 7 0 10 #c7c6ff #000000 #000000;
#X obj 559 847 *~;
#X msg 509 759 start;
#X obj 562 703 t b b;
#X obj 556 813 readsf~ 2;
#X obj 590 848 *~;
#N canvas 910 145 361 483 faderhelper 0;
#X obj 150 67 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X floatatom 204 68 5 0 0 0 - - - 0;
#X obj 162 266 line~;
#X obj 96 234 pack 0 f;
#X obj 177 124 delay;
#X obj 177 158 pack 1 f;
#X obj 212 237 loadbang;
#X msg 177 236 1 0;
#X text 244 67 fade time;
#X text 42 65 fade out then in;
#X obj 150 39 inlet;
#X obj 193 193 outlet;
#X obj 162 300 outlet~;
#X obj 204 40 inlet;
#X obj 70 188 inlet;
#X connect 0 0 3 0;
#X connect 0 0 4 0;
#X connect 1 0 3 1;
#X connect 1 0 4 1;
#X connect 1 0 5 1;
#X connect 2 0 12 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 5 0 11 0;
#X connect 6 0 7 0;
#X connect 7 0 2 0;
#X connect 10 0 0 0;
#X connect 13 0 1 0;
#X connect 14 0 3 0;
#X restore 534 669 pd faderhelper;
#X text 509 459 BEGIN;
#X text 608 457 FADE;
#X obj 568 488 bng 30 250 50 0 empty empty empty 17 7 0 10 #c6ffc7 #000000 #000000;
#X text 605 470 IN/OUT;
#X text 557 457 SAMPLE;
#X text 562 467 STOP;
#X obj 560 917 dac~, f 8;
#X msg 590 758 open WAVs/GALETS_\$1.wav start;
#X obj 1751 864 *~;
#X msg 1702 754 start;
#X obj 1755 698 t b b;
#X obj 1749 808 readsf~ 2;
#X obj 1782 865 *~;
#X obj 1750 915 dac~, f 6;
#X msg 1783 753 open WAVs/CLOCHE_\$1.wav start;
#X obj 295 623 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X obj 276 844 *~;
#X msg 229 756 start;
#X obj 282 700 t b b;
#X obj 276 810 readsf~ 2;
#X obj 307 845 *~;
#N canvas 548 231 369 364 faderhelper 0;
#X obj 150 67 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X floatatom 204 68 5 0 0 0 - - - 0;
#X obj 162 266 line~;
#X obj 96 234 pack 0 f;
#X obj 177 124 delay;
#X obj 177 158 pack 1 f;
#X obj 212 237 loadbang;
#X msg 177 236 1 0;
#X text 244 67 fade time;
#X text 42 65 fade out then in;
#X obj 150 39 inlet;
#X obj 193 193 outlet;
#X obj 162 300 outlet~;
#X obj 204 40 inlet;
#X obj 70 188 inlet;
#X connect 0 0 3 0;
#X connect 0 0 4 0;
#X connect 1 0 3 1;
#X connect 1 0 4 1;
#X connect 1 0 5 1;
#X connect 2 0 12 0;
#X connect 3 0 2 0;
#X connect 4 0 5 0;
#X connect 5 0 2 0;
#X connect 5 0 11 0;
#X connect 6 0 7 0;
#X connect 7 0 2 0;
#X connect 10 0 0 0;
#X connect 13 0 1 0;
#X connect 14 0 3 0;
#X restore 254 666 pd faderhelper;
#X text 227 455 BEGIN;
#X text 337 455 FADE;
#X obj 287 485 bng 30 250 50 0 empty empty empty 17 7 0 10 #c6ffc7 #000000 #000000;
#X text 330 465 IN/OUT;
#X text 281 455 SAMPLE;
#X text 286 465 STOP;
#X obj 276 915 dac~, f 8;
#X msg 310 755 open WAVs/FX_\$1.wav start;
#X obj 309 728 random 20;
#X obj 1293 665 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X obj 1289 875 *~;
#X msg 1243 765 start;
#X obj 1296 696 t b b;
#X obj 1290 819 readsf~ 2;
#X obj 1320 876 *~;
#X text 1358 447 FADE;
#X obj 1301 481 bng 30 250 50 0 empty empty empty 17 7 0 10 #c6ffc7 #000000 #000000;
#X text 1351 460 IN/OUT;
#X text 1295 451 SAMPLE;
#X text 1300 461 STOP;
#X obj 1289 912 dac~, f 8;
#X msg 1324 764 open WAVs/BOATKLAX_\$1.wav start;
#X obj 215 486 r toggle1;
#X obj 589 731 random 15;
#X msg 520 80 1;
#X msg 475 77 0;
#X obj 524 126 readsf~ 2;
#X obj 475 106 tgl 16 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 322 85 open WAVs/MER_1.wav;
#X msg 766 65 1;
#X obj 775 29 t b b;
#X msg 732 66 0;
#X obj 787 126 readsf~ 2;
#X obj 743 119 tgl 16 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 1030 74 1;
#X obj 1039 38 t b b;
#X msg 996 75 0;
#X obj 1051 116 readsf~ 2;
#X obj 1007 128 tgl 16 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 811 65 open WAVs/KLAX_2.wav;
#X msg 1075 74 open WAVs/KLAX_3.wav;
#X msg 1296 71 1;
#X obj 1305 35 t b b;
#X msg 1262 72 0;
#X obj 1317 113 readsf~ 2;
#X obj 1273 125 tgl 16 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 1341 71 open WAVs/KLAX_4.wav;
#X msg 1588 65 1;
#X obj 1597 29 t b b;
#X msg 1554 66 0;
#X obj 1609 107 readsf~ 2;
#X obj 1565 119 tgl 16 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 1633 65 open WAVs/KLAX_5.wav;
#X msg 1866 72 1;
#X obj 1875 36 t b b;
#X msg 1832 73 0;
#X obj 1887 114 readsf~ 2;
#X obj 1843 126 tgl 16 0 empty empty empty 0 -8 0 10 #fcfcfc #000000 #000000 0 1;
#X msg 1911 72 open WAVs/KLAX_6.wav;
#X obj 477 35 bng 16 250 50 0 empty empty empty 0 -8 0 10 #ffc7c6 #000000 #000000;
#X obj 476 10 r toggle2;
#X obj 249 50 bng 16 250 50 0 empty empty empty 0 -8 0 10 #ffc7c6 #000000 #000000;
#X obj 248 10 r toggle2;
#X obj -73 279 tgl 30 0 empty empty STOP 0 -8 0 10 #ffc7c6 #000000 #000000 0 1;
#X obj -73 323 s toggle2;
#X obj 732 31 bng 16 250 50 0 empty empty empty 0 -8 0 10 #ffc7c6 #000000 #000000;
#X obj 731 6 r toggle2;
#X obj 995 37 bng 16 250 50 0 empty empty empty 0 -8 0 10 #ffc7c6 #000000 #000000;
#X obj 994 12 r toggle2;
#X obj 1260 35 bng 16 250 50 0 empty empty empty 0 -8 0 10 #ffc7c6 #000000 #000000;
#X obj 1259 10 r toggle2;
#X obj 1551 33 bng 16 250 50 0 empty empty empty 0 -8 0 10 #ffc7c6 #000000 #000000;
#X obj 1550 8 r toggle2;
#X obj 1830 37 bng 16 250 50 0 empty empty empty 0 -8 0 10 #ffc7c6 #000000 #000000;
#X obj 1829 12 r toggle2;
#X obj 934 877 *~ 0.6;
#X obj 981 878 *~ 0.6;
#X obj 559 889 *~ 0.6;
#X obj 608 888 *~ 0.6;
#X obj -8 876 *~ 0.6;
#X obj 40 876 *~ 0.6;
#X obj 21 29 float;
#X obj 21 -28 netreceive -u -b 8765;
#X obj 21 2 list tosymbol;
#X text 318 -37 MER;
#X text 1175 -35 KLAXONS, f 12;
#X obj -72 142 loadbang;
#X obj -73 213 bng 16 250 50 0 empty empty empty 0 -8 0 10 #c6ffc7 #000000 #000000;
#X obj -73 240 s lancement;
#X obj 341 9 r lancement;
#X obj 490 489 r lancement;
#X obj 846 488 r lancement;
#X obj 1224 481 r lancement;
#X obj -79 487 r lancement;
#X obj 21 88 s water_level;
#X obj 21 62 * 0.1;
#X msg -47 208 \; pd dsp 1;
#X obj 487 354 dac~;
#X obj 488 318 *~;
#X obj 520 319 *~;
#X obj 436 276 line~;
#X floatatom 559 159 5 0 0 0 - - - 0;
#X obj 589 256 vsl 15 128 0 0.6 0 0 empty v1 empty 0 -9 0 10 #c6feff #000000 #000000 0 1;
#X obj 468 158 r water_level;
#X obj 779 356 dac~;
#X obj 779 325 *~;
#X obj 811 326 *~;
#X obj 734 249 line~;
#X floatatom 829 153 5 0 0 0 - - - 0;
#X obj 860 251 vsl 15 128 0 0.5 0 0 empty v1 empty 0 -9 0 10 #c6feff #000000 #000000 0 1;
#X obj 739 153 r water_level;
#X obj 1049 354 dac~;
#X obj 1049 323 *~;
#X obj 1081 324 *~;
#X obj 1004 247 line~;
#X floatatom 1099 152 5 0 0 0 - - - 0;
#X obj 1128 242 vsl 15 128 0 0.5 0 0 empty v1 empty 0 -9 0 10 #c6feff #000000 #000000 0 1;
#X obj 1009 151 r water_level;
#X obj 1316 353 dac~;
#X obj 1316 322 *~;
#X obj 1348 323 *~;
#X obj 1271 246 line~;
#X floatatom 1361 166 5 0 0 0 - - - 0;
#X obj 1397 248 vsl 15 128 0 0.5 0 0 empty v1 empty 0 -9 0 10 #c6feff #000000 #000000 0 1;
#X obj 1271 165 r water_level;
#X obj 1607 357 dac~;
#X obj 1607 326 *~;
#X obj 1639 327 *~;
#X obj 1562 250 line~;
#X floatatom 1655 164 5 0 0 0 - - - 0;
#X obj 1688 244 vsl 15 128 0 0.5 0 0 empty v1 empty 0 -9 0 10 #c6feff #000000 #000000 0 1;
#X obj 1564 164 r water_level;
#X obj 1893 347 dac~;
#X obj 1893 316 *~;
#X obj 1925 317 *~;
#X obj 1848 240 line~;
#X floatatom 1940 169 5 0 0 0 - - - 0;
#X obj 1974 239 vsl 15 128 0 0.5 0 0 empty v1 empty 0 -9 0 10 #c6feff #000000 #000000 0 1;
#X obj 1849 169 r water_level;
#X obj -12 172 delay 10000;
#X obj 520 43 t b b;
#X msg 584 93 open WAVs/KLAX_1.wav;
#X obj 574 42 bng 16 250 50 0 empty empty empty 0 -8 0 10 #c6ffc7 #000000 #000000;
#X obj 573 12 r lancement;
#X obj -85 62 print waterlevel;
#X obj 824 29 bng 16 250 50 0 empty empty empty 0 -8 0 10 #c6ffc7 #000000 #000000;
#X obj 825 4 r lancement;
#X obj 1093 36 bng 16 250 50 0 empty empty empty 0 -8 0 10 #c6ffc7 #000000 #000000;
#X obj 1094 11 r lancement;
#X obj 1369 34 bng 16 250 50 0 empty empty empty 0 -8 0 10 #c6ffc7 #000000 #000000;
#X obj 1370 9 r lancement;
#X obj 1654 35 bng 16 250 50 0 empty empty empty 0 -8 0 10 #c6ffc7 #000000 #000000;
#X obj 1655 10 r lancement;
#X obj 1927 37 bng 16 250 50 0 empty empty empty 0 -8 0 10 #c6ffc7 #000000 #000000;
#X obj 1928 12 r lancement;
#X obj 388 317 print volKLAX1;
#X obj 682 325 print volKLAX2;
#X obj 1507 327 print volKLAX5;
#X obj 1797 316 print volKLAX6;
#X obj 1223 322 print volKLAX4;
#X obj 955 323 print volKLAX3;
#X obj 990 487 loadbang;
#X msg 991 507 3000;
#X obj 614 530 hsl 36 30 0 5000 0 0 empty fader1 empty -2 -8 0 10 #fce0c4 #000000 #000000 0 1;
#X floatatom 619 566 5 0 0 0 - - - 0;
#X obj 587 566 int;
#X obj 610 488 loadbang;
#X msg 611 508 3000;
#X obj 334 527 hsl 36 30 0 5000 0 0 empty fader1 empty -2 -8 0 10 #fce0c4 #000000 #000000 0 1;
#X floatatom 339 563 5 0 0 0 - - - 0;
#X obj 307 563 int;
#X obj 330 485 loadbang;
#X msg 331 505 3000;
#X obj 1349 481 loadbang;
#X obj 47 528 hsl 36 30 0 5000 0 0 empty fader1 empty -2 -8 0 10 #fce0c4 #000000 #000000 0 1;
#X floatatom 52 564 5 0 0 0 - - - 0;
#X obj 20 564 int;
#X obj 43 486 loadbang;
#X msg 44 506 3000;
#X obj 290 595 metro 28000;
#X floatatom 1519 505 5 0 0 0 - - - 0;
#X obj 1468 482 r water_level;
#X obj 1514 564 vsl 15 128 0 0.6 0 0 empty v1 empty 0 -9 0 10 #c6feff #000000 #000000 0 1;
#X obj 572 607 metro;
#X floatatom 719 556 5 0 0 0 - - - 0;
#X obj 668 533 r water_level;
#X floatatom 1094 556 5 0 0 0 - - - 0;
#X obj 1043 533 r water_level;
#X obj 951 609 metro;
#X obj 1291 633 metro 60000;
#X obj 1562 217 expr if($f1 < 0.25 \, 0 \, min($f1 / 0.6 \, 1)*0.5);
#X obj 1853 212 expr if($f1 < 0.3 \, 0 \, min($f1 / 0.7 \, 1)*0.5);
#X obj 275 872 *~ 0.5;
#X obj 323 872 *~ 0.5;
#X obj 1472 598 line~;
#X obj 1350 538 line;
#X obj 1754 668 bng 15 250 50 0 empty empty empty 17 7 0 10 #fcfcfc #000000 #000000;
#X obj 1757 488 bng 30 250 50 0 empty empty empty 17 7 0 10 #c6ffc7 #000000 #000000;
#X text 1751 456 SAMPLE;
#X text 1756 466 STOP;
#X obj 1680 488 r lancement;
#X obj 1799 488 loadbang;
#X floatatom 1975 519 5 0 0 0 - - - 0;
#X obj 1924 496 r water_level;
#X obj 1972 575 vsl 15 128 0 0.5 0 0 empty v1 empty 0 -9 0 10 #c6feff #000000 #000000 0 1;
#X obj 1928 612 line~;
#X obj 1799 547 line;
#X obj 1755 639 metro 50000;
#X obj 669 617 change;
#X obj 1043 625 change;
#X text 7 422 VENT;
#X text 298 424 FX;
#X text 579 423 GALETS;
#X text 973 431 OISEAUX;
#X text 1328 430 DRONE;
#X text 1805 429 CLOCHE;
#X obj 1470 527 expr if($f1 > 0.55 \, 0 \, max(0 \, min((0.6 - $f1) / 0.6 \, 1)* 0.6)), f 36;
#X text 1810 450 FADE;
#X text 1803 463 IN/OUT;
#X msg 1349 505 0 \, 1 2000 \, 0 1000 3000, f 11;
#X msg 1799 512 0 \, 1 2000 \, 0 1000 3000, f 11;
#X obj 23 729 random 18;
#X obj 437 215 expr if($f1 < 0 \, 0 \, min($f1 / 0.2 \, 1)*0.6);
#X obj 734 216 expr if($f1 < 0 \, 0 \, min($f1 / 0.3 \, 1)*0.5);
#X obj 1005 214 expr if($f1 < 0 \, 0 \, min($f1 / 0.4 \, 1)*0.5);
#X obj 1271 213 expr if($f1 < 0.15 \, 0 \, min($f1 / 0.5 \, 1)*0.5);
#X obj 1096 625 hsl 136 16 15000 30000 0 0 empty empty empty -2 -8 0 10 #c7c6ff #000000 #000000 0 1;
#X obj 720 616 hsl 136 16 20000 35000 0 0 empty empty empty -2 -8 0 10 #c7c6ff #000000 #000000 0 1;
#X obj 1928 550 expr if($f1 < 0.4 \, 0 \, min($f1 / 0.8 \, 1)*0.5);
#X text 1238 451 BEGIN;
#X obj 1323 737 random 8;
#X obj 967 731 random 14;
#X obj 1782 726 random 12;
#X obj 1043 588 expr if($f1 >= 0.7 \, 15000 \, 30000 - ($f1 * (20000 / 0.7))), f 31;
#X obj 669 580 expr if($f1 >= 0.7 \, 20000 \, 35000 - ($f1 * (20000 / 0.7))), f 31;
#X connect 0 0 6 1;
#X connect 1 0 147 0;
#X connect 2 0 4 0;
#X connect 3 0 2 0;
#X connect 3 1 303 0;
#X connect 4 0 1 0;
#X connect 4 1 5 0;
#X connect 5 0 148 0;
#X connect 6 0 1 1;
#X connect 6 0 5 1;
#X connect 6 1 3 0;
#X connect 7 0 10 0;
#X connect 9 0 6 2;
#X connect 10 0 9 0;
#X connect 12 0 6 0;
#X connect 16 0 19 0;
#X connect 17 0 16 0;
#X connect 17 1 100 0;
#X connect 18 0 19 0;
#X connect 19 0 41 0;
#X connect 19 1 42 0;
#X connect 19 2 17 0;
#X connect 20 0 19 0;
#X connect 21 0 100 0;
#X connect 21 0 16 0;
#X connect 24 0 30 1;
#X connect 25 0 151 0;
#X connect 26 0 28 0;
#X connect 27 0 26 0;
#X connect 27 1 293 0;
#X connect 28 0 25 0;
#X connect 28 1 29 0;
#X connect 29 0 152 0;
#X connect 30 0 25 1;
#X connect 30 0 29 1;
#X connect 30 1 27 0;
#X connect 33 0 30 0;
#X connect 38 0 28 0;
#X connect 39 0 24 0;
#X connect 40 0 4 0;
#X connect 41 0 23 0;
#X connect 42 0 23 1;
#X connect 43 0 49 1;
#X connect 44 0 149 0;
#X connect 45 0 47 0;
#X connect 46 0 45 0;
#X connect 46 1 95 0;
#X connect 47 0 44 0;
#X connect 47 1 48 0;
#X connect 48 0 150 0;
#X connect 49 0 44 1;
#X connect 49 0 48 1;
#X connect 49 1 46 0;
#X connect 52 0 49 0;
#X connect 57 0 47 0;
#X connect 58 0 63 0;
#X connect 59 0 61 0;
#X connect 60 0 59 0;
#X connect 60 1 304 0;
#X connect 61 0 58 0;
#X connect 61 1 62 0;
#X connect 62 0 63 1;
#X connect 64 0 61 0;
#X connect 65 0 71 1;
#X connect 66 0 264 0;
#X connect 67 0 69 0;
#X connect 68 0 67 0;
#X connect 68 1 80 0;
#X connect 69 0 66 0;
#X connect 69 1 70 0;
#X connect 70 0 265 0;
#X connect 71 0 66 1;
#X connect 71 0 70 1;
#X connect 71 1 68 0;
#X connect 74 0 71 0;
#X connect 79 0 69 0;
#X connect 80 0 79 0;
#X connect 81 0 84 0;
#X connect 82 0 92 0;
#X connect 83 0 85 0;
#X connect 84 0 83 0;
#X connect 84 1 302 0;
#X connect 85 0 82 0;
#X connect 85 1 86 0;
#X connect 86 0 92 1;
#X connect 88 0 261 0;
#X connect 93 0 85 0;
#X connect 94 0 74 0;
#X connect 94 0 251 0;
#X connect 95 0 57 0;
#X connect 96 0 98 0;
#X connect 97 0 98 0;
#X connect 98 0 170 0;
#X connect 98 1 171 0;
#X connect 98 2 212 0;
#X connect 99 0 98 0;
#X connect 100 0 19 0;
#X connect 100 0 16 0;
#X connect 101 0 104 0;
#X connect 102 0 101 0;
#X connect 102 1 111 0;
#X connect 103 0 104 0;
#X connect 104 0 177 0;
#X connect 104 1 178 0;
#X connect 104 2 102 0;
#X connect 105 0 104 0;
#X connect 106 0 109 0;
#X connect 107 0 106 0;
#X connect 107 1 112 0;
#X connect 108 0 109 0;
#X connect 109 0 184 0;
#X connect 109 1 185 0;
#X connect 109 2 107 0;
#X connect 110 0 109 0;
#X connect 111 0 101 0;
#X connect 111 0 104 0;
#X connect 112 0 109 0;
#X connect 112 0 106 0;
#X connect 113 0 116 0;
#X connect 114 0 113 0;
#X connect 114 1 118 0;
#X connect 115 0 116 0;
#X connect 116 0 191 0;
#X connect 116 1 192 0;
#X connect 116 2 114 0;
#X connect 117 0 116 0;
#X connect 118 0 116 0;
#X connect 118 0 113 0;
#X connect 119 0 122 0;
#X connect 120 0 119 0;
#X connect 120 1 124 0;
#X connect 121 0 122 0;
#X connect 122 0 198 0;
#X connect 122 1 199 0;
#X connect 122 2 120 0;
#X connect 123 0 122 0;
#X connect 124 0 122 0;
#X connect 124 0 119 0;
#X connect 125 0 128 0;
#X connect 126 0 125 0;
#X connect 126 1 130 0;
#X connect 127 0 128 0;
#X connect 128 0 205 0;
#X connect 128 1 206 0;
#X connect 128 2 126 0;
#X connect 129 0 128 0;
#X connect 130 0 128 0;
#X connect 130 0 125 0;
#X connect 131 0 97 0;
#X connect 132 0 131 0;
#X connect 133 0 18 0;
#X connect 134 0 133 0;
#X connect 135 0 136 0;
#X connect 137 0 103 0;
#X connect 138 0 137 0;
#X connect 139 0 108 0;
#X connect 140 0 139 0;
#X connect 141 0 115 0;
#X connect 142 0 141 0;
#X connect 143 0 121 0;
#X connect 144 0 143 0;
#X connect 145 0 127 0;
#X connect 146 0 145 0;
#X connect 147 0 22 0;
#X connect 148 0 22 1;
#X connect 149 0 56 0;
#X connect 150 0 56 1;
#X connect 151 0 37 0;
#X connect 152 0 37 1;
#X connect 153 0 167 0;
#X connect 153 0 216 0;
#X connect 154 0 155 0;
#X connect 155 0 153 0;
#X connect 158 0 159 0;
#X connect 159 0 160 0;
#X connect 159 0 168 0;
#X connect 161 0 21 0;
#X connect 162 0 52 0;
#X connect 162 0 255 0;
#X connect 163 0 12 0;
#X connect 163 0 260 0;
#X connect 164 0 88 0;
#X connect 164 0 261 0;
#X connect 165 0 39 0;
#X connect 165 0 33 0;
#X connect 167 0 166 0;
#X connect 170 0 169 0;
#X connect 171 0 169 1;
#X connect 172 0 170 1;
#X connect 172 0 171 1;
#X connect 175 0 173 0;
#X connect 175 0 294 0;
#X connect 177 0 176 0;
#X connect 178 0 176 1;
#X connect 179 0 177 1;
#X connect 179 0 178 1;
#X connect 182 0 180 0;
#X connect 182 0 295 0;
#X connect 184 0 183 0;
#X connect 185 0 183 1;
#X connect 186 0 184 0;
#X connect 186 0 185 0;
#X connect 189 0 187 0;
#X connect 189 0 296 0;
#X connect 191 0 190 0;
#X connect 192 0 190 1;
#X connect 193 0 191 1;
#X connect 193 0 192 1;
#X connect 196 0 194 0;
#X connect 196 0 297 0;
#X connect 198 0 197 0;
#X connect 199 0 197 1;
#X connect 200 0 198 1;
#X connect 200 0 199 1;
#X connect 203 0 201 0;
#X connect 203 0 262 0;
#X connect 205 0 204 0;
#X connect 206 0 204 1;
#X connect 207 0 205 1;
#X connect 207 0 206 1;
#X connect 210 0 208 0;
#X connect 210 0 263 0;
#X connect 211 0 159 0;
#X connect 212 0 96 0;
#X connect 212 1 213 0;
#X connect 213 0 96 0;
#X connect 213 0 98 0;
#X connect 214 0 213 0;
#X connect 214 0 96 0;
#X connect 215 0 214 0;
#X connect 217 0 111 0;
#X connect 217 0 101 0;
#X connect 218 0 217 0;
#X connect 219 0 112 0;
#X connect 219 0 106 0;
#X connect 220 0 219 0;
#X connect 221 0 118 0;
#X connect 221 0 113 0;
#X connect 222 0 221 0;
#X connect 223 0 124 0;
#X connect 223 0 119 0;
#X connect 224 0 223 0;
#X connect 225 0 130 0;
#X connect 225 0 125 0;
#X connect 226 0 225 0;
#X connect 233 0 234 0;
#X connect 234 0 7 0;
#X connect 235 0 237 0;
#X connect 236 0 49 2;
#X connect 237 0 236 0;
#X connect 238 0 239 0;
#X connect 239 0 235 0;
#X connect 240 0 242 0;
#X connect 241 0 71 2;
#X connect 242 0 241 0;
#X connect 243 0 244 0;
#X connect 244 0 240 0;
#X connect 245 0 291 0;
#X connect 246 0 248 0;
#X connect 247 0 30 2;
#X connect 248 0 247 0;
#X connect 249 0 250 0;
#X connect 250 0 246 0;
#X connect 251 0 65 0;
#X connect 253 0 252 0;
#X connect 253 0 288 0;
#X connect 255 0 43 0;
#X connect 257 0 256 0;
#X connect 257 0 306 0;
#X connect 259 0 258 0;
#X connect 259 0 305 0;
#X connect 260 0 0 0;
#X connect 261 0 81 0;
#X connect 262 0 200 0;
#X connect 262 0 202 0;
#X connect 262 0 229 0;
#X connect 263 0 207 0;
#X connect 263 0 209 0;
#X connect 263 0 230 0;
#X connect 264 0 78 0;
#X connect 265 0 78 1;
#X connect 266 0 82 1;
#X connect 266 0 86 1;
#X connect 267 0 288 0;
#X connect 268 0 60 0;
#X connect 269 0 279 0;
#X connect 272 0 269 0;
#X connect 272 0 279 0;
#X connect 273 0 292 0;
#X connect 275 0 274 0;
#X connect 275 0 300 0;
#X connect 277 0 58 1;
#X connect 277 0 62 1;
#X connect 278 0 300 0;
#X connect 279 0 268 0;
#X connect 280 0 255 1;
#X connect 281 0 260 1;
#X connect 288 0 254 0;
#X connect 288 0 266 0;
#X connect 291 0 267 0;
#X connect 292 0 278 0;
#X connect 293 0 38 0;
#X connect 294 0 174 0;
#X connect 294 0 172 0;
#X connect 294 0 227 0;
#X connect 295 0 179 0;
#X connect 295 0 181 0;
#X connect 295 0 228 0;
#X connect 296 0 186 0;
#X connect 296 0 188 0;
#X connect 296 0 232 0;
#X connect 297 0 193 0;
#X connect 297 0 195 0;
#X connect 297 0 231 0;
#X connect 300 0 277 0;
#X connect 300 0 276 0;
#X connect 302 0 93 0;
#X connect 303 0 40 0;
#X connect 304 0 64 0;
#X connect 305 0 281 0;
#X connect 305 0 298 0;
#X connect 306 0 280 0;
#X connect 306 0 299 0;
#X coords 0 0 1 1 425 350 0;
+8
View File
@@ -0,0 +1,8 @@
#N canvas 960 30 952 485 12;
#X obj 118 116 float;
#X obj 67 116 print;
#X obj 118 59 netreceive -u -b 8765;
#X obj 118 89 list tosymbol;
#X connect 0 0 1 0;
#X connect 2 0 3 0;
#X connect 3 0 0 0;