윈도우 파일에는 만든 시간, 수정한 시간, 그리고 마지막으로 접근한 시간 3개의 Time Stamp가 있다. 안드로이드, 즉 리눅스의 경우는 접근시간, 수정시간, 변경시간. 만든 시간은 이동이나 복사를 거치면 바뀌지만 수정 시간은 파일의 본래 생성된 (?) 시간으로, 이 것이 바뀌면 이제 보통 파일 순서가 꼬이게 된다.

윈도우와 다르게 안드로이드 상에서는 파일을 옮길 때 Time Stamp가 초기화, 즉 옮긴 날짜로 전부 리셋되는 경우가 많은데, 이 때문에 쉽게 수정 시간이 변하고 그에 따라 순서가 이상해진다.

그 밖에도, 갤러리 앱에서는 정상적으로 순서가 보이는데 카카오톡이나 여타 업로드 시에 파일 앱을 통해 확인하면 순서가 갤러리와 달랐던 경험도 있을 것이다. 사진을 편집했다던가, 웹에서 다운로드 받은 사진들의 경우. 갤러리의 기본 정렬 순서가 다소 독특하기 때문이다.

삼성 갤러리 '만든 시간' 정렬과 윈도우 환경

앞서 말했듯 시간 순 정렬은 대부분 만들어진 시간, 즉 수정 시간을 기준으로 정렬이 된다. 윈도우에서의 정렬은 대개 파일의 이름이나 수정 시간 (Modified Time) 순으로 정렬하여 사용하게 된다.

그러나 안드로이드 상의 갤러리 앱의 기본 정렬은 '만든 시간'인데, 아래와 같은 루틴을 따른다. 구글 컨셉 내용이라고 한다. 갤러리 앱에서 수정 시간 순으로 정렬을 바꾸면 윈도우나 다른 앱에서 보던 것과 같이 수정 시간 기준으로 나온다.

카메라를 통해 촬영한 사진들은 GPS와 EXIF가 일치하게 존재, 혹은 EXIF가 존재한다. 하지만 다운로드 받거나 캡쳐한 사진에는 EXIF가 존재하지 않는다. 또 하나 중요한 사실은 파일을 전송하거나 수정할 때 EXIF는 대개 유지되지만 수정 시간 정보는 유지되기도, 초기화 되기도 한다는 것이다.

삼성 갤러리 상에서는 '이동'을 제외한 거의 대부분에 상황에서 수정 시간을 초기화시켜버린다. 물론 옮길 때 순서를 유지시키기 때문인지 EXIF 없는 걸 옮겨도 순서가 꼬이지는 않는다. 잠깐의 크기 조절, 모션 포토 삭제, 인물 사진 효과 변경등 살짝의 수정도 가차없이 전부 초기화해버린다. 다른 이름으로 저장하면 파일명까지 그 시간으로 친히 바꿔줘버린다.

그 외의 안드로이드의 많은 파일 앱들은 이동이나 복사 시에도 수정 시간을 초기화한다. Mixplorer같은 앱도 기본 값은 수정 시간을 초기화하는 것이지만 옵션에서 수정 시간 유지 옵션을 켜주는 식으로 윈도우처럼 바꿀 수 있다.

이것이 사진을 전송했을 때 순서가 꼬이거나, 사진을 편집했는데 다른 앱에서 보면 순서가 다르게 보이는 이유이다. 윈도우에서는 파일을 복사하거나 해도 기본적으로 수정 시간이 유지되지만, 안드로이드에서는 복사하거나 이동, 편집시 수정 시간이 초기화 되는 작동이 기본값이 경우가 많기 때문. 갤러리에서는 EXIF 순 정렬이니 정상적이어도, 다른 파일 앱이나 윈도우에서는 이상하게 보이게된다.

