> ## Documentation Index
> Fetch the complete documentation index at: https://mintlify.com/rtr46/meikipop/llms.txt
> Use this file to discover all available pages before exploring further.

# Auto scan mode

> Enable continuous screen scanning for instant dictionary lookups without pressing the hotkey

Auto scan mode is meikipop's most powerful feature for reducing perceived latency. When enabled, it continuously scans your screen region in the background, providing near-instant dictionary results.

## What is auto scan mode?

Instead of waiting for you to press the hotkey before taking a screenshot and running OCR, auto scan mode:

1. **Continuously captures** screenshots of your scan region
2. **Processes OCR** in the background
3. **Caches results** so they're ready instantly when you move your mouse
4. **Eliminates wait time** between pressing the hotkey and seeing results

<Info>
  The first time you run the app in auto scan mode, there may be a brief delay as the OCR initializes. After that, lookups are nearly instantaneous.
</Info>

## Enabling auto scan mode

<Tabs>
  <Tab title="Via system tray">
    <Steps>
      <Step title="Right-click the tray icon">
        Find the meikipop icon in your system tray (Windows/Linux) or menu bar (macOS).
      </Step>

      <Step title="Toggle auto scan">
        Click **Enable Auto Scan Mode** to turn it on. When enabled, you'll see a checkmark next to this option.
      </Step>

      <Step title="Start using it">
        Move your mouse over Japanese text. The popup appears automatically (by default) without pressing any keys.
      </Step>
    </Steps>
  </Tab>

  <Tab title="Via Settings dialog">
    <Steps>
      <Step title="Open Settings">
        Right-click the tray icon and select **Settings**.
      </Step>

      <Step title="Navigate to General tab">
        The **General** tab contains the Auto Scan Mode section.
      </Step>

      <Step title="Enable auto scan">
        Check the **Enable Auto Scan** checkbox.
      </Step>

      <Step title="Configure options">
        Adjust additional auto scan settings (explained below).
      </Step>

      <Step title="Save changes">
        Click **Save** to apply your configuration.
      </Step>
    </Steps>
  </Tab>

  <Tab title="Via config.ini">
    Edit `config.ini` in the application directory:

    ```ini theme={null}
    [Settings]
    auto_scan_mode = true
    ```

    Restart meikipop for changes to take effect.
  </Tab>
</Tabs>

## Auto scan mode settings

Auto scan mode includes several configuration options to balance performance and responsiveness.

### Show popup without hotkey

<ParamField path="auto_scan_mode_lookups_without_hotkey" type="boolean" default="true">
  **Config key:** `auto_scan_mode_lookups_without_hotkey`

  Controls whether the popup appears automatically or requires the hotkey.

  **When enabled (default):**

  * Move your mouse over Japanese text
  * Popup appears automatically
  * No hotkey required
  * Most convenient for continuous reading

  **When disabled:**

  * Screen is continuously scanned in background
  * Results are cached
  * Popup only appears when you press the hotkey
  * Faster than manual mode, but with traditional hotkey UX

  <Tip>
    Disable this if you want auto scan's performance benefits but prefer pressing a key to show the popup.
  </Tip>
</ParamField>

### Scan interval (cooldown)

<ParamField path="auto_scan_interval_seconds" type="float" default="0.0">
  **Config key:** `auto_scan_interval_seconds`

  Minimum time in seconds between automatic scans.

  **How it works:**

  * `0.0`: Scan as fast as possible (lowest latency, highest load)
  * `0.5`: Wait at least 0.5 seconds between scans
  * `2.0`: Wait at least 2 seconds between scans (lowest load)

  **Range:** 0.0 to 60.0 seconds

  <Info>
    This setting acts as a cooldown to prevent excessive OCR requests. The actual scan frequency may be lower depending on OCR processing time.
  </Info>
</ParamField>

#### Choosing the right interval

<Tabs>
  <Tab title="0.0s (No cooldown)">
    **Best for:**

    * Fast-paced games or videos
    * When text changes frequently
    * When you have a powerful computer
    * Local OCR providers (owocr)

    **Drawbacks:**

    * Highest CPU/network usage
    * May impact game performance
    * Increased battery drain on laptops
  </Tab>

  <Tab title="0.5-1.0s (Balanced)">
    **Best for:**

    * Visual novels and manga
    * Moderate-paced content
    * Balancing performance and responsiveness
    * Remote OCR (Google Lens)

    **Provides:**

    * Good responsiveness for most use cases
    * Reasonable system load
    * Acceptable battery life
  </Tab>

  <Tab title="2.0s+ (Low impact)">
    **Best for:**

    * Static text that doesn't change often
    * Older or slower computers
    * Battery-powered devices
    * Minimizing background activity

    **Provides:**

    * Minimal performance impact
    * Extended battery life
    * Still faster than manual mode
  </Tab>
