Debian-facile

Bienvenue sur Debian-Facile, site d'aide pour les nouveaux utilisateurs de Debian.

Vous n'êtes pas identifié(e).

#1 08-01-2015 00:56:16

Slyfox
Membre
Lieu : Pays du chocolat
Distrib. : GNU/Linux Debian Sid
Noyau : Linux 4.7.0-1-amd64
(G)UI : MATE
Inscription : 15-12-2013

[Résolu] Récriture de DVD6clone, quel language conseillé ?

Bonjour,

Je suis l'auteur de Dvd6clone qui est un script Bash (environ 1000 lignes) pour sauvegarder les DVD. J''utilise Zenity pour le côté graphique. Le problème c'est qu'avec Zenity j'ai quasiment une fenêtre pour chaque choix (choix titres,choix piste audio, chemin de destination du projet, menu principal...) le but serait de n'avoir plus qu'une fenêtre. A noter que j'ai essayé aussi YAD (fork de Zenity) qui me semble plus souple que Zenity mais encore trop de fenêtres à mon sens.

Donc je suis aller écumer le net à la recherche d'info et de nouvelles pistes... et le paradoxe c'est je suis encore plus dans le floue !

1. Pour la création de fenêtre, Glade est-il un bon choix ?

2. Actuellement j'hésite entre 3 langages qui sont le Python, C ou C++ lequel est le plus adapté pour mon projet ? Avez-vous un autre language à me conseiller ?

3. Faut-il opter pour GTK+ ou Qt ?

Voilà les questions que je me pose actuellement et que je compte sur vous pour me conseiller grâce à votre expérience, astuces et connaissance.
Je tiens à préciser que je ne souhaite pas ouvrir un troll mais de vraiment être orienté au mieux pour faire le choix le plus approprié pour ce genre de projet.

Amicalement Slyfox

Dernière modification par Slyfox (09-01-2015 21:17:32)

Hors ligne

#2 08-01-2015 02:35:17

daufinsyd
Membre
Lieu : Alsace, Haut Rhin
Distrib. : Manjaro + Tanglu + Debian Stable + Xubuntu
Noyau : Linux 4.4-amd64
(G)UI : Plasma 5 & Gnome
Inscription : 02-02-2013

Re : [Résolu] Récriture de DVD6clone, quel language conseillé ?

Bonsoir,

je ne suis pas du tout expert en programmation loin de là, mais j'ai déjà développé quelques applications graphiques (en utilisant GTK+ et Qt).
Glade est développé "principalement" par et pour permettre de développer des applis avec Gtk+
je l'utilisais et ma fois il n'était pas si mal, il permet de développer simplement et rapidement l'interface graphique.
Pour Qt il existe QtDesigner. Honnêtement il n'y a quasiment aucune différence entre les deux qui je pense sont tous deux un excellent choix. wink

À l'exception d'un petit jeu codé en C++, j'ai développé tous mes programmes graphiques sous python. C'est je pense le meilleur choix pour les programmes "simples".
C'est très facile et rapide à développer et les erreurs de synthax sont beaucoup plus rares qu'en C ou C++. Je ne connais pas ton code mais je pense que python peut tout à faire faire ce que tu veux.
Il existe également ruby qui ne diffère que légèrement de python (mais bon j'ai commencé avec du python et pour l'instant je compte continuer tongue )
Compte tenu de la relative simplicité de ton programme (c'est pas un gros hein ;D) je ne pense pas que le C ou C++ ou tout autre language de bas niveau soit une bonne idée (mais je peux me tromper).

Gtk+ ou Qt c'est avant tout une question de goût je pense. Si tu aimes le look de Gnome choisi Gtk+, si tu préfère KDE choisi Qt.
En ce qui me concerne j'ai commencé avec Gtk+ mais à chaque nouvelle version (quand gtk+3 venait de sortir) il y a avait de nombreux changements qui cassaient mon programme.
Je l'ai donc réécrit avec Qt (par ailleurs il est vrai que les progs utilisant Gtk+ peuvent avoir un style de vieux windows 2000 (notamment sous windows et les bureaux n'utilisant pas Gtk+), tandis que ceux utilisant Qt semblent êtres mieux gérés sous ces envi). smile

