diff --git a/media.install b/media.install
index 04f0e8a..328277c 100644
--- a/media.install
+++ b/media.install
@@ -9,55 +9,6 @@
  * Implements hook_schema().
  */
 function media_schema() {
-  $schema['media_type'] = array(
-    'description' => 'Stores the settings for media types.',
-    'fields' => array(
-      'name' => array(
-        'description' => 'The machine name of the media type.',
-        'type' => 'varchar',
-        'length' => 255,
-        'not null' => TRUE,
-        'default' => '',
-      ),
-      'label' => array(
-        'description' => 'The label of the media type.',
-        'type' => 'varchar',
-        'length' => 255,
-        'not null' => TRUE,
-        'default' => '',
-      ),
-      'base' => array(
-        'description' => 'If this is a base type (i.e. cannot be deleted)',
-        'type' => 'int',
-        'not null' => TRUE,
-        'default' => 0,
-        'size' => 'tiny',
-      ),
-      'weight' => array(
-        'description' => 'Weight of media type. Determines which one wins when claiming a piece of media (first wins)',
-        'type' => 'int',
-        'not null' => TRUE,
-        'default' => 0,
-        'size' => 'normal',
-      ),
-      'type_callback' => array(
-        'description' => 'Callback to determine if provided media is of this type.',
-        'type' => 'varchar',
-        'length' => 255,
-        'not null' => FALSE,
-        'default' => '',
-      ),
-      'type_callback_args' => array(
-        'type' => 'text',
-        'not null' => FALSE,
-        'size' => 'big',
-        'serialize' => TRUE,
-        'description' => 'A serialized array of name value pairs that will be passed to the callback function',
-      ),
-    ),
-    'primary key' => array('name'),
-  );
-
   $schema['media_list_type'] = array(
     'description' => 'Stores the user preference for whether to list as table or images.',
     'fields' => array(
@@ -115,71 +66,6 @@ function media_schema() {
 }
 
 /**
- * Implements hook_install().
- */
-function media_install() {
-  // @todo We may need to disable the media bundle & field in hook_disable.
-
-  // Define the default type to be used if no other type is found. Give it a
-  // high weight to ensure it runs last.
-  $types['default'] = new stdClass();
-  $types['default']->name = 'default';
-  $types['default']->label = "Other";
-  $types['default']->base = TRUE;
-  $types['default']->weight = 1000;
-  $types['default']->type_callback_args = array(
-    'match_type' => 'any',
-    'mimetypes' => array('/.*/'),
-  );
-
-  // Define the common media types: image, audio, and video.
-  $types['image'] = new stdClass();
-  $types['image']->name = 'image';
-  $types['image']->label = "Image";
-  $types['image']->base = TRUE;
-  $types['image']->type_callback_args = array(
-    'match_type' => 'all',
-    'mimetypes' => array('/^image/'),
-    'extensions' => array('jpg', 'jpeg', 'gif', 'png', 'tiff'),
-    'streams' => array('public', 'private'),
-  );
-
-  $types['audio'] = new stdClass();
-  $types['audio']->name = 'audio';
-  $types['audio']->label = "Audio";
-  $types['audio']->base = TRUE;
-  $types['audio']->type_callback_args = array(
-    'match_type' => 'all',
-    'mimetypes' => array('/^audio/'),
-    'extensions' => array('mp3', 'ogg', 'wma'),
-    'streams' => array('public', 'private'),
-  );
-
-  $types['video'] = new stdClass();
-  $types['video']->name = 'video';
-  $types['video']->label = "Video";
-  $types['video']->base = TRUE;
-  $types['video']->type_callback_args = array(
-    'match_type' => 'all',
-    'mimetypes' => array('/^video/'),
-    'extensions' => array('mov', 'mp4', 'avi'),
-    'streams' => array('public', 'private'),
-  );
-
-  // Create the defined types.
-  foreach ($types as $name => $type) {
-    media_type_save($type);
-
-    // @todo By default, we hide the file display in the 'small' view mode for
-    //   legacy reasons. Does it still make sense to do so? See
-    //   http://drupal.org/node/1051090.
-    $bundle_settings = field_bundle_settings('file', $name);
-    $bundle_settings['extra_fields']['display']['file']['media_small'] = array('weight' => 0, 'visible' => FALSE);
-    field_bundle_settings('file', $name, $bundle_settings);
-  }
-}
-
-/**
  * Implements hook_uninstall().
  */
 function media_uninstall() {
@@ -189,6 +75,13 @@ function media_uninstall() {
   }
 }
 
+/**\
+ * Implements hook_update_last_removed().
+ */
+function media_update_last_removed() {
+  return 7002;
+}
+
 /**
  * Create the media_list_type table.
  */
@@ -689,3 +582,10 @@ function media_update_7201() {
 function media_update_7202() {
   module_enable(array('views'));
 }
+
+/**
+ * Drop the media_types table.
+ */
+function media_update_7203() {
+  db_drop_table('media_types');
+}
diff --git a/media.module b/media.module
index 78b0c51..8f187f0 100644
--- a/media.module
+++ b/media.module
@@ -106,23 +106,6 @@ function media_menu() {
     'file' => 'includes/media.admin.inc',
   );
 
-  // Settings used for determining the type of media a file is.
-  // @todo Find a new home for this that integrates with the file_entity module.
-//  $items['admin/config/media/types/manage/%media_type'] = array(
-//    'title' => 'Manage media',
-//    'title callback' => 'media_type_page_title',
-//    'title arguments' => array(5),
-//    'description' => 'Manage files used on your site.',
-//    'page callback' => 'drupal_get_form',
-//    'page arguments' => array('media_admin_type_manage_form', 5),
-//    'access arguments' => array('administer media'),
-//    'file' => 'includes/media.admin.inc',
-//  );
-//  $items['admin/config/media/types/manage/%media_type/settings'] = array(
-//    'title' => 'Settings',
-//    'type' => MENU_DEFAULT_LOCAL_TASK,
-//    'weight' => -1,
-//  );
   // Administrative screens for managing media.
   $items['admin/content/file/thumbnails'] = array(
     'title' => 'Thumbnails',
@@ -1053,7 +1036,7 @@ function _media_save_file_permenently(&$file) {
  */
 function media_get_thumbnail_preview($file, $link = NULL) {
   // If a file has an invalid type, allow file_view_file() to work.
-  if (!file_info_file_types($file->type)) {
+  if (!file_type_is_enabled($file->type)) {
     $file->type = file_get_type($file);
   }
 
