<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:dc="http://purl.org/dc/elements/1.1/">
  <channel>
    <title>DEV Community: masaoki</title>
    <description>The latest articles on DEV Community by masaoki (@masaoki).</description>
    <link>https://dev.to/masaoki</link>
    <image>
      <url>https://media2.dev.to/dynamic/image/width=90,height=90,fit=cover,gravity=auto,format=auto/https:%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Fuser%2Fprofile_image%2F963755%2F0e4041fc-4dcc-4aa4-9f2c-c01e69507c0f.png</url>
      <title>DEV Community: masaoki</title>
      <link>https://dev.to/masaoki</link>
    </image>
    <atom:link rel="self" type="application/rss+xml" href="https://dev.to/feed/masaoki"/>
    <language>en</language>
    <item>
      <title>Supercharge Your Clipboard with AI</title>
      <dc:creator>masaoki</dc:creator>
      <pubDate>Sun, 21 Dec 2025 08:11:45 +0000</pubDate>
      <link>https://dev.to/masaoki/supercharge-your-clipboard-with-ai-58m</link>
      <guid>https://dev.to/masaoki/supercharge-your-clipboard-with-ai-58m</guid>
      <description>&lt;p&gt;&lt;strong&gt;TL;DR&lt;/strong&gt;: Transform your clipboard content with AI using a single hotkey. Translate to multiple languages simultaneously, generate presentation images, or apply any custom AI transformation - all without leaving your workflow.&lt;/p&gt;




&lt;h2&gt;
  
  
  The Problem: Context Switching is Killing Your Productivity
&lt;/h2&gt;

&lt;p&gt;How many times today have you:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Copied text to translate it&lt;/li&gt;
&lt;li&gt;Opened a browser tab&lt;/li&gt;
&lt;li&gt;Navigated to ChatGPT or Claude&lt;/li&gt;
&lt;li&gt;Pasted the text&lt;/li&gt;
&lt;li&gt;Copied the result&lt;/li&gt;
&lt;li&gt;Switched back to your original app&lt;/li&gt;
&lt;li&gt;Pasted it back&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;Now multiply that by every translation, every image generation, every AI-assisted task throughout your day. That's a lot of context switching.&lt;/p&gt;

&lt;h2&gt;
  
  
  Meet cbfilter: Your AI-Powered Clipboard Assistant
&lt;/h2&gt;

&lt;p&gt;&lt;a href="https://github.com/masaoki/cbfilter" rel="noopener noreferrer"&gt;cbfilter&lt;/a&gt; is a lightweight Windows utility that brings AI transformation directly to your clipboard. Press &lt;code&gt;Win+Alt+V&lt;/code&gt;, select a filter, and watch your clipboard content transform instantly.&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;What makes it powerful?&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🔄 Four transformation types: Text→Text, Text→Image, Image→Text, Image→Image&lt;/li&gt;
&lt;li&gt;🤖 Multiple AI providers: OpenAI, Anthropic Claude, Google Gemini, or any OpenAI-compatible API&lt;/li&gt;
&lt;li&gt;⚡ Zero context switching: Results paste automatically&lt;/li&gt;
&lt;li&gt;🎨 Custom filters: Create your own AI transformations&lt;/li&gt;
&lt;li&gt;🌍 Multilingual: 13 language interfaces out of the box&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Real-World Example 1: Simultaneous Multi-Language Translation
&lt;/h2&gt;

&lt;p&gt;Imagine you're preparing content for an international developer community like dev.to. You need your announcement in both Chinese and Japanese. &lt;/p&gt;

&lt;p&gt;&lt;strong&gt;Traditional workflow&lt;/strong&gt;: &lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Translate to Chinese (3-4 steps)&lt;/li&gt;
&lt;li&gt;Copy result somewhere&lt;/li&gt;
&lt;li&gt;Translate to Japanese (another 3-4 steps)&lt;/li&gt;
&lt;li&gt;Format both translations&lt;/li&gt;
&lt;li&gt;Total: ~10-12 manual steps&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;&lt;strong&gt;With cbfilter&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Copy your English text&lt;/li&gt;
&lt;li&gt;Press &lt;code&gt;Win+Alt+V&lt;/code&gt; on your app&lt;/li&gt;
&lt;li&gt;Select "Translate to Chinese and Japanese"&lt;/li&gt;
&lt;li&gt;Done&lt;/li&gt;
&lt;/ol&gt;

&lt;h3&gt;
  
  
  Configuration
&lt;/h3&gt;

