스마트폰으로 경기를 촬영한 결과,
스마트폰 별로 설정이 달라서
Left(Galaxy S21)는 hevc, Right(Galaxy Note 10)는 h264 codec으로 촬영 되었다.
이 동영상을 ffmpeg를 이용해 변환하고 그 결과를 hstack을 이용해 옆으로 붙였을 시,
아래와 같은 결과물을 얻었다.
좌우 색이 다르다.
그리고 플레이어가 동작되기 전, 아래와 같은 팝업이 뜬다.
위 링크에 따르면 H.264와 HEVC(==H265) 둘 다 지원한다.
위 팝업의 범인을 찾아보자.
right(h264) 를 hevc로 encoding
일단, 테스트를 위해 동영상을 trim.
ffmpeg -i 6q_left.mp4 -ss 00:02:32 -to 00:03:02 -c copy 6q_left_trim_30sec.mp4
ffmpeg -i 6q_right.mp4 -ss 00:02:29 -to 00:02:59 -c copy 6q_right_trim_30sec.mp4
libx265를 이용한 encoding
ffmpeg -i 6q_right_trim_30sec.mp4 -c:v libx265 -vtag hvc1 -c:a copy 6q_right_trim_30sec_h265.mp4
73.5M 크기의 6q_right_trim_30sec.mp4 파일이 8.7M의 6q_right_trim_30sec_h265.mp4가 되었다.
encoding 후 화질은 그대로였지만, encoding speed는 0.49로 매우 느렸다.
videotoolbox를 이용한 encoding
ffmpeg -i 6q_right_trim_30sec.mp4 -c:v hevc_videotoolbox -vtag hvc1 -c:a copy 6q_right_trim_30sec_h265_videotoolbox.mp4
6.2M의 6q_right_trim_30sec_h265_videotoolbox.mp4이 생겼지만, 화질은 떨어졌다.
ffmpeg -i 6q_right_trim_30sec.mp4 -c:v hevc_videotoolbox -b:v 4000k -vtag hvc1 -c:a copy 6q_right_trim_30sec_h265_videotoolbox.mp4
이제 6q_left.mp4 와 6q_right_trim_30sec_h265.mp4를 hstack으로 쌓아보자.
왼쪽이 문제인 듯하다.
왼쪽을 encoding 해보자.
ffmpeg -i 6q_left_trim_30sec.mp4 -c:v libx265 -vtag hvc1 -c:a copy 6q_left_trim_30sec_libx265.mp4
videotoolbox로 변환해보자.
ffmpeg -i 6q_left_trim_30sec.mp4 -c:v hevc_videotoolbox -b:v 4000k -vtag hvc1 -c:a copy 6q_left_trim_30sec_hevc_videotoolbox.mp4
성공!
이제 다시 merge 시도.
음...
왼쪽을 h264로 해도 마찬가지...
댓글
댓글 쓰기