Pregunta

¿Cuál es la mejor manera de transcodificar audio y vídeo para mostrarlos en la web?

Necesito hacerlo mediante programación.Me gustaría hacer algo como YouTube o Google Video donde los usuarios puedan cargar el formato que quieran y yo lo codifique en flv, mp3 y/o mp4.Podría hacerlo en nuestro servidor, pero prefiero usar una instancia EC2 o incluso un servicio web.Disponemos de un servidor Windows 2008.

¿Fue útil?

Solución

Recomiendo encarecidamente ffmpeg.En Windows, he encontrado este sitio para alojar buenos binarios.

Otros consejos

Depende de cuánto quieras gastar.Si se trata de una idea completamente nueva (y en su mayoría sin financiación), entonces siga la ruta ffmpeg, pero a medida que escale y busque mejorar la calidad, considere una de las herramientas de codificación más profesionales que se pueden automatizar (Rhozet, Inlet, Digital Rapids son 3 opciones).

ffmpeg puede hacerlo, es una herramienta de línea de comandos que utiliza libavcodec.Puede manejar la conversión de la mayoría de los formatos de video.Su licencia es LPGL, si se adapta a tus necesidades.Puede utilizarlo como un proceso separado mediante programación, o si se siente incondicional, puede usar la biblioteca libavcodec usted mismo para codificar directamente.

Cuando desea transcodificar a Flv (que probablemente sea el mejor para la web), uso esta línea:

ffmpeg -hq -y -i $directory/$file -r 20 -s 300x200 -deinterlace -ar 22050 $directory/$file.flv 1>/dev/null 2>/dev/null

Funciona muy bien, bajo Linux por supuesto :-).

Tenga en cuenta que ciertas partes de ffmpeg están bajo GPL.Creo que el módulo libpostproc lo es y, si no recuerdo mal, se utiliza en la transcodificación.Asegúrese de que esta licencia sea compatible con lo que está haciendo.

Echaría un vistazo al SDK de referencia de Main Concept:

http://www.mainconcept.com/site/developer-products-6/pc-based-sdks-20974/reference-sdk-21221/information-21243.html

Está diseñado para la transcodificación y, dado que es un SDK con licencia, no tiene ninguno de los problemas legales relacionados con ffmpeg/libavcodec.

Si está buscando cosas con licencia GPL:

Para jugar con el audio, prueba medias. ¡Muy poderoso!¡Hace mucho!Está incluido en la mayoría de las distribuciones de Linux.

También está el famoso ABURRIDO para codificación mp3 [audio].

Para vídeo, mencodificador ¡es impresivo!es parte del jugador paquete.Manejará conversiones de la mayoría de los formatos de video.Mucho más de lo que jamás soñé que existía.(Para documentación, consulte Capítulo 9.Uso básico de MEncoder y Capítulo 10.Codificación con MEncoder.)

Es algo más limitado en cuanto a lo que puede crear.Pero sí es compatible mpeg4, mpeg2, DVD-MPEG, flv, y muchos otros.(Aunque no lo he probado flv Yo mismo, Google muestra que otras personas lo están usando).

He hecho cosas como jpeg + sonido -> película mpeg4:

nice +20 $MENCODER mf://${JPEGFILE}  -mf w=720:h=480:fps=1/${SOUNDLENGTH}:type=jpeg -audiofile ${SOUNDFILE} -ovc lavc -oac lavc -lavcopts vcodec=mpeg4 -ofps 30000/1001 -o ${MENU_MPG}

O transcodificar vídeo con formato arbitrario a mpeg compatible con DVD:

nice +20 $MENCODER -edl ${EDL} -ovc lavc -oac lavc -lavcopts vcodec=mpeg2video:vrc_buf_size=1835:vrc_maxrate=9800:vbitrate=${VBITRATE}:keyint=18:acodec=ac3:abitrate=192:aspect=4/3:trell:mbd=2:dia=4:cmp=3:precmp=3:ildctcmp=3:subcmp=3:mbcmp=3:cbp:mv0:dc=10 -of mpeg -mpegopts format=dvd -vf scale=720:480,harddup -srate 48000 -af lavcresample=48000 -ofps 30000/1001 -o ./${INFILE}.reformatted  ${FILEPATH}

-edl/-edlout [Editar listas de decisiones] se utilizan para recortar solo las secciones de video que quiero.

${VBITRATE} normalmente es 5000 para DVD-mpeg-video.Pero si lo equivocas un poco, puedes incluir más videos en un DVD.Suponiendo que puedas tolerar los artefactos.

scale=720:480,harddup: pequeño problema con la escala incorrecta para mi reproductor de DVD y harddup para resolver un problema de desincronización de sonido y video en mi "el barato" jugador.

(Para reproducir en un reproductor de pantalla ancha que no soporta video 4x3, he usado atrocidades como "aspecto=16/9", "-vf escala=560:480,expandir=720:480,harddup".Pero, en general, no querrás desperdiciar bits codificando barras negras).

Este no es el conjunto de opciones más eficiente para mencodificador ¡con mucho!La ejecución puede llevar mucho tiempo.Pero tenía otros objetivos en mente...

Codificador de carbono Rhozet puede manejar un amplia gama de formatos Además, puedes usar complementos para modificar el video (por ejemplo, agregar una marca de agua)

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