Pregunta

Tengo un archivo AVI, que quiero volver a codificar para que quepa en un CD de 650 MB. ¿Cómo puedo codificar de modo que el tamaño del archivo no exceda el tamaño dado? ¿Qué programa puedo usar?

¿Fue útil?

Solución

AutoGK puede hacer esto de manera muy efectiva. Principalmente diseñado para fines de copia de seguridad de DVD **** tos ****, pero también aceptará AVI como fuente. Es más una colección de programas de código abierto con una GUI de coordinación, así que no se preocupe cuando el instalador instale varios elementos.

Otros consejos

Supongo que desea hacer esto mediante programación:

Para Windows:

Puede usar directshow para transcodificar su video creando un gráfico de filtro.

Obtenga (si aún no tiene) la plataforma SDK para Windows. Luego navegue aquí para ver algunos de los ejemplos de muestra directa que construyen gráficos de filtro para la transcodificación.

Para construir necesitarás las clases base. Puedes construirlos aquí:

C:\Program Files\Microsoft SDKs\Windows\v6.1\Samples\Multimedia\DirectShow\BaseClasses

Entonces mira los ejemplos aquí:

C:\Program Files\Microsoft SDKs\Windows\v6.1\Samples\Multimedia\DirectShow

También puede crear manualmente gráficos de filtro para familiarizarse con su uso y ver cómo tienen sentido estas cosas (como la enumeración de los codificadores que aprenderá en los ejemplos):

C:\Program Files\Microsoft SDKs\Windows\v6.1\Bin\graphedt.exe

Una vez que haya llegado tan lejos y comprenda cómo funciona la forma directa, puede usar algunas matemáticas para descubrir cómo transcodificar su video para que se ajuste al tamaño que desea. Para hacer esto, es posible que desee ver cuántos cuadros / segundo tiene su entrada de video y qué tan grande es cada cuadro.

Los diferentes codificadores funcionan de diferentes maneras:

Supongamos que está transcodificando un archivo avi a un archivo avi más pequeño o de menor calidad. Observe los tamaños de cuadros de entrada y fps para determinar el tamaño completo del archivo, luego use un poco de álgebra para determinar cómo reducir el tamaño de cuadro o reducir el número de cuadros por segundo (o una combinación de ambos) para lograr el tamaño deseado (que puede ser su variable de entrada).

En cuanto a otros codificadores, es posible que desee ver cómo funcionan. Los codificadores con pérdida como mp4 realizan estimaciones para descubrir qué video ha cambiado de cuadro a cuadro, y esa información se almacena en el archivo para reconstruir los cuadros. Tendrá que leer sobre cómo funcionan, o verifique cómo usar su codificador particular para obtener más detalles.

Para Linux (y también para Windows):

Puede usar ffmpeg , que es un todo en uno para la transcodificación y otras cosas para video. Incluso puede encontrar exe precompilado de la aplicación de línea de comandos, aunque la página principal no lo aloja (solo la fuente). Esta aplicación utiliza bibliotecas de video de código abierto para realizar gran parte de la transcodificación de video y muchas otras cosas. Si puede encontrar un buen archivo exe confiable, probablemente debería verificar esto si desea algo que sea fácil de usar para su aplicación. Mira su página de inicio aquí.

Espero que esto te ayude a comenzar.

Para que se ajuste a un tamaño específico, debe usar una velocidad de bits adecuada.

Para video con tasa de bits fija, para obtener la tasa de bits objetivo, tomaría el tamaño objetivo, en bits, y la longitud de la fuente en segundos.

target bit-rate = size / seconds

Por ejemplo:

seconds = (90mins * 60) = 5400
size = ((650MB * 1024) * 8) = 5324800
target bit-rate = ~986 kilobytes per second

Con velocidad de bits variable, las cosas son bastante más complicadas. No estoy seguro de si hay una manera de hacer con precisión el archivo de salida de un tamaño establecido. La forma más fácil es calcular la tasa de bits máxima utilizando el método anterior,

Calcular el número de segundos que es el AVI. Luego, toma el tamaño del archivo y divide por la longitud. Convierte a kilobits por segundo, y úsalo como tu mediana de bitrate. (Use Google para hacer los cálculos y la conversión fácilmente).

Puede pesar las velocidades de bits de video y audio como lo desee. Por lo general, 96 kbps es lo suficientemente bueno con AAC, pero es posible que desee más o menos. Experimento.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top