Update app.py
Browse files
app.py
CHANGED
|
@@ -772,7 +772,7 @@ def report(run, outcome, category="", detail=""):
|
|
| 772 |
|
| 773 |
# ---------- status panel ----------
|
| 774 |
|
| 775 |
-
STEPS = ["Uploading", "Detecting face", "Editing expression", "
|
| 776 |
|
| 777 |
|
| 778 |
def status_html(state, title, step=0, note=""):
|
|
@@ -863,7 +863,7 @@ def run(video, mood, excited, angry, updates, preset_name, profile: gr.OAuthProf
|
|
| 863 |
for msg in poll(ctx, "get-status", "request_id", request_id, "Editing expression"):
|
| 864 |
yield None, status_html("working", msg, 3, "Keep this tab open. Time varies with the clip and service load.")
|
| 865 |
|
| 866 |
-
yield None, status_html("working", "
|
| 867 |
raw = download(ctx, request_id, workdir)
|
| 868 |
ctx.stage = "watermark"
|
| 869 |
result = watermark(raw, workdir, ctx)
|
|
@@ -1259,7 +1259,7 @@ body.dr-sliding, body.dr-sliding * { cursor: grabbing !important; user-select: n
|
|
| 1259 |
/* generate */
|
| 1260 |
#dr-go { height: 50px; font-size: 16px !important; font-weight: 600 !important; border-radius: 10px !important;
|
| 1261 |
box-shadow: none !important; transition: background .15s ease; }
|
| 1262 |
-
.gradio-container .dr-fine { font-size:
|
| 1263 |
.gradio-container .dr-fine a { color: var(--dr-faint) !important; text-decoration: underline !important; padding: 0 !important; margin: 0 !important; display: inline !important; }
|
| 1264 |
.gradio-container .dr-trim { border: 0 !important; background: transparent !important; padding: 0 !important; box-shadow: none !important; }
|
| 1265 |
.gradio-container .dr-trim-note { font-size: 13px !important; color: var(--dr-muted) !important; line-height: 1.5 !important;
|
|
@@ -1645,11 +1645,11 @@ with gr.Blocks(title=PAGE_TITLE) as demo:
|
|
| 1645 |
<header class="dr-hero">
|
| 1646 |
<div class="dr-kicker">Free demo and API</div>
|
| 1647 |
<h1>DRAMA AI expression editor<br><span class="dr-accent">for videos</span></h1>
|
| 1648 |
-
<div class="dr-sub">Change facial expressions in any
|
| 1649 |
-
|
| 1650 |
<div class="dr-meta"><span>Free demo and API</span><span>Up to {int(MAX_SECONDS)} seconds per video</span>
|
| 1651 |
<span>{PER_USER_DAILY} generations per day</span></div>
|
| 1652 |
-
<div class="dr-disclose">Demo outputs are watermarked.
|
| 1653 |
<div class="dr-hero-actions">
|
| 1654 |
<a class="dr-btn dr-btn-primary" href="#dr-main">Try the demo</a>
|
| 1655 |
<a class="dr-btn" href="{API_QUICKSTART}" target="_blank">Use the API</a>
|
|
@@ -1748,7 +1748,7 @@ with gr.Blocks(title=PAGE_TITLE) as demo:
|
|
| 1748 |
gr.HTML(f"""
|
| 1749 |
<footer class="dr-foot">{logo_html("sm")}
|
| 1750 |
<nav><a href="{CARD}" target="_blank">Model documentation</a><a href="{API_QUICKSTART}" target="_blank">Free API docs</a><a href="{SITE}" target="_blank">DRAMA Studio</a><a href="{PRIVACY}" target="_blank">Privacy</a><a href="{TERMS}" target="_blank">Terms</a><a href="{SUPPORT}" target="_blank">Support</a></nav>
|
| 1751 |
-
<div class="dr-foot-copy">DRAMA by SyncMonster is an AI facial expression editor for
|
| 1752 |
use the API to change visible expressions in existing footage.<br>© 2026 NeuralGarage Pvt. Ltd., Bengaluru.
|
| 1753 |
SyncMonster and DRAMA are products of NeuralGarage.</div>
|
| 1754 |
</footer>""")
|
|
|
|
| 772 |
|
| 773 |
# ---------- status panel ----------
|
| 774 |
|
| 775 |
+
STEPS = ["Uploading", "Detecting face", "Editing expression", "Downloading"]
|
| 776 |
|
| 777 |
|
| 778 |
def status_html(state, title, step=0, note=""):
|
|
|
|
| 863 |
for msg in poll(ctx, "get-status", "request_id", request_id, "Editing expression"):
|
| 864 |
yield None, status_html("working", msg, 3, "Keep this tab open. Time varies with the clip and service load.")
|
| 865 |
|
| 866 |
+
yield None, status_html("working", "Downloading…", 4)
|
| 867 |
raw = download(ctx, request_id, workdir)
|
| 868 |
ctx.stage = "watermark"
|
| 869 |
result = watermark(raw, workdir, ctx)
|
|
|
|
| 1259 |
/* generate */
|
| 1260 |
#dr-go { height: 50px; font-size: 16px !important; font-weight: 600 !important; border-radius: 10px !important;
|
| 1261 |
box-shadow: none !important; transition: background .15s ease; }
|
| 1262 |
+
.gradio-container .dr-fine { font-size: 11px !important; color: var(--dr-faint) !important; text-align: center !important; margin: 0 !important; }
|
| 1263 |
.gradio-container .dr-fine a { color: var(--dr-faint) !important; text-decoration: underline !important; padding: 0 !important; margin: 0 !important; display: inline !important; }
|
| 1264 |
.gradio-container .dr-trim { border: 0 !important; background: transparent !important; padding: 0 !important; box-shadow: none !important; }
|
| 1265 |
.gradio-container .dr-trim-note { font-size: 13px !important; color: var(--dr-muted) !important; line-height: 1.5 !important;
|
|
|
|
| 1645 |
<header class="dr-hero">
|
| 1646 |
<div class="dr-kicker">Free demo and API</div>
|
| 1647 |
<h1>DRAMA AI expression editor<br><span class="dr-accent">for videos</span></h1>
|
| 1648 |
+
<div class="dr-sub">Change facial expressions in any video. Add a smile, create a sadder or angrier
|
| 1649 |
+
expression, or adjust excitement using precise intensity controls.</div>
|
| 1650 |
<div class="dr-meta"><span>Free demo and API</span><span>Up to {int(MAX_SECONDS)} seconds per video</span>
|
| 1651 |
<span>{PER_USER_DAILY} generations per day</span></div>
|
| 1652 |
+
<div class="dr-disclose">Demo outputs are watermarked. Private model weights</div>
|
| 1653 |
<div class="dr-hero-actions">
|
| 1654 |
<a class="dr-btn dr-btn-primary" href="#dr-main">Try the demo</a>
|
| 1655 |
<a class="dr-btn" href="{API_QUICKSTART}" target="_blank">Use the API</a>
|
|
|
|
| 1748 |
gr.HTML(f"""
|
| 1749 |
<footer class="dr-foot">{logo_html("sm")}
|
| 1750 |
<nav><a href="{CARD}" target="_blank">Model documentation</a><a href="{API_QUICKSTART}" target="_blank">Free API docs</a><a href="{SITE}" target="_blank">DRAMA Studio</a><a href="{PRIVACY}" target="_blank">Privacy</a><a href="{TERMS}" target="_blank">Terms</a><a href="{SUPPORT}" target="_blank">Support</a></nav>
|
| 1751 |
+
<div class="dr-foot-copy">DRAMA by SyncMonster is an AI facial expression editor for videos. Try the demo or
|
| 1752 |
use the API to change visible expressions in existing footage.<br>© 2026 NeuralGarage Pvt. Ltd., Bengaluru.
|
| 1753 |
SyncMonster and DRAMA are products of NeuralGarage.</div>
|
| 1754 |
</footer>""")
|