1. 원본
2. HEVC_NVENC, 640 x -1, 상하단 140 제거시.
- 두꺼운 녹색 투명 띠가..
3. H264_NVENC, 이하 상동.
- 2번보다는 얇은 녹색 투명 띠가..
4. 샤나 5.0 버젼은 이상 무.
설정 파일 첨부 했습니다.
[1] 원본
[2]
[3]
[4]
1. 원본
2. HEVC_NVENC, 640 x -1, 상하단 140 제거시.
- 두꺼운 녹색 투명 띠가..
3. H264_NVENC, 이하 상동.
- 2번보다는 얇은 녹색 투명 띠가..
4. 샤나 5.0 버젼은 이상 무.
설정 파일 첨부 했습니다.
[1] 원본
[2]
[3]
[4]
첨부 '5' |
---|
조사해 보니 해상도 변경에 -1 값을 준 게 원인이었습니다.
위, 아래 140씩 잘라 1920x(1080-280)=1920x800이 된 영상을 가로 640에 맞추어 비율에 맞게 세로를 -1로 잡고 해상도 변경을 하면 세로 길이가 266.67, 즉 반올림하면 267이 되죠.
아시겠지만 짝수가 아닌 해상도는 H.264나 HEVC 코덱에서 인코딩 오류가 나는 게 정상입니다. 실제로 x264로 인코딩해보면 아래와 같이 오류가 나면서 인코딩이 실패합니다.
[libx264 @ 000001e95dd40540] height not divisible by 2 (640x267)
하지만 샤나인코더 내장 FFmpeg의 NVENC도 그렇고, 다른 최근의 FFmpeg의 NVENC도 그렇고, NVENC 코덱에서는 이게 일단 인코딩이 됩니다. 해상도도 640x267로 나옵니다. (원본 높이는 268이라고 병기합니다만.)
하지만 이렇게 되면 YUV420P인 원본 픽셀 포맷 특성상 짝이 맞지 않는 부분은 색차 정보가 누락되기 때문에 밑의 일정 부분이 녹색으로만 보이는 현상이 나타나게 된 것입니다.
H.264보다 HEVC 쪽 폭이 큰 것은 인코딩 단위(macroblock or CU)가 HEVC 쪽이 H.264보다 크기 때문인 것으로 짐작됩니다.
실제로 해상도 변경에 -1 대신 266을 주면 샤나인코더에서도, FFmpeg에서도 이런 현상이 나타나지 않습니다.
샤나 구버전에 해당 현상이 나타나지 않는 것은 구버전의 -1 값에 대한 처리가 FFmpeg 오리지널 방식과 달랐던 때문이 아닌가 싶습니다. (본인이 작성하셨던 버그 보고 기억하시죠?)
아무튼, 잘라내기와 해상도 변경을 병행하실 때는 -1 대신 정확한 짝수값을 대신 넣어주시는 게 더 나은 방법일 것 같습니다.
이후로 몇번 버젼 업데이트 되었는데 아직 수정이 되지 않았네요...
제 생각엔 리사이즈 부분에 값으로 '-1'이 들어갔을 때 짝수 여부를 체크해서 가장 가까운 짝수로 치환하는 루틴을 코드에 추가하면 될 것 같긴 한데... 모르겠군요.
@Rina 님께 따로 기능 요청하시는 게 좋을 듯합니다.
소리를 4가지로 분리하는 샤나보컬리무버 프로그램을 소개합니다. 0
샤나인코더 통합 검색 기능 개선(샤나인코더 우측 상단에 있는 검색창을 사용해 보세요.) 0
자유게시판에서는 자유롭게 글을 작성할 수 있지만 다음과 같은 내용은 삭제돼요 0
[필독] 질문 전에 반드시 읽으세요!!! 3
[알림] 질문 먹튀하지 마시기 바랍니다 => 본문 변경 금지 24
구간설정창에서 현재화면의 '프레임 위치번호' 를 알수있는 방법 없는가요? 1
인코딩 오류 질문드립니다 4
저번에 샤나인코더 버그 질문드렸었는데 비슷한 현상이 더 있는 것 같습니다. 2
신버전 인코딩 변환 속도를 빠르게 하는 방법 좀 알려주세요ㅠ 1
여러개의 동영상파일에 대해 동일한 구간의 자르기를 하려고 합니다. 1
파일의 인코딩을 변환한 후 원본영상을 삭제하고자 합니다 2
아이패드 스크린 녹화영상 인코딩시 화면 회전 문의 5
영상에 한글자막을 closed caption 적용하여 인코딩시 자막명이 und, unknow로 나옵니다. 1
파일정보의 encoding setting과 Writing library 4
자막 Closed Caption 적용시 자막명이 unknow 또는 und로 표시되는데 혹시 자막명을 설정할수가 있나요? 0
비트레이트 제한거는 옵션 vbv 1
SK BTV usb 플레이어로 재생시킬땐 어떤 세팅으로 인코딩 해야 하나요? 1
영상 잘라내기 하면 하단에 녹색 띠가 생기네요 6
HEVC 인코딩 후 애플 기기에서 사용시 일반과 AMF 여부에 따라 인식 차이에 대한 질문 10
노멀라이저 관련 1
-map 명령어 쓸 수 있게 해주세요 2
GTX 1660 이 NVENC 에서 1060 보다 성능이 오히려 떨어지나요 ?? 2
DVD 원본파일이 p, i, ib가 섞였는데 어떻게 인코딩하나요? 2
5.1.0 업데이트 이후 합치기 오류 질문 2
ass자막 인코딩시 자막위치가 달라집니다 2
녹색띠라면 해당 부분의 색차(chroma) 정보가 날아간다는 소린데...
이건 crop 필터 쪽은 아닌 거 같고, 해상도 변경을 위한 scale 필터나 hevc_nvenc, h264_nvenc 쪽 문제 같습니다.
그런데 두 인코더가 각기 크기가 다르다는 걸 보니 아무래도 NVENC 인코더들 문제가 아닌가 싶네요.
두 가지 원인을 생각해볼 수 있습니다. 하나는 본인의 엔비디아 그래픽 카드 드라이버(중 NVENC 쪽)의 문제일 경우와 샤나인코더 내장 FFmpeg가 갖고 있는 hevc_nvenc, h264_nvenc 코덱들의 문제일 경우. 그런데 샤나인코더 구버전에는 문제가 없다는 걸로 봐서 드라이버 문제는 아닌 것 같군요.
근데 혹시 모르니 NVENC 인코딩 설정들에서 추가 옵션들, 즉
얘네들을 삭제하고 다시 시도해 보시겠습니까? 뭔가 설정이 안 맞아서 발생했을지도 모른다는 혹시나 하는 의심입니다. 뭐, 그렇다고 해도 코덱들의 문제가 아닌 것은 아니지만 말이죠.
어쨌든, 적당한 자료를 갖고 저도 테스트를 해보겠습니다.