diff --git a/audiofield.players.inc b/audiofield.players.inc
index f032fc8..c17fba8 100644
--- a/audiofield.players.inc
+++ b/audiofield.players.inc
@@ -244,46 +244,47 @@ function theme_audiofield_players_premium_beat_mini($variables) {
 }
 
 function audiofield_soundmanager2($player_path, $audio_file) {
-  static $instanceIndex = 0;
   if ($audio_file == '') {
     return t('HTML5 media player for soundmanager2 (skin 360-player)');
   }
   else {
-    $instanceIndex += 1;
-    $player_base_path = variable_get('audiofield_players_dir', 'sites/all/libraries/player') . "/soundmanager2";
-    $ie_js = array(
-      '#type' => 'markup',
-      '#markup' => '<!--[if IE]><script type="text/javascript" src="' . $player_path . '/demo/360-player/script/excanvas.js"></script><![endif]-->',
-    );
-    drupal_add_html_head($ie_js, 'audiofield');
-
-    drupal_add_js($player_base_path . '/script/soundmanager2.js');
-
-    //360 viewer
-    drupal_add_js($player_base_path . '/demo/360-player/script/berniecode-animator.js');
-    drupal_add_js($player_base_path . '/demo/360-player/script/360player.js');
-    drupal_add_css($player_base_path . '/demo/360-player/360player.css');
+    static $js_added = FALSE;
+    if (!$js_added) {
+      $player_base_path = variable_get('audiofield_players_dir', 'sites/all/libraries/player') . "/soundmanager2";
+      $ie_js = array(
+        '#type' => 'markup',
+        '#markup' => '<!--[if IE]><script type="text/javascript" src="' . $player_path . '/demo/360-player/script/excanvas.js"></script><![endif]-->',
+      );
+      drupal_add_html_head($ie_js, 'audiofield');
+      drupal_add_css($player_base_path . '/demo/360-player/360player.css');
+
+      drupal_add_js($player_base_path . '/demo/360-player/script/berniecode-animator.js');
+      drupal_add_js($player_base_path . '/script/soundmanager2.js');
+      drupal_add_js($player_base_path . '/demo/360-player/script/360player.js');
+
+      $js = '
+        soundManager.setup({
+          url: "' . $player_path . '/swf", // directory where SM2 .SWFs live
+          waitForWindowLoad: true,
+
+          //so Firefox and others without MP3 support work
+          preferFlash: true,
+
+          // disable debug mode after development/testing..
+          //debugMode: true,
+        });
+      ';
+
+      drupal_add_js($js, array('type' => 'inline'));
+
+      $js_added = TRUE;
+    }
 
     return '
-    	<div id="sm2-container-real" class="ui360">
-		<a href="' . $audio_file . '"></a>
-    	</div>
-    <script type="text/javascript">
-
-    soundManager.url = "' . $player_path . '/swf"; // directory where SM2 .SWFs live
-    soundManager.useFastPolling = true; // increased JS callback frequency, combined with useHighPerformance = true
-    soundManager.waitForWindowLoad = true;
-
-    //so Firefox and others without MP3 support work
-    soundManager.preferFlash = true;
-
-    // disable debug mode after development/testing..
-    //soundManager.debugMode = true;
-    soundManager.onready(function () {
-      soundManager.stopAll();
-      threeSixtyPlayer.init();
-    });
-    </script>';
+      <div id="sm2-container-real" class="ui360">
+        <a href="' . $audio_file . '"></a>
+      </div>
+    ';
   }
 }
 
