Skip to content

v2.53.0

Choose a tag to compare

@samuelgursky samuelgursky released this 18 Jun 12:10

v2.53.0

Audio-sync reliability fix plus a configurable Media Pool inventory walk.

Fixed

  • AutoSyncAudio no longer fails silently on human-readable settings (issue #70).
    safe_auto_sync_audio / media_pool.auto_sync_audio previously returned
    success: false with nothing linked and no error when callers passed settings
    like {"method": "waveform"}. The normalizer recognized syncBy/mode but not
    method, and it forwarded every unrecognized key (group_id,
    primary_clip_id, …) straight into MediaPool.AutoSyncAudio, which silently
    rejects the whole call when it sees a key it doesn't understand.
    • method is now accepted as an alias for the sync mode alongside
      syncBy/sync_by/mode/syncMode.
    • Unrecognized keys are dropped instead of forwarded, and echoed back in a new
      ignored_settings field so a rejection is no longer invisible.
    • The raw media_pool.auto_sync_audio action now routes settings through the
      same live AUDIO_SYNC_* enum resolution as the safe wrapper.

Added

  • media_analysis.inventory_exclude_bins — comma-separated folder names to
    skip entirely (recursively) during the Media Pool inventory walk. Empty by
    default, so every folder is indexed unless you opt out.
  • media_analysis.inventory_limit — maximum clips indexed per walk,
    configurable from the control panel and setup. The hard ceiling is raised
    from 2000 to 10000.

Credits

  • Inventory controls adapted from PR #69 by @rgxdev. The default was changed to
    exclude nothing — the original PR defaulted to excluding an assets bin, which
    would have silently stopped indexing existing assets folders on upgrade.

Validation

  • Full offline unit/static suite green (1217 tests; new coverage for the method
    alias, ignored-key dropping, and the inventory exclusion walk).
  • Live-validated against DaVinci Resolve Studio 21.0.0: the real resolve handle
    exposes the AUDIO_SYNC_* constants and the issue-#70 payload resolves to live
    enum keys with junk keys dropped (tests/live_auto_sync_settings_check.py).
    The actual link operation depends on media content and is reported via existing
    read-back verification; settings translation — the cause of #70 — is verified.