        self._frame.set_dpi(dpi)

    ### Interface methods ###

    def render(self, newpath=None, keep_open=False):
        """Render the entire movie and compress it into video."""
        savepath = self.path if newpath is None else newpath
        if os.path.isfile(savepath):
            out('Found existing movie file!')
            if not input('Replace? (y/N) ').strip().lower().startswith('y'):
                return
            os.unlink(savepath)