code

ChatGPT

dans la ou les catégorie(s) : code et avec pour étiquette(s) : ,

Je donne ma langue au chat…

Quelques tests

On trouve des prouesses sur Twitter et autres, mais je partage quand même quelques tests personnels.

bash

Via le Terminal, il est possible de faire des opérations complexes sur les fichiers, mais je n’ai aucune compétences dans l’écriture de ces scriptes !

Ma question : Comment déplacer tous les fichiers par extensions avec le Terminal MacOS ? Exemple, tous les .pdf vont dans un/le dossier pdf.

#!/bin/bash
 
# Vérifier que l'argument d'extension est fourni
if [ $# -eq 0 ]; then
    echo "Veuillez fournir une extension de fichier à déplacer."
    exit 1
fi
 
# Définir l'extension de fichier à partir du premier argument
EXTENSION=$1
 
# Créer un dossier pour l'extension si nécessaire
if [ ! -d $EXTENSION ]; then
    mkdir $EXTENSION
fi
 
# Déplacer tous les fichiers avec l'extension donnée dans le dossier correspondant
for file in *.$EXTENSION; do
    if [ -f "$file" ]; then
        mv "$file" "$EXTENSION/$file"
        echo "Déplacement de $file dans $EXTENSION/"
    fi
done

On sauve le fichier sous le nom move_files.sh

Assurez-vous que le script a les permissions d’exécution (sinon, utilisez la commande chmod +x move_files.sh pour les ajouter).

On lance.

sh move_files.sh pdf
sh move_files.sh zip

FFMPEG

FFMPEG est un outil en ligne de commande pour manipuler les vidéos.

J’ai demandé les commandes pour transformer une séquence d’images en mp4 avec différents paramètres.

ffmpeg -framerate 25 -i image%03d.png -c:v libx264 -pix_fmt yuv420p -b:v 8000k output.mp4

Explications par chatGPT

  • -framerate 25 définit la fréquence d’images de la vidéo à 25 images par seconde.
  • -i image%03d.png indique à ffmpeg que les images d’entrée sont nommées image001.png, image002.png, etc. %03d signifie que les numéros de fichier sont formatés sur trois chiffres (avec des zéros de remplissage si nécessaire).
  • -c:v libx264 spécifie le codec vidéo utilisé pour encoder la vidéo de sortie en H.264.
  • -pix_fmt yuv420p définit le format de couleur de la vidéo de sortie en YUV 4:2:0.
  • -b:v 8000k définit le débit binaire de la vidéo de sortie à 8000 kbps.
  • output.mp4 est le nom du fichier de sortie.

En utilisant le format de couleur YUV 4:2:0, la vidéo devrait avoir une prévisualisation rapide dans le Finder de MacOS.

C’est vraiment pas mal pour faire de la sorcellerie ;¬)

En bonus : quelques snippets par Tim Rodenbroeker

GSAP

le fail

J’ai demandé un déplacement en sinusoïdale avec GSAP, il ne comprend pas très bien et donne un mauvais code. C’est très frustrant, ça ressemble à un bon code, mais les subtilités de la librairie sont incomprises. Il faut revoir avec lui la demande et dans ce cas, un débutant sera vite perdu.

const element = document.querySelector(".element");
const amplitude = 50;
const frequency = 0.1;
 
const tl = gsap.timeline();
tl.to(
  element,
  {
    duration: 2,
    x: "50%",
    modifiers: {
      y: (y, i) => Math.sin(i * frequency * Math.PI * 2) * amplitude,
    },
  }
);