Video-Depth-Anything / run_api.py
svjack's picture
Upload run_api.py
d9c91a1 verified
import os
from gradio_client import Client, handle_file
from shutil import copy2
from tqdm import tqdm
# 定义输入视频目录和输出目录
input_dir = "../Bakemonogatari_Videos_Splited"
output_dir = "../Bakemonogatari_Videos_Splited_Depth"
# 如果输出目录不存在,则创建它
if not os.path.exists(output_dir):
os.makedirs(output_dir)
# 遍历输入目录中的所有 .mp4 文件
for filename in tqdm(os.listdir(input_dir)):
print(filename)
#break
if filename.endswith(".mp4"):
video_path = os.path.join(input_dir, filename)
# 初始化 Gradio 客户端
client = Client("http://127.0.0.1:7860")
# 调用 API
result = client.predict(
input_video={"video": handle_file(video_path)},
max_len=500,
target_fps=15,
max_res=1280,
grayscale=False,
api_name="/infer_video_depth"
)
# 获取处理后的视频路径
processed_video_path = result[1]["video"]
# 将处理后的视频拷贝到输出目录
output_video_path = os.path.join(output_dir, os.path.basename(processed_video_path))
copy2(processed_video_path, output_video_path)
print(f"Processed and copied {filename} to {output_video_path}")