분명히 Modified Time을 수정했는데 반영이 안되는 경우가 있다. 수정 시간 배열을 했는데도 불구하고. 갤러리 앱이나 카카오톡 상으로 보면 변하지 않았는데, 정작 파일 앱에서는 반영이 되어있다. 이런 경우는 안드로이드는 윈도우와 달리 파일 정보를 미디어 DB에 따로 저장하는데, 수정한 것이 반영이 안된 것. 재부팅하면 해결된다.

갤러리의 '모션 포토'와 '인물 사진', 그리고 '원본 복원' 기능

One UI 3.0 들면서 갤러리가 좀 많이 바뀌었다. 보통 사진 편집을 하고 다른 이름으로 저장되는게 기본이었는데, 이제는 그대로 덮어씌운다. 하지만 하지만 언제든지 원본 복원이 가능하다.

모션 포토 기능은 사진을 찍을때 전후를 약간 동영상 촬영으로 남기는 것으로, JPG 안에 동영상 부분 데이터가 저장되어 있다. 그래서 용량이 다소 크고 다른 폰은 물론 윈도우에서도 별도 처리를 하면 확인할 수 있다. 갤러리 내에서 모션 포토 부분만 제거할 수도 있다.

인물 사진 모드도 다소 독특한데, 이 또한 jpg의 Depth Map을 이용하기 때문인지 파일 내에 저장되어 있어서 언제든지 배경날림 효과들을 바꿔줄 수 있다. 이건 윈도우에서 확인하는법을 모르겠다. 이것도 그 때문인지 다소 용량이 큰데 이건 따로 제거하는 법을 모르겠다. 조금이라도 편집하면 심도 데이터 부분이 날아가는 것 같긴 한데...

이런 사유때문에 당연히 원본 복원도 파일 내에 원본을 보유하고 있다고 생각했으나, 이건 전송 시 원본이 생기지 않는 것으로 보아 아이폰처럼 별도의 공간에 원본을 따로 저장해두는 것으로 보인다.

무엇보다도 이것들을 건들때마다 기본 갤러리앱은 EXIF는 유지하지만 수정 시간만 바꾸어서, 다른 앱 상에서 보면 순서가 완전히 꼬여보이는 것이다. 그래서 이 글에서는 전송시 수정시간 초기화 문제와, 안드로이드에서 사진 편집시 초기화 문제 두가지를 해결해보고자 한다.

전송 시 수정 시간 초기화 문제

  1. 압축하여 옮긴다
  2. 동기화 서비스들을 이용한다. (클라우드 / P2P를 통한. 안되는 경우 있음)
  3. 파일명이나 EXIF를 활용한다
  4. MTP 연결 후 오른쪽 클릭 - 사진 및 동영상 전송기능 (MTP 유선연결시)
  5. FTP를 통해 윈도우로 전송 (SAMBA는 확인 안해봄)

아니면, 윈도우를 거칠 필요가 없다면 갤럭시의 경우 Smart Switch라는, 휼륭한 어플이 있으니 이런 것들을 활용하면 좋다. 또한 안드로이드 상에서 파일 탐색기에 따라 날짜를 초기화시켜버리는 경우가 있으니 마찬가지로 관련 옵션을 알아두는 것이 좋다.

구글링해서 찾은 바들은 어쨌든 위와 같으나, 몇가지 설명이 필요한 것만 추가적으로 다룬다.

파일명이나 EXIF로부터 Time Stamp 재기록

카메라를 통해 찍으면 파일명이 규칙적으로 기록되기에, 또는 EXIF 정보가 기록되기에 그를 이용하여 Time Stamp를 재기록하는 방법이다.

이 외에도 이러한 현상에 스트레스받는 분들을 위해서 누군가가 여러가지 케이스별로 해결방법을 정리해 두었다.

사진 & 동영상 파일의 날짜,시간,정렬,GPS 개념 정리

Bulkfilechanger - EXIF 설정 일괄
EXIF Date Changer - 파일명을 인식해 EXIF 기록, 그 반대도 되는듯?
EXIF <-> Time Stamp metadata 방법들 - 스택 익스체인지

