Capturar una ventana wpf: el problema del parpadeo

Hice una animación simple (como texto de rastreo) usando C#-WPF.

La animación es fluida y excelente. (en ventana wpf)

Pero cuando lo capturo con FFmpeg como video, tiene un problema de parpadeo.

Consulte la muestra 1 (la velocidad de la animación es alta) y la muestra 2 (la velocidad de la animación es baja).

¿Es un problema de campo o un problema de sincronización o...?

¿Cómo puedo arreglarlo?

ACTUALIZAR:

este es mi comando ffmpeg:

ffmpeg -f gdigrab -i title="Wpfwindow" -framerate 30 -vcodec libx264 out1.mp4 -y

Nota: necesito framerate=30 o framerate=25, porque quiero convertir el video a formatos PAL y NTSC.

Salida de la consola:

ffmpeg version N-76417-gee20354 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-lzma --enable-decklink --enable-zlib
  libavutil      55.  5.100 / 55.  5.100
  libavcodec     57. 13.102 / 57. 13.102
  libavformat    57. 13.100 / 57. 13.100
  libavdevice    57.  0.100 / 57.  0.100
  libavfilter     6. 14.101 /  6. 14.101
  libswscale      4.  0.100 /  4.  0.100
  libswresample   2.  0.100 /  2.  0.100
  libpostproc    54.  0.100 / 54.  0.100
[gdigrab @ 000001df9916af40] Found window ooo, capturing 704x537x32 at (0,0)
Input #0, gdigrab, from 'title=Wpfwindow':
  Duration: N/A, start: 1464634804.659289, bitrate: 362576 kb/s
    Stream #0:0: Video: bmp, bgra, 704x537, 362576 kb/s, 29.97 tbr, 1000k tbn, 29.97 tbc
No pixel format specified, yuv444p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.
[libx264 @ 000001df9916db40] using cpu capabilities: MMX2 SSE2Fast SSSE3 SSE4.2 AVX FMA3 AVX2 LZCNT BMI2
[libx264 @ 000001df9916db40] profile High 4:4:4 Predictive, level 3.1, 4:4:4 8-bit
[libx264 @ 000001df9916db40] 264 - core 148 r2638 7599210 - H.264/MPEG-4 AVC codec - Copyleft 2003-2015 - http://www.videolan.org/x264.html - options: cabac=1 ref=3 deblock=1:0:0 analyse=0x3:0x113 me=hex subme=7 psy=1 psy_rd=1.00:0.00 mixed_ref=1 me_range=16 chroma_me=1 trellis=1 8x8dct=1 cqm=0 deadzone=21,11 fast_pskip=1 chroma_qp_offset=4 threads=12 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=2 keyint=250 keyint_min=25 scenecut=40 intra_refresh=0 rc_lookahead=40 rc=crf mbtree=1 crf=23.0 qcomp=0.60 qpmin=0 qpmax=69 qpstep=4 ip_ratio=1.40 aq=1:1.00
Output #0, mp4, to 'out1.mp4':
  Metadata:
    encoder         : Lavf57.13.100
    Stream #0:0: Video: h264 (libx264) ([33][0][0][0] / 0x0021), yuv444p, 704x537, q=-1--1, 29.97 fps, 30k tbn, 29.97 tbc
    Metadata:
      encoder         : Lavc57.13.102 libx264
Stream mapping:
  Stream #0:0 -> #0:0 (bmp (native) -> h264 (libx264))
