Autor Tema: [ Resuelto ] The video track doesn't contain framerate information. <WARNING>  (Leído 851 veces)

0 Usuarios y 1 Visitante están viendo este tema.

wolf

  • Miembro milenario
  • ******
  • Desconectado Desconectado
  • Registrado: 06/07/2007
  • Mensajes: 1.602
  • Valoración: 52
Saludos.

Tengo una peli en MKV que no acepta reproducir mi TV, al abrir dicho MKV con UsEac3To me da la siguiente información y un warning:

------------------------------------------------------------------------------
MKV, 1 video track, 2 audio tracks, 2 subtitle tracks, 1:24:50, 24p
1: h264/AVC, 1920x804p (160:67)
2: AC3, Spanish, 2.0 channels, 224kbps, 48kHz, -83ms
3: AC3, English, 2.0 channels, 192kbps, 48kHz, -83ms
4: Subtitle (PGS), Spanish
5: Subtitle (ASS), Spanish
[v01] The video track doesn't contain framerate information.  <WARNING>

¿Cómo puedo solucionarlo sin provocar asincronía con el audio?, y, si puede ser sin recomprimir, mejor...
« Última modificación: 13 de Noviembre de 2016, 23:25 por wolf »



wolf

  • Miembro milenario
  • ******
  • Desconectado Desconectado
  • Registrado: 06/07/2007
  • Mensajes: 1.602
  • Valoración: 52
He estado probando algo mientras, he cargado el MKV en UsEac3To y demuxeado las pistas, las he cargado en mkvtoolnix y remuxeado. Ahora, al cargar el MKV resultante en UsEac3To, me da la siguiente información y otro warning:

------------------------------------------------------------------------------
MKV, 1 video track, 2 audio tracks, 2 subtitle tracks, 1:24:50, 24p
1: h264/AVC, 1920x804 24p (160:67)
2: AC3, Spanish, 2.0 channels, 224kbps, 48kHz
3: AC3, English, 2.0 channels, 192kbps, 48kHz
4: Subtitle (PGS), Spanish
5: Subtitle (ASS), Spanish
[v01] The video framerate is correct, but rather unusual.  <WARNING>

(Los delays ya no aparecen...)

Ahora se podría decir que el MKV está correcto (en MPC-HC se reproduce correctamente, en sincronía...), 'a pesar' de ese framerate inusual, pero mi TV se sigue negando a reproducirlo y no creo que sea por ese framerate, pues tengo otros MKV con esos fps y no tiene problema en reproducirlos... No sé qué leches puede estar pasando...

Este es el MediaInfo de la peli, yo no veo nada extraordinario que pudiera provocar alguna incompatibilidad con el repro del TV, aunque quizá se me está escapando algo...

Spoiler
Formato                                  : Matroska
Formato de la versión                    : Version 4 / Version 2
Tamaño de archivo                        : 2,91 GiB
Duración                                 : 1 h 24 min
Tasa de bits general                     : 4 908 kb/s
Fecha de codificación                    : UTC 2016-11-10 21:30:44
Aplicación de codifición                 : mkvmerge v9.5.0 ('Quiet Fire') 64bit
Librería de codificación                 : libebml v1.3.4 + libmatroska v1.4.5

Vídeo
ID                                       : 1
Formato                                  : AVC
Formato/Info                             : Advanced Video Codec
Formato del perfil                       : Main@L4.1
Ajustes del formato, CABAC               : Sí
Ajustes del formato, ReFrames            : 4 fotogramas
ID códec                                 : V_MPEG4/ISO/AVC
Duración                                 : 1 h 24 min
Tasa de bits                             : 4 500 kb/s
Ancho                                    : 1 920 píxeles
Alto                                     : 804 píxeles
Relación de aspecto                      : 2,40:1
Modo velocidad fotogramas                : Constante
Velocidad de fotogramas                  : 24,000 FPS
Espacio de color                         : YUV
Submuestreo croma                        : 4:2:0
Profundidad bits                         : 8 bits
Tipo barrido                             : Progresivo
Bits/(píxel*fotograma)                   : 0.121
Tamaño de pista                          : 2,66 GiB (91%)
Librería de codificación                 : x264 core 142 r2479 dd79a61
Opciones de codificación                 : cabac=1 / ref=1 / deblock=1:0:0 / analyse=0x1:0x111 / me=hex / subme=2 / psy=1 / psy_rd=1.00:0.00 / mixed_ref=0 / me_range=16 / chroma_me=1 / trellis=0 / 8x8dct=0 / cqm=0 / deadzone=21,11 / fast_pskip=1 / chroma_qp_offset=0 / threads=6 / lookahead_threads=2 / sliced_threads=0 / nr=0 / decimate=1 / interlaced=0 / bluray_compat=0 / constrained_intra=0 / bframes=3 / b_pyramid=2 / b_adapt=1 / b_bias=0 / direct=1 / weightb=1 / open_gop=0 / weightp=1 / keyint=240 / keyint_min=24 / scenecut=40 / intra_refresh=0 / rc_lookahead=10 / rc=2pass / mbtree=1 / bitrate=4500 / ratetol=1.0 / qcomp=0.60 / qpmin=0 / qpmax=69 / qpstep=4 / cplxblur=20.0 / qblur=0.5 / vbv_maxrate=50000 / vbv_bufsize=62500 / nal_hrd=none / filler=0 / ip_ratio=1.40 / aq=1:1.00
Default                                  : Sí
Forced                                   : No
Rango de color                           : Limited
Colores primarios                        : BT.709
Características transferencia            : BT.709
Coeficientes matriz                      : BT.709

