Hi megibyan,
The BrightnessValue which you are trying to get is string (numerator/denominator). So calling on GetProperty_float() which expect the value should have (.) but in this case there is ("/") not (".") you get an exception/crash. So instead of calling meta.GetProperty_Float(kXMP_NS_EXIF, "BrightnessValue", &xxx, 0) call meta.GetProperty(kXMP_NS_EXIF, "BrightnessValue", &yyy, 0); where yyy is type std::string.
In the second case, when you set a value of float having (.), you don't get any crash.
-Sunil