Haitham Assoli

← All projects · SHEET A-125

Mubah

Turn any video into a permissible copy, on your own Mac.

Title block
RoleSoloYear2026
StatusLiveRoomAI
Built withPython · uv · ffmpeg · yt-dlp · Apple Silicon / MPS · Stem separation · Pose & person detection
Where to find it

1 · General notes

What it is, and why it exists.

A local-only Mac tool that removes music and blurs women full-body in a video, from a file or a URL. Nothing leaves the machine and working files are purged when the job finishes. Ships with an honest account of what it cannot do.

Mubah is the desktop counterpart to Naqi: same intent, different constraints. A Mac has more memory and a real GPU, so it can run heavier models and take a whole file rather than working around a phone's limits.

It runs from a CLI with fast, balanced and thorough presets, accepts local files or anything yt-dlp can fetch, and can output audio only. Peak measured memory use is around 2.1 GB, so 8 GB of RAM is enough.

The README states the limitations before the features: music removal keeps all vocals, so songs come out a-cappella; the detectors are unreliable on animation; and the filtering is automated with a fail-safe bias, so output should be verified before it is relied on.

2 · Challenges

DETAIL 1

Removing music without removing singing

The problem

Stem separation splits audio into vocals, drums, bass and other. Dropping everything but vocals removes the instruments, but a sung vocal is still a vocal, so songs survive as a-cappella rather than disappearing.

As built

Rather than pretend otherwise, this is documented as a known limitation at the top of the README with muting sung vocals on the roadmap. Overstating what a stem separator can do would have been the easier and worse option.

DETAIL 2

An uncertain detection has to fail one way

The problem

Detectors return confidence, not truth. Treating anything below the threshold as clear lets things through; treating everything above it as a person blurs men who are not the target.

As built

The bias is set explicitly toward censoring: uncertain people get blurred, and an occasionally blurred man is the accepted cost. Choosing the failure direction on purpose is the whole design decision.

3 · Results

  1. 3.1Fully local processing on Apple Silicon; working files purged after each job.
  2. 3.2CLI with fast / balanced / thorough presets, file or URL input.
  3. 3.3Limitations documented up front rather than discovered by users.

Next sheet

Ghadd →

System-wide on-device image filtering for Android.