Aspire V3-772G + SSD 850Evo (msata)
Intel i7-4790 4 (8) * 3.6Ghz - 12Go - GTX460 1Go - 1To + 500Go DD
Intel i7-6700 - 8Go - AMD R9 280X 3Go - 1To HDD + 2To HDD + SSD 850Evo (2.5)

Hors ligne

#3 08-01-2015 15:25:10

Slyfox
Membre
Lieu : Pays du chocolat
Distrib. : GNU/Linux Debian Sid
Noyau : Linux 4.7.0-1-amd64
(G)UI : MATE
Inscription : 15-12-2013

Re : [Résolu] Récriture de DVD6clone, quel language conseillé ?

Merci pour ton retour d'expérience et des conseils.

Effectivement mon programme est relativement simple et n'a rien à voir avec de la 3D. Au vu de ce que tu dis ci-dessus je pense que je vais penché soit pour Python ou C voir les 2 allez soyons vous ! tongue

En écumant le net je suis tombé sur ces tuto traitant des divers langages.
Pour Python: http://openclassrooms.com/courses/appre … -en-python
Pour le C++: http://openclassrooms.com/courses/progr … -langage-c
Pour le C: http://openclassrooms.com/courses/appre … ammer-en-c

Pour le choix entre le GTK+ et Qt.
Étant habitué à GNOME depuis des années je pencherai pour GTK+ pour son coté simple et épuré.
A noter que le GTK+ me semble être en perde de vitesse d'après ce que j'ai pu lire sur le net et que de plus en plus d'utilisateurs préfèrent l’esthétique de Qt.
J'ai aussi lu que certains programmes qui ont été écrits en GTK+ sont réécrits en Qt au détriment de ce premier pour divers raisons. A méditer.

Autre question avant de me lancer dans la programmation et surtout histoire d'être rassurer que je ne fasse fausse route.

Actuellement et dans les grandes lignes, mon Scipt Bash fait ceci.

Via la commande df je recherche le lecteur DVD.

Puis je lance Mplayer via la commande :

mplayer -identify -vo null -ao null -frames 0 -dvd-device "$i" dvdnav://



Cette commande me permets de recherche le nombres titres et divers info comme les pistes audio en relation avec les titres.

Ensuite j'utilise Awk (que j'aime bien) pour faire le ménage afin de retenir les info utiles obtenues ci-dessus et de les stockées soit dans un fichier temporaire ou dans des variables.

Puis après divers choix d'option via les fenêtres Zenity, je lance la sauvegarde du DVD via Mplayer avec la commande :

mplayer -dvd-device "$pathDevice" -dumpstream dvdnav://$i -dumpfile "$cheminVideo-Titre-$i.vob" 2>&1



puis je convertis si demandé le tout dans un fichier MKV via MKVmerge.

Ma question vais-je pouvoir faire cela avec un autre langage ?

Amicalement Slyfox

Dernière modification par Slyfox (08-01-2015 16:44:42)

Hors ligne

#4 08-01-2015 16:55:16

daufinsyd
Membre
Lieu : Alsace, Haut Rhin
Distrib. : Manjaro + Tanglu + Debian Stable + Xubuntu
Noyau : Linux 4.4-amd64
(G)UI : Plasma 5 & Gnome
Inscription : 02-02-2013

Re : [Résolu] Récriture de DVD6clone, quel language conseillé ?

Il existe CPython et Cython qui permet de traduire un code python en C (voir c++ mais de mémoire ceci est encore au stade expérimental). J'ai fais quelques test et c'est très pratique pour tout ce qui est calculs nombreux (un calcul avec quelques puissances et factoriels qui prenait plus de 20 secondes avec python, une fois traduis via cython ne prenait plus que 0.1s (voire moins) !).
L'avantage est que tu peux écrire ton programme en python et les parties qui sont plus gourmandes en calculs tu peux les traduire simplement en C et ainsi améliorer (voir booster tongue ) les performances.

