Avstream format change, which way is correct for a video capture device?

Hi,

I want to change the resolution during playback. There are two documents that seem related to this purpose:

I have tried generating KSEVENT_DYNAMIC_FORMAT_CHANGE from both the pin and the filter, but neither caused the renderer to stop or intersect again.
I tested with graphedit and OBS, but I still cannot determine whether my driver is generating the event correctly, or if the applications simply do not support it.

I have also tried adding KSSTREAM_HEADER_OPTIONSF_TYPECHANGED in StreamHeader->OptionsFlags, and copying a KS_DATAFORMAT_VIDEOINFOHEADER data into StreamHeader->Data.
However, in both graphedit and OBS, I still cannot observe any changes, such as connection properties being changed.

Could anyone give me some suggestions?
Or is there any application that is suitable for testing dynamic format changes?