Files
videobeaux/docs/_site/programs/effects/crossmosh.html
2025-12-07 22:04:44 -05:00

197 lines
9.4 KiB
HTML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<!DOCTYPE html>
<html lang="en-US">
<head>
<meta charset="UTF-8">
<meta http-equiv="X-UA-Compatible" content="IE=edge">
<meta name="viewport" content="width=device-width, initial-scale=1">
<!-- Begin Jekyll SEO tag v2.8.0 -->
<title>crossmosh</title>
<meta name="generator" content="Jekyll v3.10.0" />
<meta property="og:title" content="crossmosh" />
<meta property="og:locale" content="en_US" />
<meta name="description" content="The friendly multilateral video toolkit built for artists by artists." />
<meta property="og:description" content="The friendly multilateral video toolkit built for artists by artists." />
<link rel="canonical" href="http://localhost:4000/videobeaux/programs/effects/crossmosh.html" />
<meta property="og:url" content="http://localhost:4000/videobeaux/programs/effects/crossmosh.html" />
<meta property="og:type" content="website" />
<meta name="twitter:card" content="summary" />
<meta property="twitter:title" content="crossmosh" />
<script type="application/ld+json">
{"@context":"https://schema.org","@type":"WebPage","description":"The friendly multilateral video toolkit built for artists by artists.","headline":"crossmosh","publisher":{"@type":"Organization","logo":{"@type":"ImageObject","url":"http://localhost:4000/videobeaux/assets/img/videobeaux.png"}},"url":"http://localhost:4000/videobeaux/programs/effects/crossmosh.html"}</script>
<!-- End Jekyll SEO tag -->
<link rel="stylesheet" href="/videobeaux/assets/css/style.css?v=5e23701ed3967d38bab12937d79f95fae74b2a53">
<!--[if lt IE 9]>
<script src="https://cdnjs.cloudflare.com/ajax/libs/html5shiv/3.7.3/html5shiv.min.js"></script>
<![endif]-->
<!-- start custom head snippets, customize with your own _includes/head-custom.html file -->
<!-- Setup Google Analytics -->
<!-- You can set your favicon here -->
<!-- link rel="shortcut icon" type="image/x-icon" href="/videobeaux/favicon.ico" -->
<!-- end custom head snippets -->
</head>
<body>
<div class="wrapper">
<header>
<h1><a href="http://localhost:4000/videobeaux/">videobeaux</a></h1>
<img src="/videobeaux/assets/img/videobeaux.png" alt="Logo" />
<p>The friendly multilateral video toolkit built for artists by artists.</p>
<p class="view"><a href="https://github.com/schwwaaa/videobeaux">View the Project on GitHub <small>schwwaaa/videobeaux</small></a></p>
</header>
<section>
<h1 id="crossmosh">crossmosh</h1>
<h2 id="description">Description</h2>
<p>A controlled datamoshing engine that manipulates motion vectors, frame ordering, and predictive compression structures to create stylized glitch-drift distortions.<br />
Unlike chaotic or accidental datamoshing, <code class="language-plaintext highlighter-rouge">crossmosh</code> provides intentional control over how macroblocks bleed, drift, smear, or desynchronize across frames.</p>
<h2 id="purpose">Purpose</h2>
<p><code class="language-plaintext highlighter-rouge">crossmosh</code> is designed for artists who want to:</p>
<ul>
<li>create predictable or semi-controlled datamosh effects,</li>
<li>push temporal motion-vector corruption while avoiding full-stream collapse,</li>
<li>blend A/B sources for hybrid glitch states,</li>
<li>generate drifting smear artifacts characteristic of broken P-frames and missing I-frames,</li>
<li>build glitch art sequences without external tools or hand-edited GOP destruction.</li>
</ul>
<p>It is ideal for music videos, experimental film, VJ loops, and any stylized glitch aesthetic.</p>
<h2 id="how-it-works">How It Works</h2>
<ol>
<li><strong>Input Streams</strong><br />
Two sources may be involved:
<ul>
<li><strong>primary input</strong> via <code class="language-plaintext highlighter-rouge">-i</code></li>
<li><strong>secondary / cross-input</strong> via <code class="language-plaintext highlighter-rouge">--b_input</code></li>
</ul>
</li>
<li><strong>Predictive Frame Manipulation</strong><br />
The module alters GOP structure, destroys or delays keyframes, or selectively reuses motion vectors from one stream to infect the other.</li>
<li><strong>Mode-Based Behavior</strong><br />
<code class="language-plaintext highlighter-rouge">--mode</code> defines the style of the mosh:
<ul>
<li>smearing,</li>
<li>drift,</li>
<li>cross-pollination,</li>
<li>decay-driven glitch propagation.</li>
</ul>
</li>
<li><strong>Decay &amp; Blending</strong>
<ul>
<li><code class="language-plaintext highlighter-rouge">--decay</code> controls how long corrupted vectors persist.</li>
<li><code class="language-plaintext highlighter-rouge">--blend</code> controls how heavily A and B frames influence each other.</li>
</ul>
</li>
<li><strong>GOP / Codec Control</strong><br />
The choice of codec and GOP size directly impacts artifact shape and stability.</li>
</ol>
<h2 id="program-template">Program Template</h2>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>videobeaux -P crossmosh \
-i input.mp4 \
-o output.mp4 \
--b_input VALUE \
--outfile VALUE \
--codec VALUE \
--qscale VALUE \
--gop VALUE \
--keep_temp VALUE \
--mode VALUE \
--frames VALUE \
--decay VALUE \
--blend VALUE
</code></pre></div></div>
<h2 id="arguments">Arguments</h2>
<ul>
<li><strong>b_input</strong> — Optional secondary video input used for cross-mapping and motion-vector grafting.</li>
<li><strong>outfile</strong> — Output filename created during temporary processing.</li>
<li><strong>codec</strong> — Codec used for mosh-friendly transcoding (e.g., MPEG-4, H.264 with low keyframe frequency).</li>
<li><strong>qscale</strong> — Quantizer scale value; lower = cleaner blocks, higher = more chaotic degradation.</li>
<li><strong>gop</strong> — Keyframe interval. Long GOPs enable long drifting smears; short GOPs reset more frequently.</li>
<li><strong>keep_temp</strong> — If enabled, preserves intermediate files for debugging or reuse.</li>
<li><strong>mode</strong> — Defines the moshing behavior (drift, smear, cross-infect, or other available styles).</li>
<li><strong>frames</strong> — Number of frames to process or extend during the mosh.</li>
<li><strong>decay</strong> — Controls how motion-vector corruption fades or persists.</li>
<li><strong>blend</strong> — Controls mixing strength between A and B inputs during crossmosh operations.</li>
</ul>
<h2 id="real-world-example">Real World Example</h2>
<div class="language-plaintext highlighter-rouge"><div class="highlight"><pre class="highlight"><code>videobeaux -P crossmosh \
-i myvideo.mp4 \
-o crossmosh_styled.mp4 \
--b_input EXAMPLE \
--outfile EXAMPLE \
--codec EXAMPLE \
--qscale EXAMPLE \
--gop EXAMPLE \
--keep_temp EXAMPLE \
--mode EXAMPLE \
--frames EXAMPLE \
--decay EXAMPLE \
--blend EXAMPLE
</code></pre></div></div>
<h2 id="program-output">Program Output</h2>
<p><em>Program output video not yet linked.</em></p>
<h2 id="technical-notes">Technical Notes</h2>
<ul>
<li>Datamoshing behavior is extremely sensitive to codec and GOP selection — MPEG-4 with long GOPs typically produces more dramatic artifacts.</li>
<li>If using a second input (<code class="language-plaintext highlighter-rouge">--b_input</code>), mismatched resolutions may create unpredictable smear patterns.</li>
<li><code class="language-plaintext highlighter-rouge">qscale</code> strongly influences macroblock deformation and drift persistence.</li>
<li>Temporary files may be required for multi-stage moshing; use <code class="language-plaintext highlighter-rouge">--keep_temp</code> to preserve them for debugging.</li>
<li>Excessive decay or extreme blending may cause full frame collapse — this can be desirable depending on your aesthetic.</li>
</ul>
<h2 id="recommended-usage">Recommended Usage</h2>
<ul>
<li>Music videos requiring controlled glitch cascades.</li>
<li>VJ loops and live visual sets that leverage drifting corruption.</li>
<li>Collage work blending two unrelated videos via motion-vector infection.</li>
<li>Experimental films exploring digital decay, compression failure, and structural distortion.</li>
</ul>
<h2 id="quality-tips">Quality Tips</h2>
<ul>
<li>Lower <code class="language-plaintext highlighter-rouge">qscale</code> (e.g., 25) for smoother block smearing; higher (1020) for chaotic chunking.</li>
<li>Longer GOPs (100300+) produce dramatic streak-based artifacts across many frames.</li>
<li>Use <code class="language-plaintext highlighter-rouge">blend</code> modestly when incorporating a B-source; too high can obliterate A-source contours.</li>
<li>For highly controllable decay, adjust both <code class="language-plaintext highlighter-rouge">frames</code> and <code class="language-plaintext highlighter-rouge">decay</code> interactively while testing small clips.</li>
<li>For sharp outlines within a glitch, pre-process with <code class="language-plaintext highlighter-rouge">gamma_fix</code> or <code class="language-plaintext highlighter-rouge">lut_apply</code> before moshing.</li>
</ul>
</section>
<footer>
<p>This project is maintained by <a href="https://github.com/schwwaaa">schwwaaa</a></p>
<p><small>Hosted on GitHub Pages &mdash; Theme by <a href="https://github.com/orderedlist">orderedlist</a></small></p>
</footer>
</div>
<script src="/videobeaux/assets/js/scale.fix.js"></script>
</body>
</html>