Spaces:
Sleeping
Sleeping
| import gradio as gr | |
| # Bahasa-bahasa yang tersedia | |
| languages = { | |
| "English": "en", | |
| "Indonesian": "id", | |
| "Spanish": "es", | |
| "French": "fr", | |
| "German": "de", | |
| "Italian": "it", | |
| "Portuguese": "pt", | |
| "Russian": "ru", | |
| "Japanese": "ja", | |
| "Korean": "ko", | |
| "Chinese (Simplified)": "zh-CN", | |
| "Arabic": "ar", | |
| "Turkish": "tr", | |
| "Hindi": "hi", | |
| "Thai": "th" | |
| } | |
| # Genre, visual style, mood, etc. | |
| genres = ["Horror", "Romance", "Fantasy", "Sci-Fi", "Mystery", "Absurd Comedy"] | |
| styles = ["Realistic", "Semi-Realistic", "Cartoon", "Anime", "Noir", "Pixar-like"] | |
| moods = ["Funny", "Sad", "Mysterious", "Emotional", "Light-hearted", "Dark"] | |
| rations = ["9:16 (Vertical)", "16:9 (Landscape)", "1:1 (Square)"] | |
| audio = ["Rain Sound", "Glitch Effect", "Heartbeat", "Footsteps", "Silence"] | |
| # Prompt generation function | |
| def generate_prompt(language, genre, style, mood, ratio, setting, character, object, audio_fx, translation): | |
| prompt = f"Scene in {setting} with a {character} interacting with {object}. Genre: {genre}. Visual style: {style}. Mood: {mood}. Format: {ratio}. Background audio: {audio_fx}." | |
| if translation: | |
| try: | |
| from googletrans import Translator | |
| translator = Translator() | |
| translated = translator.translate(prompt, dest=language) | |
| return translated.text | |
| except: | |
| return "Translation failed. Please install googletrans library." | |
| return prompt | |
| # UI | |
| with gr.Blocks() as app: | |
| gr.Markdown("""# ๐ฌ Gemini Veo 3 Prompt Generator (15 Languages) | |
| Buat prompt untuk video AI-mu dengan gaya dan bahasa yang kamu inginkan. | |
| """) | |
| lang = gr.Dropdown(list(languages.keys()), label="Bahasa Output") | |
| genre = gr.Dropdown(genres, label="Genre Cerita") | |
| style = gr.Dropdown(styles, label="Gaya Visual") | |
| mood = gr.Dropdown(moods, label="Mood Cerita") | |
| ratio = gr.Dropdown(rations, label="Rasio Layar") | |
| setting = gr.Textbox(label="Lokasi/Tempat Adegan") | |
| character = gr.Textbox(label="Karakter Utama") | |
| object = gr.Textbox(label="Objek atau Makhluk yang Ditemui") | |
| audio_fx = gr.Dropdown(audio, label="Efek Audio") | |
| translate = gr.Checkbox(label="Terjemahkan prompt ke bahasa yang dipilih") | |
| output = gr.Textbox(label="Prompt Final", lines=5) | |
| generate = gr.Button("๐ฎ Generate Prompt") | |
| generate.click(fn=generate_prompt, | |
| inputs=[lang, genre, style, mood, ratio, setting, character, object, audio_fx, translate], | |
| outputs=output) | |
| app.launch() | |