Index: src/js/media/views/attachments/browser.js
===================================================================
--- src/js/media/views/attachments/browser.js	(revision 46184)
+++ src/js/media/views/attachments/browser.js	(working copy)
@@ -122,6 +122,14 @@
 		}) );
 
 		if ( -1 !== $.inArray( this.options.filters, [ 'uploaded', 'all' ] ) ) {
+
+			this.toolbar.set( 'filters-heading', new wp.media.view.Heading( {
+				priority:   -100,
+				text:       l10n.filterAttachments,
+				level:      'h2',
+				className:  'screen-reader-text'
+			}).render() );
+
 			// "Filters" will return a <select>, need to render
 			// screen reader text before
 			this.toolbar.set( 'filtersLabel', new wp.media.view.Label({
Index: src/js/media/views/selection.js
===================================================================
--- src/js/media/views/selection.js	(revision 46184)
+++ src/js/media/views/selection.js	(working copy)
@@ -1,4 +1,5 @@
-var l10n = wp.media.view.l10n,
+var _n = wp.i18n._n,
+	sprintf = wp.i18n.sprintf,
 	Selection;
 
 /**
@@ -60,7 +61,10 @@
 		this.$el.toggleClass( 'one', 1 === collection.length );
 		this.$el.toggleClass( 'editing', editing );
 
-		this.$('.count').text( l10n.selected.replace('%d', collection.length) );
+		this.$( '.count' ).text(
+			/* translators: %s: Number of selected media attachments. */
+			sprintf( _n( '%s item selected', '%s items selected', collection.length ), collection.length )
+		);
 	},
 
 	edit: function( event ) {
Index: src/wp-includes/css/media-views.css
===================================================================
--- src/wp-includes/css/media-views.css	(revision 46184)
+++ src/wp-includes/css/media-views.css	(working copy)
@@ -720,6 +720,7 @@
 }
 
 .media-frame.hide-menu .media-frame-menu,
+.media-frame.hide-menu .media-frame-menu-heading,
 .media-frame.hide-router .media-frame-router,
 .media-frame.hide-toolbar .media-frame-toolbar {
 	display: none;
Index: src/wp-includes/media-template.php
===================================================================
--- src/wp-includes/media-template.php	(revision 46184)
+++ src/wp-includes/media-template.php	(working copy)
@@ -178,9 +178,11 @@
 	<?php // Template for the media frame: used both in the media grid and in the media modal. ?>
 	<script type="text/html" id="tmpl-media-frame">
 		<div class="media-frame-title" id="media-frame-title"></div>
+		<h2 class="screen-reader-text media-frame-menu-heading"><?php _e( 'Menu' ); ?></h2>
 		<div class="media-frame-menu"></div>
 		<div class="media-frame-router"></div>
 		<div class="media-frame-content"></div>
+		<h2 class="screen-reader-text"><?php _e( 'Available actions' ); ?></h2>
 		<div class="media-frame-toolbar"></div>
 		<div class="media-frame-uploader"></div>
 	</script>
Index: src/wp-includes/media.php
===================================================================
--- src/wp-includes/media.php	(revision 46184)
+++ src/wp-includes/media.php	(working copy)
@@ -3850,6 +3850,7 @@
 		'restoreSelected'             => __( 'Restore from Trash' ),
 		'deletePermanently'           => __( 'Delete Permanently' ),
 		'apply'                       => __( 'Apply' ),
+		'filterAttachments'           => __( 'Filter attachments' ),
 		'filterByDate'                => __( 'Filter by date' ),
 		'filterByType'                => __( 'Filter by type' ),
 		'searchMediaLabel'            => __( 'Search Media' ),
Index: src/wp-includes/script-loader.php
===================================================================
--- src/wp-includes/script-loader.php	(revision 46184)
+++ src/wp-includes/script-loader.php	(working copy)
@@ -1509,7 +1509,7 @@
 
 	// To enqueue media-views or media-editor, call wp_enqueue_media().
 	// Both rely on numerous settings, styles, and templates to operate correctly.
-	$scripts->add( 'media-views', "/wp-includes/js/media-views$suffix.js", array( 'utils', 'media-models', 'wp-plupload', 'jquery-ui-sortable', 'wp-mediaelement', 'wp-api-request' ), false, 1 );
+	$scripts->add( 'media-views', "/wp-includes/js/media-views$suffix.js", array( 'utils', 'media-models', 'wp-plupload', 'jquery-ui-sortable', 'wp-mediaelement', 'wp-api-request', 'wp-i18n' ), false, 1 );
 	$scripts->add( 'media-editor', "/wp-includes/js/media-editor$suffix.js", array( 'shortcode', 'media-views' ), false, 1 );
 	$scripts->add( 'media-audiovideo', "/wp-includes/js/media-audiovideo$suffix.js", array( 'media-editor' ), false, 1 );
 	$scripts->add( 'mce-view', "/wp-includes/js/mce-view$suffix.js", array( 'shortcode', 'jquery', 'media-views', 'media-audiovideo' ), false, 1 );
