wp_add_id3_tag_data() – Parse ID3v2, ID3v1, and getID3 comments to extract usable data

You appear to be a bot. Output may be restricted

Description

Parses ID3v2, ID3v1, and getID3 comments to extract usable data.

Usage

wp_add_id3_tag_data( $metadata, $data );

Parameters

$metadata
( array ) required – An existing array with data.
$data
( array ) required – Data supplied by ID3 tags.

Returns

void

Source

File name: wordpress/wp-admin/includes/media.php
Lines:

1 to 36 of 36
function wp_add_id3_tag_data( &$metadata, $data ) {
  foreach ( array( 'id3v2', 'id3v1' ) as $version ) {
    if ( ! empty( $data[ $version ]['comments'] ) ) {
      foreach ( $data[ $version ]['comments'] as $key => $list ) {
        if ( 'length' !== $key && ! empty( $list ) ) {
          $metadata[ $key ] = wp_kses_post( reset( $list ) );
          // Fix bug in byte stream analysis.
          if ( 'terms_of_use' === $key && 0 === strpos( $metadata[ $key ], 'yright notice.' ) ) {
            $metadata[ $key ] = 'Cop' . $metadata[ $key ];
          }
        }
      }
      break;
    }
  }

  if ( ! empty( $data['id3v2']['APIC'] ) ) {
    $image = reset( $data['id3v2']['APIC'] );
    if ( ! empty( $image['data'] ) ) {
      $metadata['image'] = array(
        'data'   => $image['data'],
        'mime'   => $image['image_mime'],
        'width'  => $image['image_width'],
        'height' => $image['image_height'],
      );
    }
  } elseif ( ! empty( $data['comments']['picture'] ) ) {
    $image = reset( $data['comments']['picture'] );
    if ( ! empty( $image['data'] ) ) {
      $metadata['image'] = array(
        'data' => $image['data'],
        'mime' => $image['image_mime'],
      );
    }
  }
}
 

 View on GitHub View on Trac