&lt;p&gt;Here's the magic - a simple custom filter that does simultaneous translation:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmmx5y6bjirsou8z2vfo6.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fmmx5y6bjirsou8z2vfo6.png" alt="Configuration screen for simultaneous translation filter" width="800" height="532"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Configuration screen for simultaneous translation filter&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  In Action
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuhrikqhjk74jn6oncm17.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fuhrikqhjk74jn6oncm17.gif" alt="Translation to Chinese and Japanese" width="800" height="533"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Watch it translate dev.to community guidelines to Chinese and Japanese in real-time&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;The entire process took 17 seconds, but the time depends on the model performance. No tab switching, no copy-paste gymnastics.&lt;/p&gt;


&lt;h2&gt;
  
  
  Real-World Example 2: Generate Presentation Images Instantly
&lt;/h2&gt;

&lt;p&gt;You're writing documentation and need a visual representation. Instead of opening DALL-E or Midjourney in a browser:&lt;/p&gt;

&lt;p&gt;&lt;strong&gt;With cbfilter&lt;/strong&gt;:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;Type your image description&lt;/li&gt;
&lt;li&gt;Copy it&lt;/li&gt;
&lt;li&gt;Press &lt;code&gt;Win+Alt+V&lt;/code&gt; on your app&lt;/li&gt;
&lt;li&gt;Select "Generate Image"&lt;/li&gt;
&lt;li&gt;Done&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
  
  
  Configuration
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftkm1qqw9auckcew351p3.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Ftkm1qqw9auckcew351p3.png" alt="Configuration for image generation" width="800" height="532"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Configuration for image generation&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  In Action
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frbl089lg2qwj8ia7r3my.gif" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Frbl089lg2qwj8ia7r3my.gif" alt="text description to promotional image" width="760" height="506"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;From text description to presentation-ready image in seconds&lt;/em&gt;&lt;/p&gt;
&lt;h3&gt;
  
  
  Generated Images
&lt;/h3&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdam0kybiuxqokgnzyaz1.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2Fdam0kybiuxqokgnzyaz1.webp" alt="Dev Community Promotional Image" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9my04mlc5ls3x23qn3pd.webp" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F9my04mlc5ls3x23qn3pd.webp" alt="Manga Version" width="800" height="436"&gt;&lt;/a&gt;&lt;/p&gt;


&lt;h2&gt;
  
  
  Getting Started
&lt;/h2&gt;
&lt;h3&gt;
  
  
  Installation
&lt;/h3&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Download&lt;/strong&gt; the latest release from &lt;a href="https://github.com/masaoki/cbfilter/releases" rel="noopener noreferrer"&gt;GitHub&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Run the installer&lt;/strong&gt; - it automatically sets up based on your system language&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Configure your API key&lt;/strong&gt; on first launch&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Start transforming&lt;/strong&gt; with &lt;code&gt;Win+Alt+V&lt;/code&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;
  
  
  Initial Setup
&lt;/h3&gt;

&lt;p&gt;The setup wizard makes configuration painless:&lt;/p&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7vzyf5vljagdu62tdtvj.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F7vzyf5vljagdu62tdtvj.png" alt="Setup Dialog" width="758" height="409"&gt;&lt;/a&gt;&lt;br&gt;
&lt;em&gt;Choose your AI provider and the most affordable models are configured automatically&lt;/em&gt;&lt;/p&gt;

&lt;p&gt;Default models:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Text or Vision: &lt;code&gt;gpt-5-nano&lt;/code&gt; or &lt;code&gt;gemini-2.5-flash-lite&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;Image Generation &amp;amp; Edit: &lt;code&gt;gpt-image-1-mini&lt;/code&gt; or &lt;code&gt;gemini-2.5-flash-image&lt;/code&gt;
&lt;/li&gt;
&lt;/ul&gt;
&lt;h3&gt;
  
  
  Creating Custom Filters
&lt;/h3&gt;

&lt;p&gt;The real power is in customization. Each filter needs:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Title&lt;/strong&gt;: What appears in your menu&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Input/Output Type&lt;/strong&gt;: Text or Image&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Model&lt;/strong&gt;: Which AI to use&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Prompt&lt;/strong&gt;: Your transformation instructions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;Example: Code Reviewer&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Review this code for:
1) bugs,
2) performance issues,
3) security vulnerabilities,
4) best practices.
Be concise but specific.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Example: Screenshot to Markdown Table&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Extract the table from this image and convert it to a well-formatted Markdown table.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;



&lt;p&gt;&lt;strong&gt;Example: Manga image from text&lt;/strong&gt;&lt;br&gt;
&lt;/p&gt;

&lt;div class="highlight js-code-highlight"&gt;
&lt;pre class="highlight plaintext"&gt;&lt;code&gt;Generate a promotional image and story as manga, which passionately introduce the content of the given text.
&lt;/code&gt;&lt;/pre&gt;

