diff --git a/record-and-playback/core/lib/recordandplayback/generators/audio.rb b/record-and-playback/core/lib/recordandplayback/generators/audio.rb
index 80c11ea88b6e2a20dfd5365207bef6511a558748..83bbc7ae2b0a66288259a1e70d547e677cecb324 100755
--- a/record-and-playback/core/lib/recordandplayback/generators/audio.rb
+++ b/record-and-playback/core/lib/recordandplayback/generators/audio.rb
@@ -86,28 +86,22 @@ module BigBlueButton
         :audio => nil
       }
 
-      deskshare_start = {	
-        :filename => "",	
-        :timestamp => 0	
-      }
-
       events.xpath('/recording/event[@module="Deskshare" or (@module="bbb-webrtc-sfu" and (@eventname="StartWebRTCDesktopShareEvent" or @eventname="StopWebRTCDesktopShareEvent"))]').each do |event|
-        # check if deskshare has audio
         filename = event.at_xpath('filename').text
+        # Determine the audio filename
+        case event['eventname']
+        when 'DeskshareStartedEvent', 'DeskshareStoppedEvent'
+          filename = event.at_xpath('file').text
+          filename = "#{deskshare_dir}/#{File.basename(filename)}"
+        when 'StartWebRTCDesktopShareEvent', 'StopWebRTCDesktopShareEvent'
+          uri = event.at_xpath('filename').text
+          filename = "#{deskshare_dir}/#{File.basename(uri)}"
+        end
+        raise "Couldn't determine audio filename" if filename.nil?
+        # check if deskshare has audio
         fileHasAudio = !BigBlueButton::EDL::Audio.audio_info(filename)[:audio].nil?
         if (fileHasAudio)
           timestamp = event['timestamp'].to_i - initial_timestamp
-          # Determine the audio filename
-          case event['eventname']
-          when 'DeskshareStartedEvent', 'DeskshareStoppedEvent'
-            filename = event.at_xpath('file').text
-            filename = "#{deskshare_dir}/#{File.basename(filename)}"
-          when 'StartWebRTCDesktopShareEvent', 'StopWebRTCDesktopShareEvent'
-            uri = event.at_xpath('filename').text
-            filename = "#{deskshare_dir}/#{File.basename(uri)}"
-          end
-          raise "Couldn't determine audio filename" if filename.nil?
-
           # Add the audio to the EDL
           case event['eventname']
           when 'DeskshareStartedEvent', 'StartWebRTCDesktopShareEvent'
diff --git a/record-and-playback/core/lib/recordandplayback/generators/audio_processor.rb b/record-and-playback/core/lib/recordandplayback/generators/audio_processor.rb
index 4add823dfa4a6a4eab68165b12335a06ae37d056..7153ec79196da52d28822df99747b964a0c4c91c 100755
--- a/record-and-playback/core/lib/recordandplayback/generators/audio_processor.rb
+++ b/record-and-playback/core/lib/recordandplayback/generators/audio_processor.rb
@@ -58,10 +58,10 @@ module BigBlueButton
         audio_edl, File.join(target_dir, 'recording'), false)
 
       # and mixing it with deskshare audio	
-      if BigBlueButton::Events.screenshare_has_audio?(events_xml)	
+      deskshare_dir = "#{archive_dir}/deskshare"
+      if BigBlueButton::Events.screenshare_has_audio?(events_xml, deskshare_dir)
         BigBlueButton.logger.info("AudioProcessor.process: processing Deskshare audio...")	
 
-        deskshare_dir = "#{archive_dir}/deskshare"
         mixed_dir = "#{archive_dir}/mixed"
 
         deskshare_audio_edl = BigBlueButton::AudioEvents.create_deskshare_audio_edl(events, deskshare_dir)
diff --git a/record-and-playback/core/lib/recordandplayback/generators/events.rb b/record-and-playback/core/lib/recordandplayback/generators/events.rb
index 6dd353a388953389a2683ad2d5d2d72f031abc7f..491264ff7e31d35553d60bdf1009a25bd6e01dad 100755
--- a/record-and-playback/core/lib/recordandplayback/generators/events.rb
+++ b/record-and-playback/core/lib/recordandplayback/generators/events.rb
@@ -693,10 +693,11 @@ module BigBlueButton
     end
 
     # Check if any screenshare files has audio
-    def self.screenshare_has_audio?(events_xml)
+    def self.screenshare_has_audio?(events_xml, deskshare_dir)
       events = Nokogiri::XML(File.open(events_xml))
       events.xpath('/recording/event[@eventname="StartWebRTCDesktopShareEvent"]').each do |event|
         filename = event.at_xpath('filename').text
+        filename = "#{deskshare_dir}/#{File.basename(filename)}"
         fileHasAudio = !BigBlueButton::EDL::Audio.audio_info(filename)[:audio].nil?
         if fileHasAudio
           return true