Files
HuangYuChuh-ComfyUI-LLMs-To…/py/VideoFileUploader.py
T
2025-02-14 19:40:23 +08:00

44 lines
1.3 KiB
Python

import folder_paths
import nodes
import os
from typing import Tuple
class VideoFileUploader:
"""
Custom node for uploading video files to Gemini API
"""
@classmethod
def INPUT_TYPES(cls):
return {
"required": {
"video_path": ("STRING", {"default": "", "label": "Video File Path"}),
"api_key": ("STRING", {"default": "", "label": "Gemini API Key"}), # 模拟API Key输入
}
}
RETURN_TYPES = ("STRING",)
RETURN_NAMES = ("video_url",)
FUNCTION = "upload_video"
CATEGORY = "DeepSeek_Toolkit"
def upload_video(self, video_path: str, api_key: str) -> Tuple[str]:
"""
Uploads a video file to the Gemini API using the File API.
"""
# 模拟文件上传
if not os.path.exists(video_path):
raise FileNotFoundError(f"Video file not found: {video_path}")
# 模拟上传过程
print(f"[INFO] 上传视频文件: {video_path}")
# 模拟生成视频URL
video_url = f"gemini://file/{os.path.basename(video_path)}" # 模拟视频URL
print(f"[INFO] 视频上传完成,URL: {video_url}")
return (video_url,)
# 注册节点
NODE_CLASS_MAPPINGS = {"VideoFileUploader": VideoFileUploader}
NODE_DISPLAY_NAME_MAPPINGS = {"VideoFileUploader": "Video File Uploader"}