feat: update encoding parameters for h265 and AV1 codecs

This commit is contained in:
Rémi Heredero 2025-04-27 19:28:28 +02:00
parent 63cefacbfa
commit c9fd7c319a
Signed by: Klagarge
GPG Key ID: 735B36B074A65F0F

View File

@ -16,10 +16,11 @@ def get_duration(file_path):
def encode(input_file, codec, remove_source=False, save_log=False):
if codec == "x265":
ffmpeg_codec = "libx265"
crf = 26
ffmpeg_codec = "hevc_nvenc"
cq = 32
folder = "h265"
extra_params = ["-crf", str(crf)]
extra_params = [
]
elif codec == "x265-amd":
ffmpeg_codec = "hevc_amf"
@ -30,7 +31,9 @@ def encode(input_file, codec, remove_source=False, save_log=False):
ffmpeg_codec = "av1_nvenc"
cq = 32
folder = "av1"
extra_params = ["-pix_fmt", "yuv420p", "-preset", "p4", "-cq", str(cq), "-rc", "vbr", "-b:v", "0"]
extra_params = [
"-pix_fmt", "yuv420p",
]
else:
raise ValueError(f"Unsupported codec: {codec}")
@ -57,8 +60,11 @@ def encode(input_file, codec, remove_source=False, save_log=False):
"ffmpeg",
"-i", input_file,
"-map", "0",
"-cq", str(cq),
] + extra_params + [
"-c:v", ffmpeg_codec,
"-rc", "vbr",
"-b:v", "0",
"-c:a", "copy",
"-c:s", "copy",
"-y", output_file