diff --git a/src/View/Results/Window.py b/src/View/Results/Window.py
index d2f587af7fcd43adb3955e05a8740a12da4f9da0..a5114ba957adaa857211ab1fb521eb9684cc154c 100644
--- a/src/View/Results/Window.py
+++ b/src/View/Results/Window.py
@@ -24,13 +24,13 @@ from tools import trace, timer
 from View.Tools.PamhyrWindow import PamhyrWindow
 
 from PyQt5.QtGui import (
-    QKeySequence,
+    QKeySequence, QIcon, QPixmap,
 )
 
 from PyQt5.QtCore import (
     Qt, QVariant, QAbstractTableModel,
     QCoreApplication, QModelIndex, pyqtSlot,
-    QItemSelectionModel,
+    QItemSelectionModel, QTimer,
 )
 
 from PyQt5.QtWidgets import (
@@ -124,6 +124,16 @@ class ResultsWindow(PamhyrWindow):
         self._slider_time.setMaximum(len(self._timestamps) - 1)
         self._slider_time.setValue(len(self._timestamps) - 1)
 
+        self._icon_start = QIcon()
+        self._icon_start.addPixmap(QPixmap('./src/View/ui/ressources/media-playback-start.png'))
+        self._icon_pause = QIcon()
+        self._icon_pause.addPixmap(QPixmap('./src/View/ui/ressources/media-playback-pause.png'))
+        self._button_play = self.find(QPushButton, f"playButton")
+        self._button_play.setIcon(self._icon_start)
+        self._button_back = self.find(QPushButton, f"backButton")
+        self._button_next = self.find(QPushButton, f"nextButton")
+        self._timer = QTimer(self)
+
     def setup_plot(self):
         self.canvas = MplCanvas(width=5, height=4, dpi=100)
         self.canvas.setObjectName("canvas")
@@ -310,6 +320,11 @@ class ResultsWindow(PamhyrWindow):
         self._slider_profile.valueChanged.connect(
             self._set_current_profile_slider)
         self._slider_time.valueChanged.connect(self._set_current_timestamp)
+        self._button_play.setChecked(False)
+        self._button_play.clicked.connect(self._pause)
+        self._button_back.clicked.connect(self._back)
+        self._button_next.clicked.connect(self._next)
+        self._timer.timeout.connect(self._update_slider)
 
     def update_table_selection_reach(self, ind):
         table = self.find(QTableView, f"tableView_reach")
@@ -525,3 +540,24 @@ class ResultsWindow(PamhyrWindow):
 
     def _redo(self):
         self._table.redo()
+
+    # play / pause buttons
+    def _update_slider(self):
+        if self._slider_time.value() == self._slider_time.maximum():
+            self._slider_time.setValue(self._slider_time.minimum())
+        else:
+            self._slider_time.setValue(self._slider_time.value()+1)
+
+    def _next(self):
+        self._slider_time.setValue(self._slider_time.value()+1)
+
+    def _back(self):
+        self._slider_time.setValue(self._slider_time.value()-1)
+
+    def _pause(self):
+        if self._button_play.isChecked():
+            self._timer.start(100)
+            self._button_play.setIcon(self._icon_pause)
+        else:
+            self._timer.stop()
+            self._button_play.setIcon(self._icon_start)
diff --git a/src/View/ui/Results.ui b/src/View/ui/Results.ui
index bb8aaae66b4ca6adef85cb922eac1ec107e2471f..54666dd983eb3d0e85fc568d695422b8625e41bd 100644
--- a/src/View/ui/Results.ui
+++ b/src/View/ui/Results.ui
@@ -7,7 +7,7 @@
     <x>0</x>
     <y>0</y>
     <width>942</width>
-    <height>655</height>
+    <height>740</height>
    </rect>
   </property>
   <property name="windowTitle">
@@ -43,25 +43,29 @@
            </attribute>
            <layout class="QGridLayout" name="gridLayout">
             <item row="0" column="0">
-             <widget class="QSplitter" name="splitter_2">
-              <property name="orientation">
-               <enum>Qt::Vertical</enum>
-              </property>
-              <widget class="QSplitter" name="splitter">
-               <property name="orientation">
-                <enum>Qt::Horizontal</enum>
-               </property>
-               <widget class="QWidget" name="verticalLayoutWidget">
-                <layout class="QVBoxLayout" name="verticalLayout"/>
+             <layout class="QVBoxLayout" name="verticalLayout_4">
+              <item>
+               <widget class="QSplitter" name="splitter_2">
+                <property name="orientation">
+                 <enum>Qt::Vertical</enum>
+                </property>
+                <widget class="QSplitter" name="splitter">
+                 <property name="orientation">
+                  <enum>Qt::Horizontal</enum>
+                 </property>
+                 <widget class="QWidget" name="verticalLayoutWidget">
+                  <layout class="QVBoxLayout" name="verticalLayout"/>
+                 </widget>
+                 <widget class="QWidget" name="verticalLayoutWidget_2">
+                  <layout class="QVBoxLayout" name="verticalLayout_2"/>
+                 </widget>
+                </widget>
+                <widget class="QWidget" name="verticalLayoutWidget_3">
+                 <layout class="QVBoxLayout" name="verticalLayout_3"/>
+                </widget>
                </widget>
-               <widget class="QWidget" name="verticalLayoutWidget_2">
-                <layout class="QVBoxLayout" name="verticalLayout_2"/>
-               </widget>
-              </widget>
-              <widget class="QWidget" name="verticalLayoutWidget_3">
-               <layout class="QVBoxLayout" name="verticalLayout_3"/>
-              </widget>
-             </widget>
+              </item>
+             </layout>
             </item>
            </layout>
           </widget>
@@ -117,11 +121,67 @@
          </widget>
         </item>
         <item row="1" column="0">
-         <widget class="QSlider" name="horizontalSlider_time">
-          <property name="orientation">
-           <enum>Qt::Horizontal</enum>
-          </property>
-         </widget>
+         <layout class="QHBoxLayout" name="horizontalLayout_2">
+          <item>
+           <widget class="QPushButton" name="backButton">
+            <property name="text">
+             <string/>
+            </property>
+            <property name="icon">
+             <iconset>
+              <normaloff>ressources/media-seek-backward.png</normaloff>ressources/media-seek-backward.png</iconset>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <widget class="QPushButton" name="playButton">
+            <property name="enabled">
+             <bool>true</bool>
+            </property>
+            <property name="mouseTracking">
+             <bool>true</bool>
+            </property>
+            <property name="contextMenuPolicy">
+             <enum>Qt::DefaultContextMenu</enum>
+            </property>
+            <property name="autoFillBackground">
+             <bool>true</bool>
+            </property>
+            <property name="text">
+             <string/>
+            </property>
+            <property name="icon">
+             <iconset>
+              <normaloff>ressources/media-playback-start.png</normaloff>
+              <normalon>ressources/media-playback-pause.png</normalon>ressources/media-playback-start.png</iconset>
+            </property>
+            <property name="checkable">
+             <bool>true</bool>
+            </property>
+            <property name="checked">
+             <bool>true</bool>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <widget class="QPushButton" name="nextButton">
+            <property name="text">
+             <string/>
+            </property>
+            <property name="icon">
+             <iconset>
+              <normaloff>ressources/media-seek-forward.png</normaloff>ressources/media-seek-forward.png</iconset>
+            </property>
+           </widget>
+          </item>
+          <item>
+           <widget class="QSlider" name="horizontalSlider_time">
+            <property name="orientation">
+             <enum>Qt::Horizontal</enum>
+            </property>
+           </widget>
+          </item>
+         </layout>
         </item>
        </layout>
       </widget>
diff --git a/src/View/ui/ressources/media-playback-pause.png b/src/View/ui/ressources/media-playback-pause.png
new file mode 100644
index 0000000000000000000000000000000000000000..d1d8541d0f946f20c9c3db61f920626a4ef32942
Binary files /dev/null and b/src/View/ui/ressources/media-playback-pause.png differ
diff --git a/src/View/ui/ressources/media-playback-start.png b/src/View/ui/ressources/media-playback-start.png
new file mode 100644
index 0000000000000000000000000000000000000000..4b696d8e87e1a57c73ce54552c7d002fd3e7be25
Binary files /dev/null and b/src/View/ui/ressources/media-playback-start.png differ
diff --git a/src/View/ui/ressources/media-seek-backward.png b/src/View/ui/ressources/media-seek-backward.png
new file mode 100644
index 0000000000000000000000000000000000000000..05bff6fcea23f8d0cb2a54334d73c61d62e3ef69
Binary files /dev/null and b/src/View/ui/ressources/media-seek-backward.png differ
diff --git a/src/View/ui/ressources/media-seek-forward.png b/src/View/ui/ressources/media-seek-forward.png
new file mode 100644
index 0000000000000000000000000000000000000000..9610f752cb36830d941f4e88c84f497c9fb780d6
Binary files /dev/null and b/src/View/ui/ressources/media-seek-forward.png differ
diff --git a/src/View/ui/ressources/media-skip-backward.png b/src/View/ui/ressources/media-skip-backward.png
new file mode 100644
index 0000000000000000000000000000000000000000..8f9480c7ca09f5a4e9e0bea01caa6181c6b5c91f
Binary files /dev/null and b/src/View/ui/ressources/media-skip-backward.png differ
diff --git a/src/View/ui/ressources/media-skip-forward.png b/src/View/ui/ressources/media-skip-forward.png
new file mode 100644
index 0000000000000000000000000000000000000000..c2ab904e4c9f9214b8187be071692fa944b2b3ab
Binary files /dev/null and b/src/View/ui/ressources/media-skip-forward.png differ