ffmpeg/avcov를 사용하여 임의의 비디오 파일을 녹화하기 위한 최적의 매개변수를 자동으로 찾습니다.

ffmpeg/avcov를 사용하여 임의의 비디오 파일을 녹화하기 위한 최적의 매개변수를 자동으로 찾습니다.

허용 가능한(주관적인) 품질 손실로 파일 크기를 줄이기 위해 다양한 소스(youtube, twitch, tiktok 등)의 비디오를 다시 압축하는 주요 목표로 ffmpeg를 사용하여 비디오를 다시 인코딩했습니다. 원본 파일의 품질 설정에 대해 아는 바가 거의 없다는 점을 감안할 때(그리고 이러한 품질 설정은 어쨌든 시간이 지남에 따라 변경될 것입니다) 하나의 파일에 대한 프로세스는 매우 시간이 많이 걸립니다. 매번 프로세스는 다음과 같습니다.

  1. 비디오 압축
  2. 압축된 블록을 원본 블록과 비교
  3. 녹음 상태가 얼마나 나쁜지에 따라 crf를 위 또는 아래로 조정합니다.
  4. 주어진 파일에 대한 이상적인 crf 값을 찾을 때까지 이것을 반복합니다. 그렇지 않으면 피곤해져서 포기합니다.

이는 본질적으로 "시행 착오" 접근 방식이며 누군가가 최상의 설정을 찾는 방법을 물을 때마다 유일한 대답입니다. 물론 시행착오가 가능하지만 각 루프 이후에는 상호 작용이 필요합니다. ffmpeg가 특정 인코딩(PSNR 또는 VMAF)에 대한 손실도 계산할 수 있다면 프로세스를 자동화하는 프런트엔드나 래퍼 스크립트가 있습니까?

또 다른 접근 방식은 스크립트나 프런트 엔드를 사용하여 다시 인코딩된 "밀착 시트"를 생성하는 것입니다. 이는 기본적으로 일련의 CRF 값에 대해 원본 파일의 작은 부분을 반복적으로 다시 인코딩합니다. 그런 것이 이미 존재하나요? 비디오 미리보기를 생성하는 방법에 대한 연구로 인해 품질 테스트 클립이 아닌 YouTube와 같은 미리보기 클립을 만드는 다양한 방법이 탄생했습니다.

관련 정보