diff --git a/bob/pad/face/database/replay_mobile.py b/bob/pad/face/database/replay_mobile.py
index ce56b280b5c89789f210c1ddb6ca0932eb220445..d3a83b2fbfed7e57c735d0c4a10041c7738e3e24 100644
--- a/bob/pad/face/database/replay_mobile.py
+++ b/bob/pad/face/database/replay_mobile.py
@@ -6,6 +6,7 @@ from bob.bio.video import FrameSelector
 from bob.pad.base.database import PadDatabase
 from bob.pad.face.database import VideoPadFile
 from bob.pad.face.utils import frames, number_of_frames
+from bob.db.base.annotations import read_annotation_file
 import numpy
 from bob.extension import rc
 # documentation imports
@@ -88,18 +89,20 @@ class ReplayMobilePadDatabase(PadDatabase):
 
     def __init__(
             self,
-            # grandtest is the default protocol for this database
             protocol='grandtest',
             original_directory=rc['bob.db.replaymobile.directory'],
             original_extension='.mov',
+            annotation_directory=rc['bob.db.replaymobile.annotation_dir'],
+            annotation_extension='.json',
+            annotation_type='json',
             **kwargs):
         """
         Parameters
         ----------
-
         protocol : str or None
             The name of the protocol that defines the default experimental
-            setup for this database.
+            setup for this database. ``grandtest`` is the default protocol for
+            this database.
 
         original_directory : str
             The directory where the original data of the database are stored.
@@ -107,7 +110,14 @@ class ReplayMobilePadDatabase(PadDatabase):
         original_extension : str
             The file name extension of the original data.
 
-        kwargs
+        annotation_directory : str
+            If provided, the annotations will be read from this directory
+            instead of the default annotations that are provided.
+
+        annotation_extension : str
+            The extension of annotations when annotation_extension is provided.
+
+        **kwargs
             The arguments of the :py:class:`bob.bio.base.database.BioDatabase`
             base class constructor.
         """
@@ -131,6 +141,9 @@ class ReplayMobilePadDatabase(PadDatabase):
             protocol=protocol,
             original_directory=original_directory,
             original_extension=original_extension,
+            annotation_directory=annotation_directory,
+            annotation_extension=annotation_extension,
+            annotation_type=annotation_type,
             **kwargs)
 
     @property
@@ -200,6 +213,9 @@ class ReplayMobilePadDatabase(PadDatabase):
         for each video frame. The annotations are returned as dictionary of
         dictionaries.
 
+        If ``self.annotation_directory`` is not None, it will read the
+        annotations from there.
+
         Parameters
         ----------
         f : :any:`ReplayMobilePadFile`
@@ -216,6 +232,14 @@ class ReplayMobilePadDatabase(PadDatabase):
             in frame N.
         """
 
+        if self.annotation_directory is not None:
+            # return the external annotations
+            annotations = read_annotation_file(
+                f.make_path(self.annotation_directory,
+                            self.annotation_extension),
+                self.annotation_type)
+            return annotations
+
         # numpy array containing the face bounding box data for each video
         # frame, returned data format described in the f.bbx() method of the
         # low level interface