Leak.  Docs say to use av_frame_free() which does more things.  I'm still not sure why you need to alloc per frame or etc.

-[Unknown]