diff --git a/src/importexport/mei/internal/meiconverter.cpp b/src/importexport/mei/internal/meiconverter.cpp
index 484ca90774b3e..73449852bb2db 100644
--- a/src/importexport/mei/internal/meiconverter.cpp
+++ b/src/importexport/mei/internal/meiconverter.cpp
@@ -1246,10 +1246,7 @@ void Convert::dynamFromMEI(engraving::Dynamic* dynamic, const StringList& meiLin
warning = false;
// @place
- if (meiDynam.HasPlace()) {
- dynamic->setProperty(engraving::Pid::DIRECTION,
- meiDynam.GetPlace() == libmei::STAFFREL_above ? engraving::DirectionV::UP : engraving::DirectionV::DOWN);
- }
+ dynamic->setProperty(engraving::Pid::DIRECTION, Convert::directionFromMEI(meiDynam.GetPlace()));
// @label
if (meiDynam.HasLabel()) {
@@ -1308,9 +1305,7 @@ libmei::Dynam Convert::dynamToMEI(const engraving::Dynamic* dynamic, StringList&
libmei::Dynam meiDynam;
// @place
- if (dynamic->getProperty(engraving::Pid::DIRECTION) != dynamic->propertyDefault(engraving::Pid::DIRECTION)) {
- meiDynam.SetPlace(Convert::directionToMEI(dynamic->direction()));
- }
+ meiDynam.SetPlace(Convert::directionToMEI(dynamic->direction()));
// @layer
Convert::layerIdentToMEI(dynamic, meiDynam);
@@ -1628,10 +1623,7 @@ void Convert::hairpinFromMEI(engraving::Hairpin* hairpin, const libmei::Hairpin&
warning = false;
// @place
- if (meiHairpin.HasPlace()) {
- hairpin->setProperty(engraving::Pid::DIRECTION, meiHairpin.GetPlace()
- == libmei::STAFFREL_above ? engraving::DirectionV::UP : engraving::DirectionV::DOWN);
- }
+ hairpin->setProperty(engraving::Pid::DIRECTION, Convert::directionFromMEI(meiHairpin.GetPlace()));
// @form
if (meiHairpin.GetForm() == libmei::hairpinLog_FORM_cres) {
@@ -1660,9 +1652,7 @@ libmei::Hairpin Convert::hairpinToMEI(const engraving::Hairpin* hairpin)
libmei::Hairpin meiHairpin;
// @place
- if (hairpin->getProperty(engraving::Pid::DIRECTION) != hairpin->propertyDefault(engraving::Pid::DIRECTION)) {
- meiHairpin.SetPlace(Convert::directionToMEI(hairpin->direction()));
- }
+ meiHairpin.SetPlace(Convert::directionToMEI(hairpin->direction()));
// @form
if (hairpin->hairpinType() == engraving::HairpinType::CRESC_HAIRPIN) {
@@ -2646,9 +2636,8 @@ libmei::data_STAFFREL Convert::placeToMEI(engraving::PlacementV place)
}
}
-engraving::DirectionV Convert::directionFromMEI(const libmei::data_STAFFREL meiPlace, bool& warning)
+engraving::DirectionV Convert::directionFromMEI(const libmei::data_STAFFREL meiPlace)
{
- warning = false;
switch (meiPlace) {
case (libmei::STAFFREL_above): return engraving::DirectionV::UP;
case (libmei::STAFFREL_below): return engraving::DirectionV::DOWN;
@@ -2663,7 +2652,7 @@ libmei::data_STAFFREL Convert::directionToMEI(engraving::DirectionV direction)
case (engraving::DirectionV::UP): return libmei::STAFFREL_above;
case (engraving::DirectionV::DOWN): return libmei::STAFFREL_below;
default:
- return libmei::STAFFREL_above;
+ return libmei::STAFFREL_NONE;
}
}
diff --git a/src/importexport/mei/internal/meiconverter.h b/src/importexport/mei/internal/meiconverter.h
index 047ea78fcf28e..66f1cd5c2055b 100644
--- a/src/importexport/mei/internal/meiconverter.h
+++ b/src/importexport/mei/internal/meiconverter.h
@@ -275,7 +275,7 @@ class Convert
static engraving::PlacementV placeFromMEI(const libmei::data_STAFFREL meiPlace, bool& warning);
static libmei::data_STAFFREL placeToMEI(engraving::PlacementV place);
- static engraving::DirectionV directionFromMEI(const libmei::data_STAFFREL meiPlace, bool& warning);
+ static engraving::DirectionV directionFromMEI(const libmei::data_STAFFREL meiPlace);
static libmei::data_STAFFREL directionToMEI(engraving::DirectionV direction);
static void slurFromMEI(engraving::SlurTie* slur, const libmei::Slur& meiSlur, bool& warning);
diff --git a/src/importexport/mei/tests/data/dynamic-01.mei b/src/importexport/mei/tests/data/dynamic-01.mei
index c2873682b13a1..bf73f033343e3 100644
--- a/src/importexport/mei/tests/data/dynamic-01.mei
+++ b/src/importexport/mei/tests/data/dynamic-01.mei
@@ -59,7 +59,7 @@
mp
sffz
sfz
- pp
+ pp
diff --git a/src/importexport/mei/tests/data/dynamic-01.mscx b/src/importexport/mei/tests/data/dynamic-01.mscx
index 239013d9412a9..3d7b9eda485c8 100644
--- a/src/importexport/mei/tests/data/dynamic-01.mscx
+++ b/src/importexport/mei/tests/data/dynamic-01.mscx
@@ -126,6 +126,7 @@
pp
33
+ down
whole