π΅ RH Load Audio Path
An audio file picker that doesn't make you type paths
- audio_path
RH Load Audio Path is the pack's small UI gesture: a node whose whole job is to give you a real "select audio file" button instead of a text field you have to type a path into. It doesn't talk to RunningHub at all. It grabs a file from your machine, gets it into ComfyUI, and hands you the resulting path as a string. From there the usual flow is to feed that string into RH Upload Audio.
You'll reach for this whenever the alternative is pasting an absolute path into RH_UploadAudio.audio_path and praying you got the slashes right. It's a quality-of-life node, and it's genuinely nice - the pack ships a small JavaScript widget (in js/rh_load_audio_path.js) that puts an upload button and an audio player preview right on the node.
How it works
Underneath it's two hops, and it's worth knowing both because they explain the weird parts:
- The JS widget lets you pick a file, previews it in an embedded
<audio>player, and uploads it to ComfyUI's own/upload/imageendpoint. Yes, image - the code reuses ComfyUI's generic upload endpoint regardless of file type, and the file lands in yourinputdirectory. The button label and status text are in Chinese ("ιζ©ι³ι’ζδ»Ά" = "select audio file"), which catches English users off guard the first time. - The Python side then resolves that uploaded filename to a real path - trying
folder_paths.get_annotated_filepath(), then yourinputdir, theninput/uploads- and outputs it asaudio_path.
So the node gets the file into ComfyUI, and the next node (RH Upload Audio) gets it onto RunningHub. Two uploads total. Don't blame Load Audio Path for the second one.
Inputs and output
One required input: audio_filename, which the widget fills in for you when you click the button. In normal use you never touch it - it's hidden behind the UI. The single output is audio_path, a plain STRING, wired to RH Upload Audio (or anywhere else that wants a local audio file path).
Gotchas
If you don't pick a file (or the widget failed), the node raises "No audio filename provided" - it's the strict one in the pair, unlike Upload Audio's lazy skip. The player is just a preview; it doesn't affect what gets uploaded. And because the widget uploads through ComfyUI's input directory, files accumulate there - clean it out occasionally if you pick files often.
Install is pack-wide: ComfyUI Manager (search ComfyUI_RH_API) or git clone https://github.com/xuchenxu168/ComfyUI_RH_API.git into custom_nodes, pip install -r requirements.txt, restart.
Inputs (1)
| Name | Type | Default | Description |
|---|---|---|---|
| audio_filename | STRING | β |
Outputs (1)
| Name | Type | Description |
|---|---|---|
| audio_path | STRING | β |