[PR #2044] [MERGED] feat(kurokobo/openai_audio_toolkit): add new openai_audio_toolkit plugin #2045

Closed
opened 2026-02-22 18:15:19 -05:00 by yindo · 0 comments
Owner

📋 Pull Request Information

Original PR: https://github.com/langgenius/dify-plugins/pull/2044
Author: @kurokobo
Created: 2/8/2026
Status: Merged
Merged: 2/8/2026
Merged by: @crazywoola

Base: mainHead: bump-openai_audio_toolkit-plugin-0.0.1


📝 Commits (1)

  • 999bb29 feat(kurokobo/openai_audio_toolkit): add new openai_audio_toolkit plugin

📊 Changes

1 file changed (+0 additions, -0 deletions)

View changed files

kurokobo/openai_audio_toolkit/openai_audio_toolkit.difypkg (+0 -0)

📄 Description

Plugin Submission Form

1. Metadata

2. Submission Type

  • New plugin submission
  • Version update for existing plugin

3. Description

Tools for transcribing audio/video files using OpenAI or Azure OpenAI.

These tools are designed to provide a one-stop solution for transcribing even large files, including video files.
In addition to standard transcription, it also supports the use of speaker diarization models.
You can review the utterances for each speaker, replace the speaker names as needed, and output the results as text or files in various formats.

There are two types of tools: all-in-one tools that auto-split and merge results, and step-by-step tools that run each stage separately.
Note that the all-in-one tools can be slow and may hit timeouts for large/long files; if that happens, use the step-by-step tools.

  • All-in-One Diarize (all-in-one)

    • Transcribes one or more audio/video files with speaker diarization enabled.
    • Outputs formatted text or files when output_format is specified.
    • Supports automatic splitting for large or long files (>25MB or >1500 seconds).
    • If inputs are split, each chunk is transcribed and the results are automatically merged with corrected time offsets and speaker IDs.
  • All-in-One Transcribe (all-in-one)

    • Transcribes one or more audio/video files and outputs plain text only.
    • Supports automatic splitting for large or long files (>25MB or >1500 seconds).
    • If inputs are split, each chunk is transcribed and the results are automatically merged.
  • Split Audio (step-by-step)

    • Splits audio files by size and duration limits.
    • API-native formats within limits are passed through; others are transcoded and/or split.
    • Optional silence detection for more natural splits.
  • Diarize Audio (step-by-step)

    • Transcribes one or more audio files with speaker diarization enabled and outputs concatenated diarized segments as text and JSON.
    • Audio files are processed in the given order.
  • Transcribe Audio (step-by-step)

    • Transcribes one or more audio files and outputs plain text only.
    • Audio files are processed in the given order.
  • Concat Segments (step-by-step)

    • Concatenates multiple diarize-style outputs into a single segments array and outputs text and JSON.
    • Normalizes segment ids and offsets based on cumulative duration.
  • Review Speakers (step-by-step)

    • Groups diarized segments by speaker to review utterances before replace_speaker_name, and outputs text, Markdown (list/collapsible), or JSON (text or file outputs).
  • Replace Speaker Name (step-by-step)

    • Replaces auto-assigned sequential speaker names using user-provided rules and outputs JSON for downstream formatting.
  • Format Segments (step-by-step)

    • Formats diarization segments into text, Markdown, VTT, or SRT (text or file outputs).

Demo Apps:

  • 💾 All-in-One Transcription

    • Transcribe one or more audio or video files using a standard transcription model.
    • Everything is handled in one tool: a simple app design. Depending on file input or Dify instance settings, a timeout may occur.
  • 💾 Step-by-Step Transcription

    • Transcribe one or more audio or video files using a standard transcription model.
    • Each step for each file runs on a separate node: the chance of a timeout per node is low. However, hitting the overall app execution time limit is still possible.
  • 💾 All-in-One Diarization

    • Transcribe one or more audio or video files using a speaker diarization model.
    • Everything is handled in one tool: a simple app design. Depending on file input or Dify instance settings, a timeout may occur.
  • 💾 All-in-One Diarization with Adjusting Speaker Names

    • Transcribe one or more audio or video files using a speaker diarization model.
    • In a chatbot format, you can interactively review and edit speaker names.
  • 💾 Step-by-Step Diarization

    • Transcribe one or more audio or video files using a speaker diarization model.
    • Each step for each file runs on a separate node: the chance of a timeout per node is low. However, hitting the overall app execution time limit is still possible.
  • 💾 Step-by-Step Diarization with Adjusting Speaker Names

    • Transcribe one or more audio or video files using a speaker diarization model.
    • In a chatbot format, you can interactively review and edit speaker names.

4. Checklist

  • I have read and followed the Publish to Dify Marketplace guidelines
  • I have read and comply with the Plugin Developer Agreement
  • I confirm my plugin works properly on both Dify Community Edition and Cloud Version
  • I confirm my plugin has been thoroughly tested for completeness and functionality
  • My plugin brings new value to Dify

5. Documentation Checklist

Please confirm that your plugin README includes all necessary information:

  • Step-by-step setup instructions
  • Detailed usage instructions
  • All required APIs and credentials are clearly listed
  • Connection requirements and configuration details
  • Link to the repository for the plugin source code

6. Privacy Protection Information

Based on Dify Plugin Privacy Protection Guidelines: https://github.com/kurokobo/dify-plugin-collection/blob/main/tools/openai_audio_toolkit/PRIVACY.md

Data Collection

See: https://github.com/kurokobo/dify-plugin-collection/blob/main/tools/openai_audio_toolkit/PRIVACY.md

Privacy Policy

  • I confirm that I have prepared and included a privacy policy in my plugin package based on the Plugin Privacy Protection Guidelines

🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.

## 📋 Pull Request Information **Original PR:** https://github.com/langgenius/dify-plugins/pull/2044 **Author:** [@kurokobo](https://github.com/kurokobo) **Created:** 2/8/2026 **Status:** ✅ Merged **Merged:** 2/8/2026 **Merged by:** [@crazywoola](https://github.com/crazywoola) **Base:** `main` ← **Head:** `bump-openai_audio_toolkit-plugin-0.0.1` --- ### 📝 Commits (1) - [`999bb29`](https://github.com/langgenius/dify-plugins/commit/999bb29dceda51b6fc9f9566d251dfe7dacbab81) feat(kurokobo/openai_audio_toolkit): add new openai_audio_toolkit plugin ### 📊 Changes **1 file changed** (+0 additions, -0 deletions) <details> <summary>View changed files</summary> ➕ `kurokobo/openai_audio_toolkit/openai_audio_toolkit.difypkg` (+0 -0) </details> ### 📄 Description # Plugin Submission Form ## 1. Metadata - **Plugin Author**: kurokobo - **Plugin Name**: OpenAI Audio Toolkit - **Repository URL**: https://github.com/kurokobo/dify-plugin-collection/tree/main/tools/openai_audio_toolkit ## 2. Submission Type - [x] New plugin submission - [ ] Version update for existing plugin ## 3. Description Tools for transcribing audio/video files using OpenAI or Azure OpenAI. These tools are designed to provide a one-stop solution for transcribing even large files, including video files. In addition to standard transcription, it also supports the use of speaker diarization models. You can review the utterances for each speaker, replace the speaker names as needed, and output the results as text or files in various formats. There are two types of tools: **all-in-one tools** that auto-split and merge results, and **step-by-step tools** that run each stage separately. Note that the all-in-one tools can be slow and may hit timeouts for large/long files; if that happens, use the step-by-step tools. - ✅ **All-in-One Diarize** (all-in-one) - Transcribes one or more audio/video files with speaker diarization enabled. - Outputs formatted text or files when `output_format` is specified. - Supports automatic splitting for large or long files (>25MB or >1500 seconds). - If inputs are split, each chunk is transcribed and the results are automatically merged with corrected time offsets and speaker IDs. - ✅ **All-in-One Transcribe** (all-in-one) - Transcribes one or more audio/video files and outputs plain text only. - Supports automatic splitting for large or long files (>25MB or >1500 seconds). - If inputs are split, each chunk is transcribed and the results are automatically merged. - ✅ **Split Audio** (step-by-step) - Splits audio files by size and duration limits. - API-native formats within limits are passed through; others are transcoded and/or split. - Optional silence detection for more natural splits. - ✅ **Diarize Audio** (step-by-step) - Transcribes one or more audio files with speaker diarization enabled and outputs concatenated diarized segments as text and JSON. - Audio files are processed in the given order. - ✅ **Transcribe Audio** (step-by-step) - Transcribes one or more audio files and outputs plain text only. - Audio files are processed in the given order. - ✅ **Concat Segments** (step-by-step) - Concatenates multiple diarize-style outputs into a single segments array and outputs text and JSON. - Normalizes segment ids and offsets based on cumulative duration. - ✅ **Review Speakers** (step-by-step) - Groups diarized segments by speaker to review utterances before `replace_speaker_name`, and outputs text, Markdown (list/collapsible), or JSON (text or file outputs). - ✅ **Replace Speaker Name** (step-by-step) - Replaces auto-assigned sequential speaker names using user-provided rules and outputs JSON for downstream formatting. - ✅ **Format Segments** (step-by-step) - Formats diarization segments into text, Markdown, VTT, or SRT (text or file outputs). Demo Apps: - [💾 **All-in-One Transcription**](https://raw.githubusercontent.com/kurokobo/dify-plugin-collection/refs/heads/main/tools/openai_audio_toolkit/examples/aio-transcription.yaml) - Transcribe one or more audio or video files using a standard transcription model. - Everything is handled in one tool: a simple app design. Depending on file input or Dify instance settings, a timeout may occur. - [💾 **Step-by-Step Transcription**](https://raw.githubusercontent.com/kurokobo/dify-plugin-collection/refs/heads/main/tools/openai_audio_toolkit/examples/sbs-transcription.yaml) - Transcribe one or more audio or video files using a standard transcription model. - Each step for each file runs on a separate node: the chance of a timeout per node is low. However, hitting the overall app execution time limit is still possible. - [💾 **All-in-One Diarization**](https://raw.githubusercontent.com/kurokobo/dify-plugin-collection/refs/heads/main/tools/openai_audio_toolkit/examples/aio-diarization.yaml) - Transcribe one or more audio or video files using a speaker diarization model. - Everything is handled in one tool: a simple app design. Depending on file input or Dify instance settings, a timeout may occur. - [💾 **All-in-One Diarization with Adjusting Speaker Names**](https://raw.githubusercontent.com/kurokobo/dify-plugin-collection/refs/heads/main/tools/openai_audio_toolkit/examples/aio-diarization-speaker-names.yaml) - Transcribe one or more audio or video files using a speaker diarization model. - In a chatbot format, you can interactively review and edit speaker names. - [💾 **Step-by-Step Diarization**](https://raw.githubusercontent.com/kurokobo/dify-plugin-collection/refs/heads/main/tools/openai_audio_toolkit/examples/sbs-diarization.yaml) - Transcribe one or more audio or video files using a speaker diarization model. - Each step for each file runs on a separate node: the chance of a timeout per node is low. However, hitting the overall app execution time limit is still possible. - [💾 **Step-by-Step Diarization with Adjusting Speaker Names**](https://raw.githubusercontent.com/kurokobo/dify-plugin-collection/refs/heads/main/tools/openai_audio_toolkit/examples/sbs-diarization-speaker-names.yaml) - Transcribe one or more audio or video files using a speaker diarization model. - In a chatbot format, you can interactively review and edit speaker names. ## 4. Checklist - [x] I have read and followed the Publish to Dify Marketplace guidelines - [x] I have read and comply with the Plugin Developer Agreement - [x] I confirm my plugin works properly on both Dify Community Edition and Cloud Version - [x] I confirm my plugin has been thoroughly tested for completeness and functionality - [x] My plugin brings new value to Dify ## 5. Documentation Checklist Please confirm that your plugin README includes all necessary information: - [x] Step-by-step setup instructions - [x] Detailed usage instructions - [x] All required APIs and credentials are clearly listed - [x] Connection requirements and configuration details - [x] Link to the repository for the plugin source code ## 6. Privacy Protection Information Based on Dify Plugin Privacy Protection [Guidelines](https://docs.dify.ai/plugins/publish-plugins/publish-to-dify-marketplace/plugin-privacy-protection-guidelines): https://github.com/kurokobo/dify-plugin-collection/blob/main/tools/openai_audio_toolkit/PRIVACY.md ### Data Collection See: https://github.com/kurokobo/dify-plugin-collection/blob/main/tools/openai_audio_toolkit/PRIVACY.md ### Privacy Policy - [x] I confirm that I have prepared and included a privacy policy in my plugin package based on the Plugin Privacy Protection Guidelines --- <sub>🔄 This issue represents a GitHub Pull Request. It cannot be merged through Gitea due to API limitations.</sub>
yindo added the pull-request label 2026-02-22 18:15:19 -05:00
yindo closed this issue 2026-02-22 18:15:20 -05:00
Sign in to join this conversation.
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: langgenius/dify-plugins#2045