-
linuxserver/ffmpeg 에서 drawtext 사용 시 한글 문제프로그래밍 2024. 7. 14. 01:10반응형
ffmpeg을 사용해서 동영상의 상단에 제목을 붙이기 위해 drawtext를 사용하는 중에, 한글인 경우에 제대로 렌더링이 되지 않았다.
아예 깨지면 인코딩 문제라고 생각하겠는데, "안녕하세요" 라고 치면 안녕XX 이런식으로 나오는 문제가 있었다.
linuxserver/ffmpeg:latest 이미지의 경우 ubuntu 기반으로 동작하는 것을 보고, 혹시 로케일 설정이 아닌가 생각해서 로케일을 ko_KR로 전부 바꾸고 빌드했지만 전혀 먹히지 않았다.
그러다가 utf-8에 대해서 보게 되었는데, utf-8에서 한글의 경우 한 글자 당 1바이트가 넘게 설정된다는 걸 보게 되었다. 여기서 힌트를 얻어 한글 한 글자당 2개의 공백을 주면 어떨까라는 생각이 들어 실행했고, 제대로 동작했다.
또한 공백을 주는 위치를 점검하기 위해 "한글test"와 같이 1바이트만 차지하는 알파벳을 섞어서 동작시켜보니, 맨 뒤에 공백을 한번에 추가해도 전혀 상관이 없음을 알 수 있었다.
여러 실험을 통해 공백 2개를 추가해야한다는 결과를 얻을 수 있었지만, 왠지 한글이 3바이트씩 차지해서 공백 두 개를 추가하는 게 아닌가 하는 생각이 들었다. ffmpeg의 drawtext를 담당하는 라이브러리에서 내부적인 문제가 있는 것 같다.
반응형'프로그래밍' 카테고리의 다른 글
Java heap memory 늘리기 (0) 2024.06.26 Dockerfile 작성 시 주의할 점 (0) 2024.06.26 MySQL - 쿼리 작성 순서와 실제 실행 순서 (0) 2023.07.29 [Spring Boot] @ModelAttribute 와 @RequestBody 의 차이 (0) 2023.05.21 [Spring Boot] CORS 문제 (0) 2023.05.21