혹은 어플로 EXIF와 파일명간 설정해주는 Reorder a messy gallery after files copy 라는 어플리케이션도 존재한다.

이 방법은 사진같이 EXIF 보존된 경우에는 괜찮겠지만, EXIF도 없고, 파일명도 랜덤인 경우에는 답답해진다.

FTP를 통한 전송

NAS쓰는 사람들은 애초에 걱정이 없겠지만. 대량의 파일을 옮기는 경우라면 간단히 FTP 서버를 만들어서 옮기는 것도 좋은 선택이다. 이 경우 컴퓨터 쪽에 서버를 열어도 되고, 윈도우 쪽에 서버를 열어도 된다.

안드로이드의 걸출한 파일관리 앱 Mixplorer를 사용하면 둘 다 간단히 가능하다. 서버 열기부터 접속까지. 다만 Mixplorer가 어느 순간부터 파일 날짜를 리셋해버려서, 설정 more options에서 last modified time 유지 옵션을 켜주어야한다. 신경쓸 필요도 없고, 원초적인 문제 자체를 해결하기에 가장 좋은 방법이라고 생각한다.

참고로 WebDAV는 안되는 것 같다.

Raidrive - Webdav 수정한 날짜 업로드 시로 고정되는 문제

사진 편집 시 초기화 문제 해결

이미 꼬인 상태에서 복구하는 것은 위를 참고하면 된다. 가장 좋은건 위에 Mixplorer 썼던 것처럼 근본적으로 초기화를 안시키는 방법. 근데 아무리 찾아도 기본 갤러리 앱과 대다수 앱을 포기하지 않고서야 수정 시간을 리셋시키지 않는 방법이 없어서, 그냥 내 행동을 바꾸기로 했다.

EXIF 데이터가 존재하는 사진의 경우, 가능하면 원본을 두고 복사한걸로 편집하고, 편집도 미루지 말고 빨리 해둔다. 그러면 갤러리에서는 언제나 원본 옆에, 윈도우나 카톡 상에서도 멀리 떨어지지 않은 곳에(?) 발견할 수 있다. 원본 자체를 바꿔야 하는 경우 파일앱에서 Modified Time 자체를 EXIF 따라서 수정해준다.

완벽해지려면 일괄적으로 EXIF를 Modified Time 반영시켜주는 걸 사용할 수는 있는데, 그 자체로 너무 귀찮아서... 아니면 아예 편집은 사진을 다른 곳에 보관한다던가.

EXIF 데이터가 존재하지 않는 웹상 다운로드 사진의 경우, 어차피 조금만 건들면 수정 시간이 초기화 되므로 맨 처음으로 가버려서 오히려 EXIF 유지 될 때보다 갤러리에서는 화나는 상황이 많이 발생한다. 그러나 이들은 거의 편집할 일이 없어서 그나마 다행이고, 편집할 일이 있으면 기껏해야 사이즈 처리라서 일괄로 처리해버린다.

무엇보다 당황스러운 점은, PNG에서조차 스크린샷을 할 때 EXIF 기록을 하기때문에 만든 시간과 수정 시간간 배열 차이가 다시 나타나게 된다. EXIF가 없는 파일의 경우는 기록하지 않지만. GIF도 EXIF 기록이 전혀 안되기 때문에 수정 시간이 리셋되고 만든 시간 상으로도 맨 처음으로 리셋되는 것을 볼 수 있다.

파일 전송은 그렇다 치더라도, 근본적으로 윈도우처럼 만든 시간은 바꾸되 수정 시간은 유지하는게 낫지 않나 싶다. EXIF랑 무관하게 수정 시간 기반으로 전부 정렬하고, 편집이나 복사 시에 수정 시간은 유지하는 식. 아니면 갤러리 말고 모든 앱에서 EXIF 참조하는 걸 기준으로 정렬시키던가...