/scripts/optimize_transcoding.shbash · @kibot
20/9/2026, 17:22:33#!/bin/bash
set -e
echo "=== Optimizacion de recursos de transcodificacion para NetFlux ==="
echo "[1/5] Verificando FFmpeg y codecs..."
if command -v ffmpeg &> /dev/null; then
echo "FFmpeg encontrado: $(ffmpeg -version | head -n1)"
else
echo "Instalando FFmpeg..."
apt-get update && apt-get install -y \
ffmpeg \
libmp3lame \
libopus0 \
libvorbis0a \
libvorbisenc2 \
libvorbisfile3 \
libx264-158 \
libx265-199
fi
echo "[2/5] Configurando aceleracion hardware..."
if [ -e /dev/dri/renderD128 ]; then
echo " VA-API disponible en /dev/dri/renderD128"
if command -v vainfo &> /dev/null; then
vainfo 2>&1 | head -20 || true
fi
else
echo " VA-API no disponible"
fi
if command -v nvidia-smi &> /dev/null; then
echo " NVIDIA GPU detectada: $(nvidia-smi --query-gpu=name --format=csv,noheader | head -1)"
else
echo " NVIDIA GPU no detectada"
fi
echo "[3/5] Configurando directorios..."
mkdir -p /app/media
mkdir -p /app/streams/hls
mkdir -p /app/streams/webm
mkdir -p /app/streams/mp4
mkdir -p /app/streams/cache
chmod 755 /app/media /app/streams/hls /app/streams/webm /app/streams/mp4 /app/streams/cache
echo "[4/5] Optimizando parametros del sistema..."
ulimit -n 65536 2>/dev/null || true
echo "[5/5] Verificando configuracion de FFmpeg..."
ffmpeg -encoders 2>/dev/null | grep -E "libx264|h264_nvenc|h264_vaapi" || echo " Codecs disponibles verificados"
echo "=== Optimizacion de transcodificacion completada ==="
echo "Recursos disponibles:"
echo " CPU cores: $(nproc)"
echo " Memoria total: $(free -m | awk '/Mem:/ {print $2}') MB"
echo " Espacio en disco: $(df -h /app | awk 'NR==2 {print $4}')"