Mi script ffProbe solo parece funcionar con archivos MKV

Acabo de enterarme de ffprobe ayer, y pude, después de buscar mucho en Google, ensamblar un archivo BAT de línea de comandos para obtener la metainformación que quiero. Luego, resulta que solo funciona la mitad del tiempo. Después de experimentar un poco, parece que solo funciona en archivos MKV.

No sé si hay un error o si mi línea de comandos necesita mejoras. Tal vez ffProbe solo funcione en ciertos archivos, pero asumí que funcionaría en los formatos de video más populares.

Estoy usando AutoHotKey para crear un archivo BAT, que luego ejecuto. Así que realmente solo necesitamos mirar el archivo BAT.

Aquí está mi script BAT...

C:\PROGRA~1\ffmpeg\bin\ffprobe.exe -pretty -select_streams v \
-show_entries \
format=filename,size,duration,bit_rate:stream=codec_name,codec_type,bit_rate,width,height,display_aspect_ratio \
-of ini \
"S:\myTVshows\SampleName - S01E01 - SampleTitle.mp4"

Después de ejecutar esto, la consola genera solo el #ffprobe outputencabezado y luego se cuelga. Si se ejecuta en un archivo mkv, genera instantáneamente todos los datos que quiero, como se esperaba.

Actualización: cuando agrego -reportcomo parámetro, obtengo el archivo de registro del informe, por supuesto... pero también obtengo el resultado que quiero (en lugar de que se cuelgue como antes). Me pregunto si significa que esto es un error.

notas

  • Reduje la ruta para ffprobe al formato 8.3 para no tener que preocuparme por las comillas en esa parte.
  • Estoy trabajando con una instalación muy actual de ffmpeg/ffprobe (ffmpeg-20170404-1229007-win64-static).

A continuación se muestra la salida de la consola...

ffprobe version N-85266-g1229007 Copyright (c) 2007-2017 the FFmpeg developers
built with gcc 6.3.0 (GCC)
configuration: --enable-gpl --enable-version3 --enable-cuda --enable-cuvid --e
nable-d3d11va --enable-dxva2 --enable-libmfx --enable-nvenc --enable-avisynth --
enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv
--enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-li
bfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug -
-enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enabl
e-libopenh264 --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-li
bsnappy --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolam
e --enable-libvidstab --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx
--enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable
-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-zlib
libavutil      55. 59.100 / 55. 59.100
libavcodec     57. 90.100 / 57. 90.100
libavformat    57. 72.100 / 57. 72.100
libavdevice    57.  7.100 / 57.  7.100
libavfilter     6. 83.100 /  6. 83.100
libswscale      4.  7.100 /  4.  7.100
libswresample   2.  8.100 /  2.  8.100
libpostproc    54.  6.100 / 54.  6.100
# ffprobe output

Enlace al archivo de registro cuando se agregó el parámetro '-informe'

Ejecute el comando manualmente en un MP4 y muestre la salida de la consola.
hecho. ¡Espero eso ayude!
Agregar - reportal comando y ejecutar. Comparta el archivo del informe.
Bueno. Ocurrieron dos cosas. 1) Obtuve el archivo de registro y 2) De hecho, obtuve el resultado que quería, en lugar de colgar. ¡Y gracias por la ayuda! Aquí está el registro (que también está en la publicación) ... Enlace al archivo de registro producido cuando -reportse agregó
Es un error que retrasa la salida de ffprobe, dependiendo de la duración de MP4. Parece que se introdujo junto con la API de decodificación.
Bueno, seguro que es bueno tener una respuesta. ¿Alguna solución que conozcas? ¿O alguna otra técnica que me proporcione esta información básica sobre los videos?
Use una versión anterior, digamos, 2 semanas o más. Mediainfo también proporcionará información.
La versión anterior funcionó bien. ¡Gracias! ¿Le gustaría poner sus comentarios abajo como respuesta y lo marcaré para que obtenga crédito?

Respuestas (1)

Desde la implementación de la nueva API de decodificación, la lectura de archivos MP4 de ffprobe tarda mucho más en imprimirse y depende de la duración del video. Cambie a una versión anterior a abril de 2017.

Sí. ¡Cambié a 3.2.4 y devolvió resultados al instante! ¡Gracias!