Spaces:
Running
Running
To successfully establish a robust image-to-video generation pipeline using the Lora models available at [Hugging Face's Wan2.2 Loras repository](https://huggingface.co/Playtime-AI/Wan2.2-Loras), we will need to create a user-friendly system that simplifies the process of loading models and generating videos from uploaded images.
12a4e8b verified | <html lang="en"> | |
| <head> | |
| <meta charset="UTF-8"> | |
| <meta name="viewport" content="width=device-width, initial-scale=1.0"> | |
| <title>Artistic Filter - FrameForge Studio</title> | |
| <link rel="stylesheet" href="/style.css"> | |
| <script src="https://cdn.tailwindcss.com"></script> | |
| <script src="https://unpkg.com/feather-icons"></script> | |
| </head> | |
| <body class="bg-gray-900 text-white"> | |
| <custom-header></custom-header> | |
| <main class="container mx-auto px-4 py-8"> | |
| <section class="mb-12"> | |
| <div class="flex flex-col md:flex-row gap-8"> | |
| <div class="md:w-1/2"> | |
| <h1 class="text-4xl font-bold mb-4">Artistic Filter</h1> | |
| <p class="text-gray-300 mb-6">Apply painterly effects and artistic styles to your videos. Transform your images into masterpieces inspired by famous art movements.</p> | |
| <div class="bg-gray-800 rounded-xl p-6 mb-6"> | |
| <h2 class="text-2xl font-bold mb-4">Style Parameters</h2> | |
| <div class="space-y-4"> | |
| <div> | |
| <label class="block text-gray-300 mb-2">Art Style</label> | |
| <select class="w-full bg-gray-700 text-white rounded p-2" id="art-style"> | |
| <option value="impressionism">Impressionism</option> | |
| <option value="expressionism">Expressionism</option> | |
| <option value="cubism">Cubism</option> | |
| <option value="surrealism">Surrealism</option> | |
| <option value="pop-art">Pop Art</option> | |
| </select> | |
| </div> | |
| <div> | |
| <label class="block text-gray-300 mb-2">Brush Intensity: <span id="brush-value">6</span>/10</label> | |
| <input type="range" min="1" max="10" value="6" class="w-full accent-green-500" id="brush-slider"> | |
| </div> | |
| <div> | |
| <label class="block text-gray-300 mb-2">Color Vibrancy: <span id="color-value">8</span>/10</label> | |
| <input type="range" min="1" max="10" value="8" class="w-full accent-orange-500" id="color-slider"> | |
| </div> | |
| </div> | |
| </div> | |
| <button id="generate-btn" class="bg-green-500 hover:bg-green-600 text-white font-bold py-3 px-6 rounded-full transition duration-300 w-full"> | |
| Generate Video | |
| </button> | |
| </div> | |
| <div class="md:w-1/2"> | |
| <div class="bg-gray-800 rounded-xl p-6"> | |
| <h2 class="text-2xl font-bold mb-4">Preview</h2> | |
| <div class="bg-gray-700 h-80 rounded-lg flex items-center justify-center"> | |
| <i data-feather="aperture" class="text-orange-500 w-16 h-16"></i> | |
| </div> | |
| <div class="mt-4 flex justify-between"> | |
| <button class="bg-gray-700 hover:bg-gray-600 text-white py-2 px-4 rounded"> | |
| <i data-feather="play" class="w-4 h-4"></i> | |
| </button> | |
| <button class="bg-gray-700 hover:bg-gray-600 text-white py-2 px-4 rounded"> | |
| <i data-feather="download" class="w-4 h-4"></i> | |
| </button> | |
| </div> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| <section class="mb-12"> | |
| <h2 class="text-3xl font-bold mb-6">Style Gallery</h2> | |
| <div class="grid grid-cols-1 md:grid-cols-3 gap-6"> | |
| <div class="bg-gray-800 rounded-lg overflow-hidden"> | |
| <img src="http://static.photos/abstract/320x240/4" alt="Impressionism" class="w-full h-48 object-cover"> | |
| <div class="p-4"> | |
| <h3 class="font-bold mb-2">Impressionism</h3> | |
| <p class="text-gray-400 text-sm">Soft brushstrokes and light effects</p> | |
| </div> | |
| </div> | |
| <div class="bg-gray-800 rounded-lg overflow-hidden"> | |
| <img src="http://static.photos/abstract/320x240/5" alt="Expressionism" class="w-full h-48 object-cover"> | |
| <div class="p-4"> | |
| <h3 class="font-bold mb-2">Expressionism</h3> | |
| <p class="text-gray-400 text-sm">Bold colors and emotional intensity</p> | |
| </div> | |
| </div> | |
| <div class="bg-gray-800 rounded-lg overflow-hidden"> | |
| <img src="http://static.photos/abstract/320x240/6" alt="Cubism" class="w-full h-48 object-cover"> | |
| <div class="p-4"> | |
| <h3 class="font-bold mb-2">Cubism</h3> | |
| <p class="text-gray-400 text-sm">Geometric shapes and fragmented forms</p> | |
| </div> | |
| </div> | |
| </div> | |
| </section> | |
| </main> | |
| <custom-footer></custom-footer> | |
| <script src="/components/header.js"></script> | |
| <script src="/components/footer.js"></script> | |
| <script src="/script.js"></script> | |
| <script> | |
| feather.replace(); | |
| // Slider functionality | |
| document.getElementById('brush-slider').addEventListener('input', function() { | |
| document.getElementById('brush-value').textContent = this.value; | |
| }); | |
| document.getElementById('color-slider').addEventListener('input', function() { | |
| document.getElementById('color-value').textContent = this.value; | |
| }); | |
| // Generate button functionality | |
| document.getElementById('generate-btn').addEventListener('click', function() { | |
| this.innerHTML = '<i data-feather="loader" class="animate-spin mr-2"></i> Generating...'; | |
| feather.replace(); | |
| // Simulate processing time | |
| setTimeout(() => { | |
| this.innerHTML = 'Generate Video'; | |
| feather.replace(); | |
| alert('Video generated successfully! Check the preview section.'); | |
| }, 2000); | |
| }); | |
| </script> | |
| </body> | |
| </html> | |