<?xml version="1.0" encoding="UTF-8"?>
<urlset xmlns="http://www.sitemaps.org/schemas/sitemap/0.9" xmlns:image="http://www.google.com/schemas/sitemap-image/1.1">
  <url>
    <loc>https://omr.it.com/blog/</loc>
    <lastmod>2026-05-08T19:01:24+00:00</lastmod>
    <changefreq>daily</changefreq>
    <priority>0.9</priority>
  </url>
  <url>
    <loc>https://omr.it.com/blog/rate-monotonic-scheduling-flutter-frame-budgets/</loc>
    <lastmod>2026-05-08T19:01:24+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/rate-monotonic-scheduling-flutter-frame-budgets.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/branch-predictor-hints-mobile-llm-token-loops/</loc>
    <lastmod>2026-05-08T16:02:28+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/branch-predictor-hints-mobile-llm-token-loops.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/packet-loss-concealment-webrtc-audio-8-percent-drop/</loc>
    <lastmod>2026-05-08T13:01:08+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/packet-loss-concealment-webrtc-audio-8-percent-drop.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/sliding-window-decoders-mobile-ocr-streaming/</loc>
    <lastmod>2026-05-08T10:01:07+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/sliding-window-decoders-mobile-ocr-streaming.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/leader-election-offline-first-p2p-mesh-sync/</loc>
    <lastmod>2026-05-08T07:01:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/leader-election-offline-first-p2p-mesh-sync.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/kalman-filtering-ppg-motion-artifact-removal/</loc>
    <lastmod>2026-05-08T04:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/kalman-filtering-ppg-motion-artifact-removal.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/fixed-point-dsp-hearing-aid-filters-48khz/</loc>
    <lastmod>2026-05-08T01:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/fixed-point-dsp-hearing-aid-filters-48khz.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/biquad-coefficient-warping-iir-filter-stability-mobile-audio/</loc>
    <lastmod>2026-05-07T22:01:23+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/biquad-coefficient-warping-iir-filter-stability-mobile-audio.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/exponential-moving-average-ppg-baseline-wander/</loc>
    <lastmod>2026-05-07T19:01:15+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/exponential-moving-average-ppg-baseline-wander.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/memory-mapped-kv-stores-llm-context-persistence/</loc>
    <lastmod>2026-05-07T16:01:27+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/memory-mapped-kv-stores-llm-context-persistence.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/variance-scaling-mobile-llm-weight-initialization/</loc>
    <lastmod>2026-05-07T13:02:09+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/variance-scaling-mobile-llm-weight-initialization.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/tile-based-inference-mobile-llm-memory-512mb/</loc>
    <lastmod>2026-05-07T10:01:07+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/tile-based-inference-mobile-llm-memory-512mb.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/perceptual-audio-masking-llm-tts-latency/</loc>
    <lastmod>2026-05-07T07:01:14+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/perceptual-audio-masking-llm-tts-latency.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/bloom-filter-deduplication-llm-token-cache/</loc>
    <lastmod>2026-05-07T04:02:01+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/bloom-filter-deduplication-llm-token-cache.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/windowed-sinc-resampling-sub-1ms-audio-latency/</loc>
    <lastmod>2026-05-07T01:01:15+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/windowed-sinc-resampling-sub-1ms-audio-latency.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/zero-downtime-schema-migration-mobile-sqlite/</loc>
    <lastmod>2026-05-06T22:02:17+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/zero-downtime-schema-migration-mobile-sqlite.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/adaptive-bitrate-encoding-p2p-video-low-latency/</loc>
    <lastmod>2026-05-06T19:01:05+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/adaptive-bitrate-encoding-p2p-video-low-latency.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/speculative-execution-mobile-llm-speedup/</loc>
    <lastmod>2026-05-06T16:02:07+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/speculative-execution-mobile-llm-speedup.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/copy-on-write-buffers-flutter-frame-pacing/</loc>
    <lastmod>2026-05-06T13:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/copy-on-write-buffers-flutter-frame-pacing.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/row-level-locking-sqlite-offline-first-sync/</loc>
    <lastmod>2026-05-06T10:01:19+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/row-level-locking-sqlite-offline-first-sync.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/jitter-buffers-webrtc-playout-delay-tuning/</loc>
    <lastmod>2026-05-06T07:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/jitter-buffers-webrtc-playout-delay-tuning.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/fusion-table-joins-sqlite-offline-llm-rag/</loc>
    <lastmod>2026-05-06T04:01:25+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/fusion-table-joins-sqlite-offline-llm-rag.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/polyphase-decimation-mobile-audio-resampling/</loc>
    <lastmod>2026-05-06T01:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/polyphase-decimation-mobile-audio-resampling.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/backpressure-semaphores-llm-streaming-memory/</loc>
    <lastmod>2026-05-05T22:01:09+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/backpressure-semaphores-llm-streaming-memory.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/viewport-aware-llm-chunking-mobile-scroll-performance/</loc>
    <lastmod>2026-05-05T19:01:29+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/viewport-aware-llm-chunking-mobile-scroll-performance.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/circular-buffer-overrun-recovery-real-time-audio/</loc>
    <lastmod>2026-05-05T16:01:30+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/circular-buffer-overrun-recovery-real-time-audio.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/bayer-demosaicing-real-time-mobile-cv-pipeline/</loc>
    <lastmod>2026-05-05T13:01:25+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/bayer-demosaicing-real-time-mobile-cv-pipeline.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/adaptive-chunk-sizing-mobile-llm-streaming/</loc>
    <lastmod>2026-05-05T10:00:59+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/adaptive-chunk-sizing-mobile-llm-streaming.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/subword-regularization-mobile-llm-robustness/</loc>
    <lastmod>2026-05-05T07:02:05+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/subword-regularization-mobile-llm-robustness.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/monotonic-timestamps-llm-streaming-ui-jitter-fix/</loc>
    <lastmod>2026-05-05T04:02:21+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/monotonic-timestamps-llm-streaming-ui-jitter-fix.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/affine-quantization-non-zero-llm-inference/</loc>
    <lastmod>2026-05-05T01:01:16+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/affine-quantization-non-zero-llm-inference.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/differential-privacy-on-device-llm-fine-tuning/</loc>
    <lastmod>2026-05-04T22:01:16+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/differential-privacy-on-device-llm-fine-tuning.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/predictive-prefetch-llm-context-warm-start/</loc>
    <lastmod>2026-05-04T19:02:20+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/predictive-prefetch-llm-context-warm-start.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/hybrid-quantization-4bit-weights-8bit-activations-mobile-llm/</loc>
    <lastmod>2026-05-04T16:01:17+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/hybrid-quantization-4bit-weights-8bit-activations-mobile-llm.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/thermal-throttling-mobile-llm-inference/</loc>
    <lastmod>2026-05-04T13:01:28+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/thermal-throttling-mobile-llm-inference.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/morphological-dilation-touchable-ui-masks/</loc>
    <lastmod>2026-05-04T10:01:17+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/morphological-dilation-touchable-ui-masks.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/cascaded-iir-notch-filters-50hz-mains-rejection/</loc>
    <lastmod>2026-05-04T07:01:09+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/cascaded-iir-notch-filters-50hz-mains-rejection.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/autoregressive-beam-search-mobile-asr-decoding/</loc>
    <lastmod>2026-05-04T04:01:35+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/autoregressive-beam-search-mobile-asr-decoding.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/wavelet-denoising-ppg-daubechies-haar/</loc>
    <lastmod>2026-05-04T01:01:16+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/wavelet-denoising-ppg-daubechies-haar.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/quantized-attention-heads-8bit-mobile-transformers/</loc>
    <lastmod>2026-05-03T22:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/quantized-attention-heads-8bit-mobile-transformers.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/gradient-checkpointing-mobile-ram-savings/</loc>
    <lastmod>2026-05-03T19:01:08+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/gradient-checkpointing-mobile-ram-savings.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/ring-allocator-pools-zero-copy-video-frame-buffers/</loc>
    <lastmod>2026-05-03T16:01:26+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/ring-allocator-pools-zero-copy-video-frame-buffers.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/stateful-audio-graphs-dsp-node-lifetime-management/</loc>
    <lastmod>2026-05-03T13:02:24+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/stateful-audio-graphs-dsp-node-lifetime-management.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/vectorized-simd-convolution-mobile-cv-filters/</loc>
    <lastmod>2026-05-03T10:01:40+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/vectorized-simd-convolution-mobile-cv-filters.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/heap-fragmentation-flutter-arena-allocators/</loc>
    <lastmod>2026-05-03T07:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/heap-fragmentation-flutter-arena-allocators.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/incremental-tokenization-sub-100ms-llm-input/</loc>
    <lastmod>2026-05-03T04:03:14+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/incremental-tokenization-sub-100ms-llm-input.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/shadow-dom-isolation-webview-llm-interfaces/</loc>
    <lastmod>2026-05-03T01:01:03+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/shadow-dom-isolation-webview-llm-interfaces.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/outlier-rejection-ppg-median-of-medians/</loc>
    <lastmod>2026-05-02T22:01:01+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/outlier-rejection-ppg-median-of-medians.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/prefix-caching-mobile-llms-first-token-latency/</loc>
    <lastmod>2026-05-02T19:01:03+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://omr.it.com/blog/persistent-websocket-reconnection-mobile-chaos-engineering/</loc>
    <lastmod>2026-05-02T16:01:13+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/persistent-websocket-reconnection-mobile-chaos-engineering.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/dual-stream-kv-cache-multi-turn-llm-chat-60fps/</loc>
    <lastmod>2026-05-02T13:01:33+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/dual-stream-kv-cache-multi-turn-llm-chat-60fps.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/monotonic-clock-discipline-llm-streaming-uis/</loc>
    <lastmod>2026-05-02T10:02:08+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/monotonic-clock-discipline-llm-streaming-uis.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/lazy-tensor-materialization-mobile-ml-memory/</loc>
    <lastmod>2026-05-02T07:01:17+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/lazy-tensor-materialization-mobile-ml-memory.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/interleaved-decode-multi-llm-orchestration-mobile/</loc>
    <lastmod>2026-05-02T04:01:17+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/interleaved-decode-multi-llm-orchestration-mobile.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/kalman-filtering-ppg-motion-artifacts/</loc>
    <lastmod>2026-05-02T01:02:36+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/kalman-filtering-ppg-motion-artifacts.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/variable-rate-shaping-llm-token-emission-control/</loc>
    <lastmod>2026-05-01T22:01:08+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/variable-rate-shaping-llm-token-emission-control.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/incremental-ocr-streaming-80ms-first-token-latency/</loc>
    <lastmod>2026-05-01T19:02:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/incremental-ocr-streaming-80ms-first-token-latency.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/biquad-cascade-design-iir-filters-ppg/</loc>
    <lastmod>2026-05-01T16:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/biquad-cascade-design-iir-filters-ppg.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/speculative-decoding-mobile-llms-speedup/</loc>
    <lastmod>2026-05-01T13:01:16+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/speculative-decoding-mobile-llms-speedup.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/copy-on-write-state-trees-flutter-memory-scale/</loc>
    <lastmod>2026-05-01T10:00:59+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://omr.it.com/blog/byte-aligned-llm-token-packing-faster-decode/</loc>
    <lastmod>2026-05-01T07:02:52+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/byte-aligned-llm-token-packing-faster-decode.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/exponential-moving-average-ppg-signal-smoothing/</loc>
    <lastmod>2026-05-01T04:01:23+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/exponential-moving-average-ppg-signal-smoothing.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/lock-free-audio-queues-real-time-dsp-threading/</loc>
    <lastmod>2026-05-01T01:01:22+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/lock-free-audio-queues-real-time-dsp-threading.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/memory-mapped-llm-weights-ios-page-fault-latency/</loc>
    <lastmod>2026-04-30T22:01:59+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/memory-mapped-llm-weights-ios-page-fault-latency.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/backpressure-mobile-llm-pipelines-flow-control/</loc>
    <lastmod>2026-04-30T19:01:06+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/backpressure-mobile-llm-pipelines-flow-control.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/huffman-coding-llm-vocabulary-compression/</loc>
    <lastmod>2026-04-30T16:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/huffman-coding-llm-vocabulary-compression.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/circular-buffer-dsp-zero-copy-ring-design/</loc>
    <lastmod>2026-04-30T13:01:08+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/circular-buffer-dsp-zero-copy-ring-design.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/bloom-filter-deduplication-mobile-llm-logs/</loc>
    <lastmod>2026-04-30T10:02:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/bloom-filter-deduplication-mobile-llm-logs.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/batched-sqlite-writes-mobile-throughput/</loc>
    <lastmod>2026-04-30T07:01:07+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/batched-sqlite-writes-mobile-throughput.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/sparse-activation-pruning-mobile-llm-inference/</loc>
    <lastmod>2026-04-30T04:01:13+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/sparse-activation-pruning-mobile-llm-inference.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/partial-model-swapping-hot-reload-llm-layers/</loc>
    <lastmod>2026-04-30T01:01:16+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/partial-model-swapping-hot-reload-llm-layers.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/adaptive-bitrate-mobile-stt-16-8khz-switching/</loc>
    <lastmod>2026-04-29T22:01:13+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/adaptive-bitrate-mobile-stt-16-8khz-switching.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/delta-encoding-llm-responses-bandwidth-savings/</loc>
    <lastmod>2026-04-29T19:01:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/delta-encoding-llm-responses-bandwidth-savings.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/jitter-buffer-tuning-webrtc-voice-20-200ms/</loc>
    <lastmod>2026-04-29T16:01:21+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/jitter-buffer-tuning-webrtc-voice-20-200ms.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/viewport-culling-mobile-llm-token-streams/</loc>
    <lastmod>2026-04-29T13:01:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/viewport-culling-mobile-llm-token-streams.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/fused-fft-dct-mobile-audio-mfcc-optimization/</loc>
    <lastmod>2026-04-29T10:01:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/fused-fft-dct-mobile-audio-mfcc-optimization.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/thermal-throttling-mobile-llms-power-gating/</loc>
    <lastmod>2026-04-29T07:03:04+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/thermal-throttling-mobile-llms-power-gating.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/split-batch-inference-multi-user-llm-mobile/</loc>
    <lastmod>2026-04-29T04:01:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/split-batch-inference-multi-user-llm-mobile.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/packet-loss-concealment-webrtc-fec-vs-red/</loc>
    <lastmod>2026-04-29T01:01:32+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/packet-loss-concealment-webrtc-fec-vs-red.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/multi-model-routing-llm-task-dispatch-under-100ms/</loc>
    <lastmod>2026-04-28T22:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/multi-model-routing-llm-task-dispatch-under-100ms.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/quantized-embedding-tables-70-percent-smaller-nlp-models/</loc>
    <lastmod>2026-04-28T19:01:03+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://omr.it.com/blog/windowed-attention-mobile-llm-context-extension/</loc>
    <lastmod>2026-04-28T16:01:13+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/windowed-attention-mobile-llm-context-extension.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/chroma-subsampling-mobile-ocr-420-luma-only/</loc>
    <lastmod>2026-04-28T13:01:15+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/chroma-subsampling-mobile-ocr-420-luma-only.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/run-length-encoding-llm-kv-cache-compression/</loc>
    <lastmod>2026-04-28T10:01:02+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/run-length-encoding-llm-kv-cache-compression.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/fingerprint-auth-fallback-biometric-timeout-design/</loc>
    <lastmod>2026-04-28T07:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/fingerprint-auth-fallback-biometric-timeout-design.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/bitrate-ladders-mobile-llm-streaming/</loc>
    <lastmod>2026-04-28T04:01:25+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/bitrate-ladders-mobile-llm-streaming.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/hybrid-transcoding-cloud-edge-video-pipelines/</loc>
    <lastmod>2026-04-28T01:01:20+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/hybrid-transcoding-cloud-edge-video-pipelines.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/zero-copy-audio-routing-coreaudio-ml-pipeline/</loc>
    <lastmod>2026-04-27T22:01:14+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/zero-copy-audio-routing-coreaudio-ml-pipeline.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/subword-tokenizer-hot-swapping-multi-locale-apps/</loc>
    <lastmod>2026-04-27T19:01:14+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/subword-tokenizer-hot-swapping-multi-locale-apps.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/simd-convolution-on-device-speech-recognition/</loc>
    <lastmod>2026-04-27T16:01:23+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/simd-convolution-on-device-speech-recognition.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/gradient-checkpointing-mobile-llms-memory-optimization/</loc>
    <lastmod>2026-04-27T13:01:23+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/gradient-checkpointing-mobile-llms-memory-optimization.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/prefix-sharing-multi-turn-llm-chat-mobile/</loc>
    <lastmod>2026-04-27T10:01:22+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/prefix-sharing-multi-turn-llm-chat-mobile.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/sub-nyquist-adc-reconstruction-ppg-signal-recovery/</loc>
    <lastmod>2026-04-27T07:01:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/sub-nyquist-adc-reconstruction-ppg-signal-recovery.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/lossless-audio-resampling-real-time-dsp/</loc>
    <lastmod>2026-04-27T04:01:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/lossless-audio-resampling-real-time-dsp.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/morphological-dilation-mobile-ocr-edge-repair/</loc>
    <lastmod>2026-04-27T01:01:15+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/morphological-dilation-mobile-ocr-edge-repair.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/swiftui-state-diffing-16ms-budget-60fps/</loc>
    <lastmod>2026-04-26T22:02:56+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/swiftui-state-diffing-16ms-budget-60fps.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/predictive-frame-allocation-ios-camera-memory/</loc>
    <lastmod>2026-04-26T19:01:03+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/predictive-frame-allocation-ios-camera-memory.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/deferred-shader-compilation-flutter-jank-fix/</loc>
    <lastmod>2026-04-26T16:00:59+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/deferred-shader-compilation-flutter-jank-fix.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/ambient-light-correction-ppg-sensor-fusion/</loc>
    <lastmod>2026-04-26T13:01:20+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/ambient-light-correction-ppg-sensor-fusion.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/vectorized-ppg-peak-detection-neon-vs-scalar/</loc>
    <lastmod>2026-04-26T10:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/vectorized-ppg-peak-detection-neon-vs-scalar.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/stateful-websocket-reconnect-idempotency-keys/</loc>
    <lastmod>2026-04-26T07:01:03+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/stateful-websocket-reconnect-idempotency-keys.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/cascaded-quantization-mobile-llm-inference/</loc>
    <lastmod>2026-04-26T04:02:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/cascaded-quantization-mobile-llm-inference.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/incremental-vocabulary-pruning-mobile-llm-size/</loc>
    <lastmod>2026-04-26T01:01:16+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/incremental-vocabulary-pruning-mobile-llm-size.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/parallel-decoding-mobile-llms-speculative-execution/</loc>
    <lastmod>2026-04-25T22:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/parallel-decoding-mobile-llms-speculative-execution.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/token-streaming-ui-react-concurrent-rendering/</loc>
    <lastmod>2026-04-25T19:00:58+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/token-streaming-ui-react-concurrent-rendering.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/adaptive-block-size-mobile-onnx-latency-power/</loc>
    <lastmod>2026-04-25T16:01:02+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/adaptive-block-size-mobile-onnx-latency-power.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/interleaved-model-execution-multi-llm-mobile-apps/</loc>
    <lastmod>2026-04-25T13:01:21+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/interleaved-model-execution-multi-llm-mobile-apps.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/memory-mapped-model-weights-ios-llm-loading/</loc>
    <lastmod>2026-04-25T10:01:14+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/memory-mapped-model-weights-ios-llm-loading.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/backpressure-mobile-ml-pipelines-drop-vs-queue/</loc>
    <lastmod>2026-04-25T07:01:01+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/backpressure-mobile-ml-pipelines-drop-vs-queue.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/haptic-feedback-timing-audio-tactile-synchronization/</loc>
    <lastmod>2026-04-25T04:01:09+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/haptic-feedback-timing-audio-tactile-synchronization.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/prompt-caching-mobile-llms-latency-reduction/</loc>
    <lastmod>2026-04-25T01:01:07+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/prompt-caching-mobile-llms-latency-reduction.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/precomputed-audio-impulse-responses-convolution-reverb-mobile/</loc>
    <lastmod>2026-04-24T22:02:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/precomputed-audio-impulse-responses-convolution-reverb-mobile.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/circular-buffer-overrun-recovery-audio-dsp/</loc>
    <lastmod>2026-04-24T19:00:57+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/circular-buffer-overrun-recovery-audio-dsp.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/debounced-ocr-frame-selection-mobile-scanning/</loc>
    <lastmod>2026-04-24T16:01:08+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/debounced-ocr-frame-selection-mobile-scanning.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/double-buffered-camera-preview-metal-rendering/</loc>
    <lastmod>2026-04-24T13:01:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/double-buffered-camera-preview-metal-rendering.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/jitter-buffer-tuning-low-latency-speech-apps/</loc>
    <lastmod>2026-04-24T10:01:16+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/jitter-buffer-tuning-low-latency-speech-apps.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/differential-privacy-on-device-llms/</loc>
    <lastmod>2026-04-24T07:01:13+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/differential-privacy-on-device-llms.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/thermal-throttling-mobile-inference-design/</loc>
    <lastmod>2026-04-24T04:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/thermal-throttling-mobile-inference-design.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/lazy-onnx-session-initialization-mobile-cold-start/</loc>
    <lastmod>2026-04-24T01:01:03+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/lazy-onnx-session-initialization-mobile-cold-start.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/shader-based-ppg-filtering-gpu-dsp-240fps/</loc>
    <lastmod>2026-04-23T22:01:46+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/shader-based-ppg-filtering-gpu-dsp-240fps.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/packet-loss-concealment-voip-fec-vs-plc/</loc>
    <lastmod>2026-04-23T19:01:03+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/packet-loss-concealment-voip-fec-vs-plc.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/epoch-based-conflict-resolution-offline-first-apps/</loc>
    <lastmod>2026-04-23T16:01:21+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/epoch-based-conflict-resolution-offline-first-apps.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/adaptive-sampling-mobile-ocr-battery-accuracy/</loc>
    <lastmod>2026-04-23T13:01:21+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/adaptive-sampling-mobile-ocr-battery-accuracy.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/viewport-aware-image-decoding-mobile-web-core-vitals/</loc>
    <lastmod>2026-04-23T10:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/viewport-aware-image-decoding-mobile-web-core-vitals.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/trie-based-autocomplete-10ms-p99-on-100k-entries/</loc>
    <lastmod>2026-04-23T07:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/trie-based-autocomplete-10ms-p99-on-100k-entries.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/quantized-embedding-layers-4bit-mobile-search/</loc>
    <lastmod>2026-04-23T04:01:04+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/quantized-embedding-layers-4bit-mobile-search.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/ring-buffer-audio-io-lock-free-dsp-swift/</loc>
    <lastmod>2026-04-23T01:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/ring-buffer-audio-io-lock-free-dsp-swift.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/windowing-strategies-real-time-ppg-dsp-tradeoffs/</loc>
    <lastmod>2026-04-22T22:01:23+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/windowing-strategies-real-time-ppg-dsp-tradeoffs.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/foreground-service-lifecycle-android-14-constraints/</loc>
    <lastmod>2026-04-22T19:03:07+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/foreground-service-lifecycle-android-14-constraints.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/continuous-calibration-ppg-glucose-sensing/</loc>
    <lastmod>2026-04-22T16:01:08+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/continuous-calibration-ppg-glucose-sensing.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/bitrate-adaptation-webrtc-pid-controller-design/</loc>
    <lastmod>2026-04-22T13:02:27+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/bitrate-adaptation-webrtc-pid-controller-design.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/shared-memory-texture-buffers-gpu-cpu-zero-copy/</loc>
    <lastmod>2026-04-22T10:01:28+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/shared-memory-texture-buffers-gpu-cpu-zero-copy.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/webrtc-simulcast-bandwidth-ladder-strategy/</loc>
    <lastmod>2026-04-22T07:01:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
  </url>
  <url>
    <loc>https://omr.it.com/blog/dynamic-feature-modules-android-app-bundle-strategy/</loc>
    <lastmod>2026-04-22T04:01:14+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/dynamic-feature-modules-android-app-bundle-strategy.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/incremental-json-parsing-mobile-network-efficiency/</loc>
    <lastmod>2026-04-22T01:02:04+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/incremental-json-parsing-mobile-network-efficiency.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/lazy-widget-hydration-flutter-app-launch-under-800ms/</loc>
    <lastmod>2026-04-21T22:00:55+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/lazy-widget-hydration-flutter-app-launch-under-800ms.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/profiling-flutter-widget-rebuilds-timeline-events/</loc>
    <lastmod>2026-04-21T19:01:07+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/profiling-flutter-widget-rebuilds-timeline-events.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/declarative-camera-pipelines-composing-vision-ai/</loc>
    <lastmod>2026-04-21T16:01:20+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/declarative-camera-pipelines-composing-vision-ai.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/composable-audio-graphs-dsp-pipeline-design/</loc>
    <lastmod>2026-04-21T13:01:15+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/composable-audio-graphs-dsp-pipeline-design.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/stateless-widget-memoization-flutter-rebuild-cost/</loc>
    <lastmod>2026-04-21T10:01:22+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/stateless-widget-memoization-flutter-rebuild-cost.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/bounded-context-sync-multi-tenant-offline-patterns/</loc>
    <lastmod>2026-04-21T07:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/bounded-context-sync-multi-tenant-offline-patterns.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/gesture-conflict-resolution-multi-touch-uis/</loc>
    <lastmod>2026-04-21T04:01:06+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/gesture-conflict-resolution-multi-touch-uis.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/sparse-attention-masks-mobile-transformers/</loc>
    <lastmod>2026-04-21T01:01:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/sparse-attention-masks-mobile-transformers.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/stateful-widget-lifecycle-traps-flutter/</loc>
    <lastmod>2026-04-20T22:01:11+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/stateful-widget-lifecycle-traps-flutter.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/hierarchical-kv-cache-pruning-mobile-llms/</loc>
    <lastmod>2026-04-20T19:01:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/hierarchical-kv-cache-pruning-mobile-llms.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/event-sourcing-mobile-offline-sync-cqrs-lite/</loc>
    <lastmod>2026-04-20T16:01:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/event-sourcing-mobile-offline-sync-cqrs-lite.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/adaptive-quantization-mobile-llms-runtime-precision/</loc>
    <lastmod>2026-04-20T13:01:17+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/adaptive-quantization-mobile-llms-runtime-precision.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/predictive-frame-scheduling-flutter-16ms-budget/</loc>
    <lastmod>2026-04-20T10:01:21+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/predictive-frame-scheduling-flutter-16ms-budget.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/calibrating-ppg-amplitude-multi-sensor-fusion/</loc>
    <lastmod>2026-04-20T07:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/calibrating-ppg-amplitude-multi-sensor-fusion.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/streaming-llm-token-generation-backpressure-handling/</loc>
    <lastmod>2026-04-20T04:02:13+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/streaming-llm-token-generation-backpressure-handling.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/stateful-simd-filters-ppg-baseline-wander-removal/</loc>
    <lastmod>2026-04-20T01:01:08+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/stateful-simd-filters-ppg-baseline-wander-removal.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/isolate-based-concurrency-dart-when-threads-win/</loc>
    <lastmod>2026-04-19T22:01:06+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/isolate-based-concurrency-dart-when-threads-win.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/flutter-platform-channels-zero-copy-native-interop/</loc>
    <lastmod>2026-04-19T19:01:05+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/flutter-platform-channels-zero-copy-native-interop.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/cancellable-task-graphs-mobile-ai-pipelines/</loc>
    <lastmod>2026-04-19T16:01:17+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/cancellable-task-graphs-mobile-ai-pipelines.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/vectorized-ppg-signal-processing-neon-vs-metal/</loc>
    <lastmod>2026-04-19T13:01:07+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/vectorized-ppg-signal-processing-neon-vs-metal.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/building-type-safe-ffi-bridges-rust-dart/</loc>
    <lastmod>2026-04-19T10:01:03+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/building-type-safe-ffi-bridges-rust-dart.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/gesture-recognition-coreml-120fps-pipeline/</loc>
    <lastmod>2026-04-19T07:01:04+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/gesture-recognition-coreml-120fps-pipeline.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/backpressure-mobile-audio-pipelines-dsp/</loc>
    <lastmod>2026-04-19T04:01:14+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/backpressure-mobile-audio-pipelines-dsp.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/bluetooth-le-audio-codec-negotiation-flutter/</loc>
    <lastmod>2026-04-19T01:01:13+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/bluetooth-le-audio-codec-negotiation-flutter.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/differential-privacy-mobile-health-apps/</loc>
    <lastmod>2026-04-18T22:01:10+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/differential-privacy-mobile-health-apps.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/thermal-throttling-on-device-ai-mitigation-strategies/</loc>
    <lastmod>2026-04-18T19:01:14+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/thermal-throttling-on-device-ai-mitigation-strategies.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/memory-mapped-llm-inference-ios-mmap-deep-dive/</loc>
    <lastmod>2026-04-18T16:01:20+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/memory-mapped-llm-inference-ios-mmap-deep-dive.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/incremental-view-compilation-flutter-engine/</loc>
    <lastmod>2026-04-18T13:01:07+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/incremental-view-compilation-flutter-engine.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/adaptive-bitrate-audio-mobile-voip-under-3g/</loc>
    <lastmod>2026-04-18T10:01:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/adaptive-bitrate-audio-mobile-voip-under-3g.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/compiling-llms-mobile-gguf-onnx-pipeline/</loc>
    <lastmod>2026-04-18T07:01:13+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/compiling-llms-mobile-gguf-onnx-pipeline.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/swiftui-previews-dependency-injection-scale/</loc>
    <lastmod>2026-04-18T04:00:59+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/swiftui-previews-dependency-injection-scale.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/type-safe-api-clients-code-generation-practice/</loc>
    <lastmod>2026-04-18T01:01:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/type-safe-api-clients-code-generation-practice.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/onnx-runtime-mobile-quantization-latency-tradeoffs/</loc>
    <lastmod>2026-04-17T22:01:00+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/onnx-runtime-mobile-quantization-latency-tradeoffs.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/swift-concurrency-flutter-async-patterns/</loc>
    <lastmod>2026-04-17T19:01:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/swift-concurrency-flutter-async-patterns.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/flutter-engine-raster-cache-tuning/</loc>
    <lastmod>2026-04-17T16:01:03+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/flutter-engine-raster-cache-tuning.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/speech-recognition-latency-60ms-end-to-end/</loc>
    <lastmod>2026-04-17T14:22:54+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/speech-recognition-latency-60ms-end-to-end.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/offline-first-state-sync-crdts-production/</loc>
    <lastmod>2026-04-17T10:01:18+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/offline-first-state-sync-crdts-production.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/ocr-price-extraction-scale-architecture/</loc>
    <lastmod>2026-04-17T04:01:16+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/ocr-price-extraction-scale-architecture.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/webrtc-p2p-messaging-nat-traversal-production/</loc>
    <lastmod>2026-04-17T01:01:06+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/webrtc-p2p-messaging-nat-traversal-production.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/real-time-audio-dsp-airpods-beyond-transparency/</loc>
    <lastmod>2026-04-16T22:01:12+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/real-time-audio-dsp-airpods-beyond-transparency.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/real-time-ppg-signal-processing-glucose-monitoring-mobile/</loc>
    <lastmod>2026-04-16T20:18:16+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/real-time-ppg-signal-processing-glucose-monitoring-mobile.png</image:loc>
    </image:image>
  </url>
  <url>
    <loc>https://omr.it.com/blog/shipping-on-device-llms-mobile-apps-architecture-tradeoffs/</loc>
    <lastmod>2026-04-16T20:16:56+00:00</lastmod>
    <changefreq>monthly</changefreq>
    <priority>0.7</priority>
    <image:image>
      <image:loc>https://omr.it.com/blog/images/shipping-on-device-llms-mobile-apps-architecture-tradeoffs.png</image:loc>
    </image:image>
  </url>
</urlset>
