Run in background does not really need to be set. It is intended to ensure you get notifications as in the past there were issues and on Android you could do special things to assist in it.
HW decoder relies on your hardware to decide the stream. Mine is off as it does take more resources from your phone and did not really speed things up.
Both of these were only available on Android as iOS handles streams differently.
So in my experience, I would leave them off unless you are trying to fix something.
If you are having issues with notifications, Android phone providers have set limits on how many notirocations you will get before it starts its own process of cleanup and moving notifications. For me, the best the to set or allow is to set UnReatricted on the battery permissions for the Wyze App.
I have also set UnReatricted data usage for WiFi. I get notifications within 3 seconds. At times, it takes 5 seconds or son did some exhaustive testing.
As @spamoni4 mentioned, the Running in the Background is a legacy setting. But, it will introduce a persistent notification on Android that will give you visual confirmation that the app is running in the background:
The Hardware Decoder only applies to Video Processing and Rendering when viewing videos. It doesn’t affect rules or notifications.
Hardware decoding shifts all video processing from the software used by the App and Server to the Graphic Processing Unit of your mobile device. This affects video playback, Live Stream, Event videos, and manually recorded videos.
If you get stuttering, lagging, pixelated, jumpy video, it might help to test it with the decoder on.