Copyright
Copyright © José
Luis Lara Carrascal 2006-2022 
Sumario
Introducción
Instalación
Iniciamos Avidemux
Enlaces
Introducción
Avidemux es lo más parecido que podemos encontrar en nuestro sistema, al archiconocido y afamado editor de vídeo lineal, VirtualDub.
Pero con un condicionante importante: un soporte de filtros my limitado
en comparación al catálogo espectacular que posee el
programa de Windows. A pesar de este condicionante, el añadido de poder trabajar con VapourSynth, el hermano gemelo de AviSynth, reduce un poco la citada carencia y amplía las posibilidades de edición del programa.
Instalación
Dependencias
Herramientas
de Compilación
Entre paréntesis la
versión con la que se ha compilado Avidemux
para la elaboración de este documento.
* GCC - (12.2.0) o Clang - (15.0.6)
* CMake - (3.25.1)
* Make - (4.4)
* Gettext - (0.21.1)
* Pkg-config - (0.29.2)
* Yasm - (1.3.0)
* NASM - (2.15.05)
Librerías
de Desarrollo
*
Xorg - (7.7 / xorg-server 21.1.6)
LibXv - (1.0.12)
* Aften - (0.0.8)
* ALSA - (1.2.8)
* ARTS - (1.5.10)
* ESD - (0.2.41)
* FAAC - (1.30)
* FAAD2 - (2.10.1)
* Fdk-aac - (2.0.2)
* Fontconfig - (2.14.1)
* Freetype2 - (2.12.1)
* FriBidi - (1.0.12)
* JACK - (0.126.0)
* Lame - (3.100)
* Liba52 - (0.7.4)
* Libaom - (3.5.0)
* Libass - (0.17.0)
* Libdca - (0.0.7)
* Libglvnd - (1.6.0)
* Libmp4v2 - (2.0.0)
* Libopencore-amr - (0.1.2)
* Libopus - (1.3.1)
* Libsamplerate - (0.2.2)
* Libx264 - (0.164.3101)
* Libx265 - (3.5)
* Libva - (2.16.0)
* Libvdpau - (1.5)
* Libvorbis - (1.3.7)
* Libvpx - (1.12.0)
* MAD - (0.15.1b)
* Nv-codec-headers - (11.1.5.2)
* PulseAudio - (16.1)
* Qt5 - (5.15.7)
* Sqlite - (3.40.0)
* Twolame - (0.4.0)
* VapourSynth - (R61)
* Xvidcore - (1.3.7)
* Zlib - (1.2.13)
Descarga
avidemux_2.8.1.tar.gz
Optimizaciones
$ export {C,CXX}FLAGS='-O3 -march=znver3 -mtune=znver3'
|
Donde pone znver3
se indica el procesador respectivo de cada sistema
seleccionándolo de la siguiente tabla: |
Nota informativa sobre las optimizaciones para GCC
|
* La opción '-march=' establece el procesador mínimo con el que funcionará el programa compilado, la opción '-mtune=' el procesador específico para el que será optimizado.
* Los valores separados por comas, son equivalentes, es decir, que lo mismo da poner '-march=k8' que '-march=athlon64'.
* En versiones de GCC 3.2 e inferiores se utiliza la opción '-mcpu=' en lugar de '-mtune='.
|
Nota informativa sobre las optimizaciones para Clang
|
* La opción '-mtune=' está soportada a partir de la versión 3.4 de Clang.
* Los valores de color azul no son compatibles con Clang.
* Las filas con el fondo de color amarillo son valores exclusivos de Clang y, por lo tanto, no son aplicables con GCC.
|
Valores |
CPU |
Genéricos |
generic |
Produce un código
binario optimizado para la mayor parte de procesadores existentes.
Utilizar este valor si no sabemos el nombre del procesador que
tenemos en nuestro equipo. Este valor sólo es aplicable en
la opción '-mtune=', si utilizamos GCC. Esta opción está disponible a
partir de GCC 4.2. |
native |
Produce un código
binario optimizado para el procesador que tengamos en nuestro sistema,
siendo éste detectado utilizando la instrucción cpuid.
Procesadores antiguos pueden no ser detectados utilizando este valor.
Esta opción está disponible a
partir de GCC 4.2. |
x86-64 |
Procesador genérico con extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 1.9. |
x86-64-v2 |
Procesador genérico con con soporte de instrucciones X86-64 (MMX, SSE, SSE2, LAHFSAHF, POPCNT, SSE3, SSE4.1, SSE4.2, SSSE3) y extensiones 64-bit. Esta opción está disponible a partir de GCC 11 y Clang 12. |
x86-64-v3 |
Procesador genérico con con soporte de instrucciones X86-64 (MMX, SSE, SSE2, LAHFSAHF, POPCNT, SSE3, SSE4.1, SSE4.2, SSSE3, AVX, AVX2, F16C, FMA, LZCNT, MOVBE, XSAVE, XSAVEC, FMA4) y extensiones 64-bit. Esta opción está disponible a partir de GCC 11 y Clang 12. |
x86-64-v4 |
Procesador genérico con con soporte de instrucciones X86-64 (MMX, SSE, SSE2, LAHFSAHF, POPCNT, SSE3, SSE4.1, SSE4.2, SSSE3, AVX, AVX2, F16C, FMA, LZCNT, MOVBE, XSAVE, XSAVEC, AVX512*, FMA4) y extensiones 64-bit. Esta opción está disponible a partir de GCC 11 y Clang 12. |
Intel |
alderlake |
Intel Alderlake con soporte de instrucciones x86-64 (MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, CLWB, AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VNNI, AVX512BF16, MOVDIRI, MOVDIR64B, AVX512VP2INTERSECT, ENQCMD, CLDEMOTE, PTWRITE, WAITPKG, SERIALIZE, TSXLDTRK, UINTR, AMX-BF16, AMX-TILE, AMX-INT8, AVX-VNNI) y extensiones 64-bit. Esta opción está disponible a partir de GCC 11 y Clang 12. |
atom |
Intel Atom
con soporte de instrucciones MMX, SSE, SSE2, SSE3, SSSE3 y
extensiones 64-bit. Esta opción está disponible
desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición bonnell. |
bonnell |
Intel Bonnell con soporte de instrucciones
MOVBE, MMX, SSE, SSE2, SSE3, SSSE3 y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9. |
broadwell |
Intel Broadwell con soporte de instrucciones
MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT,
AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2,
F16C, RDSEED, ADCX, PREFETCHW y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9 y Clang 3.6. |
cannonlake |
Intel Cannonlake Server con soporte de instrucciones MOVBE, MMX, SSE,
SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL,
FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW,
CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ,
AVX512CD, AVX512VBMI, AVX512IFMA, SHA, UMIP y extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 3.9. |
cascadelake |
Intel Cascadelake con
soporte de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1,
SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI,
BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES,
AVX512F, CLWB, AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VNNI y
extensiones 64-bit. Esta opción está disponible a
partir de GCC 9 y Clang 8. |
cooperlake |
Intel
Cooper Lake con
soporte de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3,
SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI,
BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, CLWB,
AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VNNI, AVX512BF16 y
extensiones 64-bit. Esta opción está disponible a
partir de GCC 10 y Clang 9. |
core2 |
Intel Core2
con soporte de instrucciones MMX, SSE, SSE2, SSE3, SSSE3 y
extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.3. |
core-avx2 |
Intel Core (Haswell). Esta opción está disponible desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición haswell. |
core-avx-i |
Intel Core (ivyBridge)
con soporte de instrucciones MMX, SSE, SSE2, SSE3,
SSSE3, SSE4.1, SSE4.2, AVX, AES, PCLMUL, FSGSBASE, RDRND, F16C y
extensiones 64-bit. Esta opción está disponible
desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición ivybridge. |
corei7 |
Intel Core i7 con soporte de instrucciones MMX, SSE, SSE2, SSE3,
SSSE3, SSE4.1 y SSE4.2 y extensiones 64-bit. Soporta también los procesadores Intel
Core i3 e i5. Esta opción está disponible desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición nehalem. |
corei7-avx |
Intel Core i7 con soporte de instrucciones MMX, SSE, SSE2, SSE3,
SSSE3, SSE4.1, SSE4.2, AVX, AES y PCLMUL y
extensiones 64-bit. Soporta también los
procesadores Intel Core i3 e i5. Esta opción está disponible desde GCC 4.6, hasta GCC 4.8. A partir de GCC 4.9 se utiliza la definición sandybridge. |
goldmont |
Intel Goldmont con soporte
de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2,
POPCNT, AES, PCLMUL, RDRND, XSAVE, XSAVEOPT, FSGSBASE y extensiones
64-bit. Esta opción está disponible a
partir de GCC 9 y Clang 5. |
goldmont-plus |
Intel Goldmont Plus con
soporte de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1,
SSE4.2, POPCNT, AES, PCLMUL, RDRND, XSAVE, XSAVEOPT, FSGSBASE, PTWRITE,
RDPID, SGX, UMIP y extensiones 64-bit. Esta opción está disponible a
partir de GCC 9 y Clang 7. |
haswell |
Intel Haswell con soporte de instrucciones
MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT,
AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2,
F16C y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9. |
i386 |
Intel i386.
|
i486 |
Intel i486. |
i586, pentium |
Intel Pentium sin soporte de instrucciones MMX. |
i686 |
Produce un código binario optimizado para la mayor parte de
procesadores compatibles con la serie 80686 de Intel. Todos los actuales lo son. |
icelake-client |
Intel Icelake Client con soporte de instrucciones MOVBE, MMX, SSE,
SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL,
FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW,
CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ,
AVX512CD, AVX512VBMI, AVX512IFMA, SHA, CLWB, UMIP, RDPID, GFNI,
AVX512VBMI2, AVX512VPOPCNTDQ, AVX512BITALG, AVX512VNNI, VPCLMULQDQ,
VAES y extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 7. |
icelake-server |
Intel Icelake Server con soporte de instrucciones MOVBE, MMX, SSE,
SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL,
FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW,
CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ,
AVX512CD, AVX512VBMI, AVX512IFMA, SHA, CLWB, UMIP, RDPID, GFNI,
AVX512VBMI2, AVX512VPOPCNTDQ, AVX512BITALG, AVX512VNNI, VPCLMULQDQ,
VAES, PCONFIG, WBNOINVD y extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 7. |
intel |
Intel Haswell y Silvermont. Este valor sólo es aplicable en
la opción '-mtune='. Esta opción está disponible a partir
de GCC 4.9. |
ivybridge |
Intel Ivy Bridge con soporte de instrucciones
MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX,
AES, PCLMUL, FSGSBASE, RDRND, F16C y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9. |
knl |
Intel Knights Landing con soporte de instrucciones
MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX, AVX2,
AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX,
PREFETCHW, AVX512F, AVX512PF, AVX512ER y extensiones 64-bit. Esta opción está disponible a partir
de GCC 5 y Clang 3.4. |
knm |
Intel Knights Mill con soporte de instrucciones MOVBE, MMX, SSE, SSE2,
SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX, AVX2, AES, PCLMUL, FSGSBASE,
RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, AVX512F,
AVX512PF, AVX512ER, AVX512CD, AVX5124VNNIW, AVX5124FMAPS,
AVX512VPOPCNTDQ y extensiones 64-bit. Esta opción está disponible a
partir de GCC 8 y Clang 6. |
lakemont |
Intel Quark Lakemont MCU, basado en el procesador Intel Pentium. Esta opción está disponible a partir
de GCC 6 y Clang 3.9. |
nehalem |
Intel Nehalem con soporte de instrucciones MMX,
SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT y extensiones
64-bit. Esta opción está disponible a partir
de GCC 4.9. |
nocona |
Versión mejorada de Intel Pentium4 con soporte de instrucciones MMX, SSE, SSE2, SSE3 y extensiones 64-bit. |
penryn |
Intel
Penryn con soporte de instrucciones MMX, SSE, SSE2, SSE3,
SSSE3 y SSE4.1. |
pentiumpro |
Intel PentiumPro. |
pentium2 |
Intel Pentium2 basado en PentiumPro con soporte de instrucciones MMX. |
pentium3, pentium3m |
Intel Pentium3 basado en PentiumPro con soporte de instrucciones MMX y SSE. |
pentium4, pentium4m |
Intel Pentium4 con soporte de instrucciones MMX, SSE y SSE2. |
pentium-m |
Versión de bajo
consumo de Intel Pentium3 con soporte de instrucciones MMX, SSE y SSE2.
Utilizado por los portátiles Centrino. |
pentium-mmx |
Intel PentiumMMX basado en Pentium con soporte de instrucciones MMX. |
prescott |
Versión mejorada de Intel Pentium4 con soporte de instrucciones MMX, SSE, SSE2 y SSE3. |
rocketlake |
Intel Rocket Lake con soporte de instrucciones x86-64 (MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VBMI, AVX512IFMA, SHA, CLWB, UMIP, RDPID, GFNI, AVX512VBMI2, AVX512VPOPCNTDQ, AVX512BITALG, AVX512VNNI, VPCLMULQDQ, VAES) y extensiones 64-bit. Esta opción está disponible a partir de GCC 11 y Clang 13. |
sandybridge |
Intel Sandy Bridge con soporte de instrucciones
MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX,
AES, PCLMUL y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9 y Clang 3.6. |
sapphirerapids |
Intel Sapphire Rapids con soporte de instrucciones x86-64 (MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES, AVX512F, CLWB, AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VNNI, AVX512BF16, MOVDIRI, MOVDIR64B, AVX512VP2INTERSECT, ENQCMD, CLDEMOTE, PTWRITE, WAITPKG, SERIALIZE, TSXLDTRK, UINTR, AMX-BF16, AMX-TILE, AMX-INT8 and AVX-VNNI) y extensiones 64-bit. Esta opción está disponible a partir de GCC 11 y Clang 12. |
silvermont |
Intel Silvermont con soporte de instrucciones
MOVBE, MMX, SSE, MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1,
SSE4.2, POPCNT, AES, PCLMU, RDRND y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9 y Clang 3.6. |
skylake |
Intel Skylake con soporte de instrucciones MOVBE, MMX, SSE, SSE2,
SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX, AVX2, AES, PCLMUL, FSGSBASE,
RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT,
XSAVEC, XSAVES y extensiones 64-bit. Esta opción está disponible a partir
de GCC 6 y Clang 3.6. |
skylake-avx512 |
Intel Skylake Server
con soporte de instrucciones MOVBE, MMX, SSE, SSE2,
SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AVX, AVX2, AES, PCLMUL, FSGSBASE,
RDRND, FMA, BMI, BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT,
XSAVEC, XSAVES, AVX512F, AVX512VL, AVX512BW, AVX512DQ, AVX512CD y
extensiones 64-bit. Esta opción está disponible a partir
de GCC 6 y Clang 3.9. |
tigerlake |
Intel
Tiger Lake con soporte de instrucciones OVBE, MMX, SSE, SSE2, SSE3, SSSE3,
SSE4.1, SSE4.2, POPCNT, PKU, AVX, AVX2, AES, PCLMUL, FSGSBASE, RDRND, FMA, BMI,
BMI2, F16C, RDSEED, ADCX, PREFETCHW, CLFLUSHOPT, XSAVEC, XSAVES, AVX512F,
AVX512VL, AVX512BW, AVX512DQ, AVX512CD, AVX512VBMI, AVX512IFMA, SHA, CLWB, UMIP,
RDPID, GFNI, AVX512VBMI2, AVX512VPOPCNTDQ, AVX512BITALG, AVX512VNNI, VPCLMULQDQ,
VAES, PCONFIG, WBNOINVD, MOVDIRI, MOVDIR64B, AVX512VP2INTERSECT y extensiones 64-bit. Esta opción está disponible a partir de GCC 10 y Clang 10. |
tremont |
Intel Tremont con soporte
de instrucciones MOVBE, MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2,
POPCNT, AES, PCLMUL, RDRND, XSAVE, XSAVEOPT, FSGSBASE, PTWRITE, RDPID,
SGX, UMIP, GFNI-SSE, CLWB, ENCLV y extensiones 64-bit. Esta opción está disponible a
partir de GCC 9 y Clang 7. |
westmere |
Intel Westmere con soporte de instrucciones
MMX, SSE, SSE2, SSE3, SSSE3, SSE4.1, SSE4.2, POPCNT, AES,
PCLMUL y extensiones 64-bit. Esta opción está disponible a partir
de GCC 4.9. |
yonah |
Procesadores
basados en la microarquitectura de Pentium M, con soporte de
instrucciones MMX, SSE, SSE2 y SSE3. |
AMD |
amdfam10, barcelona |
Procesadores basados en
AMD Family 10h core con soporte de instrucciones x86-64 (MMX, SSE,
SSE2, SSE3, SSE4A, 3DNow!, enhanced 3DNow!, ABM y extensiones
64-bit). Esta opción está disponible a partir de GCC 4.3. La definición barcelona está disponible a partir de Clang 3.6. |
athlon, athlon-tbird |
AMD Athlon con soporte de instrucciones MMX, 3DNow!, enhanced 3DNow! y SSE prefetch. |
athlon4, athlon-xp, athlon-mp |
Versiones mejoradas de AMD Athlon con soporte de instrucciones MMX, 3DNow!, enhanced 3DNow! y full SSE. |
bdver1 |
Procesadores basados en
AMD Family 15h core con soporte de instrucciones x86-64 (FMA4, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE,
SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM y extensiones
64-bit). Esta opción está disponible a partir
de GCC 4.7. |
bdver2 |
Procesadores basados en
AMD Family 15h core con soporte de instrucciones x86-64 (BMI, TBM, F16C, FMA, LWP, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE,
SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM y extensiones
64-bit). Esta opción está disponible a partir
de GCC 4.7. |
bdver3 |
Procesadores basados en
AMD Family 15h core con soporte de instrucciones x86-64 (FMA4, AVX, XOP, LWP, AES, PCL_MUL, CX16, MMX, SSE,
SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM y extensiones
64-bit). Esta opción está disponible a partir
de GCC 4.8 y Clang 3.4. |
bdver4 |
Procesadores basados en AMD Family 15h core con soporte de instrucciones x86-64
(BMI, BMI2, TBM, F16C, FMA, FMA4, FSGSBASE, AVX, AVX2, XOP,
LWP, AES, PCL_MUL, CX16, MOVBE, MMX, SSE, SSE2, SSE3, SSE4A,
SSSE3, SSE4.1, SSE4.2, ABM y extensiones 64-bit). Esta opción está
disponible a partir de GCC 4.9 y Clang 3.5. |
btver1 |
Procesadores basados en
AMD Family 14h core con soporte de instrucciones x86-64 (MMX, SSE,
SSE2, SSE3, SSE4A, CX16, ABM y extensiones 64-bit). Esta opción está disponible a partir
de GCC 4.6. |
btver2 |
Procesadores basados en
AMD Family 16h core con soporte de instrucciones x86-64 (MOVBE, F16C,
BMI, AVX, PCL_MUL, AES, SSE4.2, SSE4.1, CX16, ABM, SSE4A, SSSE3, SSE3,
SSE2, SSE, MMX y extensiones 64-bit). Esta opción
está disponible a partir
de GCC 4.8. |
geode |
AMD integrado con soporte de instrucciones MMX y 3DNow!. Esta opción está disponible a partir de GCC 4.3. |
k6 |
AMD K6 con soporte de instrucciones MMX. |
k6-2, k6-3 |
Versiones mejoradas de AMD K6 con soporte de instrucciones MMX y 3DNow!. |
k8, opteron, athlon64, athlon-fx |
Procesadores basados en
AMD K8 core con soporte de instrucciones x86-64 (MMX, SSE, SSE2,
3DNow!, enhanced 3DNow! y extensiones 64-bit). |
k8-sse3, opteron-sse3, athlon64-sse3 |
Versiones mejoradas de
AMD K8 core con soporte de instrucciones SSE3. Esta opción
está disponible a partir de GCC 4.3. |
znver1 |
Procesadores basados en
AMD Family 17h core con soporte de instrucciones x86-64 (BMI, BMI2,
F16C, FMA, FSGSBASE, AVX, AVX2, ADCX, RDSEED, MWAITX, SHA, CLZERO, AES,
PCL_MUL, CX16, MOVBE, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3, SSE4.1,
SSE4.2, ABM, XSAVEC, XSAVES, CLFLUSHOPT, POPCNT y extensiones
64-bit). Esta opción está disponible a partir de GCC 6 y Clang 4. |
znver2 |
Procesadores basados en
AMD Family 17h core con soporte de instrucciones x86-64 (BMI, BMI2,
,CLWB, F16C, FMA, FSGSBASE, AVX, AVX2, ADCX, RDSEED, MWAITX, SHA,
CLZERO, AES, PCL_MUL, CX16, MOVBE, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3,
SSE4.1, SSE4.2, ABM, XSAVEC, XSAVES, CLFLUSHOPT, POPCNT y extensiones
64-bit). Esta opción está disponible a partir de GCC 9 y Clang 9. |
znver3 |
Procesadores basados en AMD Family 19h core con soporte de instrucciones x86-64 (BMI, BMI2, CLWB, F16C, FMA, FSGSBASE, AVX, AVX2, ADCX, RDSEED, MWAITX, SHA, CLZERO, AES, PCLMUL, CX16, MOVBE, MMX, SSE, SSE2, SSE3, SSE4A, SSSE3, SSE4.1, SSE4.2, ABM, XSAVEC, XSAVES, CLFLUSHOPT, POPCNT, RDPID, WBNOINVD, PKU, VPCLMULQDQ, VAES) y extensiones 64-bit. Esta opción está disponible a partir de GCC 11 y Clang 12. |
Optimizaciones adicionales
Optimizaciones adicionales |
GCC |
Graphite
|
$
export {C,CXX}FLAGS+=' -ftree-loop-linear
-floop-strip-mine -floop-block' |
IPA
|
$ export {C,CXX}FLAGS+=' -fipa-pta'
|
Clang |
New Pass Manager |
$ export {C,CXX}FLAGS+=' -fexperimental-new-pass-manager' |
Polly |
$ export {C,CXX}FLAGS+=' -O3 -mllvm -polly -mllvm -polly-vectorizer=stripmine' |
Parámetros adicionales
Parámetros adicionales de eliminación de errores específicos en el proceso de compilación |
Clang 6 y superiores |
$ export CXXFLAGS+=' -Wno-reserved-user-defined-literal' |
Parámetros adicionales de eliminación de errores específicos en el proceso de compilación |
Clang 15 |
$ export CXXFLAGS+=' -Wno-c++11-narrowing' |
Establecer la ruta de búsqueda de directorios de librerías en sistemas de 64 bits multiarquitectura |
$ export
LDFLAGS+=" -L/usr/lib64 -L/usr/local/lib64 -L/opt/gcc12/lib64" |
Cada usuario tendrá que establecer la ruta de búsqueda de directorios, en función de la distribución que utilice. |
Establecer el uso de enlazador dinámico para Mold |
$ export LDFLAGS+=' -fuse-ld=mold' |
Establecer el uso de enlazador dinámico para LLD |
$ export LDFLAGS+=' -fuse-ld=lld' |
Establecer la variable de entorno de uso de compilador para Clang |
$ export CC=clang CXX=clang++ |
Extracción y
Configuración 
$ tar zxvf avidemux_2.8.1.tar.gz
$ cd avidemux_2.8.1
$ mkdir build; cd build
$ cmake -DCMAKE_INSTALL_PREFIX=/usr ../avidemux_core
|
Explicación de los
comandos
-DCMAKE_INSTALL_PREFIX=/usr : Instala el programa en el directorio principal, /usr.
Compilación
Parámetros de compilación opcionales
VERBOSE=1 : Muestra más información en el proceso de compilación.
-j$(nproc)
: Establece el número de procesos de compilación en paralelo, en función del número de
núcleos e hilos que tenga nuestro procesador, tomando como referencia la información mostrada por el sistema con el comando correspondiente. Si nuestro procesador es mononúcleo de un solo hilo, no añadir esta opción.
Instalación como root
$ su
# make install/strip
# chmod 755 /usr/lib64/libADM*
# ldconfig -v
# exit
$ rm -rf * |
Configuración de la interfaz de línea de comandos del programa
$ cmake -DCMAKE_INSTALL_PREFIX=/usr ../avidemux/cli
|
Compilación
Instalación como root
$ su
# make install/strip
# ldconfig -v
# exit
$ rm -rf * |
Configuración de la interfaz gráfica Qt5 del programa
$ export LDFLAGS+=" -lXext"
$ export PATH=$(pkg-config --variable=host_bins Qt5Core):$PATH
$ cmake -DCMAKE_INSTALL_PREFIX=/usr -DENABLE_QT5=ON \
-DCMAKE_PREFIX_PATH=$(pkg-config --variable=libdir Qt5Core)/cmake ../avidemux/qt4
|
Explicación de los
comandos
export LDFLAGS+=" -lXext"
: Requerido para una correcta compilación de la interfaz
gráfica Qt5 del programa. El error que soluciona es el siguiente:
commonQt4/ADM_render/libADM_render6_QT5.so: error: undefined reference to 'XShmAttach'
|
export PATH=$(pkg-config --variable=host_bins Qt5Core):$PATH : Para evitar que el comando de configuración, detecte los ejecutables de Qt4
que tienen que crear las traducciones del programa (si lo tenemos
instalado y existe una variable de entorno PATH configurada para Qt4), en lugar de los ejecutables de Qt5, establecemos una variable de entorno PATH, que coloca en primer lugar de búsqueda, el directorio bin de la instalación de Qt5.
-DENABLE_QT5=ON : Activa la compilación de la interfaz gráfica Qt5 en lugar de la predefinida Qt4.
-DCMAKE_PREFIX_PATH=$(pkg-config --variable=libdir Qt5Core)/cmake : Si hemos instalado Qt5 en un directorio no habitual, le indicamos la ruta correspondiente a los archivos de configuración de CMake que se instalan con el mismo.
Compilación
Instalación como root
$ su
# make install/strip
# ldconfig -v
# exit
$ rm -rf * |
Configuración de los plugins del programa
$ sed -e '5acmake_policy(SET CMP0002 OLD)' -e '5acmake_policy(SET CMP0013 OLD)' \
-i ../avidemux_plugins/CMakeLists.txt
$ cmake -DCMAKE_INSTALL_PREFIX=/usr -DAVIDEMUX_SOURCE_DIR=../ -DPLUGIN_UI=COMMON,QT4,CLI \
-DUSE_EXTERNAL_LIBA52=ON -DUSE_EXTERNAL_LIBASS=ON \
-DUSE_EXTERNAL_LIBMAD=ON -DUSE_EXTERNAL_MP4V2=ON \
-DENABLE_QT5=ON -DCMAKE_PREFIX_PATH=$(pkg-config --variable=libdir Qt5Core)/cmake \
../avidemux_plugins
|
Explicación de los
comandos
sed -e '5acmake_policy(SET CMP0002 OLD)' -e '5acmake_policy(SET CMP0013 OLD)' \
-i ../avidemux_plugins/CMakeLists.txt : Evita un error en la configuración de los plugins con las últimas versiones de CMake.
-DAVIDEMUX_SOURCE_DIR=../ : Le indicamos la ruta al directorio raíz del paquete, requerida para la compilación correcta de los plugins.
-DPLUGIN_UI=COMMON,QT4,CLI
: Compila los plugins de las dos interfaces del programa, la
gráfica y la de línea de comandos, y también los
que son comunes a las dos interfaces.
-DUSE_EXTERNAL_LIBA52=ON : Utiliza la versión del sistema de Liba52 en lugar de la proporcionada por el paquete.
-DUSE_EXTERNAL_LIBASS=ON : Utiliza la versión del sistema de Libass en lugar de la proporcionada por el paquete.
-DUSE_EXTERNAL_LIBMAD=ON : Utiliza la versión del sistema de MAD en lugar de la proporcionada por el paquete.
-DUSE_EXTERNAL_MP4V2=ON : Utiliza la versión del sistema de Libmp4v2 en lugar de la proporcionada por el paquete.
-DENABLE_QT5=ON : Activa la compilación de la interfaz gráfica Qt5 en lugar de la predefinida Qt4.
-DCMAKE_PREFIX_PATH=$(pkg-config --variable=libdir Qt5Core)/cmake : Si hemos instalado Qt5 en un directorio no habitual, le indicamos la ruta correspondiente a los archivos de configuración de CMake que se instalan con el mismo.
Compilación
Instalación como root
$ su
# make install/strip
# ldconfig -v |
Borrar las locales adicionales instaladas
# for i in ar bg ca cs da de el en eu fi gd he fr hu it ja ko lv pl pt \
pt_BR ru sk sr sr@latin uk tr zh_CN zh_TW ; do \
rm -f /usr/share/avidemux6/qt5/i18n/{avidemux,qtbase}_$i.qm &> /dev/null ; \
done
|
Creación del archivo avidemux-vsproxy.desktop
Crearemos el archivo desktop de la interfaz gráfica de vsProxy para poder lanzarla desde cualquier menú compatible y poder abrir los scripts en formato VPY compatibles con VapourSynth.
[Desktop Entry]
Name=Avidemux-vsProxy
GenericName=Avidemux-vsProxy
Comment=Lanzador de scripts creados con VapourSynth para trabajar con Avidemux
Exec=vsProxy_gui_qt5
Type=Application
StartupNotify=true
Icon=org.avidemux.Avidemux.png
Categories=AudioVideo;Video;AudioVideoEditing;
Type=Application
|
Lo guardamos con la codificación de caracteres UTF-8, y con el nombre avidemux-vsproxy.desktop. Luego lo instalamos como root en /usr/share/applications.
La desinstalación y respaldo de este archivo viene incluida en
los scripts correspondientes proporcionados en este manual.
$ su
# install -dm755 /usr/share/applications
# install -m644 avidemux-vsproxy.desktop /usr/share/applications
|
Estadísticas de Compilación e Instalación de Avidemux
Estadísticas de Compilación e Instalación de Avidemux |
CPU |
AMD Ryzen 5 5500 |
MHz |
3593.250 (BoostMax=4457.000) |
RAM |
32 GB |
Tarjeta gráfica |
GeForce GTX 750 Ti |
Controlador de gráficos |
NVIDIA Linux 525.60.11 |
Sistema de archivos |
XFS |
Versión de Glibc |
2.36 |
Versión del Kernel |
6.1.0-ml SMP PREEMPT_DYNAMIC x86_64 |
Modo de frecuencia de la CPU |
schedutil |
Enlazador dinámico |
GNU gold (Binutils 2.39) 1.16 |
Compilador |
GCC 12.2.0 + CCache 4.7.4 |
Parámetros de optimización |
-03 -march=znver3 -mtune=znver3 -ftree-loop-linear -floop-strip-mine -floop-block -fipa-pta |
Parámetros de compilación |
VERBOSE=1 -j12 |
Tiempo de compilación |
3' 25" |
Archivos instalados |
703 |

