| Ambos lados, revisión anterior Revisión previa Próxima revisión | Revisión previa |
| doc:tec:sis:gnu:media_convert:inicio [2026/01/16 12:31] – editor externo (Fecha desconocida) 127.0.0.1 | doc:tec:sis:gnu:media_convert:inicio [2026/05/04 12:25] (actual) – [Convertir vídeo AVI en MP4 sin pérdida de calidad] fepg |
|---|
| ====== Conversiones multimedia ====== | ====== Conversiones multimedia ====== |
| |
| * [[https://superuser.com/questions/1380946/how-do-i-convert-10-bit-h-265-videos-to-h-264-without-quality-loss|How do I convert 10-bit H.265 videos to H.264 without quality loss?]] | **H265** |
| * [[https://v2.zaclys.com/Linux-convertir-une-video-H265-HEVC-en-H264-classique,p58,473|Linux : convertir une vidéo H265 (HEVC) en H264 classique]] | - [[https://superuser.com/questions/1380946/how-do-i-convert-10-bit-h-265-videos-to-h-264-without-quality-loss|How do I convert 10-bit H.265 videos to H.264 without quality loss?]] |
| | - [[https://v2.zaclys.com/Linux-convertir-une-video-H265-HEVC-en-H264-classique,p58,473|Linux : convertir une vidéo H265 (HEVC) en H264 classique]] |
| | \\ |
| | **Recortar y concatenar** |
| | - [[https://geekland.eu/recortar-un-video-en-partes-con-ffmpeg-y-sin-transcodificar-en-linux/|Recortar un vídeo en partes con ffmpeg y sin transcodificar en Linux]] 8-) |
| | - [[https://www.linuxadictos.com/como-unir-videos-en-linux-por-medio-de-ffmpeg.html|Cómo unir vídeos en Linux por medio de FFmpeg]] 8-) |
| | - [[https://es.linux-console.net/?p=31757#google_vignette|Cómo concatenar varios videos en un archivo en Linux en GUI sin volver a codificar (HEVC y otros formatos de video)]] 8-) |
| | \\ |
| | ===== Convertir vídeo AVI en MKV sin pérdida de calidad ===== |
| | |
| | * Con **ffmpeg** podemos pasar de AVI a MKV sin recodificar, así que no hay pérdida de calidad porque solo cambiamos el contenedor. |
| | * La conversión se hace copiando las pistas de vídeo y audio tal cual, lo que mantiene la calidad original y acelera mucho el proceso. |
| | * 8-) **Comando básico** <code> |
| | |
| | ffmpeg -i entrada.avi -c copy salida.mkv |
| | |
| | </code> donde: |
| | * ''-i entrada.avi'': indica el archivo origen. |
| | * ''-c copy'': copia vídeo y audio sin volver a codificar. |
| | * ''salida.mkv'': archivo final en contenedor MKV. |
| | * **Ejemplo práctico** <code> |
| | |
| | ffmpeg -i video.avi -c copy video.mkv |
| | |
| | </code> Si el AVI contiene códecs compatibles con MKV, esta es la forma ideal porque conserva la calidad original y termina rápido. |
| | * **Comprobar el resultado**. Podemos verificar las pistas con: <code> |
| | |
| | ffprobe video.mkv |
| | |
| | </code> |
| | * **En caso en que no funcione**. Si alguna pista del AVI no es compatible con MKV, ''ffmpeg'' puede dar error o requerir recodificación de esa pista concreta. En ese caso ya no sería ''sin pérdida'', porque habría que transcodificar solo lo necesario. |
| | |
| | **Comando para convertir en lote todos los AVI de una carpeta** |
| | |
| | * Desde dentro de la carpeta con los AVI: <code> |
| | |
| | for f in *.avi; do |
| | ffmpeg -i "$f" -c:v copy -c:a copy "${f%.avi}.mkv" |
| | done |
| | |
| | </code> Ese bucle procesa cada ''.avi'' y genera un ''.mkv'' con el mismo nombre base. |
| | * Variante más robusta. Si no queremos sobrescribir archivos ya existentes: <code> |
| | |
| | for f in *.avi; do |
| | out="${f%.avi}.mkv" |
| | [ -e "$out" ] && continue |
| | ffmpeg -i "$f" -c:v copy -c:a copy "$out" |
| | done |
| | |
| | </code> |
| | * Si algún AVI tiene audio o vídeo en un códec poco compatible dentro de MKV, el contenedor puede aceptar la copia igual, pero si un reproductor falla entonces habría que recodificar solo esa pista concreta. |
| | \\ |
| | ===== Convertir vídeo AVI en MP4 sin pérdida de calidad ===== |
| | |
| | * Para convertir un vídeo de formato AVI a MP4 desde la consola en Linux sin pérdida de calidad, la forma más efectiva es realizar una **copia directa de los *streams* (flujos) de datos**. |
| | * Dado que el formato MP4 es un contenedor compatible con la mayoría de los códecs que suelen utilizar los archivos AVI (como H.264 o MPEG-4), podemos simplemente "reempaquetarlos" sin necesidad de volver a codificar el vídeo o el audio. |
| | * **Comando para conversión sin pérdida**. Utilizaremos la herramienta ''ffmpeg'' con el parámetro ''copy'' <code> |
| | |
| | ffmpeg -i nombre_de_entrada.avi -c:v copy -c:a copy nombre_de_salida.mp4 |
| | |
| | </code> **Explicación de los parámetros:** |
| | * ''-i nombre_de_entrada.avi'': Especifica el archivo de origen. |
| | * ''-c:v copy'': Indica a ''ffmpeg'' que copie el flujo de vídeo tal cual está, sin recodificarlo. |
| | * ''-c:a copy'': Indica que copie el flujo de audio directamente. |
| | * ''nombre_de_salida.mp4'': Es el nombre del nuevo archivo resultante. |
| | \\ |
| | **Consideraciones importantes** |
| | * **Compatibilidad**. Este método funciona instantáneamente porque no procesa los datos, solo cambia el "contenedor". Si el códec de vídeo original dentro del AVI fuera incompatible con el formato MP4 (algo poco común en archivos modernos), este comando fallaría o el archivo resultante podría no reproducirse correctamente. |
| | * **Reinstalación**. Si no tenemos ''ffmpeg'' instalado, podemos instalarlo en sistemas basados en Debian/Ubuntu con ''sudo apt install ffmpeg''. |
| | * **Conversión masiva:** Si deseamos convertir todos los archivos ''.avi'' de una carpeta a ''.mp4'' de una sola vez, podemos usar este bucle en la terminal: <code> |
| | |
| | for i in *.avi; do ffmpeg -i "$i" -c:v copy -c:a copy "${i%.avi}.mp4"; done |
| | |
| | </code> |
| | * 8-) **Transcodificación**. Si el archivo original utiliza códecs muy antiguos que no son compatibles con tus dispositivos finales (como reproductores DLNA o TV), el comando anterior no los hará compatibles, solo cambiará el contenedor. Si el archivo resultante no se reproduce correctamente tras la copia, necesitaremos recodificar el vídeo, por ejemplo, utilizando el códec H.264 (más compatible): <code> |
| | |
| | ffmpeg -i archivo_entrada.avi -c:v libx264 -crf 18 -c:a aac archivo_salida.mp4 |
| | |
| | </code> Donde el valor ''-crf 18'' ofrece una calidad visualmente sin pérdida; valores más altos reducen el tamaño pero bajan la calidad. |
| | \\ |
| * [[https://www.maketecheasier.com/convert-video-to-mp4-handbrake-linux/|Converting Video Files to H.264 MP4 Format Using HandBrake on Linux]] | * [[https://www.maketecheasier.com/convert-video-to-mp4-handbrake-linux/|Converting Video Files to H.264 MP4 Format Using HandBrake on Linux]] |
| * [[https://geekland.eu/recortar-un-video-en-partes-con-ffmpeg-y-sin-transcodificar-en-linux/|Recortar un vídeo en partes con ffmpeg y sin transcodificar en Linux]] 8-) | \\ |
| * [[https://www.linuxadictos.com/como-unir-videos-en-linux-por-medio-de-ffmpeg.html|Cómo unir vídeos en Linux por medio de FFmpeg]] 8-) | ===== Convertir vídeo WMV en MP4 sin pérdida de calidad ===== |
| * [[https://es.linux-console.net/?p=31757#google_vignette|Cómo concatenar varios videos en un archivo en Linux en GUI sin volver a codificar (HEVC y otros formatos de video)]] 8-) | |
| | * De manera semejante a las anteriores conversiones... |
| | * **Comando para conversión sin pérdida**. Utilizaremos la herramienta ''ffmpeg'' con el parámetro ''copy'' <code> |
| | |
| | ffmpeg -i nombre_de_entrada.wmv -c copy nombre_de_salida.mp4 |
| | |
| | </code> |
| | * 8-) Si lo anterior falla podemos probar <code> |
| | |
| | ffmpeg -i archivo_entrada.wmv -c:v libx264 -crf 18 -preset medium -c:a aac -b:a 192k archivo_salida.mp4 |
| |
| | </code> donde conseguimos visual alta, aunque ya no es "sin pérdida" absoluta. |
| | \\ |