wp_get_media_creation_timestamp( array $metadata )

Parse creation date from media metadata.

Description

The getID3 library doesn’t have a standard method for getting creation dates, so the location of this data can vary based on the MIME type.

Parameters

$metadata

(array) (Required) The metadata returned by getID3::analyze().

Return

(int|false) A UNIX timestamp for the media's creation date if available or a boolean FALSE if a timestamp could not be determined.

Source

File: wp-admin/includes/media.php

function wp_get_media_creation_timestamp( $metadata ) {
	$creation_date = false;

	if ( empty( $metadata['fileformat'] ) ) {
		return $creation_date;
	}

	switch ( $metadata['fileformat'] ) {
		case 'asf':
			if ( isset( $metadata['asf']['file_properties_object']['creation_date_unix'] ) ) {
				$creation_date = (int) $metadata['asf']['file_properties_object']['creation_date_unix'];
			}
			break;

		case 'matroska':
		case 'webm':
			if ( isset( $metadata['matroska']['comments']['creation_time']['0'] ) ) {
				$creation_date = strtotime( $metadata['matroska']['comments']['creation_time']['0'] );
			} elseif ( isset( $metadata['matroska']['info']['0']['DateUTC_unix'] ) ) {
				$creation_date = (int) $metadata['matroska']['info']['0']['DateUTC_unix'];
			}
			break;

		case 'quicktime':
		case 'mp4':
			if ( isset( $metadata['quicktime']['moov']['subatoms']['0']['creation_time_unix'] ) ) {
				$creation_date = (int) $metadata['quicktime']['moov']['subatoms']['0']['creation_time_unix'];
			}
			break;
	}

	return $creation_date;
}

Changelog

Version Description
4.9.0 Introduced.

© 2003–2021 WordPress Foundation
Licensed under the GNU GPLv2+ License.
https://developer.wordpress.org/reference/functions/wp_get_media_creation_timestamp