修复url字典错误
This commit is contained in:
parent
67b78ec361
commit
b84ade2b65
27
Qwen_app.py
27
Qwen_app.py
|
|
@ -332,19 +332,30 @@ def get_vid_dict(vid_dir: str, obj_dict: dict, video_url_file: str, use_url_cach
|
|||
if os.path.exists(video_url_file):
|
||||
try:
|
||||
with open(video_url_file, "r", encoding="utf-8") as f:
|
||||
vid_dict = json.load(f)
|
||||
loaded_data = json.load(f)
|
||||
# 验证数据结构:确保值是字典且包含必要键
|
||||
for track_id, value in loaded_data.items():
|
||||
if isinstance(value, dict) and "vid_path" in value and "vid_url" in value:
|
||||
vid_dict[track_id] = value
|
||||
else:
|
||||
print(f"跳过无效的视频信息: {track_id} -> {value}")
|
||||
except Exception as e:
|
||||
print(f"读取URL文件失败: {e}")
|
||||
|
||||
# 初始化未存在的track_id
|
||||
for track_id in obj_dict.keys():
|
||||
if track_id in vid_dict:
|
||||
continue
|
||||
vid_path = f"{vid_dir}/obj_{int(track_id):03d}.mp4"
|
||||
vid_dict[track_id] = {"vid_path": vid_path, "vid_url": None}
|
||||
try:
|
||||
vid_path = f"{vid_dir}/obj_{int(track_id):03d}.mp4"
|
||||
vid_dict[track_id] = {"vid_path": vid_path, "vid_url": None}
|
||||
except (ValueError, TypeError):
|
||||
print(f"无效的track_id: {track_id},跳过")
|
||||
|
||||
# 找到未上传的视频
|
||||
unuploaded_vids = []
|
||||
for track_id, vid_info in vid_dict.items():
|
||||
if vid_info["vid_url"] is None:
|
||||
if isinstance(vid_info, dict) and vid_info.get("vid_url") is None:
|
||||
unuploaded_vids.append(vid_info["vid_path"])
|
||||
|
||||
# 上传未上传的视频并获取 URL
|
||||
|
|
@ -355,9 +366,11 @@ def get_vid_dict(vid_dir: str, obj_dict: dict, video_url_file: str, use_url_cach
|
|||
|
||||
# 更新视频URL
|
||||
for track_id, vid_info in vid_dict.items():
|
||||
if vid_info["vid_url"] is None:
|
||||
idx = unuploaded_vids.index(vid_info["vid_path"])
|
||||
vid_info["vid_url"] = uploaded_urls[idx]
|
||||
if isinstance(vid_info, dict) and vid_info.get("vid_url") is None:
|
||||
if vid_info["vid_path"] in unuploaded_vids:
|
||||
idx = unuploaded_vids.index(vid_info["vid_path"])
|
||||
if idx < len(uploaded_urls):
|
||||
vid_info["vid_url"] = uploaded_urls[idx]
|
||||
|
||||
# 保存字典为 JSON 文件
|
||||
with open(video_url_file, "w", encoding="utf-8") as f:
|
||||
|
|
|
|||
Loading…
Reference in New Issue