diff --git a/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.cpp b/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.cpp
index d1a7432ea2..216f7bd88f 100644
--- a/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.cpp
+++ b/Userland/Libraries/LibWeb/HTML/HTMLMediaElement.cpp
@@ -1885,6 +1885,24 @@ WebIDL::ExceptionOr HTMLMediaElement::handle_keydown(Badgevolume();
+
+ if (key == KeyCode::Key_Up)
+ volume = min(1.0, volume + volume_change_per_key_press);
+ else
+ volume = max(0.0, volume - volume_change_per_key_press);
+
+ TRY(set_volume(volume));
+ break;
+ }
+
+ case KeyCode::Key_M:
+ set_muted(!muted());
+ break;
+
default:
break;
}