mirror of
https://github.com/ente-io/ente.git
synced 2025-08-07 23:18:10 +00:00
Prune false positives for times picked from file names
This commit is contained in:
parent
aad7300e4b
commit
d116c5ccb1
@ -4,12 +4,12 @@ import downloadManager from "@/new/photos/services/download";
|
||||
import { EnteFile } from "@/new/photos/types/file";
|
||||
import { detectFileTypeInfo } from "@/new/photos/utils/detect-type";
|
||||
import { validateAndGetCreationUnixTimeInMicroSeconds } from "@ente/shared/time";
|
||||
import { getParsedExifData } from "@ente/shared/utils/exif-old";
|
||||
import type { FixOption } from "components/FixCreationTime";
|
||||
import {
|
||||
changeFileCreationTime,
|
||||
updateExistingFilePubMetadata,
|
||||
} from "utils/file";
|
||||
import { getParsedExifData } from "./exif";
|
||||
|
||||
const EXIF_TIME_TAGS = [
|
||||
"DateTimeOriginal",
|
||||
|
@ -31,9 +31,9 @@ import { DedicatedCryptoWorker } from "@ente/shared/crypto/internal/crypto.worke
|
||||
import type { B64EncryptionResult } from "@ente/shared/crypto/internal/libsodium";
|
||||
import { ENCRYPTION_CHUNK_SIZE } from "@ente/shared/crypto/internal/libsodium";
|
||||
import { CustomError, handleUploadError } from "@ente/shared/error";
|
||||
import { parseImageMetadata } from "@ente/shared/utils/exif-old";
|
||||
import type { Remote } from "comlink";
|
||||
import { addToCollection } from "services/collectionService";
|
||||
import { parseImageMetadata } from "services/exif";
|
||||
import {
|
||||
PublicUploadProps,
|
||||
type LivePhotoAssets,
|
||||
|
@ -1,10 +1,13 @@
|
||||
import { isDevBuild } from "@/base/env";
|
||||
import { nameAndExtension } from "@/base/file";
|
||||
import log from "@/base/log";
|
||||
import {
|
||||
parseMetadataDate,
|
||||
type ParsedMetadata,
|
||||
type ParsedMetadataDate,
|
||||
} from "@/media/file-metadata";
|
||||
import { FileType } from "@/media/file-type";
|
||||
import { parseImageMetadata } from "@ente/shared/utils/exif-old";
|
||||
import ExifReader from "exifreader";
|
||||
import type { EnteFile } from "../types/file";
|
||||
import type { ParsedExtractedMetadata } from "../types/metadata";
|
||||
@ -45,22 +48,23 @@ export const cmpNewLib = (
|
||||
}
|
||||
};
|
||||
|
||||
export const cmpNewLib2 = (enteFile: EnteFile, _exif: unknown) => {
|
||||
export const cmpNewLib2 = async (
|
||||
enteFile: EnteFile,
|
||||
blob: Blob,
|
||||
_exif: unknown,
|
||||
) => {
|
||||
const [, ext] = nameAndExtension(enteFile.metadata.title);
|
||||
const oldLib = await parseImageMetadata(
|
||||
new File([blob], enteFile.metadata.title),
|
||||
{
|
||||
fileType: FileType.image,
|
||||
extension: ext ?? "",
|
||||
},
|
||||
);
|
||||
// cast is fine here, this is just temporary debugging code.
|
||||
const rawExif = _exif as RawExifTags;
|
||||
const newLib = parseExif(rawExif);
|
||||
const pem = {
|
||||
location: {
|
||||
latitude: enteFile.metadata.latitude,
|
||||
longitude: enteFile.metadata.longitude,
|
||||
},
|
||||
creationTime: enteFile.metadata.creationTime,
|
||||
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
||||
width: enteFile.w || null,
|
||||
// eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing
|
||||
height: enteFile.h || null,
|
||||
};
|
||||
cmpNewLib(pem, newLib);
|
||||
cmpNewLib(oldLib, newLib);
|
||||
};
|
||||
|
||||
/**
|
||||
|
@ -474,7 +474,8 @@ const index = async (
|
||||
throw e;
|
||||
}
|
||||
|
||||
if (originalImageBlob) cmpNewLib2(enteFile, exif);
|
||||
if (originalImageBlob)
|
||||
await cmpNewLib2(enteFile, originalImageBlob, exif);
|
||||
|
||||
log.debug(() => {
|
||||
const ms = Date.now() - startTime;
|
||||
|
Loading…
x
Reference in New Issue
Block a user