|
Ocupación de espacio en disco |
28,2 MB |
Consumo inicial de CPU y RAM de Avidemux
Consumo inicial de CPU y RAM de Avidemux |
Programa
|
CPU |
RAM |
avidemux3_qt5 |
0 % |
188,9 MB |
Para medir el consumo de CPU se utiliza el programa top, y para medir
el consumo de RAM se utiliza el script de Python, ps_mem.py, creado por Pádraig Brady, que podemos encontrar en este enlace. |
Directorio de configuración personal
~/.avidemux6 |
Es el directorio de configuración personal de Avidemux en nuestro home. |
Desinstalación
como root
1) MODO TRADICIONAL
*********************
2) MODO MANUALINUX
avidemux-2.8.1-scripts.tar.gz
$ su
# tar zxvf avidemux-2.8.1-scripts.tar.gz
# cd avidemux-2.8.1-scripts
# ./Desinstalar_avidemux-2.8.1 |
Copia de Seguridad
como root
Con este otro script creamos una copia de seguridad de los binarios
compilados, recreando la estructura de directorios de los mismos en un
directorio de copias de seguridad (copibin)
que se crea en el directorio /var. Cuando se haya creado el paquete comprimido de
los binarios podemos copiarlo como usuario a nuestro home
y borrar el que ha creado el script de respaldo, teniendo en cuenta que si queremos
volver a restaurar la copia, tendremos que volver a copiarlo al lugar
donde se ha creado.
$ su
# tar zxvf avidemux-2.8.1-scripts.tar.gz
# cd avidemux-2.8.1-scripts
# ./Respaldar_avidemux-2.8.1 |
Restaurar la Copia de Seguridad
como root
Y con este otro script (que se copia de forma automática cuando
creamos la copia de respaldo del programa) restauramos la copia de
seguridad como root cuando resulte necesario.
$ su
# cd /var/copibin/restaurar_copias
# ./Restaurar_avidemux-2.8.1
|
Iniciamos Avidemux
Basta teclear el comando avidemux3_qt5
en una terminal o en un lanzador para que el programa se inicie.
Enlaces
http://avidemux.sourceforge.net >> La web de Avidemux.
|