Current hard-coded 1 ticks_per_frame
assumes that framerate = 1/time_base
. This is most often fine, except when re-encoding a source with frames in non-fps intervals. Explicitly setting higher time base
works out OK for some codecs (libx264), but not with libvpx, which uses ticks_per_frame
and time_base
to measure time for rate-control. The net effect is that encoding with high-precision frame-timing for VP8 and VP9 does not work in PyAV.