jueves, 1 de agosto de 2013

Conversion videos con el Handbrake

El Handbrake es un programa muy versatil, analiza el video a codificar para que el usuario no tenga mucho que configurar, es muy veloz, y la calidad del video es mas que aceptable, permite convertir video de 10bits a 8 bits sin problemas y tambien los archivos provenientes de Decos Digitales (.TS)


lo primero que observamos una vez que abrimos el programa es que hay varias opciones para escoger el tipo de encodeo, asi que para evitar problemas escogemos: regular/normal, high profile es cuando usemos videos de muy alta resolucion (mayor a 1080p)

Pestaña Picture
nos indica las dimensiones con que queremos que salga el video, en el encontramos subpestañas anamorphic, el cual nos indica la relacion de especto que queremos del video: none=ninguna (sin modificar nada del video), strict ( se ciñe a las especificaciondes originales del video), Loose (en este caso hay perdida si es que modificamos el ancho o alto, es decir va a cortar el video de acuerdo a la resolucion del video) y custom (es la personalizada por el usuario)

la subpestaña crooping: auto: el handbrake automaticamente selecciona que parte del video va a tomar, normalmente lo corta cuando el video presenta franjas negras arriba y abajo, aunque tambien puede tener a los laterales, en custom el usuario decide cuantas lineas verticales izquierda o derecha decide cortar
Pestaña Video
este es uno de los aspectos mas importantes a configurar, los pasos anteriores se pueden obviar si el video original no presenta nada estraño, pero este paso no, aqui elegimos el codec de video y framerate : 23.96 o 25 para pal y 29.97 para ntsc, si escoges variable framerate , el video no se establecera en pal o ntsc sino que este variara de acuerdo al video
la subpestaña quality nos deja escoger entre dos opciones:

Contante calidad : esta en escala logaritmica, por defecto esta en un valor de 20, si movemos el cursor a la derecha se acercara a uno, que es el equivalente a la misma calidad pero el tamaño del video se incrementara sobremanera asi como tambien el tiempo de encodeo, y por consecuente al lado izquierdo justamente lo contrario, menor calidad y menor tiempo de encodeo, pero tambien mas liviano, si el video que tienes no es muy claro la recomendacion es ponerlo en 25, ahorraras tiempo y espacio, no perdera mucha calidad.  

AVG Bitrate: es el bitrate promedio que le damos a nuestro video en kbps, nos da la opcion de hacerlo en 2 pasos y en modo turbo el primer paso si marcamos el anterior

Pestaña Filters
Un punto importate es la pestaña video filters, normalmente encontramos videos que no podemos convertir a menos que incluyamos unos filtros de video que permitan al conversor interpretar la informacion, como los provenientes de los Decos actuales (y los archivos de video M-ON que tanto vemos en la web) y es que estos tipos de videos estan entrelazado y lo queremos desentrelazar para verlos tanto en los reproductores comunes como en nuestra pc, por lo cual muestro la configuracion que nos da una conversion mas rapida y eficiente:

En Detelecine Es la conversion inversa de Telecine, la palabra telecine proviene de la contracción de televisión y cine. Las películas cinematográficas se ruedan a 24 imágenes por segundo (fps o Frames per second FPS en ingles). En cambio, los sistemas de televisión funcionan con distinto número de fps (29,97 en Ntsc y 25 en Pal) , dejamos esta pestaña en Default ya que el handbrake toma el mejor valor

En Decomb: El filtro decomb Mira cada píxel de cada fotograma de un vídeo. Entonces sólo desentrelaza marcos que muestran cantidades visibles de peinar o desentrelazar

En deinterlace:  ejecuta una accion similar al decomb y su funcion principal es la de desentrelazar el video, es decir para eliminar las lineas horizontales asi que tenemos que escoger entre uno u otro, haciendo pruebas he llegado a la conclusion que el  deinterlace  es mas rapido (alredeor del 50%) si escogemos la opcion fast 
 

un video con la configuracion antes establecida es compatible tanto con TVled asi como tambien BDplayer, xbox, ps3 y cualquier otro electromdomestico que soporte mp4 hasta una resolucion fullHD, por defecto el Handbrake establece un nivel de avc en 4.1 cuando escogemos regular u high profile, lo cual es soportado por los sistemas antes mencionados, otros programas como en megui cuando se dejan por default asi que hay que configurarlo, en el caso del mediacoder viene por defecto en 4.1, pero si por error lo modificamos a 5.1 tendremos el mismo error, en el handbrake estos valores vienen por defecto de acuerdo al profile inicial que establezcamos

Cambiar Profile High@L5 a High@L4 Compatible: XBOX 360, PS3, Blu-ray

Como anteriormente he mencionado el nivel de profile es justamente lo que impide que nuestros videos se vean en nuestros reproductores caseros, que solo sorportan hasta el nivel L4 existen algunas formas de hacer esto pero al probarlas no me daban resultado, hasta ahora, para lo cual se necesitara:

1.- Un demultiplexor de videos como el MKV extract (para MKV, si es con interface gui mejor), el Yamb (para Mp4), o el media player classic ( sea avi, mp4 o mvk), pero sirve cualquiera que pueda separar el video del audio en streams

2. -El MKVmerge GUI v4.6.0

3.- IDC Multi Changer V0.1 (Requiere Microsoft .NET Framework)

4.- El Mp4Muxer (Requiere Microsoft .NET Framework) u otro multiplexor mp4

5.- Mediainfo, ya sea del K-Lite o del media player home cinema

Para Videos MKV (BDPlayer)

