Skip to content

FEATURE - Filesystem plugin browser#198

Open
richardssam wants to merge 67 commits intoAcademySoftwareFoundation:mainfrom
richardssam:filesystem_plugin
Open

FEATURE - Filesystem plugin browser#198
richardssam wants to merge 67 commits intoAcademySoftwareFoundation:mainfrom
richardssam:filesystem_plugin

Conversation

@richardssam
Copy link
Contributor

Filesystem plugin browser

A high-performance, multi-threaded filesystem browser for xStudio, designed to handle large directories and image sequences efficiently.

Features

  • Fast Multi-threaded Scanning: Uses a thread pool and BFS algorithm to scan directories quickly without freezing the UI.
  • Image Sequence Detection: Automatically detects and groups file sequences (e.g., shot_001.1001.exr -> shot_001.####.exr). Supports exclusion of specific extensions (e.g., .mov, .mp4) via configuration.
  • Smart Filtering:
    • Text Filter: Supports "AND" logic (space-separated terms). E.g., comp exr finds files matchings both "comp" and "exr".
    • Time Filter: Filter by modification time (Last 1 day, 1 week, etc.).
    • Version Filter: Filter to show only the latest version or latest 2 versions of a shot.
  • Navigation:
    • Native Directory Picker integration.
    • Path completion/suggestions.
    • History tracking (via sticky attributes).
  • Playback Integration:
    • Double-Click: Loads media and immediately starts playback using the playlist's playhead logic.
    • Context Menu:
      • Replace: Replaces the currently viewed media with the selected item.
      • Compare with: Loads the selected item and sets up an A/B comparison with the current media.

Usage

  1. Open the Browser:
    • Go to View -> Panels -> Filesystem Browser.
    • Or use the hotkey 'B'.
  2. Navigation:
    • Enter a path in the text field or click the folder icon to browse.
  3. Loading Media:
    • Double-click a file/sequence to load it into the current or new playlist.
    • Right-click for advanced actions (Replace, Compare).
image

kenmcgaugh and others added 30 commits November 26, 2025 06:40
Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
…annotation_serialiser.cpp.

Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
…List, and Timecode.

Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
…ed as MS_MISSING. This allows for media_sources to be provided by http(s).

Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
…ore file exists in a thumbnail cache directory.

Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
…sage.

Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
…data value through xstudio's file-path remapping mechanism. Likewise, all the search paths within the config are also passed through file path remapping.

Note that any path set via the OCIO environment variable is left as-is.

Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
…ur management metadata. We use this to set the working_space to "raw" for media we want to remain unmanaged but still allow for the global view to be set without causing error messages.

Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
… Ctrl+1 through Ctrl+9 (linux) and each select the the corresponding view for the current display. Under MacOS these are Cmd+1 through Cmd+9.

Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
Signed-off-by: Ken McGaugh <ken@mcgaugh.co.uk>
Signed-off-by: Thomas Manceau <manceau.thomas19@gmail.com>
Signed-off-by: Thomas Manceau <manceau.thomas19@gmail.com>
Updated version of openimageio from 2.5.19.1 to 2.5.16.0#1.

Signed-off-by: Thomas Manceau <manceau.thomas19@gmail.com>
…ure_remove_media_sources

Add ability to programatically remove media_source's from media items.
…_fixes_additions

Miscellaneous fixes and additions
…_additions

OCIO view hotkeys, working_space, and file-path remapping
…ure_disable_http_ssl_verify

Allow for optionally disabling SSL verification.
tedwaine and others added 26 commits February 2, 2026 11:28
Signed-off-by: Ted Waine <ted.waine@gmail.com>
…rt_timeline_uri

Added support for specifying timelines to import via custom URI
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
…has been obsolete for a while.

Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Better filtering, got progress bar working, and version and date filtering.

Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Also added a separate timing test where you can specify an output directory, not really for unit testing, but good for testing against real directories.

Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
The directory view allows a more obvious browsing of the tree. For the very top of the directory tree we dont auto-scan for media, once you get down to 4 levels it will start scanning.
We have also made a config.json file to store configurations of things like the auto_scan_threashold, along with adding a list of folders that need to be ignored.

Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
   * Fixed auto-complete
   * Tree view opens to node when path is entered in path dialog.
   * Added a refresh button
   * Tree view now persistent, with a nicer sidebar label.
   * Smart scan button now visible.

Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
…lly load it into the player

   * double click will load it into your target
   * Cursor keys will allow you to move through the results loading as you go (left right for icon view, up down for list view)
   * Enter will do the same as double click.
   * Preview playlist will be deleted on Enter.

Signed-off-by: Sam.Richards@taurich.org <Sam.Richards@taurich.org>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

5 participants