Audio #1
ID                                       : 2
Formato                                  : AC-3
Formato/Info                             : Audio Coding 3
Extensión modo                           : CM (complete main)
Ajustes del formato, Endianness          : Big
ID códec                                 : A_AC3
Duración                                 : 1 h 24 min
Tipo de tasa de bits                     : Constante
Tasa de bits                             : 224 kb/s
Canal(es)                                : 2 canales
Posiciones del canal                     : Front: L R
Velocidad de muestreo                    : 48,0 kHz
Velocidad de fotogramas                  : 31,250 FPS (1536 spf)
Modo de compresión                       : Con pérdida
Tamaño de pista                          : 136 MiB (5%)
Idioma                                   : Español
Default                                  : Sí
Forced                                   : No

Audio #2
ID                                       : 3
Formato                                  : AC-3
Formato/Info                             : Audio Coding 3
Extensión modo                           : CM (complete main)
Ajustes del formato, Endianness          : Big
ID códec                                 : A_AC3
Duración                                 : 1 h 24 min
Tipo de tasa de bits                     : Constante
Tasa de bits                             : 192 kb/s
Canal(es)                                : 2 canales
Posiciones del canal                     : Front: L R
Velocidad de muestreo                    : 48,0 kHz
Velocidad de fotogramas                  : 31,250 FPS (1536 spf)
Modo de compresión                       : Con pérdida
Tamaño de pista                          : 116 MiB (4%)
Idioma                                   : Inglés
Default                                  : No
Forced                                   : No

Texto #1
ID                                       : 4
Formato                                  : PGS
Modo multiplexor                         : zlib
ID códec                                 : S_HDMV/PGS
ID códec/Info                            : Picture based subtitle format used on BDs/HD-DVDs
Duración                                 : 1 h 22 min
Tasa de bits                             : 6 269 b/s
Count of elements                        : 1428
Tamaño de pista                          : 3,70 MiB (0%)
Idioma                                   : Español
Default                                  : No
Forced                                   : No

Texto #2
ID                                       : 5
Formato                                  : ASS
ID códec                                 : S_TEXT/ASS
ID códec/Info                            : Advanced Sub Station Alpha
Duración                                 : 16 s 170 ms
Tasa de bits                             : 32 b/s
Count of elements                        : 1
Modo de compresión                       : Sin pérdida
Tamaño de pista                          : 65,0 Bytes (0%)
Idioma                                   : Español
Default                                  : No
Forced                                   : No

A ver si véis o se os ocurre alguna cosa... :pensando:
« Última modificación: 10 de Noviembre de 2016, 23:25 por wolf »

wolf

  • Miembro milenario
  • ******
  • Desconectado Desconectado
  • Registrado: 06/07/2007
  • Mensajes: 1.602
  • Valoración: 52
Bueeenooo. Se me ocurrió (ya barajaba la posibilidad desde un principio, pero... :decabeza:) volver a re-muxear ambos MKV, el del primer warning y el 'corregido' pero, esta vez sin la pista de subs ASS..., y ahora se reproducen los dos sin problema... No sé por qué no probé esto en un principio...

Pues ya puestos y para daros oportunidad de participar y responder a alguna cuestión en este tema (comentad cualquier cosa que creáis oportuna, por favor), os planteo una, ¿con qué MKV os quedaríais?... Aunque resulta que ambos se reproducen bien sin la pista ASS, yo preferiría el 'corregido', el del segundo warning...
« Última modificación: 10 de Noviembre de 2016, 23:26 por wolf »

tebasuna51

  • Moderador
  • ******
  • Desconectado Desconectado
  • Registrado: 22/02/2010
  • Mensajes: 3.864
  • Valoración: 175
El segundo warning:
The video framerate is correct, but rather unusual
se puede ignorar completamente, no tiene nada de inusual un fps de 24, yo le he pedido a madshi que lo quite.

