diff --git a/wp-includes/media-template.php b/wp-includes/media-template.php
index be9b6dc1ea..003622bbe9 100644
--- a/wp-includes/media-template.php
+++ b/wp-includes/media-template.php
@@ -312,6 +312,15 @@ function wp_print_media_templates() {
{{ data.fileLength }}
<# } #>
+ <# if ( 'audio' === data.type && data.meta.bitrate ) { #>
+
+ {{ Math.round( data.meta.bitrate / 1000 ) }}kb/s
+ <# if ( data.meta.bitrate_mode ) { #>
+ {{ ' ' + data.meta.bitrate_mode.toUpperCase() }}
+ <# } #>
+
+ <# } #>
+
<# if ( ! data.uploading && data.can.remove ) { #>
diff --git a/wp-includes/media.php b/wp-includes/media.php
index 2b12283537..a1e5b1f157 100644
--- a/wp-includes/media.php
+++ b/wp-includes/media.php
@@ -1463,6 +1463,9 @@ function wp_get_attachment_id3_keys( $attachment, $context = 'display' ) {
$fields['genre'] = __( 'Genre' );
$fields['year'] = __( 'Year' );
$fields['length_formatted'] = _x( 'Length', 'video or audio' );
+ } elseif ( 'js' === $context ) {
+ $fields['bitrate'] = __( 'Bitrate' );
+ $fields['bitrate_mode'] = __( 'Bitrate Mode' );
}
/**
@@ -2716,7 +2719,7 @@ function wp_prepare_attachment_for_js( $attachment ) {
$response['fileLength'] = $meta['length_formatted'];
$response['meta'] = array();
- foreach ( wp_get_attachment_id3_keys( $attachment ) as $key => $label ) {
+ foreach ( wp_get_attachment_id3_keys( $attachment, 'js' ) as $key => $label ) {
if ( ! empty( $meta[ $key ] ) ) {
$response['meta'][ $key ] = $meta[ $key ];
}