diff --git a/src/module/module_sdl2.c b/src/module/module_sdl2.c
index 40b620eb5139b1b67e4230e94c8f7166f29fc680..7fa151f13d53d8d9cc581b0fd71679a21060b302 100644
--- a/src/module/module_sdl2.c
+++ b/src/module/module_sdl2.c
@@ -36,14 +36,14 @@ die(const char *msg)
     exit(1);
 }
 
-static void *
+static inline void *
 get_proc_address_mpv(void *fn_ctx, const char *name)
 {
     (void) fn_ctx;
     return SDL_GL_GetProcAddress(name);
 }
 
-static void
+static inline void
 on_mpv_events(void *ctx)
 {
     (void) ctx;
@@ -51,7 +51,7 @@ on_mpv_events(void *ctx)
     SDL_PushEvent(&event);
 }
 
-static void
+static inline void
 on_mpv_render_update(void *ctx)
 {
     (void) ctx;
@@ -370,9 +370,7 @@ module_sdl2_close(struct lkt_win *const win)
 {
     if (win == NULL || win->window == NULL)
         return;
-
-    struct module_sdl2_window *const sdl2 = win->window;
-    lmpv_free(&sdl2->mpv);
+    lmpv_free(&((struct module_sdl2_window *)win->window)->mpv);
 }
 
 void
@@ -386,24 +384,9 @@ module_sdl2_toggle_pause(struct lkt_win *const win, bool *new_paused)
 {
     if (win == NULL || win->window == NULL)
         return false;
-
-    mpv_handle *ctx = ((struct module_sdl2_window *) win->window)->mpv;
-
-    if (!ctx) {
-        fprintf(stderr, " ! module_sdl2_toggle_pause: failed due to missing mpv ctx\n");
-        return false;
-    }
-
-    const char *cmd[] = {"cycle", "pause", "up", NULL};
-    int status;
-
-    if ((status = mpv_command(ctx, cmd)) < 0) {
-        fprintf(stderr, "module_sdl2_toggle_pause: Failed issue command: %s\n",
-                mpv_error_string(status));
-        return false;
-    }
-
-    return module_sdl2_is_paused(win, new_paused);
+    int pause, ret = ! lmpv_toggle_pause(((struct module_sdl2_window *) win->window)->mpv, &pause);
+    *new_paused = pause;
+    return ret;
 }
 
 bool
@@ -411,34 +394,11 @@ module_sdl2_load_file(struct lkt_win *const win, const char *filepath)
 {
     if (win == NULL || win->window == NULL)
         return false;
-
     struct module_sdl2_window *sdl2 = win->window;
-    mpv_handle *ctx = sdl2->mpv;
-
-    if (!ctx) {
-        fprintf(stderr, " ! module_sdl2_load_file: failed due to missing mpv ctx\n");
-        return false;
-    }
-
-    if (access(filepath, R_OK)) {
-        fprintf(stderr, " ! module_sdl2_load_file: Faild to read file: %s\n", filepath);
-        return false;
-    }
-
-    const char *cmd[] = {"loadfile", filepath, "replace", NULL};
-    int status;
-
-    if ((status = mpv_command(ctx, cmd)) < 0) {
-        fprintf(stderr, " ! module_sdl2_load_file: Failed to add '%s': %s\n",
-                filepath, mpv_error_string(status));
-        return false;
-    }
-
+    bool ret = ! lmpv_load_file(sdl2->mpv, filepath);
     sdl2->mpv_duration = 0;
     sdl2->mpv_time_pos = 0;
-
-    fprintf(stderr, " . module_x11_load_file: added file %s\n", filepath);
-    return true;
+    return ret;
 }
 
 bool
@@ -446,27 +406,7 @@ module_sdl2_set_volume(struct lkt_win *const win, int vol)
 {
     if (win == NULL || win->window == NULL)
         return false;
-
-    mpv_handle *ctx = ((struct module_sdl2_window *) win->window)->mpv;
-
-    if (!ctx) {
-        fprintf(stderr, " ! module_sdl2_set_volume: failed due to missing mpv ctx\n");
-        return false;
-    }
-
-    int status;
-    char str[5];
-    memset(str, 0, 5);
-    snprintf(str, 4, "%d", vol);
-    const char *cmd[] = {"set", "ao-volume", str, NULL};
-
-    if ((status = mpv_command(ctx, cmd)) < 0) {
-        fprintf(stderr, " ! module_x11_set_volume: Failed to execute command: %s\n",
-                mpv_error_string(status));
-        return false;
-    }
-
-    return true;
+    return ! lmpv_set_volume(((struct module_sdl2_window *) win->window)->mpv, vol);
 }
 
 bool
@@ -474,22 +414,9 @@ module_sdl2_is_paused(struct lkt_win *const win, bool *ret)
 {
     if (win == NULL || win->window == NULL)
         return false;
-
-    mpv_handle *ctx = ((struct module_sdl2_window *) win->window)->mpv;
-    int status;
-
-    if (!ctx) {
-        fprintf(stderr, " ! module_sdl2_is_paused: failed due to missing mpv ctx\n");
-        return false;
-    }
-
-    if ((status = mpv_get_property(ctx, "pause", MPV_FORMAT_FLAG, &ret)) < 0) {
-        fprintf(stderr, "module_sdl2_is_paused: Failed to get pause property: %s\n",
-                mpv_error_string(status));
-        return false;
-    }
-
-    return true;
+    int ret_, sta = ! lmpv_is_paused(((struct module_sdl2_window *) win->window)->mpv, &ret_);
+    *ret = ret_;
+    return sta;
 }
 
 bool
@@ -497,10 +424,7 @@ module_sdl2_get_duration(struct lkt_win *const win, int *dur_sec)
 {
     if (win == NULL || win->window == NULL)
         return false;
-
-    struct module_sdl2_window *sdl2 = win->window;
-    *dur_sec = sdl2->mpv_duration;
-
+    *dur_sec = ((struct module_sdl2_window *) win->window)->mpv_duration;
     return true;
 }
 
@@ -509,10 +433,7 @@ module_sdl2_get_elapsed(struct lkt_win *const win, int *elapsed_sec)
 {
     if (win == NULL || win->window == NULL)
         return false;
-
-    struct module_sdl2_window *sdl2 = win->window;
-    *elapsed_sec = sdl2->mpv_time_pos;
-
+    *elapsed_sec = ((struct module_sdl2_window *) win->window)->mpv_time_pos;
     return true;
 }