avfvideosrc: Use unique-id property to select camera sources
Using device-index to select anything other than a screen source is unstable on modern macOS systems, so to correctly select a camera, unique-id should be used.
This changes the following things:
- it introduces a new unique-id property to avfvideosrc
- It introduces some validation, if the
capture-screen
property is true, usingdevice-index
results in an error, and vice versa. - avfdeviceprovider generates launch lines using
unique-id
instead ofdevice-index
Fixes: #1761