1<!doctype html> 2<html 3 lang="en" 4 style=" 5 margin: 0; 6 padding: 0; 7 min-height: 100%; 8 display: flex; 9 flex-direction: column; 10 " 11> 12 <head> 13 <meta charset="utf-8" /> 14 <meta 15 name="viewport" 16 content="width=device-width, initial-scale=1, shrink-to-fit=no" 17 /> 18 <meta property="og:title" content="Gradio" /> 19 <meta property="og:type" content="website" /> 20 <meta property="og:url" content="{url}" /> 21 <meta property="og:description" content="Click to try out the app!" /> 22 <meta 23 property="og:image" 24 content="https://raw.githubusercontent.com/gradio-app/gradio/main/js/_website/src/lib/assets/img/header-image.jpg" 25 /> 26 <meta name="twitter:card" content="summary_large_image" /> 27 <meta name="twitter:creator" content="@Gradio" /> 28 <meta name="twitter:title" content="Gradio" /> 29 <meta name="twitter:description" content="Click to try out the app!" /> 30 <meta 31 name="twitter:image" 32 content="https://raw.githubusercontent.com/gradio-app/gradio/main/js/_website/src/lib/assets/img/header-image.jpg" 33 /> 34 35 <style> 36 :root { 37 --bg: white; 38 --col: #27272a; 39 --bg-dark: #0f0f11; 40 --col-dark: #f4f4f5; 41 } 42 43 44 body { 45 background: var(--bg); 46 color: var(--col); 47 font-family: Arial, Helvetica, sans-serif; 48 } 49 50 @media (prefers-color-scheme: dark) { 51 body { 52 background: var(--bg-dark); 53 color: var(--col-dark); 54 } 55 } 56 </style> 57 58 <meta property="og:url" content="https://gradio.app/" /> 59 <meta property="og:type" content="website" /> 60 <meta property="og:image" content="" /> 61 <meta property="og:title" content="Wan 2.2 Animate - Character Replace" /> 62 <meta 63 property="og:description" 64 content="" 65 /> 66 <meta name="twitter:card" content="summary_large_image" /> 67 <meta name="twitter:creator" content="@teamGradio" /> 68 <meta name="twitter:title" content="Wan 2.2 Animate - Character Replace" /> 69 <meta 70 name="twitter:description" 71 content="" 72 /> 73 <meta name="twitter:image" content="" /> 74 75
75<script data-gradio-mode> 76 window.__gradio_mode__ = "app"; 77 window.iFrameResizer = { 78 heightCalculationMethod: "taggedElement" 79 }; 80 window.parent?.postMessage( 81 { type: "SET_SCROLLING", enabled: false }, 82 "*" 83 ); 84 </script>
84 85 86
86<script>window.gradio_config = {"version":"5.43.1","api_prefix":"/gradio_api","mode":"blocks","app_id":10923149803417113,"dev_mode":false,"vibe_mode":false,"analytics_enabled":true,"components":[{"id":1,"type":"markdown","props":{"value":"# Wan 2.2 Animate - Character Replace\nUpload a **reference image** (the character to insert) and a **source video**. The pipeline detects the pose, face and body mask in the video and re-renders it with the reference character using Wan 2.2 Animate.","show_label":false,"rtl":false,"latex_delimiters":[{"left":"$$","right":"$$","display":true}],"visible":true,"elem_classes":[],"preserved_by_key":["value"],"sanitize_html":true,"line_breaks":false,"header_links":false,"show_copy_button":false,"container":false,"padding":false,"name":"markdown","_selectable":false},"skip_api":false,"component_class_id":"927e99ba5dda4bcd0dfe596d4d0cecdc2e0b41e7e95071a05f96ae3971390ed6","key":null,"api_info":{"type":"string"},"api_info_as_input":{"type":"string"},"api_info_as_output":{"type":"string"},"example_inputs":"# Hello!"},{"id":2,"type":"row","props":{"variant":"default","visible":true,"equal_height":false,"show_progress":false,"preserved_by_key":[],"name":"row"},"skip_api":true,"component_class_id":"724216f2707d8e99d1bf5993a957b41df582b9f858086784b9e93dca5b08e3ce","key":null},{"id":3,"type":"column","props":{"scale":1,"min_width":320,"variant":"default","visible":true,"show_progress":false,"preserved_by_key":[],"name":"column"},"skip_api":true,"component_class_id":"2936b1d11eae2288921900031596f1dda70bc86ea3912baac685b76d520ed450","key":null},{"id":4,"type":"image","props":{"streamable":false,"format":"webp","image_mode":"RGB","sources":["upload","webcam","clipboard"],"type":"filepath","label":"Reference Image (character)","show_label":true,"show_download_button":true,"container":true,"min_width":160,"visible":true,"streaming":false,"elem_classes":[],"preserved_by_key":["value"],"webcam_options":{"mirror":true,"constraints":null},"show_share_button":true,"show_fullscreen_button":true,"name":"image","_selectable":false},"skip_api":false,"component_class_id":"351d056ca75314330d88d8aebe3aa725e7106c6eb3286a94e6de3d0fc805f246","key":null,"api_info":{"properties":{"path":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Path to a local file","title":"Path"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Publicly available url or base64 encoded image","title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Size of image in bytes","title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Original filename","title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"mime type of image","title":"Mime Type"},"is_stream":{"default":false,"description":"Can always be set to False","title":"Is Stream","type":"boolean"},"meta":{"additionalProperties":true,"default":{"_type":"gradio.FileData"},"title":"Meta","type":"object"}},"title":"ImageData","type":"object","additional_description":"For input, either path or url must be provided. For output, path is always provided."},"api_info_as_input":{"properties":{"path":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Path to a local file","title":"Path"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Publicly available url or base64 encoded image","title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Size of image in bytes","title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Original filename","title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"mime type of image","title":"Mime Type"},"is_stream":{"default":false,"description":"Can always be set to False","title":"Is Stream","type":"boolean"},"meta":{"additionalProperties":true,"default":{"_type":"gradio.FileData"},"title":"Meta","type":"object"}},"title":"ImageData","type":"object","additional_description":"For input, either path or url must be provided. For output, path is always provided."},"api_info_as_output":{"properties":{"path":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Path to a local file","title":"Path"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Publicly available url or base64 encoded image","t
86itle":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Size of image in bytes","title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Original filename","title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"mime type of image","title":"Mime Type"},"is_stream":{"default":false,"description":"Can always be set to False","title":"Is Stream","type":"boolean"},"meta":{"additionalProperties":true,"default":{"_type":"gradio.FileData"},"title":"Meta","type":"object"}},"title":"ImageData","type":"object","additional_description":"For input, either path or url must be provided. For output, path is always provided."},"example_inputs":{"path":"https://raw.githubusercontent.com/gradio-app/gradio/main/test/test_files/bus.png","meta":{"_type":"gradio.FileData"},"orig_name":"bus.png","url":"https://raw.githubusercontent.com/gradio-app/gradio/main/test/test_files/bus.png"}},{"id":5,"type":"row","props":{"variant":"default","visible":true,"equal_height":false,"show_progress":false,"preserved_by_key":[],"name":"row"},"skip_api":true,"component_class_id":"724216f2707d8e99d1bf5993a957b41df582b9f858086784b9e93dca5b08e3ce","key":null},{"id":6,"type":"number","props":{"value":480,"label":"Generation Width","show_label":true,"container":true,"min_width":160,"visible":true,"elem_classes":[],"preserved_by_key":["value"],"precision":0,"step":16,"name":"number","_selectable":false},"skip_api":false,"component_class_id":"f96fbf30da8a3ba918a6d7bbc104f25cf82ed1b6e7da4fc2d86d810f99a2d1bf","key":null,"api_info":{"type":"integer"},"api_info_as_input":{"type":"integer"},"api_info_as_output":{"type":"integer"},"example_inputs":3},{"id":7,"type":"number","props":{"value":832,"label":"Generation Height","show_label":true,"container":true,"min_width":160,"visible":true,"elem_classes":[],"preserved_by_key":["value"],"precision":0,"step":16,"name":"number","_selectable":false},"skip_api":false,"component_class_id":"f96fbf30da8a3ba918a6d7bbc104f25cf82ed1b6e7da4fc2d86d810f99a2d1bf","key":null,"api_info":{"type":"integer"},"api_info_as_input":{"type":"integer"},"api_info_as_output":{"type":"integer"},"example_inputs":3},{"id":8,"type":"form","props":{"scale":2,"min_width":320,"preserved_by_key":[],"name":"form"},"skip_api":true,"component_class_id":"ed5cd51f569f3a7624b1709c4e7e50a5a608037f5fb82307671a5cec77e36b71","key":null},{"id":9,"type":"video","props":{"sources":["upload","webcam"],"label":"Source Video","show_label":true,"container":true,"min_width":160,"visible":true,"elem_classes":[],"preserved_by_key":["value"],"webcam_options":{"mirror":true,"constraints":null},"include_audio":true,"autoplay":false,"show_share_button":true,"loop":false,"streaming":false,"name":"video","_selectable":false},"skip_api":false,"component_class_id":"29866c8f4e5d4d9b59025f7fa2835d40d790d1f8730776b01129bfc9c7f6741d","key":null,"api_info":{"$defs":{"FileData":{"description":"The FileData class is a subclass of the GradioModel class that represents a file object within a Gradio interface. It is used to store file data and metadata when a file is uploaded.\n\nAttributes:\n path: The server file path where the file is stored.\n url: The normalized server URL pointing to the file.\n size: The size of the file in bytes.\n orig_name: The original filename before upload.\n mime_type: The MIME type of the file.\n is_stream: Indicates whether the file is a stream.\n meta: Additional metadata used internally (should not be changed).","properties":{"path":{"title":"Path","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Mime Type"},"is_stream":{"default":false,"title":"Is Stream","type":"boolean"},"meta":{"$ref":"#/$defs/FileDataMeta"}},"required":["path"],"title":"FileData","type":"object"},"FileDataMeta":{"properties":{"_type":{"const":"gradio.FileData","title":"Type","type":"string"}},"required":["_type"],"title":"FileDataMeta","type":"object"}},"properties":{"video":{"$ref":"#/$defs/FileData"},"subtitles":{"anyOf":[{"$ref":"#/$defs/FileData"},{"type":"null"}],"default":null}},"required":["video"],"title":"VideoData","type":"object","additional_description":null},"api_info_as_input":{"$defs":{"FileData":{"description":"The FileData class is a subclass of the GradioModel class that represents a file object within a Gradio interface. It is used to store file data and metadata when a file is uploaded.\n\nAttributes:\n path: The server file path where the file is stored.\n url: The normalized server URL pointing to the file.\n size: The size of the file in bytes.\
86n orig_name: The original filename before upload.\n mime_type: The MIME type of the file.\n is_stream: Indicates whether the file is a stream.\n meta: Additional metadata used internally (should not be changed).","properties":{"path":{"title":"Path","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Mime Type"},"is_stream":{"default":false,"title":"Is Stream","type":"boolean"},"meta":{"$ref":"#/$defs/FileDataMeta"}},"required":["path"],"title":"FileData","type":"object"},"FileDataMeta":{"properties":{"_type":{"const":"gradio.FileData","title":"Type","type":"string"}},"required":["_type"],"title":"FileDataMeta","type":"object"}},"properties":{"video":{"$ref":"#/$defs/FileData"},"subtitles":{"anyOf":[{"$ref":"#/$defs/FileData"},{"type":"null"}],"default":null}},"required":["video"],"title":"VideoData","type":"object","additional_description":null},"api_info_as_output":{"$defs":{"FileData":{"description":"The FileData class is a subclass of the GradioModel class that represents a file object within a Gradio interface. It is used to store file data and metadata when a file is uploaded.\n\nAttributes:\n path: The server file path where the file is stored.\n url: The normalized server URL pointing to the file.\n size: The size of the file in bytes.\n orig_name: The original filename before upload.\n mime_type: The MIME type of the file.\n is_stream: Indicates whether the file is a stream.\n meta: Additional metadata used internally (should not be changed).","properties":{"path":{"title":"Path","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Mime Type"},"is_stream":{"default":false,"title":"Is Stream","type":"boolean"},"meta":{"$ref":"#/$defs/FileDataMeta"}},"required":["path"],"title":"FileData","type":"object"},"FileDataMeta":{"properties":{"_type":{"const":"gradio.FileData","title":"Type","type":"string"}},"required":["_type"],"title":"FileDataMeta","type":"object"}},"properties":{"video":{"$ref":"#/$defs/FileData"},"subtitles":{"anyOf":[{"$ref":"#/$defs/FileData"},{"type":"null"}],"default":null}},"required":["video"],"title":"VideoData","type":"object","additional_description":null},"example_inputs":{"video":{"path":"https://github.com/gradio-app/gradio/raw/main/demo/video_component/files/world.mp4","meta":{"_type":"gradio.FileData"},"orig_name":"world.mp4","url":"https://github.com/gradio-app/gradio/raw/main/demo/video_component/files/world.mp4"}}},{"id":10,"type":"row","props":{"variant":"default","visible":true,"equal_height":false,"show_progress":false,"preserved_by_key":[],"name":"row"},"skip_api":true,"component_class_id":"724216f2707d8e99d1bf5993a957b41df582b9f858086784b9e93dca5b08e3ce","key":null},{"id":11,"type":"number","props":{"value":480,"label":"Video Load Width","show_label":true,"container":true,"min_width":160,"visible":true,"elem_classes":[],"preserved_by_key":["value"],"precision":0,"step":16,"name":"number","_selectable":false},"skip_api":false,"component_class_id":"f96fbf30da8a3ba918a6d7bbc104f25cf82ed1b6e7da4fc2d86d810f99a2d1bf","key":null,"api_info":{"type":"integer"},"api_info_as_input":{"type":"integer"},"api_info_as_output":{"type":"integer"},"example_inputs":3},{"id":12,"type":"number","props":{"value":832,"label":"Video Load Height","show_label":true,"container":true,"min_width":160,"visible":true,"elem_classes":[],"preserved_by_key":["value"],"precision":0,"step":16,"name":"number","_selectable":false},"skip_api":false,"component_class_id":"f96fbf30da8a3ba918a6d7bbc104f25cf82ed1b6e7da4fc2d86d810f99a2d1bf","key":null,"api_info":{"type":"integer"},"api_info_as_input":{"type":"integer"},"api_info_as_output":{"type":"integer"},"example_inputs":3},{"id":13,"type":"form","props":{"scale":2,"min_width":320,"preserved_by_key":[],"name":"form"},"skip_api":true,"component_class_id":"ed5cd51f569f3a7624b1709c4e7e50a5a608037f5fb82307671a5cec77e36b71","key":null}
86,{"id":14,"type":"number","props":{"value":0,"label":"Frame Load Cap","info":"Max number of frames read from the source video. 0 = load all frames.","show_label":true,"container":true,"min_width":160,"visible":true,"elem_classes":[],"preserved_by_key":["value"],"precision":0,"step":1,"name":"number","_selectable":false},"skip_api":false,"component_class_id":"f96fbf30da8a3ba918a6d7bbc104f25cf82ed1b6e7da4fc2d86d810f99a2d1bf","key":null,"api_info":{"type":"integer"},"api_info_as_input":{"type":"integer"},"api_info_as_output":{"type":"integer"},"example_inputs":3},{"id":15,"type":"textbox","props":{"value":"the person is dancing","type":"text","lines":2,"label":"Guiding Prompt","info":"Describes the action/scene for the generated video.","show_label":true,"container":true,"min_width":160,"visible":true,"autofocus":false,"autoscroll":true,"elem_classes":[],"preserved_by_key":["value"],"rtl":false,"show_copy_button":false,"submit_btn":false,"stop_btn":false,"name":"textbox","_selectable":false},"skip_api":false,"component_class_id":"0ad8e7dd48970890cef0fb44101b5b9b5a57422fa28062cfa5b0de927e78f3dc","key":null,"api_info":{"type":"string"},"api_info_as_input":{"type":"string"},"api_info_as_output":{"type":"string"},"example_inputs":"Hello!!"},{"id":16,"type":"accordion","props":{"label":"Advanced","open":false,"visible":true,"preserved_by_key":[],"name":"accordion"},"skip_api":true,"component_class_id":"f7ca9b901f75c307c1f5ddd33f789d906d98b7f72e2885efbfaa76243b6822af","key":null},{"id":17,"type":"textbox","props":{"value":"è²è°è³ä¸½ï¼è¿æï¼éæï¼ç»è模ç³ä¸æ¸
ï¼åå¹ï¼é£æ ¼ï¼ä½åï¼ç»ä½ï¼ç»é¢ï¼éæ¢ï¼æ´ä½åç°ï¼æå·®è´¨éï¼ä½è´¨éï¼JPEGå缩æ®çï¼ä¸éçï¼æ®ç¼ºçï¼å¤ä½çææï¼ç»å¾ä¸å¥½çæé¨ï¼ç»å¾ä¸å¥½çè¸é¨ï¼ç¸å½¢çï¼æ¯å®¹çï¼å½¢æç¸å½¢çè¢ä½ï¼ææèåï¼éæ¢ä¸å¨çç»é¢ï¼æä¹±çèæ¯ï¼ä¸æ¡è
¿ï¼èæ¯äººå¾å¤ï¼åçèµ°","type":"text","lines":3,"label":"Negative Prompt","show_label":true,"container":true,"min_width":160,"visible":true,"autofocus":false,"autoscroll":true,"elem_classes":[],"preserved_by_key":["value"],"rtl":false,"show_copy_button":false,"submit_btn":false,"stop_btn":false,"name":"textbox","_selectable":false},"skip_api":false,"component_class_id":"0ad8e7dd48970890cef0fb44101b5b9b5a57422fa28062cfa5b0de927e78f3dc","key":null,"api_info":{"type":"string"},"api_info_as_input":{"type":"string"},"api_info_as_output":{"type":"string"},"example_inputs":"Hello!!"},{"id":18,"type":"form","props":{"scale":0,"min_width":0,"preserved_by_key":[],"name":"form"},"skip_api":true,"component_class_id":"ed5cd51f569f3a7624b1709c4e7e50a5a608037f5fb82307671a5cec77e36b71","key":null},{"id":19,"type":"button","props":{"value":"Generate","variant":"primary","size":"lg","visible":true,"interactive":true,"elem_classes":[],"preserved_by_key":["value"],"name":"button","_selectable":false},"skip_api":true,"component_class_id":"51bd485a5354bcd93c72c66428b42770f71e60d8f9bb8345f6ce8a6787cd1c8f","key":null},{"id":20,"type":"form","props":{"scale":0,"min_width":0,"preserved_by_key":[],"name":"form"},"skip_api":true,"component_class_id":"ed5cd51f569f3a7624b1709c4e7e50a5a608037f5fb82307671a5cec77e36b71","key":null},{"id":21,"type":"column","props":{"scale":1,"min_width":320,"variant":"default","visible":true,"show_progress":false,"preserved_by_key":[],"name":"column"},"skip_api":true,"component_class_id":"2936b1d11eae2288921900031596f1dda70bc86ea3912baac685b76d520ed450","key":null},{"id":22,"type":"video","props":{"sources":["upload","webcam"],"label":"Result","show_label":true,"container":true,"min_width":160,"visible":true,"elem_classes":[],"preserved_by_key":["value"],"webcam_options":{"mirror":true,"constraints":null},"include_audio":true,"autoplay":false,"show_share_button":true,"loop":false,"streaming":false,"name":"video","_selectable":false},"skip_api":false,"component_class_id":"29866c8f4e5d4d9b59025f7fa2835d40d790d1f8730776b01129bfc9c7f6741d","key":null,"api_info":{"$defs":{"FileData":{"description":"The FileData class is a subclass of the GradioModel class that represents a file object within a Gradio interface. It is used to store file data and metadata when a file is uploaded.\n\nAttributes:\n path: The server file path where the file is stored.\n url: The normalized server URL pointing to the file.\n size: The size of the file in bytes.\
86n orig_name: The original filename before upload.\n mime_type: The MIME type of the file.\n is_stream: Indicates whether the file is a stream.\n meta: Additional metadata used internally (should not be changed).","properties":{"path":{"title":"Path","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Mime Type"},"is_stream":{"default":false,"title":"Is Stream","type":"boolean"},"meta":{"$ref":"#/$defs/FileDataMeta"}},"required":["path"],"title":"FileData","type":"object"},"FileDataMeta":{"properties":{"_type":{"const":"gradio.FileData","title":"Type","type":"string"}},"required":["_type"],"title":"FileDataMeta","type":"object"}},"properties":{"video":{"$ref":"#/$defs/FileData"},"subtitles":{"anyOf":[{"$ref":"#/$defs/FileData"},{"type":"null"}],"default":null}},"required":["video"],"title":"VideoData","type":"object","additional_description":null},"api_info_as_input":{"$defs":{"FileData":{"description":"The FileData class is a subclass of the GradioModel class that represents a file object within a Gradio interface. It is used to store file data and metadata when a file is uploaded.\n\nAttributes:\n path: The server file path where the file is stored.\n url: The normalized server URL pointing to the file.\n size: The size of the file in bytes.\n orig_name: The original filename before upload.\n mime_type: The MIME type of the file.\n is_stream: Indicates whether the file is a stream.\n meta: Additional metadata used internally (should not be changed).","properties":{"path":{"title":"Path","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Mime Type"},"is_stream":{"default":false,"title":"Is Stream","type":"boolean"},"meta":{"$ref":"#/$defs/FileDataMeta"}},"required":["path"],"title":"FileData","type":"object"},"FileDataMeta":{"properties":{"_type":{"const":"gradio.FileData","title":"Type","type":"string"}},"required":["_type"],"title":"FileDataMeta","type":"object"}},"properties":{"video":{"$ref":"#/$defs/FileData"},"subtitles":{"anyOf":[{"$ref":"#/$defs/FileData"},{"type":"null"}],"default":null}},"required":["video"],"title":"VideoData","type":"object","additional_description":null},"api_info_as_output":{"$defs":{"FileData":{"description":"The FileData class is a subclass of the GradioModel class that represents a file object within a Gradio interface. It is used to store file data and metadata when a file is uploaded.\n\nAttributes:\n path: The server file path where the file is stored.\n url: The normalized server URL pointing to the file.\n size: The size of the file in bytes.\n orig_name: The original filename before upload.\n mime_type: The MIME type of the file.\n is_stream: Indicates whether the file is a stream.\n meta: Additional metadata used internally (should not be changed).","properties":{"path":{"title":"Path","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Mime Type"},"is_stream":{"default":false,"title":"Is Stream","type":"boolean"},"meta":{"$ref":"#/$defs/FileDataMeta"}},"required":["path"],"title":"FileData","type":"object"},"FileDataMeta":{"properties":{"_type":{"const":"gradio.FileData","title":"Type","type":"string"}},"required":["_type"],"title":"FileDataMeta","type":"object"}},"properties":{"video":{"$ref":"#/$defs/FileData"},"subtitles":{"anyOf":[{"$ref":"#/$defs/FileData"},{"type":"null"}],"default":null}},"required":["video"],"title":"VideoData","type":"object","additional_description":null},"example_inputs":{"video":{"path":"https://github.com/gradio-app/gradio/raw/main/demo/video_component/files/world.mp4","meta":{"_type":"gradio.FileData"},"orig_name":"world.mp4","url":"https://github.com/gradio-app/gradio/raw/main/demo/video_component/files/world.mp4"}}}],"css":"","connect_heartbeat":false,"js":"","head":"","title":"Wan 2.2 Animate - Character Replace","space_id":"Iceyy4400/wan22-animate-character-replace","enable_queue":true,"show_error":false,"show_api":true,"is_colab":false,"max_file_size":null,"stylesheets":["https://fonts.googleapis.com/css2?family=Source+Sans+Pro:wght@400;600\u0026display=swap"],"theme":"default","protocol":"sse_v3","body_css":{"body_background_fill":"white","body_text_color":"#27272a","body_background_fill_dark":"#0f0f11","body_text_color_dark":"#f4f4f5"},"fill_height":false,"fill_width":false,"theme_hash":"dcc5ba6daa59190cd89158b9dcd638cb327c8d2793466af78361ece68e126118","pwa":true,"pages":[["","Home"]],"page":{""
86:{"layout":{"id":0,"children":[{"id":1},{"id":2,"children":[{"id":3,"children":[{"id":4},{"id":5,"children":[{"id":8,"children":[{"id":6},{"id":7}]}]},{"id":9},{"id":10,"children":[{"id":13,"children":[{"id":11},{"id":12}]}]},{"id":20,"children":[{"id":14},{"id":15}]},{"id":16,"children":[{"id":18,"children":[{"id":17}]}]},{"id":19}]},{"id":21,"children":[{"id":22}]}]}]},"components":[1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22],"dependencies":[0]}},"mcp_server":false,"i18n_translations":null,"dependencies":[{"id":0,"targets":[[19,"click"]],"inputs":[4,6,7,9,11,12,14,15,17],"outputs":[22],"backend_fn":true,"js":null,"queue":true,"api_name":"generate_video","api_description":null,"scroll_to_output":false,"show_progress":"full","show_progress_on":null,"batch":false,"max_batch_size":4,"cancels":[],"types":{"generator":false,"cancel":false},"collects_event_data":false,"trigger_after":null,"trigger_only_on_success":false,"trigger_only_on_failure":false,"trigger_mode":"once","show_api":true,"rendered_in":null,"render_id":null,"connection":"sse","time_limit":null,"stream_every":0.5,"like_user_message":false,"event_specific_args":null,"js_implementation":null}],"layout":{"id":0,"children":[{"id":1},{"id":2,"children":[{"id":3,"children":[{"id":4},{"id":5,"children":[{"id":8,"children":[{"id":6},{"id":7}]}]},{"id":9},{"id":10,"children":[{"id":13,"children":[{"id":11},{"id":12}]}]},{"id":20,"children":[{"id":14},{"id":15}]},{"id":16,"children":[{"id":18,"children":[{"id":17}]}]},{"id":19}]},{"id":21,"children":[{"id":22}]}]}]},"username":null,"deep_link_state":"none","current_page":"","root":"https://iceyy4400-wan22-animate-character-replace.hf.space"};</script>
86<script>window.gradio_api_info = {"named_endpoints":{"/generate_video":{"parameters":[{"label":"Reference Image (character)","parameter_name":"reference_image","parameter_has_default":false,"parameter_default":null,"type":{"properties":{"path":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Path to a local file","title":"Path"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Publicly available url or base64 encoded image","title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"description":"Size of image in bytes","title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"Original filename","title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"description":"mime type of image","title":"Mime Type"},"is_stream":{"default":false,"description":"Can always be set to False","title":"Is Stream","type":"boolean"},"meta":{"additionalProperties":true,"default":{"_type":"gradio.FileData"},"title":"Meta","type":"object"}},"title":"ImageData","type":"object","additional_description":"For input, either path or url must be provided. For output, path is always provided."},"python_type":{"type":"dict(path: str | None (Path to a local file), url: str | None (Publicly available url or base64 encoded image), size: int | None (Size of image in bytes), orig_name: str | None (Original filename), mime_type: str | None (mime type of image), is_stream: bool (Can always be set to False), meta: dict(str, Any))","description":"For input, either path or url must be provided. For output, path is always provided."},"component":"Image","example_input":{"path":"https://raw.githubusercontent.com/gradio-app/gradio/main/test/test_files/bus.png","meta":{"_type":"gradio.FileData"},"orig_name":"bus.png","url":"https://raw.githubusercontent.com/gradio-app/gradio/main/test/test_files/bus.png"}},{"label":"Generation Width","parameter_name":"gen_width","parameter_has_default":true,"parameter_default":480,"type":{"type":"integer"},"python_type":{"type":"int","description":""},"component":"Number","example_input":3},{"label":"Generation Height","parameter_name":"gen_height","parameter_has_default":true,"parameter_default":832,"type":{"type":"integer"},"python_type":{"type":"int","description":""},"component":"Number","example_input":3},{"label":"Source Video","parameter_name":"video","parameter_has_default":false,"parameter_default":null,"type":{"$defs":{"FileData":{"description":"The FileData class is a subclass of the GradioModel class that represents a file object within a Gradio interface. It is used to store file data and metadata when a file is uploaded.\n\nAttributes:\n path: The server file path where the file is stored.\n url: The normalized server URL pointing to the file.\n size: The size of the file in bytes.\n orig_name: The original filename before upload.\n mime_type: The MIME type of the file.\n is_stream: Indicates whether the file is a stream.\n meta: Additional metadata used internally (should not be changed).","properties":{"path":{"title":"Path","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Mime Type"},"is_stream":{"default":false,"title":"Is Stream","type":"boolean"},"meta":{"$ref":"#/$defs/FileDataMeta"}},"required":["path"],"title":"FileData","type":"object"},"FileDataMeta":{"properties":{"_type":{"const":"gradio.FileData","title":"Type","type":"string"}},"required":["_type"],"title":"FileDataMeta","type":"object"}},"properties":{"video":{"$ref":"#/$defs/FileData"},"subtitles":{"anyOf":[{"$ref":"#/$defs/FileData"},{"type":"null"}],"default":null}},"required":["video"],"title":"VideoData","type":"object","additional_description":null},"python_type":{"type":"dict(video: filepath, subtitles: filepath | None)","description":null},"component":"Video","example_input":{"video":{"path":"https://github.com/gradio-app/gradio/raw/main/demo/video_component/files/world.mp4","meta":{"_type":"gradio.FileData"},"orig_name":"world.mp4","url":"https://github.com/gradio-app/gradio/raw/main/demo/video_component/files/world.mp4"}}},{"label":"Video Load Width","parameter_name":"video_width","parameter_has_default":true,"parameter_default":480,"type":{"type":"integer"},"python_type":{"type":"int","description":""},"component":"Number","example_input":3},{"label":"Video Load Height","parameter_name":"video_height","parameter_has_default":true,"parameter_default":832,"type":{"type":"integer"},"python_type":{"type":"int","description":""},"component":"Number","example_input":3}
86,{"label":"Frame Load Cap","parameter_name":"frame_load_cap","parameter_has_default":true,"parameter_default":0,"type":{"type":"integer"},"python_type":{"type":"int","description":""},"component":"Number","example_input":3},{"label":"Guiding Prompt","parameter_name":"positive_prompt","parameter_has_default":true,"parameter_default":"the person is dancing","type":{"type":"string"},"python_type":{"type":"str","description":""},"component":"Textbox","example_input":"Hello!!"},{"label":"Negative Prompt","parameter_name":"negative_prompt","parameter_has_default":true,"parameter_default":"è²è°è³ä¸½ï¼è¿æï¼éæï¼ç»è模ç³ä¸æ¸
ï¼åå¹ï¼é£æ ¼ï¼ä½åï¼ç»ä½ï¼ç»é¢ï¼éæ¢ï¼æ´ä½åç°ï¼æå·®è´¨éï¼ä½è´¨éï¼JPEGå缩æ®çï¼ä¸éçï¼æ®ç¼ºçï¼å¤ä½çææï¼ç»å¾ä¸å¥½çæé¨ï¼ç»å¾ä¸å¥½çè¸é¨ï¼ç¸å½¢çï¼æ¯å®¹çï¼å½¢æç¸å½¢çè¢ä½ï¼ææèåï¼éæ¢ä¸å¨çç»é¢ï¼æä¹±çèæ¯ï¼ä¸æ¡è
¿ï¼èæ¯äººå¾å¤ï¼åçèµ°","type":{"type":"string"},"python_type":{"type":"str","description":""},"component":"Textbox","example_input":"Hello!!"}],"returns":[{"label":"Result","type":{"$defs":{"FileData":{"description":"The FileData class is a subclass of the GradioModel class that represents a file object within a Gradio interface. It is used to store file data and metadata when a file is uploaded.\n\nAttributes:\n path: The server file path where the file is stored.\n url: The normalized server URL pointing to the file.\n size: The size of the file in bytes.\n orig_name: The original filename before upload.\n mime_type: The MIME type of the file.\n is_stream: Indicates whether the file is a stream.\n meta: Additional metadata used internally (should not be changed).","properties":{"path":{"title":"Path","type":"string"},"url":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Url"},"size":{"anyOf":[{"type":"integer"},{"type":"null"}],"default":null,"title":"Size"},"orig_name":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Orig Name"},"mime_type":{"anyOf":[{"type":"string"},{"type":"null"}],"default":null,"title":"Mime Type"},"is_stream":{"default":false,"title":"Is Stream","type":"boolean"},"meta":{"$ref":"#/$defs/FileDataMeta"}},"required":["path"],"title":"FileData","type":"object"},"FileDataMeta":{"properties":{"_type":{"const":"gradio.FileData","title":"Type","type":"string"}},"required":["_type"],"title":"FileDataMeta","type":"object"}},"properties":{"video":{"$ref":"#/$defs/FileData"},"subtitles":{"anyOf":[{"$ref":"#/$defs/FileData"},{"type":"null"}],"default":null}},"required":["video"],"title":"VideoData","type":"object","additional_description":null},"python_type":{"type":"dict(video: filepath, subtitles: filepath | None)","description":""},"component":"Video"}],"show_api":true,"description":"Run one character-replace generation and return the output video path."}},"unnamed_endpoints":{}};</script>
86 87 88 <link rel="preconnect" href="https://fonts.googleapis.com" /> 89 <link 90 rel="preconnect" 91 href="https://fonts.gstatic.com" 92 crossorigin="anonymous" 93 /> 94
94<script 95 src="https://cdnjs.cloudflare.com/ajax/libs/iframe-resizer/4.3.1/iframeResizer.contentWindow.min.js" 96 async 97 ></script>
97 98 99 <link rel="manifest" href="/manifest.json" /> 100
100<script type="module" crossorigin src="./assets/index-D4QfqgLg.js"></script>
100 101 <link rel="stylesheet" crossorigin href="./assets/index-B2GJhIU0.css"> 102 </head> 103 104 <body 105 style=" 106 width: 100%; 107 margin: 0; 108 padding: 0; 109 display: flex; 110 flex-direction: column; 111 flex-grow: 1; 112 " 113 > 114 <gradio-app 115 control_page_title="true" 116 embed="false" 117 eager="true" 118 style="display: flex; flex-direction: column; flex-grow: 1" 119 > 120 </gradio-app> 121
121<script> 122 const ce = document.getElementsByTagName("gradio-app"); 123 124 if (ce[0]) { 125 ce[0].addEventListener("domchange", () => { 126 document.body.style.padding = "0"; 127 }); 128 document.body.style.padding = "0"; 129 } 130 </script>
130 131 </body> 132</html>
Line numbers count LF bytes from the start of the resource, as the search results do. Vendor segments are library code the classifier recognised; they are stored but not indexed. Bytes are shown as Latin1 characters, one per byte.