Как получить исходную дату и время из другого часового пояса - PullRequest
0 голосов
/ 27 марта 2020

Я использую библиотеку извлечения метаданных Дрю для переименования моих фотографий и видео.

Это фантастика c, но я сталкиваюсь с большой проблемой при переименовании, например видео, когда я в другом часовом поясе, чем когда был снят видео.

Например, мое видео было снято в Аргентине с датой: «Пт мар 27 11: 43: 25 ART 2020».

Когда я хочу обработать свой файл, вернувшись в Европу, все даты, которые я могу найти в Метаданных, были адаптированы к CET, т. Е. «Пт мар 27 15: 43: 25 CET 2020 ".

Поэтому я не могу использовать эти даты для переименования моих файлов, так как это приведет к неверному имени. Я не могу вручную изменить часовой пояс для каждого каталога, который я обрабатываю, так как идея состоит в том, чтобы автоматизировать все.

Есть ли способ получить исходную дату / время из моих файлов? (mp4, jpg, ... все типы изображений / видео).

Большое спасибо.

Фрэнк

1 Ответ

1 голос
/ 27 марта 2020

Это обычная проблема, и она не имеет ничего общего с библиотекой, о которой вы спрашиваете, а с тем, как ваша камера записала временную метку для начала.

Многие камеры не имеют функциональность часового пояса вообще. Другие хранят время UT C в данных EXIF, поэтому фотографии выравниваются по моменту времени независимо от часового пояса. Из тех, которые это делают, некоторые сохраняют смещение часового пояса, а некоторые нет.

В конечном счете, если единственная информация в файле, захваченном вашей камерой, - это временная метка на основе UT C, тогда вы не так уж много может восстановить исходный часовой пояс - если только вы его не знаете.

К счастью, в вашем случае вы знаете, что были в Аргентине, и, таким образом, вы можете взять временную метку на основе UT C из выходных данных. библиотеки экстрактора метаданных (там должен быть один, но вам придется искать его). Затем вы можете преобразовать это время в Аргентину (используйте "America/Buenos_Aires" в качестве идентификатора часового пояса в вашем коде Java).

Существует множество примеров того, как преобразовать UT C в конкретный c часовой пояс уже, поэтому я не буду включать его здесь. Вы можете найти много, если будете искать эту конкретную c проблему.

Я также укажу, что некоторые камеры хранят широту и долготу, где было снято изображение, так что даже если вы путешествовали повсюду мир, вы могли бы использовать эту информацию, чтобы получить идентификатор часового пояса .

...