From 8963248ffb0ed253a361e5ec2c8adffdc582d76f Mon Sep 17 00:00:00 2001 From: pat-e Date: Sat, 2 Aug 2025 15:49:33 +0200 Subject: [PATCH] revert 4b79cf35d2fd471f2a440881f68aaf428c0f08ff revert Updated "frame_count" messuare for faster calculation --- anime_audio_helper.py | 31 +++++++++---------------------- 1 file changed, 9 insertions(+), 22 deletions(-) diff --git a/anime_audio_helper.py b/anime_audio_helper.py index df2c1c5..020a4f4 100644 --- a/anime_audio_helper.py +++ b/anime_audio_helper.py @@ -183,7 +183,7 @@ def convert_video(source_file_base, source_file_full, is_vfr, target_cfr_fps_for # --- SVT-AV1 ENCODING (ffmpeg pipe to SvtAv1EncApp) --- print(" - Starting AV1 encode with ffmpeg -> SvtAv1EncApp pipe (this will take a long time)...") - # Probe UTVideo file for width, height (ffprobe) and frame count (mediainfo, fallback to ffprobe) + # Probe UTVideo file for width, height, and frame count ffprobe_dim_cmd = [ "ffprobe", "-v", "error", "-select_streams", "v:0", "-show_entries", "stream=width,height", "-of", "json", ut_video_full_path @@ -193,27 +193,14 @@ def convert_video(source_file_base, source_file_full, is_vfr, target_cfr_fps_for width = ffprobe_dim['streams'][0]['width'] height = ffprobe_dim['streams'][0]['height'] - # Try to get frame count from mediainfo (faster) - mediainfo_json = run_cmd([ - "mediainfo", "--Output=JSON", "-f", ut_video_full_path - ], capture_output=True) - media_info = json.loads(mediainfo_json) - frame_count = None - for track in media_info.get("media", {}).get("track", []): - if track.get("@type") == "Video": - frame_count = int(track.get("FrameCount", 0)) - break - - # Fallback to ffprobe if mediainfo fails - if not frame_count: - ffprobe_framecount_cmd = [ - "ffprobe", "-v", "error", "-select_streams", "v:0", - "-count_frames", "-show_entries", "stream=nb_read_frames", - "-of", "json", ut_video_full_path - ] - ffprobe_framecount_json = run_cmd(ffprobe_framecount_cmd, capture_output=True) - ffprobe_framecount = json.loads(ffprobe_framecount_json) - frame_count = int(ffprobe_framecount['streams'][0].get('nb_read_frames', 0)) + ffprobe_framecount_cmd = [ + "ffprobe", "-v", "error", "-select_streams", "v:0", + "-count_frames", "-show_entries", "stream=nb_read_frames", + "-of", "json", ut_video_full_path + ] + ffprobe_framecount_json = run_cmd(ffprobe_framecount_cmd, capture_output=True) + ffprobe_framecount = json.loads(ffprobe_framecount_json) + frame_count = int(ffprobe_framecount['streams'][0].get('nb_read_frames', 0)) svtav1_param_list = [ "--input-depth", "10",