I don't think this is necessary anymore, is it?  I think navigator.mozSettings will always exist.

However, this function is going to query the settings db every time the user switches from camera to video, so it should cache its result.  Perhaps the if condition here should be:

if (!Camera.vendorDefaultProfiles)