From 263f6fd41f8979218649fd79c04255842df41344 Mon Sep 17 00:00:00 2001 From: skier233 <39396856+skier233@users.noreply.github.com> Date: Thu, 4 Jul 2024 04:02:30 -0400 Subject: [PATCH] [AI Tagger] Add path mutation (and by extension docker) support (#353) * add path mutation (and by extension docker) support * update version --- plugins/AITagger/ai_tagger.py | 11 +++++++++++ plugins/AITagger/ai_tagger.yml | 2 +- plugins/AITagger/config.py | 6 +++++- 3 files changed, 17 insertions(+), 2 deletions(-) diff --git a/plugins/AITagger/ai_tagger.py b/plugins/AITagger/ai_tagger.py index 8d06e60..e8d966b 100644 --- a/plugins/AITagger/ai_tagger.py +++ b/plugins/AITagger/ai_tagger.py @@ -129,6 +129,13 @@ async def tag_scenes(): async def __tag_images(images): async with semaphore: imagePaths, imageIds, temp_files = media_handler.get_image_paths_and_ids(images) + mutated_image_paths = [] + for path in imagePaths: + mutated_path = path + for key, value in config.path_mutation.items(): + mutated_path = mutated_path.replace(key, value) + mutated_image_paths.append(mutated_path) + imagePaths = mutated_image_paths try: server_result = await ai_server.process_images_async(imagePaths) if server_result is None: @@ -175,6 +182,10 @@ async def __tag_images(images): async def __tag_scene(scene): async with semaphore: scenePath = scene['files'][0]['path'] + mutated_path = scenePath + for key, value in config.path_mutation.items(): + mutated_path = mutated_path.replace(key, value) + scenePath = mutated_path sceneId = scene['id'] log.debug("files result:" + str(scene['files'][0])) phash = scene['files'][0].get('fingerprint', None) diff --git a/plugins/AITagger/ai_tagger.yml b/plugins/AITagger/ai_tagger.yml index d422660..84bc850 100644 --- a/plugins/AITagger/ai_tagger.yml +++ b/plugins/AITagger/ai_tagger.yml @@ -1,6 +1,6 @@ name: AI Tagger description: Tag videos and Images with Locally hosted AI using Skier's Patreon AI models -version: 1.3 +version: 1.4 url: https://github.com/stashapp/CommunityScripts/tree/main/plugins/AITagger exec: - python diff --git a/plugins/AITagger/config.py b/plugins/AITagger/config.py index 1cd4d1c..3f504e4 100644 --- a/plugins/AITagger/config.py +++ b/plugins/AITagger/config.py @@ -13,4 +13,8 @@ ai_base_tag_name = "AI" tagme_tag_name = "AI_TagMe" updateme_tag_name = "AI_UpdateMe" aitagged_tag_name = "AI_Tagged" -aierrored_tag_name = "AI_Errored" \ No newline at end of file +aierrored_tag_name = "AI_Errored" + +# Example for mutating paths +# path_mutation = {"E:": "F:", "G:": "D:"} +path_mutation = {}