Cómo detectar si la foto / video fue tomado de la cámara o importado de la cámara en el safari del iphone

En mi sitio web, tengo una etiqueta de file input para cargar fotos / videos. Cuando se abre el sitio web en el safari móvil, y cuando hacemos clic en la entrada del archivo, se abre una hoja de acción con 3 opciones de take photo or Video , choose Existing y cancel . ¿Hay alguna forma de determinar en js que el archivo fue tomado de la cámara ( take photo or video ), o importado ( choose existing ) desde el rollo de la cámara?

Tengo una solución de php implementada a partir de esto, no estoy seguro de que eso te ayude, pero aquí está el código:

 "; echo "Exposure Time: " . $camera['exposure'] . "
"; echo "Aperture: " . $camera['aperture'] . "
"; echo "ISO: " . $camera['iso'] . "
"; echo "Date Taken: " . $camera['date']; // This function is used to determine the camera details for a specific image. It returns an array with the parameters. function cameraUsed($imagePath) { // Check if the variable is set and if the file itself exists before continuing if ((isset($imagePath)) and (file_exists($imagePath))) { // There are 2 arrays which contains the information we are after, so it's easier to state them both $exif_ifd0 = read_exif_data($imagePath ,'IFD0' ,0); $exif_exif = read_exif_data($imagePath ,'EXIF' ,0); //error control $notFound = "Unavailable"; // Make if (@array_key_exists('Make', $exif_ifd0)) { $camMake = $exif_ifd0['Make']; } else { $camMake = $notFound; } // Model if (@array_key_exists('Model', $exif_ifd0)) { $camModel = $exif_ifd0['Model']; } else { $camModel = $notFound; } // Exposure if (@array_key_exists('ExposureTime', $exif_ifd0)) { $camExposure = $exif_ifd0['ExposureTime']; } else { $camExposure = $notFound; } // Aperture if (@array_key_exists('ApertureFNumber', $exif_ifd0['COMPUTED'])) { $camAperture = $exif_ifd0['COMPUTED']['ApertureFNumber']; } else { $camAperture = $notFound; } // Date if (@array_key_exists('DateTime', $exif_ifd0)) { $camDate = $exif_ifd0['DateTime']; } else { $camDate = $notFound; } // ISO if (@array_key_exists('ISOSpeedRatings',$exif_exif)) { $camIso = $exif_exif['ISOSpeedRatings']; } else { $camIso = $notFound; } $return = array(); $return['make'] = $camMake; $return['model'] = $camModel; $return['exposure'] = $camExposure; $return['aperture'] = $camAperture; $return['date'] = $camDate; $return['iso'] = $camIso; return $return; } else { return false; } } ?>

Puede tomar el valor de $ camera [‘date’] para comparar con la fecha actual, y si hay una diferencia de unos segundos, puede asumir que fue tomada por el teléfono en este momento.