diff --git a/front/src/components/audio/Player.vue b/front/src/components/audio/Player.vue
index d3a3decae630e89e37919568de6924171454441e..0c451bdacc6a62ca77eff1c3aee708100b1e4953 100644
--- a/front/src/components/audio/Player.vue
+++ b/front/src/components/audio/Player.vue
@@ -391,6 +391,7 @@ export default {
           self.$store.commit('player/duration', this.duration())
         },
         onloaderror: function (sound, error) {
+          self.removeFromCache(this)
           if (this != self.currentSound) {
             return
           }
@@ -544,6 +545,17 @@ export default {
       })
       this.soundsCache = _.reverse(toKeep)
     },
+    removeFromCache (sound) {
+      let toKeep = []
+      this.soundsCache.forEach((e) => {
+        if (e.sound === sound) {
+          e.sound.unload()
+        } else {
+          toKeep.push(e)
+        }
+      })
+      this.soundsCache = toKeep
+    },
     async loadSound (newValue, oldValue) {
       let trackData = newValue
       let oldSound = this.currentSound