&lt;/div&gt;






&lt;h2&gt;
  
  
  Why Developers Love It
&lt;/h2&gt;

&lt;h3&gt;
  
  
  1. &lt;strong&gt;API Flexibility&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Works with any OpenAI-compatible API:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;OpenAI&lt;/li&gt;
&lt;li&gt;Anthropic&lt;/li&gt;
&lt;li&gt;Google Gemini&lt;/li&gt;
&lt;li&gt;OpenRouter&lt;/li&gt;
&lt;li&gt;LiteLLM&lt;/li&gt;
&lt;li&gt;Ollama&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  2. &lt;strong&gt;Stays Out of Your Way&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;Runs from system tray&lt;/li&gt;
&lt;li&gt;Minimal memory footprint&lt;/li&gt;
&lt;li&gt;No UI unless you need it&lt;/li&gt;
&lt;li&gt;Automatic paste after transformation&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  3. &lt;strong&gt;Open Source &amp;amp; Extensible&lt;/strong&gt;
&lt;/h3&gt;

&lt;ul&gt;
&lt;li&gt;MIT License&lt;/li&gt;
&lt;li&gt;Written in modern C++20&lt;/li&gt;
&lt;li&gt;API provider templates for easy expansion&lt;/li&gt;
&lt;/ul&gt;

&lt;h3&gt;
  
  
  4. &lt;strong&gt;Multilingual by Design&lt;/strong&gt;
&lt;/h3&gt;

&lt;p&gt;Interface available in 13 languages:&lt;br&gt;
English, Japanese, German, Spanish, French, Italian, Korean, Dutch, Portuguese, Russian, Thai, Vietnamese, Chinese&lt;/p&gt;




&lt;h2&gt;
  
  
  Technical Highlights
&lt;/h2&gt;

&lt;ul&gt;
&lt;li&gt;
&lt;strong&gt;Modern C++ Implementation&lt;/strong&gt;: Leverages C++20 features for performance&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Windows SDK Integration&lt;/strong&gt;: Native clipboard monitoring&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Persistent Configuration&lt;/strong&gt;: JSON-based config in &lt;code&gt;%APPDATA%&lt;/code&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Hotkey Management&lt;/strong&gt;: System-wide hotkey registration&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Image Handling&lt;/strong&gt;: Base64 encoding for vision models&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Error Resilience&lt;/strong&gt;: Graceful degradation on API failures&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Common Use Cases
&lt;/h2&gt;

&lt;p&gt;&lt;strong&gt;For Content Creators:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Translate blog posts to multiple languages&lt;/li&gt;
&lt;li&gt;Generate featured images from titles&lt;/li&gt;
&lt;li&gt;Summarize long articles&lt;/li&gt;
&lt;li&gt;Extract text from screenshots&lt;/li&gt;
&lt;li&gt;Convert simple hand-drawn illustrations into professional photo-like images&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For Developers:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Review code snippets&lt;/li&gt;
&lt;li&gt;Translate source code to another programming language&lt;/li&gt;
&lt;li&gt;Generate documentation images&lt;/li&gt;
&lt;li&gt;Translate error messages&lt;/li&gt;
&lt;li&gt;Extract data from screenshots (tables, logs, etc.)&lt;/li&gt;
&lt;li&gt;Generate flowchart or class diagram from source code&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For Researchers:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Summarize papers&lt;/li&gt;
&lt;li&gt;Translate research findings&lt;/li&gt;
&lt;li&gt;Extract data from charts&lt;/li&gt;
&lt;li&gt;Generate visualizations from descriptions&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;&lt;strong&gt;For Multilingual Teams:&lt;/strong&gt;&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;Real-time meeting notes translation&lt;/li&gt;
&lt;li&gt;Simultaneous documentation in multiple languages&lt;/li&gt;
&lt;li&gt;Screenshot OCR in any language&lt;/li&gt;
&lt;li&gt;Quick language verification&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  What's Next?
&lt;/h2&gt;

&lt;p&gt;The project is actively developed and welcomes contributions:&lt;/p&gt;

&lt;ul&gt;
&lt;li&gt;🎯 More API provider templates&lt;/li&gt;
&lt;li&gt;🔧 Community-shared filter libraries&lt;/li&gt;
&lt;li&gt;📊 Usage analytics and filter performance tracking&lt;/li&gt;
&lt;/ul&gt;




&lt;h2&gt;
  
  
  Try It Now