J'ai vu une conf d'un développeur qui expliquait son choix pour Qt plutôt que Gtk+ (mais bon ça durait quand même plus d'une heure), ça m'a conforté dans le choix de Qt, maintenant ce que j'ai dit sur les versions de Gtk qui cassaient mon programme n'est peut être plus vrai maintenant, je ne sais pas ^^

Sous python (et sans doute avec tous les autres languages) tu peux faire appel à d'autres programmes et éxécuter des scripts. Je n'appelle que des commandes comme cp, mv, mkdir, mais tu peux aussi exécuter d'autres programmes, il suffit d'utliser la procédure subprocess.call https://docs.python.org/3/library/subprocess.html

Les tuto sur openclassroom sont très bien fait, c'est aussi là que j'ai appris à programmer en python wink

Aspire V3-772G + SSD 850Evo (msata)
Intel i7-4790 4 (8) * 3.6Ghz - 12Go - GTX460 1Go - 1To + 500Go DD
Intel i7-6700 - 8Go - AMD R9 280X 3Go - 1To HDD + 2To HDD + SSD 850Evo (2.5)

Hors ligne

#5 08-01-2015 22:57:37

Slyfox
Membre
Lieu : Pays du chocolat
Distrib. : GNU/Linux Debian Sid
Noyau : Linux 4.7.0-1-amd64
(G)UI : MATE
Inscription : 15-12-2013

Re : [Résolu] Récriture de DVD6clone, quel language conseillé ?

daufinsyd a écrit :

Sous python (et sans doute avec tous les autres languages) tu peux faire appel à d'autres programmes et éxécuter des scripts. Je n'appelle que des commandes comme cp, mv, mkdir, mais tu peux aussi exécuter d'autres programmes, il suffit d'utliser la procédure subprocess.call https://docs.python.org/3/library/subprocess.html



J'ai fait un test avec une commande de Mplayer via un mini script Python... et ça marche. cool
Je n'aurai pas cru que c'était aussi simple que ça. Donc au final mon script Bash n'est pas totalement inutile.
Merci wink

Amicalement Slyfox

Dernière modification par Slyfox (08-01-2015 23:14:51)

Hors ligne

#6 08-01-2015 23:11:47

Slyfox
Membre
Lieu : Pays du chocolat
Distrib. : GNU/Linux Debian Sid
Noyau : Linux 4.7.0-1-amd64
(G)UI : MATE
Inscription : 15-12-2013

Re : [Résolu] Récriture de DVD6clone, quel language conseillé ?

J'aurai pu trouver ma réponse que je me posais depuis longtemps ici : http://forum.ubuntu-fr.org/viewtopic.php?id=1663171

Dernière modification par Slyfox (08-01-2015 23:15:23)

Hors ligne

#7 08-01-2015 23:31:29

daufinsyd
Membre
Lieu : Alsace, Haut Rhin
Distrib. : Manjaro + Tanglu + Debian Stable + Xubuntu
Noyau : Linux 4.4-amd64
(G)UI : Plasma 5 & Gnome
Inscription : 02-02-2013

Re : [Résolu] Récriture de DVD6clone, quel language conseillé ?

Je n'aurai pas cru que c'était aussi simple que ça


c'est pour ça que j'aime python big_smile

Donc au final mon script Bash n'est pas totalement inutile


Loin de là, tu peux en réutiliser plein de morceaux ! wink

content d'avoir pu t'aider ! ;D


Aspire V3-772G + SSD 850Evo (msata)
Intel i7-4790 4 (8) * 3.6Ghz - 12Go - GTX460 1Go - 1To + 500Go DD
Intel i7-6700 - 8Go - AMD R9 280X 3Go - 1To HDD + 2To HDD + SSD 850Evo (2.5)

Hors ligne

#8 09-01-2015 21:16:38

Slyfox
Membre
Lieu : Pays du chocolat
Distrib. : GNU/Linux Debian Sid
Noyau : Linux 4.7.0-1-amd64
(G)UI : MATE
Inscription : 15-12-2013

Re : [Résolu] Récriture de DVD6clone, quel language conseillé ?

Merci pour ta précieuse aide qui va vraiment m'aider à progresser ! smile

Amicalement Slyfox

Hors ligne

#9 10-01-2015 21:55:50

chuugar
Membre
Lieu : Nancy, France
Distrib. : Jessie
Noyau : 4.7.2 (compilé)
(G)UI : Openbox
Inscription : 17-08-2012

Re : [Résolu] Récriture de DVD6clone, quel language conseillé ?

Ressource indispensable pour commencer le Python: le bouquin de Gérard Swinnen. Disponible dans toutes les bonnes crémeries poru 32€, en Creative Common sur le site de l'auteur. smile
http://inforef.be/swi/download/apprendre_python3_5.pdf

Testé et approuvé!

Vous cherchez une alternative à Google?
Essayez StartPage !

Hors ligne

Pied de page des forums