</Tabs>

### Only scan on mouse move

<ParamField path="auto_scan_on_mouse_move" type="boolean" default="false">
  **Config key:** `auto_scan_on_mouse_move`

  Only triggers scans when the mouse cursor is moving.

  **When enabled:**

  * No scans occur while mouse is stationary
  * First scan happens when you move the mouse
  * Reduces unnecessary processing
  * Lowers system load significantly

  **When disabled:**

  * Scans continue even when mouse is still
  * Catches text changes that occur without mouse movement
  * Higher system load

  <Tip>
    Enable this if you're reading static content like visual novels where text doesn't change unless you move the mouse.
  </Tip>
</ParamField>

## Performance considerations

Auto scan mode provides a better user experience but increases system resource usage.

### System load impact

<Accordion title="CPU usage">
  **Factors affecting CPU load:**

  * OCR processing (varies by provider)
  * Screenshot capture frequency
  * Screen region size (smaller = lower load)
  * Image compression (if enabled)

  **Typical impact:**

  * Google Lens: Low CPU, main cost is network
  * owocr with MangaOCR: Moderate CPU usage
  * ScreenAI: Varies by model

  **Mitigation:**

  * Increase `auto_scan_interval_seconds`
  * Enable `auto_scan_on_mouse_move`
  * Use region mode instead of fullscreen
  * Choose a smaller scan region
</Accordion>

<Accordion title="Network usage">
  **Applies to:** Google Lens and other remote OCR providers

  **Data per scan:**

  * Without compression: 100-500 KB per screenshot
  * With compression: 20-100 KB per screenshot

  **Estimated hourly usage:**

  * At 0.0s interval: 180-900 MB/hour (uncompressed)
  * At 0.5s interval: 72-360 MB/hour
  * At 1.0s interval: 36-180 MB/hour

  **Mitigation:**

  * Enable Google Lens compression
  * Increase scan interval
  * Use a local OCR provider (owocr)
  * Use region mode with a smaller area
</Accordion>

<Accordion title="Battery impact (laptops)">
  Continuous scanning affects battery life through:

  * CPU usage for OCR/compression
  * Network activity (WiFi/cellular)
  * Screen capture operations

  **To maximize battery:**

  1. Set `auto_scan_interval_seconds` to 1.0 or higher
  2. Enable `auto_scan_on_mouse_move`
  3. Use the smallest practical scan region
  4. Consider disabling auto scan when not actively reading
</Accordion>

<Accordion title="Game performance">
  If meikipop impacts game FPS:

  * Increase `auto_scan_interval_seconds` to 1.0+
  * Select a smaller scan region
  * Enable `auto_scan_on_mouse_move`
  * Use a local OCR provider
  * Disable auto scan during action sequences

  <Info>
    Most modern systems handle auto scan mode without noticeable game impact, especially with a 0.5-1.0s interval.
  </Info>
</Accordion>

## Recommended configurations

<CardGroup cols={2}>
  <Card title="Visual novels" icon="book">
    ```ini theme={null}
    auto_scan_mode = true
    auto_scan_mode_lookups_without_hotkey = true
    auto_scan_interval_seconds = 0.5
    auto_scan_on_mouse_move = true
    ```

    Text is static, mouse movement indicates interest in new words.
  </Card>

  <Card title="Games" icon="gamepad">
    ```ini theme={null}
    auto_scan_mode = true
    auto_scan_mode_lookups_without_hotkey = true
    auto_scan_interval_seconds = 1.0
    auto_scan_on_mouse_move = false
    ```

    Text may change independently of mouse position.
  </Card>

  <Card title="Manga/images" icon="image">
    ```ini theme={null}
    auto_scan_mode = true
    auto_scan_mode_lookups_without_hotkey = true
    auto_scan_interval_seconds = 2.0
    auto_scan_on_mouse_move = true
    ```

    Static content, infrequent lookups, maximize efficiency.
  </Card>

  <Card title="Performance mode" icon="gauge-high">
    ```ini theme={null}
    auto_scan_mode = true
    auto_scan_mode_lookups_without_hotkey = false
    auto_scan_interval_seconds = 0.0
    auto_scan_on_mouse_move = false
    ```

    Maximum speed with hotkey control for powerful systems.
  </Card>
