ffmpeg color range ffmpeg

http://laizenti.blog.me/220845530434
위의 블로그에서 제공하는 4K DSLR 동영상 촬영 샘플을 가지고
ffmpeg 으로 인코딩 테스트를 해봤는데 color range 문제가 발생했다.
저런 류의 소스는 처음 다뤄보는 것이라 기록 차원에서 글을 남긴다.

해당 원본의 정보는 다음과 같다.
Video: mjpeg (jpeg / 0x6765706A), yuvj422p(pc, bt470bg/bt709/bt709), 4096x2160, 536336 kb/s, 29.97 fps, 29.97 tbr, 30k tbn, 30k tbc (default)


1. ffmpeg -i "input" "output"
위의 명령으로 인코딩을 하면 아래의 경고 메세지가 뜬다.
No pixel format specified, yuvj422p for H.264 encoding chosen.
Use -pix_fmt yuv420p for compatibility with outdated media players.

동영상 재생 시 호환성을 위해서 yuvj422p 를 yuv420p 로 변환하라고 한다.

2. ffmpeg -i "input" -pix_fmt yuv420p "output"
시키는대로 다시 인코딩을 하면 새로운 경고 메세지가 뜬다.
[swscaler @ 0000000000339100] deprecated pixel format used, make sure you did set range correctly
그냥 그려려니 하고 넘어가기에는 인코딩된 결과물의 화면이 이상하다.
색범위가 16-235 로 표현되는 것처럼 모델이 입은 블랙 원피스의 색상이 허옇게 떠버린다.


3. ffmpeg -i "input" -pix_fmt yuv420p -src_range 1 -dst_range 1 "output"
한참동안 ffmpeg 문서를 뒤져서 찾은 해법이 저것이다.
(https://www.ffmpeg.org/doxygen/3.1/structSwsContext.html)
-src_range 0/1 > 0 = MPG YUV range, 1 = JPG YUV range (source image).
-dst_range 0/1 > 0 = MPG YUV range, 1 = JPG YUV range (destination image).

핑백

  • tomcat in a well : 2016년 내 이글루 결산 2017-03-24 19:07:39 #

    ... FFmpeg 배치 파일 동영상 인코더 20150509a 476 2 Lame MP3 ACM 3.98.2 325 3 ffmpeg color range 191 4 VGA 쿨러 교체 168 5 유부남이 연애에 강한 이유 from 샐리님 154 2016년에 조회수 ... more

덧글

댓글 입력 영역