&lt;/h2&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;strong&gt;Star the repo&lt;/strong&gt;: &lt;a href="https://github.com/masaoki/cbfilter" rel="noopener noreferrer"&gt;github.com/masaoki/cbfilter&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Download the latest release&lt;/strong&gt;&lt;/li&gt;
&lt;li&gt;
&lt;strong&gt;Share your custom filters&lt;/strong&gt; - open a PR with your creative use cases!&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;The next time you find yourself manually copying and pasting between AI chat interfaces, remember: there's a faster way. Your clipboard is more powerful than you think.&lt;/p&gt;




&lt;p&gt;&lt;strong&gt;What's your biggest clipboard pain point?&lt;/strong&gt; Share in the comments, and let's brainstorm filters to solve it!&lt;/p&gt;

&lt;h1&gt;
  
  
  AI #Productivity #OpenSource #Windows #Developer Tools
&lt;/h1&gt;

</description>
      <category>tooling</category>
      <category>automation</category>
      <category>ai</category>
      <category>productivity</category>
    </item>
    <item>
      <title>Sora 2 video generation on Open WebUI</title>
      <dc:creator>masaoki</dc:creator>
      <pubDate>Sat, 11 Oct 2025 16:03:47 +0000</pubDate>
      <link>https://dev.to/masaoki/sora-2-video-generation-on-open-webui-56c7</link>
      <guid>https://dev.to/masaoki/sora-2-video-generation-on-open-webui-56c7</guid>
      <description>&lt;h2&gt;
  
  
  Sora 2 API
&lt;/h2&gt;

&lt;p&gt;Currently Sora 2 Web access is available to limited subscribers, but Sora 2 API has been available to developers. Open WebUI is nice place to try Sora 2.&lt;/p&gt;

&lt;h2&gt;
  
  
  Open WebUI
&lt;/h2&gt;

&lt;p&gt;Open WebUI is a nice front-end to deploy AI models. Docker lets you have personal chat space with your favorite language models. Look at &lt;a href="https://dev.to/ajeetraina/the-ollama-docker-compose-setup-with-webui-and-remote-access-via-cloudflare-1ion"&gt;the related article&lt;/a&gt; to have your Open WebUI.&lt;/p&gt;

&lt;h2&gt;
  
  
  Open WebUI extension
&lt;/h2&gt;

&lt;p&gt;Easily installable &lt;a href="https://openwebui.com/f/masaoki/sora_2" rel="noopener noreferrer"&gt;Open WebUI Function&lt;/a&gt; for your Open WebUI to generate Sora 2 or Sora 2 Pro videos.&lt;/p&gt;

&lt;h2&gt;
  
  
  Writing a better prompt
&lt;/h2&gt;

&lt;p&gt;OpenAI shows a guide to make &lt;a href="https://platform.openai.com/docs/guides/video-generation" rel="noopener noreferrer"&gt;an effective prompt for Sora 2&lt;/a&gt;.&lt;br&gt;
Currently the initial frame is restricted to the non-human image.&lt;/p&gt;

&lt;h2&gt;
  
  
  Initial frame
&lt;/h2&gt;

&lt;p&gt;Just with a prompt is enough to generate video, but you can specify the image as an initial frame of the generated video. The extension function automatically resize the image to fit the generated video, you still have to take care of the aspect ratio of the image since the image is automatically cropped to fit.&lt;/p&gt;

&lt;h2&gt;
  
  
  My trial
&lt;/h2&gt;

&lt;blockquote&gt;
&lt;p&gt;We will create a commercial video for a laptop specifically designed for dogs. This world begins with an office scene where dogs are working in a bright office using spreadsheet software. The main character, a poodle, takes out a strangely shaped laptop that is shaped like a paw instead of a square, opens it, and quickly completes his work. The other dogs look surprised and ask questions. At the end, the main character says, "Bowtel inside!".&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;&lt;a href="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F70a34vijwd0x5thty6rs.png" class="article-body-image-wrapper"&gt;&lt;img src="https://media2.dev.to/dynamic/image/width=800%2Cheight=%2Cfit=scale-down%2Cgravity=auto%2Cformat=auto/https%3A%2F%2Fdev-to-uploads.s3.amazonaws.com%2Fuploads%2Farticles%2F70a34vijwd0x5thty6rs.png" alt="Bowtel inside!" width="512" height="456"&gt;&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&lt;a href="https://x.com/masaoki/status/1977041145671958967" rel="noopener noreferrer"&gt;https://x.com/masaoki/status/1977041145671958967&lt;/a&gt;&lt;/p&gt;

&lt;h2&gt;
  
  
  Remix
&lt;/h2&gt;

&lt;p&gt;Remix is available as just continuing the conversation. Edit your video until you're happy with it.&lt;/p&gt;

</description>
    </item>
  </channel>
</rss>
