diff --git a/frontends/web/ts/gb.ts b/frontends/web/ts/gb.ts
index da6cdb782eca096f0e8297b2ad1946b4d75919a6..ff789a00434129d6c274a196cb6d75d70e5843dc 100644
--- a/frontends/web/ts/gb.ts
+++ b/frontends/web/ts/gb.ts
@@ -653,6 +653,30 @@ export class GameboyEmulator extends EmulatorBase implements Emulator {
         this.gameBoy?.key_lift(keyCode);
     }
 
+    pauseVideo() {
+        this.gameBoy?.set_ppu_enabled(false);
+    }
+
+    resumeVideo() {
+        this.gameBoy?.set_ppu_enabled(true);
+    }
+
+    getVideoState(): boolean {
+        return this.gameBoy?.get_ppu_enabled() ?? false;
+    }
+
+    pauseAudio() {
+        this.gameBoy?.set_apu_enabled(false);
+    }
+
+    resumeAudio() {
+        this.gameBoy?.set_apu_enabled(true);
+    }
+
+    getAudioState(): boolean {
+        return this.gameBoy?.get_apu_enabled() ?? false;
+    }
+
     getTile(index: number): Uint8Array {
         return this.gameBoy?.get_tile_buffer(index) ?? new Uint8Array();
     }