diff --git a/js/reveal.js b/js/reveal.js
index e910682a5b84cf0eb867cb26cec4aead479a1449..42edf904d1ae95a59f558ce0badf9f266871479a 100644
--- a/js/reveal.js
+++ b/js/reveal.js
@@ -2173,25 +2173,25 @@ var Reveal = (function(){
 	function loadSlide( slide ) {
 
 		// Media elements with data-src attributes
-		toArray( slide.querySelectorAll( 'img[data-src], video[data-src]' ) ).forEach( function( element ) {
+		toArray( slide.querySelectorAll( 'img[data-src], video[data-src], audio[data-src]' ) ).forEach( function( element ) {
 			element.setAttribute( 'src', element.getAttribute( 'data-src' ) );
 			element.removeAttribute( 'data-src' );
 		} );
 
-		// Video elements with multiple <source>s
-		toArray( slide.querySelectorAll( 'video' ) ).forEach( function( video ) {
+		// Media elements with multiple <source>s
+		toArray( slide.querySelectorAll( 'video, audio' ) ).forEach( function( media ) {
 			var sources = 0;
 
-			toArray( slide.querySelectorAll( 'source[data-src]' ) ).forEach( function( source ) {
+			toArray( media.querySelectorAll( 'source[data-src]' ) ).forEach( function( source ) {
 				source.setAttribute( 'src', source.getAttribute( 'data-src' ) );
 				source.removeAttribute( 'data-src' );
 				sources += 1;
 			} );
 
-			// If we rewrote sources for this video, we need to manually
-			// tell it to load from its new origin
+			// If we rewrote sources for this video/audio element, we need
+			// to manually tell it to load from its new origin
 			if( sources > 0 ) {
-				video.load();
+				media.load();
 			}
 		} );
 
diff --git a/test/test.html b/test/test.html
index 31c31dd84dadcaf514b17560bba0fdf6981d451f..edb1623336f5d9c11180ed236d1ceafcb511af3b 100644
--- a/test/test.html
+++ b/test/test.html
@@ -22,10 +22,6 @@
 				<section>
 					<h1>1</h1>
 					<img data-src="fake-url.png">
-					<video>
-						<source data-src="fake-url.mp4" />
-						<source data-src="fake-url.webm" />
-					</video>
 				</section>
 
 				<section>
diff --git a/test/test.js b/test/test.js
index 367373e50e47bfce7ee3bfa0fa22d606efa38801..93a3d61f55d172b9cfe1b5e754c82926d31b0ba4 100644
--- a/test/test.js
+++ b/test/test.js
@@ -456,8 +456,6 @@ Reveal.addEventListener( 'ready', function() {
 
 	test( 'img with data-src', function() {
 		strictEqual( document.querySelectorAll( '.reveal section img[src]' ).length, 1, 'Image source has been set' );
-
-		strictEqual( document.querySelectorAll( '.reveal section video source[src]' ).length, 2, 'Video sources have been set' );
 	});