Releases: SeventhSG/LoopIt7
Release list
v1.7.3: clean audio on any device, and a low latency mode
Clean, steady audio on every device, and a new low latency mode for hearing yourself while you talk.
About this version
1.7.3 is a patch version: an update to 1.7 that you can install straight over the version you
have. Your pages, presets, cables and options carry over exactly as they are, and nothing needs
setting up again. It is recommended for everyone.
Clean audio on any sound card, headset or interface
- Every output now keeps its own time. LoopIt7 tops each device up on a steady 1 ms beat,
measured against what the device has actually played, and keeps only as much audio waiting as
that particular device needs. Audio interfaces, USB headsets and onboard sound cards all get a
smooth, continuous signal, whatever rhythm their driver works in. - Devices with different clocks stay in step. Every cable measures how fast each side really
runs and follows it with smooth, inaudible resampling. Two devices can disagree by a few
percent and the audio still flows without a break, and without a delay building up over time. - Tight, stable queues. Each cable holds just a few milliseconds of audio and keeps it
there, so what you hear stays close to what is being played.
Low latency mode
A new Low latency switch sits next to Buffer. It talks to your microphone, headset or audio
interface directly, past the Windows mixer, at the buffer size you choose: 144 samples (3 ms) on
a typical USB headset. That is fast enough to monitor your own voice while you talk or sing.
Each box shows exactly what it got, for example "exclusive · 144 samples (3.0 ms)". Devices
used in this mode belong to LoopIt7 while routing runs, so send your voice on to Discord, OBS or
a DAW through the LoopIt7 Cable, which is read at 3 ms in this mode. Switch it off for the
everyday shared mode, where every program can use every device.
Easier to find your way around
- Add input (formerly Add source) and Add output now list every real device on the PC,
from sound card jacks to headsets and speakers, including ones with nothing plugged in yet,
which wait and start the moment they are connected. - Cables and virtual devices such as VoiceMeeter or Wave Link live under Add cable, where
each one is listed once per direction: In to hear what a program plays into it, Out to
send to a program that records from it. - A new ⇄ button on a cable box turns it from an input into an output for the same cable,
and back, right where it sits on the canvas.
Protection for your ears
Every output now keeps an ear on its own level. If the sound keeps building up by itself, the
way it does when another program sends it back round, LoopIt7 dips it for a moment to clear it,
the same as pulling a fader down and up. If it keeps coming back, the output mutes and a notice
explains what to look for.
For the curious
While routing runs, LoopIt7 writes %AppData%\LoopIt7\audio-log.txt every two seconds: what
each device stream got, its timing and the state of every cable. Handy if you ever want to see
exactly how your setup is running.
v1.7.2: inputs and outputs the right way round
Every menu now says which way round a device goes.
Inputs and outputs read the right way round. VoiceMeeter and VB-CABLE name their devices
from their own side: "Voicemeeter Input" and "CABLE Input" are where you play into them, so to
Windows they are playback devices, and "Voicemeeter Out B1" or "CABLE Output" are recording
devices. LoopIt7 listed them where Windows puts them, which made them look like they were in the
wrong menu. Add source now lists Recording devices and Add output lists Playback devices, and
the line under each virtual device says what it does in LoopIt7: "plays into VoiceMeeter",
"records what VoiceMeeter sends out". Loopback taps sit under What an output is playing.
Add cable goes one way per row. Each cable is listed once for each direction, named after the
end the other program picks. Under In, the end a program plays into, such as CABLE Input, adds
a source. Under Out, the end a program records from, such as CABLE Output, adds an output. An
Input can no longer be added as an output, and an output box made from a cable is named after
the end the other program records from.
Includes everything in 1.7.1: setup always offers Virtual Audio Cable, and uninstalling gives a
renamed cable its original name back.
Full Changelog: v1.7.1...v1.7.2
v1.7.1: fixing the installer
Fixes the installer. Some PCs never got the offer to install Virtual Audio Cable.
The cable is always offered. Setup used to guess whether Virtual Audio Cable was already
installed and hide the option if it thought so, and it guessed wrong: a leftover entry in
Programs, or a cable uninstalled long ago, was enough to hide it from PCs with no cable at all.
The option is now always on the tasks page. It starts unticked only when a working Virtual
Audio Cable is already there, so updating LoopIt7 does not open VAC's installer every time.
Your own cable keeps its name. If you already had Virtual Audio Cable and install it again
from setup, LoopIt7 leaves its name alone, since other programs may be using it. The Devices page
can still name it LoopIt7 Cable when you want that. The last page of setup says which happened,
and a cancelled VAC installer is now reported as not installed.
Uninstalling gives the name back. Uninstalling LoopIt7 is meant to put the cable's original
name back, "Line 1" for Virtual Audio Cable, and it did not: the cable stayed called LoopIt7 Cable
after LoopIt7 was gone. That works now. Renaming a cable in LoopIt7 and giving one back from the
Devices page failed for the same reason and are fixed too.
Full Changelog: v1.7.0...v1.7.1
v1.7.0: LoopIt7 Cable, named during setup
Setup now leaves you with a working cable called LoopIt7 Cable, ready before it finishes.
A cable that loads on any PC. Setup offers Virtual Audio Cable Lite by Eugene Muzychenko,
bundled unmodified with its licence, as that licence allows. Its driver is signed by Microsoft, so
Windows loads it on any PC. VAC has no silent install, so setup opens its installer for you to
click through. VAC Lite is for private, non-commercial use.
Named during setup. Setup waits for the cable, names it LoopIt7 Cable, and its last page says
the cable is ready and what it is called. Once the cable is named, setup no longer offers to
install it again. A cable that is reinstalled gets its LoopIt7 name back, and one that replaces an
uninstalled cable is LoopIt7 Cable rather than LoopIt7 Cable 2.
Your default devices stay yours. VAC's installer makes the new cable the default playback
device, which sent everything you played into the cable. Setup now puts back any default that
moved onto it, per role, and leaves every other choice alone.
LoopIt7's cables first. Add cable lists LoopIt7's own cables at the top, under LoopIt7
supported cable, with every other cable below. The Streaming setup picks LoopIt7's own cable
before anyone else's.
Devices another program holds. When VoiceMeeter or another program opens a device in exclusive
mode, a capture card for example, Windows lets nothing else use it. Its box used to say "Windows
refused the device". It now says which program holds it, the tooltip says how to share it (for
VoiceMeeter, pick the device's MME entry), and the box reconnects on its own once the device is
free.
Full Changelog: v1.6.0...v1.7.0
v1.6.0: cables get their own button
Cables are now their own thing in LoopIt7, one click away on every page.
Add cable. A new toolbar button lists every virtual cable on the machine, each with two
actions:
- In puts a source box on the page, fed by whatever a program plays into the cable. A DAW,
a game, a browser: set its output to the cable and it arrives in LoopIt7. - Out puts an output box on the page that plays into the cable. Discord, OBS or a DAW then
picks the cable as its microphone and hears your mix.
LoopIt7 still names the cables it owns after itself, so that is the name those programs show.
Virtual outputs are gone. Add cable replaces Add virtual output: a cable is a real Windows
device other programs can pick by name, which a virtual output never was. Pages you saved with
a virtual output still open with it, so nothing breaks on upgrade.
Two cables from setup. When VB-Audio's A+B pack is bundled, setup installs it instead of
their plain cable: two cables, and far fewer people already have them, so they are almost always
new ones LoopIt7 may name rather than a cable your OBS or Discord already points at. This build
does not bundle it (that needs VB-Audio's permission); without it, Add cable offers to get one.
Also in the repository: LoopIt7 Cable, a first-party virtual audio driver built on
Microsoft's SysVAD sample, round trip tested on real hardware. It is not in this installer:
Windows only loads it once Microsoft has signed it. See driver/README.md.
Full Changelog: v1.5.0...v1.6.0
v1.5.0: multiple patchbay pages
The patchbay used to be one canvas. Anyone keeping a monitoring setup, a
streaming setup and a rehearsal setup separate had to tear one down to build
another, or crowd all three onto one screen.
Pages, the way a spreadsheet has sheets. A row of tabs now sits at the
bottom of the patchbay:
- Click a tab to switch. Each page keeps its own boxes, cables and layout, so
switching is a full swap, not a filter. - Double click a tab to rename it in place.
- The plus adds a blank page. The cross removes one, once there is more than
one to remove: the last page cannot be deleted, the same way a workbook
cannot lose its last sheet.
Switching pages stops routing first rather than carrying a live mix across a
change in topology. Start it again on the page you switched to when you are
ready.
Existing setups are unaffected: a settings file saved before pages existed
migrates its one canvas into "Page 1" the first time this version runs.
Full Changelog: v1.4.0...v1.5.0
v1.4.0
LoopIt7 1.3.0 - A way in from Windows
A way in from Windows
Since 1.2.0 a virtual output has been a box inside LoopIt7: you assigned programs to it and it
summed them. Nothing else on the machine could pick it, because a Windows audio device comes
from a kernel driver and no user mode program can add one.
It still cannot add one. What it can do is borrow a cable.
Press the link button on a box and choose a cable. The other program sends to one end of it,
LoopIt7 listens on the other, and what arrives lands in your box and leaves down its cables as
usual. From Discord's side it is simply a device in the list.
Discord ──▶ LoopIt7 Cable ──▶ [ Stream ] ──┬──▶ Headphones
└──▶ OBS
If the machine has no cable, the picker says so, explains what one is, and offers to fetch it.
A cable that arrives because LoopIt7 asked for it is named after the box it serves, so the name
in Discord's list is the name on your canvas. A cable that was already there keeps the name it
came with: it is written down in somebody's OBS scene and their Discord settings, and it is not
ours to change.
What is new
- Give a virtual output a way in. Bind a box to a cable and other programs can pick it as
their output. The picker lists a cable's two ends as a pair, so nothing is guessed, and says
which end LoopIt7 will listen on. - Naming. A cable LoopIt7 installed reads as
Your box (LoopIt7 · VB-Audio), and its other
end asYour box pickup, so the two cannot be confused in a device list. Whoever made the
driver stays credited. Uninstalling puts every name back. - Cables that were already here are left alone. LoopIt7 only renames one that arrived
because it asked. Same vendor is not enough: installing VB-Audio's plain cable is no licence
to rename their A+B pack or VoiceMeeter's VAIO. - Empty states. A machine with no cable gets an explanation and a way to fix it rather than
an empty list. - The feedback guard covers cables. A cable's recording end patched back to its own playback
end is a loop with only a driver in the way, and Windows reports the two ends as unrelated
devices, so nothing in the graph could see it before. It is refused now, however many boxes
are in between.
Fixed
- One cable can now only be the way in to one box. Pointing a second box at a cable already in
use would have fed the same audio to both. - Removing a virtual output hands its cable back. It used to leave a Windows device still named
after a box that no longer existed. - A playback endpoint was recorded twice when noting which cables were already present, because
it appears both as itself and as the loopback source that taps it.
Notes
Unlimited virtual outputs inside LoopIt7, but one per installed cable can be seen from Windows,
because a cable carries one thing at a time. The free VB-CABLE gives you one.
The download is unsigned. See the README for what signing a driver actually requires and why
the LoopIt7 cable of our own is not finished.
LoopIt7 1.2.0 - Virtual outputs
Virtual outputs
Make an output of your own, name it, and decide what comes out of it.
Press Add virtual output and call it whatever it is for. Discord. Stream. Speakers in
the other room. Then press the + on the box and pick the programs that should play through
it. Each one is captured on its own and taken off its own output, so it comes out of your named
box instead of where Windows was sending it. Pull cables from that box to as many real outputs
as you like.
Discord ─┐
Spotify ─┼──▶ [ Stream ] ──┬──▶ Headphones
Mic ─┘ └──▶ Elgato Virtual Audio ──▶ OBS
One name, one fader, one mute, one meter for the whole thing. Change where all of it goes by
moving one cable instead of reaching into three programs' settings. Virtual outputs can feed
each other, and a chain that would close on itself is refused before it can run away.
It is a box inside LoopIt7, not a Windows device. Nothing else on the machine can pick it
from a dropdown, which is exactly why you assign programs to it here rather than there. An
audio endpoint comes from a kernel mode driver and no user mode program can add one; the README
has the long version.
What is new
- Virtual outputs. A box that is a destination and a source at once. It sums its incoming
cables and sends the result down its own, with its own fader, mute, balance and meter. - Assign a program to one. The + on the box lists what Windows says is playing. Picking
one captures it, patches it in, and mutes it in the volume mixer so you hear it once rather
than twice. Switch the toggle on its box off to hear it in both places again. - Nothing is left muted. The takeover is lifted the moment routing stops, the box is
removed, or LoopIt7 closes. Windows remembers a session mute across restarts, and nobody
should have to go looking for it later. - The feedback guard now walks the graph. A device tapped in loopback that reaches its own
device through any number of virtual outputs is refused, not just the direct case. - A wider self test.
LoopIt7.exe --self-testruns a virtual output on its own for two
seconds and reports how far its clock is from the wall clock and what came through its mixer.
It opens no device and plays nothing. The build fails if that check does not pass.
Upgrading
Run the installer. It finds the copy you already have, says which version it is replacing,
closes it if it is running, installs in the same place, and leaves your patchbay, presets and
options exactly as they were. No need to uninstall anything first.
About the Windows warning
The download is not code signed, so SmartScreen shows a blue "Windows protected your PC"
box the first time you run it. Press More info, then Run anyway.
That is the honest state of things rather than a workaround. Removing the box needs a code
signing certificate from a commercial authority; signing with a certificate made on this
machine would not help, because Windows trusts a publisher it has never heard of no further
than an unsigned file. Verify the build instead of trusting it: this installer was built by
GitHub Actions from the tagged commit in this
repository, in the open.
Requirements
- Windows 11, or Windows 10 build 20348 and later for per application capture
- The .NET 10 desktop runtime, which the installer offers to fetch
Built by SeventhSG · https://github.com/SeventhSG/LoopIt7
LoopIt7 1.1.0
Mixer
- Stereo balance on every source and output. Right click to recentre.
- Solo on sources. Soloing anything drops everything else, and a Clear solo button appears next to the transport while it is active.
- Fader, mute, balance and a peak meter on every box.
Two starting points
An empty patchbay now offers a Streaming setup and a Monitoring setup. Both are built from whatever the machine has, resolved by role at the moment you press them, so they land somewhere sensible on a laptop with one headset and on a rig with an interface.
Virtual cables, explained in the interface
A cable has two ends and Windows never says which belongs to which. LoopIt7 now pairs them and says it plainly: send audio here, then choose "Chat Mix" as the input in the other program. It appears on the destination box and in the Devices list.
Feedback guard
Patching a device's own loopback back into that device is now refused. It is a feedback loop, it reaches full scale in under a second, and it does that in whatever you are wearing.
Accessibility
Automation names on the controls that carry only an icon, so screen readers can reach them.
Download LoopIt7-Setup.exe and run it. Installs for the current user, no admin prompt, and it fetches the .NET 10 desktop runtime if this machine does not have it.