FireRedAudio 长音频时间定位 · T8star-Aix
Ask a two-hour recording 'where does X happen' — in plain language
- model
- audio
- 定位结果
- 结构化 JSON
- 思考过程
- 运行报告
A two-hour recording is a wall of sound. You know the thing you need is in there somewhere - the interview where they mention the contract, the section where the guest talks about the lawsuit - but scrubbing audio is the most miserable way to find it. T8_FireRedAudio_LongLocator uses the model's native long-recording understanding to answer the three questions you actually ask: what's the timeline of this recording, what's at this time, and where in the recording does this content live. Plus a structured summary.
What it does
Feed it a model and the audio. Pick a mode (the options map to built-in prompt templates - the default is timeline_summary), optionally add a query, and toggle enable_thinking (default on) to also get the model's reasoning. max_new_tokens (2048) caps the answer length; raise it for big timelines.
Outputs: answer (the human-readable result), structured_json (parsed, machine-readable ranges/timeline - this is the output you feed to EvidenceClips to cut actual audio), reasoning (the thinking trace, if enabled), and a report.
The two query directions matter for real workflows:
- Time → content: "What's happening at 47 minutes?" → the model tells you.
- Content → time: "Where do they discuss the pricing?" → you get timestamps, which the structured JSON carries, and from there
EvidenceClipsturns those timestamps into actual listenable clips.
Where it fits in the pack
This node is the front door to the long-audio story. Locate → cut evidence → listen → maybe repair. EvidenceClips is the natural next hop, and the structured JSON is the shared hand-off format: LocalRepairRange also accepts locator JSON when you know roughly where the flub is but want to select the range by index rather than typing seconds.
Install
Pack install:
cd ComfyUI\custom_nodes
git clone https://github.com/T8mars/comfyui-fireredaudio-T8.git
cd comfyui-fireredaudio-T8
python scripts\setup_runtime.py
Understanding/ASR runs on the main model, so --profile lite is enough if you're only locating - you don't need the RedAE decoder that generation requires. Full model if you're going all the way to dubbing.
Gotchas
Keep expectations calibrated: like the long-ASR path, located timestamps are segment-level approximations from the model's understanding, not word-level ground truth. The structured JSON is a model output - glance at it before you run 20 EvidenceClips off it, because a hallucinated range will happily become a clip of silence. enable_thinking is a real cost: the reasoning trace is useful for debugging why the model landed where it did, but it roughly doubles output tokens on every call. Turn it on when you're skeptical of a result, off when you're batching through a whole archive. And a plain-language query beats a keyword list - the model understands "where do they talk about the deadline" better than "deadline."
Inputs (6)
| Name | Type | Default | Description |
|---|---|---|---|
| model | T8_FIREREDAUDIO_MODEL | — | |
| audio | AUDIO | — | |
| mode | COMBO | timeline_summary | 4 options: timeline_summary, time_to_content, content_to_time, structured_summary |
| query | STRING | — | |
| enable_thinking | BOOLEAN | true | — |
| max_new_tokens | INT | 2048128–10240 | — |
Outputs (4)
| Name | Type | Description |
|---|---|---|
| 定位结果 | STRING | — |
| 结构化 JSON | STRING | — |
| 思考过程 | STRING | — |
| 运行报告 | STRING | — |