Out of interest I've run lavfilters sources through CppCheck and found these warnings:
decoder/LAVAudio/Media.cpp:274
incorrectLogicOperator : style : Expression always evaluates to false. Did you intend to use || instead?
Code:
if (num_channels < 1 && num_channels > 8)
return 0;
demuxer/LAVSplitter/PacketAllocator.cpp:36
duplicateBreak : style : The second of the two statements can never be executed, and so should be removed
Code:
return GetInterface((ILAVMediaSample *) this, ppv);
return S_OK;
demuxer/Demuxers/LAVFDemuxer.cpp:74
uninitVar : style : Member variable 'CLAVFDemuxer::m_pBluRay' is not initialized in the constructor.
And some other "not initialized in the constructor" warnings, which are too many to describe here.
There were other minor things like assignments to a variable that is never used, like ret in CBDDemuxer::Open(), but that's not that important.
Hope it helps!
Maybe use static code chekers sometimes?