Quédate ese, aunque no debe dar problemas el primero ya el fps del contenedor tiene preferencia.

wolf

  • Miembro milenario
  • ******
  • Desconectado Desconectado
  • Registrado: 06/07/2007
  • Mensajes: 1.602
  • Valoración: 52
El segundo warning:
The video framerate is correct, but rather unusual
se puede ignorar completamente, no tiene nada de inusual un fps de 24, yo le he pedido a madshi que lo quite.

Quédate ese, aunque no debe dar problemas el primero ya el fps del contenedor tiene preferencia.

Tanta 'historia' y, al final, se me olvidó una pregunta o cuestión, que me parece base, muy interesante y que 'redondearía' más este tema, ¿por qué sucede que el flujo de vídeo, en este caso h264, pueda quedar en ocasiones sin el dato del 'framerate'?... Si no dispusiéramos de la excelente herramienta UsEac3To o eac3to, ¿de qué otra manera se podría 'corregir' este particular?..., aun sabiendo que no es necesario porque, en principio, no tiene por qué dar problemas, y más, si está dentro de contenedor.

Bueno, creo que no me dejo nada más... Gracias, tebasuna y nos leemos por aquí en 'la próxima'. :arriba: Un Saludo.
« Última modificación: 11 de Noviembre de 2016, 11:57 por wolf »

tebasuna51

  • Moderador
  • ******
  • Desconectado Desconectado
  • Registrado: 22/02/2010
  • Mensajes: 3.864
  • Valoración: 175
Un h264 sin el dato de fps procede de una incorrecta (al menos incompleta) codificación.

Usando x264.exe con una entrada .avs nunca puede suceder, ya que AviSynth siempre pasa el parámetro (aunque pueda ser incorrecto (*)).
Pero a saber como se ha codificado ese h264.

La verdad es que no sé si hay alguna otra herramienta para añadir ese dato a un stream .h264.
eac3to lo añade por defecto usando el dato del contenedor al pasarlo a otro .mkv.
Pero también sería posible cambiarlo en el propio h264 e incluso forzarlo a otro valor distinto del de el .mkv si estuviéramos seguros de ello:

------------------------------------------------------------------------------
MKV, 1 video track, 1:13:57, 25p
1: h264/AVC, English, 720p25 (16:9)
...

 1: %_1eng.h264 -changeTo23.976

que generaría el stream .h264 con fps 23.976

EDITO (*):
Si el .avs no contiene una sentencia AssumeFps exacta, el decodificador se encarga de proporcionar el fps.
Lo malo es que, a veces, se producen redondeos inexactos y pueden generar fps de 23.977 con lo que luego eac3to protesta.
Por ello recomiendo siempre usar un AssumeFps en todos los .avs
« Última modificación: 11 de Noviembre de 2016, 13:43 por tebasuna51 »

Perico el del Palote

  • Colaborador
  • ******
  • Desconectado Desconectado
  • Registrado: 25/08/2010
  • Mensajes: 2.092
  • Valoración: 69
  • Depravado sin remedio
Maybe?

 ffmpeg -i input.mp4 -metadata fps="23.976" -codec copy output.mp4

wolf

  • Miembro milenario
  • ******
  • Desconectado Desconectado
  • Registrado: 06/07/2007
  • Mensajes: 1.602
  • Valoración: 52
Un h264 sin el dato de fps procede de una incorrecta (al menos incompleta) codificación.

Usando x264.exe con una entrada .avs nunca puede suceder, ya que AviSynth siempre pasa el parámetro (aunque pueda ser incorrecto (*)).
Pero a saber como se ha codificado ese h264.

La verdad es que no sé si hay alguna otra herramienta para añadir ese dato a un stream .h264.
eac3to lo añade por defecto usando el dato del contenedor al pasarlo a otro .mkv.
Pero también sería posible cambiarlo en el propio h264 e incluso forzarlo a otro valor distinto del de el .mkv si estuviéramos seguros de ello:

------------------------------------------------------------------------------
MKV, 1 video track, 1:13:57, 25p
1: h264/AVC, English, 720p25 (16:9)
...

 1: %_1eng.h264 -changeTo23.976

que generaría el stream .h264 con fps 23.976

EDITO (*):
Si el .avs no contiene una sentencia AssumeFps exacta, el decodificador se encarga de proporcionar el fps.
Lo malo es que, a veces, se producen redondeos inexactos y pueden generar fps de 23.977 con lo que luego eac3to protesta.
Por ello recomiendo siempre usar un AssumeFps en todos los .avs

Si no me equivoco, ¿esto viene a parecerse a cuando eac3to avisa de que los fps de stream y contenedor no coinciden?... Si cambiamos el fps del stream, también se debe poner el mismo en el contenedor (imagino que eac3to lo hace por defecto al muxear... )..., y, el audio, pierde la sincronía y se debe 'corregir', ¿cierto?...