Press [q] to stop, [?] for help
frame=   16 fps=0.0 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    
frame=   31 fps= 31 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    
frame=   46 fps= 31 q=0.0 size=       0kB time=00:00:00.00 bitrate=N/A    
frame=   61 fps= 30 q=29.0 size=       5kB time=00:00:00.10 bitrate= 375.1kbits/s    
frame=   76 fps= 30 q=29.0 size=      11kB time=00:00:00.60 bitrate= 149.6kbits/s    
frame=   92 fps= 30 q=29.0 size=      22kB time=00:00:01.13 bitrate= 159.7kbits/s    
frame=  107 fps= 30 q=29.0 size=      28kB time=00:00:01.63 bitrate= 141.9kbits/s    
frame=  122 fps= 30 q=29.0 size=      36kB time=00:00:02.13 bitrate= 138.7kbits/s    
frame=  137 fps= 30 q=29.0 size=      44kB time=00:00:02.63 bitrate= 137.4kbits/s    
frame=  152 fps= 30 q=29.0 size=      48kB time=00:00:03.13 bitrate= 126.4kbits/s    
frame=  168 fps= 30 q=29.0 size=      52kB time=00:00:03.67 bitrate= 117.1kbits/s    
frame=  183 fps= 30 q=29.0 size=      55kB time=00:00:04.17 bitrate= 107.7kbits/s    
frame=  188 fps= 30 q=-1.0 Lsize=      74kB time=00:00:06.20 bitrate=  98.1kbits/s    
video:72kB audio:0kB subtitle:0kB other streams:0kB global headers:0kB muxing overhead: 3.373045%
[libx264 @ 000001df9916db40] frame I:1     Avg QP:18.54  size:  2426
[libx264 @ 000001df9916db40] frame P:129   Avg QP:15.36  size:   483
[libx264 @ 000001df9916db40] frame B:58    Avg QP:22.37  size:   141
[libx264 @ 000001df9916db40] consecutive B-frames: 52.1% 20.2%  0.0% 27.7%
[libx264 @ 000001df9916db40] mb I  I16..4:  8.8% 88.0%  3.1%
[libx264 @ 000001df9916db40] mb P  I16..4:  0.8%  0.2%  0.2%  P16..4:  1.7%  0.7%  0.3%  0.0%  0.0%    skip:96.1%
[libx264 @ 000001df9916db40] mb B  I16..4:  0.0%  0.0%  0.0%  B16..8:  2.0%  0.4%  0.0%  direct: 0.0%  skip:97.4%  L0:42.9% L1:46.7% BI:10.5%
[libx264 @ 000001df9916db40] 8x8 transform intra:44.1% inter:38.4%
[libx264 @ 000001df9916db40] coded y,u,v intra: 4.7% 5.2% 3.4% inter: 0.4% 0.4% 0.1%
[libx264 @ 000001df9916db40] i16 v,h,dc,p: 87% 12%  1%  0%
[libx264 @ 000001df9916db40] i8 v,h,dc,ddl,ddr,vr,hd,vl,hu:  8% 42% 50%  0%  0%  0%  0%  0%  0%
[libx264 @ 000001df9916db40] i4 v,h,dc,ddl,ddr,vr,hd,vl,hu: 60%  8% 23%  2%  2%  1%  2%  1%  1%
[libx264 @ 000001df9916db40] Weighted P-Frames: Y:0.0% UV:0.0%
[libx264 @ 000001df9916db40] ref P L0: 56.0%  7.0% 17.4% 19.5%
[libx264 @ 000001df9916db40] ref B L0: 84.8% 10.7%  4.5%
[libx264 @ 000001df9916db40] ref B L1: 98.7%  1.3%
[libx264 @ 000001df9916db40] kb/s:93.00
Exiting normally, received signal 2.
¿Qué es el comando de captura?
@Mulvya, ffmpeg -f gdigrab -i title="Wpfwindow" -framerate 30 -vcodec libx264 out1.mp4 -y
Ok, muestra la salida de la consola también.
Actualizada la pregunta.

Respuestas (1)

frameratedebería ir antes -i, ya que le dice a ffmpeg cuál es la tasa de entrada.

ffmpeg -f gdigrab -framerate 30 -i title="Wpfwindow" -vcodec libx264 out1.mp4 -y
Gracias, pero no surtió efecto. También he usado el comando -r:, ffmpeg -f gdigrab -framerate 30 -i title="Wpfwindow" -vcodec libx264 -r 30 out1.mp4 -ypero esto tampoco funciona.
En su primera muestra, la cantidad de movimiento horizontal no es la misma en cada cuadro. Esto podría ser un problema de baja tasa. Pruebe 60. No agregue -rla opción, especialmente un valor diferente a framerate.
Y pruébalo también con el escritorio completo.
mi animación tiene una velocidad de fotogramas completa (FPS = 60). Aja ok . Lo intentaré con el escritorio completo. Gracias.