Если есть видео в формате h.264, и я использую -crf 17, иногда я получаю более низкий битрейт, но, что странно, большую часть времени я получаю более высокие.
Я пытаюсь получить этот параметр, потому что я думаю, что некоторые мои видео имеют более высокий битрейт, чем необходимо, и я не нашел способа (если это вообще возможно) определить, что является наиболее подходящим способом сделать это и, возможно, воспроизвести с CRF мне совсем не поможет, но мне интересно, что на самом деле происходит, когда вы, например, не кодируете с помощью libx264, а фактически используете значения CRF в файле x264?
При декодировании файла декодер пытается воссоздать исходный материал с информацией, содержащейся в файле. Но это не может быть на 100% точным представлением, поэтому декодер создает новые пиксели, которые являются оценками того, что было включено в источник.
Когда вы кодируете во второй раз с помощью CRF 17, кодировщик не знает, что эти новые пиксели были сгенерированы декодером и не обязательно соответствуют исходному материалу. Но кодировщик по-прежнему выполняет свою работу и пытается точно закодировать эти новые значения.
Таким образом, он тратит биты на кодирование пикселей, которые были отброшены и воссозданы при первом кодировании, что делает файл больше.
Гьян
А. Ньюб