diff --git a/mediaelement.drush.inc b/mediaelement.drush.inc
new file mode 100644
index 0000000..9647b00
--- /dev/null
+++ b/mediaelement.drush.inc
@@ -0,0 +1,68 @@
+<?php
+
+/**
+ * @file
+ * Drush integration for the mediaelement module.
+ */
+
+/**
+ * Implements hook_drush_command().
+ */
+function mediaelement_drush_command() {
+  $items['mediaelement-download'] = array(
+    'description' => dt('Downloads the mediaelement.js library from https://github.com/johndyer/mediaelement.git.'),
+    'arguments' => array(
+      'path' => dt('Optional. A path to the download folder. If omitted Drush will use the sites/all/libraries/mediaelement (if libraries module is enabled). Else, the mediaelement module folder is used.'),
+    ),
+    'aliases' => array('med'),
+  );
+  return $items;
+}
+
+/**
+ * Implementation of hook_drush_help().
+ */
+function mediaelement_drush_help($section) {
+  switch ($section) {
+    case 'drush:mediaelement-download':
+      return dt('Downloads the mediaelement.js library from https://github.com/johndyer/mediaelement.git. Places it in the libraries directory. Skips download if library already present. This all happens automatically if you enable mediaelement using drush.');
+  }
+}
+
+/**
+ * A command callback. Download the mediaelement.js library using git.
+ */
+function drush_mediaelement_download() {
+  $args = func_get_args();
+  if (isset($args[0])) {
+    $submodule_path = $args[0];
+  }
+  else {
+    $path = drush_get_context('DRUSH_DRUPAL_ROOT');
+    if (module_exists('libraries')) {
+      $submodule_path = libraries_get_path('mediaelement');
+    } else {
+      drush_log(dt('Drush was unable to add mediaelement.js as a submodule to @path.', array('@path' => $path)), 'error');
+    }
+  }
+  
+  if (is_dir($submodule_path)) {
+    drush_log('mediaelement.js already present. No download required.', 'ok');
+  }
+  elseif (drush_shell_cd_and_exec(drush_get_context('DRUSH_DRUPAL_ROOT'), 'git submodule add https://github.com/johndyer/mediaelement.git '.$submodule_path)) {
+    drush_log(dt('mediaelement.js has been added as a submodule via git to @path.', array('@path' => $path)), 'success');
+  }
+  else {
+    drush_log(dt('Drush was unable to add mediaelement.js as a submodule to @path.', array('@path' => $path)), 'error');
+  }
+}
+
+/**
+ * Implements drush_MODULE_post_COMMAND().
+ */
+function drush_mediaelement_post_pm_enable() {
+  $modules = func_get_args();
+  if (in_array('mediaelement', $modules)) {
+    drush_mediaelement_download();
+  }
+}
