본문 바로가기
[Developer]/Any

동영상 키프레임 조절

by 반가운 해피빈이 2020. 7. 4.

가끔 동영상 관련 개발하다보면, 동영상 키프레임(KeyFrame)을 맞춰야하는 때가 있다.

동영상 자동편집툴에서 변환을 하면 키프레임을 많이 늘려서 제공하게 되는데, 그것으로 인해 개발시 문제가 되는 부분이 있음을 확인할 수 있다.

 

나의 경우를 빌리자면 Android에서 videoView 혹은 mediaPlayer에서 seekTo()를 통해 원하는 구간으로 이동하고 싶었는데, 이 API의 원리가 해당되는 위치의 가까운 키프레임을 찾아서 해당 키프레임으로 이동시켜주는 것이다.

정확하게 내가 원하는 위치의 second로 이동하는게 아니라는 것이다.

 

이것을 오해했을 땐 Frame이 좀 더 잘게 나뉘었어야 하나 싶었는데, 키프레임과 프레임은 다른 것이다!

 

결론적으로는 그 키프레임을 다시 설정하려고 알아보니 많은 유명한 혹은 작은 편집툴들이 그런 키프레임 재설정 기능을 제대로 지원하지는 않았고, 결국은 Adobe Premiere를 통해 진행할 수 있었다.

 

그 방법을 언젠가는 필요로 하는 순간이 있을지 몰라, 아래에 기록해 놓는다.

 

내보내는 메뉴를 찾는다

내보내는 메뉴에 있을 것이라고 생각하기 전에는 한참을 키프레임 설정이 어디있는지 찾았기 때문에, 이 내보내기 메뉴 자체도 매우 중요하였다.

 

비디오 섹션에 보면 키프레임 거리라는 항목을 보자!!

 

일단 위에서 형식을 지정하고 나면, 아래의 효과,비디오,오디오 등의 메뉴가 다시 설정되는데, 그 곳 중에서 비디오 메뉴로 이동한다. 그래서 비트레이트 설정이나 기타 필요한 설정은 알아서 하고, 가장 중요한 고급설정인 키프레임 거리 설정을 한다. 이것이 보통 20~60사이쯤의 값으로 설정되어 있을텐데, 이것을 1로 설정한다.(이렇게 한다고 용량이 늘거나 하지 않기 때문에 편하게 늘려도 된다. 늘린다는 의미는 값을 최소값인 1로 줄인다는 뜻이다.)

 

그다음엔 내보내기 버튼을 누르면 완료.

 

그다음엔 내가 원하는 앱이나 프로그램 내에서 이 비디오 파일을 가지고 구간점프를 하면, 아주 정확한 위치에 도달하는 것을 볼 수 있을 것이다.

댓글0