diff --git a/lazy_player/__init__.py b/lazy_player/__init__.py
index 9126ddf..8fa0d07 100644
--- a/lazy_player/__init__.py
+++ b/lazy_player/__init__.py
@@ -302,6 +302,20 @@ class MainWindow(Gtk.ApplicationWindow):
             self._seek_relative(-60)
             return True
 
+        elif keyval == Gdk.keyval_from_name("Home"):
+            self.pipeline.seek_simple(
+                Gst.Format.TIME, Gst.SeekFlags.FLUSH | Gst.SeekFlags.KEY_UNIT, 0
+            )
+            return True
+
+        elif keyval == Gdk.keyval_from_name("End"):
+            success, duration = self.pipeline.query_duration(Gst.Format.TIME)
+            if success:
+                self.pipeline.seek_simple(
+                    Gst.Format.TIME, Gst.SeekFlags.FLUSH | Gst.SeekFlags.KEY_UNIT, duration - 1
+                )
+            return True
+
         elif keyval == Gdk.keyval_from_name("j"):
             self._cycle_subtitles()
             return True