@TEMPLATE encoder_tmpl.c Forcing A Keyframe ================== ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ INTRODUCTION This is an example demonstrating how to control placement of keyframes on a frame-by-frame basis. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ INTRODUCTION Configuration ------------- Keyframes can be forced by setting the VPX_EFLAG_FORCE_KF bit of the flags passed to `vpx_codec_control()`. In this example, we force a keyframe every 8 frames. ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PER_FRAME_CFG if(!(frame_cnt & 7)) flags |= VPX_EFLAG_FORCE_KF; else flags &= ~VPX_EFLAG_FORCE_KF; ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ PER_FRAME_CFG Observing The Effects --------------------- The output of the encoder examples shows a 'K' rather than a dot '.' when the encoder generates a keyframe. Note that every 8 frames a 'K' is output.