Tidy up code in logging

There was no leak there. Each functions are only called once as a LoggingItem isn’t a reusable item

Fixes #12131
Add MythAVFrame and mythavutil.h

Convenience class to allocate an AVFrame on the heap, maki
Fix major leak during video playback.

An AVFrame was never supposed to be allocated on the heap. Any memory allocated and assigned to it was never freed.
One hour playback would have caused a 188MB leak.
Fix header

AVFrame is defined in libavutil/frame.h ; but somehow it’s libavcodec.h you need to include
Fix various leaks related to misuse of AVFrame object
Simplify some code using new MythAVFrame class