Spektrafilm non reconnu sous mon install Linux

Salut à tous,

J’ouvre ce film car je viens de finaliser un script automatique pour installer Spektrafilm sur nos systèmes. Le script fonctionne bien et les fichiers de config sont bien créés et conformes sauf que ART ne les voient pas.

Sur le conseil de @sguyader j’ouvre donc un post ici pour prolonger le sujet. Avez vous, pour ceux qui l’ont installé rencontré ce soucis également?

Dans quel dossier les fichiers .json et .py sont ils placés ? Le dossier CLUT ou un de ses sous-dossiers?

Le seul fichier qu’ART “voit” dans son interface c’est le fichier .json, le fichier .py n’apparaît pas (mais il faut qu’il soit placé à côté du .json).

ctlscript est le dossier que j’ai configuré dans les préférences de ART. j’y ai mis mes CTL, ceux de ART et les hald cut.

Quand tu cliques sur “Fichier LUT” dans Correction des couleurs/Tonalités, tu vois tous les fichiers LUT mais pas ART_spektrafilm.json?

Voilà comment c’est chez moi : j’ai un dossier CLUT avec tout dedans, spektrafilm dans son propre sous-dossier, et quand je navigue avec “Fichier LUT” il apparaît bien

AMHA , on devrait pouvoir les mettre n’importe où!? le dossier CLUT est une “vue de l’esprit” puisqu’on le défini dans les préférences de ART en pointant sur le dossier de notre choix comme pour la localisation des haldcut. Tu crois que l’on doit en + le nommer CLUT?

Edit: je viens de faire le test en mettant les deux fichiers dans un dossier nommé CLUT et toujours la même erreur de lecture du fichier json :thinking:

Une idée?

En effet on peut nommer le dossier comme on veut, et même on peut mettre les 2 fichiers spektrafilm en dehors du dossier CLUT il me semble.

Ah mais là tu ne dis pas la même chose : plus tôt tu disais qu’ART ne “voyait pas” le fichier, maintenant tu me dis “erreur de lecture”…

Si tu arrives à sélectionner le fichier json dans '“Fichier LUT” mais que tu as un message d’erreur, c’est que le script ne trouve pas l’environnement python.

Comment as-tu installé spektrafilm et son environnement ?

pour “le voir” j’ai du sélectionner "tous les fichiers en bas de fenêtre pour faire apparaitre le json et après avoir sélectionné le fichier, j’ai eu mon message d’erreur

Si ça t’interresse, voici le script auto complet:

install-spektrafilm-uv.zip (2,7 Ko)

Etrange, pour moi avec '“Fichiers LUT pris en charge” le .json apparaît bien.

Ta version d’ART est bien une version actuelle ?

oui la 1.26.5. Je me demandais si une commande particulière necessitait d’être entrée à la compilation pour pouvoir lire les LUT!?

J’ai l’impression que ton mode d’installation de spektrafilm n’est pas permanent. Sur son github l’auteur que pour une installation permanente il faut faire

uv tool install --python 3.13 git+https://github.com/andreavolpato/spektrafilm.git

Ensuite il faut penser à localiser l’exécutable python 3.13 de cet environnement :

uv python find 3.13

copier le chemin complet et le mettre à la place de “python3” en ligne 12 du fichier .json.

Perso pour Linux j’ai préféré utiliser miniconda3 plutôt que uv.

ok je vais regarder ça et je reviendrai sur ce post pour les retours. Merci!

Chez moi, ça n’a fonctionné qu’avec python 3.11, comme suggéré par alberto

Chez moi ça marche avec python 3.13.13. Je suis passé par miniconda que je trouve plus pratique au final.

Après avoir installé miniconda :

  • cloner l’entrepôt spektrafilm :
git clone https://github.com/andreavolpato/spektrafilm.git
  • créer puis activer l’environnement
conda create -n spektrafilm python=3.13
conda activate spektrafilm

on doit voir (spektrafilm) au début du prompt, montrant que le terminal fonctionne dans l’environnement virtuel spektrafilm activé.

  • installer pip dans l’environnement local
conda install pip
  • configurer spektrafilm et ses dépendances python, et vérifier qu’il se lance bien
cd [chemin-vers-entrepôt-local-spektrafilm]
pip install -e .
spektrafilm

En principe ça doit marcher. Dans ce cas, l’environnement virtuel de spektrafilm devrait se trouver dans /home/[user]/miniconda3/envs/spektrafilm/. On peut trouver le chemin complet de l’exécutable python3 en tapant which python3 en étant toujours dans le terminal avec l’environnement spektrafilm activé. C’est ce chemin qu’il faut copier dans le fichier ART_spektrafilm.json en ligne 12.

Voici un extrait de mon fichier .json avec la commande :

{"ART-lut3d" : {
    "command" : "/home/sguyader/miniconda3/envs/spektrafilm/bin/python3 spektrafilm_mklut.py --server",
    "server" : true,
    "params" : [
        ["input_gain", "Input gain (Ev)", -4.0, 4.0, 0.0, 0.05],
        ["output_black_offset", "Output black offset", -1.0, 1.0, 0.0, 0.01],

PS : je fais ça de mémoire, après avoir testé les différentes manières (virtualenv, uv, miniconda…) alors je peux avoir oublié quelque chose, surtout que j’ai dû adapter la méthode “pip” indiquée par l’auteur de spektrafilm car si on n’installe pas pip dans l’environnement conda (conda install pip) alors la commande pip install -e . essaiera d’utiliser le pip système, ce qu’il faut éviter.

Cette recommandation date de plus d’un an et n’est plus valable. A l’époque, agx-emulsion était développé et testé avec python 3.11 en effet, mais depuis ça a beaucoup évolué et comme je l’ai dit, ça marche très bien avec python 3.13 et c’est même cette version qu’Andrea Volpato (l’auteur de spektrafilm) indique dans son README sur github.

Comme ça marche parfaitement comme ça je n’y touche pas, d’autant que je ne m’en sers jamais contrairement à AgX dont je ne peux plus me passer…

Je précisais cela pour les autres utilisateurs, qu’ils ne croient pas qu’ils doivent absolument utilise python 3.11 sur la base d’une ancienne recommandation d’Alberto qui n’est plus d’actualité.

Quand tu parles d’AgX, de quoi parles-tu excatement ? AgX dans Darktable ?

Non, je parlais de l’ancienne version Agx-emulsion et tu as eu raison de me faire savoir que je n’étais plus à jour !

Oui maintenant agx-emulsion s’appelle spektrafilm !

Bon, comme je suis vieux, j’ai fait l’installation du nouveau Spektrafilm en suivant scrupuleusement le tuto d’Alberto. Sauf pour la localisation du dossier d’environnement virtuel : ~/.config/ART/python-envs/
Par contre, je regrette comme sur l’ancienne version, que le curseur “Force” soit placé par défaut sur 100 de manière irréaliste.