Smritte pretty much has you covered there on all counts.
I'll just add that, in general applications, brake noise comes in 3 flavors: metal contacting rotor, rocks contacting rotor, and vibration.
-Rocks and debris are self explanatory.
-Metal contact can be backing plates(bent), clips and springs, pad wear indicators, or metallic compounds in the pad material. Semi metallic pads are just as they sound, they contain more metal (copper, nickel, etc) mixed into the friction material. In theory they are very small and suspended/dispersed evenly but I've seen much larger "chunks" start grooving rotors in some cases.
-Vibration is often misunderstood. Pads and hardware need to move over time so they are designed to fit "loosely" in the calipers. Referring back to smritte's comparison to sand paper and "grab", as the pad drags across the rotor it is forced against the caliper which holds it. The "grab" isn't constant and fluctuates rapidly causing the pads to also move rapidly. In turn, that tiny movement creates a high frequency vibration that becomes audible to our ears at specific speeds. Isn't physics fun?
Basically anything that influences the friction coefficient will affect the particular point in which you hear the noise. This includes different pad materials (circle back to semi metallics), rotor composition, temperature, surface corrosion, etc, etc, etc.
The moral? Using some high temp brake grease on pad contacts can eliminate a lot of noise regardless of choice of brake parts. Lol.