Metadata

Metadata introspection for the Demucs plugin used by cjm-ctl to generate the registration manifest.

get_plugin_metadata


def get_plugin_metadata(
    
)->Dict: # Plugin metadata for manifest generation

Return metadata required to register this plugin with the PluginManager.

Testing

import json

metadata = get_plugin_metadata()
print(json.dumps(metadata, indent=2))
{
  "name": "cjm-media-plugin-demucs",
  "version": "0.0.8",
  "description": "Demucs v4 audio source separation (vocals extraction) for isolating speech from background music/noise.",
  "type": "media-processing",
  "category": "media",
  "interface": "cjm_media_plugin_system.processing_interface.MediaProcessingPlugin",
  "module": "cjm_media_plugin_demucs.plugin",
  "class": "DemucsProcessingPlugin",
  "python_path": "/opt/hostedtoolcache/Python/3.12.13/x64/bin/python",
  "db_path": "/opt/hostedtoolcache/Python/3.12.13/x64/data/demucs_jobs.db",
  "resources": {
    "requires_gpu": true
  },
  "env_vars": {}
}