FFmpeg의 H.265 인코딩이 Adobe보다 훨씬 더 효율적인 이유는 무엇입니까?

FFmpeg의 H.265 인코딩이 Adobe보다 훨씬 더 효율적인 이유는 무엇입니까?

Premiere Pro/Media Encoder(대상 비트 전송률 10)에서 렌더링되고 H.265로 인코딩된 30초짜리 1080p 비디오 파일이 있습니다. 용량은 36.6MB입니다. 내가 명령을 실행할 때

ffmpeg -i input -c:v libx265 -c:a copy output.mp4

새 파일의 크기는 5.04MB에 불과합니다. mediainfo새 파일의 비트 전송률이 1164kb/s에 불과한 것으로 나타났습니다. 하나가 다른 것보다 훨씬 작더라도 두 비디오는 동일하게 보입니다(압축되지 않은 버전과 비교할 때 둘 다 VMAF 점수가 97 이상입니다).

libx265비트 전송률을 현명하게 선택하면 비디오 크기가 훨씬 작아지나요 ?

답변1

~ 할 것이다지각적인 "품질"에 관계없이 다시 인코딩할 때 데이터가 손실되었습니다. 그것은 크기 감소가 발생한 곳 중 하나입니다. 사소하거나 감지할 수 없는 세부 사항은 압축기 알고리즘을 사용하여 손실되거나 근사화됩니다.

ffmpeg하지만 가장 큰 차이점은 Adobe와 기본 품질 및 대역폭 설정이 서로 다르다는 것입니다 . "VMAF 점수"가 비슷해 보이는 것은 데이터가 얼마나 손실되었는지가 아니라 인간이 차이를 보지 못할 것이라는 사실을 말해줍니다.

ffmpeg프레임을 디코딩하고 기본 설정을 사용하여 다시 인코딩합니다. 기본값은 공격적일 가능성이 있으며https://trac.ffmpeg.org/wiki/Encode/H.265기본값은 medium품질 프로필입니다.

기본값은 중간입니다. 사전 설정은 압축 효율성을 결정하므로 인코딩 속도에 영향을 미칩니다. 유효한 사전 설정은 ultrafast, superfast, veryfast, faster, fast, medium, slow, slower, veryslow및 입니다 placebo. 인내심을 갖고 가장 느린 사전 설정을 사용하십시오. placebo인코딩 시간이 크게 증가해도 별 의미 없는 결과를 제공하므로 무시하세요 .

압축 설정이 느릴수록 파일 크기와 압축 시간이 커지는 대신 실제 원본 품질을 더욱 충실하게 보존할 수 있습니다.

ffmpeg또한 기본적으로 CRF는 28로 설정되어 있어 상대적으로 압축률이 매우 높습니다.

CRF를 선택하세요. CRF는 품질에 영향을 미칩니다. 기본값은 28이며 CRF 23의 libx264 비디오와 시각적으로 일치해야 합니다.

ffmpeg기본적으로 몇 가지 고급 압축 기능이 활성화되어 있을 수도 있습니다 . Adobe는 렌더링 시간을 줄이거나 품질 또는 기타 기능을 보존하기 위해 더 높은 비트 전송률을 위해 일부 인코딩 근사 기능을 피할 수 있습니다. 어떤 설정이 사용되고 있는지 정확히 알지 못하면 알기 어렵습니다.

Adobe와 출력을 공정하게 비교하려면 ffmpeg압축되지 않은 형식으로 렌더링하고 Adobe가 사용하는 설정이 무엇인지 정확히 확인한 다음 압축해야 합니다.압축되지 않은둘 다에 파일을 넣으세요.

이미 압축된 파일을 다시 압축(디코딩 및 재인코딩)하면세대 손실단 한 번의 패스에서는 중요해 보이지 않을 수 있지만 데이터와 품질이 손실됩니다. 여러 번 통과한 후 손실~ 할 것이다중요하다.

답변2

VMAF매우 높은 품질의 인코딩에 대해서는 전혀 좋은 지표가 아닙니다. 수학적으로 동일한 콘텐츠를 비교하더라도 때때로 약 97.4 정도의 낮은 vmaf 점수를 얻을 수 있지만 vmaf 100도 시각적 투명성을 보장하지 않습니다.

이는 VMAF 점수가 이러한 특정 인코딩의 품질에 대해 거의 아무 것도 알려주지 않는다는 것을 의미합니다.

당시 투명도에 가까운 비디오에 가장 적합한 시각적 측정항목은 다음과 같은 정지 이미지 측정항목입니다.버터라우글리또는 시뮬라크라.

관련 정보