FunLibrary Manager - a library for your scripts and videos including toy integration and streaming server

Root Cause:
The macOS app bundle was missing critical platform identifiers in its Info.plist configuration file. Without these, macOS Sequoia identified the app as an iOS app (which is why System Settings showed “Kind: iOS”) and blocked it from launching.

This didn’t surface during our testing because developer tools (Xcode) make macOS more lenient with app validation. On a consumer Mac without Xcode — like yours — the full Gatekeeper checks kick in and enforce the missing platform keys.

Fix: I’ve patched the build process to include the correct macOS platform identifiers. A new build (0.17.3) will be available shortly — this should resolve the issue on your Mac Mini M4.

hopefully works on your system

Ok, this is interesting:

Tried your new version - Negative results.
Tried reinstall command - Negative results.
Tried moving just app and then entire folder to Applications - Negative results.
Tried launching Portable Command - Negative results.
Tried dragging Portable Command into active Terminal while in Downloads folder - SUCCESS.
Tried launching from saved Dock icon - Negative results. (Circle with white line now appears on Dock icon with error message:

“You can’t use this version of the application “FunLibrary Manager.app” with this version of macOS. You have macOS 15.7.4. The application requires macOS 26.0 or later.”

So, launching from the active terminal command, the app appears to function normally. Set up a test library file, ran through scanning functions. All seemed to work. Attempted syncing with Intiface Control from drop down. (Failed). Attempted syncing with TCode / UDP. (ws://localhost:12345) Says device found. Attempted to play file, mpv shows video (plays fine) but no activity with test device.

Not sure if there is a bluetooth issue, a config issue with your app, or some settings in Intiface Central that needs to be changed.

Playing with Intiface Central and MultiFunPlayer on Windows 10/11 work fine.

That is as far as I got so far.

ok, i would like to shift that over to the messaging system if ok for you, i think this will get a lot of back and forth if you are interested in helping me to fix the osx version.

if yes, please generate a diagnostic bundle and send it to me (gofile or pixeldrain)

__

▎ macOS Launch Issue: Fixed in the next build. The app version number (0.17.4.26077) was leaking into macOS system fields, making it think the app requires “macOS 26.0”. The
Terminal workaround bypasses this check. Next build will work normally from Finder/Dock.

▎ Device Connection:
▎ 1. Which backend did you select in the dropdown? If you’re using Intiface Central, make sure to select “Intiface Central” (not TCode/UDP").
▎ 2. The default Intiface Central URL should be ws://127.0.0.1:12345 — is Intiface Central running and showing your device as connected? ▎ 3. Does the video you played have a matching .funscript file? Without a funscript, no device commands are sent. ▎ 4. On macOS, make sure Intiface Central has Bluetooth permission (System Settings → Privacy & Security → Bluetooth).

__

here is a patched plist file you can try:

  1. Right-click “FunLibrary Manager.app” → Show Package Contents
  2. Navigate to Contents/
  3. Replace Info.plist with this patched version
  4. In Terminal run: xattr -cr “/path/to/FunLibrary Manager.app”
  5. App should now launch from Finder/Dock

I was indeed doing something wrong initially. Now the funscript does get loaded properly when streaming to heresphere.

new release is out, links have been updated

patreon release is now windows only
osx and linux build files will be delivered on demand by DM

__

Found an issue in this new version. In List View, it doesn’t automatically reflect what you type in the search bar. In order for it to reflect, you need to go to card view then back to list view. All the other filters like funscript status, category, etc automatically update the results in list view so only that search bar has the issue. No issues as well in card view.

Found another issue with funscripts. I’m using direct connection to intiface central. Pausing the video does not stop the device. It seems the device just keeps repeating the last command it receive and continue to move. Same thing happens when pressing the Pause button of the device sync in the Device section of the internal player.

will check both

next release will include (so far):

New Features

  • Play filtered videos as playlist — A new play button in the filter sidebar lets you play all currently filtered videos as a playlist. Apply any combination of filters (category, rating, VR, funscript status, search text, etc.) and hit play. The button is context-aware: when a saved playlist is selected, it plays that playlist instead. Works with the internal player (with Next/Previous navigation), VLC, MPC-HC, MPV, and custom players.

Bug Fixes

  • Search bar now updates List View in real time — Previously, typing in the search bar only filtered Card View. List View required switching views to reflect search results. Now both views update as you type.
  • Device stops immediately when pausing video — Fixed an issue where connected devices (via Intiface Central) kept moving after pausing the video or pressing the Device Pause button. The device now holds its current position on pause.
1 Like

Is there any way to toggle off the automatic pop up of the heatmap and controls when the mouse moves that I’m missing? If not can you add it to the product roadmap? perhaps make it a click to appear or spacebar?

It makes it very impractical to use a dual monitor set up for other content or searching for a next video. I imagine it would also help with performance issues to not have the video resize unintentionally and often.

no, there is no way atm, the only thing you can do ist to pin it on the right side, but then it stays
i will consider it, thx for the input

Found untranslated word

1 Like

Found another issue. If you did multiple deep updates, Only the first deep update will show in Library. The new videos found on succeeding deep updates won’t appear in Library (it seems they got added in database properly but just not showing in library) and you will need to restart the app for them to appear.
Steps to replicate that always trigger the issue:

  1. In Library, Browse to any folder that contains video not yet in library
  2. Do deep update
  3. Browse again to another folder that contains another video not also in library
  4. Click that reset filters to reload things shown in the library
  5. Sort the folder by Date descending (Z-A) so that new things appear first in library
  6. You will notice that you can see the new video detected by first deep update but not the video detected by second deep update

Oh nevermind. I only noticed now that there is a “Reload” button there that reloads data from database and it solves this issue i found…

next release will include so far:

New Features

  • Play filtered videos as playlist — A new play button in the filter sidebar lets you play all currently filtered videos as a playlist. Apply any combination of filters (category, rating, VR, funscript status, search text, etc.) and hit play. The button is context-aware: when a saved playlist is selected, it plays that playlist instead. Works with the internal player (with Next/Previous navigation), VLC, MPC-HC, MPV, and custom players.
  • Invert button now shows active state — The invert button in the player’s device controls now visually indicates whether inversion is enabled (highlighted border and background). A new “Invert Positions” toggle in Settings > Devices lets you change the default.
  • Fullscreen controls: disable mouse-triggered controls — New setting in Settings > Player to disable showing player controls on mouse movement in fullscreen. When disabled, press C to toggle controls instead. Useful when using external controllers or to avoid accidental control popups.
1 Like

release is out, links have been updated

Anyone else having issues with new release freezing and crashing?

please send a diagnostic bundle, i will check whats going on.
On which action does it freeze?

next release so far (updated #3):

New Features

  • Standalone Server Mode — Run the HereSphere API and Web Remote as a lightweight background service without opening the full app. Perfect for always-on media servers. A system tray icon provides status display, URL copy, log access, and a one-click “Start with OS” toggle. Supports Windows, Linux, and macOS autostart. All settings are shared with the main app — configure everything in the GUI, and the server picks it up automatically.
  • Web Remote auto-connects your device — When you have auto-connect enabled in Settings, the Web Remote now connects to your device automatically as soon as you open the browser. No more manual connect button needed.
  • Hover video previews — Move your mouse over any video card in the library and a short preview clip plays directly in the thumbnail. Works in both Grid View and List View. Previews are generated automatically during Deep Scan, or manually via the Tools menu and right-click context menu.
  • Continue Watching — A new filter in the sidebar shows only videos where you paused playback midway. Pick up right where you left off.
  • Find Similar — Right-click any video and choose “Find Similar” to instantly filter the library to videos that share the same categories, performers, or studios. Results are sorted by relevance.
  • Smart Playlists — Create rule-based playlists that automatically populate based on your criteria: categories, rating, VR/2D, funscript availability, and more. Double-click to edit rules. Smart playlists refresh dynamically and show correct video counts everywhere.
  • Device compatibility check — Select your device (Handy, Keon, Lovense Solace, etc.) in Settings and the library will show which funscripts are too fast for your device. Warning badges appear on video cards, and a new sidebar filter lets you quickly find scripts that need optimization. Run analysis via Tools menu or it happens automatically during Deep Scan.
  • Sortable Funscript Doctor table — Click any column header in the Funscript Doctor to sort results by filename, action count, or speed.

Improvements

  • Redesigned Playlist Manager — Playlists now display as cards with icons and type badges. Smart playlists are visually separated with section headers. Video items show duration and star rating. Play button works for both regular and smart playlists.
  • Lower Handy latency — Reduced network latency when connecting to Handy devices via cloud API. Users should see noticeably faster response times and more accurate sync calibration.

Bug Fixes

  • Handy freezing after timeline seek — Fixed an issue where the Handy device stopped moving completely after clicking on the video timeline. The device now reliably resumes playback after seeking in both the desktop player and the Web Remote.
  • Web Remote device starts moving before video plays — Fixed an issue where the Handy would start moving immediately when connected via the Web Remote, even though no video was playing yet. The device now waits until you actually press play.
  • Thumbnail generation for large VR videos — Fixed an issue where thumbnails failed to generate for long or high-resolution VR videos, especially when stored on network or cloud drives (e.g., RaiDrive, NAS). Seeking is now significantly faster and timeouts have been increased.
2 Likes

I have some relatively long and high-definition VR videos that cannot generate thumbnails. The error code is as follows:

2026-04-05 02:39:26,681 [WARNING] LibraryScanner: Thumbnail Timeout bei Datei: \RaiDrive-cat_wtg\Synology\video\funscript\E站\SIVR-468 A [VR]\SIVR-468 A.mp4

1 Like