Configuración ideal del freno de mano x264 para codificar videos

17

¿Cuáles son las configuraciones ideales para aprovechar las capacidades de decodificación de hardware del procesador y mantenerse alejado de cualquier característica que requiera decodificación de software o incapacidad para decodificar correctamente en hardware?

Por ejemplo, sé que los B-Frames a menudo no se manejan bien (o en absoluto) en muchos dispositivos móviles y lo mismo es cierto para el esquema de codificación CABAC.

Goyuix
fuente
Bueno, tu pregunta es ambigua. Pidiéndola en Raspbery Pi Q&A le daremos y responderemos por la mejor configuración para el Pi ... no para teléfonos móviles u otros dispositivos. Edite su pregunta. ¡Aún así es una muy buena pregunta!
Piotr Kula
3
Estoy pidiendo específicamente la Raspberry Pi y la distribución RaspBMC: simplemente proporcioné las referencias móviles como contexto para características que pueden no estar disponibles ya que el hardware es bastante similar.
Goyuix
1
Acabo de ejecutar una prueba con una fuente de 720p y la configuración predeterminada de "Perfil alto". Eso incluía tanto B-Frames como codificación CABAC. Jugó bien en RaspBMC. Seguiré investigando algunas otras opciones.
Goyuix
Eso es realmente genial. Creo que Pi debería ser capaz de manejar la mayoría de la codificación estándar definida en el freno de mano. ¿Cómo lo pruebas? Voy a probar un poco de codificación 1080p
Piotr Kula
Creo que el primer paso sería descubrir qué puede hacer y hará su decodificador utilizando hardware.
XTL

Respuestas:

7

Para responder a su pregunta, cualquier codificación H.264 funcionará perfectamente en la Raspberry Pi. Por lo tanto, debe seleccionar (cualquier perfil que elija, mejor perfil alto o normal) la opción H.264 en la pestaña Video en Códec de video . Para audio use AAC (compatible) y seleccione estéreo (Dolby surround no funciona).

Usando esos ajustes (lo probé yo mismo) todo funciona bien y sin problemas, sin ningún problema. Otras opciones como la velocidad de fotogramas pueden influir mucho en la película, una guía sobre la velocidad de fotogramas: https://trac.handbrake.fr/wiki/FramerateGuide

Creo que eso te ayudará, recuerda el códec de video en H.264 y el audio en estéreo AAC. Verifique su velocidad de cuadros y otras opciones generalmente afectarán el tamaño del video.

DanFritz
fuente
1
No olvide habilitar la optimización para web en el freno de mano. Realmente tengo ganas de saltar hacia adelante / atrás en la transmisión o transmitir a través de HTTP a reproducciones de video HTML5 ... Mi Pi es un PiTube
Piotr Kula
3
Realmente esperaba una discusión más detallada sobre configuraciones específicas de x264 (mencioné específicamente B-Frames y codificación CABAC) que sería aceptable. Quizás mi pregunta es demasiado vaga ... por ejemplo, elegiría diferentes configuraciones si la estuviera usando principalmente en la salida de video compuesto en lugar de HDMI, pero no creo que pueda aceptar su respuesta tal como está hoy. Las notas sobre el audio estéreo AAC son perfectas. Esperaba algo similar con las opciones avanzadas de x264 también.
Goyuix
Creo que realmente no entiendes el concepto de las opciones adicionales como B-Frames. Para todos los ajustes y explicaciones (y lo que hacen) mewiki.project357.com/wiki/X264_Settings Por ejemplo, los cuadros B son "los cuadros B son similares a los cuadros P, excepto que también pueden usar la predicción de movimiento de cuadros futuros. Esto puede conducir a una eficiencia significativamente mejor en términos de relación de compresión ". Esto no tiene nada que ver con reproducir el video en la frambuesa pi sino con el tamaño de compresión. Realmente no sé si necesita más procesamiento para salida HDMI o salida compuesta.
DanFritz
1
Mi experiencia ha sido que los dispositivos de baja potencia (teléfonos inteligentes / dispositivos iOS principalmente) es que los videos codificados con x264 que emplean B-Frames o que utilizan codificación CABAC no se reproducirán correctamente debido a limitaciones de hardware / software. Definitivamente, hay un punto óptimo entre la eficiencia como mencionó y un archivo que no se reproducirá debido a que algunas características avanzadas no son compatibles con el motor de decodificación. Espero encontrar ese "punto ideal" para la Raspberry Pi. Mis propias pruebas han sido muy positivas hasta ahora (perfil alto con muchas campanas y silbatos habilitados), aunque no definitivo.
Goyuix
"cualquier codificación H.264 funcionará perfectamente en Raspberry Pi". - lamentablemente NO es cierto. Vea esto para un buen ejemplo. Lo que es aún peor, el nivel 4.1, que supuestamente debería ser soportado sin problemas parece tenerlos también. Al menos tengo un archivo 4.1 que no se reproduce en Kodi en Rpi.
silverdr
2

Para referencia futura de cualquiera que esté buscando una respuesta detallada a esta misma pregunta, consulte esta publicación en los foros de Raspberry Pi: https://www.raspberrypi.org/forums/viewtopic.php?f=2&t=4668

Resumen: El RPi es compatible con H.264 Nivel 4.1 Perfil alto. Si selecciona estas opciones en la página Video de freno de mano, el Pi debería reproducirlas.

Debe asegurarse de que el audio esté codificado con AC3 en lugar de DTS, o podría tener problemas de reproducción: consulte esta pregunta: Diferencia entre H.264 y x264 y cómo reproducirlo

Salud.

Pseudobolt
fuente