AudioReportsV1¶
This workflow compresses large audio or video files to under 25MB while preserving speech clarity, then transcribes them using OpenAI's Whisper model. It's designed to handle media files that are too large for direct transcription by first optimizing them for speech recognition.
Purpose¶
No business context provided yet — add a context.md to enrich this documentation.
This workflow solves the common problem of transcribing large audio or video files that exceed the size limits of transcription services. By compressing files while maintaining speech quality, it enables automated transcription of lengthy recordings, podcasts, or video content.
How It Works¶
- Manual Start: The workflow begins with a manual trigger
- Compression Job: Sends the audio/video file to CloudConvert with specific compression settings optimized for speech
- Wait Period: Waits 7 seconds to allow the compression job to start processing
- Status Check: Polls CloudConvert to check if the compression job is complete
- Loop Until Done: If not finished, waits and checks again until the job completes
- Download: Retrieves the compressed audio file from CloudConvert
- Transcription: Sends the compressed file to OpenAI Whisper for transcription
Workflow Diagram¶
graph TD
A[start workflow] --> B[send compression job to cloudconvert]
B --> C[Wait before checking status]
C --> D[get compression job status]
D --> E{is compression finished ?}
E -->|Yes| F[Download compressed audio]
E -->|No| C
F --> G[Transcribe audio with whisper]
Trigger¶
- Type: Manual Trigger
- Activation: Requires manual execution to start the workflow
Nodes Used¶
| Node Type | Purpose |
|---|---|
| Manual Trigger | Starts the workflow manually |
| HTTP Request | Sends compression job to CloudConvert API |
| Wait | Pauses execution for 7 seconds |
| HTTP Request | Checks compression job status |
| If | Determines if compression is complete |
| HTTP Request | Downloads the compressed audio file |
| OpenAI | Transcribes audio using Whisper model |
| Sticky Note | Documentation and workflow description |
External Services & Credentials Required¶
CloudConvert¶
- Purpose: Audio/video compression service
- Credentials: API Bearer token (currently hardcoded - should be moved to credentials)
- Operations: File compression with speech-optimized settings
OpenAI¶
- Purpose: Audio transcription using Whisper
- Credentials: OpenAI API key (stored as "OpenAI Assistants API")
- Operations: Audio transcription
Environment Variables¶
No environment variables are currently used. The CloudConvert API token is hardcoded in the workflow and should be moved to a secure credential store.
Data Flow¶
Input¶
- Audio or video file URL (currently hardcoded as an example MP3 file)
- File can be in various formats supported by CloudConvert
Processing¶
- Compresses to MP3 format with:
- 32 kbps bitrate
- 22050 Hz frequency
- Mono channel (1 channel)
- Optimized settings preserve speech clarity while minimizing file size
Output¶
- Text transcription of the audio content
- Compressed audio file (temporarily available via CloudConvert)
Error Handling¶
The workflow includes basic error handling through the conditional check for compression completion. However, there are no explicit error handling paths for: - CloudConvert API failures - Network timeouts - Invalid file formats - OpenAI transcription errors
Known Limitations¶
- CloudConvert API token is hardcoded and exposed in the workflow
- Input file URL is hardcoded (needs to be parameterized)
- No error handling for API failures
- Workflow is archived and inactive
- Limited to files that CloudConvert can process
- No validation of input file format or size
Related Workflows¶
This workflow is tagged with "VoiceNote Reports", "YouTube", "Content", and "Video", suggesting it's part of a larger content processing system, but no specific related workflows are referenced.
Setup Instructions¶
-
Import Workflow: Import the JSON into your n8n instance
-
Configure CloudConvert:
- Sign up for CloudConvert API access
- Create a new credential in n8n for CloudConvert
- Replace the hardcoded Bearer token with the credential reference
-
Configure OpenAI:
- Ensure you have OpenAI API access
- Verify the "OpenAI Assistants API" credential is properly configured
-
Customize Input:
- Replace the hardcoded URL in the first HTTP Request node
- Consider adding a webhook or form trigger to accept dynamic file URLs
-
Test:
- Start with a small test file
- Verify compression settings work for your use case
- Check transcription quality
-
Security:
- Move all API tokens to n8n credentials
- Review and update compression settings as needed
- Consider adding error handling nodes
-
Activate: Enable the workflow once configuration is complete