Minha entrada é a seguinte:
Input #0, mpeg, from 'D:\Videos15.mpg':
Duration: 01:49:08.74, start: 0.220000, bitrate: 4940 kb/s
Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, bt470bg), 720x576 [SAR 16:15 DAR 4:3], max. 7500 kb/s, 25 fps, 25 tbr, 90k tbn, 50 tbc
Stream #0:1[0x1c0]: Audio: mp2, 48000 Hz, stereo, s16p, 224 kb/s
O arquivo tem quase 4 GB por menos de duas horas. É uma qualidade VHS típica (ou talvez até um pouco pior que a típica) com telas em branco intercaladas por alguns minutos (daí a necessidade de VBR).
A CPU é 4-core da Inteal 3770K: MMX2 SSE2Fast SSSE3 SSE4.2 AVX
Pergunta: que parâmetros ffmpeg devo usar para converter esta entrada para MP4 (H264 / AAC) razoavelmente rápida (várias vezes mais rápida que a taxa real, ou seja, para este arquivo em não mais que 30 minutos) e reduzir o tamanho do arquivo em pelo menos metade. Eu acho que a qualidade é uma preocupação menor, já que é um rasgo de VHS de qualquer maneira, e há bastante estática e artefatos. Quais opções de linha de comando (para Windows) devo usar?
EDIT / UPDATE / BACKSTORY:
Depois de uma sugestão estou elaborando um pouco ...
Eu adoraria usar o ffmpeg diretamente para capturar vídeo VHS em MP4, mas o problema é que meu driver de captura de captura está configurado / instalado da seguinte forma:
C:\Tools\video.tools\ffmpeg-20151123-git-12a419d-win64-static\bin>ffmpeg -loglevel verbose -list_options true -f dshow -i video="ezcap Video Grabber" -loglevel verbose
ffmpeg version N-76822-g12a419d Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 5.2.0 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
libavutil 55. 9.100 / 55. 9.100
libavcodec 57. 16.100 / 57. 16.100
libavformat 57. 19.100 / 57. 19.100
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 15.100 / 6. 15.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
[dshow @ 0000018baeadb920] DirectShow video device options (from video devices)
[dshow @ 0000018baeadb920] Pin "Video YUV Out" (alternative pin name "2")
[dshow @ 0000018baeadb920] pixel_format=uyvy422 min s=160x120 fps=25 max s=720x576 fps=25
[dshow @ 0000018baeadb920] pixel_format=uyvy422 min s=160x120 fps=29.97 max s=720x486 fps=29.97
[dshow @ 0000018baeadb920] pixel_format=uyvy422 min s=160x120 fps=29.97 max s=720x480 fps=29.97
[dshow @ 0000018baeadb920] Pin "Audio PCM Out" (alternative pin name "3")
[dshow @ 0000018baeadb920] Crossbar Switching Information for ezcap Video Grabber:
[dshow @ 0000018baeadb920] Crossbar Output pin 0: "Video Decoder" related output pin: 1 current input pin: 1 compatible input pins: 1 2
[dshow @ 0000018baeadb920] Crossbar Output pin 1: "Audio Decoder" related output pin: 0 current input pin: 5 compatible input pins: 5
[dshow @ 0000018baeadb920] Crossbar Input pin 0 - "Video Tuner" related input pin: 4
[dshow @ 0000018baeadb920] Crossbar Input pin 1 - "Video Composite" related input pin: 5
[dshow @ 0000018baeadb920] Crossbar Input pin 2 - "S-Video" related input pin: 5
[dshow @ 0000018baeadb920] Crossbar Input pin 3 - "Video YRYBY" related input pin: 5
[dshow @ 0000018baeadb920] Crossbar Input pin 4 - "Audio Tuner" related input pin: 0
[dshow @ 0000018baeadb920] Crossbar Input pin 5 - "Audio Line" related input pin: 1
A questão é que não existe dispositivo de vídeo DirectShow Audio separado - apenas um dispositivo de vídeo (que possui pinos de vídeo e de áudio). O ffmpeg parece ter problemas ao tentar capturar vídeo + áudio com essa configuração:
ffmpeg -loglevel verbose -f dshow -i video="ezcap Video Grabber":audio="ezcap Video Grabber" test5.mp4
ffmpeg version N-76822-g12a419d Copyright (c) 2000-2015 the FFmpeg developers
built with gcc 5.2.0 (GCC)
configuration: --enable-gpl --enable-version3 --disable-w32threads --enable-avisynth --enable-bzlib --enable-fontconfig --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-libbluray --enable-libbs2b --enable-libcaca --enable-libdcadec --enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc --enable-libmodplug --enable-libmp3lame --enable-libopencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-libopus --enable-librtmp --enable-libschroedinger --enable-libsoxr --enable-libspeex --enable-libtheora --enable-libtwolame --enable-libvidstab --enable-libvo-aacenc --enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-libwavpack --enable-libwebp --enable-libx264 --enable-libx265 --enable-libxavs --enable-libxvid --enable-libzimg --enable-lzma --enable-decklink --enable-zlib
libavutil 55. 9.100 / 55. 9.100
libavcodec 57. 16.100 / 57. 16.100
libavformat 57. 19.100 / 57. 19.100
libavdevice 57. 0.100 / 57. 0.100
libavfilter 6. 15.100 / 6. 15.100
libswscale 4. 0.100 / 4. 0.100
libswresample 2. 0.101 / 2. 0.101
libpostproc 54. 0.100 / 54. 0.100
[dshow @ 0000017449b7c0e0] Could not find audio only device with name [ezcap Video Grabber] among source devices of type audio.
[dshow @ 0000017449b7c0e0] Searching for audio device within video devices for ezcap Video Grabber
[dshow @ 0000017449b7c0e0] Could not run graph (sometimes caused by a device already in use by other application)
video=ezcap Video Grabber:audio=ezcap Video Grabber: Input/output error
Portanto, fui forçado a usar o software que veio com o dispositivo de captura: ArcSoft ShowBiz, que faz o trabalho, mas é menos que ideal devido à configuração complicada e à interface do usuário, e porque produz MP4s MPEG2 em vez de mais compactos.