github FuzzyIdeas/Clop v3.0.0

7 hours ago

Audio optimisation

Clop now handles audio files: WAV, FLAC, AIFF, high-bitrate MP3s.

Drop audio files and Clop converts them to AAC, MP3 or Opus at a bitrate you pick. WAV downsizing is also possible if the decoder supports adpcm encoding.

New Audio tab in Settings for watched folders, output format, bitrate and skip rules.

Drop zone at cursor

Tap ⌥ Option to show the drop zone below your cursor. Tap again to dismiss.

No need to drag files across the screen to reach a corner.

Video encoder picker

The old Aggressive / CPU-intensive toggles are now a single picker:

  • Fast, battery efficient, larger file -- hardware encoder, almost no CPU usage
  • Slow, high quality, smaller file -- software encoder, high CPU usage
  • Visually lossless -- best quality, largest files

Collect clipboard results

New setting to collect all clipboard optimisation results instead of always replacing the last one.

Every image you copy gets optimised and added to a list. Paste them all at once into apps that accept multiple files.

There's also a new drag handle that can drag all results at once.

PDF pages as images

Right-click a PDF result to extract its pages as optimised JPEG or PNG files.

Single-page PDFs get a Convert to image option that creates a new draggable result. Multi-page PDFs get Extract pages as images which saves all pages to a folder you choose, with a progress bar on the PDF result.

Send files securely

Share any optimised file over an encrypted peer-to-peer connection. No upload, no server storage, unlimited size.

Click Send file securely from the right-click menu or the side button, and a link is copied to your clipboard. The receiver opens the link in a browser and downloads directly from your Mac over WebRTC. The link stays active until you stop it or quit Clop.

Active sends appear in the menubar menu where you can copy the link again or stop individual sends.

Configurable action buttons

The side buttons on floating and compact results can now be rearranged and customised. Add, remove or reorder actions from Settings.

JPEG XL support

Clop can now read and write JPEG XL files. Drop a JPEG XL file to convert it to a more widely supported format, or export an optimised image as JPEG XL for maximum quality and compression. The resulting file will have the .jxl extension.

AV1 video support

Clop can now read and write AV1 video files. Drop an AV1 file to convert it to a more widely supported format, or convert any format to AV1 for maximum quality and compression.

AV1 does not have its own file extension, I decided to use the MKV container for AV1 encoding to make it easily distinguishable from the more common H.264 and HEVC formats that use MP4. The resulting file will have the .mkv extension.

Pipelines, Automation and more powerful presets

Every action done by Clop is now part of a fully editable pipeline with steps like optimise, convert, downscale etc.

This allows us to always work on the original file and avoid double encoding and losing quality. It also makes backups more resilient to encoder failures.

Automation

The fiddly Shortcuts approach for automation was replaced with a pipeline editor that can do things like:

  • on image arriving in ~/Desktop/lowtechguys
    • -> crop(width: 1600) -> optimise(encoder: lossless)
      • -> copy(to: "~/lowtechguys/img") -> convert(to: webp, location: sameFolder)
  • on video copied to clipboard
    • -> crop(width: 1200) -> optimise(encoder: fast, location: tempFolder)
      • -> copyLinkForSending()
  • on PDF arriving in ~/Downloads
    • if(nameContains: "invoice") -> copy(to: "~/Documents/Invoices/%y-%m-%d_%f")
      • extractPagesAsImages(format: jpeg, quality: medium, location: sameFolder)

Presets

Same idea for presets, they're no longer limited to running Shortcuts. They can run full pipelines which are also saved in a library for reuse in automation if needed.

Making a Preset Zone that converts the dropped image to webp is as simple as writing convert(to: webp).

PDF DPI control

PDF optimisation DPI can now be adjusted:

  • The minus button on a PDF result opens a slider with stops at 300, 250, 200, 150, 100, 72 and 48 DPI
    • Drag to re-run the optimisation at the chosen DPI.
  • Aggressive optimisation uses adaptive DPI by default
    • Clop inspects the image resolutions inside each PDF and picks a DPI that compresses the most without visibly hurting quality
    • Pick a fixed value from the slider or the PDF settings to opt out.
  • Two new settings under PDF let you set the default DPI for normal and aggressive optimisation
    • 300 means no downsampling.
  • Pipelines accept a dpi parameter on the optimise step, e.g. optimise(dpi: 150).

Parallel PDF optimisation

Large PDFs (larger than 150 pages) will be split into PDFs of 100 pages and optimisation will run in parallel on those splits. This should make PDF optimisation 4x faster on large PDFs and fix cases where it might not work on >200 pages.

Hidden results without losing the drop zone

Floating results are now optional in more places, without taking the drop zone with them.

  • Per watched folder, toggle floating results off in the watch paths lists. Optimisation still runs, the result just doesn't pop up
  • Per pipeline, the new hideResult flag lets an automation copy a file, run a Shortcut, or send something silently
  • The drop zone keeps working even when floating results are disabled globally

Ignore clipboard from specific apps

A new Ignored apps list under clipboard settings blocks selected apps from triggering optimisation.

Improvements

  • Re-optimise with encoder... submenu for videos, replacing the old aggressive toggle
  • Dragging files from results now provides the real file path instead of a SwiftUI temp file
  • Add a Reset button for the working directory path
  • Optimised images copied to clipboard no longer trigger a second optimisation pass
  • Settings now use a sidebar list instead of the old top tab bar
  • Fall back to native resizing when vipsthumbnail fails so downscaling no longer errors out

Don't miss a new Clop release

NewReleases is sending notifications on new releases.