🌐 AIIA Web Export (Interactive)
Turn your generated podcast into a clickable webpage
- audio
- html_file_path
You generated a two-person podcast, synced the subtitles, maybe even scripted some slides to go with it. Sending someone a folder of audio files plus a .srt and telling them to "figure it out" is the low-rent ending to all that work. AIIA Web Export is the finish line: it takes the final audio and segment data and produces a single self-contained interactive HTML page - audio player, subtitles that scroll in time, and a visual panel that swaps images or embeds iframes on cue.
It's built for the pack's interactive-teaching workflow: Script Parser tags lines with (Visual: url) markers, Segment Merge stitches those tags back onto the TTS timeline, and this node renders the result. But you can feed it any segments_info JSON - including one you've assembled by hand - and get a clean player out the other side.
How it works
Under the hood it writes audio.wav and the generated HTML into a subfolder named after your filename_prefix inside ComfyUI's output/ directory, then returns the path. The page itself is plain HTML+JS: a progress-tracking player, a subtitle area, and a visual container. As playback time crosses each segment's start, the page shows that segment's text and - if the segment carries a visual field - swaps the visual panel to the corresponding URL. Two layout templates handle the arrangement.
The inputs that matter
Only four, and the first two are obvious:
- audio - the AUDIO tensor from your TTS or dialogue node.
- segments_info - the JSON string, force-input (wire it from a Segment Merge node or anywhere else in the pack that emits
segments_info). - filename_prefix - default
aiia_lesson_01. Names both the output subfolder and (via the HTML) the page title. Set it to something meaningful. - template -
Split Screen (Left/Right)for wide screens and lessons,Presentation (Top/Bottom)for a slides-on-top, subtitles-below demo layout.
Output: html_file_path (STRING). It's an output node - attach a text widget to see where the page landed, then open it in any browser.
Visual tags: (Visual: https://example.com) for absolute URLs, or (Visual: ./slides/01.jpg) for relative paths - resolved relative to the exported HTML, so if you reference local files, keep them together when you share the folder.
Install
Standard pack install, no extra dependencies - the export is self-contained:
cd ComfyUI/custom_nodes
git clone https://github.com/havvk/ComfyUI_AIIA.git
or ComfyUI Manager → search "ComfyUI_AIIA", restart.
Common issues
- Visuals never appear. The page only shows a visual when a segment actually carries a
visualfield. If your segments came from a TTS node without the Segment Merge step in between, the tags are missing - that's the step you're missing, not a bug. - Broken images after moving the folder. Relative visual paths resolve against the HTML's location. Move the whole
output/<prefix>/folder, don't drag the HTML out alone. - A WAV the size of a planet. It exports the audio uncompressed. Fine for a 10-minute lesson; a two-hour podcast produces a chunky file. It works, just know the tradeoff.
Inputs (4)
| Name | Type | Default | Description |
|---|---|---|---|
| audio | AUDIO | — | |
| segments_info | STRING | — | |
| filename_prefix | STRING | aiia_lesson_01 | — |
| template | COMBO | Split Screen (Left/Right) | 2 options: Split Screen (Left/Right), Presentation (Top/Bottom) |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| html_file_path | STRING | — |