--- audio.module_orig	2009-11-26 01:00:45.000000000 +0530
+++ audio.module	2010-03-08 17:23:11.000000000 +0530
@@ -554,13 +554,16 @@ function _audio_save(&$node) {
   db_query("DELETE FROM {audio_metadata} WHERE vid=%d", $node->vid);
 
   // Save the new tags.
-  $allowed_tags = audio_get_tags_allowed();
-  foreach ($node->audio_tags as $tag => $value) {
-    if (in_array($tag, $allowed_tags) && $value) {
-      $metadata = array('vid' => $node->vid, 'tag' => $tag, 'value' => $value, 'clean' => audio_clean_tag($value));
-      drupal_write_record('audio_metadata', $metadata);
+  $id3_module_exists = module_exists('audio_getid3');
+  if($id3_module_exists) {
+    $allowed_tags = audio_get_tags_allowed();
+    foreach ($node->audio_tags as $tag => $value) {
+      if (in_array($tag, $allowed_tags) && $value) {
+        $metadata = array('vid' => $node->vid, 'tag' => $tag, 'value' => $value, 'clean' => audio_clean_tag($value));
+        drupal_write_record('audio_metadata', $metadata);
+      }
     }
-  }
+  }  
 }
 
 /**
@@ -607,12 +610,16 @@ function audio_form(&$node, &$form_state
   drupal_add_js(drupal_get_path('module', 'audio') .'/audio.js');
 
   $type = node_get_types('type', $node);
+  $id3_module_exists = module_exists('audio_getid3');
+  if($id3_module_exists) {
+    $default_title = !empty($node->title_format) ? $node->title_format : variable_get('audio_default_title_format', '[audio-tag-title-raw] by [audio-tag-artist-raw]');
+  }
   if ($type->has_title) {
     $form['title']['#weight'] = -5;
     $form['title']['title_format'] = array(
       '#type' => 'textfield',
       '#title' => check_plain($type->title_label),
-      '#default_value' => !empty($node->title_format) ? $node->title_format : variable_get('audio_default_title_format', '[audio-tag-title-raw] by [audio-tag-artist-raw]'),
+      '#default_value' => $id3_module_exists ? $default_title : '',
       '#description' => t("The title can use the file's metadata. You can use the tokens listed below to insert information into the title. <strong>Note:</strong> the node title is escaped so it is safe to use the -raw tokens."),
       '#required' => TRUE,
     );
