Update app.py
Browse files
app.py
CHANGED
@@ -48,7 +48,7 @@ class Text2Video:
|
|
48 |
LOGGER.info(f"π Sending request to Hercai API...")
|
49 |
|
50 |
image_result = self.herc.draw_image(
|
51 |
-
model="
|
52 |
prompt=comic_style_prompt,
|
53 |
negative_prompt="blurry, cropped, low quality, dark, gloomy"
|
54 |
)
|
@@ -209,89 +209,30 @@ class Text2Video:
|
|
209 |
LOGGER.error(f"β Error in video generation: {str(e)}")
|
210 |
raise
|
211 |
|
212 |
-
|
213 |
def gradio_interface(self):
|
214 |
"""Create Gradio interface."""
|
215 |
LOGGER.info("π Initializing Gradio interface")
|
216 |
|
217 |
-
# Example stories of different lengths
|
218 |
-
short_story = """A little bird found a shiny seed,,
|
219 |
-
The bird planted it in the garden,,
|
220 |
-
The next day, a magical flower grew,,
|
221 |
-
The bird and flower became best friends"""
|
222 |
-
|
223 |
-
medium_story = """In a bustling city, a lonely robot worked in a toy shop,,
|
224 |
-
Every night, the robot would fix broken toys while everyone slept,,
|
225 |
-
One day, a little girl noticed the robot's kindness,,
|
226 |
-
She started leaving thank you notes for the robot,,
|
227 |
-
The robot began making special toys just for her,,
|
228 |
-
Soon, other children discovered the robot's magical toys,,
|
229 |
-
The toy shop became famous for its special toys,,
|
230 |
-
The robot wasn't lonely anymore, surrounded by happy children"""
|
231 |
-
|
232 |
-
long_story = """Deep in the enchanted forest, there lived a young wizard named Leo who couldn't control his magic,,
|
233 |
-
Every time Leo tried to cast a spell, unexpected things would happen - flowers turned into butterflies, rain became candy, and his cat could suddenly speak French,,
|
234 |
-
One day, Leo discovered an ancient book hidden beneath a talking tree,,
|
235 |
-
The book revealed that his 'mistakes' were actually rare gifts - the ability to bring joy and wonder to the world,,
|
236 |
-
Excited about his discovery, Leo started practicing his unique magic in secret,,
|
237 |
-
He created a garden where flowers sang lullabies,,
|
238 |
-
He made clouds that rained rainbow bubbles,,
|
239 |
-
He transformed ordinary objects into extraordinary treasures,,
|
240 |
-
Word spread about the magical happenings in the forest,,
|
241 |
-
Children from nearby villages would visit to see Leo's wonderful creations,,
|
242 |
-
Adults who had forgotten about magic began to believe again,,
|
243 |
-
The forest became a place of wonder and happiness,,
|
244 |
-
Leo realized that sometimes the best magic comes from embracing what makes you different,,
|
245 |
-
And so, the once-frustrated wizard became known as Leo the Wonderful, master of joyful surprises"""
|
246 |
-
|
247 |
with gr.Blocks(theme='abidlabs/dracula_revamped') as demo:
|
248 |
gr.HTML("""
|
249 |
<center><h1 style="color:#fff">Comic Video Generator</h1></center>
|
250 |
-
<center><p style="color:#ccc">Create animated comics from your stories! Separate scenes with double commas (,,)</p></center>
|
251 |
""")
|
252 |
|
253 |
with gr.Row():
|
254 |
input_text = gr.Textbox(
|
255 |
label="Comic Script",
|
256 |
-
placeholder="Enter your story (separate scenes with ,,)"
|
257 |
-
lines=5
|
258 |
)
|
259 |
|
260 |
with gr.Row():
|
261 |
-
generate_btn = gr.Button("π¬ Generate Video"
|
262 |
|
263 |
with gr.Row():
|
264 |
output = gr.Video(label="Generated Comic Video")
|
265 |
|
266 |
-
#
|
267 |
-
|
268 |
-
|
269 |
-
[short_story],
|
270 |
-
[medium_story],
|
271 |
-
[long_story]
|
272 |
-
],
|
273 |
-
inputs=[input_text],
|
274 |
-
label="Story Examples",
|
275 |
-
headers=[
|
276 |
-
"Short Story (4 scenes)",
|
277 |
-
"Medium Story (8 scenes)",
|
278 |
-
"Long Story (14 scenes)"
|
279 |
-
]
|
280 |
-
)
|
281 |
-
|
282 |
-
# Add some helpful tips
|
283 |
-
gr.HTML("""
|
284 |
-
<div style="color:#ccc; padding: 20px; margin-top: 20px; background: rgba(0,0,0,0.1); border-radius: 10px;">
|
285 |
-
<h3>Tips for Better Results:</h3>
|
286 |
-
<ul>
|
287 |
-
<li>Separate each scene with double commas (,,)</li>
|
288 |
-
<li>Keep each scene description clear and vivid</li>
|
289 |
-
<li>Include character emotions and actions</li>
|
290 |
-
<li>Describe the setting and atmosphere</li>
|
291 |
-
<li>Aim for 3-15 scenes for best results</li>
|
292 |
-
</ul>
|
293 |
-
</div>
|
294 |
-
""")
|
295 |
|
296 |
generate_btn.click(self.generate_video, inputs=[input_text], outputs=[output])
|
297 |
|
|
|
48 |
LOGGER.info(f"π Sending request to Hercai API...")
|
49 |
|
50 |
image_result = self.herc.draw_image(
|
51 |
+
model="v3",
|
52 |
prompt=comic_style_prompt,
|
53 |
negative_prompt="blurry, cropped, low quality, dark, gloomy"
|
54 |
)
|
|
|
209 |
LOGGER.error(f"β Error in video generation: {str(e)}")
|
210 |
raise
|
211 |
|
|
|
212 |
def gradio_interface(self):
|
213 |
"""Create Gradio interface."""
|
214 |
LOGGER.info("π Initializing Gradio interface")
|
215 |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
216 |
with gr.Blocks(theme='abidlabs/dracula_revamped') as demo:
|
217 |
gr.HTML("""
|
218 |
<center><h1 style="color:#fff">Comic Video Generator</h1></center>
|
|
|
219 |
""")
|
220 |
|
221 |
with gr.Row():
|
222 |
input_text = gr.Textbox(
|
223 |
label="Comic Script",
|
224 |
+
placeholder="Enter your story (separate scenes with ,,)"
|
|
|
225 |
)
|
226 |
|
227 |
with gr.Row():
|
228 |
+
generate_btn = gr.Button("π¬ Generate Video")
|
229 |
|
230 |
with gr.Row():
|
231 |
output = gr.Video(label="Generated Comic Video")
|
232 |
|
233 |
+
# Example text
|
234 |
+
example_txt = """Once upon a time in a magical forest,, A brave knight discovered a mysterious crystal,, The crystal began to glow with incredible power"""
|
235 |
+
gr.Examples([[example_txt]], [input_text])
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
236 |
|
237 |
generate_btn.click(self.generate_video, inputs=[input_text], outputs=[output])
|
238 |
|