Maybe?

 ffmpeg -i input.mp4 -metadata fps="23.976" -codec copy output.mp4

¡ Hombre, over ! Ahora mismo te comentaba algo en otro tema (en la sección de 'Hardware'), qué casualidad... Bueno, al tema. También se me pasó por la cabeza ffmpeg como alternativa, probaré la línea que apuntas.

Gracias, over. Y me alegra verte por aquí. :arriba: Un Saludo.

tebasuna51

  • Moderador
  • ******
  • Desconectado Desconectado
  • Registrado: 22/02/2010
  • Mensajes: 3.864
  • Valoración: 175
..., y, el audio, pierde la sincronía y se debe 'corregir', ¿cierto?...

La maniobra se supone que se hace para recuperar la sincronía con el audio, ¿qué sentido tendría cambiar todo por cambiar?

wolf

  • Miembro milenario
  • ******
  • Desconectado Desconectado
  • Registrado: 06/07/2007
  • Mensajes: 1.602
  • Valoración: 52
No, claro..., cambiar por cambiar, no. Entre que no me suelo explicar bien (a pesar de los tochacos que suelo meter), mi dislexia, que chocheo ya un poco y no recuerdo bien... xD Verás, ya hace, en alguna ocasión me he encontrado con esto:

------------------------------------------------------------------------------
MKV, 1 video track, 1 audio track, 1:48:41, 24p /1.001
1: h264/AVC, English, 1920x824 23.975p
2: AC3, Spanish, 5.1 channels, 384kbps, 48khz, dialnorm: -27dB
   "AC3"
[v01] The video bitstream is encoded in a non-standard framerate.  <WARNING>
[v01] The video bitstream framerate field doesn't match the container framerate.  <WARNING>


Y por tratar de igualar los fps de 'flujo' y contenedor, pues algo hacía (mal hecho, probablemente) que me quedaba el audio desincronizado..., imagino que le cambiaría el fps al contenedor y el audio quedaba desincronizado..., ¿puede ser?..., en caso de 'querer' hacer algo en este otro particular, se debería cambiar el fps del flujo, ¿no?...
« Última modificación: 12 de Noviembre de 2016, 17:28 por wolf »

tebasuna51

  • Moderador
  • ******
  • Desconectado Desconectado
  • Registrado: 22/02/2010
  • Mensajes: 3.864
  • Valoración: 175
Es un ejemplo exacto que lo he visto muy a menudo.

El origen es que se ha codificado el vídeo probablemente con un script avs sin un AssumeFps(24000,1001) y el decodificador (por ejemplo ffms2) calculaba un fps inexacto (23.975) que es el introducido en el vídeo h264. Al mezclarse en el mkv se corregía y en el contenedor ya tenía el correcto 24/1.001 en sincronía perfecta con el audio.

Como el fps del contenedor tiene preferencia en cualquier reproductor fiable el mkv no tiene problemas.

Pero si se quiere dejar perfecto, sin que eac3to lance los WARNINGS, hay que hacer:

1: %_1eng.h264 -changeTo23.976

y volver a remezclar el mkv con el stream h264 ya corregido. Lo he hecho varias veces.

wolf

  • Miembro milenario
  • ******
  • Desconectado Desconectado
  • Registrado: 06/07/2007
  • Mensajes: 1.602
  • Valoración: 52
Es un ejemplo exacto que lo he visto muy a menudo.

El origen es que se ha codificado el vídeo probablemente con un script avs sin un AssumeFps(24000,1001) y el decodificador (por ejemplo ffms2) calculaba un fps inexacto (23.975) que es el introducido en el vídeo h264. Al mezclarse en el mkv se corregía y en el contenedor ya tenía el correcto 24/1.001 en sincronía perfecta con el audio.

Como el fps del contenedor tiene preferencia en cualquier reproductor fiable el mkv no tiene problemas.

Pero si se quiere dejar perfecto, sin que eac3to lance los WARNINGS, hay que hacer:

1: %_1eng.h264 -changeTo23.976

y volver a remezclar el mkv con el stream h264 ya corregido. Lo he hecho varias veces.

Hay por la Red 'rips' mal hechos 'a cholón'... Ya he vuelto a probar y sí, todo perfecto y en sincronía. Yo estaba haciéndolo mal. :decabeza:

Gracias de nuevo, tebasuna, Master. A ver si, los que se meten a 'ripear' con tanta 'alegría'..., vienen a parar aquí y aprenden algo con tus apuntes y enseñanzas, y las de over y todos los que saben de verdad sobre estos temas. :arriba:

Un Saludo. :saludo:
« Última modificación: 14 de Noviembre de 2016, 00:25 por wolf »