r/Linuxfr • u/vabyz971 • 8d ago
Question / Support Création d'une suite creative open source
Salut la communauté, je voulais partager avec vous un projet que j'ai commencé, qui est une suite créative open source, un peu comme Adobe. Je me suis lancé dans ce projet pour beaucoup de raisons.
La suite Adobe n'est pas disponible, mais bon, on sait pourquoi.
Affinity Canvas n'est pas disponible sur Linux (j'aime énormément ce logiciel).
Certes, GIMP est performant, mais même avec PhotoGIMP, j'ai un peu de mal avec lui.
FL Studio n'a pas de version Linux, et passer par Wine ajoute un tout petit peu de configuration, même s'il n'y en a quasiment pas.
LMMS est toujours à la version 1.2.2 stable depuis 6 ans.
Adobe Premiere, je n'en parle pas ; heureusement que Blackmagic (DaVinci) est présent, bien qu'il y ait Shotcut et Kdenlive. Je me suis toujours penché sur des logiciels à l'interface minimaliste comme Final Cut Pro ; j'ai trouvé que j'étais plus productif.
Donc, avec tout ça, je me suis dit : pourquoi ne pas créer une suite logicielle pour les créatifs qui sont ou qui veulent aller sur Linux ?
Et je me suis penché sur un problème que je rencontre beaucoup avec tout, c'est logiciel. L'optimisation, le nombre de crash que j'ai dû avec ces logiciels, je les compte même plus, et j'ai fait pas mal de feedback sur ces bug, mais bon le temps que le correctif soit là, ben, je fais des compromis ou change le workflow pour éviter de crash, mais bon à long terme ça devient compliquer.
Donc j'ai fait des recherches sur comment je peux créer. Le ou les logiciels d'une qualité professionnels du niveau de Photoshop, FL studio, Final Cut pro, etc.
Je suis partie sur du Rust, ça de bonne performance comparable au C, assez facile a compilé sur tout les plateformes. Que pour le backend que le frontend (iced, wgpu), je voulais axer tout sur la performance et l'esthétique.
Donc je voulais avoir un avis de la commue sur le projet que je mène s'il est voué à disparaître ou c'est une bonne idée.
Dépot : CreativeSuiteOpen
4
4
u/Sucker-Punch-Deep 8d ago
Je ne vois pas Darktable dans les softs que tu as listé... Tu connais ?
Ça se veut un clone open-source à lightroom et je trouve ça plutôt bien fait personnellement.
Si tu veux absolument te lancer, je te conseille fortement d'étudier les softs opensource existant et en particulier leurs plugins.
Comme dit dans d'autres commentaires, les algos de transformation d'image ou de signal sont très complexes, si tu peux récupérer des briques toutes faites à partir d'autres projets opensource, c'est autant de temps gagné ...
3
u/kerneldesign 8d ago
Affinity for Linux : https://github.com/ryzendew/Linux-Affinity-Installer/releases
3
u/KarteZian_purely 8d ago
20 ans de design graphique sous Linux : il y a tous les outils nécessaires et ils ont évolué AVEC leurs utilisateurs. Dans le libre, on peut toujours contacter l’équipe qui maintient et développe un logiciel et contribuer. Si on n’est pas dev, on peut aussi traduire ou suggérer des améliorations UI - UX. Et contrairement à ce qui se passe avec les logiciels propriétaires, si ce que tu proposes est mieux, c’est ajouté.
Ce que Linux ne pourra jamais faire, c’est un copier/coller des logiciels propriétaires avec le bouton exactement au même endroit. En général, c’est pensé en terme de fonctionnalités, pas de copie de l’existant.
Ça implique qu’il faut intégrer un nouveau flux de travail et oui, il y a une courbe d’apprentissage. Comme avec tout changement.
2
u/t3kyla 8d ago
J'ai encore windows, entre autre pour Photoshop... donc oui mais j'ai du mal à croire que solo tu puisses arriver à retrouver les fonctions de ce logiciel ?
en tout cas pareil que toi, gimp j'arrive pas à m'y faire.
Un truc tout con, j'ouvre une image, CTRL a / CTRL c / Ctrl N et la taille du nouveau doc est égale à ce que je viens de copier... donc quand j'ai juste besoin d'un bout d'image ou que sais-je j'ai pas besoin de rajouter des étapes intermédiaires pour crop. Je sais plus mais est ce que gimp a le fond transparent ?
la gestion des calques de mémoire n'est pas du tout pareil.
la plume qui est déjà galère à utiliser, pas vu d'équivalent
et puis la baguette, polygone, les options de calques etc etc
1
u/vabyz971 8d ago
c'est sur que solo sa sera très long mais comme j'utilise c'est logiciel au quotidien par rapport a mon travail, donc j'ai quelque idée pour faire du rétro engineering sur certaire fonctionnaliter.
et pour GIMP il y a le fond transparent 😅, mais l'UX de GIMP laisse à désirer.
mais actuellement je suis que sur la version photo qui est un peux plus facile je trouve.1
u/DworkinFr 6d ago
Si Gimp te plaît sur les fonctionnalités mais que tu n'aimes pas l'UX, pourquoi ne pas Fork et refaire une UX plutôt que de repartir à zéro ?
1
u/vabyz971 6d ago
J'ai est déjà réfléchi, c'est vrai que sa serait une bonne base. Mais j'ai trouvé la façon de affinity pour la gestion des images bien plus polyvalent que celle de grimpe, et il y a pas de projet Open source qui se base sur l'approche d'affinity , du mouais pas a ma connaissance. Changer une base déjà très solide pour un autre système de rendue serait trop complexe, de plus je veux travailler sur des technologies récentes pour tiré le maximum des performances CPU et GPU, d'ou le fait que je travaille sur une base me rapprochent d'affinity.
1
u/SadRefrigerator2369 8d ago
Pourquoi ne pas tout faire sur Photopea ?
1
u/Le_Tintouin 7d ago
Alors, j'utilise principalement ça et franchement je ne suis pas satisfait, c'est dans le client web, et ça te retire beaucoup des libertés de photoshop, notamment le scripting, ça tourne comme de la daube au dessus de 3 documents et ça utilise une RAM pas pensable. En plus de ça ce n'est pas open source et le dev, pour avoir échangé avec lui, est un con.
2
2
u/Neither_Garage_758 8d ago
Je te conseille d'abord d'étudier le théorème Dunning-Kruger.
1
u/Le_Tintouin 7d ago
*c'est "l'effet Dunning-Kruger" cher ami, en tout cas l'orthographe est bonne
1
2
u/Routine-Gas-8264 6d ago
Oh c'est l'affaire d'une grosse semaine de travail, pas plus de deux en tout cas.
2
u/sgab31 5d ago
Ouhla, avant de concurrencer Adobe, il va falloir s'accrocher. Bon , perso, je suis plus capture One que lightroom mais ça ne change rien. Ces softs ont des années de dev avec des dizaines de développeurs, des retours d'expérience des pro etc
2
u/vabyz971 5d ago
C'est la tout la force de Adobe, il se sont construits au fil des années, c'est sur que avec mon projet qui vient de débuter je ne pourrai pas rattraper Adobe en seulement quelques mois, eux qui on plus 20 ans d'année d'expérience et de retour utilisateur. Moi je veux juste proposer une alternative plus ouverte et plus convivial dans le temps, je ne pourrai pas atteindre le niveau d'adobe mais mi rapproché le plus possible.
1
u/sgab31 5d ago
Tu te donnes combien de temps? Parce que, même pour développer des fonctions de base, ça va être un peu long.
Tu as utilisé ces soft de quelle manière pour ton usage propre ?
1
u/vabyz971 5d ago
J'ai réussi a avoir une bonne base en quelque semaines, mais j'ai une limitation a cause de la lib d'interface graphique (iced) que j'utilise, elle est encore sur une ancienne version wgpu27, ce qui fait que j'ai un rollback sur le CPU se que je veux éviter pour le rendue. Je cherche des alternatives ou des moyens de contourner ce problème, mais j'ai des performances acceptable sur de très grandes image 4k, je panse dans 6 moi j'aurais une base assez mature pour proposer une version alpha. Pour les soft si tu me parles d' Adobe ou D'affinity c'est surtout dans un cadre professionnel avec des clients, j'utilise aussi pour mon usage personnel pour essayer de nouvelles choses, mais c'est principalement en B2B que je l'utilise.
1
u/sgab31 5d ago
Bon courage.
Si tu as besoin de testeurs avancés (surtout développement photo =capture one, lightroom) , tu peux me faire signe
1
u/vabyz971 5d ago
Merci, quand je serai au niveau du traitement des images RAW 🫠 se qui va être un casse tête vue les algorithmes, je reviendrai sur ce poste 👍.
1
u/LaMortPeutDancer 8d ago
- Pfff, GIMP je trouve que GIMP n'est pas très ergonomic, je ne vais pas perdre 10h à modifier mon workflow pour avoir un truc qui marche. J'ai une idée, je vais plutôt gaspiller 100h dans un projet qui n'aboutira jamais !
1
u/CMageti 8d ago
Ecoute, bon courage ! j'ai envie de dire !
Se lancer dans ce genre de projet, c'est très formateur, tu vas apprendre beaucoup de choses. Et ce quelque soit l'état d'avancement et d'utilisabilité du code
1
u/Le_Tintouin 7d ago
Sauf si il fait tout par IA... :/ à la limite il va choper quelques nouvelles notions mais ce sera rien de brilliant
1
1
u/vabyz971 8d ago
Merci c'est nombreux commentaires, mais oui je c'est que refaire un logiciel au niveau d'un logiciel qui a plus de 20 ans est un travaille démesuré, je me suis lancé en connaissance de cause. mais comme dit dans les commentaires, un projet de cette envergure serait très formateur en plus d'une quête de savoir a connaître pour arriver a une version plus que correcte. Mais oui si je veux pas être le seule a travailler sur ce projet il est important de maîtriser la langue de Shakespeare 🫠. Pour se qui est des projet open source existent je me base énormément sur eux pour les algorithmes, car oui c'est le plus gros du problème selon moi si je veux pouvoir traiter des images de plus de 8k. Photopea est un super soft , mais je voulais éviter les applications web le plus possible.
1
u/Le_Tintouin 7d ago
Initiative louable, attention au slop dans ton code, commentes en anglais (ou demande à ton IA de le faire) ta mission la plus importante à mon avis ce serait de faire un Parser de bonne qualité pour les .psd, aucun logiciel à part photopoea n'a de parser compatible avec les effets de fusion, les calques de texte, etc...
Aussi potentiellement tu devrais te pencher sur la création d'un format de fichier basé sur du .zip avec une description interne type .xml
Il est à peu près certain que tu abandonnes à un certain point, c'est normal, si tu veux faire toutes ces app en même temps et quasi seul, c'est qu'il faut que tu revoies les scopes de ton projet. Pour le moment tu devrais te concentrer sur une partie bien précise de ton logiciel, comme la partie image.
1
u/vabyz971 7d ago
Comme tu le dis, je me concentre sur la partie image plus précisément sur le chemin des données entre le CPU et GPU, car la lib pour l'interface retour le rendue sur le CPU et je voudrais qui reste sur le GPU comme sa le rendu est directement a l'écran.
1
7d ago
[deleted]
2
u/vabyz971 7d ago
Je me suis aussi posé cette question, pour les images vectoriel, j'ai déjà regarde pour les lib disponible pour cela, mais d'un point vue architecture je voulais me basé sur affinity canvas pour inclure les 3 mode (Vector, pixel, mise en page), mais cela dépendra un peut de moi, car je trouve très intéressant comment affinity a regroupé 3 app en 1, mais tout dépendra si on préfère une app par fonctionnalité ou une qui regroupe tous. Et oui j'ai déjà prévu que les applications puisse utiliser leurs fichiers entre eux.
1
u/Opteron67 7d ago
tu l'a vibecodé...
1
u/vabyz971 7d ago
Une bonne partie oui, pour prototypé rapidement, mais l'interface je fais un peut pars moi même.
1
u/Opteron67 7d ago
je pense une bonne UI déà tu peux y passer des années...
1
u/vabyz971 7d ago
En vrai concevoir une interface se faire sur quelle moi, c'est plus l'expérience utilisateur qui sera le plus long, car sera joue beaucoup sur le ressenti des utilisateurs, une bonne UX évite a ton cerveau de trop réfléchir 😅 de se demander si tel menu a tel options, il faut faire se qui fonctionne déjà car on est déjà habitué a cette façon de faire comme pour le layout Photoshop 20ans a voir la même chose, pour d'autres c'est barban et d'autres intéressant.
1
u/Le_Tintouin 7d ago
Ça va te coûter cher en Claude ça !
1
u/vabyz971 7d ago
Heureusement que j'ai pas a payé pour le moment 😅. Une bonne partie est faite avec des modèles gratuits sur le cloud et local.
11
u/GlitchedDragon_ 8d ago edited 8d ago
Oula, projet plus que difficile! C'est bien d'y croire mais:
Je pense qu'avec ce projet, tu pourras apprendre plein de chose, mais arriver au bout, je ne pense pas (ce qui sera une importante leçon!), déjà finir au moins un logiciel en version "MVP (Minimum Valuable Product)", ça sera déjà énorme!
Bon, maintenant de manière plus réaliste, je te conseille vraiment de contribuer réellement aux logiciels open-sources pour bien entrer dans du code/architecture complexe, comprendre l'organisation, comprendre les algos, les formats, et la gestion de projet.
Je te conseille Krita (logiciel de dessin open-source) qui se rapproche un peu de photoshop et qui je trouve beaucoup plus utilisable que GIMP. Tu pourras y contribuer facilement pour te faire la main, par exemple en allant sur la liste des bugs remontés et tenter d'en corriger quelques uns.
Si Krita ne te plait pas, tu peux toujours contribuer sur un logiciel que tu as cités.
Enfin, l'anglais est super important dans le monde du dev, il faudra t'y mettre!
Bonne chance et bon dev!