Paso 1.- Verificar el framerate o tasa de bits del Video (esta en fps), ya sea con el mediainfo o con el MP                   Home cinema
Paso 2.- Ejecutar el  IDC Multi Changer V0.1 y cargamos el video ya sea arrastrandolo o presionando el                   boton Add files en la parte inferior izquierda

[Image]

En Change To establecemos ya sea 4.0 o 4.1 y  le damos a convert files y automaticamente cambia al profile que hemos especificado,  revisamos con el mediainfo y efectivamente vemos que ha cambiado, pero al ponerlo en el Blu-ray, no me reproduce, que ha pasado?, revisando otra vez con el mediainfo vemos si bien el video ha cambiado a L4.1 el multiplexor sigue en @L5 desconocido:

[Image]

Paso 3. - Ahora el problema es del muxing mode (multiplexor), para lo cual tenemos que extraer los streams de video (generalemente en . H264 y audio ADTS), ya sea con el MKV extract Gui (Gui: es una interfase grafica para mas comodidad) o el media player Classic (File ->utils -> DSM Converter -> arrastramos el video a la ventana y luego hacemos clic derecho sobre el stream ya sea de audio o video y clic en demux para cada una de las pistas)
con lo que tendras dos archivos:

[Image]
cargamos estos dos archivos y a multiplezar en el MP4 Muxer u otro multiplexor 

[Image]

no olvidar establecer los frames para evitar el desfasaje del audio con video, este lo tomamos del archivo original, y le damos clic a multiplezar
Analizando con el mediainfo tenemos que el archivo ahora si cumple con los parametros del nivel L4 

[Image]


Nota:
*Como se habran dado cuenta cuando cambie el profile con el  IDC Multi Changer lo hice a nivel L4.1, para luego al introducirlo al mp4muxer lo puse en L4.0, pero el archivo salio en L4.1, en mi caso nunca me ha funcionado el cambiar el profile con el Mp4 muxer, por tal motivo lo hice a drede ya que solo me ha funcionado con el metodo expuesto y ya estoy variando mis videos para no tener que transformarlos, ya que siempre se pierde algo de calidad
*Si el archivo original contiene subtitulos, es mejor usar mkv para que los reproductores caseros lo reconozcan mas facilmente

Para Videos MP4 (XBox 360, Ps3, BDplayer)

Paso 1.- Verificar el framerate o tasa de bits del Video (esta en fps), ya sea con el mediainfo o con el MP                   Home cinema
Paso 2.- Demultoplexar el video (separar audio y video) en stream, les recomiendo usar el YAMB:
              Yamb - Edicion - Clic para extraer pistas desde archivos avi/mp4/mov/TS

[Image]

Luego abrimos el archivo y seleccionamos extract all stream to raw format, para extraer el audio y video

[Image]

con lo que nos quedaria dos archivos o streams de audio y video
[Image]

Paso 3.- Ejecutar el  IDC Multi Changer V0.1 y cargar el fichero 'Archivo H264' , es decir lo que corresponde solo al video ya sea arrastrandolo (el programa reconoce este tipo de ficheros  mas no el .mp4)

En Change To establecemos ya sea 4.0 o 4.1 y  le damos a convert files y automaticamente cambia al profile que hemos especificado, 

Paso 4.- Usar un multiplexor para unir estas pistas o ficheros, puede ser en mkv con el MKVMerge o a Mp4 con el MP4muxer

[Image]
no olvidar establecer los frames/sec (el Framerate del paso 1) por que de otro modo el audio se desfasara ya que el multiplexor usa uno por defecto, tanto en el caso del Mp4muxer como del MKVMerge lo establecen en 25fps, lo cual no tiene que ser el que estaba originalmente

NOTAS:

1.- Muchos de los archivos codificados a nivel 5 o 5,1 no están codificado mediante funcionalidades exclusivas de esos niveles y es en ellos en los que se puede emplear este metodo, en los casos en los que no se pueda cambiar el nivel no queda otra que encodearlos, si aun lo queremos en nivel 4 o inferior  (mas del 90% si se puede, segun lo que he probado con este metodo, uno mas efectivo es con el TSMuxer, el cual sera tema de otro post)

2.- He probado tambien con el H264/AVC Level Editor y su funcionalidad es similar, solo que en las ultimas versiones le han añadido la posibilidad de ejecutar multiples ficheros, cosa que el IDC Multi Change ya lo trae por defecto

3:- Los tipos de archivos compatibles con XBOX 360 /PS3 son los mp4, puede que en alguno los videos no se escuche el audio, y esto sobretodo es por la baja tasa de bits del audio, lo recomendable es transformar el audio (Yo uso el mediacoder, cargo el video, selecciono formato de audio FAAC y luego me voy a la pestaña transcodificar y selecciono convertir solo audio), la tasa de bits debe ser mayor a 64kbps para que no se tenga ningun problema en la reproduccion asi como una frecuencia de 44100Hz o 48000Hz

4.- Hay muchas ocasiones en los que a veces los archivos de video no se ven y es a causa de un mal multiplexaje o por el software de conversion de video que no ha hecho un buen multiplexaje, los mas faciles de detectar es en propiedades de carpeta   habilitar las  de Velocidad de Fotogramas y duracion, si hay un valor extraño en la velocidad de fotogramas (comprobado con un reproductor de video como el Mplayer) o que no se muestra la duracion del video (solo en archivos mp4) es por que el multiplexaje no es bueno

Demultiplexandolo y volviendolo a multiplexar con el MP4Box o el Yamb, he logrado hacer a muchos archivos compatibles