</CardGroup>

## Comparison: auto scan vs manual mode

<Tabs>
  <Tab title="Manual mode (default)">
    **How it works:**

    1. You press the hotkey
    2. Screenshot is captured
    3. OCR processes the image (200-1000ms)
    4. Dictionary lookup occurs
    5. Popup appears

    **User experience:**

    * Noticeable delay between hotkey press and popup
    * First lookup of each word always has latency
    * Lower system resource usage
    * Full control over when OCR runs

    **Best for:**

    * Occasional lookups
    * Older hardware
    * Battery conservation
    * Metered network connections
  </Tab>

  <Tab title="Auto scan mode">
    **How it works:**

    1. Screenshot captured automatically in background
    2. OCR continuously processes images
    3. Results cached
    4. When you move mouse/press hotkey: popup appears instantly

    **User experience:**

    * Near-zero perceived latency
    * Feels magical and responsive
    * Smooth reading experience
    * Higher system resource usage

    **Best for:**

    * Intensive reading sessions
    * Visual novels, games, manga
    * When reading speed matters
    * Modern hardware
  </Tab>

  <Tab title="Hybrid mode">
    **Configuration:**

    ```ini theme={null}
    auto_scan_mode = true
    auto_scan_mode_lookups_without_hotkey = false
    ```

    **How it works:**

    * Background scanning and caching
    * But popup only shows when you press hotkey
    * Combines fast response with manual control

    **Best for:**

    * Users who prefer hotkey control
    * Avoiding accidental popups
    * Dense text where cursor hovers trigger unwanted lookups
  </Tab>
</Tabs>

## Troubleshooting auto scan mode

<AccordionGroup>
  <Accordion title="High CPU usage">
    **Solutions:**

    1. Increase `auto_scan_interval_seconds` to 1.0 or higher
    2. Enable `auto_scan_on_mouse_move`
    3. Reduce scan region size
    4. Switch to a more efficient OCR provider
    5. Check if another application is conflicting

    **Diagnostic:**
    Open Task Manager/Activity Monitor and check if the issue is:

    * Python process (OCR processing)
    * Network activity (remote OCR)
    * GPU usage (ScreenAI models)
  </Accordion>

  <Accordion title="Popup flickering or showing wrong words">
    This occurs when OCR results update faster than you can move the mouse.

    **Solutions:**

    * Increase `auto_scan_interval_seconds` to 0.5-1.0s
    * Enable `auto_scan_on_mouse_move`
    * Use hybrid mode (disable `auto_scan_mode_lookups_without_hotkey`)
  </Accordion>

  <Accordion title="Still feels slow">
    **Possible causes:**

    1. Slow OCR provider (check network latency to Google)
    2. Large scan region
    3. High `auto_scan_interval_seconds` value
    4. Slow internet connection (try enabling compression)

    **Solutions:**

    * Reduce `auto_scan_interval_seconds` to 0.0-0.2
    * Enable Google Lens compression
    * Use a smaller scan region
    * Try a local OCR provider (owocr)
  </Accordion>

  <Accordion title="Auto scan doesn't work">
    **Checklist:**

    * ✅ Verify `auto_scan_mode = true` in config.ini
    * ✅ Check if you're within the selected scan region
    * ✅ If using `auto_scan_on_mouse_move`, try moving the mouse
    * ✅ Ensure OCR provider is properly configured
    * ✅ Look for errors in the terminal/log output
    * ✅ Try restarting meikipop
  </Accordion>
</AccordionGroup>

## Tips for optimal auto scan experience

<Tip>
  **Start conservative, then optimize:** Begin with a 1.0s interval and `auto_scan_on_mouse_move` enabled. If performance is good, gradually reduce the interval for better responsiveness.
</Tip>

<Tip>
  **Match settings to content:** Use tighter intervals (0.0-0.5s) for dynamic content like games, and looser intervals (1.0-2.0s) for static content like manga.
</Tip>

<Tip>
  **Monitor your system:** Keep Task Manager or Activity Monitor open during the first session to see actual resource usage. Adjust settings if usage is higher than expected.
</Tip>

<Tip>
  **Try hybrid mode:** If automatic popups feel overwhelming, enable auto scan but disable `auto_scan_mode_lookups_without_hotkey`. You get the speed benefits with manual control.
</Tip>

<Warning>
  Auto scan mode is experimental and may behave differently depending on your OCR provider, network connection, and system specifications. Fine-tune settings for your specific use case.
</Warning>
