개발하다 정리해보자

360도 영상을 용량에 맞춰 자르며 360도 설정을 유지하기 본문

360도 영상을 용량에 맞춰 자르며 360도 설정을 유지하기

hijae 2023. 2. 26. 23:40

 

나는 사진과 영상의 백업을 구글 포토를 통해 백업한다.

그러나 구글 포토에 업로드 할 수 있는 한 장의 사진은 200 MB, 한 편의 영상은 20 GB으로 용량이 제한되어 있다.

 

사진만을 백업할 때는 전혀 문제가 없었다. 하지만 insta360의 One RS 트윈 패키지를 구입하면서 이야기가 달라졌다.

인스타360 One RS의 동영상은 한 편당 29분으로 4K영상의 경우 20GB를 조금 넘고 5.7K 360영상은 35GB에 달하는 등 용량 제한의 압박에 시달리게 되었다.

 

그래서 ffmpeg를 사용하면 용량에 따라 파일을 나눌 수 있지 않을까 검색해보았다. 그랬더니 이미 만들어진 bash 파일이 나왔다.

https://stackoverflow.com/a/52158160

 

Using ffmpeg to split video files by size

I'm trying to write a batch file using ffmpeg to automate the redundant daily task of taking footage from work that's recorded in 4gb blocks (which is standard in most DSLR cameras & GoPro's), ...

stackoverflow.com

감사하게도 위의 bash스트립트를 사용하면 원하는 용량에 맞춰 파일을 나눌 수 있었다.

 

하지만 약간의 문제가 있었다. 구글 포토에 업로드 하면 360도 영상이 아닌 일반 영상으로 나오는 것이었다.

이는 메타데이터가 넘어가지 않아 발생한 문제였는데 이를 해결하기 위해

-strict unofficial

위의 옵션을 주니 정상적으로 360도에 관련된 메타데이터도 넘어갔다.

./split-video.sh 파일명 16000000000 "-map 0 -copy_unknown -map_metadata 0:g -c copy -movflags use_metadata_tags -strict unofficial"

나의 경우에는 16000000000으로 설정하여 16기가로 나누고 뒤에 다양한 옵션을 더 넣어 모든 메타데이터가 넘어가도록 설정했다.