lattepanda-sigma2-gpu-ffmpeg-hw-encode-9.ino

LattePanda Sigma 2 : Serveur monocarte Intel Core Ultra X7 358H · Fichier : lattepanda-sigma2-gpu-ffmpeg-hw-encode-9.ino · Langage : bash · Usage : Utiliser l'accélération matérielle du GPU Intel Arc B390 pour encoder une vidéo en HEVC/AV1 à haute résolution.

Script Bash utilisant FFmpeg avec la bibliothèque Quick Sync Video (QSV) pour exploiter le GPU Intel Arc intégré. Permet un encodage performant et faible consommation pour le transcodage média.

Ce script nécessite l'installation de FFmpeg et des bibliothèques de support Intel Media (libva-intel-driver ou intel-media-va-driver). Sur Ubuntu 26.04 préinstallé, assurez-vous que le GPU Arc est activé dans BIOS et que les drivers sont mis à jour. L'exécution se fait via le terminal en lançant le script après avoir placé une vidéo 'input.mp4' dans le dossier courant. Utilisez 'watch -n 1 intel_gpu_top' pour surveiller l'utilisation du GPU pendant l'encodage.

lattepanda-sigma2-gpu-ffmpeg-hw-encode-9.ino

#!/bin/bash
# Vérification des outils nécessaires
if ! command -v ffmpeg &> /dev/null; then
  echo "FFmpeg non trouvé. Installation..."
  sudo apt update && sudo apt install -y ffmpeg libva2 libva-drm2
fi

# Définir les chemins
INPUT_FILE="input.mp4"
OUTPUT_FILE="output_hevc.mkv"

# Vérifier si le fichier d'entrée existe
if [ ! -f "$INPUT_FILE" ]; then
  echo "Fichier $INPUT_FILE introuvable. Créez un fichier de test ou changez la variable."
  exit 1
fi

# Commande FFmpeg avec accélération matérielle Intel Arc (QSV)
# -c:v h264_qsv ou hevc_qsv ou av1_qsv selon la version de libva supportée
# -global_quality: Qualité CQP (constante), 0 (max) à 51 (min). 20-28 est un bon compromis.
echo "Démarrage de l'encodage matériel (Intel Arc)..."
ffmpeg -y \
  -hwaccel qsv \
  -hwaccel_output_format qsv \
  -c:v h264_qsv \
  -preset veryfast \
  -global_quality 20 \
  -look_ahead 1 \
  -vframes 5 \ # Limite pour le test, supprimez cette ligne pour tout encoder
  -i "$INPUT_FILE" \
  -c:a copy \
  "$OUTPUT_FILE"

if [ $? -eq 0 ]; then
  echo "Encodage terminé avec succès : $OUTPUT_FILE"
else
  echo "Échec de l'encodage. Vérifiez que les drivers Intel Media SDK/OneAPI sont installés."
fi

← Retour à la fiche