Index: wp-includes/media.php
===================================================================
--- wp-includes/media.php	(revision 25351)
+++ wp-includes/media.php	(working copy)
@@ -853,6 +853,11 @@
 	static $instances = 0;
 	$instances++;
 
+	// Allow plugins and themes to short-circuit the shortcode.
+	$html = apply_filters( 'wp_audio_shortcode_override', false, $attr, $instances );
+	if ( false !== $html )
+		return $html;
+
 	$audio = null;
 
 	$default_types = wp_get_audio_extensions();
@@ -946,7 +951,7 @@
 
 	return apply_filters( 'wp_audio_shortcode', $html, $atts, $audio, $post_id, $library );
 }
-add_shortcode( 'audio', apply_filters( 'wp_audio_shortcode_handler', 'wp_audio_shortcode' ) );
+add_shortcode( 'audio', 'wp_audio_shortcode' );
 
 /**
  * Return a filtered list of WP-supported video formats
@@ -976,6 +981,11 @@
 	static $instances = 0;
 	$instances++;
 
+	// Allow plugins and themes to short-circuit the shortcode.
+	$html = apply_filters( 'wp_video_shortcode_override', false, $attr, $instances );
+	if ( false !== $html )
+		return $html;
+
 	$video = null;
 
 	$default_types = wp_get_video_extensions();
@@ -1090,7 +1100,7 @@
 	$html = sprintf( '<div style="width: %dpx; max-width: 100%%;">%s</div>', $width, $html );
 	return apply_filters( 'wp_video_shortcode', $html, $atts, $video, $post_id, $library );
 }
-add_shortcode( 'video', apply_filters( 'wp_video_shortcode_handler', 'wp_video_shortcode' ) );
+add_shortcode( 'video', 'wp_video_shortcode' );
 
 /**
  * Display previous image link that has the same post parent.
