A motor driving apparatus comprising: an inverter to convert a direct current, DC, voltage into an alternating current, AC, voltage and to output the AC voltage to a motor ; an output current detector (E) to detect output current flowing in the motor; a first analog filter to pass a first output current corresponding to high-frequency signal injection of the detected output current; a second analog filter to block the first output current of the detected output current and to pass a second output current of the detected output current; and an inverter controller to control the inverter , wherein the inverter controller is configured to: inject a high-frequency voltage command value at the output side of a voltage command generator; output an inverter switching control signal based on said high-frequency signal injection, estimate a position and a rotator speed of a rotator of the motor based on the output current filtered by the first analog filter and a delay compensation value for compensating for delay of the first analog filter , generate a current command value based on the estimated rotator speed and a speed command value, generate a voltage command value based on the current command value and the second output current filtered by the second analog filter , and output the inverter switching control signal based on the voltage command value and on the high-frequency voltage command value. an inverter to convert a direct current, DC, voltage into an alternating current, AC, voltage and to output the AC voltage to a motor ; an output current detector (E) to detect output current flowing in the motor; a first analog filter to pass a first output current corresponding to high-frequency signal injection of the detected output current; a second analog filter to block the first output current of the detected output current and to pass a second output current of the detected output current; and an inverter controller to control the inverter , wherein the inverter controller is configured to: inject a high-frequency voltage command value at the output side of a voltage command generator; output an inverter switching control signal based on said high-frequency signal injection, estimate a position and a rotator speed of a rotator of the motor based on the output current filtered by the first analog filter and a delay compensation value for compensating for delay of the first analog filter , generate a current command value based on the estimated rotator speed and a speed command value, generate a voltage command value based on the current command value and the second output current filtered by the second analog filter , and output the inverter switching control signal based on the voltage command value and on the high-frequency voltage command value. inject a high-frequency voltage command value at the output side of a voltage command generator; output an inverter switching control signal based on said high-frequency signal injection, estimate a position and a rotator speed of a rotator of the motor based on the output current filtered by the first analog filter and a delay compensation value for compensating for delay of the first analog filter , generate a current command value based on the estimated rotator speed and a speed command value, generate a voltage command value based on the current command value and the second output current filtered by the second analog filter , and output the inverter switching control signal based on the voltage command value and on the high-frequency voltage command value. <EOS>