-#define AO_BEEP_LOW 150 /* 2500Hz */
-#define AO_BEEP_MID 94 /* 3989Hz */
-#define AO_BEEP_HIGH 75 /* 5000Hz */
+#ifndef AO_BEEP_MID_DEFAULT
+#define AO_BEEP_MID_DEFAULT 94 /* 3989Hz */
+#endif
+
+#define AO_BEEP_MID ((int) ao_config.mid_beep)
+
+#define AO_BEEP_MID_PANIC AO_BEEP_MID_DEFAULT
+
+#ifndef AO_BEEP_MAKE_LOW
+#define AO_BEEP_MAKE_LOW(m) ((m) * 150 / 94) /* 2500Hz */
+#endif
+
+#ifndef AO_BEEP_MAKE_HIGH
+#define AO_BEEP_MAKE_HIGH(m) ((m) * 75 / 94) /* 5000Hz */
+#endif
+
+#define AO_BEEP_LOW AO_BEEP_MAKE_LOW(AO_BEEP_MID)
+#define AO_BEEP_HIGH AO_BEEP_MAKE_HIGH(AO_BEEP_MID)
+
+#define AO_BEEP_LOW_PANIC AO_BEEP_MAKE_LOW(AO_BEEP_MID_PANIC)
+#define AO_BEEP_HIGH_PANIC AO_BEEP_MAKE_HIGH(AO_BEEP_MID_PANIC)
+